# Generated by Django 3.1.4 on 2020-12-25 01:28

import django.contrib.auth.models
import django.contrib.auth.validators
from django.db import migrations, models
import django.db.models.deletion
import django.utils.timezone


class Migration(migrations.Migration):

    initial = True

    dependencies = [
        ('auth', '0012_alter_user_first_name_max_length'),
    ]

    operations = [
        migrations.CreateModel(
            name='Admin',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('password', models.CharField(max_length=128, verbose_name='password')),
                ('last_login', models.DateTimeField(blank=True, null=True, verbose_name='last login')),
                ('is_superuser', models.BooleanField(default=False, help_text='Designates that this user has all permissions without explicitly assigning them.', verbose_name='superuser status')),
                ('username', models.CharField(error_messages={'unique': 'A user with that username already exists.'}, help_text='Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[django.contrib.auth.validators.UnicodeUsernameValidator()], verbose_name='username')),
                ('first_name', models.CharField(blank=True, max_length=150, verbose_name='first name')),
                ('last_name', models.CharField(blank=True, max_length=150, verbose_name='last name')),
                ('email', models.EmailField(blank=True, max_length=254, verbose_name='email address')),
                ('is_staff', models.BooleanField(default=False, help_text='Designates whether the user can log into this admin site.', verbose_name='staff status')),
                ('is_active', models.BooleanField(default=True, help_text='Designates whether this user should be treated as active. Unselect this instead of deleting accounts.', verbose_name='active')),
                ('date_joined', models.DateTimeField(default=django.utils.timezone.now, verbose_name='date joined')),
                ('created_at', models.DateTimeField(auto_now_add=True)),
                ('updated_at', models.DateTimeField(auto_now=True)),
            ],
            options={
                'verbose_name': 'Admin',
                'verbose_name_plural': 'Admins',
            },
            managers=[
                ('objects', django.contrib.auth.models.UserManager()),
            ],
        ),
        migrations.CreateModel(
            name='Application',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('paid', models.DecimalField(decimal_places=2, default=0, max_digits=10)),
                ('paid_at', models.DateTimeField(null=True)),
                ('created_at', models.DateTimeField(auto_now_add=True)),
                ('updated_at', models.DateTimeField(auto_now=True)),
            ],
        ),
        migrations.CreateModel(
            name='Category',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('name', models.CharField(max_length=100)),
            ],
        ),
        migrations.CreateModel(
            name='CommerceTemplate',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('name', models.CharField(max_length=100)),
                ('thumbnail', models.ImageField(upload_to='public_images/commerce_template/')),
                ('enabled', models.BooleanField(default=True)),
                ('url', models.CharField(max_length=255, null=True, unique=True)),
                ('created_at', models.DateTimeField(auto_now_add=True)),
                ('updated_at', models.DateTimeField(auto_now=True)),
            ],
        ),
        migrations.CreateModel(
            name='Domain',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('path', models.CharField(max_length=100, unique=True)),
                ('created_at', models.DateTimeField(auto_now_add=True)),
                ('updated_at', models.DateTimeField(auto_now=True)),
            ],
        ),
        migrations.CreateModel(
            name='Lead',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('email', models.CharField(max_length=100, unique=True)),
                ('domain', models.CharField(max_length=100)),
                ('current_application_step', models.IntegerField(default=0)),
                ('additional_data', models.JSONField(null=True)),
                ('created_at', models.DateTimeField(auto_now_add=True)),
                ('updated_at', models.DateTimeField(auto_now=True)),
            ],
        ),
        migrations.CreateModel(
            name='PaymentPlan',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('name', models.CharField(max_length=100)),
                ('price', models.DecimalField(decimal_places=2, default=0, max_digits=10)),
                ('time_span', models.IntegerField(default=0)),
                ('created_at', models.DateTimeField(auto_now_add=True)),
                ('updated_at', models.DateTimeField(auto_now=True)),
            ],
        ),
        migrations.CreateModel(
            name='Store',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('name', models.CharField(max_length=100)),
                ('logo', models.ImageField(upload_to='public_images/store/')),
                ('created_at', models.DateTimeField(auto_now_add=True)),
                ('updated_at', models.DateTimeField(auto_now=True)),
            ],
        ),
        migrations.CreateModel(
            name='User',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('first_name', models.CharField(max_length=50)),
                ('last_name', models.CharField(max_length=50)),
                ('second_last_name', models.CharField(max_length=50)),
                ('phone', models.CharField(default='0000000000', max_length=20)),
                ('email', models.EmailField(max_length=255, unique=True)),
                ('password', models.CharField(max_length=50)),
                ('email_verified_at', models.DateTimeField(null=True)),
                ('confirmation_token', models.CharField(max_length=255, null=True)),
                ('created_at', models.DateTimeField(auto_now_add=True)),
                ('updated_at', models.DateTimeField(auto_now=True)),
                ('status', models.CharField(choices=[('payment_validation', 'PAYMENT_VALIDATION'), ('has_late_payment', 'HAS_LATE_PAYMENT'), ('banned', 'BANNED'), ('normal', 'NORMAL')], default='payment_validation', max_length=20)),
            ],
        ),
        migrations.AddIndex(
            model_name='user',
            index=models.Index(fields=['confirmation_token'], name='api_user_confirm_563595_idx'),
        ),
        migrations.AddIndex(
            model_name='user',
            index=models.Index(fields=['email'], name='api_user_email_a7eefd_idx'),
        ),
        migrations.AddField(
            model_name='store',
            name='category',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.category'),
        ),
        migrations.AddField(
            model_name='store',
            name='user',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.user'),
        ),
        migrations.AddField(
            model_name='lead',
            name='category',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.category'),
        ),
        migrations.AddField(
            model_name='domain',
            name='store',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.store'),
        ),
        migrations.AddField(
            model_name='application',
            name='commerce_template',
            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='api.commercetemplate'),
        ),
        migrations.AddField(
            model_name='application',
            name='domain',
            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='api.domain'),
        ),
        migrations.AddField(
            model_name='application',
            name='payment_plan',
            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='api.paymentplan'),
        ),
        migrations.AddField(
            model_name='application',
            name='user',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.user'),
        ),
        migrations.AddField(
            model_name='admin',
            name='groups',
            field=models.ManyToManyField(blank=True, help_text='The groups this user belongs to. A user will get all permissions granted to each of their groups.', related_name='user_set', related_query_name='user', to='auth.Group', verbose_name='groups'),
        ),
        migrations.AddField(
            model_name='admin',
            name='user_permissions',
            field=models.ManyToManyField(blank=True, help_text='Specific permissions for this user.', related_name='user_set', related_query_name='user', to='auth.Permission', verbose_name='user permissions'),
        ),
        migrations.AddIndex(
            model_name='lead',
            index=models.Index(fields=['email'], name='api_lead_email_37716a_idx'),
        ),
    ]

