source: asadb/forms/migrations/0013_add_cycle_deadlines.py

space-accessstablestage
Last change on this file was 6fa456d, checked in by Alex Dehnert <adehnert@…>, 13 years ago

forms:0013: note that MySQL ignores the default...

Fortunately, we don't really care...

  • Property mode set to 100644
File size: 12.5 KB
Line 
1# encoding: utf-8
2import datetime
3from south.db import db
4from south.v2 import SchemaMigration
5from django.db import models
6
7class Migration(SchemaMigration):
8
9    def forwards(self, orm):
10       
11        # Adding field 'GroupConfirmationCycle.deadlines'
12
13        # In reality, MySQL doesn't appear to support default values for TEXT
14        # columns, so this doesn't actually matter. Fortunately, we don't
15        # actually care about the form for old cycles contain the correct form.
16        # We leave in the default text (from Fall 2011) anyway, because why
17        # not...
18
19        initial_deadline = "This form is due by Friday October 7th at 11:59PM. This is very important for confirming that your group is active, so groups that don't submit this form by that date will be fined $50. Groups that still haven't submitted this by Friday October 21st will be fined an additional $50 and will be suspended. Finally, groups that haven't submitted this by November 4th will be derecognized."
20        db.add_column('forms_groupconfirmationcycle', 'deadlines', self.gf('django.db.models.fields.TextField')(default=initial_deadline, blank=True), keep_default=False)
21
22
23    def backwards(self, orm):
24       
25        # Deleting field 'GroupConfirmationCycle.deadlines'
26        db.delete_column('forms_groupconfirmationcycle', 'deadlines')
27
28
29    models = {
30        'forms.fysm': {
31            'Meta': {'object_name': 'FYSM'},
32            'categories': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['forms.FYSMCategory']", 'symmetrical': 'False', 'blank': 'True'}),
33            'contact_email': ('django.db.models.fields.EmailField', [], {'max_length': '75'}),
34            'description': ('django.db.models.fields.TextField', [], {}),
35            'display_name': ('django.db.models.fields.CharField', [], {'max_length': '50'}),
36            'group': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['groups.Group']"}),
37            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
38            'join_preview': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forms.PagePreview']", 'null': 'True'}),
39            'join_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}),
40            'logo': ('django.db.models.fields.files.ImageField', [], {'max_length': '100', 'blank': 'True'}),
41            'slide': ('django.db.models.fields.files.ImageField', [], {'default': "''", 'max_length': '100'}),
42            'tags': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}),
43            'website': ('django.db.models.fields.URLField', [], {'max_length': '200'}),
44            'year': ('django.db.models.fields.IntegerField', [], {'db_index': 'True'})
45        },
46        'forms.fysmcategory': {
47            'Meta': {'ordering': "['name']", 'object_name': 'FYSMCategory'},
48            'blurb': ('django.db.models.fields.TextField', [], {}),
49            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
50            'name': ('django.db.models.fields.CharField', [], {'max_length': '25'}),
51            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '50', 'db_index': 'True'})
52        },
53        'forms.fysmview': {
54            'Meta': {'object_name': 'FYSMView'},
55            'fysm': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forms.FYSM']", 'null': 'True', 'blank': 'True'}),
56            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
57            'page': ('django.db.models.fields.CharField', [], {'max_length': '20', 'blank': 'True'}),
58            'referer': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True'}),
59            'source_ip': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}),
60            'source_user': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
61            'user_agent': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
62            'when': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
63            'year': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'})
64        },
65        'forms.groupconfirmationcycle': {
66            'Meta': {'object_name': 'GroupConfirmationCycle'},
67            'create_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
68            'deadlines': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
69            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
70            'name': ('django.db.models.fields.CharField', [], {'max_length': '30'}),
71            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '50', 'db_index': 'True'})
72        },
73        'forms.groupmembershipupdate': {
74            'Meta': {'object_name': 'GroupMembershipUpdate'},
75            'cycle': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forms.GroupConfirmationCycle']"}),
76            'email_preface': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
77            'group': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['groups.Group']"}),
78            'group_email': ('django.db.models.fields.EmailField', [], {'max_length': '75'}),
79            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
80            'membership_definition': ('django.db.models.fields.TextField', [], {}),
81            'membership_list': ('django.db.models.fields.TextField', [], {}),
82            'no_discrimination': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
83            'no_hazing': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
84            'num_alum': ('django.db.models.fields.IntegerField', [], {}),
85            'num_grads': ('django.db.models.fields.IntegerField', [], {}),
86            'num_other': ('django.db.models.fields.IntegerField', [], {}),
87            'num_other_affiliate': ('django.db.models.fields.IntegerField', [], {}),
88            'num_undergrads': ('django.db.models.fields.IntegerField', [], {}),
89            'officer_email': ('django.db.models.fields.EmailField', [], {'max_length': '75'}),
90            'update_time': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(1970, 1, 1, 0, 0)'}),
91            'updater_name': ('django.db.models.fields.CharField', [], {'max_length': '30'}),
92            'updater_title': ('django.db.models.fields.CharField', [], {'max_length': '30'})
93        },
94        'forms.pagepreview': {
95            'Meta': {'object_name': 'PagePreview'},
96            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
97            'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '100', 'blank': 'True'}),
98            'update_time': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(1970, 1, 1, 0, 0)'}),
99            'url': ('django.db.models.fields.URLField', [], {'max_length': '200'})
100        },
101        'forms.personmembershipupdate': {
102            'Meta': {'object_name': 'PersonMembershipUpdate'},
103            'cycle': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['forms.GroupConfirmationCycle']"}),
104            'deleted': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True', 'blank': 'True'}),
105            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['groups.Group']", 'symmetrical': 'False'}),
106            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
107            'update_time': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime(1970, 1, 1, 0, 0)'}),
108            'username': ('django.db.models.fields.CharField', [], {'max_length': '30'}),
109            'valid': ('django.db.models.fields.IntegerField', [], {'default': '0'})
110        },
111        'groups.activitycategory': {
112            'Meta': {'object_name': 'ActivityCategory'},
113            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
114            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
115        },
116        'groups.group': {
117            'Meta': {'ordering': "('name',)", 'object_name': 'Group'},
118            'abbreviation': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '10', 'blank': 'True'}),
119            'activity_category': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['groups.ActivityCategory']", 'null': 'True', 'blank': 'True'}),
120            'advisor_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}),
121            'athena_locker': ('django.db.models.fields.CharField', [], {'max_length': '20', 'blank': 'True'}),
122            'constitution_url': ('django.db.models.fields.CharField', [], {'max_length': '200', 'blank': 'True'}),
123            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
124            'funding_account_id': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
125            'group_class': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['groups.GroupClass']"}),
126            'group_email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
127            'group_funding': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['groups.GroupFunding']", 'null': 'True', 'blank': 'True'}),
128            'group_status': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['groups.GroupStatus']"}),
129            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
130            'main_account_id': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
131            'meeting_times': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
132            'name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'db_index': 'True'}),
133            'num_community': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
134            'num_grads': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
135            'num_other': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
136            'num_undergrads': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
137            'officer_email': ('django.db.models.fields.EmailField', [], {'max_length': '75'}),
138            'recognition_date': ('django.db.models.fields.DateTimeField', [], {}),
139            'update_date': ('django.db.models.fields.DateTimeField', [], {}),
140            'updater': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True'}),
141            'website_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'})
142        },
143        'groups.groupclass': {
144            'Meta': {'object_name': 'GroupClass'},
145            'description': ('django.db.models.fields.TextField', [], {}),
146            'gets_publicity': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
147            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
148            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}),
149            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '50', 'db_index': 'True'})
150        },
151        'groups.groupfunding': {
152            'Meta': {'object_name': 'GroupFunding'},
153            'contact_email': ('django.db.models.fields.EmailField', [], {'max_length': '75'}),
154            'funding_list': ('django.db.models.fields.CharField', [], {'max_length': '32', 'blank': 'True'}),
155            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
156            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}),
157            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '50', 'db_index': 'True'})
158        },
159        'groups.groupstatus': {
160            'Meta': {'object_name': 'GroupStatus'},
161            'description': ('django.db.models.fields.TextField', [], {}),
162            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
163            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
164            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}),
165            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '50', 'db_index': 'True'})
166        }
167    }
168
169    complete_apps = ['forms']
Note: See TracBrowser for help on using the repository browser.