# Generated by Django 3.1.2 on 2020-12-18 11:14

import cloudinary.models
import datetime
from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
import django_countries.fields


class Migration(migrations.Migration):

    initial = True

    dependencies = [
        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
    ]

    operations = [
        migrations.CreateModel(
            name='Address',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('first_name', models.CharField(max_length=10)),
                ('last_name', models.CharField(max_length=10)),
                ('company', models.CharField(blank=True, max_length=50, null=True)),
                ('address1', models.CharField(max_length=100)),
                ('address2', models.CharField(blank=True, max_length=100, null=True)),
                ('city', models.CharField(max_length=20)),
                ('country', django_countries.fields.CountryField(max_length=2)),
                ('postal', models.CharField(max_length=10)),
                ('phone', models.CharField(max_length=20)),
                ('default', models.BooleanField(default=False)),
                ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
            ],
        ),
        migrations.CreateModel(
            name='HomePhotos',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('img', cloudinary.models.CloudinaryField(max_length=255)),
                ('img_catagory', models.CharField(choices=[('SHOES', 'Shoes'), ('BAGS', 'Bags'), ('BOUTIQUE', 'Boutique'), ('MATERNITY_STORE', 'Maternity-Store'), ('GLASSES', 'Glasses'), ('MAKE_UP', 'Make-up'), ('JEWELLERY', 'Jewellery'), ('FITNESS_ACCESSORIES', 'Fitness-Accessories'), ('FITNESS_APPARELS', 'Fitness-Apparel'), ('UNDERGARMENTS', 'Under-garments')], default=None, max_length=30)),
                ('Date', models.DateTimeField(auto_now_add=True)),
                ('updated', models.DateTimeField(auto_now=True)),
            ],
        ),
        migrations.CreateModel(
            name='Product',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('title', models.CharField(max_length=100)),
                ('information', models.TextField()),
                ('catagory', models.CharField(choices=[('SHOES', 'Shoes'), ('BAGS', 'Bags'), ('BOUTIQUE', 'Boutique'), ('MATERNITY_STORE', 'Maternity-Store'), ('GLASSES', 'Glasses'), ('MAKE_UP', 'Make-up'), ('JEWELLERY', 'Jewellery'), ('FITNESS_ACCESSORIES', 'Fitness-Accessories'), ('FITNESS_APPARELS', 'Fitness-Apparel'), ('UNDERGARMENTS', 'Under-garments')], default='SHOES', max_length=30)),
                ('color', models.CharField(blank=True, max_length=20, null=True)),
                ('shoes_catagory', models.CharField(blank=True, choices=[('SNEAKERS', 'Sneakers'), ('RUNNING_SHOES', 'Running-Shoes'), ('PEEP_TOE_BOOTIES', 'Peep-Toe-Booties'), ('SANDLES_AND_SLIDES', 'Sandles-And-Slides'), ('WORKOUT_SHOES', 'Workout-Shoes'), ('HIKING_AND_OUTDOOR', 'Hiking-And-Outdoor'), ('GOLF', 'Golf'), ('TENNIS', 'Tennis'), ('VOLLEYBALL', 'VolleyBall'), ('SOCCER', 'Soccer'), ('BASKETBALL', 'BasketBall'), ('SKATEBOARDING', 'SkateBoarding')], default=None, max_length=30, null=True)),
                ('bags_catagory', models.CharField(blank=True, choices=[('PURSES', 'Purses'), ('CLUTCHES', 'Clutches'), ('SHOULDER_BAGS', 'Shoulder-Bags'), ('RUCKSACKS', 'Rucksacks'), ('CROSS_BODY_BAGS', 'Cross-Body-Bags'), ('BEACH_BAGS', 'Beach-Bags'), ('BUM_BAGS', 'Bum-Bags'), ('SHOPPER_BAGS', 'Shopper-Bags'), ('TOTE_BAGS', 'Tote-Bags'), ('TRAVEL_BAGS', 'Travel-Bags')], default=None, max_length=30, null=True)),
                ('boutique_catagory', models.CharField(blank=True, choices=[('MAXI', 'Maxi-Dress'), ('BABYDOLL_DRESS', 'Babydoll-Dress'), ('LITTLE_BLACK_DRESS', 'Little-Black-Dress'), ('FLORAL_DRESS', 'Floral-Dress'), ('CASUAL_DRESS', 'Casual-Dress'), ('MIDI_DRESS', 'Midi-Dress'), ('WRAP_DRESS', 'Wrap-Dress'), ('SHIFT_DRESS', 'Shift-Dress'), ('SOLID_DRESS', 'Solid-Dress'), ('T_SHIRT_DRESS', 'T-Shirt-Dress'), ('LACE_DRESS', 'Lace-Dress'), ('COCKTAIL_DRESS', 'Cocktail-Dress')], default=None, max_length=30, null=True)),
                ('jewellery_catagory', models.CharField(blank=True, choices=[('RINGS', 'Rings'), ('EARRINGS', 'Earrings'), ('NECKLACES', 'Necklaces'), ('BRACELETS', 'Bracelets')], default=None, max_length=30, null=True)),
                ('fitness_apparel_catagory', models.CharField(blank=True, choices=[('EXERCISE_JACKETS', 'Exersice-Jackets'), ('EXERCISE_TOPS', 'Exersice-Tops'), ('SPORTS_BRA', 'Sports-Bra'), ('SWIM_SUITS', 'Swim-Suits'), ('WORKOUT_SHORTS_PAINTS', 'Workout-Shorts-Paints'), ('YOGA_APPAREL', 'Yoga-Apparel')], default=None, max_length=30, null=True)),
                ('maternity_store_catagory', models.CharField(blank=True, choices=[('MATERNITY_BRA', 'Maternity-Bra'), ('BABY_SHOWER_DRESS', 'Baby-Shower-Dress'), ('MATERNITY_BELTS', 'Maternity-Belts'), ('MATERNITY_DRESS', 'Maternity-Dress'), ('MATERNITY_PAINTS', 'Maternity-Paints')], default=None, max_length=30, null=True)),
                ('under_garments_catagory', models.CharField(blank=True, choices=[('BRAS', 'Bras'), ('UNDERWEAR', 'Underwear'), ('PANTIES', 'Panties'), ('LINGERIE', 'Lingerie'), ('SLEEP', 'Sleep'), ('LOUNGE', 'Lounge')], default=None, max_length=30, null=True)),
                ('glasses_catagory', models.CharField(blank=True, choices=[('COMPUTER_GLASSES', 'Computer Glasses'), ('SUNGLASSES', 'Sunglasses'), ('MUZZUCCHELLI_COLLECTION', 'Muzzucchelli Collection'), ('METAL_COLLECTION', 'Metal Collection')], default=None, max_length=30, null=True)),
                ('price_new', models.FloatField(default=0)),
                ('price_old', models.FloatField(default=0)),
                ('is_featured', models.BooleanField(default=False)),
                ('is_new', models.BooleanField(default=False)),
                ('on_sale', models.BooleanField(default=False)),
                ('in_stock', models.IntegerField(default=1)),
                ('slug', models.SlugField(blank=True, unique=True)),
                ('Date', models.DateTimeField(auto_now_add=True)),
            ],
            options={
                'ordering': ['-Date'],
            },
        ),
        migrations.CreateModel(
            name='Sizes',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('size', models.CharField(default=None, max_length=5)),
            ],
        ),
        migrations.CreateModel(
            name='Wishlist',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('Date', models.DateTimeField(blank=True, default=datetime.datetime.now)),
                ('product', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='products.product')),
                ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
            ],
            options={
                'ordering': ['-Date'],
            },
        ),
        migrations.CreateModel(
            name='ProductPhotos',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('img', cloudinary.models.CloudinaryField(max_length=255, verbose_name='image')),
                ('is_featured', models.BooleanField(default=False)),
                ('Date', models.DateTimeField(auto_now_add=True)),
                ('updated', models.DateTimeField(auto_now=True)),
                ('product', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='products.product')),
            ],
            options={
                'ordering': ['-Date'],
            },
        ),
        migrations.AddField(
            model_name='product',
            name='sizes',
            field=models.ManyToManyField(blank=True, to='products.Sizes'),
        ),
        migrations.CreateModel(
            name='Payment',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('stripe_charge_id', models.CharField(max_length=50)),
                ('amount', models.FloatField()),
                ('date', models.DateTimeField(auto_now_add=True)),
                ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
            ],
        ),
        migrations.CreateModel(
            name='OrderItems',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('ordered', models.BooleanField(default=False)),
                ('quantity', models.IntegerField(default=1)),
                ('size', models.CharField(blank=True, max_length=10, null=True)),
                ('products', models.ForeignKey(blank=True, on_delete=django.db.models.deletion.CASCADE, to='products.product')),
                ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
            ],
        ),
        migrations.CreateModel(
            name='Order',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('ordered', models.BooleanField(default=False)),
                ('date', models.DateTimeField(auto_now_add=True)),
                ('updated', models.DateTimeField(auto_now=True)),
                ('items', models.ManyToManyField(to='products.OrderItems')),
                ('payment', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='products.payment')),
                ('shipping_address', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='products.address')),
                ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
            ],
        ),
    ]