ae4c2a82cfcd4eb56b97474a790612b746dbbcbb
<mask token>

<mask token>


class Migration(migrations.Migration):
    <mask token>
    <mask token>
    <mask token>

<mask token>


class Migration(migrations.Migration):
    initial = True
    dependencies = [('auth', '0012_alter_user_first_name_max_length')]
    operations = [migrations.CreateModel(name='Admin', fields=[('id',
        models.AutoField(auto_created=True, primary_key=True, serialize=
        False, verbose_name='ID')), ('password', models.CharField(
        max_length=128, verbose_name='password')), ('last_login', models.
        DateTimeField(blank=True, null=True, verbose_name='last login')), (
        'is_superuser', models.BooleanField(default=False, help_text=
        'Designates that this user has all permissions without explicitly assigning them.'
        , verbose_name='superuser status')), ('username', models.CharField(
        error_messages={'unique':
        'A user with that username already exists.'}, help_text=
        'Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.'
        , max_length=150, unique=True, validators=[django.contrib.auth.
        validators.UnicodeUsernameValidator()], verbose_name='username')),
        ('first_name', models.CharField(blank=True, max_length=150,
        verbose_name='first name')), ('last_name', models.CharField(blank=
        True, max_length=150, verbose_name='last name')), ('email', models.
        EmailField(blank=True, max_length=254, verbose_name='email address'
        )), ('is_staff', models.BooleanField(default=False, help_text=
        'Designates whether the user can log into this admin site.',
        verbose_name='staff status')), ('is_active', models.BooleanField(
        default=True, help_text=
        'Designates whether this user should be treated as active. Unselect this instead of deleting accounts.'
        , verbose_name='active')), ('date_joined', models.DateTimeField(
        default=django.utils.timezone.now, verbose_name='date joined')), (
        'created_at', models.DateTimeField(auto_now_add=True)), (
        'updated_at', models.DateTimeField(auto_now=True))], options={
        'verbose_name': 'Admin', 'verbose_name_plural': 'Admins'}, managers
        =[('objects', django.contrib.auth.models.UserManager())]),
        migrations.CreateModel(name='Application', fields=[('id', models.
        AutoField(auto_created=True, primary_key=True, serialize=False,
        verbose_name='ID')), ('paid', models.DecimalField(decimal_places=2,
        default=0, max_digits=10)), ('paid_at', models.DateTimeField(null=
        True)), ('created_at', models.DateTimeField(auto_now_add=True)), (
        'updated_at', models.DateTimeField(auto_now=True))]), migrations.
        CreateModel(name='Category', fields=[('id', models.AutoField(
        auto_created=True, primary_key=True, serialize=False, verbose_name=
        'ID')), ('name', models.CharField(max_length=100))]), migrations.
        CreateModel(name='CommerceTemplate', fields=[('id', models.
        AutoField(auto_created=True, primary_key=True, serialize=False,
        verbose_name='ID')), ('name', models.CharField(max_length=100)), (
        'thumbnail', models.ImageField(upload_to=
        'public_images/commerce_template/')), ('enabled', models.
        BooleanField(default=True)), ('url', models.CharField(max_length=
        255, null=True, unique=True)), ('created_at', models.DateTimeField(
        auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=
        True))]), migrations.CreateModel(name='Domain', fields=[('id',
        models.AutoField(auto_created=True, primary_key=True, serialize=
        False, verbose_name='ID')), ('path', models.CharField(max_length=
        100, unique=True)), ('created_at', models.DateTimeField(
        auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=
        True))]), migrations.CreateModel(name='Lead', fields=[('id', models
        .AutoField(auto_created=True, primary_key=True, serialize=False,
        verbose_name='ID')), ('email', models.CharField(max_length=100,
        unique=True)), ('domain', models.CharField(max_length=100)), (
        'current_application_step', models.IntegerField(default=0)), (
        'additional_data', models.JSONField(null=True)), ('created_at',
        models.DateTimeField(auto_now_add=True)), ('updated_at', models.
        DateTimeField(auto_now=True))]), migrations.CreateModel(name=
        'PaymentPlan', fields=[('id', models.AutoField(auto_created=True,
        primary_key=True, serialize=False, verbose_name='ID')), ('name',
        models.CharField(max_length=100)), ('price', models.DecimalField(
        decimal_places=2, default=0, max_digits=10)), ('time_span', models.
        IntegerField(default=0)), ('created_at', models.DateTimeField(
        auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=
        True))]), migrations.CreateModel(name='Store', fields=[('id',
        models.AutoField(auto_created=True, primary_key=True, serialize=
        False, verbose_name='ID')), ('name', models.CharField(max_length=
        100)), ('logo', models.ImageField(upload_to='public_images/store/')
        ), ('created_at', models.DateTimeField(auto_now_add=True)), (
        'updated_at', models.DateTimeField(auto_now=True))]), migrations.
        CreateModel(name='User', fields=[('id', models.AutoField(
        auto_created=True, primary_key=True, serialize=False, verbose_name=
        'ID')), ('first_name', models.CharField(max_length=50)), (
        'last_name', models.CharField(max_length=50)), ('second_last_name',
        models.CharField(max_length=50)), ('phone', models.CharField(
        default='0000000000', max_length=20)), ('email', models.EmailField(
        max_length=255, unique=True)), ('password', models.CharField(
        max_length=50)), ('email_verified_at', models.DateTimeField(null=
        True)), ('confirmation_token', models.CharField(max_length=255,
        null=True)), ('created_at', models.DateTimeField(auto_now_add=True)
        ), ('updated_at', models.DateTimeField(auto_now=True)), ('status',
        models.CharField(choices=[('payment_validation',
        'PAYMENT_VALIDATION'), ('has_late_payment', 'HAS_LATE_PAYMENT'), (
        'banned', 'BANNED'), ('normal', 'NORMAL')], default=
        'payment_validation', max_length=20))]), migrations.AddIndex(
        model_name='user', index=models.Index(fields=['confirmation_token'],
        name='api_user_confirm_563595_idx')), migrations.AddIndex(
        model_name='user', index=models.Index(fields=['email'], name=
        'api_user_email_a7eefd_idx')), migrations.AddField(model_name=
        'store', name='category', field=models.ForeignKey(on_delete=django.
        db.models.deletion.CASCADE, to='api.category')), migrations.
        AddField(model_name='store', name='user', field=models.ForeignKey(
        on_delete=django.db.models.deletion.CASCADE, to='api.user')),
        migrations.AddField(model_name='lead', name='category', field=
        models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=
        'api.category')), migrations.AddField(model_name='domain', name=
        'store', field=models.ForeignKey(on_delete=django.db.models.
        deletion.CASCADE, to='api.store')), migrations.AddField(model_name=
        'application', name='commerce_template', field=models.ForeignKey(
        null=True, on_delete=django.db.models.deletion.SET_NULL, to=
        'api.commercetemplate')), migrations.AddField(model_name=
        'application', name='domain', field=models.ForeignKey(null=True,
        on_delete=django.db.models.deletion.SET_NULL, to='api.domain')),
        migrations.AddField(model_name='application', name='payment_plan',
        field=models.ForeignKey(null=True, on_delete=django.db.models.
        deletion.SET_NULL, to='api.paymentplan')), migrations.AddField(
        model_name='application', name='user', field=models.ForeignKey(
        on_delete=django.db.models.deletion.CASCADE, to='api.user')),
        migrations.AddField(model_name='admin', name='groups', field=models
        .ManyToManyField(blank=True, help_text=
        'The groups this user belongs to. A user will get all permissions granted to each of their groups.'
        , related_name='user_set', related_query_name='user', to=
        'auth.Group', verbose_name='groups')), migrations.AddField(
        model_name='admin', name='user_permissions', field=models.
        ManyToManyField(blank=True, help_text=
        'Specific permissions for this user.', related_name='user_set',
        related_query_name='user', to='auth.Permission', verbose_name=
        'user permissions')), migrations.AddIndex(model_name='lead', index=
        models.Index(fields=['email'], name='api_lead_email_37716a_idx'))]

