changeset 1586:3a30a6f4c96d

unattended imports: translations added
author Thomas Junk <thomas.junk@intevation.de>
date Fri, 14 Dec 2018 11:02:46 +0100
parents a86fd6f62a57
children af17c29df8f0
files client/src/components/importschedule/Importscheduledetail.vue client/src/main.js
diffstat 2 files changed, 93 insertions(+), 56 deletions(-) [+]
line wrap: on
line diff
--- a/client/src/components/importschedule/Importscheduledetail.vue	Fri Dec 14 10:11:28 2018 +0100
+++ b/client/src/components/importschedule/Importscheduledetail.vue	Fri Dec 14 11:02:46 2018 +0100
@@ -13,7 +13,7 @@
         </span>
       </h6>
       <div class="card-body">
-        <form @submit.prevent="save" class="ml-3">
+        <form @submit.prevent="save" class="ml-2 mr-2">
           <div class="d-flex flex-row w-100">
             <div class="flex-column w-100">
               <div class="flex-row text-left">
@@ -29,7 +29,7 @@
             </div>
           </div>
           <div class="d-flex flex-row mt-3 w-100 justify-content-between">
-            <div class="flex-column w-100 mr-2">
+            <div class="flex-column w-100">
               <div class="flex-row text-left">
                 <small class="text-muted">
                   <translate>Importtype</translate>
@@ -43,18 +43,6 @@
                 >
               </select>
             </div>
-            <div class="flex-column w-100 ml-2">
-              <div class="flex-row text-left">
-                <small class="text-muted">
-                  <translate>Schedule</translate>
-                </small>
-              </div>
-              <select v-model="schedule" class="custom-select" id="period">
-                <option v-for="option in this.$options.periods" :key="option">{{
-                  option
-                }}</option>
-              </select>
-            </div>
           </div>
           <div class="flex-column mt-3 w-100 mr-2">
             <div class="flex-row text-left">
@@ -84,38 +72,38 @@
             </div>
             <div v-if="easyCron" class="text-left w-50">
               <select v-model="simple" class="form-control"
-                ><option value="weekly"> Weekly </option>
-                <option value="monthly">Monthly</option>
+                ><option value="weekly"><translate>Weekly</translate></option>
+                <option value="monthly"><translate>Monthly</translate></option>
               </select>
             </div>
             <div v-if="!easyCron" class="text-left w-100">
               <div class="d-flex flex-row">
-                <h4 class="mt-auto mb-auto mr-2">Every</h4>
+                <h4 class="mt-auto mb-auto mr-2">{{ $options.EVERY }}</h4>
                 <select
                   style="width: 130px;"
                   v-model="cronMode"
                   class="form-control"
                   @change="clearInputs"
                 >
-                  <option value="15minutes">15 minutes</option>
-                  <option value="hour">hour</option>
-                  <option value="day">day</option>
-                  <option value="week">week</option>
-                  <option value="month">month</option>
-                  <option value="year">year</option>
+                  <option
+                    v-for="(option, key) in $options.CRONMODE"
+                    :value="key"
+                    :key="key"
+                    >{{ option }}</option
+                  >
                 </select>
                 <div v-if="cronMode == 'hour'" class="ml-2 d-flex flex-row">
-                  <h4 class="mt-auto mb-auto">at</h4>
+                  <h4 class="mt-auto mb-auto">{{ $options.ON }}</h4>
                   <input
                     v-model="minutes"
                     style="width:50px"
                     class="ml-2 mr-2 form-control"
                     type="text"
                   />
-                  <h4 class="mt-auto mb-auto">minutes past</h4>
+                  <h4 class="mt-auto mb-auto">{{ $options.MINUTESPAST }}</h4>
                 </div>
                 <div v-if="cronMode == 'day'" class="ml-2 d-flex flex-row">
-                  <h4 class="mt-auto mb-auto">at</h4>
+                  <h4 class="mt-auto mb-auto">{{ $options.AT }}</h4>
                   <input
                     v-model="hour"
                     style="width:50px"
@@ -128,20 +116,19 @@
                     class="ml-2 mr-2 form-control"
                     type="text"
                   />
-                  <h4 class="mt-auto mb-auto">o' clock</h4>
+                  <h4 class="mt-auto mb-auto">{{ $options.OCLOCK }}</h4>
                 </div>
                 <div v-if="cronMode == 'week'" class="ml-2 d-flex flex-row">
-                  <h4 class="ml-2 mr-3 mt-auto mb-auto">on</h4>
+                  <h4 class="ml-2 mr-3 mt-auto mb-auto">{{ $options.ON }}</h4>
                   <select v-model="day" class="form-control">
-                    <option value="1">Monday</option>
-                    <option value="2">Tuesday</option>
-                    <option value="3">Wednesday</option>
-                    <option value="4">Thursday</option>
-                    <option value="5">Friday</option>
-                    <option value="6">Saturday</option>
-                    <option value="0">Sunday</option>
+                    <option
+                      v-for="(option, key) in $options.DAYSOFWEEK"
+                      :key="key"
+                      :value="key"
+                      >{{ option }}</option
+                    >
                   </select>
-                  <h4 class="ml-2 mt-auto mb-auto">at</h4>
+                  <h4 class="ml-2 mt-auto mb-auto">{{ $options.AT }}</h4>
                   <input
                     v-model="hour"
                     style="width:50px"
@@ -156,14 +143,14 @@
                   />
                 </div>
                 <div v-if="cronMode == 'month'" class="ml-2 d-flex flex-row">
-                  <h4 class="ml-2 mt-auto mb-auto">on</h4>
+                  <h4 class="ml-2 mt-auto mb-auto">{{ $options.ON }}</h4>
                   <input
                     v-model="dayOfMonth"
                     style="width:50px"
                     class="ml-2 mr-2 form-control"
                     type="text"
                   />
