Built motion from commit e493b9a4954b50a8ee6d0034ba3601cd210d989d. Version 3.0.0...
[motion-next.git] / public / templates / main / apps / tools / views / schedules / create / dialog.html / dialog.html
diff --git a/public/templates/main/apps/tools/views/schedules/create/dialog.html/dialog.html b/public/templates/main/apps/tools/views/schedules/create/dialog.html/dialog.html
new file mode 100644 (file)
index 0000000..4e64876
--- /dev/null
@@ -0,0 +1,479 @@
+<md-dialog class="schedule-dialog" aria-label="New Schedule">
+  <form name="scheduleForm" class="md-inline-form" novalidate>
+    <md-toolbar class="md-accent md-hue-2">
+      <div
+        class="md-toolbar-tools"
+        layout="row"
+        layout-align="space-between center"
+      >
+        <span class="title">{{ vm.title | translate }}</span>
+        <md-button class="md-icon-button" ng-click="vm.closeDialog()">
+          <md-icon
+            md-font-icon="icon-close"
+            aria-label="Close dialog"
+          ></md-icon>
+        </md-button>
+      </div>
+    </md-toolbar>
+
+    <md-dialog-content ms-scroll>
+      <div class="error-list">
+        <div
+          ng-repeat="error in vm.errors"
+          class="error"
+          layout="row"
+          layout-align="space-between center"
+        >
+          <div>
+            <span class="message">{{error.message}}</span>
+            <span class="type">({{error.type}})</span>
+          </div>
+          <md-button class="md-icon-button">
+            <md-icon
+              md-font-icon="icon-alert-box"
+              aria-label="alert error"
+              class="s16"
+            ></md-icon>
+          </md-button>
+        </div>
+      </div>
+      <md-input-container class="md-block">
+        <label translate="APP.NAME">Name</label>
+        <input
+          type="text"
+          name="name"
+          ng-model="vm.schedule.name"
+          ng-required="true"
+          autofocus
+        />
+
+        <div
+          ng-messages="scheduleForm['name'].$error"
+          ng-show="scheduleForm['name'].$touched"
+          role="alert"
+        >
+          <div ng-message="required">
+            <span translate="APP.ERRORS.NAME_REQUIRED"
+              >Name field is required</span
+            >
+          </div>
+        </div>
+      </md-input-container>
+      <md-input-container class="md-block">
+        <label translate="APP.REPORT">Report</label>
+        <input
+          type="search"
+          name="report"
+          ng-model="vm.schedule.report"
+          ng-required="true"
+          autocomplete="off"
+          ng-click="vm.searchReport()"
+        />
+        <md-icon
+          md-font-icon="icon-magnify"
+          ng-click="vm.searchReport()"
+          aria-label="Search Report"
+        ></md-icon>
+        <div
+          ng-messages="scheduleForm['report'].$error"
+          ng-show="scheduleForm['report'].$touched"
+          role="alert"
+        >
+          <div ng-message="required">
+            <span translate="TOOLS.ERRORS.REPORT_REQUIRED"
+              >Report field is required</span
+            >
+          </div>
+        </div>
+      </md-input-container>
+      <md-input-container class="md-block">
+        <label translate="APP.OUTPUT">Output</label>
+        <md-select name="output" ng-model="vm.schedule.output" required>
+          <md-option ng-value="'csv'">CSV</md-option>
+          <md-option ng-value="'pdf'">PDF</md-option>
+          <md-option ng-value="'xlsx'">Excel</md-option>
+        </md-select>
+        <div
+          ng-messages="scheduleForm['output'].$error"
+          ng-show="scheduleForm['output'].$touched"
+          role="alert"
+        >
+          <div ng-message="required">
+            <span translate="TOOLS.ERRORS.OUTPUT_REQUIRED"
+              >Output field is required</span
+            >
+          </div>
+        </div>
+      </md-input-container>
+      <md-input-container class="md-block">
+        <md-switch ng-model="vm.schedule.active" aria-label="Active"
+          ><span translate="APP.ACTIVE">Active</span>
+        </md-switch>
+      </md-input-container>
+      <div class="md-block">
+        <label translate="TOOLS.VALIDITYSTART">ValidityStart</label>
+        <md-content layout="row" class="md-padding">
+          <div flex class="md-block">
+            <mdp-date-picker
+              mdp-open-on-click
+              required
+              name="startAtDate"
+              mdp-placeholder="Date"
+              mdp-format="YYYY-MM-DD"
+              ng-model="vm.schedule.startAt"
+              ng-init="vm.schedule.startAt = vm.getDateFromString(vm.schedule.startAt)"
+            >
+              <div
+                ng-messages="scheduleForm.dateRangeFrom.$error"
+                ng-show="scheduleForm.dateRangeFrom.$touched"
+                role="alert"
+              >
+                <div ng-message="required">
+                  <span translate="TOOLS.ERRORS.DATE_REQUIRED"
+                    >Date is required</span
+                  >
+                </div>
+                <div ng-message="format">
+                  <span translate="TOOLS.ERRORS.DATE_INVALID"
+                    >Date is invalid</span
+                  >
+                </div>
+              </div>
+            </mdp-date-picker>
+          </div>
+          <div flex class="md-block">
+            <mdp-time-picker
+              mdp-open-on-click
+              required
+              name="startAtTime"
+              mdp-placeholder="Time"
+              mdp-format="HH:mm:ss"
+              mdp-auto-switch="true"
+              ng-model="vm.schedule.startAt"
+              ng-init="vm.schedule.startAt = vm.getDateFromString(vm.schedule.startAt)"
+            >
+              <div
+                ng-messages="scheduleForm.timeRangeFrom.$error"
+                ng-show="scheduleForm.timeRangeFrom.$touched"
+                role="alert"
+              >
+                <div ng-message="required">
+                  <span translate="TOOLS.ERRORS.TIME_REQUIRED"
+                    >Time is required</span
+                  >
+                </div>
+                <div ng-message="format">
+                  <span translate="TOOLS.ERRORS.TIME_INVALID"
+                    >Time is invalid</span
+                  >
+                </div>
+              </div>
+            </mdp-time-picker>
+          </div>
+        </md-content>
+      </div>
+      <div class="md-block">
+        <label translate="TOOLS.VALIDITYEND">ValidityEnd</label>
+        <md-content layout="row" class="md-padding">
+          <div flex class="md-block">
+            <mdp-date-picker
+              mdp-open-on-click
+              required
+              name="endAtDate"
+              mdp-placeholder="Date"
+              mdp-format="YYYY-MM-DD"
+              ng-model="vm.schedule.endAt"
+              ng-init="vm.schedule.endAt = vm.getDateFromString(vm.schedule.endAt)"
+            >
+              <div
+                ng-messages="scheduleForm.dateRangeFrom.$error"
+                ng-show="scheduleForm.dateRangeFrom.$touched"
+                role="alert"
+              >
+                <div ng-message="required">
+                  <span translate="TOOLS.ERRORS.DATE_REQUIRED"
+                    >Date is required</span
+                  >
+                </div>
+                <div ng-message="format">
+                  <span translate="TOOLS.ERRORS.DATE_INVALID"
+                    >Date is invalid</span
+                  >
+                </div>
+              </div>
+            </mdp-date-picker>
+          </div>
+          <div flex class="md-block">
+            <mdp-time-picker
+              mdp-open-on-click
+              required
+              name="endAtTime"
+              mdp-placeholder="Time"
+              mdp-format="HH:mm:ss"
+              mdp-auto-switch="true"
+              ng-model="vm.schedule.endAt"
+              ng-init="vm.schedule.endAt = vm.getDateFromString(vm.schedule.endAt)"
+            >
+              <div
+                ng-messages="scheduleForm.timeRangeFrom.$error"
+                ng-show="scheduleForm.timeRangeFrom.$touched"
+                role="alert"
+              >
+                <div ng-message="required">
+                  <span translate="TOOLS.ERRORS.TIME_REQUIRED"
+                    >Time is required</span
+                  >
+                </div>
+                <div ng-message="format">
+                  <span translate="TOOLS.ERRORS.TIME_INVALID"
+                    >Time is invalid</span
+                  >
+                </div>
+              </div>
+            </mdp-time-picker>
+          </div>
+        </md-content>
+      </div>
+      <div flex class="md-block">
+        <label> {{ 'TOOLS.CRON' | translate }} ({{vm.schedule.cron}})</label>
+        <cron-selection
+          name="cron"
+          ng-model="vm.schedule.cron"
+          template="assets/angular-cron-jobs/template.html"
+          required
+        ></cron-selection>
+      </div>
+      <md-input-container class="md-block">
+        <label translate="TOOLS.LAST">Last</label>
+        <input
+          type="number"
+          name="subtractNumber"
+          ng-model="vm.schedule.subtractNumber"
+          value="1"
+          ng-required="true"
+        />
+
+        <div
+          ng-messages="scheduleForm['subtractNumber'].$error"
+          ng-show="scheduleForm['subtractNumber'].$touched"
+          role="alert"
+        >
+          <div ng-message="required">
+            <span translate="TOOLS.ERRORS.LAST_REQUIRED"
+              >Last field is required</span
+            >
+          </div>
+        </div>
+      </md-input-container>
+      <md-input-container class="md-block">
+        <label translate="TOOLS.LASTUNIT">LastUnit</label>
+        <md-select
+          name="subtractUnit"
+          ng-model="vm.schedule.subtractUnit"
+          required
+        >
+          <md-option ng-value="'minutes'">Minutes</md-option>
+          <md-option ng-value="'hours'">Hours</md-option>
+          <md-option ng-value="'days'">Days</md-option>
+          <md-option ng-value="'weeks'">Weeks</md-option>
+          <md-option ng-value="'months'">Months</md-option>
+          <md-option ng-value="'quarters'">Quarters</md-option>
+          <md-option ng-value="'years'">Years</md-option>
+        </md-select>
+        <div
+          ng-messages="scheduleForm['subtractUnit'].$error"
+          ng-show="scheduleForm['subtractUnit'].$touched"
+          role="alert"
+        >
+          <div ng-message="required">
+            <span translate="TOOLS.ERRORS.LASTUNIT_REQUIRED"
+              >LastUnit field is required</span
+            >
+          </div>
+        </div>
+      </md-input-container>
+      <md-input-container class="md-block">
+        <md-switch ng-model="vm.schedule.sendMail" aria-label="SendMail"
+          ><span translate="APP.SENDMAIL">SendMail</span>
+        </md-switch>
+      </md-input-container>
+      <md-input-container ng-if="vm.schedule.sendMail" class="md-block">
+        <label translate="TOOLS.MAILACCOUNT">MailAccount</label>
+        <md-select
+          name="MailAccountId"
+          ng-model="vm.schedule.MailAccountId"
+          required
+        >
+          <md-option
+            ng-value="MailAccountId.id"
+            ng-repeat="MailAccountId in vm.mailAccounts"
+            ng-disabled="MailAccountId.canSelect === false"
+            >{{ MailAccountId.name }}</md-option
+          >
+        </md-select>
+        <div
+          ng-messages="scheduleForm['MailAccountId'].$error"
+          ng-show="scheduleForm['MailAccountId'].$touched"
+          role="alert"
+        >
+          <div ng-message="required">
+            <span translate="TOOLS.ERRORS.MAILACCOUNT_REQUIRED"
+              >MailAccount field is required</span
+            >
+          </div>
+        </div>
+      </md-input-container>
+      <md-input-container ng-if="vm.schedule.sendMail" class="md-block">
+        <label translate="APP.EMAILADDRESS">EmailAddress</label>
+        <input
+          type="text"
+          name="email"
+          ng-model="vm.schedule.email"
+          ng-required="true"
+        />
+
+        <div class="hint">
+          <span translate="TOOLS.HELP.EMAILADDRESS"></span>
+        </div>
+        <div
+          ng-messages="scheduleForm['email'].$error"
+          ng-show="scheduleForm['email'].$touched"
+          role="alert"
+        >
+          <div ng-message="required">
+            <span translate="TOOLS.ERRORS.EMAILADDRESS_REQUIRED"
+              >EmailAddress field is required</span
+            >
+          </div>
+        </div>
+      </md-input-container>
+      <md-input-container ng-if="vm.schedule.sendMail" class="md-block">
+        <label translate="TOOLS.EMAILCCADDRESS">EmailCcAddress</label>
+        <input type="text" name="cc" ng-model="vm.schedule.cc" />
+
+        <div class="hint">
+          <span translate="TOOLS.HELP.EMAILCCADDRESS"></span>
+        </div>
+        <div
+          ng-messages="scheduleForm['cc'].$error"
+          ng-show="scheduleForm['cc'].$touched"
+          role="alert"
+        >
+          <div ng-message="required">
+            <span translate="TOOLS.ERRORS.EMAILCCADDRESS_REQUIRED"
+              >EmailCcAddress field is required</span
+            >
+          </div>
+        </div>
+      </md-input-container>
+      <md-input-container ng-if="vm.schedule.sendMail" class="md-block">
+        <label translate="TOOLS.EMAILBCCADDRESS">EmailBccAddress</label>
+        <input type="text" name="bcc" ng-model="vm.schedule.bcc" />
+
+        <div class="hint">
+          <span translate="TOOLS.HELP.EMAILBCCADDRESS"></span>
+        </div>
+        <div
+          ng-messages="scheduleForm['bcc'].$error"
+          ng-show="scheduleForm['bcc'].$touched"
+          role="alert"
+        >
+          <div ng-message="required">
+            <span translate="TOOLS.ERRORS.EMAILBCCADDRESS_REQUIRED"
+              >EmailBccAddress field is required</span
+            >
+          </div>
+        </div>
+      </md-input-container>
+      <md-input-container ng-if="vm.schedule.sendMail" class="md-block">
+        <md-switch ng-model="vm.schedule.sendIfEmpty" aria-label="SendIfEmpty"
+          ><span translate="TOOLS.SENDIFEMPTY">SendIfEmpty</span></md-switch
+        >
+      </md-input-container>
+      <md-input-container class="md-block">
+        <label translate="APP.DESCRIPTION">Description</label>
+        <input type="" name="description" ng-model="vm.schedule.description" />
+
+        <div
+          ng-messages="scheduleForm['description'].$error"
+          ng-show="scheduleForm['description'].$touched"
+          role="alert"
+        >
+          <div ng-message="required">
+            <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED"
+              >Description field is required</span
+            >
+          </div>
+        </div>
+      </md-input-container>
+
+      <div class="error-list">
+        <div
+          ng-repeat="error in vm.errors"
+          class="error"
+          layout="row"
+          layout-align="space-between center"
+        >
+          <div>
+            <span class="message">{{error.message}}</span>
+            <span class="type">({{error.type}})</span>
+          </div>
+          <md-button class="md-icon-button">
+            <md-icon
+              md-font-icon="icon-alert-box"
+              aria-label="alert error"
+              class="s16"
+            ></md-icon>
+          </md-button>
+        </div>
+      </div>
+    </md-dialog-content>
+
+    <md-dialog-actions
+      layout="row"
+      layout-align="space-between center"
+      ng-if="!vm.crudPermissions.readOnly"
+    >
+      <div layout="row" layout-align="start center">
+        <md-button
+          type="submit"
+          ng-if="vm.crudPermissions.canEdit && !vm.newSchedule"
+          ng-click="vm.saveSchedule()"
+          class="send-button md-accent md-raised"
+          ng-disabled="scheduleForm.$invalid || scheduleForm.$pristine"
+          aria-label="SAVE"
+          translate="APP.SAVE"
+          translate-attr-aria-label="APP.SAVE"
+        >
+          SAVE
+        </md-button>
+
+        <md-button
+          type="submit"
+          ng-if="vm.crudPermissions.canEdit && vm.newSchedule"
+          ng-click="vm.addNewSchedule()"
+          class="send-button md-accent md-raised"
+          ng-disabled="scheduleForm.$invalid"
+          aria-label="ADD"
+          translate="TOOLS.ADD_SCHEDULE"
+          translate-attr-aria-label="TOOLS.ADD_SCHEDULE"
+        >
+          ADD SCHEDULE
+        </md-button>
+      </div>
+      <div layout="row">
+        <md-button
+          class="md-icon-button"
+          ng-if="vm.crudPermissions.canDelete && !vm.newSchedule"
+          ng-click="vm.deleteSchedule($event)"
+          aria-label="DELETE"
+          translate
+          translate-attr-aria-label="APP.DELETE"
+        >
+          <md-icon md-font-icon="icon-delete"></md-icon>
+          <md-tooltip><span translate="APP.DELETE">DELETE</span></md-tooltip>
+        </md-button>
+      </div>
+    </md-dialog-actions>
+  </form>
+</md-dialog>