import django.contrib.auth.models
import django.contrib.auth.validators
from django.db import migrations, models
import django.db.models.deletion
import django.utils.timezone


class Migration(migrations.Migration):
    initial = True
    dependencies = [('auth', '0012_alter_user_first_name_max_length')]
    operations = [migrations.CreateModel(name='Admin', fields=[('id',
        models.AutoField(auto_created=True, primary_key=True, serialize=
        False, verbose_name='ID')), ('password', models.CharField(
        max_length=128, verbose_name='password')), ('last_login', models.
        DateTimeField(blank=True, null=True, verbose_name='last login')), (
        'is_superuser', models.BooleanField(default=False, help_text=
        'Designates that this user has all permissions without explicitly assigning them.'
        , verbose_name='superuser status')), ('username', models.CharField(
        error_messages={'unique':
        'A user with that username already exists.'}, help_text=
        'Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.'
        , max_length=150, unique=True, validators=[django.contrib.auth.
        validators.UnicodeUsernameValidator()], verbose_name='username')),
        ('first_name', models.CharField(blank=True, max_length=150,
        verbose_name='first name')), ('last_name', models.CharField(blank=
        True, max_length=150, verbose_name='last name')), ('email', models.
        EmailField(blank=True, max_length=254, verbose_name='email address'
        )), ('is_staff', models.BooleanField(default=False, help_text=
        'Designates whether the user can log into this admin site.',
        verbose_name='staff status')), ('is_active', models.BooleanField(
        default=True, help_text=
        'Designates whether this user should be treated as active. Unselect this instead of deleting accounts.'
        , verbose_name='active')), ('date_joined', models.DateTimeField(
        default=django.utils.timezone.now, verbose_name='date joined')), (
        'created_at', models.DateTimeField(auto_now_add=True)), (
        'updated_at', models.DateTimeField(auto_now=True))], options={
        'verbose_name': 'Admin', 'verbose_name_plural': 'Admins'}, managers
        =[('objects', django.contrib.auth.models.UserManager())]),
        migrations.CreateModel(name='Application', fields=[('id', models.
        AutoField(auto_created=True, primary_key=True, serialize=False,
        verbose_name='ID')), ('paid', models.DecimalField(decimal_places=2,
        default=0, max_digits=10)), ('paid_at', models.DateTimeField(null=
        True)), ('created_at', models.DateTimeField(auto_now_add=True)), (
        'updated_at', models.DateTimeField(auto_now=True))]), migrations.
        CreateModel(name='Category', fields=[('id', models.AutoField(
        auto_created=True, primary_key=True, serialize=False, verbose_name=
        'ID')), ('name', models.CharField(max_length=100))]), migrations.
        CreateModel(name='CommerceTemplate', fields=[('id', models.
        AutoField(auto_created=True, primary_key=True, serialize=False,
        verbose_name='ID')), ('name', models.CharField(max_length=100)), (
        'thumbnail', models.ImageField(upload_to=
        'public_images/commerce_template/')), ('enabled', models.
        BooleanField(default=True)), ('url', models.CharField(max_length=
        255, null=True, unique=True)), ('created_at', models.DateTimeField(
        auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=
        True))]), migrations.CreateModel(name='Domain', fields=[('id',
        models.AutoField(auto_created=True, primary_key=True, serialize=
        False, verbose_name='ID')), ('path', models.CharField(max_length=
        100, unique=True)), ('created_at', models.DateTimeField(
        auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=
        True))]), migrations.CreateModel(name='Lead', fields=[('id', models
        .AutoField(auto_created=True, primary_key=True, serialize=False,
        verbose_name='ID')), ('email', models.CharField(max_length=100,
        unique=True)), ('domain', models.CharField(max_length=100)), (
        'current_application_step', models.IntegerField(default=0)), (
        'additional_data', models.JSONField(null=True)), ('created_at',
        models.DateTimeField(auto_now_add=True)), ('updated_at', models.
        DateTimeField(auto_now=True))]), migrations.CreateModel(name=
        'PaymentPlan', fields=[('id', models.AutoField(auto_created=True,
        primary_key=True, serialize=False, verbose_name='ID')), ('name',
        models.CharField(max_length=100)), ('price', models.DecimalField(
        decimal_places=2, default=0, max_digits=10)), ('time_span', models.
        IntegerField(default=0)), ('created_at', models.DateTimeField(
        auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=
        True))]), migrations.CreateModel(name='Store', fields=[('id',
        models.AutoField(auto_created=True, primary_key=True, serialize=
        False, verbose_name='ID')), ('name', models.CharField(max_length=
        100)), ('logo', models.ImageField(upload_to='public_images/store/')
        ), ('created_at', models.DateTimeField(auto_now_add=True)), (
        'updated_at', models.DateTimeField(auto_now=True))]), migrations.
        CreateModel(name='User', fields=[('id', models.AutoField(
        auto_created=True, primary_key=True, serialize=False, verbose_name=
        'ID')), ('first_name', models.CharField(max_length=50)), (
        'last_name', models.CharField(max_length=50)), ('second_last_name',
        models.CharField(max_length=50)), ('phone', models.CharField(
        default='0000000000', max_length=20)), ('email', models.EmailField(
        max_length=255, unique=True)), ('password', models.CharField(
        max_length=50)), ('email_verified_at', models.DateTimeField(null=
        True)), ('confirmation_token', models.CharField(max_length=255,
        null=True)), ('created_at', models.DateTimeField(auto_now_add=True)
        ), ('updated_at', models.DateTimeField(auto_now=True)), ('status',
        models.CharField(choices=[('payment_validation',
        'PAYMENT_VALIDATION'), ('has_late_payment', 'HAS_LATE_PAYMENT'), (
        'banned', 'BANNED'), ('normal', 'NORMAL')], default=
        'payment_validation', max_length=20))]), migrations.AddIndex(
        model_name='user', index=models.Index(fields=['confirmation_token'],
        name='api_user_confirm_563595_idx')), migrations.AddIndex(
        model_name='user', index=models.Index(fields=['email'], name=
        'api_user_email_a7eefd_idx')), migrations.AddField(model_name=
        'store', name='category', field=models.ForeignKey(on_delete=django.
        db.models.deletion.CASCADE, to='api.category')), migrations.
        AddField(model_name='store', name='user', field=models.ForeignKey(
        on_delete=django.db.models.deletion.CASCADE, to='api.user')),
        migrations.AddField(model_name='lead', name='category', field=
        models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=
        'api.category')), migrations.AddField(model_name='domain', name=
        'store', field=models.ForeignKey(on_delete=django.db.models.
        deletion.CASCADE, to='api.store')), migrations.AddField(model_name=
        'application', name='commerce_template', field=models.ForeignKey(
        null=True, on_delete=django.db.models.deletion.SET_NULL, to=
        'api.commercetemplate')), migrations.AddField(model_name=
        'application', name='domain', field=models.ForeignKey(null=True,
        on_delete=django.db.models.deletion.SET_NULL, to='api.domain')),
        migrations.AddField(model_name='application', name='payment_plan',
        field=models.ForeignKey(null=True, on_delete=django.db.models.
        deletion.SET_NULL, to='api.paymentplan')), migrations.AddField(
        model_name='application', name='user', field=models.ForeignKey(
        on_delete=django.db.models.deletion.CASCADE, to='api.user')),
        migrations.AddField(model_name='admin', name='groups', field=models
        .ManyToManyField(blank=True, help_text=
        'The groups this user belongs to. A user will get all permissions granted to each of their groups.'
        , related_name='user_set', related_query_name='user', to=
        'auth.Group', verbose_name='groups')), migrations.AddField(
        model_name='admin', name='user_permissions', field=models.
        ManyToManyField(blank=True, help_text=
        'Specific permissions for this user.', related_name='user_set',
        related_query_name='user', to='auth.Permission', verbose_name=
        'user permissions')), migrations.AddIndex(model_name='lead', index=
        models.Index(fields=['email'], name='api_lead_email_37716a_idx'))]