-                  <h4 class="mt-auto mb-auto">at</h4>
+                  <h4 class="mt-auto mb-auto">{{ $options.AT }}</h4>
                   <input
                     v-model="hour"
                     style="width:50px"
@@ -176,32 +163,26 @@
                     class="ml-2 mr-2 form-control"
                     type="text"
                   />
-                  <h4 class="mt-auto mb-auto">o' clock</h4>
+                  <h4 class="mt-auto mb-auto">{{ $options.OCLOCK }}</h4>
                 </div>
                 <div v-if="cronMode == 'year'" class="ml-2 d-flex flex-row">
-                  <h4 class="ml-2 mt-auto mb-auto">on</h4>
+                  <h4 class="ml-2 mt-auto mb-auto">{{ $options.ON }}</h4>
                   <input
                     v-model="dayOfMonth"
                     style="width:50px"
                     class="ml-2 mr-2 form-control"
                     type="text"
                   />
-                  <h4 class="mt-auto mb-auto">of</h4>
+                  <h4 class="mt-auto mb-auto">{{ $options.OF }}</h4>
                   <select v-model="month" class="ml-2 mr-2 form-control">
-                    <option value="1">January</option>
-                    <option value="2">February</option>
-                    <option value="3">March</option>
-                    <option value="4">April</option>
-                    <option value="5">May</option>
-                    <option value="6">June</option>
-                    <option value="7">July</option>
-                    <option value="8">August</option>
-                    <option value="9">September</option>
-                    <option value="10">October</option>
-                    <option value="11">November</option>
-                    <option value="12">December</option>
+                    <option
+                      v-for="(option, key) in $options.MONTHS"
+                      :value="key"
+                      :key="key"
+                      >{{ option }}</option
+                    >
                   </select>
-                  <h4 class="mt-auto mb-auto">at</h4>
+                  <h4 class="mt-auto mb-auto">{{ $options.ON }}</h4>
                   <input
                     v-model="hour"
                     style="width:50px"
@@ -217,7 +198,9 @@
                 </div>
               </div>
               <div class="mt-3 w-50 d-flex flex-row">
-                <h5 class="mt-auto mb-auto mr-2">Cronstring</h5>
+                <h5 class="mt-auto mb-auto mr-2">
+                  <translate>Cronstring</translate>
+                </h5>
                 <input class="form-control" :value="cronString" type="text" />
               </div>
             </div>
@@ -255,6 +238,14 @@
           <button type="submit" class="shadow-sm btn btn-info submit-button">
             <translate>Submit</translate>
           </button>
+          <button type="button" class="shadow-sm btn btn-outline-info trigger">
+            <font-awesome-icon
+              class="fa-fw mr-2"
+              fixed-width
+              icon="play"
+            ></font-awesome-icon
+            ><translate>Trigger import</translate>
+          </button>
         </form>
       </div>
     </div>
@@ -264,6 +255,7 @@
 <script>
 import { mapState } from "vuex";
 import { displayInfo } from "../../lib/errors.js";
+import app from "../../main.js";
 
 export default {
   name: "importscheduledetail",
@@ -293,6 +285,43 @@
       }
     }
   },
+  EVERY: app.$gettext("Every"),
+  MINUTESPAST: app.$gettext("minutes past"),
+  ON: app.$gettext("on"),
+  OF: app.$gettext("of"),
+  AT: app.$gettext("at"),
+  OCLOCK: app.$gettext("o' clock"),
+  CRONMODE: {
+    "15minutes": app.$gettext("15 minutes"),
+    hour: app.$gettext("hour"),
+    day: app.$gettext("day"),
+    week: app.$gettext("week"),
+    month: app.$gettext("month"),
+    year: app.$gettext("year")
+  },
+  DAYSOFWEEK: {
+    1: app.$gettext("Monday"),
+    2: app.$gettext("Tuesday"),
+    3: app.$gettext("Wednesday"),
+    4: app.$gettext("Thursday"),
+    5: app.$gettext("Friday"),
+    6: app.$gettext("Saturday"),
+    0: app.$gettext("Sunday")
+  },
+  MONTHS: {
+    1: app.$gettext("January"),
+    2: app.$gettext("February"),
+    3: app.$gettext("March"),
+    4: app.$gettext("April"),
+    5: app.$gettext("May"),
+    6: app.$gettext("June"),
+    7: app.$gettext("July"),
+    8: app.$gettext("August"),
+    9: app.$gettext("September"),
+    10: app.$gettext("October"),
+    11: app.$gettext("November"),
+    12: app.$gettext("December")
+  },
   computed: {
     ...mapState("imports", ["importScheduleDetailVisible"]),
     cronString: {
@@ -354,9 +383,15 @@
   margin-right: $offset;
 }
 
+.trigger {
+  position: absolute;
+  left: $large-offset;
+  bottom: $offset;
+}
+
 .submit-button {
   position: absolute;
-  right: $offset;
+  right: $large-offset;
   bottom: $offset;
 }
 </style>
--- a/client/src/main.js	Fri Dec 14 10:11:28 2018 +0100
+++ b/client/src/main.js	Fri Dec 14 11:02:46 2018 +0100
@@ -53,6 +53,7 @@
   faMinus,
   faPaperPlane,
   faPencilAlt,
+  faPlay,
   faPlus,
   faPowerOff,
   faRuler,
@@ -101,6 +102,7 @@
   faMinus,
   faPaperPlane,
   faPencilAlt,
+  faPlay,
   faPlus,
   faPowerOff,
   faRuler,