All the migrations seem fixed now

This commit is contained in:
Scott Bragg 2016-09-17 15:53:47 +10:00
parent aa70c5aeb2
commit 433a99a402
10 changed files with 217 additions and 223 deletions

View file

@ -1,4 +1,4 @@
Django==1.9.2
Django==1.9.7
django-appconf==1.0.1
django-model-utils==2.4.0
django-reversion==1.10.1

View file

@ -1,12 +1,16 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.7 on 2016-09-17 03:34
from __future__ import unicode_literals
from django.db import models, migrations
from django.db import migrations, models
import django.db.models.deletion
import timezone_field.fields
class Migration(migrations.Migration):
initial = True
dependencies = [
]
@ -14,31 +18,31 @@ class Migration(migrations.Migration):
migrations.CreateModel(
name='Conference',
fields=[
('id', models.AutoField(primary_key=True, auto_created=True, serialize=False, verbose_name='ID')),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('title', models.CharField(max_length=100, verbose_name='Title')),
('start_date', models.DateField(null=True, blank=True, verbose_name='Start date')),
('end_date', models.DateField(null=True, blank=True, verbose_name='End date')),
('start_date', models.DateField(blank=True, null=True, verbose_name='Start date')),
('end_date', models.DateField(blank=True, null=True, verbose_name='End date')),
('timezone', timezone_field.fields.TimeZoneField(blank=True, verbose_name='timezone')),
],
options={
'verbose_name_plural': 'conferences',
'verbose_name': 'conference',
'verbose_name_plural': 'conferences',
},
),
migrations.CreateModel(
name='Section',
fields=[
('id', models.AutoField(primary_key=True, auto_created=True, serialize=False, verbose_name='ID')),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=100, verbose_name='Name')),
('slug', models.SlugField(verbose_name='Slug')),
('start_date', models.DateField(null=True, blank=True, verbose_name='Start date')),
('end_date', models.DateField(null=True, blank=True, verbose_name='End date')),
('conference', models.ForeignKey(to='symposion_conference.Conference', verbose_name='Conference')),
('start_date', models.DateField(blank=True, null=True, verbose_name='Start date')),
('end_date', models.DateField(blank=True, null=True, verbose_name='End date')),
('conference', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='symposion_conference.Conference', verbose_name='Conference')),
],
options={
'ordering': ['start_date'],
'verbose_name_plural': 'sections',
'verbose_name': 'section',
'verbose_name_plural': 'sections',
},
),
]

View file

