# Generated by Django 2.0.2 on 2018-02-25 23:23

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='Camp',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('theme', models.CharField(max_length=60)),
                ('display_name', models.CharField(blank=True, max_length=60, null=True)),
                ('short_name', models.CharField(blank=True, max_length=20, null=True)),
                ('welcome', models.TextField(blank=True, default='')),
                ('description', models.TextField(blank=True)),
                ('faq', models.TextField(blank=True, default='')),
                ('start_date', models.DateTimeField(blank=True, null=True)),
                ('end_date', models.DateTimeField(blank=True, null=True)),
                ('logistics', models.TextField(blank=True)),
                ('banner_image', models.ImageField(blank=True, null=True, upload_to='')),
                ('capacity', models.IntegerField(blank=True, null=True)),
                ('ticket_cost', models.PositiveIntegerField(blank=True, null=True)),
                ('cancel_by', models.DateTimeField(blank=True, null=True)),
                ('confirmation_email', models.TextField(blank=True, default='')),
                ('hotel', models.CharField(blank=True, max_length=60)),
                ('hotel_link', models.URLField(blank=True)),
                ('hotel_code', models.CharField(blank=True, max_length=60, verbose_name='Hotel promotion code')),
                ('hotel_deadline', models.DateField(blank=True, null=True)),
                ('hotel_address', models.CharField(blank=True, max_length=140, null=True)),
                ('venue', models.CharField(blank=True, max_length=60)),
                ('venue_address', models.CharField(blank=True, max_length=140)),
                ('city', models.CharField(blank=True, max_length=60, null=True)),
                ('state', models.CharField(blank=True, max_length=2, null=True)),
                ('ignite', models.BooleanField(default=False)),
                ('stipends', models.BooleanField(default=False)),
                ('talk', models.BooleanField(default=False)),
                ('paid', models.BooleanField(default=False)),
                ('spreadsheet_url', models.URLField(blank=True)),
                ('mailchimp_list', models.CharField(blank=True, max_length=140)),
                ('mailchimp_code', models.CharField(blank=True, max_length=5, null=True, unique=True)),
            ],
        ),
        migrations.CreateModel(
            name='Ignite',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('title', models.CharField(help_text="What's the title of your proposed talk?", max_length=140)),
                ('experience', models.CharField(choices=[('Y', "Yep, I'm an Ignite pro."), ('M', "I think I've done something similar."), ('N', "No, but I think I'll be OK.")], help_text='Have you done an Ignite or similar presentation before?', max_length=1)),
                ('description', models.TextField(help_text="What's your talk about? Give us a little detail.")),
            ],
        ),
        migrations.CreateModel(
            name='Invitation',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('status', models.CharField(choices=[('Q', 'Invitation not yet sent'), ('P', 'Awaiting a response'), ('Y', 'Attendance confirmed'), ('I', 'Registration incomplete'), ('N', "Can't make it"), ('C', 'Had to cancel'), ('X', 'No response'), ('Z', 'No show'), ('W', 'On the waitlist'), ('M', 'Maybe')], default='Q', max_length=1)),
                ('type', models.CharField(choices=[('G', 'Guest'), ('S', 'Sponsor'), ('H', 'Host'), ('A', 'Administrative Support / Staff')], default='G', max_length=1)),
                ('plus_one', models.BooleanField(default=False)),
                ('expires', models.DateField(blank=True, null=True)),
                ('custom_message', models.TextField(blank=True, null=True)),
                ('has_paid', models.BooleanField(default=False)),
                ('special_cost', models.IntegerField(blank=True, null=True)),
                ('comp_ticket', models.BooleanField(default=False)),
                ('nominated_by', models.CharField(blank=True, max_length=60, null=True)),
                ('rand_id', models.CharField(editable=False, max_length=8, unique=True)),
                ('arrival_time', models.DateTimeField(blank=True, help_text="Tell us the time you'll be arriving at Spark Camp (format: 2006-10-25 14:30).", null=True)),
                ('departure_time', models.DateTimeField(blank=True, help_text="Tell us the time you'll be leaving Spark Camp (format: 2006-10-25 14:30).", null=True)),
                ('hotel_booked', models.BooleanField(default=False, help_text="Check here if you've taken care of your hotel room.")),
                ('camp', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='rsvp.Camp')),
                ('contact', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='contact', to=settings.AUTH_USER_MODEL)),
                ('inviter', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='rsvp.Invitation')),
                ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
            ],
        ),
        migrations.CreateModel(
            name='PlusOne',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('first_name', models.CharField(max_length=30)),
                ('last_name', models.CharField(max_length=30)),
                ('email', models.EmailField(max_length=254)),
                ('employer', models.CharField(blank=True, help_text="Person's place of work", max_length=140)),
                ('job_title', models.CharField(blank=True, help_text="Person's job title", max_length=140)),
                ('reason', models.TextField(help_text='Tell us why this person would be great for Spark Camp.')),
                ('invitation', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='rsvp.Invitation')),
            ],
        ),
        migrations.CreateModel(
            name='Roommate',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('sex', models.CharField(choices=[('M', 'Male'), ('F', 'Female'), ('O', 'Other / Prefer not to say')], help_text="What's your sex?", max_length=1)),
                ('roommate', models.CharField(choices=[('M', 'Male'), ('F', 'Female'), ('A', 'Comfortable with anyone')], help_text='What sex are you comfortable rooming with?', max_length=1)),
                ('more', models.CharField(blank=True, help_text='Anything else we should know?', max_length=140)),
                ('invitation', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='rsvp.Invitation')),
            ],
        ),
        migrations.CreateModel(
            name='Session',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('title', models.CharField(help_text='Suggest a name for this session', max_length=140)),
                ('description', models.TextField(help_text='What do you expect the session to be about?')),
                ('invitation', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='rsvp.Invitation')),
            ],
        ),
        migrations.CreateModel(
            name='SparkProfile',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('headshot', models.ImageField(blank=True, help_text='Acceptable file-types: JPG or PNG.', null=True, upload_to='headshot')),
                ('mailchimp_id', models.CharField(blank=True, max_length=140, null=True)),
                ('bio', models.CharField(blank=True, help_text='Tell us your bio. Keep it short. 140 characters max.', max_length=140)),
                ('employer', models.CharField(blank=True, help_text='The name of your primary employer.', max_length=140)),
                ('twitter', models.CharField(blank=True, help_text="What's your Twitter username?", max_length=20)),
                ('url', models.URLField(blank=True, help_text='Link to your personal site or profile.')),
                ('email', models.EmailField(blank=True, help_text='Preferred email address.', max_length=254)),
                ('secondary_email', models.EmailField(blank=True, help_text='Alternate (or admin assistant) email address.', max_length=254)),
                ('job_title', models.CharField(blank=True, help_text='Your job title.', max_length=140)),
                ('phone', models.CharField(blank=True, help_text='Preferred phone number for us to reach you.', max_length=30)),
                ('dietary', models.CharField(blank=True, default='None', help_text='Please note any food allergies or restrictions here.', max_length=140, verbose_name='Dietary needs')),
                ('poc', models.BooleanField(default=False, verbose_name='Person of color')),
                ('woman', models.BooleanField(default=False)),
                ('journo', models.BooleanField(default=False, help_text='Works predominantly in the news industry?')),
                ('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
            ],
        ),
        migrations.CreateModel(
            name='Stipend',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('cost_estimate', models.IntegerField(blank=True, help_text="How much do you estimate air and ground transportation will cost? Don't include lodging and meals. (Just numbers, no dollar signs or symbols.)", null=True)),
                ('employer_subsidized', models.CharField(choices=[('Y', 'Yes'), ('N', 'No'), ('U', 'Unsure')], default='U', help_text='Will your employer provide any funds towards travel?', max_length=1, verbose_name='Employer will cover some costs')),
                ('employer_percentage', models.IntegerField(blank=True, help_text='What percentage of the cost will your employer cover? (Just numbers, no dollar signs or symbols.)', null=True)),
                ('invitee_percentage', models.IntegerField(blank=True, help_text='What percentage of the cost can you cover yourself? (Just numbers, no dollar signs or symbols.)', null=True)),
                ('details', models.TextField(blank=True, help_text='Please explain any other factors that would assist us in processing this request.')),
                ('invitation', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='rsvp.Invitation')),
            ],
        ),
        migrations.AddField(
            model_name='ignite',
            name='invitation',
            field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='rsvp.Invitation'),
        ),
        migrations.AlterUniqueTogether(
            name='invitation',
            unique_together={('user', 'camp')},
        ),
        migrations.AlterOrderWithRespectTo(
            name='invitation',
            order_with_respect_to='user',
        ),
    ]
