Example #1
0
    def check_assigned_to(self):
        try:
            old = Ticket.objects.get(id=self.id).assigned_to
        except Ticket.DoesNotExist:
            old = False

        if not old == self.assigned_to:
            if self.assigned_to:
                send_assigned_mail(self.assigned_to, self)
            if old:
                send_assigned_mail(old, self, assigned=False)
Example #2
0
    def save(self, **kwargs):
        if 'update' in kwargs:
            send_update_mails(self, kwargs['update'])
        action = 'EDIT'
        if not self.id:
            action = 'ADD'

        if self.id:
            self.visited_by_since_last_edit = []
            if Core.current_user():
                self.visited_by_since_last_edit.add(Core.current_user())

        super(Ticket, self).save()

        if action == 'ADD':
            if self.assigned_to:
                send_assigned_mail(self.assigned_to, self, assigned=True)
            if self.company:
                if self.company.admin_group:
                    self.company.admin_group.grant_role('Admin', self)
                if self.company.all_employees_group:
                    self.company.all_employees_group.grant_role('Member', self)

        self.invalidate_cache()