@@ -230,78 +230,85 @@ def member_management_edituser(uid):
230
230
post_data = request .get_json ()
231
231
232
232
if not uid .isdigit ():
233
- active_member = post_data ['activeMember' ]
234
-
235
- if ldap_is_eval_director (user_name ):
236
- logger .info ('backend' , action = "edit %s room: %s onfloor: %s housepts %s" %
237
- (uid , post_data ['roomNumber' ], post_data ['onfloorStatus' ],
238
- post_data ['housingPoints' ]))
239
- room_number = post_data ['roomNumber' ]
240
- onfloor_status = post_data ['onfloorStatus' ]
241
- housing_points = post_data ['housingPoints' ]
242
-
243
- ldap_set_roomnumber (uid , room_number )
244
- if onfloor_status :
245
- db .session .add (OnFloorStatusAssigned (uid , datetime .now ()))
246
- ldap_add_member_to_group (uid , "onfloor" )
247
- else :
248
- for ofs in OnFloorStatusAssigned .query .filter (OnFloorStatusAssigned .uid == uid ):
249
- db .session .delete (ofs )
250
- db .session .flush ()
251
- db .session .commit ()
252
-
253
- ldap_remove_member_from_group (uid , "onfloor" )
254
- ldap_set_housingpoints (uid , housing_points )
255
-
256
- # Only update if there's a diff
257
- logger .info ('backend' , action = "edit %s active: %s" % (uid , active_member ))
258
- if ldap_is_active (uid ) != active_member :
259
- if active_member :
260
- ldap_set_active (uid )
261
- else :
262
- ldap_set_inactive (uid )
263
-
264
- if active_member :
265
- db .session .add (SpringEval (uid ))
266
- else :
267
- SpringEval .query .filter (
268
- SpringEval .uid == uid and
269
- SpringEval .active ).update (
270
- {
271
- 'active' : False
272
- })
273
- clear_active_members_cache ()
233
+ edit_uid (uid , user_name , post_data )
274
234
else :
275
- logger .info ('backend' , action = "edit freshman account %s room: %s onfloor: %s eval_date: %s sig_missed %s" %
276
- (uid , post_data ['roomNumber' ], post_data ['onfloorStatus' ],
277
- post_data ['evalDate' ], post_data ['sigMissed' ]))
235
+ edit_fid (uid , post_data )
278
236
279
- name = post_data ['name' ]
237
+ db .session .flush ()
238
+ db .session .commit ()
239
+ return jsonify ({"success" : True }), 200
280
240
281
- if post_data ['roomNumber' ] == "" :
282
- room_number = None
283
- else :
284
- room_number = post_data ['roomNumber' ]
241
+ def edit_uid (uid , user_name , post_data ):
242
+ active_member = post_data ['activeMember' ]
285
243
244
+ if ldap_is_eval_director (user_name ):
245
+ logger .info ('backend' , action = "edit %s room: %s onfloor: %s housepts %s" %
246
+ (uid , post_data ['roomNumber' ], post_data ['onfloorStatus' ],
247
+ post_data ['housingPoints' ]))
248
+ room_number = post_data ['roomNumber' ]
286
249
onfloor_status = post_data ['onfloorStatus' ]
287
- eval_date = post_data ['evalDate ' ]
250
+ housing_points = post_data ['housingPoints ' ]
288
251
289
- if post_data ['sigMissed' ] == "" :
290
- sig_missed = None
252
+ ldap_set_roomnumber (uid , room_number )
253
+ if onfloor_status :
254
+ db .session .add (OnFloorStatusAssigned (uid , datetime .now ()))
255
+ ldap_add_member_to_group (uid , "onfloor" )
291
256
else :
292
- sig_missed = post_data ['sigMissed' ]
293
-
294
- FreshmanAccount .query .filter (FreshmanAccount .id == uid ).update ({
295
- 'name' : name ,
296
- 'eval_date' : datetime .strptime (eval_date , "%Y-%m-%d" ),
297
- 'onfloor_status' : onfloor_status ,
298
- 'room_number' : room_number ,
299
- 'signatures_missed' : sig_missed
300
- })
257
+ for ofs in OnFloorStatusAssigned .query .filter (OnFloorStatusAssigned .uid == uid ):
258
+ db .session .delete (ofs )
259
+ db .session .flush ()
260
+ db .session .commit ()
261
+
262
+ ldap_remove_member_from_group (uid , "onfloor" )
263
+ ldap_set_housingpoints (uid , housing_points )
264
+
265
+ # Only update if there's a diff
266
+ logger .info ('backend' , action = "edit %s active: %s" % (uid , active_member ))
267
+ if ldap_is_active (uid ) != active_member :
268
+ if active_member :
269
+ ldap_set_active (uid )
270
+ else :
271
+ ldap_set_inactive (uid )
301
272
302
- db .session .flush ()
303
- db .session .commit ()
304
- return jsonify ({"success" : True }), 200
273
+ if active_member :
274
+ db .session .add (SpringEval (uid ))
275
+ else :
276
+ SpringEval .query .filter (
277
+ SpringEval .uid == uid and
278
+ SpringEval .active ).update (
279
+ {
280
+ 'active' : False
281
+ })
282
+ clear_active_members_cache ()
283
+
284
+
285
+ def edit_fid (uid , post_data ):
286
+ logger .info ('backend' , action = "edit freshman account %s room: %s onfloor: %s eval_date: %s sig_missed %s" %
287
+ (uid , post_data ['roomNumber' ], post_data ['onfloorStatus' ],
288
+ post_data ['evalDate' ], post_data ['sigMissed' ]))
289
+
290
+ name = post_data ['name' ]
291
+
292
+ if post_data ['roomNumber' ] == "" :
293
+ room_number = None
294
+ else :
295
+ room_number = post_data ['roomNumber' ]
296
+
297
+ onfloor_status = post_data ['onfloorStatus' ]
298
+ eval_date = post_data ['evalDate' ]
299
+
300
+ if post_data ['sigMissed' ] == "" :
301
+ sig_missed = None
302
+ else :
303
+ sig_missed = post_data ['sigMissed' ]
304
+
305
+ FreshmanAccount .query .filter (FreshmanAccount .id == uid ).update ({
306
+ 'name' : name ,
307
+ 'eval_date' : datetime .strptime (eval_date , "%Y-%m-%d" ),
308
+ 'onfloor_status' : onfloor_status ,
309
+ 'room_number' : room_number ,
310
+ 'signatures_missed' : sig_missed
311
+ })
305
312
306
313
307
314
@member_management_bp .route ('/manage/user/<uid>' , methods = ['GET' ])
0 commit comments