Merge pull request #5593 from relldoesphp/CRM-15992
[civicrm-core.git] / ang / crmMailing.js
1 (function (angular, $, _) {
2
3 angular.module('crmMailing', [
4 'crmUtil', 'crmAttachment', 'crmAutosave', 'ngRoute', 'ui.utils', 'crmUi', 'dialogService'
5 ]);
6
7 angular.module('crmMailing').config([
8 '$routeProvider',
9 function ($routeProvider) {
10 $routeProvider.when('/mailing', {
11 template: '<div></div>',
12 controller: 'ListMailingsCtrl'
13 });
14
15 var editorPaths = {
16 '': '~/crmMailing/EditMailingCtrl/2step.html',
17 '/unified': '~/crmMailing/EditMailingCtrl/unified.html',
18 '/unified2': '~/crmMailing/EditMailingCtrl/unified2.html',
19 '/wizard': '~/crmMailing/EditMailingCtrl/wizard.html'
20 };
21 angular.forEach(editorPaths, function(editTemplate, pathSuffix) {
22 if (CRM && CRM.crmMailing && CRM.crmMailing.workflowEnabled) {
23 editTemplate = '~/crmMailing/EditMailingCtrl/workflow.html'; // override
24 }
25 $routeProvider.when('/mailing/new' + pathSuffix, {
26 template: '<p>' + ts('Initializing...') + '</p>',
27 controller: 'CreateMailingCtrl',
28 resolve: {
29 selectedMail: function(crmMailingMgr) {
30 var m = crmMailingMgr.create();
31 return crmMailingMgr.save(m);
32 }
33 }
34 });
35 $routeProvider.when('/mailing/:id' + pathSuffix, {
36 templateUrl: editTemplate,
37 controller: 'EditMailingCtrl',
38 resolve: {
39 selectedMail: function($route, crmMailingMgr) {
40 return crmMailingMgr.get($route.current.params.id);
41 },
42 attachments: function($route, CrmAttachments) {
43 var attachments = new CrmAttachments(function () {
44 return {entity_table: 'civicrm_mailing', entity_id: $route.current.params.id};
45 });
46 return attachments.load();
47 }
48 }
49 });
50 });
51 }
52 ]);
53
54 })(angular, CRM.$, CRM._);