Skip to content

Commit d3cc62c

Browse files
Stop Duplication of OnFloorStatusAssigned Objects
Currently there is no check to prevent making another OnFloorStatusAssigned object if a member is edited in the Member Management page.
1 parent dc789f5 commit d3cc62c

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

conditional/blueprints/member_management.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@
3939
from conditional.util.ldap import ldap_is_onfloor
4040
from conditional.util.ldap import __ldap_add_member_to_group__ as ldap_add_member_to_group
4141
from conditional.util.ldap import __ldap_remove_member_from_group__ as ldap_remove_member_from_group
42+
from conditional.util.ldap import __ldap_is_member_of_group__ as ldap_is_member_of_group
4243

4344
from conditional.util.flask import render_template
4445
from conditional.models.models import attendance_enum
@@ -251,8 +252,10 @@ def edit_uid(uid, user_name, post_data):
251252

252253
ldap_set_roomnumber(uid, room_number)
253254
if onfloor_status:
254-
db.session.add(OnFloorStatusAssigned(uid, datetime.now()))
255-
ldap_add_member_to_group(uid, "onfloor")
255+
# If a OnFloorStatusAssigned object exists, don't make another
256+
if not ldap_is_member_of_group(uid, "onfloor"):
257+
db.session.add(OnFloorStatusAssigned(uid, datetime.now()))
258+
ldap_add_member_to_group(uid, "onfloor")
256259
else:
257260
for ofs in OnFloorStatusAssigned.query.filter(OnFloorStatusAssigned.uid == uid):
258261
db.session.delete(ofs)

0 commit comments

Comments
 (0)