Initial implementation of mailer events

Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
This commit is contained in:
Roberto Rosario
2018-12-16 04:15:31 -04:00
parent 798446f362
commit ba48a7e0fd
6 changed files with 59 additions and 21 deletions
+31 -15
View File
@@ -15,10 +15,16 @@ from mayan.apps.common import (
menu_secondary, menu_setup, menu_tools
)
from mayan.apps.common.widgets import TwoStateWidget
from mayan.apps.events import ModelEventType
from mayan.apps.events.links import (
link_events_for_object, link_object_event_types_user_subcriptions_list
)
from mayan.apps.events.permissions import permission_events_view
from mayan.apps.navigation import SourceColumn
from mayan.celery import app
from .classes import MailerBackend
from .events import event_email_sent
from .links import (
link_send_document, link_send_document_link, link_send_multiple_document,
link_send_multiple_document_link, link_system_mailer_error_log,
@@ -43,6 +49,7 @@ class MailerApp(MayanAppConfig):
def ready(self):
super(MailerApp, self).ready()
from actstream import registry
Document = apps.get_model(
app_label='documents', model_name='Document'
@@ -53,6 +60,25 @@ class MailerApp(MayanAppConfig):
MailerBackend.initialize()
ModelEventType.register(
model=UserMailer, event_types=(event_email_sent,)
)
ModelPermission.register(
model=Document, permissions=(
permission_mailing_link, permission_mailing_send_document
)
)
ModelPermission.register(
model=UserMailer, permissions=(
permission_acl_edit, permission_acl_view,
permission_events_view, permission_user_mailer_delete,
permission_user_mailer_edit, permission_user_mailer_view,
permission_user_mailer_use
)
)
SourceColumn(
source=LogEntry, label=_('Date and time'), attribute='datetime'
)
@@ -78,20 +104,6 @@ class MailerApp(MayanAppConfig):
source=UserMailer, label=_('Label'), attribute='backend_label'
)
ModelPermission.register(
model=Document, permissions=(
permission_mailing_link, permission_mailing_send_document
)
)
ModelPermission.register(
model=UserMailer, permissions=(
permission_acl_edit, permission_acl_view,
permission_user_mailer_delete, permission_user_mailer_edit,
permission_user_mailer_view, permission_user_mailer_use
)
)
app.conf.task_queues.append(
Queue('mailing', Exchange('mailing'), routing_key='mailing'),
)
@@ -106,7 +118,9 @@ class MailerApp(MayanAppConfig):
menu_list_facet.bind_links(
links=(
link_acl_list, link_user_mailer_log_list,
link_acl_list, link_events_for_object,
link_object_event_types_user_subcriptions_list,
link_user_mailer_log_list,
), sources=(UserMailer,)
)
@@ -142,3 +156,5 @@ class MailerApp(MayanAppConfig):
menu_tools.bind_links(links=(link_system_mailer_error_log,))
menu_setup.bind_links(links=(link_user_mailer_setup,))
registry.register(UserMailer)