@@ -193,92 +193,6 @@ def reviewClass(self, request, tl, one, two, module, extra, prog):
193
193
194
194
return HttpResponse ('' )
195
195
196
- @aux_call
197
- @needs_admin
198
- def attendees (self , request , tl , one , two , module , extra , prog ):
199
- """ Mark students as having attended the program, or as having registered for the specified class """
200
- saved_record = False
201
-
202
- if request .method == 'POST' :
203
- if not ( request .POST .has_key ('class_id' ) and request .POST .has_key ('ids_to_enter' ) ):
204
- raise ESPError ("Error: The server lost track of your data! Please go back to the main page of this feature and try entering it again." )
205
-
206
- usernames = []
207
- ids = []
208
-
209
- for id in [ x for x in request .POST ['ids_to_enter' ].split ('\n ' ) if x .strip () != '' ]:
210
- try : # We're going to accept both usernames and user ID's.
211
- # Assume that valid integers are user ID's
212
- # and things that aren't valid integers are usernames.
213
- if id [0 ] == '0' :
214
- id_trimmed = id .strip ()[:- 1 ]
215
- else :
216
- id_trimmed = id
217
-
218
- id_val = int (id_trimmed )
219
- ids .append (id_val )
220
- except ValueError :
221
- usernames .append ( id .strip () )
222
-
223
- Q_Users = Q (id = - 1 ) # in case usernames and ids are both empty
224
- if usernames :
225
- Q_Users |= Q (username__in = usernames )
226
-
227
- if ids :
228
- Q_Users |= Q (id__in = ids )
229
-
230
- users = ESPUser .objects .filter ( Q_Users )
231
-
232
- if request .POST ['class_id' ] == 'program' :
233
- already_registered_users = prog .students ()['attended' ]
234
- else :
235
- cls = ClassSection .objects .get (id = request .POST ['class_id' ])
236
- already_registered_users = cls .students ()
237
-
238
- already_registered_ids = [ i .id for i in already_registered_users ]
239
-
240
- new_attendees = ESPUser .objects .filter ( Q_Users )
241
- if already_registered_ids != []:
242
- new_attendees = new_attendees .exclude ( id__in = already_registered_ids )
243
- new_attendees = new_attendees .distinct ()
244
-
245
- no_longer_attending = ESPUser .objects .filter ( id__in = already_registered_ids )
246
- if ids != [] or usernames != []:
247
- no_longer_attending = no_longer_attending .exclude ( Q_Users )
248
- no_longer_attending = no_longer_attending .distinct ()
249
-
250
- if request .POST ['class_id' ] == 'program' :
251
- for stu in no_longer_attending :
252
- prog .cancelStudentRegConfirmation (stu )
253
- for stu in new_attendees :
254
- prog .confirmStudentReg (stu )
255
- else :
256
- for stu in no_longer_attending :
257
- cls .unpreregister_student (stu )
258
- for stu in new_attendees :
259
- cls .preregister_student (stu , overridefull = True )
260
-
261
- saved_record = True
262
- else :
263
- if request .GET .has_key ('class_id' ):
264
- if request .GET ['class_id' ] == 'program' :
265
- is_program = True
266
- registered_students = prog .students ()['attended' ]
267
- else :
268
- is_program = False
269
- cls = ClassSection .objects .get (id = request .GET ['class_id' ])
270
- registered_students = cls .students ()
271
-
272
- context = { 'is_program' : is_program ,
273
- 'prog' : prog ,
274
- 'cls' : cls ,
275
- 'registered_students' : registered_students ,
276
- 'class_id' : request .GET ['class_id' ] }
277
-
278
- return render_to_response (self .baseDir ()+ 'attendees_enter_users.html' , request , context )
279
-
280
- return render_to_response (self .baseDir ()+ 'attendees_selectclass.html' , request , { 'saved_record' : saved_record , 'prog' : prog })
281
-
282
196
@aux_call
283
197
@needs_admin
284
198
def deletesection (self , request , tl , one , two , module , extra , prog ):
@@ -482,22 +396,6 @@ def changeoption(self, request,tl,one,two,module,extra,prog):
482
396
483
397
return self .goToCore (tl )
484
398
485
- @needs_admin
486
- def main (self , request , tl , one , two , module , extra , prog ):
487
- """ Display a teacher eg page """
488
- context = {}
489
- modules = self .program .getModules (request .user , 'manage' )
490
-
491
- for module in modules :
492
- context = module .prepare (context )
493
-
494
-
495
- context ['modules' ] = modules
496
- context ['one' ] = one
497
- context ['two' ] = two
498
-
499
- return render_to_response (self .baseDir ()+ 'mainpage.html' , request , context )
500
-
501
399
@aux_call
502
400
@needs_admin
503
401
def deleteclass (self , request , tl , one , two , module , extra , prog ):
0 commit comments