datatracker/ietf/nomcom/migrations/0001_initial.py
Henrik Levkowetz 8e313e4ed5 Adjusted migrations for Python2/3 compatibility.
- Legacy-Id: 16633
2019-08-08 17:11:14 +00:00

239 lines
13 KiB
Python

# Copyright The IETF Trust 2018-2019, All Rights Reserved
# -*- coding: utf-8 -*-
# Generated by Django 1.11.10 on 2018-02-20 10:52
from __future__ import absolute_import, print_function, unicode_literals
from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
import ietf.nomcom.fields
import ietf.nomcom.models
import ietf.utils.models
import ietf.utils.storage
class Migration(migrations.Migration):
initial = True
dependencies = [
('group', '0001_initial'),
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
('dbtemplate', '0001_initial'),
('name', '0001_initial'),
('person', '0001_initial'),
]
operations = [
migrations.CreateModel(
name='Feedback',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('author', models.EmailField(blank=True, max_length=254, verbose_name='Author')),
('subject', models.TextField(blank=True, verbose_name='Subject')),
('comments', ietf.nomcom.fields.EncryptedTextField(verbose_name='Comments')),
('time', models.DateTimeField(auto_now_add=True)),
],
options={
'ordering': ['time'],
},
),
migrations.CreateModel(
name='FeedbackLastSeen',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('time', models.DateTimeField(auto_now=True)),
],
),
migrations.CreateModel(
name='NomCom',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('public_key', models.FileField(blank=True, null=True, storage=ietf.utils.storage.NoLocationMigrationFileSystemStorage(location=None), upload_to=ietf.nomcom.models.upload_path_handler)),
('send_questionnaire', models.BooleanField(default=False, help_text='If you check this box, questionnaires are sent automatically after nominations.', verbose_name='Send questionnaires automatically')),
('reminder_interval', models.PositiveIntegerField(blank=True, help_text='If the nomcom user sets the interval field then a cron command will send reminders to the nominees who have not responded using the following formula: (today - nomination_date) % interval == 0.', null=True)),
('initial_text', models.TextField(blank=True, verbose_name='Help text for nomination form')),
('show_nominee_pictures', models.BooleanField(default=True, help_text='Display pictures of each nominee (if available) on the feedback pages', verbose_name='Show nominee pictures')),
('group', ietf.utils.models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='group.Group')),
],
options={
'verbose_name': 'NomCom',
'verbose_name_plural': 'NomComs',
},
),
migrations.CreateModel(
name='Nomination',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('candidate_name', models.CharField(max_length=255, verbose_name='Candidate name')),
('candidate_email', models.EmailField(max_length=255, verbose_name='Candidate email')),
('candidate_phone', models.CharField(blank=True, max_length=255, verbose_name='Candidate phone')),
('nominator_email', models.EmailField(blank=True, max_length=254, verbose_name='Nominator Email')),
('time', models.DateTimeField(auto_now_add=True)),
('share_nominator', models.BooleanField(default=False, help_text='Check this box to allow the NomCom to let the person you are nominating know that you were one of the people who nominated them. If you do not check this box, your name will be confidential and known only within NomCom.', verbose_name='Share nominator name with candidate')),
('comments', ietf.utils.models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='nomcom.Feedback')),
],
options={
'verbose_name_plural': 'Nominations',
},
),
migrations.CreateModel(
name='Nominee',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('duplicated', ietf.utils.models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='nomcom.Nominee')),
('email', ietf.utils.models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='person.Email')),
('nomcom', ietf.utils.models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='nomcom.NomCom')),
],
options={
'ordering': ['-nomcom__group__acronym', 'email__address'],
'verbose_name_plural': 'Nominees',
},
),
migrations.CreateModel(
name='NomineePosition',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('time', models.DateTimeField(auto_now_add=True)),
('nominee', ietf.utils.models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='nomcom.Nominee')),
],
options={
'ordering': ['nominee'],
'verbose_name': 'Nominee position',
'verbose_name_plural': 'Nominee positions',
},
),
migrations.CreateModel(
name='Position',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(help_text='This short description will appear on the Nomination and Feedback pages. Be as descriptive as necessary. Past examples: "Transport AD", "IAB Member"', max_length=255, verbose_name='Name')),
('is_open', models.BooleanField(default=False, help_text='Set is_open when the nomcom is working on a position. Clear it when an appointment is confirmed.', verbose_name='Is open')),
('accepting_nominations', models.BooleanField(default=False, verbose_name='Is accepting nominations')),
('accepting_feedback', models.BooleanField(default=False, verbose_name='Is accepting feedback')),
('nomcom', ietf.utils.models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='nomcom.NomCom')),
('questionnaire', ietf.utils.models.ForeignKey(editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='questionnaire', to='dbtemplate.DBTemplate')),
('requirement', ietf.utils.models.ForeignKey(editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='requirement', to='dbtemplate.DBTemplate')),
],
options={
'verbose_name_plural': 'Positions',
},
),
migrations.CreateModel(
name='ReminderDates',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('date', models.DateField()),
('nomcom', ietf.utils.models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='nomcom.NomCom')),
],
),
migrations.CreateModel(
name='Topic',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('subject', models.CharField(help_text='This short description will appear on the Feedback pages.', max_length=255, verbose_name='Name')),
('accepting_feedback', models.BooleanField(default=False, verbose_name='Is accepting feedback')),
('audience', ietf.utils.models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='name.TopicAudienceName')),
('description', ietf.utils.models.ForeignKey(editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='description', to='dbtemplate.DBTemplate')),
('nomcom', ietf.utils.models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='nomcom.NomCom')),
],
options={
'verbose_name_plural': 'Topics',
},
),
migrations.CreateModel(
name='TopicFeedbackLastSeen',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('time', models.DateTimeField(auto_now=True)),
('reviewer', ietf.utils.models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='person.Person')),
('topic', ietf.utils.models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='nomcom.Topic')),
],
),
migrations.AddField(
model_name='nomineeposition',
name='position',
field=ietf.utils.models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='nomcom.Position'),
),
migrations.AddField(
model_name='nomineeposition',
name='state',
field=ietf.utils.models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='name.NomineePositionStateName'),
),
migrations.AddField(
model_name='nominee',
name='nominee_position',
field=models.ManyToManyField(through='nomcom.NomineePosition', to='nomcom.Position'),
),
migrations.AddField(
model_name='nominee',
name='person',
field=ietf.utils.models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='person.Person'),
),
migrations.AddField(
model_name='nomination',
name='nominee',
field=ietf.utils.models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='nomcom.Nominee'),
),
migrations.AddField(
model_name='nomination',
name='position',
field=ietf.utils.models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='nomcom.Position'),
),
migrations.AddField(
model_name='nomination',
name='user',
field=ietf.utils.models.ForeignKey(editable=False, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
),
migrations.AddField(
model_name='feedbacklastseen',
name='nominee',
field=ietf.utils.models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='nomcom.Nominee'),
),
migrations.AddField(
model_name='feedbacklastseen',
name='reviewer',
field=ietf.utils.models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='person.Person'),
),
migrations.AddField(
model_name='feedback',
name='nomcom',
field=ietf.utils.models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='nomcom.NomCom'),
),
migrations.AddField(
model_name='feedback',
name='nominees',
field=models.ManyToManyField(blank=True, to='nomcom.Nominee'),
),
migrations.AddField(
model_name='feedback',
name='positions',
field=models.ManyToManyField(blank=True, to='nomcom.Position'),
),
migrations.AddField(
model_name='feedback',
name='topics',
field=models.ManyToManyField(blank=True, to='nomcom.Topic'),
),
migrations.AddField(
model_name='feedback',
name='type',
field=ietf.utils.models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='name.FeedbackTypeName'),
),
migrations.AddField(
model_name='feedback',
name='user',
field=ietf.utils.models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
),
migrations.AlterUniqueTogether(
name='nomineeposition',
unique_together=set([('position', 'nominee')]),
),
migrations.AlterUniqueTogether(
name='nominee',
unique_together=set([('email', 'nomcom')]),
),
]