Commit | Line | Data |
---|---|---|
cb1507f4 TO |
1 | <!-- |
2 | Controller: EditMailingCtrl | |
3 | Required vars: mailing, crmMailingConst | |
22bc3e48 TO |
4 | Note: Much of this file is duplicated in crmMailing and crmMailingAB with variations on placement/title/binding. |
5 | It could perhaps be thinned by 30-60% by making more directives. | |
cb1507f4 | 6 | --> |
f8601d61 | 7 | <div class="crm-block" ng-form="subform" crm-ui-id-scope> |
0112f1ae | 8 | <div class="crm-group"> |
c4256f35 | 9 | <div crm-ui-field="{name: 'subform.msg_template_id', title: ts('Template')}"> |
18da0e87 TO |
10 | <div ng-controller="MsgTemplateCtrl"> |
11 | <select | |
12 | crm-ui-id="subform.msg_template_id" | |
13 | name="msg_template_id" | |
d93f9a50 | 14 | class="fa-clipboard" |
18da0e87 TO |
15 | crm-ui-select="{dropdownAutoWidth : true, allowClear: true, placeholder: ts('Message Template')}" |
16 | ng-model="mailing.msg_template_id" | |
74263d6b | 17 | ng-change="loadTemplate(mailing, mailing.msg_template_id)" |
18da0e87 TO |
18 | > |
19 | <option value=""></option> | |
20 | <option ng-repeat="frm in crmMsgTemplates.getAll() | orderBy:'msg_title'" ng-value="frm.id">{{frm.msg_title}}</option> | |
21 | </select> | |
77ec5a8d | 22 | <a crm-icon="fa-floppy-o" ng-if="checkPerm('edit message templates')" ng-click="saveTemplate(mailing)" class="crm-hover-button" title="{{ts('Save As')}}"></a> |
0112f1ae TO |
23 | </div> |
24 | </div> | |
1ce7f3e4 | 25 | <div crm-ui-field="{name: 'subform.fromAddress', title: ts('From'), help: hs('from_email')}"> |
0a993c89 TO |
26 | <div ng-controller="EmailAddrCtrl" crm-mailing-from-address="fromPlaceholder" crm-mailing="mailing"> |
27 | <select | |
28 | crm-ui-id="subform.fromAddress" | |
87391d86 | 29 | crm-ui-select="{dropdownAutoWidth : true, allowClear: false, placeholder: ts('Email address')}" |
0a993c89 | 30 | name="fromAddress" |
0a993c89 | 31 | ng-model="fromPlaceholder.label" |
0a993c89 TO |
32 | required> |
33 | <option value=""></option> | |
87391d86 | 34 | <option ng-repeat="frm in crmFromAddresses.getAll() | filter:{is_active:1} | orderBy:'weight'" value="{{frm.label}}">{{frm.label}}</option> |
0a993c89 TO |
35 | </select> |
36 | </div> | |
0112f1ae | 37 | </div> |
c4256f35 | 38 | <div crm-ui-field="{name: 'subform.replyTo', title: ts('Reply-To')}" ng-show="crmMailingConst.enableReplyTo"> |
0a993c89 TO |
39 | <div ng-controller="EmailAddrCtrl"> |
40 | <select | |
41 | crm-ui-id="subform.replyTo" | |
87391d86 | 42 | crm-ui-select="{dropdownAutoWidth : true, allowClear: true, placeholder: ts('Email address')}" |
0a993c89 | 43 | name="replyTo" |
87391d86 | 44 | ng-change="checkReplyToChange(mailing)" |
0a993c89 | 45 | ng-model="mailing.replyto_email" |
0a993c89 TO |
46 | > |
47 | <option value=""></option> | |
87391d86 | 48 | <option ng-repeat="frm in crmFromAddresses.getAll() | filter:{is_active:1} | orderBy:'weight'" value="{{frm.label}}">{{frm.label}}</option> |
0a993c89 TO |
49 | </select> |
50 | </div> | |
0112f1ae | 51 | </div> |
c4256f35 | 52 | <div crm-ui-field="{name: 'subform.recipients', title: ts('Recipients')}"> |
62d2e387 | 53 | <div crm-mailing-block-recipients="{name: 'recipients', id: 'subform.recipients'}" crm-mailing="mailing"></div> |
0112f1ae | 54 | </div> |
720c658b | 55 | <span ng-controller="EditUnsubGroupCtrl"> |
c4256f35 | 56 | <div crm-ui-field="{name: 'subform.baseGroup', title: ts('Unsubscribe Group')}" ng-if="isUnsubGroupRequired(mailing)"> |
720c658b TO |
57 | <select |
58 | crm-ui-id="subform.baseGroup" | |
59 | crm-ui-select | |
60 | name="baseGroup" | |
61 | ng-model="mailing.recipients.groups.base[0]" | |
62 | ng-required="true" | |
63 | > | |
f2a4c031 | 64 | <option ng-repeat="grp in crmMailingConst.groupNames | filter:{is_hidden:0} | orderBy:'title'" value="{{grp.id}}">{{grp.title}}</option> |
720c658b TO |
65 | </select> |
66 | </div> | |
67 | </span> | |
c4256f35 | 68 | <div crm-ui-field="{name: 'subform.subject', title: ts('Subject')}"> |
0112f1ae | 69 | <div style="float: right;"> |
617b1b16 | 70 | <input crm-mailing-token on-select="$broadcast('insert:subject', token.name)" tabindex="-1"/> |
0112f1ae TO |
71 | </div> |
72 | <input | |
f8601d61 | 73 | crm-ui-id="subform.subject" |
f8f85764 | 74 | crm-ui-insert-rx="insert:subject" |
0112f1ae TO |
75 | type="text" |
76 | class="crm-form-text" | |
77 | ng-model="mailing.subject" | |
78 | required | |
79 | placeholder="Subject" | |
80 | name="subject" /> | |
81 | </div> | |
c00b95ef ML |
82 | <div ng-if="crmMailingConst.isMultiLingual"> |
83 | <div crm-ui-field="{name: 'subform.language', title: ts('Language')}"> | |
84 | <select | |
85 | crm-ui-id="subform.language" | |
349218d7 | 86 | crm-ui-select="{dropdownAutoWidth : true, allowClear: false, placeholder: ts('- choose language -')}" |
c00b95ef ML |
87 | name="language" |
88 | ng-model="mailing.language" | |
89 | required | |
90 | > | |
91 | <option value=""></option> | |
92 | <option ng-repeat="(key,val) in crmMailingConst.enabledLanguages" value="{{key}}">{{val}}</option> | |
93 | </select> | |
94 | </div> | |
95 | </div> | |
0112f1ae TO |
96 | </div> |
97 | </div> |