# -*- coding: utf-8 -*-
# Generated by Django 1.11.1 on 2019-04-03 11:04
from __future__ import unicode_literals

from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion


class Migration(migrations.Migration):

    initial = True

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

    operations = [
        migrations.CreateModel(
            name='FollowGame',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('created_at', models.DateTimeField(auto_now_add=True, null=True)),
            ],
        ),
        migrations.CreateModel(
            name='Game',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('name', models.CharField(max_length=80, null=True)),
                ('year_published', models.IntegerField(null=True)),
                ('minimum_players', models.IntegerField(null=True)),
                ('maximum_players', models.IntegerField(null=True)),
                ('mfg_suggested_ages', models.CharField(max_length=20, null=True)),
                ('minimum_playing_time', models.CharField(max_length=20, null=True)),
                ('maximum_playing_time', models.CharField(max_length=20, null=True)),
                ('designer', models.CharField(max_length=40, null=True)),
                ('artist', models.CharField(max_length=40, null=True)),
                ('publisher', models.CharField(max_length=60, null=True)),
                ('mechanism', models.CharField(max_length=60, null=True)),
                ('views', models.IntegerField(blank=True, default=0, null=True)),
                ('like_count', models.IntegerField(blank=True, default=0, null=True)),
                ('dislike_count', models.IntegerField(blank=True, default=0, null=True)),
                ('game_status', models.CharField(choices=[('review', 'REVIEW'), ('published', 'PUBLISHED')], default='review', max_length=10)),
                ('hotornot', models.BooleanField(default=False)),
                ('upc', models.CharField(max_length=20)),
                ('origin', models.CharField(choices=[('publisher', 'PUBLISHER'), ('self published', 'SELF PUBLISHED'), ('kickstarted', 'KICKSTARTED')], default='publisher', max_length=10)),
                ('created_at', models.DateTimeField(auto_now_add=True, null=True)),
                ('updated_at', models.DateTimeField(auto_now=True, null=True)),
            ],
        ),
        migrations.CreateModel(
            name='GameCategory',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('category_name', models.CharField(max_length=60)),
            ],
        ),
        migrations.CreateModel(
            name='GameCollection',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('created_at', models.DateTimeField(auto_now_add=True, null=True)),
                ('game', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='game.Game')),
                ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
            ],
        ),
        migrations.CreateModel(
            name='GameExtend',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('expansion', models.CharField(max_length=80, null=True)),
                ('expands', models.CharField(max_length=80, null=True)),
                ('integrates_with', models.CharField(max_length=80, null=True)),
                ('contains', models.CharField(max_length=80, null=True)),
                ('contained_in', models.CharField(max_length=80, null=True)),
                ('reimplemented_by', models.CharField(max_length=80, null=True)),
                ('reimplements', models.CharField(max_length=80, null=True)),
                ('family', models.CharField(max_length=80, null=True)),
                ('video_game_adaptation', models.CharField(max_length=80, null=True)),
                ('note_to_admin', models.CharField(max_length=80, null=True)),
                ('created_at', models.DateTimeField(auto_now_add=True, null=True)),
                ('updated_at', models.DateTimeField(auto_now=True, null=True)),
                ('game', models.OneToOneField(null=True, on_delete=django.db.models.deletion.CASCADE, to='game.Game')),
            ],
        ),
        migrations.CreateModel(
            name='GameTag',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('game', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='game.Game')),
            ],
        ),
        migrations.CreateModel(
            name='LikeGame',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('views', models.IntegerField(blank=True, default=0, null=True)),
                ('created_at', models.DateTimeField(auto_now_add=True, null=True)),
                ('game_like', models.CharField(choices=[('like', 'LIKE'), ('dislike', 'DISLIKE')], default=None, max_length=10)),
                ('game', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='game.Game')),
                ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
            ],
        ),
        migrations.CreateModel(
            name='RateGame',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('game_rating', models.CharField(choices=[('love', 'LOVE'), ('like', 'LIKE'), ('dislike', 'DISLIKE'), ('hate', 'HATE')], default=None, max_length=10)),
                ('created_at', models.DateTimeField(auto_now_add=True, null=True)),
                ('game', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='game.Game')),
                ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
            ],
        ),
        migrations.CreateModel(
            name='Tags',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('tag_name', models.CharField(max_length=30)),
            ],
        ),
        migrations.AddField(
            model_name='gametag',
            name='tag',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='game.Tags'),
        ),
        migrations.AddField(
            model_name='game',
            name='category',
            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='game.GameCategory'),
        ),
        migrations.AddField(
            model_name='followgame',
            name='game',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='game.Game'),
        ),
        migrations.AddField(
            model_name='followgame',
            name='user',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
        ),
        migrations.AlterUniqueTogether(
            name='rategame',
            unique_together=set([('user', 'game')]),
        ),
        migrations.AlterUniqueTogether(
            name='likegame',
            unique_together=set([('user', 'game')]),
        ),
        migrations.AlterUniqueTogether(
            name='gametag',
            unique_together=set([('game', 'tag')]),
        ),
        migrations.AlterUniqueTogether(
            name='gameextend',
            unique_together=set([('game',)]),
        ),
        migrations.AlterUniqueTogether(
            name='gamecollection',
            unique_together=set([('user', 'game')]),
        ),
        migrations.AlterUniqueTogether(
            name='game',
            unique_together=set([('name', 'category')]),
        ),
        migrations.AlterUniqueTogether(
            name='followgame',
            unique_together=set([('user', 'game')]),
        ),
    ]