@ -1,17 +1,21 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.7 on 2016-09-17 03:35
from __future__ import unicode_literals
from django.db import models, migrations
from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
import django.utils.timezone
import symposion.proposals.models
class Migration(migrations.Migration):
initial = True
dependencies = [
('symposion_speakers', '0001_initial'),
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
('symposion_speakers', '__first__'),
('symposion_conference', '0001_initial'),
]
@ -19,8 +23,8 @@ class Migration(migrations.Migration):
migrations.CreateModel(
name='AdditionalSpeaker',
fields=[
('id', models.AutoField(verbose_name='ID', primary_key=True, serialize=False, auto_created=True)),
('status', models.IntegerField(verbose_name='Status', default=1, choices=[(1, 'Pending'), (2, 'Accepted'), (3, 'Declined')])),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('status', models.IntegerField(choices=[(1, 'Pending'), (2, 'Accepted'), (3, 'Declined')], default=1, verbose_name='Status')),
],
options={
'verbose_name': 'Addtional speaker',
@ -30,68 +34,72 @@ class Migration(migrations.Migration):
migrations.CreateModel(
name='ProposalBase',
fields=[
('id', models.AutoField(verbose_name='ID', primary_key=True, serialize=False, auto_created=True)),
('title', models.CharField(verbose_name='Title', max_length=100)),
('description', models.TextField(verbose_name='Brief Description', max_length=400, help_text='If your proposal is accepted this will be made public and printed in the program. Should be one paragraph, maximum 400 characters.')),
('abstract', models.TextField(verbose_name='Detailed Abstract', help_text="Detailed outline. Will be made public if your proposal is accepted. Edit using <a href='http://daringfireball.net/projects/markdown/basics' target='_blank'>Markdown</a>.")),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('title', models.CharField(max_length=100, verbose_name='Title')),
('abstract', models.TextField(help_text="This will appear in the conference programme. Up to about 500 words. Edit using <a href='http://warpedvisions.org/projects/markdown-cheat-sheet/' target='_blank'>Markdown</a>.", verbose_name='Abstract')),
('abstract_html', models.TextField(blank=True)),
('additional_notes', models.TextField(blank=True, verbose_name='Addtional Notes', help_text="Anything else you'd like the program committee to know when making their selection: your past experience, etc. This is not made public. Edit using <a href='http://daringfireball.net/projects/markdown/basics' target='_blank'>Markdown</a>.")),
('additional_notes_html', models.TextField(blank=True)),
('submitted', models.DateTimeField(editable=False, default=django.utils.timezone.now, verbose_name='Submitted')),
('cancelled', models.BooleanField(verbose_name='Cancelled', default=False)),
('additional_speakers', models.ManyToManyField(blank=True, verbose_name='Addtional speakers', through='symposion_proposals.AdditionalSpeaker', to='symposion_speakers.Speaker')),
('private_abstract', models.TextField(help_text="This will only be shown to organisers and reviewers. You should provide any details about your proposal that you don't want to be public here. Edit using <a href='http://warpedvisions.org/projects/markdown-cheat-sheet/' target='_blank'>Markdown</a>.", verbose_name='Private Abstract')),
('private_abstract_html', models.TextField(blank=True)),
('technical_requirements', models.TextField(blank=True, help_text="Speakers will be provided with: Internet access, power, projector, audio. If you require anything in addition, please list your technical requirements here. Such as: a static IP address, A/V equipment or will be demonstrating security-related techniques on the conference network. Edit using <a href='http://warpedvisions.org/projects/markdown-cheat-sheet/' target='_blank'>Markdown</a>.", verbose_name='Special Requirements')),
('technical_requirements_html', models.TextField(blank=True)),
('project', models.CharField(blank=True, help_text='The name of the project you will be talking about.', max_length=100)),
('project_url', models.URLField(blank=True, help_text='If your project has a webpage, specify the URL here so the committee can find out more about your proposal.', verbose_name='Project URL')),
('video_url', models.URLField(blank=True, help_text="You may optionally provide us with a link to a video of you speaking at another event, or of a short 'elevator pitch' of your proposed talk.", verbose_name='Video')),
('submitted', models.DateTimeField(default=django.utils.timezone.now, editable=False, verbose_name='Submitted')),
('cancelled', models.BooleanField(default=False, verbose_name='Cancelled')),
('additional_speakers', models.ManyToManyField(blank=True, through='symposion_proposals.AdditionalSpeaker', to='symposion_speakers.Speaker', verbose_name='Addtional speakers')),
],
),
migrations.CreateModel(
name='ProposalKind',
fields=[
('id', models.AutoField(verbose_name='ID', primary_key=True, serialize=False, auto_created=True)),
('name', models.CharField(verbose_name='Name', max_length=100)),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=100, verbose_name='Name')),
('slug', models.SlugField(verbose_name='Slug')),
('section', models.ForeignKey(to='symposion_conference.Section', verbose_name='Section', related_name='proposal_kinds')),
('section', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='proposal_kinds', to='symposion_conference.Section', verbose_name='Section')),
],
),
migrations.CreateModel(
name='ProposalSection',
fields=[
('id', models.AutoField(verbose_name='ID', primary_key=True, serialize=False, auto_created=True)),
('start', models.DateTimeField(blank=True, verbose_name='Start', null=True)),
('end', models.DateTimeField(blank=True, verbose_name='End', null=True)),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('start', models.DateTimeField(blank=True, null=True, verbose_name='Start')),
('end', models.DateTimeField(blank=True, null=True, verbose_name='End')),
('closed', models.NullBooleanField(verbose_name='Closed')),
('published', models.NullBooleanField(verbose_name='Published')),
('section', models.OneToOneField(to='symposion_conference.Section', verbose_name='Section')),
('section', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='symposion_conference.Section', verbose_name='Section')),
],
),
migrations.CreateModel(
name='SupportingDocument',
fields=[
('id', models.AutoField(verbose_name='ID', primary_key=True, serialize=False, auto_created=True)),
('created_at', models.DateTimeField(verbose_name='Created at', default=django.utils.timezone.now)),
('file', models.FileField(verbose_name='File', upload_to=symposion.proposals.models.uuid_filename)),
('description', models.CharField(verbose_name='Description', max_length=140)),
('proposal', models.ForeignKey(to='symposion_proposals.ProposalBase', verbose_name='Proposal', related_name='supporting_documents')),
('uploaded_by', models.ForeignKey(to=settings.AUTH_USER_MODEL, verbose_name='Uploaded by')),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('created_at', models.DateTimeField(default=django.utils.timezone.now, verbose_name='Created at')),
('file', models.FileField(upload_to=symposion.proposals.models.uuid_filename, verbose_name='File')),
('description', models.CharField(max_length=140, verbose_name='Description')),
('proposal', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='supporting_documents', to='symposion_proposals.ProposalBase', verbose_name='Proposal')),
('uploaded_by', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Uploaded by')),
],
),
migrations.AddField(
model_name='proposalbase',
name='kind',
field=models.ForeignKey(to='symposion_proposals.ProposalKind', verbose_name='Kind'),
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='symposion_proposals.ProposalKind', verbose_name='Kind'),
),
migrations.AddField(
model_name='proposalbase',
name='speaker',
field=models.ForeignKey(to='symposion_speakers.Speaker', verbose_name='Speaker', related_name='proposals'),
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='proposals', to='symposion_speakers.Speaker', verbose_name='Speaker'),
),
migrations.AddField(
model_name='additionalspeaker',
name='proposalbase',
field=models.ForeignKey(to='symposion_proposals.ProposalBase', verbose_name='Proposalbase'),
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='symposion_proposals.ProposalBase', verbose_name='Proposalbase'),
),
migrations.AddField(
model_name='additionalspeaker',
name='speaker',
field=models.ForeignKey(to='symposion_speakers.Speaker', verbose_name='Speaker'),
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='symposion_speakers.Speaker', verbose_name='Speaker'),
),
migrations.AlterUniqueTogether(
name='additionalspeaker',

View file

@ -1,17 +1,20 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.7 on 2016-09-17 03:35
from __future__ import unicode_literals
from django.db import models, migrations
import django.db.models.deletion
from django.conf import settings
from decimal import Decimal
import datetime
from decimal import Decimal
from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
initial = True
dependencies = [
('symposion_proposals', '0001_initial'),
('symposion_proposals', '__first__'),
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]
@ -19,121 +22,122 @@ class Migration(migrations.Migration):
migrations.CreateModel(
name='Comment',
fields=[
('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True, serialize=False)),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('text', models.TextField(verbose_name='Text')),
('text_html', models.TextField(blank=True)),
('public', models.BooleanField(verbose_name='Public', default=False, choices=[(True, 'public'), (False, 'private')])),
('commented_at', models.DateTimeField(verbose_name='Commented at', default=datetime.datetime.now)),
('commenter', models.ForeignKey(verbose_name='Commenter', to=settings.AUTH_USER_MODEL)),
('proposal', models.ForeignKey(to='symposion_proposals.ProposalBase', verbose_name='Proposal', related_name='comments')),
('public', models.BooleanField(choices=[(True, 'public'), (False, 'private')], default=False, verbose_name='Public')),
('commented_at', models.DateTimeField(default=datetime.datetime.now, verbose_name='Commented at')),
('commenter', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Commenter')),
('proposal', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='comments', to='symposion_proposals.ProposalBase', verbose_name='Proposal')),
],
options={
'verbose_name_plural': 'comments',
'verbose_name': 'comment',
'verbose_name_plural': 'comments',
},
),
migrations.CreateModel(
name='LatestVote',
fields=[
('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True, serialize=False)),
('vote', models.CharField(choices=[('+1', '+1 \u2014 Good proposal and I will argue for it to be accepted.'), ('+0', '+0 \u2014 OK proposal, but I will not argue for it to be accepted.'), ('\u22120', '\u22120 \u2014 Weak proposal, but I will not argue strongly against acceptance.'), ('\u22121', '\u22121 \u2014 Serious issues and I will argue to reject this proposal.')], verbose_name='Vote', max_length=2)),
('submitted_at', models.DateTimeField(editable=False, verbose_name='Submitted at', default=datetime.datetime.now)),
('proposal', models.ForeignKey(to='symposion_proposals.ProposalBase', verbose_name='Proposal', related_name='votes')),
('user', models.ForeignKey(verbose_name='User', to=settings.AUTH_USER_MODEL)),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('vote', models.CharField(choices=[('+2', '+2 \u2014 Good proposal and I will argue for it to be accepted.'), ('+1', '+1 \u2014 OK proposal, but I will not argue for it to be accepted.'), ('-1', '\u22121 \u2014 Weak proposal, but I will not argue strongly against acceptance.'), ('-2', '\u22122 \u2014 Serious issues and I will argue to reject this proposal.'), ('0', 'Abstain - I do not want to review this proposal and I do not want to see it again.')], max_length=2, verbose_name='Vote')),
('submitted_at', models.DateTimeField(default=datetime.datetime.now, editable=False, verbose_name='Submitted at')),
('proposal', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='votes', to='symposion_proposals.ProposalBase', verbose_name='Proposal')),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='User')),
],
options={
'verbose_name_plural': 'latest votes',
'verbose_name': 'latest vote',
'verbose_name_plural': 'latest votes',
},
),
migrations.CreateModel(
name='NotificationTemplate',
fields=[
('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True, serialize=False)),
('label', models.CharField(verbose_name='Label', max_length=100)),
('from_address', models.EmailField(verbose_name='From address', max_length=254)),
('subject', models.CharField(verbose_name='Subject', max_length=100)),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('label', models.CharField(max_length=100, verbose_name='Label')),
('from_address', models.EmailField(max_length=254, verbose_name='From address')),
('subject', models.CharField(max_length=100, verbose_name='Subject')),
('body', models.TextField(verbose_name='Body')),
],
options={
'verbose_name_plural': 'notification templates',
'verbose_name': 'notification template',
'verbose_name_plural': 'notification templates',
},
),
migrations.CreateModel(
name='ProposalMessage',
fields=[
('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True, serialize=False)),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('message', models.TextField(verbose_name='Message')),
('message_html', models.TextField(blank=True)),
('submitted_at', models.DateTimeField(editable=False, verbose_name='Submitted at', default=datetime.datetime.now)),
('proposal', models.ForeignKey(to='symposion_proposals.ProposalBase', verbose_name='Proposal', related_name='messages')),
('user', models.ForeignKey(verbose_name='User', to=settings.AUTH_USER_MODEL)),
('submitted_at', models.DateTimeField(default=datetime.datetime.now, editable=False, verbose_name='Submitted at')),
('proposal', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='messages', to='symposion_proposals.ProposalBase', verbose_name='Proposal')),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='User')),
],
options={
'verbose_name_plural': 'proposal messages',
'verbose_name': 'proposal message',
'ordering': ['submitted_at'],
'verbose_name': 'proposal message',
'verbose_name_plural': 'proposal messages',
},
),
migrations.CreateModel(
name='ProposalResult',
fields=[
('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True, serialize=False)),
('score', models.DecimalField(decimal_places=2, verbose_name='Score', max_digits=5, default=Decimal('0.00'))),
('comment_count', models.PositiveIntegerField(verbose_name='Comment count', default=0)),
('vote_count', models.PositiveIntegerField(verbose_name='Vote count', default=0)),
('plus_one', models.PositiveIntegerField(verbose_name='Plus one', default=0)),
('plus_zero', models.PositiveIntegerField(verbose_name='Plus zero', default=0)),
('minus_zero', models.PositiveIntegerField(verbose_name='Minus zero', default=0)),
('minus_one', models.PositiveIntegerField(verbose_name='Minus one', default=0)),
('accepted', models.NullBooleanField(verbose_name='Accepted', default=None, choices=[(True, 'accepted'), (False, 'rejected'), (None, 'undecided')])),
('status', models.CharField(choices=[('accepted', 'accepted'), ('rejected', 'rejected'), ('undecided', 'undecided'), ('standby', 'standby')], verbose_name='Status', max_length=20, default='undecided')),
('proposal', models.OneToOneField(to='symposion_proposals.ProposalBase', verbose_name='Proposal', related_name='result')),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('score', models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=5, verbose_name='Score')),
('comment_count', models.PositiveIntegerField(default=0, verbose_name='Comment count')),
('vote_count', models.PositiveIntegerField(default=0, verbose_name='Vote count')),
('abstain', models.PositiveIntegerField(default=0, verbose_name='Abstain')),
('plus_two', models.PositiveIntegerField(default=0, verbose_name='Plus two')),
('plus_one', models.PositiveIntegerField(default=0, verbose_name='Plus one')),
('minus_one', models.PositiveIntegerField(default=0, verbose_name='Minus one')),
('minus_two', models.PositiveIntegerField(default=0, verbose_name='Minus two')),
('accepted', models.NullBooleanField(choices=[(True, 'accepted'), (False, 'rejected'), (None, 'undecided')], default=None, verbose_name='Accepted')),
('status', models.CharField(choices=[('accepted', 'accepted'), ('rejected', 'rejected'), ('undecided', 'undecided'), ('standby', 'standby')], default='undecided', max_length=20, verbose_name='Status')),
('proposal', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='result', to='symposion_proposals.ProposalBase', verbose_name='Proposal')),
],
options={
'verbose_name_plural': 'proposal_results',
'verbose_name': 'proposal_result',
'verbose_name_plural': 'proposal_results',
},
),
migrations.CreateModel(
name='ResultNotification',
fields=[
('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True, serialize=False)),
('timestamp', models.DateTimeField(verbose_name='Timestamp', default=datetime.datetime.now)),
('to_address', models.EmailField(verbose_name='To address', max_length=254)),
('from_address', models.EmailField(verbose_name='From address', max_length=254)),
('subject', models.CharField(verbose_name='Subject', max_length=100)),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('timestamp', models.DateTimeField(default=datetime.datetime.now, verbose_name='Timestamp')),
('to_address', models.EmailField(max_length=254, verbose_name='To address')),
('from_address', models.EmailField(max_length=254, verbose_name='From address')),
('subject', models.CharField(max_length=255, verbose_name='Subject')),
('body', models.TextField(verbose_name='Body')),
('proposal', models.ForeignKey(to='symposion_proposals.ProposalBase', verbose_name='Proposal', related_name='notifications')),
('template', models.ForeignKey(to='symposion_reviews.NotificationTemplate', blank=True, verbose_name='Template', null=True, on_delete=django.db.models.deletion.SET_NULL)),
('proposal', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='notifications', to='symposion_proposals.ProposalBase', verbose_name='Proposal')),
('template', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='symposion_reviews.NotificationTemplate', verbose_name='Template')),
],
),
migrations.CreateModel(
name='Review',
fields=[
('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True, serialize=False)),
('vote', models.CharField(blank=True, verbose_name='Vote', max_length=2, choices=[('+1', '+1 \u2014 Good proposal and I will argue for it to be accepted.'), ('+0', '+0 \u2014 OK proposal, but I will not argue for it to be accepted.'), ('\u22120', '\u22120 \u2014 Weak proposal, but I will not argue strongly against acceptance.'), ('\u22121', '\u22121 \u2014 Serious issues and I will argue to reject this proposal.')])),
('comment', models.TextField(verbose_name='Comment')),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('vote', models.CharField(blank=True, choices=[('+2', '+2 \u2014 Good proposal and I will argue for it to be accepted.'), ('+1', '+1 \u2014 OK proposal, but I will not argue for it to be accepted.'), ('-1', '\u22121 \u2014 Weak proposal, but I will not argue strongly against acceptance.'), ('-2', '\u22122 \u2014 Serious issues and I will argue to reject this proposal.'), ('0', 'Abstain - I do not want to review this proposal and I do not want to see it again.')], max_length=2, verbose_name='Vote')),
('comment', models.TextField(blank=True, verbose_name='Comment')),
('comment_html', models.TextField(blank=True)),
('submitted_at', models.DateTimeField(editable=False, verbose_name='Submitted at', default=datetime.datetime.now)),
('proposal', models.ForeignKey(to='symposion_proposals.ProposalBase', verbose_name='Proposal', related_name='reviews')),
('user', models.ForeignKey(verbose_name='User', to=settings.AUTH_USER_MODEL)),
('submitted_at', models.DateTimeField(default=datetime.datetime.now, editable=False, verbose_name='Submitted at')),
('proposal', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='reviews', to='symposion_proposals.ProposalBase', verbose_name='Proposal')),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='User')),
],
options={
'verbose_name_plural': 'reviews',
'verbose_name': 'review',
'verbose_name_plural': 'reviews',
},
),
migrations.CreateModel(
name='ReviewAssignment',
fields=[
('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True, serialize=False)),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('origin', models.IntegerField(choices=[(0, 'auto-assigned, initial'), (1, 'opted-in'), (2, 'auto-assigned, later')], verbose_name='Origin')),
('assigned_at', models.DateTimeField(verbose_name='Assigned at', default=datetime.datetime.now)),
('opted_out', models.BooleanField(verbose_name='Opted out', default=False)),
('proposal', models.ForeignKey(verbose_name='Proposal', to='symposion_proposals.ProposalBase')),
('user', models.ForeignKey(verbose_name='User', to=settings.AUTH_USER_MODEL)),
('assigned_at', models.DateTimeField(default=datetime.datetime.now, verbose_name='Assigned at')),
('opted_out', models.BooleanField(default=False, verbose_name='Opted out')),
('proposal', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='symposion_proposals.ProposalBase', verbose_name='Proposal')),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='User')),
],
),
migrations.AlterUniqueTogether(

View file

@ -342,7 +342,7 @@ class ResultNotification(models.Model):
timestamp = models.DateTimeField(default=datetime.now, verbose_name=_("Timestamp"))
to_address = models.EmailField(verbose_name=_("To address"))
from_address = models.EmailField(verbose_name=_("From address"))
subject = models.CharField(max_length=100, verbose_name=_("Subject"))
subject = models.CharField(max_length=255, verbose_name=_("Subject"))
body = models.TextField(verbose_name=_("Body"))
def recipients(self):

View file

@ -1,25 +1,29 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.7 on 2016-09-17 03:35
from __future__ import unicode_literals
from django.db import models, migrations
import datetime
from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
initial = True
dependencies = [
('symposion_proposals', '__first__'),
('symposion_speakers', '__first__'),
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
('symposion_conference', '0001_initial'),
('symposion_proposals', '0001_initial'),
]
operations = [
migrations.CreateModel(
name='Day',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('date', models.DateField(verbose_name='Date')),
],
options={
@ -31,16 +35,14 @@ class Migration(migrations.Migration):
migrations.CreateModel(
name='Presentation',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('title', models.CharField(max_length=100, verbose_name='Title')),
('description', models.TextField(verbose_name='Description')),
('description_html', models.TextField(blank=True)),
('abstract', models.TextField(verbose_name='Abstract')),
('abstract_html', models.TextField(blank=True)),
('cancelled', models.BooleanField(default=False, verbose_name='Cancelled')),
('additional_speakers', models.ManyToManyField(related_name='copresentations', to='symposion_speakers.Speaker', verbose_name='Additional speakers', blank=True)),
('proposal_base', models.OneToOneField(to='symposion_proposals.ProposalBase', related_name='presentation', verbose_name='Proposal base')),
('section', models.ForeignKey(to='symposion_conference.Section', related_name='presentations', verbose_name='Section')),
('additional_speakers', models.ManyToManyField(blank=True, related_name='copresentations', to='symposion_speakers.Speaker', verbose_name='Additional speakers')),
('proposal_base', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='presentation', to='symposion_proposals.ProposalBase', verbose_name='Proposal base')),
('section', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='presentations', to='symposion_conference.Section', verbose_name='Section')),
],
options={
'ordering': ['slot'],
@ -51,7 +53,7 @@ class Migration(migrations.Migration):
migrations.CreateModel(
name='Room',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=65, verbose_name='Name')),
('order', models.PositiveIntegerField(verbose_name='Order')),
],
@ -63,10 +65,10 @@ class Migration(migrations.Migration):
migrations.CreateModel(
name='Schedule',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('published', models.BooleanField(default=True, verbose_name='Published')),
('hidden', models.BooleanField(default=False, verbose_name='Hide schedule from overall conference view')),
('section', models.OneToOneField(to='symposion_conference.Section', verbose_name='Section')),
('section', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='symposion_conference.Section', verbose_name='Section')),
],
options={
'ordering': ['section'],
@ -77,8 +79,8 @@ class Migration(migrations.Migration):
migrations.CreateModel(
name='Session',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('day', models.ForeignKey(to='symposion_schedule.Day', related_name='sessions', verbose_name='Day')),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('day', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='sessions', to='symposion_schedule.Day', verbose_name='Day')),
],
options={
'verbose_name': 'Session',
@ -88,12 +90,12 @@ class Migration(migrations.Migration):
migrations.CreateModel(
name='SessionRole',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('role', models.IntegerField(verbose_name='Role', choices=[(1, 'Session Chair'), (2, 'Session Runner')])),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('role', models.IntegerField(choices=[(1, 'Session Chair'), (2, 'Session Runner')], verbose_name='Role')),
('status', models.NullBooleanField(verbose_name='Status')),
('submitted', models.DateTimeField(default=datetime.datetime.now)),
('session', models.ForeignKey(to='symposion_schedule.Session', verbose_name='Session')),
('user', models.ForeignKey(to=settings.AUTH_USER_MODEL, verbose_name='User')),
('session', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='symposion_schedule.Session', verbose_name='Session')),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='User')),
],
options={
'verbose_name': 'Session role',
@ -103,12 +105,13 @@ class Migration(migrations.Migration):
migrations.CreateModel(
name='Slot',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(editable=False, max_length=100)),
('start', models.TimeField(verbose_name='Start')),
('end', models.TimeField(verbose_name='End')),
('content_override', models.TextField(verbose_name='Content override', blank=True)),
('content_override', models.TextField(blank=True, verbose_name='Content override')),
('content_override_html', models.TextField(blank=True)),
('day', models.ForeignKey(to='symposion_schedule.Day', verbose_name='Day')),
('day', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='symposion_schedule.Day', verbose_name='Day')),
],
options={
'ordering': ['day', 'start', 'end'],
@ -119,9 +122,9 @@ class Migration(migrations.Migration):
migrations.CreateModel(
name='SlotKind',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('label', models.CharField(max_length=50, verbose_name='Label')),
('schedule', models.ForeignKey(to='symposion_schedule.Schedule', verbose_name='schedule')),
('schedule', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='symposion_schedule.Schedule', verbose_name='schedule')),
],
options={
'verbose_name': 'Slot kind',
@ -131,9 +134,9 @@ class Migration(migrations.Migration):
migrations.CreateModel(
name='SlotRoom',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('room', models.ForeignKey(to='symposion_schedule.Room', verbose_name='Room')),
('slot', models.ForeignKey(to='symposion_schedule.Slot', verbose_name='Slot')),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('room', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='symposion_schedule.Room', verbose_name='Room')),
('slot', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='symposion_schedule.Slot', verbose_name='Slot')),
],
options={
'ordering': ['slot', 'room__order'],
@ -144,32 +147,32 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name='slot',
name='kind',
field=models.ForeignKey(to='symposion_schedule.SlotKind', verbose_name='Kind'),
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='symposion_schedule.SlotKind', verbose_name='Kind'),
),
migrations.AddField(
model_name='session',
name='slots',
field=models.ManyToManyField(related_name='sessions', verbose_name='Slots', to='symposion_schedule.Slot'),
field=models.ManyToManyField(related_name='sessions', to='symposion_schedule.Slot', verbose_name='Slots'),
),
migrations.AddField(
model_name='room',
name='schedule',
field=models.ForeignKey(to='symposion_schedule.Schedule', verbose_name='Schedule'),
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='symposion_schedule.Schedule', verbose_name='Schedule'),
),
migrations.AddField(
model_name='presentation',
name='slot',
field=models.OneToOneField(to='symposion_schedule.Slot', related_name='content_ptr', blank=True, null=True, verbose_name='Slot'),
field=models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='content_ptr', to='symposion_schedule.Slot', verbose_name='Slot'),
),
migrations.AddField(
model_name='presentation',
name='speaker',
field=models.ForeignKey(to='symposion_speakers.Speaker', related_name='presentations', verbose_name='Speaker'),
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='presentations', to='symposion_speakers.Speaker', verbose_name='Speaker'),
),
migrations.AddField(
model_name='day',
name='schedule',
field=models.ForeignKey(to='symposion_schedule.Schedule', verbose_name='Schedule'),
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='symposion_schedule.Schedule', verbose_name='Schedule'),
),
migrations.AlterUniqueTogether(
name='slotroom',

View file

@ -1,23 +0,0 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.2 on 2016-09-03 01:46
from __future__ import unicode_literals
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('symposion_schedule', '0001_initial'),
]
operations = [
migrations.RemoveField(
model_name='presentation',
name='description',
),
migrations.RemoveField(
model_name='presentation',
name='description_html',
),
]

