diff options
Diffstat (limited to 'src/meetingtools/apps/room/models.py')
-rw-r--r-- | src/meetingtools/apps/room/models.py | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/src/meetingtools/apps/room/models.py b/src/meetingtools/apps/room/models.py index aea4ba3..26d2566 100644 --- a/src/meetingtools/apps/room/models.py +++ b/src/meetingtools/apps/room/models.py @@ -13,6 +13,8 @@ from meetingtools.apps.cluster.models import ACCluster import time import tagging from meetingtools.settings import BASE_URL +from django.db.models.signals import post_save +from tagging.models import Tag class Room(models.Model): creator = ForeignKey(User,editable=False) @@ -56,4 +58,18 @@ class Room(models.Model): else: return self.user_count -tagging.register(Room)
\ No newline at end of file +tagging.register(Room) + +def _magic_tags(sender,**kwargs): + room = kwargs['instance'] + if room.self_cleaning: + Tag.objects.add_tag(room, "cleaning") + else: + tags = Tag.objects.get_for_object(room) + ntags = [] + for tag in tags: + if tag.name != "cleaning": + ntags.append(tag.name) + Tag.objects.update_tags(room, ntags) + +post_save.connect(_magic_tags,sender=Room)
\ No newline at end of file |