def membership_post_save(sender, instance, using, **kwargs): if not instance.user: return create_notify_policy_if_not_exists(instance.project, instance.user) # Set project on top on user projects list membership = apps.get_model("projects", "Membership") membership.objects.filter(user=instance.user) \ .update(user_order=F('user_order') + 1) membership.objects.filter(user=instance.user, project=instance.project)\ .update(user_order=0)
def create_notify_policy(sender, instance, using, **kwargs): if instance.user: create_notify_policy_if_not_exists(instance.project, instance.user)
def add_watcher(self, user, notify_level=NotifyLevel.all): notify_policy = create_notify_policy_if_not_exists(self, user) set_notify_policy_level(notify_policy, notify_level)