# -*- coding: utf-8 -*-
# Generated by Django 1.11.15 on 2019-01-31 22:18
import django.db.models.deletion
from django.db import migrations, models


class Migration(migrations.Migration):

    dependencies = [
        ('judge', '0084_contest_formats'),
    ]

    operations = [
        migrations.CreateModel(
            name='SubmissionSource',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('source', models.TextField(max_length=65536, verbose_name='source code')),
                ('submission', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='link', to='judge.Submission', verbose_name='associated submission')),
            ],
        ),
        migrations.RunSQL(
            ['''INSERT INTO judge_submissionsource (source, submission_id)
                SELECT source, id AS 'submission_id' FROM judge_submission;'''],
            ['''UPDATE judge_submission sub
                INNER JOIN judge_submissionsource src ON sub.id = src.submission_id
                SET sub.source = src.source;'''],
            elidable=True,
        ),
        migrations.RemoveField(
            model_name='submission',
            name='source',
        ),
        migrations.AlterField(
            model_name='submissionsource',
            name='submission',
            field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='source', to='judge.Submission', verbose_name='associated submission'),
        ),
    ]