# Generated by Django 2.2.10 on 2020-02-21 06:45

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


class Migration(migrations.Migration):

    initial = True

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

    operations = [
        migrations.CreateModel(
            name='Application',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('create_date', models.DateTimeField(auto_now_add=True)),
                ('apply_date', models.DateTimeField()),
                ('status', models.CharField(choices=[('UA', 'Unapplied'), ('AP', 'Applied'), ('IV', 'Interviewing'), ('DC', 'Declined'), ('OF', 'Offer')], default='', max_length=12)),
                ('contact', models.CharField(default='', max_length=100)),
                ('notes', models.TextField()),
            ],
        ),
        migrations.CreateModel(
            name='Description',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('text', models.TextField()),
            ],
        ),
        migrations.CreateModel(
            name='JobSite',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('url', models.CharField(default='', max_length=100, unique=True)),
                ('date_created', models.DateTimeField(auto_now_add=True)),
                ('search_url_template', models.CharField(default='', max_length=100)),
                ('jobs_per_page', models.CharField(default='', max_length=100)),
                ('page_parameter', models.CharField(default='', max_length=100)),
                ('is_easy_apply', models.BooleanField(default=False)),
                ('apply_url', models.CharField(default='', max_length=256)),
            ],
        ),
        migrations.CreateModel(
            name='Job',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('keywords', models.CharField(default='', max_length=128)),
                ('job_site', models.CharField(default='', max_length=100)),
                ('title', models.CharField(default='', max_length=100)),
                ('company', models.CharField(default='', max_length=100)),
                ('location', models.CharField(blank=True, default='', max_length=100)),
                ('date_posted', models.CharField(blank=True, default='', max_length=64)),
                ('date_scraped', models.DateTimeField(auto_now_add=True)),
                ('url', models.CharField(default=uuid.uuid1, max_length=512, unique=True)),
                ('is_available', models.BooleanField(default=True)),
                ('is_applied', models.BooleanField(default=False)),
                ('is_favorite', models.BooleanField(default=False)),
                ('is_hidden', models.BooleanField(default=False)),
                ('is_delete', models.BooleanField(default=False)),
                ('description', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='jobs.Description')),
                ('owner', models.ForeignKey(blank=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
            ],
        ),
        migrations.CreateModel(
            name='Interview',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('date', models.DateTimeField()),
                ('type', models.CharField(choices=[('EM', 'Email'), ('PH', 'Phone'), ('VD', 'Video'), ('PS', 'In-Person')], default='', max_length=100)),
                ('contact', models.CharField(default='', max_length=100)),
                ('notes', models.TextField()),
                ('date_created', models.DateTimeField(auto_now_add=True)),
                ('status', models.CharField(choices=[('OF', 'OFFERED'), ('SC', 'SCHEDULED'), ('CL', 'COMPLETED')], default='', max_length=12)),
                ('application', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='application', to='jobs.Application')),
                ('owner', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='interview_owner', to=settings.AUTH_USER_MODEL)),
            ],
        ),
        migrations.AddField(
            model_name='application',
            name='job',
            field=models.ForeignKey(blank=True, on_delete=django.db.models.deletion.CASCADE, to='jobs.Job'),
        ),
        migrations.AddField(
            model_name='application',
            name='owner',
            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
        ),
        migrations.AddField(
            model_name='application',
            name='resume',
            field=models.ForeignKey(default='', on_delete=django.db.models.deletion.PROTECT, to='resume.Resume'),
        ),
        migrations.CreateModel(
            name='Aggregator',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('keywords', models.CharField(default='', max_length=128)),
                ('max_threads', models.CharField(default='', max_length=100)),
                ('run_schedule', models.CharField(default='Manual', max_length=100)),
                ('archive_raw_html', models.BooleanField(default=False)),
                ('send_alerts', models.BooleanField(default=False)),
                ('job_site', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='jobs.JobSite')),
            ],
        ),
    ]