View file

@ -1,13 +1,17 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.7 on 2016-09-17 03:35
from __future__ import unicode_literals
from django.db import models, migrations
import datetime
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),
]
@ -16,21 +20,31 @@ class Migration(migrations.Migration):
migrations.CreateModel(
name='Speaker',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, verbose_name='ID', serialize=False)),
('name', models.CharField(verbose_name='Name', help_text='As you would like it to appear in the conference program.', max_length=100)),
('biography', models.TextField(verbose_name='Biography', blank=True, help_text="A little bit about you. Edit using <a href='http://warpedvisions.org/projects/markdown-cheat-sheet/target='_blank'>Markdown</a>.")),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(help_text='As you would like it to appear in the conference programme.', max_length=100, verbose_name='Name')),
('biography', models.TextField(blank=True, help_text="This will appear on the conference website and in the programme. Please write in the third person, eg 'Alice is a Moblin hacker...', 150-200 words. Edit using <a href='http://warpedvisions.org/projects/markdown-cheat-sheet/' target='_blank'>Markdown</a>.", verbose_name='Biography')),
('biography_html', models.TextField(blank=True)),
('photo', models.ImageField(verbose_name='Photo', upload_to='speaker_photos', blank=True)),
('experience', models.TextField(blank=True, help_text="Have you had any experience presenting elsewhere? If so, we'd like to know. Anything you put here will only be seen by the organisers and reviewers; use it to convince them why they should accept your proposal. Edit using <a href='http://warpedvisions.org/projects/markdown-cheat-sheet/' target='_blank'>Markdown</a>.", verbose_name='Speaking experience')),
('experience_html', models.TextField(blank=True)),
('photo', models.ImageField(blank=True, upload_to='speaker_photos', verbose_name='Photo')),
('telephone', models.CharField(help_text="The conference team will need this to contact you during the conference week. If you don't have one, or do not wish to provide it, then enter NONE in this field.", max_length=15)),
('homepage', models.URLField(blank=True, help_text='Your home page, if you have one')),
('twitter_username', models.CharField(blank=True, help_text='Your Twitter account', max_length=15)),
('accessibility', models.TextField(blank=True, help_text="Please describe any special accessibility requirements that you may have. Edit using <a href='http://warpedvisions.org/projects/markdown-cheat-sheet/' target='_blank'>Markdown</a>.", verbose_name='Accessibility requirements')),
('accessibility_html', models.TextField(blank=True)),
('travel_assistance', models.BooleanField(default=False, help_text='Check this box if you require assistance to travel to Hobart to present your proposed sessions.', verbose_name='Travel assistance required')),
('accommodation_assistance', models.BooleanField(default=False, help_text='Check this box if you require us to provide you with student-style accommodation in order to present your proposed sessions.', verbose_name='Accommodation assistance required')),
('agreement', models.BooleanField(default=False, help_text='I agree to the terms and conditions of attendance, and I have read, understood, and agree to act according to the standards set forth in our Code of Conduct ')),
('annotation', models.TextField(verbose_name='Annotation')),
('invite_email', models.CharField(verbose_name='Invite_email', unique=True, db_index=True, max_length=200, null=True)),
('invite_token', models.CharField(verbose_name='Invite token', db_index=True, max_length=40)),
('created', models.DateTimeField(editable=False, verbose_name='Created', default=datetime.datetime.now)),
('user', models.OneToOneField(null=True, related_name='speaker_profile', verbose_name='User', to=settings.AUTH_USER_MODEL)),
('invite_email', models.CharField(db_index=True, max_length=200, null=True, unique=True, verbose_name='Invite_email')),
('invite_token', models.CharField(db_index=True, max_length=40, verbose_name='Invite token')),
('created', models.DateTimeField(default=datetime.datetime.now, editable=False, verbose_name='Created')),
('user', models.OneToOneField(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='speaker_profile', to=settings.AUTH_USER_MODEL, verbose_name='User')),
],
options={
'ordering': ['name'],
'verbose_name': 'Speaker',
'verbose_name_plural': 'Speakers',
'ordering': ['name'],
},
),
]

