1 <md-dialog class="inboundroute-dialog" aria-label="New Interval">
2 <form name="intervalForm" 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>
26 <md-input-container class="md-block">
27 <label translate="TOOLS.TYPE">Type</label>
28 <md-select ng-model="vm.type">
29 <md-option ng-value="type" ng-repeat='type in vm.types'>{{ type | ucfirst }}</md-option>
33 <md-input-container class="md-block" ng-if="vm.type === 'list'">
34 <label translate="TOOLS.INTERVALS">Intervals</label>
35 <md-select ng-model="vm.interval.IntervalId">
36 <md-option ng-value="interval.id" ng-repeat="interval in vm.intervals.rows">{{ interval.name }}</md-option>
40 <!-- TIMERANGE START -->
41 <label ng-if="vm.type === 'custom'" translate="TOOLS.TIME_RANGE">Time Range</label>
42 <div layout=row ng-if="vm.type === 'custom'">
43 <div class="md-block" flex>
44 <mdp-time-picker name="timeRangeFrom" mdp-placeholder="FROM" ng-model="vm.timeRangeFrom" mdp-format="HH:mm" mdp-auto-switch="true">
45 <div ng-messages="intervalForm.timeRangeFrom.$error" ng-show="intervalForm.timeRangeFrom.$touched" role="alert">
46 <div ng-message="format">
47 <span translate="TOOLS.ERRORS.TIME_RANGE_FROM_INVALID">Time Range From field is invalid</span>
52 <div class="md-block" flex>
53 <mdp-time-picker name="timeRangeTo" mdp-placeholder="TO" ng-model="vm.timeRangeTo" mdp-format="HH:mm" mdp-auto-switch="true">
54 <div ng-messages="intervalForm.timeRangeTo.$error" ng-show="intervalForm.timeRangeTo.$touched" role="alert">
55 <div ng-message="format">
56 <span translate="TOOLS.ERRORS.TIME_RANGE_TO_INVALID">Time Range To field is invalid</span>
62 <!-- TIMERANGE END -->
64 <!-- DAYSOFWEEK START -->
65 <label ng-if="vm.type === 'custom'" translate="TOOLS.WEEK_DAYS">Time Range</label>
66 <div layout=row ng-if="vm.type === 'custom'">
67 <md-input-container flex class="md-block">
68 <label translate="TOOLS.FROM">From</label>
69 <md-select ng-model="vm.dayOfWeekFrom">
70 <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>
71 <md-option ng-value="day.value" ng-repeat="day in vm.daysOfWeek"><span translate="TOOLS.{{day.value | uppercase}}">{{ day.value | ucfirst }}</span></md-option>
75 <md-input-container flex class="md-block" ng-if="vm.dayOfWeekFrom">
76 <label translate="TOOLS.TO">To</label>
77 <md-select ng-model="vm.dayOfWeekTo">
78 <md-option ng-value="day.value" ng-repeat="day in vm.daysOfWeek"><span translate="TOOLS.{{day.value | uppercase}}">{{ day.value | ucfirst }}</span></md-option>
82 <!-- DAYSOFWEEK END -->
84 <!-- MONTHDAY START -->
85 <label ng-if="vm.type === 'custom'" translate="TOOLS.MONTH_DAYS">Time Range</label>
86 <div layout=row ng-if="vm.type === 'custom'">
87 <md-input-container flex layout="column" class="md-block">
88 <label translate="TOOLS.FROM">From</label>
89 <md-select ng-model="vm.monthDayFrom">
90 <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>
91 <md-option ng-value="month" ng-repeat="month in vm.daysOfMonth">{{ month }}</md-option>
95 <md-input-container flex layout="column" class="md-block" ng-if="vm.monthDayFrom">
96 <label translate="TOOLS.TO">To</label>
97 <md-select ng-model="vm.monthDayTo">
98 <md-option ng-value="month" ng-repeat="month in vm.daysOfMonth">{{ month }}</md-option>
100 </md-input-container>
102 <!-- MONTHDAY END -->
105 <label ng-if="vm.type === 'custom'" translate="TOOLS.MONTHS">Time Range</label>
106 <div layout=row ng-if="vm.type === 'custom'">
107 <md-input-container flex layout="column" class="md-block">
108 <label translate="TOOLS.FROM">From</label>
109 <md-select ng-model="vm.monthFrom">
110 <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>
111 <md-option ng-value="month.value" ng-repeat="month in vm.monthName"><span translate="TOOLS.{{month.value | uppercase}}">{{ month.value | ucfirst }}</span></md-option>
114 </md-input-container>
116 <md-input-container flex layout="column" class="md-block" ng-if="vm.monthFrom">
117 <label translate="TOOLS.TO">To</label>
118 <md-select ng-model="vm.monthTo">
119 <md-option ng-value="month.value" ng-repeat="month in vm.monthName"><span translate="TOOLS.{{month.value | uppercase}}">{{ month.value | ucfirst }}</span></md-option>
121 </md-input-container>
125 <div class="error-list">
126 <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">
128 <span class="message">{{error.message}}</span>
129 <span class="type">({{error.type}})</span>
131 <md-button class="md-icon-button">
132 <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>
138 <md-dialog-actions layout="row" layout-align="space-between center">
139 <div layout="row" layout-align="start center">
140 <md-button type="submit" ng-if="!vm.newInterval" ng-click="vm.saveInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid || intervalForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">
144 <md-button type="submit" ng-if="vm.newInterval" ng-click="vm.addNewInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_INTERVAL" translate-attr-aria-label="TOOLS.ADD_INTERVAL">