2 Implicit Controller: CrmMailingABEditCtrl
4 <div ng-controller=
"CrmMailingABReportCtrl">
7 <tr ng-show=
"abtest.ab.status == 'Testing'">
9 <td ng-repeat=
"am in getActiveMailings()">
10 <button ng-click=
"selectWinner(am.name)">{{ts('Select as Winner')}}
</button>
17 <th>{{ts('Delivery')}}
</th>
18 <th ng-repeat=
"am in getActiveMailings()" class=
"crm-mailing-ab-col">{{am.title}}
</th>
24 <td>{{ts('Status')}}
</td>
25 <td ng-repeat=
"am in getActiveMailings()">
26 <span ng-repeat=
"job in am.mailing.jobs" ng-hide=
"job.is_test == 1 || job.parent_id != null">{{job.status}}
</span>
30 <td>{{ts('Scheduled')}}
</td>
31 <td ng-repeat=
"am in getActiveMailings()">
32 <div ng-repeat=
"job in am.mailing.jobs" ng-hide=
"job.is_test == 1 || job.parent_id != null">{{job.scheduled_date}}
</div>
36 <td>{{ts('Started at')}}
</td>
37 <td ng-repeat=
"am in getActiveMailings()">
38 <div ng-repeat=
"job in am.mailing.jobs" ng-hide=
"job.is_test == 1 || job.parent_id != null">{{job.start_date || ts('Not started')}}
</div>
42 <td>{{ts('Completed at')}}
</td>
43 <td ng-repeat=
"am in getActiveMailings()">
44 <div ng-repeat=
"job in am.mailing.jobs" ng-hide=
"job.is_test == 1 || job.parent_id != null">{{job.end_date || ts('Not completed')}}
</div>
51 <th>{{ts('Performance')}}
</th>
52 <th ng-repeat=
"am in getActiveMailings()" class=
"crm-mailing-ab-col">{{am.title}}
</th>
56 <tr ng-repeat=
"statType in statTypes">
57 <td>{{statType.title}}
</td>
58 <td ng-repeat=
"am in getActiveMailings()">
60 class=
"crm-hover-button action-item"
61 ng-href=
"{{statUrl(am.mailing, statType, 'search')}}"
62 ng-if=
"checkPerm('view all contacts')"
63 title=
"{{ts('Search for contacts using \'%1\'', {1: statType.title})}}"
67 class=
"crm-hover-button action-item"
68 ng-href=
"{{statUrl(am.mailing, statType, 'events')}}"
69 title=
"{{ts('Browse events of type \'%1\'', {1: statType.title})}}"
70 >{{stats[am.name][statType.name] || ts('n/a')}}
</a>
77 <th>{{ts('Details')}}
</th>
78 <th ng-repeat=
"am in getActiveMailings()" class=
"crm-mailing-ab-col">{{am.title}}
</th>
84 <td>{{ts('Mailing Name')}}
</td>
85 <td ng-repeat=
"am in getActiveMailings()">
90 <td>{{ts('From')}}
</td>
91 <td ng-repeat=
"am in getActiveMailings()">
92 "{{am.mailing.from_name}}" <{{am.mailing.from_email}}
>
96 <td>{{ts('Subject')}}
</td>
97 <td ng-repeat=
"am in getActiveMailings()">
98 {{am.mailing.subject}}
101 <tr ng-controller=
"ViewRecipCtrl">
102 <td>{{ts('Recipients')}}
</td>
103 <td ng-repeat=
"am in getActiveMailings()">
104 <div ng-show=
"getIncludesAsString(am.mailing)">
105 <strong>{{ts('Include:')}}
</strong> {{getIncludesAsString(am.mailing)}}
107 <div ng-show=
"getExcludesAsString(am.mailing)">
108 <strong>{{ts('Exclude:')}}
</strong> <s>{{getExcludesAsString(am.mailing)}}
</s>
113 <td>{{ts('Content')}}
</td>
114 <td ng-repeat=
"am in getActiveMailings()">
115 <a crm-icon=
"newwin" class=
"crm-hover-button action-item" ng-click=
"previewMailing(am.name,'html')" ng-show=
"am.mailing.body_html">{{ts('HTML')}}
</a>
116 <a crm-icon=
"newwin" class=
"crm-hover-button action-item" ng-click=
"previewMailing(am.name,'text')" ng-show=
"am.mailing.body_text">{{ts('Text')}}
</a>
120 <td>{{ts('Attachments')}}
</td>
121 <td ng-repeat=
"am in getActiveMailings()">
122 <div ng-repeat=
"file in am.attachments.files"><a ng-href=
"{{file.url}}" target=
"_blank">{{file.name}}
</a></div>
126 <td>{{ts('Tracking')}}
</td>
127 <td ng-repeat=
"am in getActiveMailings()">
128 <div crm-mailing-review-bool
crm-on=
"am.mailing.url_tracking=='1'" crm-title=
"ts('Click Throughs')"></div>
129 <div crm-mailing-review-bool
crm-on=
"am.mailing.open_tracking=='1'" crm-title=
"ts('Opens')"></div>
133 <td>{{ts('Responding')}}
</td>
134 <td ng-repeat=
"am in getActiveMailings()">
135 <div crm-mailing-review-bool
crm-on=
"am.mailing.override_verp=='0'" crm-title=
"ts('Track Replies')"></div>
136 <div crm-mailing-review-bool
crm-on=
"am.mailing.override_verp=='0' && mailing.forward_replies=='1'" crm-title=
"ts('Forward Replies')"></div>
137 <div ng-controller=
"PreviewComponentCtrl">
138 <div ng-show=
"am.mailing.override_verp == '0' && mailing.auto_responder"><a crm-icon=
"newwin" class=
"crm-hover-button action-item" ng-click=
"previewComponent(ts('Auto-Respond'), am.mailing.reply_id)">{{ts('Auto-Respond')}}
</a></div>
139 <div><a crm-icon=
"newwin" class=
"crm-hover-button action-item" ng-click=
"previewComponent(ts('Opt-out'), am.mailing.optout_id)">{{ts('Opt-out')}}
</a></div>
140 <div><a crm-icon=
"newwin" class=
"crm-hover-button action-item" ng-click=
"previewComponent(ts('Resubscribe'), am.mailing.resubscribe_id)">{{ts('Resubscribe')}}
</a></div>
141 <div><a crm-icon=
"newwin" class=
"crm-hover-button action-item" ng-click=
"previewComponent(ts('Unsubscribe'), am.mailing.unsubscribe_id)">{{ts('Unsubscribe')}}
</a></div>
146 <td>{{ts('Publication')}}
</td>
147 <td ng-repeat=
"am in getActiveMailings()">
148 {{am.mailing.visibility}}
156 <div crm-ui-tab
id=
"tab-opens" crm-title=
"ts('Opens (WIP)')">
157 <div crm-mailing-ab-stats=
"{criteria: 'open', split_count: 5}" crm-abtest=
"abtest"></div>
159 <div crm-ui-tab
id=
"tab-clicks" crm-title=
"ts('Total Clicks (WIP)')">
160 <div crm-mailing-ab-stats=
"{criteria: 'total unique clicks', split_count: 5}" crm-abtest=
"abtest"></div>