# -*- coding: utf-8 -*-
# Generated by Django 1.11 on 2017-05-01 21:37
from __future__ import unicode_literals

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


class Migration(migrations.Migration):

    initial = True

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

    operations = [
        migrations.CreateModel(
            name='Campaign',
            fields=[
                (
                    'id',
                    models.AutoField(
                        auto_created=True,
                        primary_key=True,
                        serialize=False,
                        verbose_name='ID',
                    ),
                ),
                (
                    'dateCreated',
                    models.DateTimeField(
                        auto_now_add=True, verbose_name='Date created'
                    ),
                ),
                (
                    'dateActivated',
                    models.DateTimeField(
                        blank=True,
                        null=True,
                        verbose_name='Date activated',
                    ),
                ),
                (
                    'dateCompleted',
                    models.DateTimeField(
                        blank=True,
                        null=True,
                        verbose_name='Date completed',
                    ),
                ),
                (
                    'dateRetired',
                    models.DateTimeField(
                        blank=True, null=True, verbose_name='Date retired'
                    ),
                ),
                (
                    'dateModified',
                    models.DateTimeField(
                        blank=True, null=True, verbose_name='Date modified'
                    ),
                ),
                (
                    'activated',
                    models.BooleanField(default=False, verbose_name='Activated?'),
                ),
                (
                    'completed',
                    models.BooleanField(default=False, verbose_name='Completed?'),
                ),
                (
                    'retired',
                    models.BooleanField(default=False, verbose_name='Retired?'),
                ),
                (
                    'rawData',
                    models.TextField(
                        blank=True, editable=False, verbose_name='Raw data'
                    ),
                ),
                (
                    'campaignName',
                    models.CharField(
                        help_text='(max. 50 characters)',
                        max_length=50,
                        verbose_name='Campaign name',
                    ),
                ),
            ],
            options={
                'abstract': False,
            },
        ),
        migrations.CreateModel(
            name='CampaignData',
            fields=[
                (
                    'id',
                    models.AutoField(
                        auto_created=True,
                        primary_key=True,
                        serialize=False,
                        verbose_name='ID',
                    ),
                ),
                (
                    'dateCreated',
                    models.DateTimeField(
                        auto_now_add=True, verbose_name='Date created'
                    ),
                ),
                (
                    'dateActivated',
                    models.DateTimeField(
                        blank=True,
                        null=True,
                        verbose_name='Date activated',
                    ),
                ),
                (
                    'dateCompleted',
                    models.DateTimeField(
                        blank=True,
                        null=True,
                        verbose_name='Date completed',
                    ),
                ),
                (
                    'dateRetired',
                    models.DateTimeField(
                        blank=True, null=True, verbose_name='Date retired'
                    ),
                ),
                (
                    'dateModified',
                    models.DateTimeField(
                        blank=True, null=True, verbose_name='Date modified'
                    ),
                ),
                (
                    'activated',
                    models.BooleanField(default=False, verbose_name='Activated?'),
                ),
                (
                    'completed',
                    models.BooleanField(default=False, verbose_name='Completed?'),
                ),
                (
                    'retired',
                    models.BooleanField(default=False, verbose_name='Retired?'),
                ),
                (
                    'rawData',
                    models.TextField(
                        blank=True, editable=False, verbose_name='Raw data'
                    ),
                ),
                (
                    'dataFile',
                    models.FileField(upload_to='Batches', verbose_name='Data file'),
                ),
                (
                    'dataValid',
                    models.BooleanField(
                        default=False,
                        editable=False,
                        verbose_name='Data valid?',
                    ),
                ),
                (
                    'dataReady',
                    models.BooleanField(
                        default=False,
                        editable=False,
                        verbose_name='Data ready?',
                    ),
                ),
                (
                    'activatedBy',
                    models.ForeignKey(
                        blank=True,
                        editable=False,
                        null=True,
                        on_delete=django.db.models.deletion.PROTECT,
                        related_name='campaign_campaigndata_activated_by',
                        related_query_name='campaign_campaigndatas',
                        to=settings.AUTH_USER_MODEL,
                        verbose_name='Activated by',
                    ),
                ),
                (
                    'completedBy',
                    models.ForeignKey(
                        blank=True,
                        editable=False,
                        null=True,
                        on_delete=django.db.models.deletion.PROTECT,
                        related_name='campaign_campaigndata_completed_by',
                        related_query_name='campaign_campaigndatas',
                        to=settings.AUTH_USER_MODEL,
                        verbose_name='Completed by',
                    ),
                ),
                (
                    'createdBy',
                    models.ForeignKey(
                        editable=False,
                        on_delete=django.db.models.deletion.PROTECT,
                        related_name='campaign_campaigndata_created_by',
                        related_query_name='campaign_campaigndatas',
                        to=settings.AUTH_USER_MODEL,
                        verbose_name='Created by',
                    ),
                ),
            ],
            options={
                'verbose_name_plural': 'Batches',
                'verbose_name': 'Batch',
            },
        ),
        migrations.CreateModel(
            name='CampaignTeam',
            fields=[
                (
                    'id',
                    models.AutoField(
                        auto_created=True,
                        primary_key=True,
                        serialize=False,
                        verbose_name='ID',
                    ),
                ),
                (
                    'dateCreated',
                    models.DateTimeField(
                        auto_now_add=True, verbose_name='Date created'
                    ),
                ),
                (
                    'dateActivated',
                    models.DateTimeField(
                        blank=True,
                        null=True,
                        verbose_name='Date activated',
                    ),
                ),
                (
                    'dateCompleted',
                    models.DateTimeField(
                        blank=True,
                        null=True,
                        verbose_name='Date completed',
                    ),
                ),
                (
                    'dateRetired',
                    models.DateTimeField(
                        blank=True, null=True, verbose_name='Date retired'
                    ),
                ),
                (
                    'dateModified',
                    models.DateTimeField(
                        blank=True, null=True, verbose_name='Date modified'
                    ),
                ),
                (
                    'activated',
                    models.BooleanField(default=False, verbose_name='Activated?'),
                ),
                (
                    'completed',
                    models.BooleanField(default=False, verbose_name='Completed?'),
                ),
                (
                    'retired',
                    models.BooleanField(default=False, verbose_name='Retired?'),
                ),
                (
                    'rawData',
                    models.TextField(
                        blank=True, editable=False, verbose_name='Raw data'
                    ),
                ),
                (
                    'teamName',
                    models.CharField(
                        help_text='(max. 50 characters)',
                        max_length=50,
                        verbose_name='Team name',
                    ),
                ),
                (
                    'requiredAnnotations',
                    models.PositiveSmallIntegerField(
                        help_text='(value in range=[1,32767])',
                        verbose_name='Required annotations',
                    ),
                ),
                (
                    'requiredHours',
                    models.PositiveSmallIntegerField(
                        help_text='(value in range=[1,32767])',
                        verbose_name='Required hours',
                    ),
                ),
                (
                    'activatedBy',
                    models.ForeignKey(
                        blank=True,
                        editable=False,
                        null=True,
                        on_delete=django.db.models.deletion.PROTECT,
                        related_name='campaign_campaignteam_activated_by',
                        related_query_name='campaign_campaignteams',
                        to=settings.AUTH_USER_MODEL,
                        verbose_name='Activated by',
                    ),
                ),
                (
                    'completedBy',
                    models.ForeignKey(
                        blank=True,
                        editable=False,
                        null=True,
                        on_delete=django.db.models.deletion.PROTECT,
                        related_name='campaign_campaignteam_completed_by',
                        related_query_name='campaign_campaignteams',
                        to=settings.AUTH_USER_MODEL,
                        verbose_name='Completed by',
                    ),
                ),
                (
                    'createdBy',
                    models.ForeignKey(
                        editable=False,
                        on_delete=django.db.models.deletion.PROTECT,
                        related_name='campaign_campaignteam_created_by',
                        related_query_name='campaign_campaignteams',
                        to=settings.AUTH_USER_MODEL,
                        verbose_name='Created by',
                    ),
                ),
                (
                    'members',
                    models.ManyToManyField(
                        related_name='campaign_campaignteam_members',
                        related_query_name='campaign_campaignteams',
                        to=settings.AUTH_USER_MODEL,
                        verbose_name='Team members',
                    ),
                ),
                (
                    'modifiedBy',
                    models.ForeignKey(
                        blank=True,
                        editable=False,
                        null=True,
                        on_delete=django.db.models.deletion.PROTECT,
                        related_name='campaign_campaignteam_modified_by',
                        related_query_name='campaign_campaignteams',
                        to=settings.AUTH_USER_MODEL,
                        verbose_name='Modified by',
                    ),
                ),
                (
                    'owner',
                    models.ForeignKey(
                        help_text='(must be staff member)',
                        on_delete=django.db.models.deletion.PROTECT,
                        related_name='campaign_campaignteam_owner',
                        related_query_name='campaign_campaignteams',
                        to=settings.AUTH_USER_MODEL,
                        verbose_name='Team owner',
                    ),
                ),
                (
                    'retiredBy',
                    models.ForeignKey(
                        blank=True,
                        editable=False,
                        null=True,
                        on_delete=django.db.models.deletion.PROTECT,
                        related_name='campaign_campaignteam_retired_by',
                        related_query_name='campaign_campaignteams',
                        to=settings.AUTH_USER_MODEL,
                        verbose_name='Retired by',
                    ),
                ),
            ],
            options={
                'verbose_name_plural': 'Teams',
                'verbose_name': 'Team',
            },
        ),
    ]