# Generated by Django 3.1.4 on 2020-12-25 01:28

import django.contrib.auth.models
import django.contrib.auth.validators
from django.db import migrations, models
import django.db.models.deletion
import django.utils.timezone


class Migration(migrations.Migration):

    initial = True

    dependencies = [
        ('auth', '0012_alter_user_first_name_max_length'),
    ]

    operations = [
        migrations.CreateModel(
            name='Admin',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('password', models.CharField(max_length=128, verbose_name='password')),
                ('last_login', models.DateTimeField(blank=True, null=True, verbose_name='last login')),
                ('is_superuser', models.BooleanField(default=False, help_text='Designates that this user has all permissions without explicitly assigning them.', verbose_name='superuser status')),
                ('username', models.CharField(error_messages={'unique': 'A user with that username already exists.'}, help_text='Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[django.contrib.auth.validators.UnicodeUsernameValidator()], verbose_name='username')),
                ('first_name', models.CharField(blank=True, max_length=150, verbose_name='first name')),
                ('last_name', models.CharField(blank=True, max_length=150, verbose_name='last name')),
                ('email', models.EmailField(blank=True, max_length=254, verbose_name='email address')),
                ('is_staff', models.BooleanField(default=False, help_text='Designates whether the user can log into this admin site.', verbose_name='staff status')),
                ('is_active', models.BooleanField(default=True, help_text='Designates whether this user should be treated as active. Unselect this instead of deleting accounts.', verbose_name='active')),
                ('date_joined', models.DateTimeField(default=django.utils.timezone.now, verbose_name='date joined')),
                ('created_at', models.DateTimeField(auto_now_add=True)),
                ('updated_at', models.DateTimeField(auto_now=True)),
            ],
            options={
                'verbose_name': 'Admin',
                'verbose_name_plural': 'Admins',
            },
            managers=[
                ('objects', django.contrib.auth.models.UserManager()),
            ],
        ),
        migrations.CreateModel(
            name='Application',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('paid', models.DecimalField(decimal_places=2, default=0, max_digits=10)),
                ('paid_at', models.DateTimeField(null=True)),
                ('created_at', models.DateTimeField(auto_now_add=True)),
                ('updated_at', models.DateTimeField(auto_now=True)),
            ],
        ),
        migrations.CreateModel(
            name='Category',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('name', models.CharField(max_length=100)),
            ],
        ),
        migrations.CreateModel(
            name='CommerceTemplate',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('name', models.CharField(max_length=100)),
                ('thumbnail', models.ImageField(upload_to='public_images/commerce_template/')),
                ('enabled', models.BooleanField(default=True)),
                ('url', models.CharField(max_length=255, null=True, unique=True)),
                ('created_at', models.DateTimeField(auto_now_add=True)),
                ('updated_at', models.DateTimeField(auto_now=True)),
            ],
        ),
        migrations.CreateModel(
            name='Domain',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('path', models.CharField(max_length=100, unique=True)),
                ('created_at', models.DateTimeField(auto_now_add=True)),
                ('updated_at', models.DateTimeField(auto_now=True)),
            ],
        ),
        migrations.CreateModel(
            name='Lead',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('email', models.CharField(max_length=100, unique=True)),
                ('domain', models.CharField(max_length=100)),
                ('current_application_step', models.IntegerField(default=0)),
                ('additional_data', models.JSONField(null=True)),
                ('created_at', models.DateTimeField(auto_now_add=True)),
                ('updated_at', models.DateTimeField(auto_now=True)),
            ],
        ),
        migrations.CreateModel(
            name='PaymentPlan',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('name', models.CharField(max_length=100)),
                ('price', models.DecimalField(decimal_places=2, default=0, max_digits=10)),
                ('time_span', models.IntegerField(default=0)),
                ('created_at', models.DateTimeField(auto_now_add=True)),
                ('updated_at', models.DateTimeField(auto_now=True)),
            ],
        ),
        migrations.CreateModel(
            name='Store',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('name', models.CharField(max_length=100)),
                ('logo', models.ImageField(upload_to='public_images/store/')),
                ('created_at', models.DateTimeField(auto_now_add=True)),
                ('updated_at', models.DateTimeField(auto_now=True)),
            ],
        ),
        migrations.CreateModel(
            name='User',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('first_name', models.CharField(max_length=50)),
                ('last_name', models.CharField(max_length=50)),
                ('second_last_name', models.CharField(max_length=50)),
                ('phone', models.CharField(default='0000000000', max_length=20)),
                ('email', models.EmailField(max_length=255, unique=True)),
                ('password', models.CharField(max_length=50)),
                ('email_verified_at', models.DateTimeField(null=True)),
                ('confirmation_token', models.CharField(max_length=255, null=True)),
                ('created_at', models.DateTimeField(auto_now_add=True)),
                ('updated_at', models.DateTimeField(auto_now=True)),
                ('status', models.CharField(choices=[('payment_validation', 'PAYMENT_VALIDATION'), ('has_late_payment', 'HAS_LATE_PAYMENT'), ('banned', 'BANNED'), ('normal', 'NORMAL')], default='payment_validation', max_length=20)),
            ],
        ),
        migrations.AddIndex(
            model_name='user',
            index=models.Index(fields=['confirmation_token'], name='api_user_confirm_563595_idx'),
        ),
        migrations.AddIndex(
            model_name='user',
            index=models.Index(fields=['email'], name='api_user_email_a7eefd_idx'),
        ),
        migrations.AddField(
            model_name='store',
            name='category',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.category'),
        ),
        migrations.AddField(
            model_name='store',
            name='user',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.user'),
        ),
        migrations.AddField(
            model_name='lead',
            name='category',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.category'),
        ),
        migrations.AddField(
            model_name='domain',
            name='store',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.store'),
        ),
        migrations.AddField(
            model_name='application',
            name='commerce_template',
            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='api.commercetemplate'),
        ),
        migrations.AddField(
            model_name='application',
            name='domain',
            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='api.domain'),
        ),
        migrations.AddField(
            model_name='application',
            name='payment_plan',
            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='api.paymentplan'),
        ),
        migrations.AddField(
            model_name='application',
            name='user',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.user'),
        ),
        migrations.AddField(
            model_name='admin',
            name='groups',
            field=models.ManyToManyField(blank=True, help_text='The groups this user belongs to. A user will get all permissions granted to each of their groups.', related_name='user_set', related_query_name='user', to='auth.Group', verbose_name='groups'),
        ),
        migrations.AddField(
            model_name='admin',
            name='user_permissions',
            field=models.ManyToManyField(blank=True, help_text='Specific permissions for this user.', related_name='user_set', related_query_name='user', to='auth.Permission', verbose_name='user permissions'),
        ),
        migrations.AddIndex(
            model_name='lead',
            index=models.Index(fields=['email'], name='api_lead_email_37716a_idx'),
        ),
    ]
