1 <md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">
2 <form name="outboundrouteFormApp" class="md-inline-form" novalidate>
3 <md-toolbar class="md-accent md-hue-2">
4 <div class="md-toolbar-tools" layout="row" layout-align="space-between center">
5 <span class="title">{{ vm.title | translate }}</span>
6 <md-button class="md-icon-button" ng-click="vm.closeDialog()">
7 <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>
12 <md-dialog-content ms-scroll>
13 <div class="error-list">
14 <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">
16 <span class="message">{{error.message}}</span>
17 <span class="type">({{error.type}})</span>
19 <md-button class="md-icon-button">
20 <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>
24 <md-input-container class="md-block">
25 <label translate="VOICE.TRUNK">Trunk</label>
26 <md-select ng-model="vm.outbounddial.trunk" required md-autofocus>
27 <md-option ng-value="trunk.name" ng-repeat="trunk in vm.trunks">{{ trunk.name }}</md-option>
29 <div ng-messages="outboundrouteFormApp.trunk.$error" ng-show="outboundrouteFormApp.trunk.$touched" role="alert">
30 <div ng-message="required">
31 <span translate="VOICE.ERRORS.TRUNK_REQUIRED">Trunk field is required</span>
35 <md-input-container class="md-block">
36 <label translate="VOICE.CALLER_ID">Caller_ID</label>
37 <input type="text" name="callerID" ng-model="vm.outbounddial.callerID">
38 <div ng-messages="outboundrouteFormApp.callerID.$error" ng-show="outboundrouteFormApp.callerID.$touched" role="alert">
39 <div ng-message="required">
40 <span translate="VOICE.ERRORS.CALLER_ID_REQUIRED">Caller_ID field is required</span>
44 <md-input-container class="md-block">
45 <label translate="VOICE.PREFIX">Prefix</label>
46 <input type="text" name="prefix" ng-model="vm.outbounddial.prefix">
47 <div ng-messages="outboundrouteFormApp.prefix.$error" ng-show="outboundrouteFormApp.prefix.$touched" role="alert">
48 <div ng-message="required">
49 <span translate="VOICE.ERRORS.PREFIX_REQUIRED">Prefix field is required</span>
53 <md-input-container class="md-block">
54 <label translate="VOICE.CUTDIGITS">CutDigits</label>
55 <input type="number" name="cutdigits" ng-model="vm.outbounddial.cutdigits" min="0">
56 <div ng-messages="outboundrouteFormApp.cutdigits.$error" ng-show="outboundrouteFormApp.cutdigits.$touched" role="alert">
57 <div ng-message="required">
58 <span translate="VOICE.ERRORS.CUTDIGITS_REQUIRED">CutDigits field is required</span>
62 <md-input-container class="md-block">
63 <label translate="VOICE.RECORDING">Recording</label>
64 <md-select ng-model="vm.outbounddial.recordingFormat" required>
65 <md-option ng-value="'none'">none</md-option>
66 <md-option ng-value="'wav'">wav</md-option>
67 <md-option ng-value="'gsm'">gsm</md-option>
69 <div class="hint"><span translate="VOICE.HELP.RECORDING"></span></div>
70 <div ng-messages="outboundrouteFormApp.recordingFormat.$error" ng-show="outboundrouteFormApp.recordingFormat.$touched" role="alert">
71 <div ng-message="required">
72 <span translate="VOICE.ERRORS.RECORDING_REQUIRED">Recording field is required</span>
76 <md-input-container class="md-block">
77 <label translate="VOICE.TAGS">Tags</label>
78 <md-select ng-model="vm.outbounddial.tag">
79 <md-option ng-value="tag.name" ng-repeat="tag in vm.tags">{{ tag.name }}</md-option>
80 <md-option ng-value="'--'">None</md-option>
82 <div ng-messages="outboundrouteFormApp.tag.$error" ng-show="outboundrouteFormApp.tag.$touched" role="alert">
83 <div ng-message="required">
84 <span translate="VOICE.ERRORS.TAGS_REQUIRED">Tags field is required</span>
88 <md-input-container class="md-block">
89 <label translate="VOICE.TIMEOUT">Timeout</label>
90 <input type="number" name="timeout" ng-model="vm.outbounddial.timeout" min="0">
91 <div ng-messages="outboundrouteFormApp.timeout.$error" ng-show="outboundrouteFormApp.timeout.$touched" role="alert">
92 <div ng-message="required">
93 <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>
97 <md-input-container class="md-block">
98 <label translate="VOICE.OPTIONS">Options</label>
99 <input type="text" name="options" ng-model="vm.outbounddial.options">
100 <div ng-messages="outboundrouteFormApp.options.$error" ng-show="outboundrouteFormApp.options.$touched" role="alert">
101 <div ng-message="required">
102 <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>
105 </md-input-container>
106 <md-input-container class="md-block">
107 <label translate="VOICE.URL">Url</label>
108 <input type="text" name="url" ng-model="vm.outbounddial.url">
109 <div ng-messages="outboundrouteFormApp.url.$error" ng-show="outboundrouteFormApp.url.$touched" role="alert">
110 <div ng-message="required">
111 <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>
114 </md-input-container>
116 <div class="error-list">
117 <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">
119 <span class="message">{{error.message}}</span>
120 <span class="type">({{error.type}})</span>
122 <md-button class="md-icon-button">
123 <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>
129 <md-dialog-actions layout="row" layout-align="space-between center">
130 <div layout="row" layout-align="start center">
131 <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">