$civiMails = civicrm_api3('Mailing', 'get', array());
$campNames = civicrm_api3('Campaign', 'get', array());
+ $mailingabNames = civicrm_api3('MailingAB','get',array());
$mailStatus = civicrm_api3('MailingJob', 'get', array());
$groupNames = civicrm_api3('Group', 'get', array());
$headerfooterList = civicrm_api3('MailingComponent', 'get', array());
- $emailAdd = civicrm_api3('Email', 'get', array(
- 'sequential' => 1,
- 'return' => "email",
- 'contact_id' => 202,
- ));
+ $emailAdd = civicrm_api3('Email', 'get', array());
$mesTemplate = civicrm_api3('MessageTemplate', 'get', array(
'sequential' => 1,
'return' => array("msg_html", "id", "msg_title"),
CRM_Core_Resources::singleton()->addSetting(array(
'crmMailing' => array(
+ 'mailingabNames'=>array_values($mailingabNames['values']),
'civiMails' => array_values($civiMails['values']),
'campNames' => array_values($campNames['values']),
'mailStatus' => array_values($mailStatus['values']),
};
var crmMailingAB = angular.module('crmMailingAB', ['ngRoute', 'ui.utils']);
-
+ var mltokens = [];
crmMailingAB.run(function ($rootScope, $templateCache) {
$rootScope.$on('$viewContentLoaded', function () {
$templateCache.removeAll();
templateUrl: partialUrl('main.html'),
controller: 'TabsDemoCtrl',
resolve: {
- mailingList: function ($route, crmApi) {
- return crmApi('Mailing', 'get', {});
+ selectedABTest: function($route, crmApi) {
+ if ( $route.current.params.id !== 'new') {
+
+ return crmApi('MailingAB', 'getsingle', {id: $route.current.params.id});
+ }
+ else {
+ //created_id has been set to my id. Does not save without created_id. Needs to made generic based on the user
+ return {visibility: "Public Pages", url_tracking:"1", forward_replies:"0", created_id: "202", auto_responder:"0", open_tracking:"1",just_created:"1"
+ };
+ }
}
}
});
$scope.mailList = CRM.crmMailing.civiMails;
})
- crmMailingAB.controller('TabsDemoCtrl', function ($scope, crmApi) {
-
+ crmMailingAB.controller('TabsDemoCtrl', function ($scope, crmApi,selectedABTest) {
+ $scope.abId="";
+ $scope.currentABTest=selectedABTest
$scope.groups = CRM.crmMailing.groupNames;
$scope.mailList = CRM.crmMailing.civiMails;
+ $scope.eMailing = CRM.crmMailing.emailAdd;
+ $scope.tmpList = CRM.crmMailing.mesTemplate;
+ $scope.headerfooter = CRM.crmMailing.headerfooterList;
+
+
+ if($scope.currentABTest.just_created != 1){
+ console.log("Prithvi");
+ console.log($scope.currentABTest);
+ console.log($scope.currentABTest.mailing_id_a);
+
+ $scope.abId = $scope.currentABTest.id;
+ $scope.mailA = crmApi('Mailing','getsingle',{id:$scope.currentABTest.mailing_id_a});
+ $scope.mailB= crmApi('Mailing','getsingle',{id:$scope.currentABTest.mailing_id_b});
+ console.log($scope.mailA);
+ }
+ else{
+ console.log("Prithvila");
+ $scope.mailA = {};
+ $scope.mailB = {};
+ }
+
+
+ mltokens = CRM.crmMailing.mailTokens;
$scope.tab_val = 0;
$scope.max_tab = 0;
};
$scope.templates =
[
- { name: 'Subject Lines', url: partialUrl('subject_lines.html')},
- { name: 'From Name', url: partialUrl('from_name.html')},
- {name: 'Two different Emails', url: partialUrl('two_emails.html')}
+ { name: 'Subject Lines', url: partialUrl('subject_lines.html'),val: 1},
+ { name: 'From Name', url: partialUrl('from_name.html'),val:2},
+ {name: 'Two different Emails', url: partialUrl('two_emails.html'),val:3}
];
$scope.template = $scope.templates[0];
}
};
+ $scope.reply = function(){
+ if($scope.trackreplies==0){
+ $scope.trackreplies=1;
+ }
+ else{
+ $scope.trackreplies=0;
+ $scope.currentMailing.forward_replies=0;
+ $scope.currentMailing.auto_responder=0;
+ }
+ }
+
+ $scope.isAuto= function(au){
+ return au.component_type == "Reply";
+ };
+
+ $scope.trackr= function(trackreplies){
+ if(trackreplies=="1"){
+ return true;
+ }
+ else
+ return false;
+ }
+
+
+
+ $scope.isHeader= function(hf){
+ return hf.component_type == "Header";
+ };
+ //filter so we only get footers from mailing component
+ $scope.isFooter= function(f){
+ return f.component_type == "Footer";
+ };
+
$scope.send_date = "01/01/2000";
$scope.dt = "";
- $scope.mailA = {};
- $scope.mailB = {};
- $scope.save = function (dat) {
+ $scope.savea = function (dat) {
var result = crmApi('Mailing', 'create', dat, true);
- console.log("Ac " + result);
+ console.log(result);
+ result.success(function(data) {
+ if (data.is_error == 0) {
+ $scope.mailA.id = data.id;
+ console.log("Mail a Id "+ $scope.mailA.id);
+ }
+ });
+ };
+
+ $scope.append_mails = function(){
+ crmApi('MailingAB','create',{id:$scope.abId,mailing_id_a:$scope.mailA.id,mailing_id_b:$scope.mailB.id});
+ };
+
+ $scope.saveb = function (dat) {
+ var flag =0;
+ var result = crmApi('Mailing', 'create', dat, true);
+ console.log(result);
+ result.success(function(data) {
+ if (data.is_error == 0) {
+ $scope.mailB.id = data.id;
+ console.log("Mail b Id "+ $scope.mailB.id);
+ $scope.append_mails();
+
+
+ }
+ });
+
};
$scope.init = function (par) {
$scope.incGroup = [];
$scope.excGroup = [];
+ $scope.create_abtest = function(){
+ var result;
+ if($scope.abId =="" )
+ result= crmApi('MailingAB','create',{testing_criteria_id: $scope.template.val});
+ else{
+ if (typeof $scope.currentABTest.mailing_id_a == 'undefined')
+ result= crmApi('MailingAB','create',{id:$scope.abId,testing_criteria_id: $scope.template.val});
+ else{
+ result= crmApi('MailingAB','create',{id:$scope.abId,testing_criteria_id: $scope.template.val,mailing_id_a:$scope.currentABTest.mailing_id_a,mailing_id_b:$scope.currentABTest.mailing_id_b} );
+
+ }
+
+ }
+
+
+ result.success(function(data) {
+ if (data.is_error == 0) {
+ $scope.abId = data.id;
+ console.log("ID "+$scope.abId);
+ }
+ });
+ };
+
+
+
+ $scope.tmp = function (tst){
+ $scope.currentMailing.msg_template_id=tst;
+ console.log($scope.currentMailing.msg_template_id+ "sasas");
+ if($scope.currentMailing.msg_template_id == null){
+ $scope.currentMailing.body_html="";
+ }
+ else{
+ for(var a in $scope.tmpList){
+
+ if($scope.tmpList[a].id==$scope.currentMailing.msg_template_id){
+ $scope.currentMailing.body_html=$scope.tmpList[a].msg_html;
+ }
+ }
+ }
+ };
+
});
$(element).parent().parent().parent().parent().tabs({disabled: myarr});
$(element).on("click", function () {
+ if(scope.tab_val==0){
+
+ scope.create_abtest();
+ }
scope.tab_val = scope.tab_val + 1;
scope.max_tab = Math.max(scope.tab_val, scope.max_tab);
};
});
- crmMailingAB.directive('groupselect', function () {
+ crmMailingAB.directive('chsgroup', function () {
return {
restrict: 'AE',
link: function (scope, element, attrs) {
});
+ crmMailingAB.directive('groupselect',function(){
+ return {
+ restrict : 'AE',
+ link: function(scope,element, attrs){
+ $(element).select2({width:"200px", data: mltokens, placeholder:"Insert Token"});
+
+
+ $(element).on('select2-selecting', function(e) {
+ scope.$evalAsync('_resetSelection()');console.log(mltokens);
+ /* if(scope.currentMailing.body_html == null){
+ scope.currentMailing.body_html = e.val;
+ }
+ else
+ scope.currentMailing.body_html = scope.currentMailing.body_html + e.val;
+ */
+ var msg = document.getElementById("body_html").value;
+ var cursorlen = document.getElementById("body_html").selectionStart;
+ console.log(cursorlen);
+ var textlen = msg.length;
+ document.getElementById("body_html").value = msg.substring(0, cursorlen) + e.val + msg.substring(cursorlen, textlen);
+ scope.currentMailing.body_html = msg.substring(0, cursorlen) + e.val + msg.substring(cursorlen, textlen);
+ console.log(document.getElementById("body_html").value);
+ console.log(scope.currentMailing.body_html);
+ var cursorPos = (cursorlen + e.val.length);
+ document.getElementById("body_html").selectionStart = cursorPos;
+ document.getElementById("body_html").selectionEnd = cursorPos;
+ document.getElementById("body_html").focus();
+ scope.$apply();
+ e.preventDefault();
+ })
+
+ }
+ };
+
+ });
+
crmMailingAB.directive('sliderbar', function () {
return{
restrict: 'AE',
$(element).on("click", function () {
console.log("clicked");
- scope.save({
- "sequential": 1,
- "name": "Aditya Nambiar",
- "subject": scope.mailA.subj,
- "created_id": "2",
- "from_email": scope.mailA.fromEmail,
- "body_text": scope.mailA.body
-
+ scope.savea({
+ id: scope.mailA.id,
+ name: "Aditya Nambiar",
+ visibility: scope.mailA.visibility,
+ created_id: 1,
+ subject: scope.mailA.subject,
+ msg_template_id: scope.mailA.msg_template_id==null ? "" : scope.mailA.msg_template_id,
+ open_tracking: scope.mailA.open_tracking,
+ url_tracking: scope.mailA.url_tracking,
+ forward_replies: scope.mailA.forward_replies,
+ auto_responder: scope.mailA.auto_responder,
+ from_name: scope.mailA.from_name,
+ from_email: scope.mailA.from_email,
+ replyto_email: scope.mailA.replyto_email,
+ unsubscribe_id: scope.mailA.unsubscribe_id,
+ resubscribe_id: scope.mailA.resubscribe_id,
+ body_html: scope.mailA.body_html,
+ body_text: scope.mailA.body_text,
+ scheduled_date: scope.mailA.scheduled_date,
+ scheduled_id: scope.mailA.scheduled_id,
+ campaign_id: scope.mailA.campaign_id==null ? "" : scope.mailA.campaign_id,
+ header_id: scope.mailA.header_id,
+ footer_id: scope.mailA.footer_id,
+
+ is_completed: scope.mailA.is_completed
});
console.log("Truth " + scope.whatnext)
if (scope.whatnext == "3") {
console.log("sdf");
- scope.mailB.subj = scope.mailA.subj;
- scope.mailB.body = scope.mailA.body;
+
+ scope.mailB.name= scope.mailA.name;
+ scope.mailB.visibility= scope.mailA.visibility;
+ scope.mailB.created_id= scope.mailA.created_id;
+ scope.mailB.subject= scope.mailA.subject;
+ scope.mailB.msg_template_id= scope.mailA.msg_template_id==null ? "" : scope.mailA.msg_template_id;
+ scope.mailB.open_tracking= scope.mailA.open_tracking;
+ scope.mailB.url_tracking= scope.mailA.url_tracking;
+ scope.mailB.forward_replies= scope.mailA.forward_replies;
+ scope.mailB.auto_responder= scope.mailA.auto_responder;
+ scope.mailB.from_name= scope.mailA.from_name;
+ scope.mailB.replyto_email= scope.mailA.replyto_email;
+ scope.mailB.unsubscribe_id= scope.mailA.unsubscribe_id;
+ scope.mailB.resubscribe_id= scope.mailA.resubscribe_id;
+ scope.mailB.body_html= scope.mailA.body_html;
+ scope.mailB.body_text= scope.mailA.body_text;
+ scope.mailB.scheduled_date= scope.mailA.scheduled_date;
+ scope.mailB.scheduled_id= scope.mailA.scheduled_id;
+ scope.mailB.campaign_id= scope.mailA.campaign_id==null ? "" : scope.mailA.campaign_id;
+ scope.mailB.header_id= scope.mailA.header_id;
+ scope.mailB.footer_id= scope.mailA.footer_id;
+
+ scope.mailB.is_completed= scope.mailA.is_completed;
}
else {
if (scope.whatnext == "2") {
scope.mailB.fromEmail = scope.mailA.fromEmail;
- scope.mailB.body = scope.mailA.body;
+ scope.mailB.name= scope.mailA.name;
+ scope.mailB.visibility= scope.mailA.visibility;
+ scope.mailB.created_id= scope.mailA.created_id;
+ scope.mailB.msg_template_id= scope.mailA.msg_template_id==null ? "" : scope.mailA.msg_template_id;
+ scope.mailB.open_tracking= scope.mailA.open_tracking;
+ scope.mailB.url_tracking= scope.mailA.url_tracking;
+ scope.mailB.forward_replies= scope.mailA.forward_replies;
+ scope.mailB.auto_responder= scope.mailA.auto_responder;
+ scope.mailB.from_name= scope.mailA.from_name;
+ scope.mailB.replyto_email= scope.mailA.replyto_email;
+ scope.mailB.unsubscribe_id= scope.mailA.unsubscribe_id;
+ scope.mailB.resubscribe_id= scope.mailA.resubscribe_id;
+ scope.mailB.body_html= scope.mailA.body_html;
+ scope.mailB.body_text= scope.mailA.body_text;
+ scope.mailB.scheduled_date= scope.mailA.scheduled_date;
+ scope.mailB.scheduled_id= scope.mailA.scheduled_id;
+ scope.mailB.campaign_id= scope.mailA.campaign_id==null ? "" : scope.mailA.campaign_id;
+ scope.mailB.header_id= scope.mailA.header_id;
+ scope.mailB.footer_id= scope.mailA.footer_id;
+
+ scope.mailB.is_completed= scope.mailA.is_completed;
}
}
- scope.save({
- "sequential": 1,
- "name": "Aditya Nambiar",
- "subject": scope.mailB.subj,
- "created_id": "2",
- "from_email": scope.mailB.fromEmail,
- "body_text": scope.mailB.body
+ scope.saveb({
+
+ id: scope.mailB.id,
+ name: "Aditya Nambiar",
+ visibility: scope.mailB.visibility,
+ created_id: 1,
+ subject: scope.mailB.subject,
+ msg_template_id: scope.mailB.msg_template_id==null ? "" : scope.mailB.msg_template_id,
+ open_tracking: scope.mailB.open_tracking,
+ url_tracking: scope.mailB.url_tracking,
+ forward_replies: scope.mailB.forward_replies,
+ auto_responder: scope.mailB.auto_responder,
+ from_name: scope.mailB.from_name,
+ from_email: scope.mailB.from_email,
+ replyto_email: scope.mailB.replyto_email,
+ unsubscribe_id: scope.mailB.unsubscribe_id,
+ resubscribe_id: scope.mailB.resubscribe_id,
+ body_html: scope.mailB.body_html,
+ body_text: scope.mailB.body_text,
+ scheduled_date: scope.mailB.scheduled_date,
+ scheduled_id: scope.mailB.scheduled_id,
+ campaign_id: scope.mailB.campaign_id==null ? "" : scope.mailB.campaign_id,
+ header_id: scope.mailB.header_id,
+ footer_id: scope.mailB.footer_id,
+
+ is_completed: scope.mailA.is_completed
});
+
});
}
};
});
+
+
crmMailingAB.directive('nextbutton', function () {
return {
restrict: 'AE',
<tr>
<td class="label">From E-mail Address A</td>
<td>
- <select style="width: 200px" ng-model="currentMailing.from_email" ng-options="frm.email as frm.email for frm in eMailing">
+ <select style="width: 200px" ng-model="mailA.from_email" ng-options="frm.email as frm.email for frm in eMailing">
<option value="">-none-</option>
</select>
</td>
<tr>
<td class="label">From E-mail Address B</td>
<td>
- <select style="width: 200px" ng-model="currentMailing.from_email" ng-options="frm.email as frm.email for frm in eMailing">
+ <select style="width: 200px" ng-model="mailB.from_email" ng-options="frm.email as frm.email for frm in eMailing">
<option value="">-none-</option>
</select>
</td>
<tr>
<td class="label">Reply to E-mail Address</td>
<td>
- <select style="width: 200px" ng-model="currentMailing.replyto_email" ng-options="frm.email as frm.email for frm in eMailing">
+ <select style="width: 200px" ng-model="mailA.replyto_email" ng-options="frm.email as frm.email for frm in eMailing">
<option value="">-none-</option>
</select>
</td>
<tr>
<td class="label">Mailing Subject</td>
<td>
- <input placeholder="Enter Subject" name="subject" type="text" ng-model="currentMailing.subject"/>
+ <input placeholder="Enter Subject" name="subject" type="text" ng-model="mailA.subject"/>
</td>
</tr>
<tr>
<div class="crm-accordion-body">
<br>
       
- <textarea ng-model="currentMailing.body_html" style="width: 600px; height: 300px;"></textarea>
+ <textarea ng-model="mailA.body_html" style="width: 600px; height: 300px;"></textarea>
<br> <br>
</div>
</div>
<br>
       
- <textarea ng-model="currentMailing.body_text" style="width: 600px; height: 300px;"></textarea>
+ <textarea ng-model="mailA.body_text" style="width: 600px; height: 300px;"></textarea>
<br>
</div>
</div>
<tr>
<td class="label">Mailing Header</td>
<td>
- <select ng-model="currentMailing.header_id" ng-options="hf.id as hf.name for hf in headerfooter| filter:isHeader">
+ <select ng-model="mailA.header_id" ng-options="hf.id as hf.name for hf in headerfooter| filter:isHeader">
<option value="">-none-</option>
</select>
</td>
<tr>
<td class="label">Mailing Footer</td>
<td>
- <select ng-model="currentMailing.footer_id" ng-options="f.id as f.name for f in headerfooter| filter:isFooter">
+ <select ng-model="mailA.footer_id" ng-options="f.id as f.name for f in headerfooter| filter:isFooter">
<option value="">-none-</option>
</select>
</td>
</tr>
<tr>
<td>
- <input type="checkbox" ng-model="currentMailing.url_tracking" ng-true-value="1" ng-false-value="0">  Track Click Throughs</input>
+ <input type="checkbox" ng-model="mailA.url_tracking" ng-true-value="1" ng-false-value="0">  Track Click Throughs</input>
</td>
</tr>
<tr>
</tr>
<tr>
<td>
- <input type="checkbox" ng-model="currentMailing.open_tracking" ng-true-value="1" ng-false-value="0">  Track Opens</input>
+ <input type="checkbox" ng-model="mailA.open_tracking" ng-true-value="1" ng-false-value="0">  Track Opens</input>
</td>
</tr>
<tr>
</tr>
<tr ng-show= "trackr(trackreplies)">
<td>
- <input type="checkbox" ng-model="currentMailing.forward_replies" ng-true-value="1" ng-false-value="0">  Forward Replies</input>
+ <input type="checkbox" ng-model="mailA.forward_replies" ng-true-value="1" ng-false-value="0">  Forward Replies</input>
</td>
</tr>
<tr ng-show= "trackr(trackreplies)">
</tr>
<tr ng-show= "trackr(trackreplies)">
<td>
- <input type="checkbox" ng-model="currentMailing.auto_responder" ng-true-value="1" ng-false-value="0">  Auto-Respond to Replies    </input>
+ <input type="checkbox" ng-model="mailA.auto_responder" ng-true-value="1" ng-false-value="0">  Auto-Respond to Replies    </input>
<select ng-model="mailAutoResponder" ng-options="au.id as au.name for au in headerfooter| filter:isAuto">
<option value="">-none-</option>
</select>
<tr>
<td class="label">Mailing Visibility</td>
<td>
- <select ng-model="currentMailing.visibility">
+ <select ng-model="mailA.visibility">
<option value="Public Pages">Public Pages</option>
<option value="User and User Admin Only">User and User Admin Only</option>
</select>
-<div>
-Current Running AB Tests are
- <table>
- <tr>
- <td><h3>Name</h3></td>
- <td><h3>Subject</h3></td>
- </tr>
- <tr ng-repeat="ml in mailList">
- <td>{{ml.name}}</td>
- <td>{{ml.subject}}</td>
- </tr>
- </table>
+<div id="help">
+ All partially completed and completed mail are listed here
+</div>
-</div>
\ No newline at end of file
+<table class="form-layout">
+ <thead>
+ <tr>
+ <th>Mailing Name</th>
+ <!-- <th>Status</th> -->
+ <th>Created By</th>
+ <th>Created Date</th>
+ <th>Sent By</th>
+ <th></th>
+ </tr>
+ </thead>
+ <tr ng-repeat="mailab in mailingabNames">
+ <td>{{mailab.id}}</td>
+ <!-- <td>{{mailStatus[{{$index}}]}}</td> -->
+
+ <td><a ng-href="#/mailing/abtesting/{{mailab.id}}">Edit</a</td>
+ </tr>
+</table>
+
+<div class="action-link">
+ <a ng-href="#/mailing/abtesting/new" class="button"><span>New Mailing</span></a>
+</div>
<div>
-
+ {{tab_val}}
<div ui-jq="tabs" id="alltabs">
<ul>
<h3> What would you like to test ?</h3><br><br>
-   <input type="radio" ng-model="template" ng-value="templates[0]"> Subject Lines <br/><br>
-   <input type="radio" ng-model="template" ng-value="templates[1]"> From Names <br/><br>
-   <input type="radio" ng-model="template" ng-value="templates[2]"> Two different Emails <br/><br>
+   <input type="radio" ng-model="template" ng-value="templates[0]" ng-init="whatnext=2"> Subject Lines <br/><br>
+   <input type="radio" ng-model="template" ng-value="templates[1]" ng-init="whatnext=3"> From Names <br/><br>
+   <input type="radio" ng-model="template" ng-value="templates[2]" ng-init="whatnext=1"> Two different Emails <br/><br>
 
- <div style="position:relative; left:220px; top: 30px;" nextbutton></div>
+ <div style="position:relative; left:220px; top: 30px;" nextbutton></div>
<div style="position:relative; left:300px; top:-1px;" cancelbutton></div>
<div id="tabs-2">
<form>
- <div ng-include="template.url">
+ <div ng-include="template.url"> -->
</div>
<div style="position:relative; left:200px; top:61px;" prevbutton></div>
- <div style="position:relative; left:300px; top: 30px;" nextbutton></div>
+ <div style="position:relative; left:300px; top: 30px;" submitform nextbutton></div>
<div style="position:relative; left:375px; top:-1px;" cancelbutton></div>
- </form>
+ </form >
</div>
<div id="tabs-3">
 <br>
- <select multiple groupselect>
+ <select multiple chsgroup>
<option id="1" ng-repeat="grp in groups" value="{{grp.id}} group include {{grp.title}}"> {{grp.title}}
</option>
<option ng-repeat="grp in groups" value="{{grp.id}} group exclude {{grp.title}}"> {{grp.title}}</option>
<div>
+<div>
+
<table class="form-layout-compressed">
- <tbody>
- <tr>
- <td class="label">From E-mail Address A</td>
- <td>
- <select style="width: 200px" ng-model="currentMailing.from_email" ng-options="frm.email as frm.email for frm in eMailing">
- <option value="">-none-</option>
- </select>
- </td>
- </tr>
+ <tbody>
+ <tr>
+ <td class="label">From E-mail Address</td>
+ <td>
+ <select style="width: 200px" ng-model="mailA.from_email" ng-options="frm.email as frm.email for frm in eMailing">
+ <option value="">-none-</option>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td class="label">Reply to E-mail Address</td>
+ <td>
+ <select style="width: 200px" ng-model="mailA.replyto_email" ng-options="frm.email as frm.email for frm in eMailing">
+ <option value="">-none-</option>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td class="label">Mailing Subject</td>
+ <td>
+ <input placeholder="Enter Subject" name="subject" type="text" ng-model="mailA.subject"/>
+ </td>
+ </tr>
+ <tr>
+ <td class="label">Mailing Subject</td>
+ <td>
+ <input placeholder="Enter Subject" name="subject" type="text" ng-model="mailB.subject"/>
+ </td>
+ </tr>
- <tr>
- <td class="label">Reply to E-mail Address</td>
- <td>
- <select style="width: 200px" ng-model="currentMailing.replyto_email" ng-options="frm.email as frm.email for frm in eMailing">
- <option value="">-none-</option>
- </select>
- </td>
- </tr>
- <tr>
- <td class="label">Mailing Subject A</td>
- <td>
- <input placeholder="Enter Subject" name="subject" type="text" ng-model="currentMailing.subject"/>
- </td>
- </tr>
- <tr>
- <td class="label">Mailing Subject B</td>
- <td>
- <input placeholder="Enter Subject" name="subject" type="text" ng-model="currentMailing.subject"/>
- </td>
- </tr>
- <tr>
- <td class="label" style= "color:red" ng-show="mailing_form.subject.$invalid">
- Mailing subject required.
- </td>
- </tr>
- <tr>
- <td class="label">Use Template</td>
- <td>
- <select ng-change="tmp(tst)" ng-model="tst" ng-options= "mstemp.id as mstemp.msg_title for mstemp in tmpList">
- <option value="">-none-</option>
- </select>
- </td>
- </tr>
- <tr ng-show= "false">
- <td class="label">I want to</td>
- <td class="label">Compose on screen</td>
- <td><input type="radio" ng-model="composeS" value="1" /></td>
- <td class="label">Upload Content</td>
- <td><input type="radio" ng-model="composeS" value="0" /></td>
- </tr>
- </tbody>
+ <tr>
+ <td class="label" style= "color:red" ng-show="mailing_form.subject.$invalid">
+ Mailing subject required.
+ </td>
+ </tr>
+ <tr>
+ <td class="label">Use Template</td>
+ <td>
+ <select ng-change="tmp(tst)" ng-model="tst" ng-options= "mstemp.id as mstemp.msg_title for mstemp in tmpList">
+ <option value="">-none-</option>
+ </select>
+ </td>
+ </tr>
+
+ </tbody>
</table>
<br>
<div class="crm-accordion-wrapper collapsed" >
- <div class="crm-accordion-wrapper collapsed">
- <div class="crm-accordion-header">HTML Format</div>
- <div class="crm-accordion-body">
- <br>
-        
- <textarea ng-model="currentMailing.body_html" style="width: 600px; height: 300px;"></textarea>
- <br> <br>
- </div>
+ <div class="crm-accordion-wrapper collapsed">
+ <div class="crm-accordion-header">HTML Format</div>
+ <div class="crm-accordion-body">
+ <br>
+                                                
+                                                
+                                
+
+ <!--<input type="hidden" groupselect ng-model="token" ></input>-->
+ <br> <br>
+        
+ <textarea id="body_html" ng-model="mailA.body_html" style="width: 600px; height: 300px;"></textarea>
+ <br> <br>
+
</div>
+ </div>
- <div class="crm-accordion-wrapper collapsed">
- <div class="crm-accordion-header">Plain Text</div>
- <div class="crm-accordion-body" >
+ <div class="crm-accordion-wrapper collapsed">
+ <div class="crm-accordion-header">Plain Text</div>
+ <div class="crm-accordion-body" >
- <br>
-        
- <textarea ng-model="currentMailing.body_text" style="width: 600px; height: 300px;"></textarea>
- <br>
- </div>
+ <br>
+        
+ <textarea ng-model="mailA.body_text" style="width: 600px; height: 300px;"></textarea>
+ <br>
</div>
+ </div>
- <table ng-show= "false">
- <tr>
- <td>
- <input type="checkbox">  Save Template</input>
- </tr>
- </table>
+ <table ng-show= "false">
+ <tr>
+ <td>
+ <input type="checkbox">  Save Template</input>
+ </tr>
+ </table>
</div>
<div class="crm-accordion-wrapper collapsed">
- <div class="crm-accordion-header">Header and Footer</div>
- <div class="crm-accordion-body" >
+ <div class="crm-accordion-header">Header and Footer</div>
+ <div class="crm-accordion-body" >
- <body>
- <table>
- <tr>
- <td class="label">Mailing Header</td>
- <td>
- <select ng-model="currentMailing.header_id" ng-options="hf.id as hf.name for hf in headerfooter| filter:isHeader">
- <option value="">-none-</option>
- </select>
- </td>
- </tr>
- <tr>
- <td class="label">Mailing Footer</td>
- <td>
- <select ng-model="currentMailing.footer_id" ng-options="f.id as f.name for f in headerfooter| filter:isFooter">
- <option value="">-none-</option>
- </select>
- </td>
- </tr>
- </table>
- </body>
- </div>
+ <body>
+ <table>
+ <tr>
+ <td class="label">Mailing Header</td>
+ <td>
+ <select ng-model="mailA.header_id" ng-options="hf.id as hf.name for hf in headerfooter| filter:isHeader">
+ <option value="">-none-</option>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td class="label">Mailing Footer</td>
+ <td>
+ <select ng-model="mailA.footer_id" ng-options="f.id as f.name for f in headerfooter| filter:isFooter">
+ <option value="">-none-</option>
+ </select>
+ </td>
+ </tr>
+ </table>
+ </body>
+ </div>
</div>
<div class="crm-accordion-wrapper collapsed">
- <div class="crm-accordion-header">Track and Respond</div>
- <div class="crm-accordion-body" >
+ <div class="crm-accordion-header">Track and Respond</div>
+ <div class="crm-accordion-body" >
- <table class="form-layout-compressed">
- <tbody>
- <tr>
- <td>
- <h3 style ="text-decoration:underline"> Tracking</h3>
- </td>
- </tr>
- <tr>
- <td>
- <input type="checkbox" ng-model="currentMailing.url_tracking" ng-true-value="1" ng-false-value="0">  Track Click Throughs</input>
- </td>
- </tr>
- <tr>
- <td>
- <div id="help">
- Track the number of times recipients click each link in this mailing. NOTE: When this feature is enabled, all links in the message body will be automaticallly re-written to route through your CiviCRM server prior to redirecting to the target page.
- </div>
- </td>
- </tr>
- <tr>
- <td>
- <input type="checkbox" ng-model="currentMailing.open_tracking" ng-true-value="1" ng-false-value="0">  Track Opens</input>
- </td>
- </tr>
- <tr>
- <td>
- <div id="help">
- Track the number of times recipients open this mailing in their email software.
- </div>
- </td>
- </tr>
- <tr>
- <td>
- <h3 style ="text-decoration:underline">Responding</h3>
- </td>
- </tr>
- <tr>
- <td>
- <input type="checkbox" ng-model="trackreplies" ng-change= "reply()" ng-true-value="1" ng-false-value="0">  Track Replies</input>
- </td>
- </tr>
- <tr>
- <td>
- <div id="help">
- Recipients' replies are sent to a CiviMail specific address instead of the sender's address so they can be stored within CiviCRM.
- </div>
- </td>
- </tr>
- <tr ng-show= "trackr(trackreplies)">
- <td>
- <input type="checkbox" ng-model="currentMailing.forward_replies" ng-true-value="1" ng-false-value="0">  Forward Replies</input>
- </td>
- </tr>
- <tr ng-show= "trackr(trackreplies)">
- <td>
- <div id="help">
- If a recipient replies to this mailing, forward the reply to the FROM Email address specified for the mailing.
- </div>
- </td>
- </tr>
- <tr ng-show= "trackr(trackreplies)">
- <td>
- <input type="checkbox" ng-model="currentMailing.auto_responder" ng-true-value="1" ng-false-value="0">  Auto-Respond to Replies    </input>
- <select ng-model="mailAutoResponder" ng-options="au.id as au.name for au in headerfooter| filter:isAuto">
- <option value="">-none-</option>
- </select>
- </td>
- </tr>
- <tr ng-show= "trackr(trackreplies)">
- <td>
- <div id="help">
- If a recipient replies to this mailing, send an automated reply using the selected message.
- </div>
- </td>
- </tr>
- <tr>
- <td>
- <h3 style ="text-decoration:underline"> Online Publication</h3>
- </td>
- </tr>
- </table>
-
- <table class="form-layout-compressed">
- <tr>
- <td class="label">Mailing Visibility</td>
- <td>
- <select ng-model="currentMailing.visibility">
- <option value="Public Pages">Public Pages</option>
- <option value="User and User Admin Only">User and User Admin Only</option>
- </select>
- </td>
- </tbody>
- </table>
- </div>
+ <table class="form-layout-compressed">
+ <tbody>
+ <tr>
+ <td>
+ <h3 style ="text-decoration:underline"> Tracking</h3>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <input type="checkbox" ng-model="mailA.url_tracking" ng-true-value="1" ng-false-value="0">  Track Click Throughs</input>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <div id="help">
+ Track the number of times recipients click each link in this mailing. NOTE: When this feature is enabled, all links in the message body will be automaticallly re-written to route through your CiviCRM server prior to redirecting to the target page.
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <input type="checkbox" ng-model="mailA.open_tracking" ng-true-value="1" ng-false-value="0">  Track Opens</input>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <div id="help">
+ Track the number of times recipients open this mailing in their email software.
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <h3 style ="text-decoration:underline">Responding</h3>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <input type="checkbox" ng-model="trackreplies" ng-change= "reply()" ng-true-value="1" ng-false-value="0">  Track Replies</input>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <div id="help">
+ Recipients' replies are sent to a CiviMail specific address instead of the sender's address so they can be stored within CiviCRM.
+ </div>
+ </td>
+ </tr>
+ <tr ng-show= "trackr(trackreplies)">
+ <td>
+ <input type="checkbox" ng-model="mailA.forward_replies" ng-true-value="1" ng-false-value="0">  Forward Replies</input>
+ </td>
+ </tr>
+ <tr ng-show= "trackr(trackreplies)">
+ <td>
+ <div id="help">
+ If a recipient replies to this mailing, forward the reply to the FROM Email address specified for the mailing.
+ </div>
+ </td>
+ </tr>
+ <tr ng-show= "trackr(trackreplies)">
+ <td>
+ <input type="checkbox" ng-model="mailA.auto_responder" ng-true-value="1" ng-false-value="0">  Auto-Respond to Replies    </input>
+ <select ng-model="mailAutoResponder" ng-options="au.id as au.name for au in headerfooter| filter:isAuto">
+ <option value="">-none-</option>
+ </select>
+ </td>
+ </tr>
+ <tr ng-show= "trackr(trackreplies)">
+ <td>
+ <div id="help">
+ If a recipient replies to this mailing, send an automated reply using the selected message.
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <h3 style ="text-decoration:underline"> Online Publication</h3>
+ </td>
+ </tr>
+ </table>
+
+ <table class="form-layout-compressed">
+ <tr>
+ <td class="label">Mailing Visibility</td>
+ <td>
+ <select ng-model="mailA.visibility">
+ <option value="Public Pages">Public Pages</option>
+ <option value="User and User Admin Only">User and User Admin Only</option>
+ </select>
+ </td>
+ </tbody>
+ </table>
+ </div>
+</div>
</div>
</div>
\ No newline at end of file
<div id="tabs-21">
<div>
+ {{mailA}}
<table class="form-layout-compressed">
+
<tbody>
<tr>
- <td class="label">From E-mail Address A</td>
- <td>
- <select style="width: 200px" ng-model="currentMailing.from_email" ng-options="frm.email as frm.email for frm in eMailing">
- <option value="">-none-</option>
- </select>
- </td>
+ <td class="label">From E-mail Address</td>
+ <td>
+ {{mailA.subject}}
+ <select style="width: 200px" ng-model="mailA.from_email" ng-options="frm.email as frm.email for frm in eMailing">
+ <option value="">-none-</option>
+ </select>
+ </td>
</tr>
-
<tr>
- <td class="label">Reply to E-mail Address</td>
- <td>
- <select style="width: 200px" ng-model="currentMailing.replyto_email" ng-options="frm.email as frm.email for frm in eMailing">
- <option value="">-none-</option>
- </select>
- </td>
+ <td class="label">Reply to E-mail Address</td>
+ <td>
+ <select style="width: 200px" ng-model="mailA.replyto_email" ng-options="frm.email as frm.email for frm in eMailing">
+ <option value="">-none-</option>
+ </select>
+ </td>
</tr>
<tr>
<td class="label">Mailing Subject</td>
<td>
- <input placeholder="Enter Subject" name="subject" type="text" ng-model="currentMailing.subject"/>
+ <input placeholder="Enter Subject" name="subject" type="text" ng-model="mailA.subject"/>
</td>
</tr>
</td>
</tr>
<tr>
- <td class="label">Use Template</td>
- <td>
- <select ng-change="tmp(tst)" ng-model="tst" ng-options= "mstemp.id as mstemp.msg_title for mstemp in tmpList">
- <option value="">-none-</option>
- </select>
- </td>
- </tr>
- <tr ng-show= "false">
- <td class="label">I want to</td>
- <td class="label">Compose on screen</td>
- <td><input type="radio" ng-model="composeS" value="1" /></td>
- <td class="label">Upload Content</td>
- <td><input type="radio" ng-model="composeS" value="0" /></td>
+ <td class="label">Use Template</td>
+ <td>
+ <select ng-change="tmp(tst)" ng-model="tst" ng-options= "mstemp.id as mstemp.msg_title for mstemp in tmpList">
+ <option value="">-none-</option>
+ </select>
+ </td>
</tr>
+
</tbody>
</table>
<div class="crm-accordion-wrapper collapsed">
<div class="crm-accordion-header">HTML Format</div>
<div class="crm-accordion-body">
- <br>
-        
- <textarea ng-model="currentMailing.body_html" style="width: 600px; height: 300px;"></textarea>
- <br> <br>
+ <br>
+                                                
+                                                
+                                
+ ss
+ <!-- <input type="hidden" groupselect ng-model="token" ></input>-->
+ <br> <br>
+        
+ <textarea id="body_html" ng-model="mailA.body_html" style="width: 600px; height: 300px;"></textarea>
+ <br> <br>
+
</div>
</div>
<br>
       
- <textarea ng-model="currentMailing.body_text" style="width: 600px; height: 300px;"></textarea>
+ <textarea ng-model="mailA.body_text" style="width: 600px; height: 300px;"></textarea>
<br>
</div>
</div>
<tr>
<td class="label">Mailing Header</td>
<td>
- <select ng-model="currentMailing.header_id" ng-options="hf.id as hf.name for hf in headerfooter| filter:isHeader">
+ <select ng-model="mailA.header_id" ng-options="hf.id as hf.name for hf in headerfooter| filter:isHeader">
<option value="">-none-</option>
</select>
</td>
<tr>
<td class="label">Mailing Footer</td>
<td>
- <select ng-model="currentMailing.footer_id" ng-options="f.id as f.name for f in headerfooter| filter:isFooter">
+ <select ng-model="mailA.footer_id" ng-options="f.id as f.name for f in headerfooter| filter:isFooter">
<option value="">-none-</option>
</select>
</td>
</tr>
<tr>
<td>
- <input type="checkbox" ng-model="currentMailing.url_tracking" ng-true-value="1" ng-false-value="0">  Track Click Throughs</input>
+ <input type="checkbox" ng-model="mailA.url_tracking" ng-true-value="1" ng-false-value="0">  Track Click Throughs</input>
</td>
</tr>
<tr>
</tr>
<tr>
<td>
- <input type="checkbox" ng-model="currentMailing.open_tracking" ng-true-value="1" ng-false-value="0">  Track Opens</input>
+ <input type="checkbox" ng-model="mailA.open_tracking" ng-true-value="1" ng-false-value="0">  Track Opens</input>
</td>
</tr>
<tr>
</tr>
<tr ng-show= "trackr(trackreplies)">
<td>
- <input type="checkbox" ng-model="currentMailing.forward_replies" ng-true-value="1" ng-false-value="0">  Forward Replies</input>
+ <input type="checkbox" ng-model="mailA.forward_replies" ng-true-value="1" ng-false-value="0">  Forward Replies</input>
</td>
</tr>
<tr ng-show= "trackr(trackreplies)">
</tr>
<tr ng-show= "trackr(trackreplies)">
<td>
- <input type="checkbox" ng-model="currentMailing.auto_responder" ng-true-value="1" ng-false-value="0">  Auto-Respond to Replies    </input>
+ <input type="checkbox" ng-model="mailA.auto_responder" ng-true-value="1" ng-false-value="0">  Auto-Respond to Replies    </input>
<select ng-model="mailAutoResponder" ng-options="au.id as au.name for au in headerfooter| filter:isAuto">
<option value="">-none-</option>
</select>
<tr>
<td class="label">Mailing Visibility</td>
<td>
- <select ng-model="currentMailing.visibility">
+ <select ng-model="mailA.visibility">
<option value="Public Pages">Public Pages</option>
<option value="User and User Admin Only">User and User Admin Only</option>
</select>
</div>
</div>
</div>
+
+ <!-- ---------------------------------------- ######## ------------------------------------------ -->
+
<div id="tabs-22">
+
<div>
<table class="form-layout-compressed">
- <tbody>
- <tr>
- <td class="label">From E-mail Address A</td>
- <td>
- <select style="width: 200px" ng-model="currentMailing.from_email" ng-options="frm.email as frm.email for frm in eMailing">
- <option value="">-none-</option>
- </select>
- </td>
- </tr>
+ <tbody>
+ <tr>
+ <td class="label">From E-mail Address</td>
+ <td>
+ <select style="width: 200px" ng-model="mailB.from_email" ng-options="frm.email as frm.email for frm in eMailing">
+ <option value="">-none-</option>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td class="label">Reply to E-mail Address</td>
+ <td>
+ <select style="width: 200px" ng-model="mailB.replyto_email" ng-options="frm.email as frm.email for frm in eMailing">
+ <option value="">-none-</option>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td class="label">Mailing Subject</td>
+ <td>
+ <input placeholder="Enter Subject" name="subject" type="text" ng-model="mailB.subject"/>
+ </td>
+ </tr>
- <tr>
- <td class="label">Reply to E-mail Address</td>
- <td>
- <select style="width: 200px" ng-model="currentMailing.replyto_email" ng-options="frm.email as frm.email for frm in eMailing">
- <option value="">-none-</option>
- </select>
- </td>
- </tr>
- <tr>
- <td class="label">Mailing Subject</td>
- <td>
- <input placeholder="Enter Subject" name="subject" type="text" ng-model="currentMailing.subject"/>
- </td>
- </tr>
+ <tr>
+ <td class="label" style= "color:red" ng-show="mailing_form.subject.$invalid">
+ Mailing subject required.
+ </td>
+ </tr>
+ <tr>
+ <td class="label">Use Template</td>
+ <td>
+ <select ng-change="tmp(tst)" ng-model="tst" ng-options= "mstemp.id as mstemp.msg_title for mstemp in tmpList">
+ <option value="">-none-</option>
+ </select>
+ </td>
+ </tr>
- <tr>
- <td class="label" style= "color:red" ng-show="mailing_form.subject.$invalid">
- Mailing subject required.
- </td>
- </tr>
- <tr>
- <td class="label">Use Template</td>
- <td>
- <select ng-change="tmp(tst)" ng-model="tst" ng-options= "mstemp.id as mstemp.msg_title for mstemp in tmpList">
- <option value="">-none-</option>
- </select>
- </td>
- </tr>
- <tr ng-show= "false">
- <td class="label">I want to</td>
- <td class="label">Compose on screen</td>
- <td><input type="radio" ng-model="composeS" value="1" /></td>
- <td class="label">Upload Content</td>
- <td><input type="radio" ng-model="composeS" value="0" /></td>
- </tr>
- </tbody>
+ </tbody>
</table>
<br>
<div class="crm-accordion-wrapper collapsed" >
- <div class="crm-accordion-wrapper collapsed">
- <div class="crm-accordion-header">HTML Format</div>
- <div class="crm-accordion-body">
- <br>
-        
- <textarea ng-model="currentMailing.body_html" style="width: 600px; height: 300px;"></textarea>
- <br> <br>
- </div>
+ <div class="crm-accordion-wrapper collapsed">
+ <div class="crm-accordion-header">HTML Format</div>
+ <div class="crm-accordion-body">
+ <br>
+                                                
+                                                
+                                
+
+ <!-- <input type="hidden" groupselect ng-model="token" ></input>-->
+ <br> <br>
+        
+ <textarea id="body_html" ng-model="mailB.body_html" style="width: 600px; height: 300px;"></textarea>
+ <br> <br>
+
</div>
+ </div>
- <div class="crm-accordion-wrapper collapsed">
- <div class="crm-accordion-header">Plain Text</div>
- <div class="crm-accordion-body" >
+ <div class="crm-accordion-wrapper collapsed">
+ <div class="crm-accordion-header">Plain Text</div>
+ <div class="crm-accordion-body" >
- <br>
-        
- <textarea ng-model="currentMailing.body_text" style="width: 600px; height: 300px;"></textarea>
- <br>
- </div>
+ <br>
+        
+ <textarea ng-model="mailB.body_text" style="width: 600px; height: 300px;"></textarea>
+ <br>
</div>
+ </div>
- <table ng-show= "false">
- <tr>
- <td>
- <input type="checkbox">  Save Template</input>
- </tr>
- </table>
+ <table ng-show= "false">
+ <tr>
+ <td>
+ <input type="checkbox">  Save Template</input>
+ </tr>
+ </table>
</div>
<div class="crm-accordion-wrapper collapsed">
- <div class="crm-accordion-header">Header and Footer</div>
- <div class="crm-accordion-body" >
+ <div class="crm-accordion-header">Header and Footer</div>
+ <div class="crm-accordion-body" >
- <body>
- <table>
- <tr>
- <td class="label">Mailing Header</td>
- <td>
- <select ng-model="currentMailing.header_id" ng-options="hf.id as hf.name for hf in headerfooter| filter:isHeader">
- <option value="">-none-</option>
- </select>
- </td>
- </tr>
- <tr>
- <td class="label">Mailing Footer</td>
- <td>
- <select ng-model="currentMailing.footer_id" ng-options="f.id as f.name for f in headerfooter| filter:isFooter">
- <option value="">-none-</option>
- </select>
- </td>
- </tr>
- </table>
- </body>
- </div>
+ <body>
+ <table>
+ <tr>
+ <td class="label">Mailing Header</td>
+ <td>
+ <select ng-model="mailB.header_id" ng-options="hf.id as hf.name for hf in headerfooter| filter:isHeader">
+ <option value="">-none-</option>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td class="label">Mailing Footer</td>
+ <td>
+ <select ng-model="mailB.footer_id" ng-options="f.id as f.name for f in headerfooter| filter:isFooter">
+ <option value="">-none-</option>
+ </select>
+ </td>
+ </tr>
+ </table>
+ </body>
+ </div>
</div>
<div class="crm-accordion-wrapper collapsed">
- <div class="crm-accordion-header">Track and Respond</div>
- <div class="crm-accordion-body" >
+ <div class="crm-accordion-header">Track and Respond</div>
+ <div class="crm-accordion-body" >
- <table class="form-layout-compressed">
- <tbody>
- <tr>
- <td>
- <h3 style ="text-decoration:underline"> Tracking</h3>
- </td>
- </tr>
- <tr>
- <td>
- <input type="checkbox" ng-model="currentMailing.url_tracking" ng-true-value="1" ng-false-value="0">  Track Click Throughs</input>
- </td>
- </tr>
- <tr>
- <td>
- <div id="help">
- Track the number of times recipients click each link in this mailing. NOTE: When this feature is enabled, all links in the message body will be automaticallly re-written to route through your CiviCRM server prior to redirecting to the target page.
- </div>
- </td>
- </tr>
- <tr>
- <td>
- <input type="checkbox" ng-model="currentMailing.open_tracking" ng-true-value="1" ng-false-value="0">  Track Opens</input>
- </td>
- </tr>
- <tr>
- <td>
- <div id="help">
- Track the number of times recipients open this mailing in their email software.
- </div>
- </td>
- </tr>
- <tr>
- <td>
- <h3 style ="text-decoration:underline">Responding</h3>
- </td>
- </tr>
- <tr>
- <td>
- <input type="checkbox" ng-model="trackreplies" ng-change= "reply()" ng-true-value="1" ng-false-value="0">  Track Replies</input>
- </td>
- </tr>
- <tr>
- <td>
- <div id="help">
- Recipients' replies are sent to a CiviMail specific address instead of the sender's address so they can be stored within CiviCRM.
- </div>
- </td>
- </tr>
- <tr ng-show= "trackr(trackreplies)">
- <td>
- <input type="checkbox" ng-model="currentMailing.forward_replies" ng-true-value="1" ng-false-value="0">  Forward Replies</input>
- </td>
- </tr>
- <tr ng-show= "trackr(trackreplies)">
- <td>
- <div id="help">
- If a recipient replies to this mailing, forward the reply to the FROM Email address specified for the mailing.
- </div>
- </td>
- </tr>
- <tr ng-show= "trackr(trackreplies)">
- <td>
- <input type="checkbox" ng-model="currentMailing.auto_responder" ng-true-value="1" ng-false-value="0">  Auto-Respond to Replies    </input>
- <select ng-model="mailAutoResponder" ng-options="au.id as au.name for au in headerfooter| filter:isAuto">
- <option value="">-none-</option>
- </select>
- </td>
- </tr>
- <tr ng-show= "trackr(trackreplies)">
- <td>
- <div id="help">
- If a recipient replies to this mailing, send an automated reply using the selected message.
- </div>
- </td>
- </tr>
- <tr>
- <td>
- <h3 style ="text-decoration:underline"> Online Publication</h3>
- </td>
- </tr>
- </table>
-
- <table class="form-layout-compressed">
- <tr>
- <td class="label">Mailing Visibility</td>
- <td>
- <select ng-model="currentMailing.visibility">
- <option value="Public Pages">Public Pages</option>
- <option value="User and User Admin Only">User and User Admin Only</option>
- </select>
- </td>
- </tbody>
- </table>
- </div>
+ <table class="form-layout-compressed">
+ <tbody>
+ <tr>
+ <td>
+ <h3 style ="text-decoration:underline"> Tracking</h3>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <input type="checkbox" ng-model="mailB.url_tracking" ng-true-value="1" ng-false-value="0">  Track Click Throughs</input>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <div id="help">
+ Track the number of times recipients click each link in this mailing. NOTE: When this feature is enabled, all links in the message body will be automaticallly re-written to route through your CiviCRM server prior to redirecting to the target page.
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <input type="checkbox" ng-model="mailB.open_tracking" ng-true-value="1" ng-false-value="0">  Track Opens</input>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <div id="help">
+ Track the number of times recipients open this mailing in their email software.
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <h3 style ="text-decoration:underline">Responding</h3>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <input type="checkbox" ng-model="trackreplies" ng-change= "reply()" ng-true-value="1" ng-false-value="0">  Track Replies</input>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <div id="help">
+ Recipients' replies are sent to a CiviMail specific address instead of the sender's address so they can be stored within CiviCRM.
+ </div>
+ </td>
+ </tr>
+ <tr ng-show= "trackr(trackreplies)">
+ <td>
+ <input type="checkbox" ng-model="mailB.forward_replies" ng-true-value="1" ng-false-value="0">  Forward Replies</input>
+ </td>
+ </tr>
+ <tr ng-show= "trackr(trackreplies)">
+ <td>
+ <div id="help">
+ If a recipient replies to this mailing, forward the reply to the FROM Email address specified for the mailing.
+ </div>
+ </td>
+ </tr>
+ <tr ng-show= "trackr(trackreplies)">
+ <td>
+ <input type="checkbox" ng-model="mailB.auto_responder" ng-true-value="1" ng-false-value="0">  Auto-Respond to Replies    </input>
+ <select ng-model="mailAutoResponder" ng-options="au.id as au.name for au in headerfooter| filter:isAuto">
+ <option value="">-none-</option>
+ </select>
+ </td>
+ </tr>
+ <tr ng-show= "trackr(trackreplies)">
+ <td>
+ <div id="help">
+ If a recipient replies to this mailing, send an automated reply using the selected message.
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <h3 style ="text-decoration:underline"> Online Publication</h3>
+ </td>
+ </tr>
+ </table>
+
+ <table class="form-layout-compressed">
+ <tr>
+ <td class="label">Mailing Visibility</td>
+ <td>
+ <select ng-model="mailB.visibility">
+ <option value="Public Pages">Public Pages</option>
+ <option value="User and User Admin Only">User and User Admin Only</option>
+ </select>
+ </td>
+ </tbody>
+ </table>
+ </div>
</div>
</div>
<type>int unsigned</type>
<add>4.5</add>
</field>
+
</table>
\ No newline at end of file