Files
mayan-edms/mayan/apps/events/classes.py
Roberto Rosario 7392e80fc2 PEP8 Cleanups.
2015-08-24 20:55:45 -04:00

37 lines
971 B
Python

from __future__ import unicode_literals
from django.apps import apps
from django.utils.translation import ugettext_lazy as _
from actstream import action
class Event(object):
_labels = {}
@classmethod
def get_label(cls, name):
try:
return cls._labels[name]
except KeyError:
return _('Unknown or obsolete event type: {0}'.format(name))
def __init__(self, name, label):
self.name = name
self.label = label
self.event_type = None
self.__class__._labels[name] = label
def commit(self, actor=None, action_object=None, target=None):
model = apps.get_model('events', 'EventType')
if not self.event_type:
self.event_type, created = model.objects.get_or_create(
name=self.name
)
action.send(
actor or target, actor=actor, verb=self.name,
action_object=action_object, target=target
)