View file

@ -1,20 +0,0 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.4 on 2016-03-15 03:16
from __future__ import unicode_literals
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('symposion_speakers', '0001_initial'),
]
operations = [
migrations.AddField(
model_name='speaker',
name='twitter_username',
field=models.CharField(blank=True, help_text='Your Twitter account', max_length=15),
),
]

View file

@ -1,13 +1,17 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.7 on 2016-09-17 03:35
from __future__ import unicode_literals
from django.db import models, migrations
from django.conf import settings
import datetime
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),
('symposion_conference', '0001_initial'),
@ -17,99 +21,99 @@ class Migration(migrations.Migration):
migrations.CreateModel(
name='Benefit',
fields=[
('id', models.AutoField(serialize=False, auto_created=True, primary_key=True, verbose_name='ID')),
('name', models.CharField(verbose_name='Name', max_length=100)),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=100, verbose_name='Name')),
('description', models.TextField(blank=True, verbose_name='Description')),
('type', models.CharField(default='simple', choices=[('text', 'Text'), ('file', 'File'), ('richtext', 'Rich Text'), ('weblogo', 'Web Logo'), ('simple', 'Simple'), ('option', 'Option')], verbose_name='Type', max_length=10)),
('content_type', models.CharField(default='simple', choices=[('simple', 'Simple'), ('listing_text_af', 'Listing Text (Afrikaans)'), ('listing_text_ar', 'Listing Text (Arabic)'), ('listing_text_ast', 'Listing Text (Asturian)'), ('listing_text_az', 'Listing Text (Azerbaijani)'), ('listing_text_bg', 'Listing Text (Bulgarian)'), ('listing_text_be', 'Listing Text (Belarusian)'), ('listing_text_bn', 'Listing Text (Bengali)'), ('listing_text_br', 'Listing Text (Breton)'), ('listing_text_bs', 'Listing Text (Bosnian)'), ('listing_text_ca', 'Listing Text (Catalan)'), ('listing_text_cs', 'Listing Text (Czech)'), ('listing_text_cy', 'Listing Text (Welsh)'), ('listing_text_da', 'Listing Text (Danish)'), ('listing_text_de', 'Listing Text (German)'), ('listing_text_el', 'Listing Text (Greek)'), ('listing_text_en', 'Listing Text (English)'), ('listing_text_en-au', 'Listing Text (Australian English)'), ('listing_text_en-gb', 'Listing Text (British English)'), ('listing_text_eo', 'Listing Text (Esperanto)'), ('listing_text_es', 'Listing Text (Spanish)'), ('listing_text_es-ar', 'Listing Text (Argentinian Spanish)'), ('listing_text_es-mx', 'Listing Text (Mexican Spanish)'), ('listing_text_es-ni', 'Listing Text (Nicaraguan Spanish)'), ('listing_text_es-ve', 'Listing Text (Venezuelan Spanish)'), ('listing_text_et', 'Listing Text (Estonian)'), ('listing_text_eu', 'Listing Text (Basque)'), ('listing_text_fa', 'Listing Text (Persian)'), ('listing_text_fi', 'Listing Text (Finnish)'), ('listing_text_fr', 'Listing Text (French)'), ('listing_text_fy', 'Listing Text (Frisian)'), ('listing_text_ga', 'Listing Text (Irish)'), ('listing_text_gl', 'Listing Text (Galician)'), ('listing_text_he', 'Listing Text (Hebrew)'), ('listing_text_hi', 'Listing Text (Hindi)'), ('listing_text_hr', 'Listing Text (Croatian)'), ('listing_text_hu', 'Listing Text (Hungarian)'), ('listing_text_ia', 'Listing Text (Interlingua)'), ('listing_text_id', 'Listing Text (Indonesian)'), ('listing_text_io', 'Listing Text (Ido)'), ('listing_text_is', 'Listing Text (Icelandic)'), ('listing_text_it', 'Listing Text (Italian)'), ('listing_text_ja', 'Listing Text (Japanese)'), ('listing_text_ka', 'Listing Text (Georgian)'), ('listing_text_kk', 'Listing Text (Kazakh)'), ('listing_text_km', 'Listing Text (Khmer)'), ('listing_text_kn', 'Listing Text (Kannada)'), ('listing_text_ko', 'Listing Text (Korean)'), ('listing_text_lb', 'Listing Text (Luxembourgish)'), ('listing_text_lt', 'Listing Text (Lithuanian)'), ('listing_text_lv', 'Listing Text (Latvian)'), ('listing_text_mk', 'Listing Text (Macedonian)'), ('listing_text_ml', 'Listing Text (Malayalam)'), ('listing_text_mn', 'Listing Text (Mongolian)'), ('listing_text_mr', 'Listing Text (Marathi)'), ('listing_text_my', 'Listing Text (Burmese)'), ('listing_text_nb', 'Listing Text (Norwegian Bokmal)'), ('listing_text_ne', 'Listing Text (Nepali)'), ('listing_text_nl', 'Listing Text (Dutch)'), ('listing_text_nn', 'Listing Text (Norwegian Nynorsk)'), ('listing_text_os', 'Listing Text (Ossetic)'), ('listing_text_pa', 'Listing Text (Punjabi)'), ('listing_text_pl', 'Listing Text (Polish)'), ('listing_text_pt', 'Listing Text (Portuguese)'), ('listing_text_pt-br', 'Listing Text (Brazilian Portuguese)'), ('listing_text_ro', 'Listing Text (Romanian)'), ('listing_text_ru', 'Listing Text (Russian)'), ('listing_text_sk', 'Listing Text (Slovak)'), ('listing_text_sl', 'Listing Text (Slovenian)'), ('listing_text_sq', 'Listing Text (Albanian)'), ('listing_text_sr', 'Listing Text (Serbian)'), ('listing_text_sr-latn', 'Listing Text (Serbian Latin)'), ('listing_text_sv', 'Listing Text (Swedish)'), ('listing_text_sw', 'Listing Text (Swahili)'), ('listing_text_ta', 'Listing Text (Tamil)'), ('listing_text_te', 'Listing Text (Telugu)'), ('listing_text_th', 'Listing Text (Thai)'), ('listing_text_tr', 'Listing Text (Turkish)'), ('listing_text_tt', 'Listing Text (Tatar)'), ('listing_text_udm', 'Listing Text (Udmurt)'), ('listing_text_uk', 'Listing Text (Ukrainian)'), ('listing_text_ur', 'Listing Text (Urdu)'), ('listing_text_vi', 'Listing Text (Vietnamese)'), ('listing_text_zh-cn', 'Listing Text (Simplified Chinese)'), ('listing_text_zh-hans', 'Listing Text (Simplified Chinese)'), ('listing_text_zh-hant', 'Listing Text (Traditional Chinese)'), ('listing_text_zh-tw', 'Listing Text (Traditional Chinese)')], verbose_name='content type', max_length=20)),
('type', models.CharField(choices=[('text', 'Text'), ('file', 'File'), ('richtext', 'Rich Text'), ('weblogo', 'Web Logo'), ('simple', 'Simple'), ('option', 'Option')], default='simple', max_length=10, verbose_name='Type')),
('content_type', models.CharField(choices=[('simple', 'Simple'), ('listing_text_af', 'Listing Text (Afrikaans)'), ('listing_text_ar', 'Listing Text (Arabic)'), ('listing_text_ast', 'Listing Text (Asturian)'), ('listing_text_az', 'Listing Text (Azerbaijani)'), ('listing_text_bg', 'Listing Text (Bulgarian)'), ('listing_text_be', 'Listing Text (Belarusian)'), ('listing_text_bn', 'Listing Text (Bengali)'), ('listing_text_br', 'Listing Text (Breton)'), ('listing_text_bs', 'Listing Text (Bosnian)'), ('listing_text_ca', 'Listing Text (Catalan)'), ('listing_text_cs', 'Listing Text (Czech)'), ('listing_text_cy', 'Listing Text (Welsh)'), ('listing_text_da', 'Listing Text (Danish)'), ('listing_text_de', 'Listing Text (German)'), ('listing_text_el', 'Listing Text (Greek)'), ('listing_text_en', 'Listing Text (English)'), ('listing_text_en-au', 'Listing Text (Australian English)'), ('listing_text_en-gb', 'Listing Text (British English)'), ('listing_text_eo', 'Listing Text (Esperanto)'), ('listing_text_es', 'Listing Text (Spanish)'), ('listing_text_es-ar', 'Listing Text (Argentinian Spanish)'), ('listing_text_es-co', 'Listing Text (Colombian Spanish)'), ('listing_text_es-mx', 'Listing Text (Mexican Spanish)'), ('listing_text_es-ni', 'Listing Text (Nicaraguan Spanish)'), ('listing_text_es-ve', 'Listing Text (Venezuelan Spanish)'), ('listing_text_et', 'Listing Text (Estonian)'), ('listing_text_eu', 'Listing Text (Basque)'), ('listing_text_fa', 'Listing Text (Persian)'), ('listing_text_fi', 'Listing Text (Finnish)'), ('listing_text_fr', 'Listing Text (French)'), ('listing_text_fy', 'Listing Text (Frisian)'), ('listing_text_ga', 'Listing Text (Irish)'), ('listing_text_gd', 'Listing Text (Scottish Gaelic)'), ('listing_text_gl', 'Listing Text (Galician)'), ('listing_text_he', 'Listing Text (Hebrew)'), ('listing_text_hi', 'Listing Text (Hindi)'), ('listing_text_hr', 'Listing Text (Croatian)'), ('listing_text_hu', 'Listing Text (Hungarian)'), ('listing_text_ia', 'Listing Text (Interlingua)'), ('listing_text_id', 'Listing Text (Indonesian)'), ('listing_text_io', 'Listing Text (Ido)'), ('listing_text_is', 'Listing Text (Icelandic)'), ('listing_text_it', 'Listing Text (Italian)'), ('listing_text_ja', 'Listing Text (Japanese)'), ('listing_text_ka', 'Listing Text (Georgian)'), ('listing_text_kk', 'Listing Text (Kazakh)'), ('listing_text_km', 'Listing Text (Khmer)'), ('listing_text_kn', 'Listing Text (Kannada)'), ('listing_text_ko', 'Listing Text (Korean)'), ('listing_text_lb', 'Listing Text (Luxembourgish)'), ('listing_text_lt', 'Listing Text (Lithuanian)'), ('listing_text_lv', 'Listing Text (Latvian)'), ('listing_text_mk', 'Listing Text (Macedonian)'), ('listing_text_ml', 'Listing Text (Malayalam)'), ('listing_text_mn', 'Listing Text (Mongolian)'), ('listing_text_mr', 'Listing Text (Marathi)'), ('listing_text_my', 'Listing Text (Burmese)'), ('listing_text_nb', 'Listing Text (Norwegian Bokmal)'), ('listing_text_ne', 'Listing Text (Nepali)'), ('listing_text_nl', 'Listing Text (Dutch)'), ('listing_text_nn', 'Listing Text (Norwegian Nynorsk)'), ('listing_text_os', 'Listing Text (Ossetic)'), ('listing_text_pa', 'Listing Text (Punjabi)'), ('listing_text_pl', 'Listing Text (Polish)'), ('listing_text_pt', 'Listing Text (Portuguese)'), ('listing_text_pt-br', 'Listing Text (Brazilian Portuguese)'), ('listing_text_ro', 'Listing Text (Romanian)'), ('listing_text_ru', 'Listing Text (Russian)'), ('listing_text_sk', 'Listing Text (Slovak)'), ('listing_text_sl', 'Listing Text (Slovenian)'), ('listing_text_sq', 'Listing Text (Albanian)'), ('listing_text_sr', 'Listing Text (Serbian)'), ('listing_text_sr-latn', 'Listing Text (Serbian Latin)'), ('listing_text_sv', 'Listing Text (Swedish)'), ('listing_text_sw', 'Listing Text (Swahili)'), ('listing_text_ta', 'Listing Text (Tamil)'), ('listing_text_te', 'Listing Text (Telugu)'), ('listing_text_th', 'Listing Text (Thai)'), ('listing_text_tr', 'Listing Text (Turkish)'), ('listing_text_tt', 'Listing Text (Tatar)'), ('listing_text_udm', 'Listing Text (Udmurt)'), ('listing_text_uk', 'Listing Text (Ukrainian)'), ('listing_text_ur', 'Listing Text (Urdu)'), ('listing_text_vi', 'Listing Text (Vietnamese)'), ('listing_text_zh-hans', 'Listing Text (Simplified Chinese)'), ('listing_text_zh-hant', 'Listing Text (Traditional Chinese)')], default='simple', max_length=20, verbose_name='content type')),
],
),
migrations.CreateModel(
name='BenefitLevel',
fields=[
('id', models.AutoField(serialize=False, auto_created=True, primary_key=True, verbose_name='ID')),
('max_words', models.PositiveIntegerField(blank=True, verbose_name='Max words', null=True)),
('other_limits', models.CharField(blank=True, verbose_name='Other limits', max_length=200)),
('benefit', models.ForeignKey(to='symposion_sponsorship.Benefit', related_name='benefit_levels', verbose_name='Benefit')),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('max_words', models.PositiveIntegerField(blank=True, null=True, verbose_name='Max words')),
('other_limits', models.CharField(blank=True, max_length=200, verbose_name='Other limits')),
('benefit', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='benefit_levels', to='symposion_sponsorship.Benefit', verbose_name='Benefit')),
],
options={
'verbose_name_plural': 'Benefit levels',
'ordering': ['level'],
'verbose_name': 'Benefit level',
'verbose_name_plural': 'Benefit levels',
},
),
migrations.CreateModel(
name='Sponsor',
fields=[
('id', models.AutoField(serialize=False, auto_created=True, primary_key=True, verbose_name='ID')),
('name', models.CharField(verbose_name='Sponsor Name', max_length=100)),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=100, verbose_name='Sponsor Name')),
('display_url', models.URLField(blank=True, verbose_name='display URL')),
('external_url', models.URLField(verbose_name='External URL')),
('annotation', models.TextField(blank=True, verbose_name='Annotation')),
('contact_name', models.CharField(verbose_name='Contact Name', max_length=100)),
('contact_email', models.EmailField(verbose_name='Contact Email', max_length=254)),
('contact_name', models.CharField(max_length=100, verbose_name='Contact Name')),
('contact_email', models.EmailField(max_length=254, verbose_name='Contact Email')),
('added', models.DateTimeField(default=datetime.datetime.now, verbose_name='added')),
('active', models.BooleanField(default=False, verbose_name='active')),
('web_logo_benefit', models.NullBooleanField(verbose_name='Web logo benefit', help_text='Web logo benefit is complete')),
('print_logo_benefit', models.NullBooleanField(verbose_name='Print logo benefit', help_text='Print logo benefit is complete')),
('print_description_benefit', models.NullBooleanField(verbose_name='Print description benefit', help_text='Print description benefit is complete')),
('company_description_benefit', models.NullBooleanField(verbose_name='Company description benefit', help_text='Company description benefit is complete')),
('applicant', models.ForeignKey(to=settings.AUTH_USER_MODEL, null=True, related_name='sponsorships', verbose_name='Applicant')),
('web_logo_benefit', models.NullBooleanField(help_text='Web logo benefit is complete', verbose_name='Web logo benefit')),
('print_logo_benefit', models.NullBooleanField(help_text='Print logo benefit is complete', verbose_name='Print logo benefit')),
('print_description_benefit', models.NullBooleanField(help_text='Print description benefit is complete', verbose_name='Print description benefit')),
('company_description_benefit', models.NullBooleanField(help_text='Company description benefit is complete', verbose_name='Company description benefit')),
('applicant', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='sponsorships', to=settings.AUTH_USER_MODEL, verbose_name='Applicant')),
],
options={
'verbose_name_plural': 'Sponsors',
'ordering': ['name'],
'verbose_name': 'Sponsor',
'verbose_name_plural': 'Sponsors',
},
),
migrations.CreateModel(
name='SponsorBenefit',
fields=[
('id', models.AutoField(serialize=False, auto_created=True, primary_key=True, verbose_name='ID')),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('active', models.BooleanField(default=True, verbose_name='Active')),
('max_words', models.PositiveIntegerField(blank=True, verbose_name='Max words', null=True)),
('other_limits', models.CharField(blank=True, verbose_name='Other limits', max_length=200)),
('max_words', models.PositiveIntegerField(blank=True, null=True, verbose_name='Max words')),
('other_limits', models.CharField(blank=True, max_length=200, verbose_name='Other limits')),
('text', models.TextField(blank=True, verbose_name='Text')),
('upload', models.FileField(blank=True, verbose_name='File', upload_to='sponsor_files')),
('is_complete', models.NullBooleanField(verbose_name='Complete?', help_text='True - benefit complete; False - benefit incomplete; Null - n/a')),
('benefit', models.ForeignKey(to='symposion_sponsorship.Benefit', related_name='sponsor_benefits', verbose_name='Benefit')),
('sponsor', models.ForeignKey(to='symposion_sponsorship.Sponsor', related_name='sponsor_benefits', verbose_name='Sponsor')),
('upload', models.FileField(blank=True, upload_to='sponsor_files', verbose_name='File')),
('is_complete', models.NullBooleanField(help_text='True - benefit complete; False - benefit incomplete; Null - n/a', verbose_name='Complete?')),
('benefit', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='sponsor_benefits', to='symposion_sponsorship.Benefit', verbose_name='Benefit')),
('sponsor', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='sponsor_benefits', to='symposion_sponsorship.Sponsor', verbose_name='Sponsor')),
],
options={
'verbose_name_plural': 'Sponsor benefits',
'ordering': ['-active'],
'verbose_name': 'Sponsor benefit',
'verbose_name_plural': 'Sponsor benefits',
},
),
migrations.CreateModel(
name='SponsorLevel',
fields=[
('id', models.AutoField(serialize=False, auto_created=True, primary_key=True, verbose_name='ID')),
('name', models.CharField(verbose_name='Name', max_length=100)),
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=100, verbose_name='Name')),
('order', models.IntegerField(default=0, verbose_name='Order')),
('cost', models.PositiveIntegerField(verbose_name='Cost')),
('description', models.TextField(blank=True, verbose_name='Description', help_text='This is private.')),
('conference', models.ForeignKey(to='symposion_conference.Conference', verbose_name='Conference')),
('description', models.TextField(blank=True, help_text='This is private.', verbose_name='Description')),
('conference', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='symposion_conference.Conference', verbose_name='Conference')),
],
options={
'verbose_name_plural': 'Sponsor levels',
'ordering': ['conference', 'order'],
'verbose_name': 'Sponsor level',
'verbose_name_plural': 'Sponsor levels',
},
),
migrations.AddField(
model_name='sponsor',
name='level',
field=models.ForeignKey(to='symposion_sponsorship.SponsorLevel', verbose_name='level'),
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='symposion_sponsorship.SponsorLevel', verbose_name='level'),
),
migrations.AddField(
model_name='sponsor',
name='sponsor_logo',
field=models.ForeignKey(blank=True, to='symposion_sponsorship.SponsorBenefit', null=True, related_name='+', verbose_name='Sponsor logo', editable=False),
field=models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='symposion_sponsorship.SponsorBenefit', verbose_name='Sponsor logo'),
),
migrations.AddField(
model_name='benefitlevel',
name='level',
field=models.ForeignKey(to='symposion_sponsorship.SponsorLevel', related_name='benefit_levels', verbose_name='Level'),
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='benefit_levels', to='symposion_sponsorship.SponsorLevel', verbose_name='Level'),
),
]