Merge lp:~mhall119/summit/new-meeting-stuff into lp:~cjohnston/summit/new-meeting-stuff

Proposed by Michael Hall
Status: Needs review
Proposed branch: lp:~mhall119/summit/new-meeting-stuff
Merge into: lp:~cjohnston/summit/new-meeting-stuff
Diff against target: 432 lines (+208/-204)
3 files modified
summit/schedule/migrations/0017_add_review_status.py (+0/-204)
summit/schedule/migrations/0018_add_review_status.py (+205/-0)
summit/schedule/models/meetingmodel.py (+3/-0)
To merge this branch: bzr merge lp:~mhall119/summit/new-meeting-stuff
Reviewer Review Type Date Requested Status
Chris Johnston Pending
Review via email: mp+98116@code.launchpad.net

Description of the change

Update migration to new sequence number.
Default Launchpad imported meetings to APPROVED

To post a comment you must log in.

Unmerged revisions

306. By Michael Hall

Re-create migration for proper order, set launchpad-imported meetings to Approved by default

305. By Chris Johnston

Updates

304. By Chris Johnston

Starting on side bar stuffs

303. By Chris Johnston

Adds sidenav theme stuff

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== removed file 'summit/schedule/migrations/0017_add_review_status.py'
2--- summit/schedule/migrations/0017_add_review_status.py 2012-03-02 03:33:15 +0000
3+++ summit/schedule/migrations/0017_add_review_status.py 1970-01-01 00:00:00 +0000
4@@ -1,204 +0,0 @@
5-# encoding: utf-8
6-import datetime
7-from south.db import db
8-from south.v2 import SchemaMigration
9-from django.db import models
10-
11-class Migration(SchemaMigration):
12-
13- def forwards(self, orm):
14-
15- # Adding field 'Meeting.approved'
16- db.add_column('schedule_meeting', 'approved', self.gf('django.db.models.fields.CharField')(default='PENDING', max_length=10, null=True), keep_default=False)
17-
18-
19- def backwards(self, orm):
20-
21- # Deleting field 'Meeting.approved'
22- db.delete_column('schedule_meeting', 'approved')
23-
24-
25- models = {
26- 'auth.group': {
27- 'Meta': {'object_name': 'Group'},
28- 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
29- 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
30- 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
31- },
32- 'auth.permission': {
33- 'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'},
34- 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
35- 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
36- 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
37- 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
38- },
39- 'auth.user': {
40- 'Meta': {'ordering': "['username']", 'object_name': 'User'},
41- 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
42- 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
43- 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
44- 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
45- 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
46- 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
47- 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
48- 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
49- 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
50- 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
51- 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
52- 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
53- 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
54- },
55- 'contenttypes.contenttype': {
56- 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
57- 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
58- 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
59- 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
60- 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
61- },
62- 'schedule.agenda': {
63- 'Meta': {'ordering': "('slot', 'room')", 'unique_together': "(('slot', 'room'),)", 'object_name': 'Agenda'},
64- 'auto': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
65- 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
66- 'meeting': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Meeting']"}),
67- 'room': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Room']"}),
68- 'slot': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Slot']"})
69- },
70- 'schedule.attendee': {
71- 'Meta': {'ordering': "('user__username', 'summit')", 'object_name': 'Attendee'},
72- 'crew': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_column': "'crew'"}),
73- 'end_utc': ('django.db.models.fields.DateTimeField', [], {'db_column': "'end'"}),
74- 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
75- 'secret_key_id': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True', 'blank': 'True'}),
76- 'start_utc': ('django.db.models.fields.DateTimeField', [], {'db_column': "'start'"}),
77- 'summit': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Summit']"}),
78- 'topics': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['schedule.Topic']", 'symmetrical': 'False', 'blank': 'True'}),
79- 'tracks': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['schedule.Track']", 'symmetrical': 'False', 'blank': 'True'}),
80- 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']"})
81- },
82- 'schedule.attendeebusy': {
83- 'Meta': {'ordering': "('attendee', 'start_utc', 'end_utc')", 'object_name': 'AttendeeBusy'},
84- 'attendee': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'busy_set'", 'to': "orm['schedule.Attendee']"}),
85- 'end_utc': ('django.db.models.fields.DateTimeField', [], {'db_column': "'end'"}),
86- 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
87- 'start_utc': ('django.db.models.fields.DateTimeField', [], {'db_column': "'start'"})
88- },
89- 'schedule.crew': {
90- 'Meta': {'ordering': "('date_utc', 'attendee')", 'object_name': 'Crew'},
91- 'attendee': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'crew_schedule'", 'to': "orm['schedule.Attendee']"}),
92- 'date_utc': ('django.db.models.fields.DateField', [], {'db_column': "'date'"}),
93- 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'})
94- },
95- 'schedule.lead': {
96- 'Meta': {'ordering': "('summit', 'track')", 'object_name': 'Lead'},
97- 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
98- 'lead': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'lead'", 'to': "orm['schedule.Attendee']"}),
99- 'summit': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Summit']"}),
100- 'track': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Track']"})
101- },
102- 'schedule.meeting': {
103- 'Meta': {'object_name': 'Meeting'},
104- 'approved': ('django.db.models.fields.CharField', [], {'default': "'PENDING'", 'max_length': '10', 'null': 'True'}),
105- 'approver': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'approver_set'", 'null': 'True', 'to': "orm['schedule.Attendee']"}),
106- 'assignee': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'assignee_set'", 'null': 'True', 'to': "orm['schedule.Attendee']"}),
107- 'description': ('django.db.models.fields.TextField', [], {'max_length': '2047', 'blank': 'True'}),
108- 'drafter': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'drafter_set'", 'null': 'True', 'to': "orm['schedule.Attendee']"}),
109- 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
110- 'name': ('summit.schedule.fields.NameField', [], {'max_length': '100'}),
111- 'pad_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
112- 'participants': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['schedule.Attendee']", 'symmetrical': 'False', 'through': "orm['schedule.Participant']", 'blank': 'True'}),
113- 'priority': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
114- 'private': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
115- 'private_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True', 'blank': 'True'}),
116- 'requires_dial_in': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
117- 'scribe': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'scribe_set'", 'null': 'True', 'to': "orm['schedule.Attendee']"}),
118- 'slots': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
119- 'spec_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
120- 'status': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}),
121- 'summit': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Summit']"}),
122- 'title': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
123- 'topics': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['schedule.Topic']", 'symmetrical': 'False', 'blank': 'True'}),
124- 'tracks': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['schedule.Track']", 'symmetrical': 'False', 'blank': 'True'}),
125- 'type': ('django.db.models.fields.CharField', [], {'default': "u'blueprint'", 'max_length': '15'}),
126- 'video': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
127- 'wiki_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'})
128- },
129- 'schedule.participant': {
130- 'Meta': {'ordering': "('meeting', 'attendee', 'required')", 'object_name': 'Participant'},
131- 'attendee': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Attendee']"}),
132- 'from_launchpad': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
133- 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
134- 'meeting': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Meeting']"}),
135- 'required': ('django.db.models.fields.BooleanField', [], {'default': 'False'})
136- },
137- 'schedule.room': {
138- 'Meta': {'ordering': "('summit', 'name')", 'object_name': 'Room'},
139- 'end_utc': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'db_column': "'end'", 'blank': 'True'}),
140- 'has_dial_in': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
141- 'icecast_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
142- 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
143- 'name': ('summit.schedule.fields.NameField', [], {'max_length': '50'}),
144- 'size': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
145- 'start_utc': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'db_column': "'start'", 'blank': 'True'}),
146- 'summit': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Summit']"}),
147- 'title': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
148- 'tracks': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['schedule.Track']", 'symmetrical': 'False', 'blank': 'True'}),
149- 'type': ('django.db.models.fields.CharField', [], {'default': "u'open'", 'max_length': '7'})
150- },
151- 'schedule.roombusy': {
152- 'Meta': {'ordering': "('room', 'start_utc', 'end_utc')", 'object_name': 'RoomBusy'},
153- 'end_utc': ('django.db.models.fields.DateTimeField', [], {'db_column': "'end'"}),
154- 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
155- 'room': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'busy_set'", 'to': "orm['schedule.Room']"}),
156- 'start_utc': ('django.db.models.fields.DateTimeField', [], {'db_column': "'start'"})
157- },
158- 'schedule.slot': {
159- 'Meta': {'ordering': "('summit', 'start_utc', 'end_utc')", 'object_name': 'Slot'},
160- 'end_utc': ('django.db.models.fields.DateTimeField', [], {'db_column': "'end'"}),
161- 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
162- 'start_utc': ('django.db.models.fields.DateTimeField', [], {'db_column': "'start'"}),
163- 'summit': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Summit']"}),
164- 'type': ('django.db.models.fields.CharField', [], {'default': "u'open'", 'max_length': '7'})
165- },
166- 'schedule.summit': {
167- 'Meta': {'ordering': "('name',)", 'object_name': 'Summit'},
168- 'date_end': ('django.db.models.fields.DateField', [], {'null': 'True'}),
169- 'date_start': ('django.db.models.fields.DateField', [], {'null': 'True'}),
170- 'description': ('django.db.models.fields.TextField', [], {'max_length': '2047', 'blank': 'True'}),
171- 'etherpad': ('django.db.models.fields.URLField', [], {'default': "'http://pad.ubuntu.com/'", 'max_length': '75'}),
172- 'hashtag': ('django.db.models.fields.CharField', [], {'max_length': '25', 'blank': 'True'}),
173- 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
174- 'last_update': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
175- 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}),
176- 'managers': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'managers'", 'blank': 'True', 'to': "orm['auth.User']"}),
177- 'name': ('summit.schedule.fields.NameField', [], {'max_length': '50'}),
178- 'qr': ('django.db.models.fields.URLField', [], {'default': "''", 'max_length': '100', 'blank': 'True'}),
179- 'schedulers': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'schedulers'", 'blank': 'True', 'to': "orm['auth.User']"}),
180- 'state': ('django.db.models.fields.CharField', [], {'default': "u'sponsor'", 'max_length': '10'}),
181- 'timezone': ('django.db.models.fields.CharField', [], {'max_length': '50'}),
182- 'title': ('django.db.models.fields.CharField', [], {'max_length': '100'})
183- },
184- 'schedule.summitsprint': {
185- 'Meta': {'ordering': "('summit', 'import_url')", 'object_name': 'SummitSprint'},
186- 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
187- 'import_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}),
188- 'summit': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'sprint_set'", 'to': "orm['schedule.Summit']"})
189- },
190- 'schedule.topic': {
191- 'Meta': {'ordering': "('summit', 'title')", 'object_name': 'Topic'},
192- 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
193- 'summit': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Summit']"}),
194- 'title': ('django.db.models.fields.CharField', [], {'max_length': '100'})
195- },
196- 'schedule.track': {
197- 'Meta': {'ordering': "('summit', 'title', 'slug')", 'object_name': 'Track'},
198- 'allow_adjacent_sessions': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
199- 'color': ('django.db.models.fields.CharField', [], {'default': "'FFFFFF'", 'max_length': '6'}),
200- 'description': ('django.db.models.fields.TextField', [], {'max_length': '1000', 'null': 'True'}),
201- 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
202- 'slug': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True'}),
203- 'summit': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Summit']"}),
204- 'title': ('django.db.models.fields.CharField', [], {'max_length': '100'})
205- }
206- }
207-
208- complete_apps = ['schedule']
209
210=== added file 'summit/schedule/migrations/0018_add_review_status.py'
211--- summit/schedule/migrations/0018_add_review_status.py 1970-01-01 00:00:00 +0000
212+++ summit/schedule/migrations/0018_add_review_status.py 2012-03-18 23:11:18 +0000
213@@ -0,0 +1,205 @@
214+# encoding: utf-8
215+import datetime
216+from south.db import db
217+from south.v2 import SchemaMigration
218+from django.db import models
219+
220+class Migration(SchemaMigration):
221+
222+ def forwards(self, orm):
223+
224+ # Adding field 'Meeting.approved'
225+ db.add_column('schedule_meeting', 'approved', self.gf('django.db.models.fields.CharField')(default='PENDING', max_length=10, null=True), keep_default=False)
226+
227+
228+ def backwards(self, orm):
229+
230+ # Deleting field 'Meeting.approved'
231+ db.delete_column('schedule_meeting', 'approved')
232+
233+
234+ models = {
235+ 'auth.group': {
236+ 'Meta': {'object_name': 'Group'},
237+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
238+ 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
239+ 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
240+ },
241+ 'auth.permission': {
242+ 'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'},
243+ 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
244+ 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
245+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
246+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
247+ },
248+ 'auth.user': {
249+ 'Meta': {'ordering': "['username']", 'object_name': 'User'},
250+ 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
251+ 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
252+ 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
253+ 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
254+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
255+ 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
256+ 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
257+ 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
258+ 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
259+ 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
260+ 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
261+ 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
262+ 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
263+ },
264+ 'contenttypes.contenttype': {
265+ 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
266+ 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
267+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
268+ 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
269+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
270+ },
271+ 'schedule.agenda': {
272+ 'Meta': {'ordering': "('slot', 'room')", 'unique_together': "(('slot', 'room'),)", 'object_name': 'Agenda'},
273+ 'auto': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
274+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
275+ 'meeting': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Meeting']"}),
276+ 'room': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Room']"}),
277+ 'slot': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Slot']"})
278+ },
279+ 'schedule.attendee': {
280+ 'Meta': {'ordering': "('user__username', 'summit')", 'object_name': 'Attendee'},
281+ 'crew': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_column': "'crew'"}),
282+ 'end_utc': ('django.db.models.fields.DateTimeField', [], {'db_column': "'end'"}),
283+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
284+ 'secret_key_id': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True', 'blank': 'True'}),
285+ 'start_utc': ('django.db.models.fields.DateTimeField', [], {'db_column': "'start'"}),
286+ 'summit': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Summit']"}),
287+ 'topics': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['schedule.Topic']", 'symmetrical': 'False', 'blank': 'True'}),
288+ 'tracks': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['schedule.Track']", 'symmetrical': 'False', 'blank': 'True'}),
289+ 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']"})
290+ },
291+ 'schedule.attendeebusy': {
292+ 'Meta': {'ordering': "('attendee', 'start_utc', 'end_utc')", 'object_name': 'AttendeeBusy'},
293+ 'attendee': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'busy_set'", 'to': "orm['schedule.Attendee']"}),
294+ 'end_utc': ('django.db.models.fields.DateTimeField', [], {'db_column': "'end'"}),
295+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
296+ 'start_utc': ('django.db.models.fields.DateTimeField', [], {'db_column': "'start'"})
297+ },
298+ 'schedule.crew': {
299+ 'Meta': {'ordering': "('date_utc', 'attendee')", 'object_name': 'Crew'},
300+ 'attendee': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'crew_schedule'", 'to': "orm['schedule.Attendee']"}),
301+ 'date_utc': ('django.db.models.fields.DateField', [], {'db_column': "'date'"}),
302+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'})
303+ },
304+ 'schedule.lead': {
305+ 'Meta': {'ordering': "('summit', 'track')", 'object_name': 'Lead'},
306+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
307+ 'lead': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'lead'", 'to': "orm['schedule.Attendee']"}),
308+ 'summit': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Summit']"}),
309+ 'track': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Track']"})
310+ },
311+ 'schedule.meeting': {
312+ 'Meta': {'object_name': 'Meeting'},
313+ 'approved': ('django.db.models.fields.CharField', [], {'default': "'PENDING'", 'max_length': '10', 'null': 'True'}),
314+ 'approver': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'approver_set'", 'null': 'True', 'to': "orm['schedule.Attendee']"}),
315+ 'assignee': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'assignee_set'", 'null': 'True', 'to': "orm['schedule.Attendee']"}),
316+ 'description': ('django.db.models.fields.TextField', [], {'max_length': '2047', 'blank': 'True'}),
317+ 'drafter': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'drafter_set'", 'null': 'True', 'to': "orm['schedule.Attendee']"}),
318+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
319+ 'name': ('summit.schedule.fields.NameField', [], {'max_length': '100'}),
320+ 'pad_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
321+ 'participants': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['schedule.Attendee']", 'symmetrical': 'False', 'through': "orm['schedule.Participant']", 'blank': 'True'}),
322+ 'priority': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
323+ 'private': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
324+ 'private_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True', 'blank': 'True'}),
325+ 'requires_dial_in': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
326+ 'scribe': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'scribe_set'", 'null': 'True', 'to': "orm['schedule.Attendee']"}),
327+ 'slots': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
328+ 'spec_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
329+ 'status': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}),
330+ 'summit': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Summit']"}),
331+ 'title': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
332+ 'topics': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['schedule.Topic']", 'symmetrical': 'False', 'blank': 'True'}),
333+ 'tracks': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['schedule.Track']", 'symmetrical': 'False', 'blank': 'True'}),
334+ 'type': ('django.db.models.fields.CharField', [], {'default': "u'blueprint'", 'max_length': '15'}),
335+ 'video': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
336+ 'wiki_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'})
337+ },
338+ 'schedule.participant': {
339+ 'Meta': {'ordering': "('meeting', 'attendee', 'required')", 'object_name': 'Participant'},
340+ 'attendee': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Attendee']"}),
341+ 'from_launchpad': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
342+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
343+ 'meeting': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Meeting']"}),
344+ 'required': ('django.db.models.fields.BooleanField', [], {'default': 'False'})
345+ },
346+ 'schedule.room': {
347+ 'Meta': {'ordering': "('summit', 'name')", 'object_name': 'Room'},
348+ 'end_utc': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'db_column': "'end'", 'blank': 'True'}),
349+ 'has_dial_in': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
350+ 'icecast_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
351+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
352+ 'irc_channel': ('django.db.models.fields.CharField', [], {'max_length': '50', 'blank': 'True'}),
353+ 'name': ('summit.schedule.fields.NameField', [], {'max_length': '50'}),
354+ 'size': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
355+ 'start_utc': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'db_column': "'start'", 'blank': 'True'}),
356+ 'summit': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Summit']"}),
357+ 'title': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
358+ 'tracks': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['schedule.Track']", 'symmetrical': 'False', 'blank': 'True'}),
359+ 'type': ('django.db.models.fields.CharField', [], {'default': "u'open'", 'max_length': '7'})
360+ },
361+ 'schedule.roombusy': {
362+ 'Meta': {'ordering': "('room', 'start_utc', 'end_utc')", 'object_name': 'RoomBusy'},
363+ 'end_utc': ('django.db.models.fields.DateTimeField', [], {'db_column': "'end'"}),
364+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
365+ 'room': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'busy_set'", 'to': "orm['schedule.Room']"}),
366+ 'start_utc': ('django.db.models.fields.DateTimeField', [], {'db_column': "'start'"})
367+ },
368+ 'schedule.slot': {
369+ 'Meta': {'ordering': "('summit', 'start_utc', 'end_utc')", 'object_name': 'Slot'},
370+ 'end_utc': ('django.db.models.fields.DateTimeField', [], {'db_column': "'end'"}),
371+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
372+ 'start_utc': ('django.db.models.fields.DateTimeField', [], {'db_column': "'start'"}),
373+ 'summit': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Summit']"}),
374+ 'type': ('django.db.models.fields.CharField', [], {'default': "u'open'", 'max_length': '7'})
375+ },
376+ 'schedule.summit': {
377+ 'Meta': {'ordering': "('name',)", 'object_name': 'Summit'},
378+ 'date_end': ('django.db.models.fields.DateField', [], {'null': 'True'}),
379+ 'date_start': ('django.db.models.fields.DateField', [], {'null': 'True'}),
380+ 'description': ('django.db.models.fields.TextField', [], {'max_length': '2047', 'blank': 'True'}),
381+ 'etherpad': ('django.db.models.fields.URLField', [], {'default': "'http://pad.ubuntu.com/'", 'max_length': '75'}),
382+ 'hashtag': ('django.db.models.fields.CharField', [], {'max_length': '25', 'blank': 'True'}),
383+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
384+ 'last_update': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
385+ 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}),
386+ 'managers': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'managers'", 'blank': 'True', 'to': "orm['auth.User']"}),
387+ 'name': ('summit.schedule.fields.NameField', [], {'max_length': '50'}),
388+ 'qr': ('django.db.models.fields.URLField', [], {'default': "''", 'max_length': '100', 'blank': 'True'}),
389+ 'schedulers': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'schedulers'", 'blank': 'True', 'to': "orm['auth.User']"}),
390+ 'state': ('django.db.models.fields.CharField', [], {'default': "u'sponsor'", 'max_length': '10'}),
391+ 'timezone': ('django.db.models.fields.CharField', [], {'max_length': '50'}),
392+ 'title': ('django.db.models.fields.CharField', [], {'max_length': '100'})
393+ },
394+ 'schedule.summitsprint': {
395+ 'Meta': {'ordering': "('summit', 'import_url')", 'object_name': 'SummitSprint'},
396+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
397+ 'import_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}),
398+ 'summit': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'sprint_set'", 'to': "orm['schedule.Summit']"})
399+ },
400+ 'schedule.topic': {
401+ 'Meta': {'ordering': "('summit', 'title')", 'object_name': 'Topic'},
402+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
403+ 'summit': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Summit']"}),
404+ 'title': ('django.db.models.fields.CharField', [], {'max_length': '100'})
405+ },
406+ 'schedule.track': {
407+ 'Meta': {'ordering': "('summit', 'title', 'slug')", 'object_name': 'Track'},
408+ 'allow_adjacent_sessions': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
409+ 'color': ('django.db.models.fields.CharField', [], {'default': "'FFFFFF'", 'max_length': '6'}),
410+ 'description': ('django.db.models.fields.TextField', [], {'max_length': '1000', 'null': 'True'}),
411+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
412+ 'slug': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True'}),
413+ 'summit': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['schedule.Summit']"}),
414+ 'title': ('django.db.models.fields.CharField', [], {'max_length': '100'})
415+ }
416+ }
417+
418+ complete_apps = ['schedule']
419
420=== modified file 'summit/schedule/models/meetingmodel.py'
421--- summit/schedule/models/meetingmodel.py 2012-03-02 03:33:15 +0000
422+++ summit/schedule/models/meetingmodel.py 2012-03-18 23:11:18 +0000
423@@ -259,6 +259,9 @@
424
425 def update_from_launchpad(self, elem):
426 """Update from Launchpad data."""
427+
428+ self.approved = 'APPROVED'
429+
430 status = elem.get("status")
431 if status:
432 self.status = status

Subscribers

People subscribed via source and target branches

to all changes: