| 1 | <div class="crm-block" ng-form="setupForm" crm-ui-id-scope> |
| 2 | <div class="crm-group"> |
| 3 | <div class="help" ng-if="fields.help"> |
| 4 | {{ts('A/B testing allows you to send two test mailings to a random subset of your recipients. After collecting and comparing metrics, the more successful mailing will be sent to the remaining recipients.')}} |
| 5 | </div> |
| 6 | <div crm-ui-field="{name: 'setupForm.abName', title: ts('Name'), help: hs('name')}" ng-if="fields.abName"> |
| 7 | <input |
| 8 | crm-ui-id="setupForm.abName" |
| 9 | name="abName" |
| 10 | ng-model="abtest.ab.name" |
| 11 | class="crm-form-text" |
| 12 | placeholder="A/B Test Name" |
| 13 | required/> |
| 14 | </div> |
| 15 | <div crm-ui-field="{name: 'setupForm.campaign', title: ts('Campaign'), help: hs({id: 'id-campaign_id', file: 'CRM/Campaign/Form/addCampaignToComponent'})}" ng-show="crmMailingConst.campaignEnabled" |
| 16 | ng-if="fields.campaign"> |
| 17 | <input |
| 18 | crm-entityref="{entity: 'Campaign', select: {allowClear: true, placeholder: ts('Select Campaign')}}" |
| 19 | crm-ui-id="setupForm.campaign" |
| 20 | name="campaign" |
| 21 | ng-model="abtest.mailings.a.campaign_id" |
| 22 | ng-change="abtest.mailings.b.campaign_id=abtest.mailings.a.campaign_id" |
| 23 | /> |
| 24 | </div> |
| 25 | <div crm-ui-field="{title: ts('Test Type')}" ng-if="fields.testing_criteria"> |
| 26 | <div ng-repeat="criteria in crmMailingABCriteria.getAll()"> |
| 27 | <label> |
| 28 | <input name="testing_criteria" ng-model="abtest.ab.testing_criteria" type="radio" |
| 29 | value="{{criteria.value}}" required/> |
| 30 | {{criteria.label}} |
| 31 | </label> |
| 32 | </div> |
| 33 | </div> |
| 34 | <div crm-ui-field="{name: 'setupForm.recipients', title: ts('Recipients')}" ng-if="fields.recipients"> |
| 35 | <div crm-mailing-block-recipients="{name: 'recipients', id: 'setupForm.recipients'}" crm-mailing="abtest.mailings.a"></div> |
| 36 | </div> |
| 37 | <div crm-ui-field="{title: ts('Distribution')}" ng-if="fields.group_percentage"> |
| 38 | <div crm-mailing-ab-slider ng-model="abtest.ab.group_percentage"></div> |
| 39 | </div> |
| 40 | <div crm-ui-field="{title: ts('Send')}" ng-if="fields.scheduled_date"> |
| 41 | <div crm-mailing-radio-date="schedule" ng-model="abtest.mailings.a.scheduled_date"> |
| 42 | <div> |
| 43 | <input ng-model="schedule.mode" type="radio" name="send" value="now" id="schedule-send-now"/> |
| 44 | <label for="schedule-send-now">{{ts('Send A/B test immediately')}}</label> |
| 45 | </div> |
| 46 | <div> |
| 47 | <input ng-model="schedule.mode" type="radio" name="send" value="at" id="schedule-send-at"/> |
| 48 | <label for="schedule-send-at">{{ts('Send A/B test at:')}}</label> |
| 49 | <input crm-ui-datepicker ng-model="schedule.datetime"/> |
| 50 | </div> |
| 51 | </div> |
| 52 | </div> |
| 53 | <div crm-ui-field="{title: ts('Assess')}" ng-if="fields.declare_winning_time"> |
| 54 | <div crm-mailing-radio-date="assessSched" ng-model="abtest.ab.declare_winning_time"> |
| 55 | <div> |
| 56 | <input ng-model="assessSched.mode" type="radio" name="assess" value="now" id="schedule-assess-now"/> |
| 57 | <label for="schedule-assess-now">{{ts('Assess A/B results on an on-going basis')}}</label> |
| 58 | </div> |
| 59 | <div> |
| 60 | <input ng-model="assessSched.mode" type="radio" name="assess" value="at" id="schedule-assess-at"/> |
| 61 | <label for="schedule-assess-at">{{ts('Assess A/B test at:')}}</label> |
| 62 | <input crm-ui-datepicker ng-model="assessSched.datetime"/> |
| 63 | </div> |
| 64 | </div> |
| 65 | </div> |
| 66 | </div> |
| 67 | </div> |