changeset 2224:5176ea7fbc53 pdf-export

merge default in pdf-branch
author Markus Kottlaender <markus@intevation.de>
date Tue, 12 Feb 2019 11:11:32 +0100
parents 85142493096c (current diff) 35c56ace42b9 (diff)
children bc1780dd7cd1
files client/src/assets/application.scss client/src/components/Pdftool.vue client/src/main.js client/src/store/map.js
diffstat 66 files changed, 3302 insertions(+), 1455 deletions(-) [+]
line wrap: on
line diff
--- a/client/package.json	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/package.json	Tue Feb 12 11:11:32 2019 +0100
@@ -35,6 +35,7 @@
     "glob-all": "^3.1.0",
     "jspdf": "^1.5.3",
     "locale2": "^2.2.0",
+    "lodash.debounce": "^4.0.8",
     "ol": "^5.3.0",
     "path": "^0.12.7",
     "prettier": "^1.15.3",
--- a/client/src/assets/application.scss	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/assets/application.scss	Tue Feb 12 11:11:32 2019 +0100
@@ -137,3 +137,7 @@
   opacity: 0;
   transform: translateY(20px);
 }
+
+.pointer {
+  cursor: pointer;
+}
--- a/client/src/components/Bottlenecks.vue	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/components/Bottlenecks.vue	Tue Feb 12 11:11:32 2019 +0100
@@ -71,12 +71,14 @@
             v-if="bottleneck.properties.current"
           >
             <font-awesome-icon
+              class="pointer"
               icon="spinner"
               fixed-width
               spin
               v-if="loading === bottleneck.properties.name"
             ></font-awesome-icon>
             <font-awesome-icon
+              class="pointer"
               icon="angle-down"
               fixed-width
               v-if="
@@ -85,6 +87,7 @@
               "
             ></font-awesome-icon>
             <font-awesome-icon
+              class="pointer"
               icon="angle-up"
               fixed-width
               v-if="
--- a/client/src/components/Contextbox.vue	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/components/Contextbox.vue	Tue Feb 12 11:11:32 2019 +0100
@@ -1,7 +1,7 @@
 <template>
   <div :class="style">
     <div @click="close" class="ui-element close-contextbox text-muted">
-      <font-awesome-icon icon="times"></font-awesome-icon>
+      <font-awesome-icon icon="times" class="pointer"></font-awesome-icon>
     </div>
     <Bottlenecks v-if="contextBoxContent === 'bottlenecks'"></Bottlenecks>
     <Staging v-if="contextBoxContent === 'staging'"></Staging>
--- a/client/src/components/ImportApprovedGaugeMeasurement.vue	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/components/ImportApprovedGaugeMeasurement.vue	Tue Feb 12 11:11:32 2019 +0100
@@ -22,7 +22,7 @@
                   class="custom-file-input"
                   id="uploadFile"
                 />
-                <label class="custom-file-label" for="uploadFile">
+                <label class="pointer custom-file-label" for="uploadFile">
                   {{ uploadLabel }}
                 </label>
               </div>
--- a/client/src/components/ImportSoundingresults.vue	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/components/ImportSoundingresults.vue	Tue Feb 12 11:11:32 2019 +0100
@@ -104,7 +104,7 @@
                 class="custom-file-input"
                 id="uploadFile"
               />
-              <label class="custom-file-label" for="uploadFile">
+              <label class="pointer custom-file-label" for="uploadFile">
                 {{ uploadLabel }}
               </label>
             </div>
--- a/client/src/components/ImportStretches.vue	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/components/ImportStretches.vue	Tue Feb 12 11:11:32 2019 +0100
@@ -41,6 +41,7 @@
             <td>{{ stretch.properties["source_organization"] }}</td>
             <td>
               <font-awesome-icon
+                class="pointer"
                 @click="editStretch(index)"
                 icon="pencil-alt"
                 fixed-width
@@ -48,6 +49,7 @@
             </td>
             <td>
               <font-awesome-icon
+                class="pointer"
                 @click="deleteStretch(index)"
                 icon="trash"
                 fixed-width
@@ -481,9 +483,6 @@
             message: `${status}: ${data.message || data}`
           });
         });
-    },
-    sanitizeRHM(rhm) {
-      return rhm.replace(/,|\(|\)/g, "");
     }
   },
   watch: {
@@ -493,7 +492,7 @@
       };
       const distanceMark = this.identifiedFeatures.filter(filterDistanceMarks);
       if (distanceMark.length > 0) {
-        const value = this.sanitizeRHM(distanceMark[0]["id_"].split(".")[1]);
+        const value = distanceMark[0].getProperties()["location"];
         this.startrhm = this.pipetteStart ? value : this.startrhm;
         this.endrhm = this.pipetteEnd ? value : this.endrhm;
         this.pipetteStart = false;
--- a/client/src/components/ImportWaterwayProfiles.vue	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/components/ImportWaterwayProfiles.vue	Tue Feb 12 11:11:32 2019 +0100
@@ -79,7 +79,7 @@
                   class="custom-file-input"
                   id="uploadFile"
                 />
-                <label class="custom-file-label" for="uploadFile">
+                <label class="pointer custom-file-label" for="uploadFile">
                   {{ uploadLabel }}
                 </label>
               </div>
--- a/client/src/components/Maplayer.vue	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/components/Maplayer.vue	Tue Feb 12 11:11:32 2019 +0100
@@ -38,6 +38,7 @@
 import { WFS, GeoJSON } from "ol/format.js";
 import { equalTo } from "ol/format/filter.js";
 import { Stroke, Style, Fill } from "ol/style.js";
+import { displayError } from "@/lib/errors.js";
 
 /* for the sake of debugging */
 /* eslint-disable no-console */
@@ -179,39 +180,73 @@
     });
     this.$store.dispatch("map/openLayersMap", map);
 
+    var currentUser = this.$store.state.user.user;
+    HTTP.get("/users/" + currentUser, {
+      headers: {
+        "X-Gemma-Auth": localStorage.getItem("token"),
+        "Content-type": "text/xml; charset=UTF-8"
+      }
+    })
+      .then(response => {
+        this.$store.commit("map/moveToBoundingBox", {
+          boundingBox: [
+            response.data.extent.x1,
+            response.data.extent.y1,
+            response.data.extent.x2,
+            response.data.extent.y2
+          ],
+          zoom: 17,
+          preventZoomOut: true
+        });
+      })
+      .catch(error => {
+        const { status, data } = error.response;
+        displayError({
+          title: this.$gettext("Backend Error"),
+          message: `${status}: ${data.message || data}`
+        });
+      });
+
     // TODO make display of layers more dynamic, e.g. from a list
 
     // load different fairway dimension layers (level of service)
     ["1", "2", "3"].forEach(los => {
-      // loading the full WFS layer, by not setting the loader function
-      // and without bboxStrategy
-      var featureRequest = new WFS().writeGetFeature({
-        srsName: "EPSG:3857",
-        featureNS: "gemma",
-        featurePrefix: "gemma",
-        featureTypes: ["fairway_dimensions"],
-        outputFormat: "application/json",
-        filter: equalTo("level_of_service", los)
-      });
+      // loading the full WFS layer without bboxStrategy
+      var source = this.getVSourceByName("Fairway Dimensions LOS " + los);
+      /*eslint-disable no-unused-vars */
+      var loader = function(extent, resolution, projection) {
+        var featureRequest = new WFS().writeGetFeature({
+          srsName: "EPSG:3857",
+          featureNS: "gemma",
+          featurePrefix: "gemma",
+          featureTypes: ["fairway_dimensions"],
+          outputFormat: "application/json",
+          filter: equalTo("level_of_service", los)
+        });
 
-      // NOTE: loading the full fairway_dimensions makes sure
-      //       that all are available for the intersection with the profile
-      HTTP.post(
-        "/internal/wfs",
-        new XMLSerializer().serializeToString(featureRequest),
-        {
-          headers: {
-            "X-Gemma-Auth": localStorage.getItem("token"),
-            "Content-type": "text/xml; charset=UTF-8"
+        featureRequest["outputFormat"] = "application/json";
+        // NOTE: loading the full fairway_dimensions makes sure
+        //       that all are available for the intersection with the profile
+        HTTP.post(
+          "/internal/wfs",
+          new XMLSerializer().serializeToString(featureRequest),
+          {
+            headers: {
+              "X-Gemma-Auth": localStorage.getItem("token"),
+              "Content-type": "text/xml; charset=UTF-8"
+            }
           }
-        }
-      ).then(response => {
-        this.getVSourceByName("Fairway Dimensions LOS " + los).addFeatures(
-          new GeoJSON().readFeatures(JSON.stringify(response.data))
-        );
-        // would scale to the extend of all resulting features
-        // this.openLayersMap.getView().fit(vectorSrc.getExtent());
-      });
+        ).then(response => {
+          source.addFeatures(
+            new GeoJSON().readFeatures(JSON.stringify(response.data))
+          );
+          // would scale to the extend of all resulting features
+          // this.openLayersMap.getView().fit(vectorSrc.getExtent());
+        });
+      };
+
+      layer = this.getLayerByName("Fairway Dimensions LOS " + los);
+      layer.data.getSource().setLoader(loader);
     });
 
     // load following layers with bboxStrategy (using our request builder)
@@ -245,6 +280,20 @@
       )
     );
 
+    layer = this.getLayerByName("Waterway Profiles");
+    layer.data.getSource().setLoader(
+      this.buildVectorLoader(
+        {
+          featureNS: "gemma",
+          featurePrefix: "gemma",
+          featureTypes: ["waterway_profiles"],
+          geometryName: "geom"
+        },
+        "/internal/wfs",
+        layer.data.getSource()
+      )
+    );
+
     layer = this.getLayerByName("Distance marks");
     layer.data.getSource().setLoader(
       this.buildVectorLoader(
--- a/client/src/components/Pdftool.vue	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/components/Pdftool.vue	Tue Feb 12 11:11:32 2019 +0100
@@ -11,7 +11,7 @@
         <translate>Generate PDF</translate>
         <font-awesome-icon
           icon="times"
-          class="ml-auto text-muted"
+          class="ml-auto text-muted pointer"
           @click="$store.commit('application/showPdfTool', false)"
         ></font-awesome-icon>
       </h6>
@@ -42,15 +42,9 @@
               v-model="form.resolution"
               class="form-control form-control-sm mb-2 d-block w-100"
             >
-              <option value="80">
-                <translate>low resolution (80 dpi)</translate>
-              </option>
-              <option value="120">
-                <translate>medium resolution (120 dpi)</translate>
-              </option>
-              <option value="200">
-                <translate>high resolution (200 dpi)</translate>
-              </option>
+              <option value="80">80 dpi</option>
+              <option value="120">120 dpi</option>
+              <option value="200">200 dpi</option>
             </select>
           </div>
           <div class="flex-fill ml-2">
--- a/client/src/components/Zoom.vue	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/components/Zoom.vue	Tue Feb 12 11:11:32 2019 +0100
@@ -10,6 +10,12 @@
       <font-awesome-icon icon="minus"></font-awesome-icon>
     </button>
     <button
+      class="zoomButton border-0 bg-white ui-element border-right"
+      @click="refreshMap"
+    >
+      <font-awesome-icon icon="redo"></font-awesome-icon>
+    </button>
+    <button
       class="zoomButton border-0 bg-white rounded-right ui-element border-right"
       @click="zoomIn"
     >
@@ -49,6 +55,7 @@
  * Thomas Junk <thomas.junk@intevation.de>
  */
 import { mapState } from "vuex";
+import { Vector as VectorLayer } from "ol/layer.js";
 
 export default {
   name: "zoom",
@@ -70,6 +77,17 @@
     },
     zoomOut() {
       this.zoomLevel = this.zoomLevel - 1;
+    },
+    refreshMap() {
+      let layers = this.openLayersMap.getLayers().getArray();
+      for (let i = 0; i < layers.length; i++) {
+        let layer = layers[i];
+        if (layer instanceof VectorLayer) {
+          console.log(layer.get("source").loader_);
+          layer.getSource().clear(true);
+          layer.getSource().refresh({ force: true });
+        }
+      }
     }
   }
 };
--- a/client/src/components/fairway/Fairwayprofile.vue	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/components/fairway/Fairwayprofile.vue	Tue Feb 12 11:11:32 2019 +0100
@@ -12,7 +12,7 @@
       @click="$store.dispatch('fairwayprofile/clearSelection')"
       v-if="showSplitscreen"
     >
-      <font-awesome-icon icon="times" />
+      <font-awesome-icon icon="times" class="pointer" />
     </button>
     <div class="profile bg-white position-relative d-flex flex-column">
       <h5
--- a/client/src/components/fairway/Infobar.vue	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/components/fairway/Infobar.vue	Tue Feb 12 11:11:32 2019 +0100
@@ -11,13 +11,13 @@
         class="p-2 border-left d-flex align-items-center"
         @click="$store.commit('application/showSplitscreen', true)"
       >
-        <font-awesome-icon icon="angle-up"></font-awesome-icon>
+        <font-awesome-icon class="pointer" icon="angle-up"></font-awesome-icon>
       </span>
       <span
         class="p-2 border-left d-flex align-items-center"
         @click="$store.dispatch('fairwayprofile/clearSelection')"
       >
-        <font-awesome-icon icon="times"></font-awesome-icon>
+        <font-awesome-icon icon="times" class="pointer"></font-awesome-icon>
       </span>
     </div>
   </div>
--- a/client/src/components/fairway/Profiles.vue	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/components/fairway/Profiles.vue	Tue Feb 12 11:11:32 2019 +0100
@@ -11,7 +11,7 @@
         <translate>Profiles</translate>
         <font-awesome-icon
           icon="times"
-          class="ml-auto text-muted"
+          class="ml-auto text-muted pointer"
           @click="$store.commit('application/showProfiles', false)"
         ></font-awesome-icon>
       </h6>
@@ -110,7 +110,7 @@
               @click="confirmDeleteSelectedCut = false"
               v-if="selectedCut && confirmDeleteSelectedCut"
             >
-              <font-awesome-icon icon="times" />
+              <font-awesome-icon icon="times" class="pointer" />
             </button>
             <button
               class="btn btn-sm btn-danger input-button-right"
--- a/client/src/components/importqueue/Importqueuedetail.vue	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/components/importqueue/Importqueuedetail.vue	Tue Feb 12 11:11:32 2019 +0100
@@ -23,16 +23,19 @@
       </div>
       <div @click="showDetails(job.id)" class="mt-1 text-info detailsbutton">
         <font-awesome-icon
+          class="pointer"
           v-if="show"
           icon="angle-up"
           fixed-width
         ></font-awesome-icon>
         <font-awesome-icon
+          class="pointer"
           v-if="loading"
           icon="spinner"
           fixed-width
         ></font-awesome-icon>
         <font-awesome-icon
+          class="pointer"
           v-if="!show && !loading"
           icon="angle-down"
           fixed-width
--- a/client/src/components/importschedule/Importscheduledetail.vue	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/components/importschedule/Importscheduledetail.vue	Tue Feb 12 11:11:32 2019 +0100
@@ -9,7 +9,7 @@
       >
         {{ dialogLabel }}
         <span @click="closeDetailview" class="closebutton">
-          <font-awesome-icon icon="times"></font-awesome-icon>
+          <font-awesome-icon icon="times" class="pointer"></font-awesome-icon>
         </span>
       </h6>
       <div class="card-body">
@@ -355,7 +355,7 @@
             </div>
           </div>
           <button type="submit" class="shadow-sm btn btn-info submit-button">
-            <translate>Submit</translate>
+            <translate>Save</translate>
           </button>
           <button
             @click="triggerManualImport"
--- a/client/src/components/layers/Layers.vue	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/components/layers/Layers.vue	Tue Feb 12 11:11:32 2019 +0100
@@ -11,7 +11,7 @@
         ><translate>Layers</translate>
         <font-awesome-icon
           icon="times"
-          class="ml-auto text-muted"
+          class="ml-auto text-muted pointer"
           @click="$store.commit('application/showLayers', false)"
         ></font-awesome-icon>
       </h6>
--- a/client/src/components/layers/Layerselect.vue	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/components/layers/Layerselect.vue	Tue Feb 12 11:11:32 2019 +0100
@@ -12,9 +12,11 @@
         :layername="layername"
         :layerindex="layerindex"
       ></LegendElement>
-      <label class="layername form-check-label" @click="visibilityToggled">{{
-        layername
-      }}</label>
+      <label
+        class="pointer layername form-check-label"
+        @click="visibilityToggled"
+        >{{ layername }}</label
+      >
     </div>
     <div v-if="isVisible && layername == 'Bottleneck isolines'">
       <img class="rounded my-1 d-block" :src="isolinesLegendImgDataURL" />
--- a/client/src/components/staging/StagingDetail.vue	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/components/staging/StagingDetail.vue	Tue Feb 12 11:11:32 2019 +0100
@@ -4,6 +4,7 @@
       <div class="mt-auto d-flex flex-row mb-auto small name text-left">
         <a
           v-if="isSoundingResult(data.kind.toUpperCase())"
+          class="text-left"
           @click="zoomTo()"
           href="#"
           >{{ data.summary.bottleneck }}</a
@@ -13,12 +14,22 @@
             data.summary.bottlenecks.length
           }})</span
         >
-        <span v-if="isFairwayDimension(data.kind.toUpperCase())"
+        <a
+          v-if="isApprovedGaugeMeasurement(data.kind.toUpperCase())"
+          class="text-left"
+          ><translate>Approved Gauge Measurements</translate> ({{
+            data.summary.length
+          }})</a
+        >
+        <span
+          class="text-left"
+          v-if="isFairwayDimension(data.kind.toUpperCase())"
           >{{ data.summary["source-organization"] }} (LOS:
           {{ data.summary.los }})</span
         >
         <a
           href="#"
+          class="text-left"
           @click="zoomToStretch(data.summary.stretch)"
           v-if="isStretch(data.kind.toUpperCase())"
           >{{ data.summary.stretch }}</a
@@ -64,31 +75,52 @@
             }"
             @click="toggleApproval(data.id, $options.STATES.REJECTED)"
           >
-            <font-awesome-icon icon="times"></font-awesome-icon>
+            <font-awesome-icon icon="times" class="pointer"></font-awesome-icon>
           </button>
         </div>
         <div v-if="isBottleneck(data.kind.toUpperCase())">
-          <div
-            @click="showDetails()"
-            class="mt-auto mb-auto text-info text-left"
-          >
+          <div class="mt-auto mb-auto text-info text-left">
             <font-awesome-icon
+              class="pointer"
+              @click="showDetails()"
               v-if="show"
               icon="angle-up"
               fixed-width
             ></font-awesome-icon>
             <font-awesome-icon
+              class="pointer"
+              @click="showDetails()"
               v-if="loading"
               icon="spinner"
               fixed-width
             ></font-awesome-icon>
             <font-awesome-icon
+              class="pointer"
               v-if="!show && !loading"
               icon="angle-down"
               fixed-width
             ></font-awesome-icon>
           </div>
         </div>
+        <div v-if="isApprovedGaugeMeasurement(data.kind.toUpperCase())">
+          <div
+            @click="showAGMDetails = !showAGMDetails"
+            class="mt-auto mb-auto text-info text-left"
+          >
+            <font-awesome-icon
+              class="pointer"
+              v-if="showAGMDetails"
+              icon="angle-up"
+              fixed-width
+            ></font-awesome-icon>
+            <font-awesome-icon
+              class="pointer"
+              v-if="!showAGMDetails"
+              icon="angle-down"
+              fixed-width
+            ></font-awesome-icon>
+          </div>
+        </div>
         <div v-else class="empty"></div>
       </div>
     </div>
@@ -104,23 +136,25 @@
               bottleneck.properties.objnam
             }}</a>
             <div
-              @click="showFull = !showFull"
+              @click="showBottleneckDetails = !showBottleneckDetails"
               class="small mt-auto mb-auto text-info text-left"
             >
               <font-awesome-icon
-                v-if="showFull"
+                class="pointer"
+                v-if="showBottleneckDetails"
                 icon="angle-up"
                 fixed-width
               ></font-awesome-icon>
               <font-awesome-icon
-                v-if="!showFull"
+                class="pointer"
+                v-if="!showBottleneckDetails"
                 icon="angle-down"
                 fixed-width
               ></font-awesome-icon>
             </div>
           </div>
 
-          <div class="d-flex flex-row" v-if="showFull">
+          <div class="d-flex flex-row" v-if="showBottleneckDetails">
             <table>
               <tr
                 v-for="(info, index) in Object.keys(bottleneck.properties)"
@@ -137,6 +171,108 @@
         </div>
       </div>
     </div>
+    <div v-if="showAGMDetails">
+      <div class="pl-3 d-flex flex-row">
+        <span class="condensed agmcode text-left"
+          ><small><translate>ISRS Code</translate></small></span
+        >
+        <span class="condensed agmdetail text-left"
+          ><small><translate>Date of measurement</translate></small></span
+        >
+      </div>
+      <div class="diffs">
+        <div v-for="(result, index) in data.summary" :key="index">
+          <div class="pl-3 d-flex flex-row">
+            <span
+              v-if="result.versions.length == 1"
+              class="condensed agmcode text-left"
+              ><small
+                >{{ result["fk-gauge-id"] }}
+                <translate>( New )</translate></small
+              ></span
+            >
+            <span
+              v-if="result.versions.length == 2"
+              class="condensed agmcode text-left"
+              ><small>{{ result["fk-gauge-id"] }}</small></span
+            >
+            <span class="condensed agmdetail text-left"
+              ><small>{{
+                formatSurveyDate(result["measure-date"])
+              }}</small></span
+            >
+            <div
+              @click="toggleDiff(index)"
+              class="small ml-auto mt-auto mb-auto text-info text-left"
+            >
+              <font-awesome-icon
+                class="pointer"
+                v-if="showDiff == index"
+                icon="angle-up"
+                fixed-width
+              ></font-awesome-icon>
+              <font-awesome-icon
+                class="pointer"
+                v-if="showDiff != index"
+                icon="angle-down"
+                fixed-width
+              ></font-awesome-icon>
+            </div>
+          </div>
+          <div v-if="showDiff == index" class="pl-3 d-flex flex-row">
+            <div>
+              <div class="d-flex flex-row condensed pl-3 text-left">
+                <div class="header border-bottom agmdetailskeys">
+                  <small><translate>Value</translate></small>
+                </div>
+                <div
+                  v-if="result.versions.length == 2"
+                  class="header border-bottom agmdetailsvalues"
+                >
+                  <small><translate>Old</translate></small>
+                </div>
+                <div class="header border-bottom agmdetailsvalues">
+                  <small><translate>New</translate></small>
+                </div>
+              </div>
+              <div
+                class="d-flex flex-row condensed pl-3 text-left"
+                v-for="(entry, index) in Object.keys(result.versions[0])"
+                :key="index"
+              >
+                <div
+                  v-if="
+                    result.versions.length == 1 ||
+                      result.versions[0][entry] != result.versions[1][entry]
+                  "
+                  class="agmdetailskeys"
+                >
+                  <small>{{ entry }}</small>
+                </div>
+                <div
+                  v-if="
+                    result.versions.length == 1 ||
+                      result.versions[0][entry] != result.versions[1][entry]
+                  "
+                  class="agmdetailsvalues"
+                >
+                  <small>{{ result.versions[0][entry] }}</small>
+                </div>
+                <div
+                  v-if="
+                    result.versions.length == 2 &&
+                      result.versions[0][entry] != result.versions[1][entry]
+                  "
+                  class="agmdetailsvalues"
+                >
+                  <small>{{ result.versions[1][entry] }}</small>
+                </div>
+              </div>
+            </div>
+          </div>
+        </div>
+      </div>
+    </div>
   </div>
 </template>
 
@@ -164,12 +300,16 @@
 import { mapState } from "vuex";
 import { LAYERS } from "@/store/map.js";
 
+const NO_DIFF = -1;
+
 export default {
   name: "stagingdetail",
   props: ["data"],
   data() {
     return {
-      showFull: false,
+      showDiff: NO_DIFF,
+      showAGMDetails: false,
+      showBottleneckDetails: false,
       show: false,
       loading: false,
       bottlenecks: []
@@ -198,6 +338,9 @@
     }
   },
   watch: {
+    showAGMDetails() {
+      if (!this.showAGMDetails) this.showDiff = NO_DIFF;
+    },
     open() {
       const { review } = this.$route.query;
       if (review) {
@@ -206,6 +349,13 @@
     }
   },
   methods: {
+    toggleDiff(number) {
+      if (this.showDiff !== number || this.showDiff == -1) {
+        this.showDiff = number;
+      } else {
+        this.showDiff = -1;
+      }
+    },
     zoomToStretch(name) {
       this.$store.commit("map/setLayerVisible", LAYERS.STRETCHES);
       this.$store
@@ -281,6 +431,9 @@
     isFairwayDimension(kind) {
       return kind === "FD";
     },
+    isApprovedGaugeMeasurement(kind) {
+      return kind === "AGM";
+    },
     isBottleneck(kind) {
       return kind === "BN";
     },
@@ -342,6 +495,11 @@
 </script>
 
 <style lang="scss" scoped>
+.diffs {
+  overflow-y: auto;
+  max-height: 250px;
+}
+
 .highlight {
   background-color: #f9f9f9;
 }
@@ -377,4 +535,20 @@
 .controls {
   width: 60px;
 }
+
+.agmcode {
+  width: 200px;
+}
+
+.agmdate {
+  width: 100px;
+}
+
+.agmdetailskeys {
+  width: 130px;
+}
+
+.agmdetailsvalues {
+  width: 200px;
+}
 </style>
--- a/client/src/components/toolbar/Toolbar.vue	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/components/toolbar/Toolbar.vue	Tue Feb 12 11:11:32 2019 +0100
@@ -6,18 +6,19 @@
           (expandToolbar ? 'expanded' : 'collapsed')
       "
     >
-      <Identify></Identify>
-      <Layers></Layers>
-      <Profiles></Profiles>
-      <Linetool></Linetool>
-      <Polygontool></Polygontool>
-      <Pdftool></Pdftool>
+      <Identify class="pointer"></Identify>
+      <Layers class="pointer"></Layers>
+      <Profiles class="pointer"></Profiles>
+      <Linetool class="pointer"></Linetool>
+      <Polygontool class="pointer"></Polygontool>
+      <Pdftool class="pointer"></Pdftool>
     </div>
     <div
       @click="$store.commit('application/expandToolbar', !expandToolbar)"
       class="toolbar-button toolbar-toggle rounded-bottom bg-info text-white"
     >
       <font-awesome-icon
+        class="pointer"
         :icon="expandToolbar ? 'angle-up' : 'angle-down'"
       ></font-awesome-icon>
     </div>
--- a/client/src/components/usermanagement/Userdetail.vue	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/components/usermanagement/Userdetail.vue	Tue Feb 12 11:11:32 2019 +0100
@@ -5,7 +5,7 @@
     >
       {{ this.cardHeader }}
       <span @click="closeDetailview" class="closebutton">
-        <font-awesome-icon icon="times"></font-awesome-icon>
+        <font-awesome-icon icon="times" class="pointer"></font-awesome-icon>
       </span>
     </h6>
     <div class="card-body">
--- a/client/src/components/usermanagement/Usermanagement.vue	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/components/usermanagement/Usermanagement.vue	Tue Feb 12 11:11:32 2019 +0100
@@ -124,7 +124,7 @@
           <translate>Delete user</translate>
           <font-awesome-icon
             icon="times"
-            class="ml-auto text-muted"
+            class="ml-auto text-muted pointer"
             @click="showDeleteUserPrompt = false"
           ></font-awesome-icon>
         </h6>
--- a/client/src/locale/bg_BG/LC_MESSAGES/app.po	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/locale/bg_BG/LC_MESSAGES/app.po	Tue Feb 12 11:11:32 2019 +0100
@@ -10,7 +10,8 @@
 "POT-Creation-Date: 2019-01-25 10:11+0100\n"
 "PO-Revision-Date: 2019-01-23 09:40+0000\n"
 "Last-Translator: Fadi Abbud <fadi.abbud@intevation.de>\n"
-"Language-Team: Bulgarian <https://hosted.weblate.org/projects/gemma/client/bg/>\n"
+"Language-Team: Bulgarian <https://hosted.weblate.org/projects/gemma/client/"
+"bg/>\n"
 "Language: bg_BG\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -18,11 +19,23 @@
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 "X-Generator: Weblate 3.4\n"
 
-#: src/components/Pdftool.vue:400
+#: src/components/ImportWaterwayProfiles.vue:164
+msgid " was successfully uploaded."
+msgstr ""
+
+#: src/components/Pdftool.vue:453
 msgid "– generated by:"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:778
+#: src/components/staging/StagingDetail.vue:188
+msgid "( New )"
+msgstr ""
+
+#: src/components/Pdftool.vue:29
+msgid "{{ template.name }}"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:795
 msgid "15 minutes"
 msgstr ""
 
@@ -34,23 +47,27 @@
 msgid "Accesslog"
 msgstr ""
 
-#: src/components/usermanagement/Usermanagement.vue:104
+#: src/components/usermanagement/Usermanagement.vue:102
 msgid "Add User"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:798
+#: src/components/staging/StagingDetail.vue:19
+msgid "Approved Gauge Measurements"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:815
 msgid "April"
 msgstr ""
 
-#: src/store/map.js:445
+#: src/store/map.js:565
 msgid "Area"
 msgstr "Район"
 
-#: src/components/importschedule/Importscheduledetail.vue:775
+#: src/components/importschedule/Importscheduledetail.vue:792
 msgid "at"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:802
+#: src/components/importschedule/Importscheduledetail.vue:819
 msgid "August"
 msgstr ""
 
@@ -59,45 +76,47 @@
 msgstr ""
 
 #: src/components/importschedule/Importscheduledetail.vue:34
-msgid "Available fairway fpths"
+msgid "Available fairway depths"
 msgstr ""
 
 #: src/components/Login.vue:70
 msgid "back to login"
 msgstr ""
 
-#: src/components/Bottlenecks.vue:274
-#: src/components/ImportApprovedGaugeMeasurement.vue:111
+#: src/components/Bottlenecks.vue:277
+#: src/components/ImportApprovedGaugeMeasurement.vue:108
 #: src/components/ImportSoundingresults.vue:216
 #: src/components/ImportSoundingresults.vue:255
 #: src/components/ImportSoundingresults.vue:286
-#: src/components/ImportStretches.vue:306
-#: src/components/ImportStretches.vue:313
-#: src/components/ImportStretches.vue:485 src/components/Search.vue:258
+#: src/components/ImportStretches.vue:303
+#: src/components/ImportStretches.vue:310
+#: src/components/ImportStretches.vue:482
+#: src/components/ImportWaterwayProfiles.vue:175 src/components/Search.vue:258
 #: src/components/Systemconfiguration.vue:114
 #: src/components/Systemconfiguration.vue:129
 #: src/components/Systemconfiguration.vue:148
 #: src/components/Systemconfiguration.vue:165
 #: src/components/importqueue/Importqueue.vue:160
 #: src/components/importqueue/Importqueue.vue:180
-#: src/components/importqueue/Importqueuedetail.vue:182
+#: src/components/importqueue/Importqueuedetail.vue:214
 #: src/components/importschedule/Importschedule.vue:148
 #: src/components/importschedule/Importschedule.vue:167
 #: src/components/importschedule/Importschedule.vue:176
 #: src/components/importschedule/Importschedule.vue:198
-#: src/components/importschedule/Importscheduledetail.vue:647
-#: src/components/importschedule/Importscheduledetail.vue:727
-#: src/components/importschedule/Importscheduledetail.vue:757
-#: src/components/staging/StagingDetail.vue:251
+#: src/components/importschedule/Importscheduledetail.vue:664
+#: src/components/importschedule/Importscheduledetail.vue:744
+#: src/components/importschedule/Importscheduledetail.vue:774
+#: src/components/staging/StagingDetail.vue:364
+#: src/components/staging/StagingDetail.vue:418
 #: src/components/usermanagement/Userdetail.vue:304
 #: src/components/usermanagement/Userdetail.vue:376
-#: src/components/usermanagement/Usermanagement.vue:298
-#: src/components/usermanagement/Usermanagement.vue:306
-#: src/components/usermanagement/Usermanagement.vue:340
+#: src/components/usermanagement/Usermanagement.vue:337
+#: src/components/usermanagement/Usermanagement.vue:345
+#: src/components/usermanagement/Usermanagement.vue:379
 msgid "Backend Error"
 msgstr ""
 
-#: src/components/ImportSoundingresults.vue:16
+#: src/components/ImportSoundingresults.vue:16 src/components/Pdftool.vue:496
 #, fuzzy
 msgid "Bottleneck"
 msgstr "Критични участъци"
@@ -112,7 +131,7 @@
 
 #: src/components/Bottlenecks.vue:4 src/components/Sidebar.vue:27
 #: src/components/importschedule/Importscheduledetail.vue:25
-#: src/components/staging/StagingDetail.vue:11
+#: src/components/staging/StagingDetail.vue:12
 msgid "Bottlenecks"
 msgstr ""
 
@@ -129,13 +148,15 @@
 msgid "choose .zip- file"
 msgstr ""
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:78
-#: src/components/ImportWaterwayProfiles.vue:75
+#: src/components/ImportApprovedGaugeMeasurement.vue:75
+#: src/components/ImportWaterwayProfiles.vue:135
+#: src/components/ImportWaterwayProfiles.vue:169
 msgid "choose file to upload"
 msgstr ""
 
-#: src/components/Pdftool.vue:18
-msgid "Choose format:"
+#: src/components/Pdftool.vue:23
+#, fuzzy
+msgid "Chose preset"
 msgstr "Избиране на формат"
 
 #: src/components/fairway/Profiles.vue:64
@@ -160,25 +181,29 @@
 msgid "Country"
 msgstr "Държава"
 
-#: src/components/ImportStretches.vue:85
+#: src/components/ImportStretches.vue:87
 msgid "Countrycode"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:333
+#: src/components/importschedule/Importscheduledetail.vue:345
 msgid "Cronstring"
 msgstr ""
 
 #: src/components/ImportSoundingresults.vue:72
-#: src/components/importqueue/Importqueuedetail.vue:49
+#: src/components/importqueue/Importqueuedetail.vue:54
 #: src/components/staging/Staging.vue:13
 msgid "Date"
 msgstr ""
 
-#: src/components/ImportStretches.vue:201
+#: src/components/ImportStretches.vue:198
 msgid "Date info"
 msgstr ""
 
-#: src/components/Pdftool.vue:396
+#: src/components/staging/StagingDetail.vue:179
+msgid "Date of measurement"
+msgstr ""
+
+#: src/components/Pdftool.vue:449
 msgid "Date of publication:"
 msgstr ""
 
@@ -186,11 +211,11 @@
 msgid "Datum"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:780
+#: src/components/importschedule/Importscheduledetail.vue:797
 msgid "day"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:806
+#: src/components/importschedule/Importscheduledetail.vue:823
 msgid "December"
 msgstr ""
 
@@ -198,11 +223,15 @@
 msgid "Define stretches"
 msgstr ""
 
+#: src/components/usermanagement/Usermanagement.vue:123
+msgid "Delete user"
+msgstr ""
+
 #: src/components/importschedule/Importschedule.vue:192
 msgid "Deleted import: #"
 msgstr ""
 
-#: src/components/ImportStretches.vue:361
+#: src/components/ImportStretches.vue:358
 msgid "Deleting "
 msgstr ""
 
@@ -210,14 +239,26 @@
 msgid "Depth"
 msgstr ""
 
+#: src/components/Pdftool.vue:522
+msgid "Depth relativ to"
+msgstr ""
+
 #: src/components/ImportSoundingresults.vue:52
 msgid "Depthreference"
 msgstr ""
 
+#: src/components/importschedule/Importscheduledetail.vue:49
+msgid "Distance marks ashore"
+msgstr ""
+
 #: src/components/importschedule/Importscheduledetail.vue:46
 msgid "Distance marks virtual"
 msgstr ""
 
+#: src/components/usermanagement/Usermanagement.vue:131
+msgid "Do you really want to delete the following user account:"
+msgstr ""
+
 #: src/components/Pdftool.vue:10
 msgid "Download"
 msgstr ""
@@ -235,11 +276,11 @@
 msgid "Email address"
 msgstr "Адрес на ел. поща"
 
-#: src/components/importschedule/Importscheduledetail.vue:53
+#: src/components/importschedule/Importscheduledetail.vue:56
 msgid "Email Notification"
 msgstr ""
 
-#: src/components/ImportStretches.vue:131
+#: src/components/ImportStretches.vue:133
 msgid "End rhm"
 msgstr ""
 
@@ -271,7 +312,7 @@
 msgid "Errorlog"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:771
+#: src/components/importschedule/Importscheduledetail.vue:788
 msgid "Every"
 msgstr ""
 
@@ -283,13 +324,15 @@
 msgid "Fairway dimension"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:34
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:25
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:25
 #: src/components/importschedule/importtypes/Waterwayarea.vue:25
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:25
 msgid "Featuretype"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:796
+#: src/components/importschedule/Importscheduledetail.vue:813
 msgid "February"
 msgstr ""
 
@@ -297,7 +340,11 @@
 msgid "Forgot password"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:790
+#: src/components/Pdftool.vue:33
+msgid "Format"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:807
 msgid "Friday"
 msgstr ""
 
@@ -305,11 +352,11 @@
 msgid "Gauge measurement"
 msgstr ""
 
-#: src/components/Pdftool.vue:10 src/components/Pdftool.vue:61
+#: src/components/Pdftool.vue:10 src/components/Pdftool.vue:96
 msgid "Generate PDF"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:779
+#: src/components/importschedule/Importscheduledetail.vue:796
 msgid "hour"
 msgstr ""
 
@@ -317,7 +364,7 @@
 msgid "Id"
 msgstr ""
 
-#: src/components/ImportStretches.vue:66
+#: src/components/ImportStretches.vue:68
 msgid "ID"
 msgstr ""
 
@@ -325,19 +372,19 @@
 msgid "Identified"
 msgstr ""
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:101
+#: src/components/ImportApprovedGaugeMeasurement.vue:98
 #: src/components/ImportSoundingresults.vue:278
-#: src/components/ImportStretches.vue:474
-#: src/components/ImportWaterwayProfiles.vue:88 src/components/Sidebar.vue:58
+#: src/components/ImportStretches.vue:471
+#: src/components/ImportWaterwayProfiles.vue:162 src/components/Sidebar.vue:58
 #: src/components/importschedule/Importschedule.vue:33
-#: src/components/importschedule/Importscheduledetail.vue:456
-#: src/components/importschedule/Importscheduledetail.vue:640
-#: src/components/importschedule/Importscheduledetail.vue:710
-#: src/components/importschedule/Importscheduledetail.vue:740
+#: src/components/importschedule/Importscheduledetail.vue:470
+#: src/components/importschedule/Importscheduledetail.vue:657
+#: src/components/importschedule/Importscheduledetail.vue:727
+#: src/components/importschedule/Importscheduledetail.vue:757
 msgid "Import"
 msgstr ""
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:11
+#: src/components/ImportApprovedGaugeMeasurement.vue:8
 #: src/components/Sidebar.vue:76
 msgid "Import approved gaugemeasurements"
 msgstr ""
@@ -354,7 +401,7 @@
 msgid "Import waterway profiles"
 msgstr ""
 
-#: src/components/ImportWaterwayProfiles.vue:11
+#: src/components/ImportWaterwayProfiles.vue:8
 msgid "Import Waterwayprofiles"
 msgstr ""
 
@@ -386,32 +433,36 @@
 msgid "Invalid input"
 msgstr ""
 
-#: src/components/Pdftool.vue:29
+#: src/components/Pdftool.vue:62
 msgid "ISO A3"
 msgstr ""
 
-#: src/components/Pdftool.vue:30
+#: src/components/Pdftool.vue:63
 msgid "ISO A4"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:795
+#: src/components/staging/StagingDetail.vue:176
+msgid "ISRS Code"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:812
 msgid "January"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:801
+#: src/components/importschedule/Importscheduledetail.vue:818
 msgid "July"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:800
+#: src/components/importschedule/Importscheduledetail.vue:817
 msgid "June"
 msgstr ""
 
 #: src/components/importqueue/Importqueue.vue:58
-#: src/components/importqueue/Importqueuedetail.vue:45
+#: src/components/importqueue/Importqueuedetail.vue:50
 msgid "Kind"
 msgstr ""
 
-#: src/components/Pdftool.vue:20
+#: src/components/Pdftool.vue:39
 msgid "landscape"
 msgstr ""
 
@@ -428,7 +479,7 @@
 msgid "Layers"
 msgstr "Слоеве"
 
-#: src/store/map.js:424
+#: src/store/map.js:544
 msgid "Length"
 msgstr ""
 
@@ -457,7 +508,7 @@
 msgstr ""
 
 #: src/components/importschedule/Importschedule.vue:161
-#: src/components/importschedule/Importscheduledetail.vue:641
+#: src/components/importschedule/Importscheduledetail.vue:658
 msgid "Manually triggered import: #"
 msgstr ""
 
@@ -465,15 +516,15 @@
 msgid "Map"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:797
+#: src/components/importschedule/Importscheduledetail.vue:814
 msgid "March"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:132
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:130
 msgid "MaxWidth"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:799
+#: src/components/importschedule/Importscheduledetail.vue:816
 msgid "May"
 msgstr ""
 
@@ -481,28 +532,28 @@
 msgid "Measurement"
 msgstr ""
 
-#: src/components/importqueue/Importqueuedetail.vue:58
+#: src/components/importqueue/Importqueuedetail.vue:63
 #, fuzzy
 msgid "Message"
 msgstr "Cъобщение"
 
-#: src/components/importschedule/Importscheduledetail.vue:772
+#: src/components/importschedule/Importscheduledetail.vue:789
 msgid "minutes past"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:110
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:109
 msgid "MinWidth"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:786
+#: src/components/importschedule/Importscheduledetail.vue:803
 msgid "Monday"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:782
+#: src/components/importschedule/Importscheduledetail.vue:799
 msgid "month"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:198
+#: src/components/importschedule/Importscheduledetail.vue:210
 msgid "Monthly"
 msgstr ""
 
@@ -512,16 +563,20 @@
 msgid "Name"
 msgstr "име"
 
-#: src/components/ImportStretches.vue:182
+#: src/components/ImportStretches.vue:184
 msgid "National Object name"
 msgstr ""
 
+#: src/components/staging/StagingDetail.vue:227
+msgid "New"
+msgstr ""
+
 #: src/components/importschedule/Importschedule.vue:93
-#: src/components/importschedule/Importscheduledetail.vue:457
+#: src/components/importschedule/Importscheduledetail.vue:471
 msgid "New Import"
 msgstr ""
 
-#: src/components/ImportStretches.vue:247
+#: src/components/ImportStretches.vue:244
 msgid "New stretch"
 msgstr ""
 
@@ -529,7 +584,7 @@
 msgid "No features identified."
 msgstr ""
 
-#: src/components/Bottlenecks.vue:115 src/components/ImportStretches.vue:59
+#: src/components/Bottlenecks.vue:118 src/components/ImportStretches.vue:61
 #: src/components/staging/Staging.vue:36
 msgid "No results."
 msgstr ""
@@ -538,35 +593,39 @@
 msgid "No scheduled imports"
 msgstr ""
 
-#: src/components/ImportStretches.vue:360
+#: src/components/ImportStretches.vue:357
 msgid "Not implemented"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:805
+#: src/components/importschedule/Importscheduledetail.vue:822
 msgid "November"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:776
+#: src/components/importschedule/Importscheduledetail.vue:793
 msgid "o' clock"
 msgstr ""
 
-#: src/components/ImportStretches.vue:164
+#: src/components/ImportStretches.vue:166
 msgid "Object name"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:804
+#: src/components/importschedule/Importscheduledetail.vue:821
 msgid "October"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:774
+#: src/components/importschedule/Importscheduledetail.vue:791
 msgid "of"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:773
+#: src/components/staging/StagingDetail.vue:224
+msgid "Old"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:790
 msgid "on"
 msgstr ""
 
-#: src/components/Pdftool.vue:18
+#: src/components/Pdftool.vue:19
 msgid "Open in new window"
 msgstr ""
 
@@ -589,7 +648,9 @@
 msgstr ""
 
 #: src/components/usermanagement/Userdetail.vue:346
-msgid "Password should at least be 8 char long including 1 digit and 1 special char like $"
+msgid ""
+"Password should at least be 8 char long including 1 digit and 1 special char "
+"like $"
 msgstr ""
 
 #: src/components/usermanagement/Userdetail.vue:342
@@ -609,19 +670,21 @@
 msgid "Please choose a role"
 msgstr ""
 
-#: src/components/ImportStretches.vue:97
+#: src/components/ImportStretches.vue:99
 msgid "Please enter a countrycode"
 msgstr ""
 
 #: src/components/ImportSoundingresults.vue:84
-#: src/components/ImportStretches.vue:212
+#: src/components/ImportStretches.vue:209
 msgid "Please enter a date"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:100
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:99
 msgid "Please enter a depth"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:46
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:37
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:37
 #: src/components/importschedule/importtypes/Waterwayarea.vue:37
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:37
@@ -632,11 +695,11 @@
 msgid "Please enter a level of service"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:146
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:143
 msgid "Please enter a maximum width"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:124
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:122
 msgid "Please enter a minimum width"
 msgstr ""
 
@@ -653,20 +716,22 @@
 msgid "Please enter a reference"
 msgstr ""
 
-#: src/components/ImportStretches.vue:228
+#: src/components/ImportStretches.vue:225
 msgid "Please enter a source"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:170
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:167
 msgid "Please enter a source orgranization"
 msgstr ""
 
-#: src/components/ImportStretches.vue:126
+#: src/components/ImportStretches.vue:128
 msgid "Please enter a start point"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:25
 #: src/components/importschedule/importtypes/Availablefairwaydepth.vue:19
 #: src/components/importschedule/importtypes/Bottleneck.vue:44
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:19
 #: src/components/importschedule/importtypes/Distancemarksvirtual.vue:19
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:19
 #: src/components/importschedule/importtypes/Gaugemeasurement.vue:19
@@ -681,16 +746,15 @@
 msgid "Please enter a Username"
 msgstr ""
 
-#: src/components/ImportStretches.vue:151
+#: src/components/ImportStretches.vue:153
 msgid "Please enter an end point"
 msgstr ""
 
-#: src/components/ImportStretches.vue:78
+#: src/components/ImportStretches.vue:80
 msgid "Please enter an id"
 msgstr ""
 
-#: src/components/ImportStretches.vue:176
-#: src/components/ImportStretches.vue:194
+#: src/components/ImportStretches.vue:178
 msgid "Please enter an objectname"
 msgstr ""
 
@@ -698,6 +762,8 @@
 msgid "Please enter correct coordinates in the format: Lat,Lon,Lat,Lon"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:63
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:57
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:57
 #: src/components/importschedule/importtypes/Waterwayarea.vue:57
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:57
@@ -713,7 +779,7 @@
 msgid "Please select one"
 msgstr ""
 
-#: src/components/Pdftool.vue:21
+#: src/components/Pdftool.vue:40
 msgid "portrait"
 msgstr ""
 
@@ -733,6 +799,10 @@
 msgid "Projection"
 msgstr ""
 
+#: src/components/Pdftool.vue:514
+msgid "Ref gauge"
+msgstr ""
+
 #: src/components/Logs.vue:48 src/components/importqueue/Importqueue.vue:84
 msgid "Refresh"
 msgstr ""
@@ -749,11 +819,15 @@
 msgid "Request password reset!"
 msgstr ""
 
+#: src/components/Pdftool.vue:44
+msgid "Resolution"
+msgstr ""
+
 #: src/components/usermanagement/Userdetail.vue:78
 msgid "Role"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:791
+#: src/components/importschedule/Importscheduledetail.vue:808
 msgid "Saturday"
 msgstr ""
 
@@ -761,16 +835,16 @@
 msgid "Saved cross profiles"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:711
+#: src/components/importschedule/Importscheduledetail.vue:728
 msgid "Saved import: #"
 msgstr ""
 
 #: src/components/importschedule/Importschedule.vue:36
-#: src/components/importschedule/Importscheduledetail.vue:189
+#: src/components/importschedule/Importscheduledetail.vue:201
 msgid "Schedule"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:147
+#: src/components/importschedule/Importscheduledetail.vue:159
 msgid "Scheduled"
 msgstr ""
 
@@ -786,7 +860,7 @@
 msgid "Send testmail"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:803
+#: src/components/importschedule/Importscheduledetail.vue:820
 msgid "September"
 msgstr ""
 
@@ -794,10 +868,14 @@
 msgid "Signer"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:167
+#: src/components/importschedule/Importscheduledetail.vue:179
 msgid "Simple schedule"
 msgstr ""
 
+#: src/components/Pdftool.vue:56
+msgid "Size"
+msgstr ""
+
 #: src/components/Identify.vue:60
 msgid ""
 "Some data ©\n"
@@ -805,6 +883,8 @@
 "        contributors."
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:55
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:45
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:45
 #: src/components/importschedule/importtypes/Waterwayarea.vue:45
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:45
@@ -815,7 +895,7 @@
 msgid "Sounding Result"
 msgstr ""
 
-#: src/components/ImportStretches.vue:217
+#: src/components/ImportStretches.vue:214
 msgid "Source"
 msgstr ""
 
@@ -823,7 +903,7 @@
 msgid "Source organization"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:157
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:154
 msgid "Source orgranization"
 msgstr ""
 
@@ -843,7 +923,7 @@
 msgid "Start"
 msgstr ""
 
-#: src/components/ImportStretches.vue:106
+#: src/components/ImportStretches.vue:108
 msgid "Start rhm"
 msgstr ""
 
@@ -851,15 +931,15 @@
 msgid "Starting import for "
 msgstr ""
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:102
+#: src/components/ImportApprovedGaugeMeasurement.vue:99
 msgid "Starting import of Approved Gauge Measurements"
 msgstr ""
 
-#: src/components/ImportStretches.vue:475
+#: src/components/ImportStretches.vue:472
 msgid "Starting import of stretch"
 msgstr ""
 
-#: src/components/ImportStretches.vue:157
+#: src/components/ImportStretches.vue:159
 msgid "Startpoint is not before endpoint."
 msgstr ""
 
@@ -867,8 +947,8 @@
 msgid "State"
 msgstr ""
 
-#: src/components/ImportStretches.vue:241
-#: src/components/importschedule/Importscheduledetail.vue:345
+#: src/components/ImportStretches.vue:238
+#: src/components/importschedule/Importscheduledetail.vue:357
 #: src/components/usermanagement/Userdetail.vue:129
 msgid "Submit"
 msgstr ""
@@ -881,15 +961,19 @@
 msgid "Successful"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:792
+#: src/components/importschedule/Importscheduledetail.vue:809
 msgid "Sunday"
 msgstr ""
 
+#: src/components/Pdftool.vue:506
+msgid "Survey date"
+msgstr ""
+
 #: src/components/usermanagement/Userdetail.vue:88
 msgid "Sysadmin"
 msgstr ""
 
-#: src/components/usermanagement/Usermanagement.vue:326
+#: src/components/usermanagement/Usermanagement.vue:365
 msgid "System-Administrator"
 msgstr ""
 
@@ -901,23 +985,27 @@
 msgid "Systemconfiguration"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:163
+msgid "this"
+msgstr ""
+
 #: src/components/Identify.vue:51
 msgid ""
 "This app uses <i>gemma</i>, which is Free Software under <br/>\n"
 "        %{ license } without warranty, see docs for details."
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:789
+#: src/components/importschedule/Importscheduledetail.vue:806
 msgid "Thursday"
 msgstr ""
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:45
-#: src/components/ImportWaterwayProfiles.vue:43
-#: src/components/importschedule/Importscheduledetail.vue:358
+#: src/components/ImportApprovedGaugeMeasurement.vue:42
+#: src/components/ImportWaterwayProfiles.vue:99
+#: src/components/importschedule/Importscheduledetail.vue:370
 msgid "Trigger import"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:787
+#: src/components/importschedule/Importscheduledetail.vue:804
 msgid "Tuesday"
 msgstr ""
 
@@ -927,11 +1015,7 @@
 msgid "Type"
 msgstr "Тип"
 
-#: src/components/ImportWaterwayProfiles.vue:89
-msgid "under construction"
-msgstr ""
-
-#: src/components/importschedule/Importscheduledetail.vue:741
+#: src/components/importschedule/Importscheduledetail.vue:758
 msgid "update import: #"
 msgstr ""
 
@@ -939,8 +1023,10 @@
 msgid "Upload"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:16
 #: src/components/importschedule/importtypes/Availablefairwaydepth.vue:5
 #: src/components/importschedule/importtypes/Bottleneck.vue:5
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:5
 #: src/components/importschedule/importtypes/Distancemarksvirtual.vue:5
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:5
 #: src/components/importschedule/importtypes/Gaugemeasurement.vue:5
@@ -969,12 +1055,17 @@
 #: src/components/Identify.vue:65
 msgid ""
 "Uses\n"
-"        <a href=\"https://download.geonames.org/export/dump/readme.txt\">GeoNames</a>\n"
+"        <a href=\"https://download.geonames.org/export/dump/readme.txt"
+"\">GeoNames</a>\n"
 "        under %{ geoLicense }."
 msgstr ""
 
+#: src/components/staging/StagingDetail.vue:218
+msgid "Value"
+msgstr ""
+
 #: src/components/usermanagement/Userdetail.vue:91
-#: src/components/usermanagement/Usermanagement.vue:327
+#: src/components/usermanagement/Usermanagement.vue:366
 msgid "Waterway Admin"
 msgstr ""
 
@@ -991,26 +1082,28 @@
 msgstr ""
 
 #: src/components/usermanagement/Userdetail.vue:94
-#: src/components/usermanagement/Usermanagement.vue:328
+#: src/components/usermanagement/Usermanagement.vue:367
 msgid "Waterway User"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:788
+#: src/components/importschedule/Importscheduledetail.vue:805
 msgid "Wednesday"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:781
+#: src/components/importschedule/Importscheduledetail.vue:798
 msgid "week"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:197
+#: src/components/importschedule/Importscheduledetail.vue:209
 msgid "Weekly"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:783
+#: src/components/importschedule/Importscheduledetail.vue:800
 msgid "year"
 msgstr "Година"
 
 #: src/components/fairway/Profiles.vue:443
-msgid "You can now select these coordinates from the \"Saved cross profiles\" menu to restore this cross profile."
+msgid ""
+"You can now select these coordinates from the \"Saved cross profiles\" menu "
+"to restore this cross profile."
 msgstr ""
--- a/client/src/locale/de_AT/LC_MESSAGES/app.po	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/locale/de_AT/LC_MESSAGES/app.po	Tue Feb 12 11:11:32 2019 +0100
@@ -10,7 +10,8 @@
 "POT-Creation-Date: 2019-01-24 09:38+0100\n"
 "PO-Revision-Date: 2019-01-26 14:04+0000\n"
 "Last-Translator: Bernhard E. Reiter <bernhard.reiter@intevation.de>\n"
-"Language-Team: Austrian German <https://hosted.weblate.org/projects/gemma/client/de_AT/>\n"
+"Language-Team: Austrian German <https://hosted.weblate.org/projects/gemma/"
+"client/de_AT/>\n"
 "Language: de_AT\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -18,11 +19,23 @@
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 "X-Generator: Weblate 3.5-dev\n"
 
-#: src/components/Pdftool.vue:400
+#: src/components/ImportWaterwayProfiles.vue:164
+msgid " was successfully uploaded."
+msgstr ""
+
+#: src/components/Pdftool.vue:453
 msgid "– generated by:"
 msgstr "– erstellt von:"
 
-#: src/components/importschedule/Importscheduledetail.vue:778
+#: src/components/staging/StagingDetail.vue:188
+msgid "( New )"
+msgstr ""
+
+#: src/components/Pdftool.vue:29
+msgid "{{ template.name }}"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:795
 msgid "15 minutes"
 msgstr "15 Minuten"
 
@@ -34,23 +47,28 @@
 msgid "Accesslog"
 msgstr "Zugriffs-Protokoll"
 
-#: src/components/usermanagement/Usermanagement.vue:104
+#: src/components/usermanagement/Usermanagement.vue:102
 msgid "Add User"
 msgstr "Benutzer hinzufügen"
 
-#: src/components/importschedule/Importscheduledetail.vue:798
+#: src/components/staging/StagingDetail.vue:19
+#, fuzzy
+msgid "Approved Gauge Measurements"
+msgstr "Messung"
+
+#: src/components/importschedule/Importscheduledetail.vue:815
 msgid "April"
 msgstr "April"
 
-#: src/store/map.js:445
+#: src/store/map.js:565
 msgid "Area"
 msgstr "Fläche"
 
-#: src/components/importschedule/Importscheduledetail.vue:775
+#: src/components/importschedule/Importscheduledetail.vue:792
 msgid "at"
 msgstr "am"
 
-#: src/components/importschedule/Importscheduledetail.vue:802
+#: src/components/importschedule/Importscheduledetail.vue:819
 msgid "August"
 msgstr "August"
 
@@ -60,45 +78,47 @@
 
 #: src/components/importschedule/Importscheduledetail.vue:34
 #, fuzzy
-msgid "Available fairway fpths"
+msgid "Available fairway depths"
 msgstr "Verfügbare Fahrrinnen Tiefen"
 
 #: src/components/Login.vue:70
 msgid "back to login"
 msgstr "zurück zur Anmeldung"
 
-#: src/components/Bottlenecks.vue:274
-#: src/components/ImportApprovedGaugeMeasurement.vue:111
+#: src/components/Bottlenecks.vue:277
+#: src/components/ImportApprovedGaugeMeasurement.vue:108
 #: src/components/ImportSoundingresults.vue:216
 #: src/components/ImportSoundingresults.vue:255
 #: src/components/ImportSoundingresults.vue:286
-#: src/components/ImportStretches.vue:306
-#: src/components/ImportStretches.vue:313
-#: src/components/ImportStretches.vue:485 src/components/Search.vue:258
+#: src/components/ImportStretches.vue:303
+#: src/components/ImportStretches.vue:310
+#: src/components/ImportStretches.vue:482
+#: src/components/ImportWaterwayProfiles.vue:175 src/components/Search.vue:258
 #: src/components/Systemconfiguration.vue:114
 #: src/components/Systemconfiguration.vue:129
 #: src/components/Systemconfiguration.vue:148
 #: src/components/Systemconfiguration.vue:165
 #: src/components/importqueue/Importqueue.vue:160
 #: src/components/importqueue/Importqueue.vue:180
-#: src/components/importqueue/Importqueuedetail.vue:182
+#: src/components/importqueue/Importqueuedetail.vue:214
 #: src/components/importschedule/Importschedule.vue:148
 #: src/components/importschedule/Importschedule.vue:167
 #: src/components/importschedule/Importschedule.vue:176
 #: src/components/importschedule/Importschedule.vue:198
-#: src/components/importschedule/Importscheduledetail.vue:647
-#: src/components/importschedule/Importscheduledetail.vue:727
-#: src/components/importschedule/Importscheduledetail.vue:757
-#: src/components/staging/StagingDetail.vue:251
+#: src/components/importschedule/Importscheduledetail.vue:664
+#: src/components/importschedule/Importscheduledetail.vue:744
+#: src/components/importschedule/Importscheduledetail.vue:774
+#: src/components/staging/StagingDetail.vue:364
+#: src/components/staging/StagingDetail.vue:418
 #: src/components/usermanagement/Userdetail.vue:304
 #: src/components/usermanagement/Userdetail.vue:376
-#: src/components/usermanagement/Usermanagement.vue:298
-#: src/components/usermanagement/Usermanagement.vue:306
-#: src/components/usermanagement/Usermanagement.vue:340
+#: src/components/usermanagement/Usermanagement.vue:337
+#: src/components/usermanagement/Usermanagement.vue:345
+#: src/components/usermanagement/Usermanagement.vue:379
 msgid "Backend Error"
 msgstr "Server-Fehler"
 
-#: src/components/ImportSoundingresults.vue:16
+#: src/components/ImportSoundingresults.vue:16 src/components/Pdftool.vue:496
 msgid "Bottleneck"
 msgstr "Seichtstelle"
 
@@ -112,7 +132,7 @@
 
 #: src/components/Bottlenecks.vue:4 src/components/Sidebar.vue:27
 #: src/components/importschedule/Importscheduledetail.vue:25
-#: src/components/staging/StagingDetail.vue:11
+#: src/components/staging/StagingDetail.vue:12
 msgid "Bottlenecks"
 msgstr "Seichtstellen"
 
@@ -129,13 +149,15 @@
 msgid "choose .zip- file"
 msgstr "Wählen Sie eine .zip Datei"
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:78
-#: src/components/ImportWaterwayProfiles.vue:75
+#: src/components/ImportApprovedGaugeMeasurement.vue:75
+#: src/components/ImportWaterwayProfiles.vue:135
+#: src/components/ImportWaterwayProfiles.vue:169
 msgid "choose file to upload"
 msgstr "Wähle hochzuladende Datei"
 
-#: src/components/Pdftool.vue:18
-msgid "Choose format:"
+#: src/components/Pdftool.vue:23
+#, fuzzy
+msgid "Chose preset"
 msgstr "Format wählen:"
 
 #: src/components/fairway/Profiles.vue:64
@@ -159,27 +181,32 @@
 msgid "Country"
 msgstr "Land"
 
-#: src/components/ImportStretches.vue:85
+#: src/components/ImportStretches.vue:87
 #, fuzzy
 msgid "Countrycode"
 msgstr "Landeskennung"
 
-#: src/components/importschedule/Importscheduledetail.vue:333
+#: src/components/importschedule/Importscheduledetail.vue:345
 msgid "Cronstring"
 msgstr "Crontab-Zeile"
 
 #: src/components/ImportSoundingresults.vue:72
-#: src/components/importqueue/Importqueuedetail.vue:49
+#: src/components/importqueue/Importqueuedetail.vue:54
 #: src/components/staging/Staging.vue:13
 msgid "Date"
 msgstr "Datum"
 
-#: src/components/ImportStretches.vue:201
+#: src/components/ImportStretches.vue:198
 #, fuzzy
 msgid "Date info"
 msgstr "Datum"
 
-#: src/components/Pdftool.vue:396
+#: src/components/staging/StagingDetail.vue:179
+#, fuzzy
+msgid "Date of measurement"
+msgstr "Messung"
+
+#: src/components/Pdftool.vue:449
 #, fuzzy
 msgid "Date of publication:"
 msgstr "Veröffentlichungsdatum"
@@ -188,11 +215,11 @@
 msgid "Datum"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:780
+#: src/components/importschedule/Importscheduledetail.vue:797
 msgid "day"
 msgstr "Tag"
 
-#: src/components/importschedule/Importscheduledetail.vue:806
+#: src/components/importschedule/Importscheduledetail.vue:823
 msgid "December"
 msgstr "Dezember"
 
@@ -200,11 +227,16 @@
 msgid "Define stretches"
 msgstr ""
 
+#: src/components/usermanagement/Usermanagement.vue:123
+#, fuzzy
+msgid "Delete user"
+msgstr "Löchen "
+
 #: src/components/importschedule/Importschedule.vue:192
 msgid "Deleted import: #"
 msgstr ""
 
-#: src/components/ImportStretches.vue:361
+#: src/components/ImportStretches.vue:358
 msgid "Deleting "
 msgstr "Löchen "
 
@@ -212,14 +244,26 @@
 msgid "Depth"
 msgstr "Tiefe"
 
+#: src/components/Pdftool.vue:522
+msgid "Depth relativ to"
+msgstr ""
+
 #: src/components/ImportSoundingresults.vue:52
 msgid "Depthreference"
 msgstr "Tiefenreferenz"
 
+#: src/components/importschedule/Importscheduledetail.vue:49
+msgid "Distance marks ashore"
+msgstr ""
+
 #: src/components/importschedule/Importscheduledetail.vue:46
 msgid "Distance marks virtual"
 msgstr ""
 
+#: src/components/usermanagement/Usermanagement.vue:131
+msgid "Do you really want to delete the following user account:"
+msgstr ""
+
 #: src/components/Pdftool.vue:10
 msgid "Download"
 msgstr "Herunterladen"
@@ -236,11 +280,11 @@
 msgid "Email address"
 msgstr "E-Mail Adresse"
 
-#: src/components/importschedule/Importscheduledetail.vue:53
+#: src/components/importschedule/Importscheduledetail.vue:56
 msgid "Email Notification"
 msgstr "E-Mail Benachrichtigung"
 
-#: src/components/ImportStretches.vue:131
+#: src/components/ImportStretches.vue:133
 msgid "End rhm"
 msgstr ""
 
@@ -272,7 +316,7 @@
 msgid "Errorlog"
 msgstr "Fehlerprotokoll"
 
-#: src/components/importschedule/Importscheduledetail.vue:771
+#: src/components/importschedule/Importscheduledetail.vue:788
 msgid "Every"
 msgstr ""
 
@@ -285,6 +329,8 @@
 msgid "Fairway dimension"
 msgstr "Waterway-Admin"
 
+#: src/components/ImportWaterwayProfiles.vue:34
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:25
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:25
 #: src/components/importschedule/importtypes/Waterwayarea.vue:25
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:25
@@ -292,7 +338,7 @@
 msgid "Featuretype"
 msgstr "Featuretyp"
 
-#: src/components/importschedule/Importscheduledetail.vue:796
+#: src/components/importschedule/Importscheduledetail.vue:813
 msgid "February"
 msgstr "Februar"
 
@@ -300,7 +346,11 @@
 msgid "Forgot password"
 msgstr "Passwort vergessen"
 
-#: src/components/importschedule/Importscheduledetail.vue:790
+#: src/components/Pdftool.vue:33
+msgid "Format"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:807
 msgid "Friday"
 msgstr "Freitag"
 
@@ -309,11 +359,11 @@
 msgid "Gauge measurement"
 msgstr "Messung"
 
-#: src/components/Pdftool.vue:10 src/components/Pdftool.vue:61
+#: src/components/Pdftool.vue:10 src/components/Pdftool.vue:96
 msgid "Generate PDF"
 msgstr "PDF generieren"
 
-#: src/components/importschedule/Importscheduledetail.vue:779
+#: src/components/importschedule/Importscheduledetail.vue:796
 msgid "hour"
 msgstr "Stunde"
 
@@ -321,7 +371,7 @@
 msgid "Id"
 msgstr "Id"
 
-#: src/components/ImportStretches.vue:66
+#: src/components/ImportStretches.vue:68
 msgid "ID"
 msgstr "ID"
 
@@ -329,19 +379,19 @@
 msgid "Identified"
 msgstr "Identifiziert"
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:101
+#: src/components/ImportApprovedGaugeMeasurement.vue:98
 #: src/components/ImportSoundingresults.vue:278
-#: src/components/ImportStretches.vue:474
-#: src/components/ImportWaterwayProfiles.vue:88 src/components/Sidebar.vue:58
+#: src/components/ImportStretches.vue:471
+#: src/components/ImportWaterwayProfiles.vue:162 src/components/Sidebar.vue:58
 #: src/components/importschedule/Importschedule.vue:33
-#: src/components/importschedule/Importscheduledetail.vue:456
-#: src/components/importschedule/Importscheduledetail.vue:640
-#: src/components/importschedule/Importscheduledetail.vue:710
-#: src/components/importschedule/Importscheduledetail.vue:740
+#: src/components/importschedule/Importscheduledetail.vue:470
+#: src/components/importschedule/Importscheduledetail.vue:657
+#: src/components/importschedule/Importscheduledetail.vue:727
+#: src/components/importschedule/Importscheduledetail.vue:757
 msgid "Import"
 msgstr "Daten-Import"
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:11
+#: src/components/ImportApprovedGaugeMeasurement.vue:8
 #: src/components/Sidebar.vue:76
 msgid "Import approved gaugemeasurements"
 msgstr ""
@@ -358,7 +408,7 @@
 msgid "Import waterway profiles"
 msgstr ""
 
-#: src/components/ImportWaterwayProfiles.vue:11
+#: src/components/ImportWaterwayProfiles.vue:8
 #, fuzzy
 msgid "Import Waterwayprofiles"
 msgstr "Art des Imports"
@@ -392,32 +442,36 @@
 msgid "Invalid input"
 msgstr "Ungültige Eingabe"
 
-#: src/components/Pdftool.vue:29
+#: src/components/Pdftool.vue:62
 msgid "ISO A3"
 msgstr ""
 
-#: src/components/Pdftool.vue:30
+#: src/components/Pdftool.vue:63
 msgid "ISO A4"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:795
+#: src/components/staging/StagingDetail.vue:176
+msgid "ISRS Code"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:812
 msgid "January"
 msgstr "Januar"
 
-#: src/components/importschedule/Importscheduledetail.vue:801
+#: src/components/importschedule/Importscheduledetail.vue:818
 msgid "July"
 msgstr "Juli"
 
-#: src/components/importschedule/Importscheduledetail.vue:800
+#: src/components/importschedule/Importscheduledetail.vue:817
 msgid "June"
 msgstr "Juni"
 
 #: src/components/importqueue/Importqueue.vue:58
-#: src/components/importqueue/Importqueuedetail.vue:45
+#: src/components/importqueue/Importqueuedetail.vue:50
 msgid "Kind"
 msgstr "Art"
 
-#: src/components/Pdftool.vue:20
+#: src/components/Pdftool.vue:39
 msgid "landscape"
 msgstr "Querformat"
 
@@ -433,7 +487,7 @@
 msgid "Layers"
 msgstr "Ebenen"
 
-#: src/store/map.js:424
+#: src/store/map.js:544
 msgid "Length"
 msgstr "Länge"
 
@@ -462,7 +516,7 @@
 msgstr "E-Mail wurde gesendet"
 
 #: src/components/importschedule/Importschedule.vue:161
-#: src/components/importschedule/Importscheduledetail.vue:641
+#: src/components/importschedule/Importscheduledetail.vue:658
 msgid "Manually triggered import: #"
 msgstr ""
 
@@ -470,16 +524,16 @@
 msgid "Map"
 msgstr "Karte"
 
-#: src/components/importschedule/Importscheduledetail.vue:797
+#: src/components/importschedule/Importscheduledetail.vue:814
 msgid "March"
 msgstr "März"
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:132
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:130
 #, fuzzy
 msgid "MaxWidth"
 msgstr "Maximale Breite"
 
-#: src/components/importschedule/Importscheduledetail.vue:799
+#: src/components/importschedule/Importscheduledetail.vue:816
 #, fuzzy
 msgid "May"
 msgstr "Karte"
@@ -488,28 +542,28 @@
 msgid "Measurement"
 msgstr "Messung"
 
-#: src/components/importqueue/Importqueuedetail.vue:58
+#: src/components/importqueue/Importqueuedetail.vue:63
 msgid "Message"
 msgstr "Nachricht"
 
-#: src/components/importschedule/Importscheduledetail.vue:772
+#: src/components/importschedule/Importscheduledetail.vue:789
 msgid "minutes past"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:110
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:109
 #, fuzzy
 msgid "MinWidth"
 msgstr "Minimale Breite"
 
-#: src/components/importschedule/Importscheduledetail.vue:786
+#: src/components/importschedule/Importscheduledetail.vue:803
 msgid "Monday"
 msgstr "Montag"
 
-#: src/components/importschedule/Importscheduledetail.vue:782
+#: src/components/importschedule/Importscheduledetail.vue:799
 msgid "month"
 msgstr "Monat"
 
-#: src/components/importschedule/Importscheduledetail.vue:198
+#: src/components/importschedule/Importscheduledetail.vue:210
 msgid "Monthly"
 msgstr "monatlich"
 
@@ -518,17 +572,21 @@
 msgid "Name"
 msgstr "Name"
 
-#: src/components/ImportStretches.vue:182
+#: src/components/ImportStretches.vue:184
 #, fuzzy
 msgid "National Object name"
 msgstr "Narionaler Objektname"
 
+#: src/components/staging/StagingDetail.vue:227
+msgid "New"
+msgstr ""
+
 #: src/components/importschedule/Importschedule.vue:93
-#: src/components/importschedule/Importscheduledetail.vue:457
+#: src/components/importschedule/Importscheduledetail.vue:471
 msgid "New Import"
 msgstr "Neuer Import"
 
-#: src/components/ImportStretches.vue:247
+#: src/components/ImportStretches.vue:244
 msgid "New stretch"
 msgstr ""
 
@@ -536,7 +594,7 @@
 msgid "No features identified."
 msgstr "Keine Objekte identifiziert."
 
-#: src/components/Bottlenecks.vue:115 src/components/ImportStretches.vue:59
+#: src/components/Bottlenecks.vue:118 src/components/ImportStretches.vue:61
 #: src/components/staging/Staging.vue:36
 msgid "No results."
 msgstr "Keine Ergebnisse."
@@ -546,37 +604,41 @@
 msgid "No scheduled imports"
 msgstr "Keine Pläne"
 
-#: src/components/ImportStretches.vue:360
+#: src/components/ImportStretches.vue:357
 #, fuzzy
 msgid "Not implemented"
 msgstr "Nicht implementiert"
 
-#: src/components/importschedule/Importscheduledetail.vue:805
+#: src/components/importschedule/Importscheduledetail.vue:822
 msgid "November"
 msgstr "November"
 
-#: src/components/importschedule/Importscheduledetail.vue:776
+#: src/components/importschedule/Importscheduledetail.vue:793
 #, fuzzy
 msgid "o' clock"
 msgstr "Uhr"
 
-#: src/components/ImportStretches.vue:164
+#: src/components/ImportStretches.vue:166
 msgid "Object name"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:804
+#: src/components/importschedule/Importscheduledetail.vue:821
 msgid "October"
 msgstr "Oktober"
 
-#: src/components/importschedule/Importscheduledetail.vue:774
+#: src/components/importschedule/Importscheduledetail.vue:791
 msgid "of"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:773
+#: src/components/staging/StagingDetail.vue:224
+msgid "Old"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:790
 msgid "on"
 msgstr ""
 
-#: src/components/Pdftool.vue:18
+#: src/components/Pdftool.vue:19
 msgid "Open in new window"
 msgstr "In neuem Fenster öffnen"
 
@@ -599,8 +661,12 @@
 msgstr "Passwort Zurücksetzung angefragt!"
 
 #: src/components/usermanagement/Userdetail.vue:346
-msgid "Password should at least be 8 char long including 1 digit and 1 special char like $"
-msgstr "Das Passwort sollte mindestens 8 Zeichen lang sein, eine Ziffer und ein Sonderzeichen wie etwa $ enthalten"
+msgid ""
+"Password should at least be 8 char long including 1 digit and 1 special char "
+"like $"
+msgstr ""
+"Das Passwort sollte mindestens 8 Zeichen lang sein, eine Ziffer und ein "
+"Sonderzeichen wie etwa $ enthalten"
 
 #: src/components/usermanagement/Userdetail.vue:342
 msgid "Passwords do not match!"
@@ -618,21 +684,23 @@
 msgid "Please choose a role"
 msgstr "Bitte wählen Sie eine Rolle aus"
 
-#: src/components/ImportStretches.vue:97
+#: src/components/ImportStretches.vue:99
 #, fuzzy
 msgid "Please enter a countrycode"
 msgstr "Bitte ein Datum eingeben"
 
 #: src/components/ImportSoundingresults.vue:84
-#: src/components/ImportStretches.vue:212
+#: src/components/ImportStretches.vue:209
 msgid "Please enter a date"
 msgstr "Bitte ein Datum eingeben"
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:100
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:99
 #, fuzzy
 msgid "Please enter a depth"
 msgstr "Bitte ein Datum eingeben"
 
+#: src/components/ImportWaterwayProfiles.vue:46
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:37
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:37
 #: src/components/importschedule/importtypes/Waterwayarea.vue:37
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:37
@@ -645,12 +713,12 @@
 msgid "Please enter a level of service"
 msgstr "Bitte ein Höhenreferenzsystem eingeben"
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:146
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:143
 #, fuzzy
 msgid "Please enter a maximum width"
 msgstr "Bitte ein Datum eingeben"
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:124
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:122
 #, fuzzy
 msgid "Please enter a minimum width"
 msgstr "Bitte ein Datum eingeben"
@@ -669,22 +737,24 @@
 msgid "Please enter a reference"
 msgstr "Bitte ein Höhenreferenzsystem eingeben"
 
-#: src/components/ImportStretches.vue:228
+#: src/components/ImportStretches.vue:225
 #, fuzzy
 msgid "Please enter a source"
 msgstr "Bitte eine Quelle eingeben"
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:170
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:167
 msgid "Please enter a source orgranization"
 msgstr ""
 
-#: src/components/ImportStretches.vue:126
+#: src/components/ImportStretches.vue:128
 #, fuzzy
 msgid "Please enter a start point"
 msgstr "Bitte einen Startpunkt eingeben"
 
+#: src/components/ImportWaterwayProfiles.vue:25
 #: src/components/importschedule/importtypes/Availablefairwaydepth.vue:19
 #: src/components/importschedule/importtypes/Bottleneck.vue:44
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:19
 #: src/components/importschedule/importtypes/Distancemarksvirtual.vue:19
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:19
 #: src/components/importschedule/importtypes/Gaugemeasurement.vue:19
@@ -701,25 +771,27 @@
 msgid "Please enter a Username"
 msgstr "Bitte einen Nutzernamen eingeben"
 
-#: src/components/ImportStretches.vue:151
+#: src/components/ImportStretches.vue:153
 #, fuzzy
 msgid "Please enter an end point"
 msgstr "Bitte einen Endpunkt eingeben"
 
-#: src/components/ImportStretches.vue:78
+#: src/components/ImportStretches.vue:80
 #, fuzzy
 msgid "Please enter an id"
 msgstr "Bitte ein Id eingeben"
 
-#: src/components/ImportStretches.vue:176
-#: src/components/ImportStretches.vue:194
+#: src/components/ImportStretches.vue:178
 msgid "Please enter an objectname"
 msgstr ""
 
 #: src/components/fairway/Profiles.vue:417
 msgid "Please enter correct coordinates in the format: Lat,Lon,Lat,Lon"
-msgstr "Bitte geben Sie die Koordinaten in folgendem Format an: Lat,Lon,Lat,Lon"
+msgstr ""
+"Bitte geben Sie die Koordinaten in folgendem Format an: Lat,Lon,Lat,Lon"
 
+#: src/components/ImportWaterwayProfiles.vue:63
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:57
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:57
 #: src/components/importschedule/importtypes/Waterwayarea.vue:57
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:57
@@ -735,7 +807,7 @@
 msgid "Please select one"
 msgstr "Bitte auswählen"
 
-#: src/components/Pdftool.vue:21
+#: src/components/Pdftool.vue:40
 msgid "portrait"
 msgstr "Hochformat"
 
@@ -755,6 +827,10 @@
 msgid "Projection"
 msgstr "Projektion"
 
+#: src/components/Pdftool.vue:514
+msgid "Ref gauge"
+msgstr ""
+
 #: src/components/Logs.vue:48 src/components/importqueue/Importqueue.vue:84
 msgid "Refresh"
 msgstr "Aktualisieren"
@@ -771,11 +847,15 @@
 msgid "Request password reset!"
 msgstr "Passwort-Zurücksetzung anfragen!"
 
+#: src/components/Pdftool.vue:44
+msgid "Resolution"
+msgstr ""
+
 #: src/components/usermanagement/Userdetail.vue:78
 msgid "Role"
 msgstr "Rolle"
 
-#: src/components/importschedule/Importscheduledetail.vue:791
+#: src/components/importschedule/Importscheduledetail.vue:808
 msgid "Saturday"
 msgstr "Samstag"
 
@@ -783,17 +863,17 @@
 msgid "Saved cross profiles"
 msgstr "Gespeicherte Profile"
 
-#: src/components/importschedule/Importscheduledetail.vue:711
+#: src/components/importschedule/Importscheduledetail.vue:728
 #, fuzzy
 msgid "Saved import: #"
 msgstr "Neuer Import"
 
 #: src/components/importschedule/Importschedule.vue:36
-#: src/components/importschedule/Importscheduledetail.vue:189
+#: src/components/importschedule/Importscheduledetail.vue:201
 msgid "Schedule"
 msgstr "Zeitplan"
 
-#: src/components/importschedule/Importscheduledetail.vue:147
+#: src/components/importschedule/Importscheduledetail.vue:159
 #, fuzzy
 msgid "Scheduled"
 msgstr "Zeitplan"
@@ -810,7 +890,7 @@
 msgid "Send testmail"
 msgstr "Test-E-Mail versenden"
 
-#: src/components/importschedule/Importscheduledetail.vue:803
+#: src/components/importschedule/Importscheduledetail.vue:820
 msgid "September"
 msgstr "September"
 
@@ -819,11 +899,15 @@
 msgid "Signer"
 msgstr "Überprüft durch"
 
-#: src/components/importschedule/Importscheduledetail.vue:167
+#: src/components/importschedule/Importscheduledetail.vue:179
 #, fuzzy
 msgid "Simple schedule"
 msgstr "Zeitplan"
 
+#: src/components/Pdftool.vue:56
+msgid "Size"
+msgstr ""
+
 #: src/components/Identify.vue:60
 msgid ""
 "Some data ©\n"
@@ -831,6 +915,8 @@
 "        contributors."
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:55
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:45
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:45
 #: src/components/importschedule/importtypes/Waterwayarea.vue:45
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:45
@@ -842,7 +928,7 @@
 msgid "Sounding Result"
 msgstr "Seichtstellenvermessung"
 
-#: src/components/ImportStretches.vue:217
+#: src/components/ImportStretches.vue:214
 msgid "Source"
 msgstr ""
 
@@ -851,7 +937,7 @@
 msgid "Source organization"
 msgstr "Bitte ein Datum eingeben"
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:157
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:154
 msgid "Source orgranization"
 msgstr ""
 
@@ -871,7 +957,7 @@
 msgid "Start"
 msgstr "Start"
 
-#: src/components/ImportStretches.vue:106
+#: src/components/ImportStretches.vue:108
 #, fuzzy
 msgid "Start rhm"
 msgstr "Start"
@@ -880,16 +966,16 @@
 msgid "Starting import for "
 msgstr "Import gestartet "
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:102
+#: src/components/ImportApprovedGaugeMeasurement.vue:99
 msgid "Starting import of Approved Gauge Measurements"
 msgstr ""
 
-#: src/components/ImportStretches.vue:475
+#: src/components/ImportStretches.vue:472
 #, fuzzy
 msgid "Starting import of stretch"
 msgstr "Import gestartet "
 
-#: src/components/ImportStretches.vue:157
+#: src/components/ImportStretches.vue:159
 #, fuzzy
 msgid "Startpoint is not before endpoint."
 msgstr "Der Startpunkt ist nicht vor dem Endpunkt."
@@ -898,8 +984,8 @@
 msgid "State"
 msgstr "Zustand"
 
-#: src/components/ImportStretches.vue:241
-#: src/components/importschedule/Importscheduledetail.vue:345
+#: src/components/ImportStretches.vue:238
+#: src/components/importschedule/Importscheduledetail.vue:357
 #: src/components/usermanagement/Userdetail.vue:129
 msgid "Submit"
 msgstr "Abschicken"
@@ -912,15 +998,19 @@
 msgid "Successful"
 msgstr "Erfolgreich"
 
-#: src/components/importschedule/Importscheduledetail.vue:792
+#: src/components/importschedule/Importscheduledetail.vue:809
 msgid "Sunday"
 msgstr "Sonntag"
 
+#: src/components/Pdftool.vue:506
+msgid "Survey date"
+msgstr ""
+
 #: src/components/usermanagement/Userdetail.vue:88
 msgid "Sysadmin"
 msgstr "Sys-Admin"
 
-#: src/components/usermanagement/Usermanagement.vue:326
+#: src/components/usermanagement/Usermanagement.vue:365
 #, fuzzy
 msgid "System-Administrator"
 msgstr "System-Administration"
@@ -933,24 +1023,28 @@
 msgid "Systemconfiguration"
 msgstr "System-Konfiguation"
 
+#: src/components/ImportWaterwayProfiles.vue:163
+msgid "this"
+msgstr ""
+
 #: src/components/Identify.vue:51
 msgid ""
 "This app uses <i>gemma</i>, which is Free Software under <br/>\n"
 "        %{ license } without warranty, see docs for details."
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:789
+#: src/components/importschedule/Importscheduledetail.vue:806
 msgid "Thursday"
 msgstr "Donnerstag"
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:45
-#: src/components/ImportWaterwayProfiles.vue:43
-#: src/components/importschedule/Importscheduledetail.vue:358
+#: src/components/ImportApprovedGaugeMeasurement.vue:42
+#: src/components/ImportWaterwayProfiles.vue:99
+#: src/components/importschedule/Importscheduledetail.vue:370
 #, fuzzy
 msgid "Trigger import"
 msgstr "Neuer Import"
 
-#: src/components/importschedule/Importscheduledetail.vue:787
+#: src/components/importschedule/Importscheduledetail.vue:804
 msgid "Tuesday"
 msgstr "Dienstag"
 
@@ -959,12 +1053,7 @@
 msgid "Type"
 msgstr "Typ"
 
-#: src/components/ImportWaterwayProfiles.vue:89
-#, fuzzy
-msgid "under construction"
-msgstr "Im Aufbau"
-
-#: src/components/importschedule/Importscheduledetail.vue:741
+#: src/components/importschedule/Importscheduledetail.vue:758
 #, fuzzy
 msgid "update import: #"
 msgstr "Neuer Import"
@@ -973,8 +1062,10 @@
 msgid "Upload"
 msgstr "Hochladen"
 
+#: src/components/ImportWaterwayProfiles.vue:16
 #: src/components/importschedule/importtypes/Availablefairwaydepth.vue:5
 #: src/components/importschedule/importtypes/Bottleneck.vue:5
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:5
 #: src/components/importschedule/importtypes/Distancemarksvirtual.vue:5
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:5
 #: src/components/importschedule/importtypes/Gaugemeasurement.vue:5
@@ -1003,15 +1094,21 @@
 #: src/components/Identify.vue:65
 msgid ""
 "Uses\n"
-"        <a href=\"https://download.geonames.org/export/dump/readme.txt\">GeoNames</a>\n"
+"        <a href=\"https://download.geonames.org/export/dump/readme.txt"
+"\">GeoNames</a>\n"
 "        under %{ geoLicense }."
 msgstr ""
 "Verwendet\n"
-"        <a href=\"https://download.geonames.org/export/dump/readme.txt\">GeoNames</a>\n"
+"        <a href=\"https://download.geonames.org/export/dump/readme.txt"
+"\">GeoNames</a>\n"
 "        unter %{ geoLicense }."
 
+#: src/components/staging/StagingDetail.vue:218
+msgid "Value"
+msgstr ""
+
 #: src/components/usermanagement/Userdetail.vue:91
-#: src/components/usermanagement/Usermanagement.vue:327
+#: src/components/usermanagement/Usermanagement.vue:366
 #, fuzzy
 msgid "Waterway Admin"
 msgstr "Waterway-Admin"
@@ -1030,27 +1127,35 @@
 msgstr ""
 
 #: src/components/usermanagement/Userdetail.vue:94
-#: src/components/usermanagement/Usermanagement.vue:328
+#: src/components/usermanagement/Usermanagement.vue:367
 #, fuzzy
 msgid "Waterway User"
 msgstr "Waterway-Benutzer"
 
-#: src/components/importschedule/Importscheduledetail.vue:788
+#: src/components/importschedule/Importscheduledetail.vue:805
 msgid "Wednesday"
 msgstr "Mittwoch"
 
-#: src/components/importschedule/Importscheduledetail.vue:781
+#: src/components/importschedule/Importscheduledetail.vue:798
 msgid "week"
 msgstr "Woche"
 
-#: src/components/importschedule/Importscheduledetail.vue:197
+#: src/components/importschedule/Importscheduledetail.vue:209
 msgid "Weekly"
 msgstr "wöchentlich"
 
-#: src/components/importschedule/Importscheduledetail.vue:783
+#: src/components/importschedule/Importscheduledetail.vue:800
 msgid "year"
 msgstr "Jahr"
 
 #: src/components/fairway/Profiles.vue:443
-msgid "You can now select these coordinates from the \"Saved cross profiles\" menu to restore this cross profile."
-msgstr "Sie können diese Koordinaten aus dem \"Gespeicherte Profile\"-Menü auswählen, um diesen Profilschnitt wieder herzustellen."
+msgid ""
+"You can now select these coordinates from the \"Saved cross profiles\" menu "
+"to restore this cross profile."
+msgstr ""
+"Sie können diese Koordinaten aus dem \"Gespeicherte Profile\"-Menü "
+"auswählen, um diesen Profilschnitt wieder herzustellen."
+
+#, fuzzy
+#~ msgid "under construction"
+#~ msgstr "Im Aufbau"
--- a/client/src/locale/en_GB/LC_MESSAGES/app.po	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/locale/en_GB/LC_MESSAGES/app.po	Tue Feb 12 11:11:32 2019 +0100
@@ -17,11 +17,23 @@
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: src/components/Pdftool.vue:400
+#: src/components/ImportWaterwayProfiles.vue:164
+msgid " was successfully uploaded."
+msgstr ""
+
+#: src/components/Pdftool.vue:453
 msgid "– generated by:"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:778
+#: src/components/staging/StagingDetail.vue:188
+msgid "( New )"
+msgstr ""
+
+#: src/components/Pdftool.vue:29
+msgid "{{ template.name }}"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:795
 msgid "15 minutes"
 msgstr ""
 
@@ -33,23 +45,27 @@
 msgid "Accesslog"
 msgstr ""
 
-#: src/components/usermanagement/Usermanagement.vue:104
+#: src/components/usermanagement/Usermanagement.vue:102
 msgid "Add User"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:798
+#: src/components/staging/StagingDetail.vue:19
+msgid "Approved Gauge Measurements"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:815
 msgid "April"
 msgstr ""
 
-#: src/store/map.js:445
+#: src/store/map.js:565
 msgid "Area"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:775
+#: src/components/importschedule/Importscheduledetail.vue:792
 msgid "at"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:802
+#: src/components/importschedule/Importscheduledetail.vue:819
 msgid "August"
 msgstr ""
 
@@ -58,45 +74,47 @@
 msgstr ""
 
 #: src/components/importschedule/Importscheduledetail.vue:34
-msgid "Available fairway fpths"
+msgid "Available fairway depths"
 msgstr ""
 
 #: src/components/Login.vue:70
 msgid "back to login"
 msgstr ""
 
-#: src/components/Bottlenecks.vue:274
-#: src/components/ImportApprovedGaugeMeasurement.vue:111
+#: src/components/Bottlenecks.vue:277
+#: src/components/ImportApprovedGaugeMeasurement.vue:108
 #: src/components/ImportSoundingresults.vue:216
 #: src/components/ImportSoundingresults.vue:255
 #: src/components/ImportSoundingresults.vue:286
-#: src/components/ImportStretches.vue:306
-#: src/components/ImportStretches.vue:313
-#: src/components/ImportStretches.vue:485 src/components/Search.vue:258
+#: src/components/ImportStretches.vue:303
+#: src/components/ImportStretches.vue:310
+#: src/components/ImportStretches.vue:482
+#: src/components/ImportWaterwayProfiles.vue:175 src/components/Search.vue:258
 #: src/components/Systemconfiguration.vue:114
 #: src/components/Systemconfiguration.vue:129
 #: src/components/Systemconfiguration.vue:148
 #: src/components/Systemconfiguration.vue:165
 #: src/components/importqueue/Importqueue.vue:160
 #: src/components/importqueue/Importqueue.vue:180
-#: src/components/importqueue/Importqueuedetail.vue:182
+#: src/components/importqueue/Importqueuedetail.vue:214
 #: src/components/importschedule/Importschedule.vue:148
 #: src/components/importschedule/Importschedule.vue:167
 #: src/components/importschedule/Importschedule.vue:176
 #: src/components/importschedule/Importschedule.vue:198
-#: src/components/importschedule/Importscheduledetail.vue:647
-#: src/components/importschedule/Importscheduledetail.vue:727
-#: src/components/importschedule/Importscheduledetail.vue:757
-#: src/components/staging/StagingDetail.vue:251
+#: src/components/importschedule/Importscheduledetail.vue:664
+#: src/components/importschedule/Importscheduledetail.vue:744
+#: src/components/importschedule/Importscheduledetail.vue:774
+#: src/components/staging/StagingDetail.vue:364
+#: src/components/staging/StagingDetail.vue:418
 #: src/components/usermanagement/Userdetail.vue:304
 #: src/components/usermanagement/Userdetail.vue:376
-#: src/components/usermanagement/Usermanagement.vue:298
-#: src/components/usermanagement/Usermanagement.vue:306
-#: src/components/usermanagement/Usermanagement.vue:340
+#: src/components/usermanagement/Usermanagement.vue:337
+#: src/components/usermanagement/Usermanagement.vue:345
+#: src/components/usermanagement/Usermanagement.vue:379
 msgid "Backend Error"
 msgstr ""
 
-#: src/components/ImportSoundingresults.vue:16
+#: src/components/ImportSoundingresults.vue:16 src/components/Pdftool.vue:496
 msgid "Bottleneck"
 msgstr ""
 
@@ -110,7 +128,7 @@
 
 #: src/components/Bottlenecks.vue:4 src/components/Sidebar.vue:27
 #: src/components/importschedule/Importscheduledetail.vue:25
-#: src/components/staging/StagingDetail.vue:11
+#: src/components/staging/StagingDetail.vue:12
 msgid "Bottlenecks"
 msgstr ""
 
@@ -127,13 +145,14 @@
 msgid "choose .zip- file"
 msgstr ""
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:78
-#: src/components/ImportWaterwayProfiles.vue:75
+#: src/components/ImportApprovedGaugeMeasurement.vue:75
+#: src/components/ImportWaterwayProfiles.vue:135
+#: src/components/ImportWaterwayProfiles.vue:169
 msgid "choose file to upload"
 msgstr ""
 
-#: src/components/Pdftool.vue:18
-msgid "Choose format:"
+#: src/components/Pdftool.vue:23
+msgid "Chose preset"
 msgstr ""
 
 #: src/components/fairway/Profiles.vue:64
@@ -157,25 +176,29 @@
 msgid "Country"
 msgstr ""
 
-#: src/components/ImportStretches.vue:85
+#: src/components/ImportStretches.vue:87
 msgid "Countrycode"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:333
+#: src/components/importschedule/Importscheduledetail.vue:345
 msgid "Cronstring"
 msgstr ""
 
 #: src/components/ImportSoundingresults.vue:72
-#: src/components/importqueue/Importqueuedetail.vue:49
+#: src/components/importqueue/Importqueuedetail.vue:54
 #: src/components/staging/Staging.vue:13
 msgid "Date"
 msgstr ""
 
-#: src/components/ImportStretches.vue:201
+#: src/components/ImportStretches.vue:198
 msgid "Date info"
 msgstr ""
 
-#: src/components/Pdftool.vue:396
+#: src/components/staging/StagingDetail.vue:179
+msgid "Date of measurement"
+msgstr ""
+
+#: src/components/Pdftool.vue:449
 msgid "Date of publication:"
 msgstr ""
 
@@ -183,11 +206,11 @@
 msgid "Datum"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:780
+#: src/components/importschedule/Importscheduledetail.vue:797
 msgid "day"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:806
+#: src/components/importschedule/Importscheduledetail.vue:823
 msgid "December"
 msgstr ""
 
@@ -195,11 +218,15 @@
 msgid "Define stretches"
 msgstr ""
 
+#: src/components/usermanagement/Usermanagement.vue:123
+msgid "Delete user"
+msgstr ""
+
 #: src/components/importschedule/Importschedule.vue:192
 msgid "Deleted import: #"
 msgstr ""
 
-#: src/components/ImportStretches.vue:361
+#: src/components/ImportStretches.vue:358
 msgid "Deleting "
 msgstr ""
 
@@ -207,14 +234,26 @@
 msgid "Depth"
 msgstr ""
 
+#: src/components/Pdftool.vue:522
+msgid "Depth relativ to"
+msgstr ""
+
 #: src/components/ImportSoundingresults.vue:52
 msgid "Depthreference"
 msgstr ""
 
+#: src/components/importschedule/Importscheduledetail.vue:49
+msgid "Distance marks ashore"
+msgstr ""
+
 #: src/components/importschedule/Importscheduledetail.vue:46
 msgid "Distance marks virtual"
 msgstr ""
 
+#: src/components/usermanagement/Usermanagement.vue:131
+msgid "Do you really want to delete the following user account:"
+msgstr ""
+
 #: src/components/Pdftool.vue:10
 msgid "Download"
 msgstr ""
@@ -231,11 +270,11 @@
 msgid "Email address"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:53
+#: src/components/importschedule/Importscheduledetail.vue:56
 msgid "Email Notification"
 msgstr ""
 
-#: src/components/ImportStretches.vue:131
+#: src/components/ImportStretches.vue:133
 msgid "End rhm"
 msgstr ""
 
@@ -267,7 +306,7 @@
 msgid "Errorlog"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:771
+#: src/components/importschedule/Importscheduledetail.vue:788
 msgid "Every"
 msgstr ""
 
@@ -279,13 +318,15 @@
 msgid "Fairway dimension"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:34
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:25
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:25
 #: src/components/importschedule/importtypes/Waterwayarea.vue:25
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:25
 msgid "Featuretype"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:796
+#: src/components/importschedule/Importscheduledetail.vue:813
 msgid "February"
 msgstr ""
 
@@ -293,7 +334,11 @@
 msgid "Forgot password"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:790
+#: src/components/Pdftool.vue:33
+msgid "Format"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:807
 msgid "Friday"
 msgstr ""
 
@@ -301,11 +346,11 @@
 msgid "Gauge measurement"
 msgstr ""
 
-#: src/components/Pdftool.vue:10 src/components/Pdftool.vue:61
+#: src/components/Pdftool.vue:10 src/components/Pdftool.vue:96
 msgid "Generate PDF"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:779
+#: src/components/importschedule/Importscheduledetail.vue:796
 msgid "hour"
 msgstr ""
 
@@ -313,7 +358,7 @@
 msgid "Id"
 msgstr ""
 
-#: src/components/ImportStretches.vue:66
+#: src/components/ImportStretches.vue:68
 msgid "ID"
 msgstr ""
 
@@ -321,19 +366,19 @@
 msgid "Identified"
 msgstr ""
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:101
+#: src/components/ImportApprovedGaugeMeasurement.vue:98
 #: src/components/ImportSoundingresults.vue:278
-#: src/components/ImportStretches.vue:474
-#: src/components/ImportWaterwayProfiles.vue:88 src/components/Sidebar.vue:58
+#: src/components/ImportStretches.vue:471
+#: src/components/ImportWaterwayProfiles.vue:162 src/components/Sidebar.vue:58
 #: src/components/importschedule/Importschedule.vue:33
-#: src/components/importschedule/Importscheduledetail.vue:456
-#: src/components/importschedule/Importscheduledetail.vue:640
-#: src/components/importschedule/Importscheduledetail.vue:710
-#: src/components/importschedule/Importscheduledetail.vue:740
+#: src/components/importschedule/Importscheduledetail.vue:470
+#: src/components/importschedule/Importscheduledetail.vue:657
+#: src/components/importschedule/Importscheduledetail.vue:727
+#: src/components/importschedule/Importscheduledetail.vue:757
 msgid "Import"
 msgstr ""
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:11
+#: src/components/ImportApprovedGaugeMeasurement.vue:8
 #: src/components/Sidebar.vue:76
 msgid "Import approved gaugemeasurements"
 msgstr ""
@@ -350,7 +395,7 @@
 msgid "Import waterway profiles"
 msgstr ""
 
-#: src/components/ImportWaterwayProfiles.vue:11
+#: src/components/ImportWaterwayProfiles.vue:8
 msgid "Import Waterwayprofiles"
 msgstr ""
 
@@ -382,32 +427,36 @@
 msgid "Invalid input"
 msgstr ""
 
-#: src/components/Pdftool.vue:29
+#: src/components/Pdftool.vue:62
 msgid "ISO A3"
 msgstr ""
 
-#: src/components/Pdftool.vue:30
+#: src/components/Pdftool.vue:63
 msgid "ISO A4"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:795
+#: src/components/staging/StagingDetail.vue:176
+msgid "ISRS Code"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:812
 msgid "January"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:801
+#: src/components/importschedule/Importscheduledetail.vue:818
 msgid "July"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:800
+#: src/components/importschedule/Importscheduledetail.vue:817
 msgid "June"
 msgstr ""
 
 #: src/components/importqueue/Importqueue.vue:58
-#: src/components/importqueue/Importqueuedetail.vue:45
+#: src/components/importqueue/Importqueuedetail.vue:50
 msgid "Kind"
 msgstr ""
 
-#: src/components/Pdftool.vue:20
+#: src/components/Pdftool.vue:39
 msgid "landscape"
 msgstr ""
 
@@ -423,7 +472,7 @@
 msgid "Layers"
 msgstr ""
 
-#: src/store/map.js:424
+#: src/store/map.js:544
 msgid "Length"
 msgstr ""
 
@@ -452,7 +501,7 @@
 msgstr ""
 
 #: src/components/importschedule/Importschedule.vue:161
-#: src/components/importschedule/Importscheduledetail.vue:641
+#: src/components/importschedule/Importscheduledetail.vue:658
 msgid "Manually triggered import: #"
 msgstr ""
 
@@ -460,15 +509,15 @@
 msgid "Map"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:797
+#: src/components/importschedule/Importscheduledetail.vue:814
 msgid "March"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:132
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:130
 msgid "MaxWidth"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:799
+#: src/components/importschedule/Importscheduledetail.vue:816
 msgid "May"
 msgstr ""
 
@@ -476,27 +525,27 @@
 msgid "Measurement"
 msgstr ""
 
-#: src/components/importqueue/Importqueuedetail.vue:58
+#: src/components/importqueue/Importqueuedetail.vue:63
 msgid "Message"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:772
+#: src/components/importschedule/Importscheduledetail.vue:789
 msgid "minutes past"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:110
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:109
 msgid "MinWidth"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:786
+#: src/components/importschedule/Importscheduledetail.vue:803
 msgid "Monday"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:782
+#: src/components/importschedule/Importscheduledetail.vue:799
 msgid "month"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:198
+#: src/components/importschedule/Importscheduledetail.vue:210
 msgid "Monthly"
 msgstr ""
 
@@ -505,16 +554,20 @@
 msgid "Name"
 msgstr ""
 
-#: src/components/ImportStretches.vue:182
+#: src/components/ImportStretches.vue:184
 msgid "National Object name"
 msgstr ""
 
+#: src/components/staging/StagingDetail.vue:227
+msgid "New"
+msgstr ""
+
 #: src/components/importschedule/Importschedule.vue:93
-#: src/components/importschedule/Importscheduledetail.vue:457
+#: src/components/importschedule/Importscheduledetail.vue:471
 msgid "New Import"
 msgstr ""
 
-#: src/components/ImportStretches.vue:247
+#: src/components/ImportStretches.vue:244
 msgid "New stretch"
 msgstr ""
 
@@ -522,7 +575,7 @@
 msgid "No features identified."
 msgstr ""
 
-#: src/components/Bottlenecks.vue:115 src/components/ImportStretches.vue:59
+#: src/components/Bottlenecks.vue:118 src/components/ImportStretches.vue:61
 #: src/components/staging/Staging.vue:36
 msgid "No results."
 msgstr ""
@@ -531,35 +584,39 @@
 msgid "No scheduled imports"
 msgstr ""
 
-#: src/components/ImportStretches.vue:360
+#: src/components/ImportStretches.vue:357
 msgid "Not implemented"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:805
+#: src/components/importschedule/Importscheduledetail.vue:822
 msgid "November"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:776
+#: src/components/importschedule/Importscheduledetail.vue:793
 msgid "o' clock"
 msgstr ""
 
-#: src/components/ImportStretches.vue:164
+#: src/components/ImportStretches.vue:166
 msgid "Object name"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:804
+#: src/components/importschedule/Importscheduledetail.vue:821
 msgid "October"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:774
+#: src/components/importschedule/Importscheduledetail.vue:791
 msgid "of"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:773
+#: src/components/staging/StagingDetail.vue:224
+msgid "Old"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:790
 msgid "on"
 msgstr ""
 
-#: src/components/Pdftool.vue:18
+#: src/components/Pdftool.vue:19
 msgid "Open in new window"
 msgstr ""
 
@@ -582,7 +639,9 @@
 msgstr ""
 
 #: src/components/usermanagement/Userdetail.vue:346
-msgid "Password should at least be 8 char long including 1 digit and 1 special char like $"
+msgid ""
+"Password should at least be 8 char long including 1 digit and 1 special char "
+"like $"
 msgstr ""
 
 #: src/components/usermanagement/Userdetail.vue:342
@@ -601,19 +660,21 @@
 msgid "Please choose a role"
 msgstr ""
 
-#: src/components/ImportStretches.vue:97
+#: src/components/ImportStretches.vue:99
 msgid "Please enter a countrycode"
 msgstr ""
 
 #: src/components/ImportSoundingresults.vue:84
-#: src/components/ImportStretches.vue:212
+#: src/components/ImportStretches.vue:209
 msgid "Please enter a date"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:100
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:99
 msgid "Please enter a depth"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:46
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:37
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:37
 #: src/components/importschedule/importtypes/Waterwayarea.vue:37
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:37
@@ -624,11 +685,11 @@
 msgid "Please enter a level of service"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:146
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:143
 msgid "Please enter a maximum width"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:124
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:122
 msgid "Please enter a minimum width"
 msgstr ""
 
@@ -645,20 +706,22 @@
 msgid "Please enter a reference"
 msgstr ""
 
-#: src/components/ImportStretches.vue:228
+#: src/components/ImportStretches.vue:225
 msgid "Please enter a source"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:170
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:167
 msgid "Please enter a source orgranization"
 msgstr ""
 
-#: src/components/ImportStretches.vue:126
+#: src/components/ImportStretches.vue:128
 msgid "Please enter a start point"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:25
 #: src/components/importschedule/importtypes/Availablefairwaydepth.vue:19
 #: src/components/importschedule/importtypes/Bottleneck.vue:44
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:19
 #: src/components/importschedule/importtypes/Distancemarksvirtual.vue:19
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:19
 #: src/components/importschedule/importtypes/Gaugemeasurement.vue:19
@@ -673,16 +736,15 @@
 msgid "Please enter a Username"
 msgstr ""
 
-#: src/components/ImportStretches.vue:151
+#: src/components/ImportStretches.vue:153
 msgid "Please enter an end point"
 msgstr ""
 
-#: src/components/ImportStretches.vue:78
+#: src/components/ImportStretches.vue:80
 msgid "Please enter an id"
 msgstr ""
 
-#: src/components/ImportStretches.vue:176
-#: src/components/ImportStretches.vue:194
+#: src/components/ImportStretches.vue:178
 msgid "Please enter an objectname"
 msgstr ""
 
@@ -690,6 +752,8 @@
 msgid "Please enter correct coordinates in the format: Lat,Lon,Lat,Lon"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:63
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:57
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:57
 #: src/components/importschedule/importtypes/Waterwayarea.vue:57
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:57
@@ -705,7 +769,7 @@
 msgid "Please select one"
 msgstr ""
 
-#: src/components/Pdftool.vue:21
+#: src/components/Pdftool.vue:40
 msgid "portrait"
 msgstr ""
 
@@ -725,6 +789,10 @@
 msgid "Projection"
 msgstr ""
 
+#: src/components/Pdftool.vue:514
+msgid "Ref gauge"
+msgstr ""
+
 #: src/components/Logs.vue:48 src/components/importqueue/Importqueue.vue:84
 msgid "Refresh"
 msgstr ""
@@ -741,11 +809,15 @@
 msgid "Request password reset!"
 msgstr ""
 
+#: src/components/Pdftool.vue:44
+msgid "Resolution"
+msgstr ""
+
 #: src/components/usermanagement/Userdetail.vue:78
 msgid "Role"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:791
+#: src/components/importschedule/Importscheduledetail.vue:808
 msgid "Saturday"
 msgstr ""
 
@@ -753,16 +825,16 @@
 msgid "Saved cross profiles"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:711
+#: src/components/importschedule/Importscheduledetail.vue:728
 msgid "Saved import: #"
 msgstr ""
 
 #: src/components/importschedule/Importschedule.vue:36
-#: src/components/importschedule/Importscheduledetail.vue:189
+#: src/components/importschedule/Importscheduledetail.vue:201
 msgid "Schedule"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:147
+#: src/components/importschedule/Importscheduledetail.vue:159
 msgid "Scheduled"
 msgstr ""
 
@@ -778,7 +850,7 @@
 msgid "Send testmail"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:803
+#: src/components/importschedule/Importscheduledetail.vue:820
 msgid "September"
 msgstr ""
 
@@ -786,10 +858,14 @@
 msgid "Signer"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:167
+#: src/components/importschedule/Importscheduledetail.vue:179
 msgid "Simple schedule"
 msgstr ""
 
+#: src/components/Pdftool.vue:56
+msgid "Size"
+msgstr ""
+
 #: src/components/Identify.vue:60
 msgid ""
 "Some data ©\n"
@@ -797,6 +873,8 @@
 "        contributors."
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:55
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:45
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:45
 #: src/components/importschedule/importtypes/Waterwayarea.vue:45
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:45
@@ -807,7 +885,7 @@
 msgid "Sounding Result"
 msgstr ""
 
-#: src/components/ImportStretches.vue:217
+#: src/components/ImportStretches.vue:214
 msgid "Source"
 msgstr ""
 
@@ -815,7 +893,7 @@
 msgid "Source organization"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:157
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:154
 msgid "Source orgranization"
 msgstr ""
 
@@ -835,7 +913,7 @@
 msgid "Start"
 msgstr ""
 
-#: src/components/ImportStretches.vue:106
+#: src/components/ImportStretches.vue:108
 msgid "Start rhm"
 msgstr ""
 
@@ -843,15 +921,15 @@
 msgid "Starting import for "
 msgstr ""
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:102
+#: src/components/ImportApprovedGaugeMeasurement.vue:99
 msgid "Starting import of Approved Gauge Measurements"
 msgstr ""
 
-#: src/components/ImportStretches.vue:475
+#: src/components/ImportStretches.vue:472
 msgid "Starting import of stretch"
 msgstr ""
 
-#: src/components/ImportStretches.vue:157
+#: src/components/ImportStretches.vue:159
 msgid "Startpoint is not before endpoint."
 msgstr ""
 
@@ -859,8 +937,8 @@
 msgid "State"
 msgstr ""
 
-#: src/components/ImportStretches.vue:241
-#: src/components/importschedule/Importscheduledetail.vue:345
+#: src/components/ImportStretches.vue:238
+#: src/components/importschedule/Importscheduledetail.vue:357
 #: src/components/usermanagement/Userdetail.vue:129
 msgid "Submit"
 msgstr ""
@@ -873,15 +951,19 @@
 msgid "Successful"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:792
+#: src/components/importschedule/Importscheduledetail.vue:809
 msgid "Sunday"
 msgstr ""
 
+#: src/components/Pdftool.vue:506
+msgid "Survey date"
+msgstr ""
+
 #: src/components/usermanagement/Userdetail.vue:88
 msgid "Sysadmin"
 msgstr ""
 
-#: src/components/usermanagement/Usermanagement.vue:326
+#: src/components/usermanagement/Usermanagement.vue:365
 msgid "System-Administrator"
 msgstr ""
 
@@ -893,23 +975,27 @@
 msgid "Systemconfiguration"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:163
+msgid "this"
+msgstr ""
+
 #: src/components/Identify.vue:51
 msgid ""
 "This app uses <i>gemma</i>, which is Free Software under <br/>\n"
 "        %{ license } without warranty, see docs for details."
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:789
+#: src/components/importschedule/Importscheduledetail.vue:806
 msgid "Thursday"
 msgstr ""
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:45
-#: src/components/ImportWaterwayProfiles.vue:43
-#: src/components/importschedule/Importscheduledetail.vue:358
+#: src/components/ImportApprovedGaugeMeasurement.vue:42
+#: src/components/ImportWaterwayProfiles.vue:99
+#: src/components/importschedule/Importscheduledetail.vue:370
 msgid "Trigger import"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:787
+#: src/components/importschedule/Importscheduledetail.vue:804
 msgid "Tuesday"
 msgstr ""
 
@@ -918,11 +1004,7 @@
 msgid "Type"
 msgstr ""
 
-#: src/components/ImportWaterwayProfiles.vue:89
-msgid "under construction"
-msgstr ""
-
-#: src/components/importschedule/Importscheduledetail.vue:741
+#: src/components/importschedule/Importscheduledetail.vue:758
 msgid "update import: #"
 msgstr ""
 
@@ -930,8 +1012,10 @@
 msgid "Upload"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:16
 #: src/components/importschedule/importtypes/Availablefairwaydepth.vue:5
 #: src/components/importschedule/importtypes/Bottleneck.vue:5
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:5
 #: src/components/importschedule/importtypes/Distancemarksvirtual.vue:5
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:5
 #: src/components/importschedule/importtypes/Gaugemeasurement.vue:5
@@ -960,12 +1044,17 @@
 #: src/components/Identify.vue:65
 msgid ""
 "Uses\n"
-"        <a href=\"https://download.geonames.org/export/dump/readme.txt\">GeoNames</a>\n"
+"        <a href=\"https://download.geonames.org/export/dump/readme.txt"
+"\">GeoNames</a>\n"
 "        under %{ geoLicense }."
 msgstr ""
 
+#: src/components/staging/StagingDetail.vue:218
+msgid "Value"
+msgstr ""
+
 #: src/components/usermanagement/Userdetail.vue:91
-#: src/components/usermanagement/Usermanagement.vue:327
+#: src/components/usermanagement/Usermanagement.vue:366
 msgid "Waterway Admin"
 msgstr ""
 
@@ -982,26 +1071,28 @@
 msgstr ""
 
 #: src/components/usermanagement/Userdetail.vue:94
-#: src/components/usermanagement/Usermanagement.vue:328
+#: src/components/usermanagement/Usermanagement.vue:367
 msgid "Waterway User"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:788
+#: src/components/importschedule/Importscheduledetail.vue:805
 msgid "Wednesday"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:781
+#: src/components/importschedule/Importscheduledetail.vue:798
 msgid "week"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:197
+#: src/components/importschedule/Importscheduledetail.vue:209
 msgid "Weekly"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:783
+#: src/components/importschedule/Importscheduledetail.vue:800
 msgid "year"
 msgstr ""
 
 #: src/components/fairway/Profiles.vue:443
-msgid "You can now select these coordinates from the \"Saved cross profiles\" menu to restore this cross profile."
+msgid ""
+"You can now select these coordinates from the \"Saved cross profiles\" menu "
+"to restore this cross profile."
 msgstr ""
--- a/client/src/locale/hr_HR/LC_MESSAGES/app.po	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/locale/hr_HR/LC_MESSAGES/app.po	Tue Feb 12 11:11:32 2019 +0100
@@ -10,19 +10,33 @@
 "POT-Creation-Date: 2019-01-25 10:11+0100\n"
 "PO-Revision-Date: 2019-01-23 15:28+0000\n"
 "Last-Translator: Andrija Spaic <andrija.spaic@vodniputovi.hr>\n"
-"Language-Team: Croatian <https://hosted.weblate.org/projects/gemma/client/hr/>\n"
+"Language-Team: Croatian <https://hosted.weblate.org/projects/gemma/client/hr/"
+">\n"
 "Language: hr_HR\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
+"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
 "X-Generator: Weblate 3.5-dev\n"
 
-#: src/components/Pdftool.vue:400
+#: src/components/ImportWaterwayProfiles.vue:164
+msgid " was successfully uploaded."
+msgstr ""
+
+#: src/components/Pdftool.vue:453
 msgid "– generated by:"
 msgstr "– kreiran od:"
 
-#: src/components/importschedule/Importscheduledetail.vue:778
+#: src/components/staging/StagingDetail.vue:188
+msgid "( New )"
+msgstr ""
+
+#: src/components/Pdftool.vue:29
+msgid "{{ template.name }}"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:795
 msgid "15 minutes"
 msgstr "15 minuta"
 
@@ -34,23 +48,28 @@
 msgid "Accesslog"
 msgstr "Zapis pristupa"
 
-#: src/components/usermanagement/Usermanagement.vue:104
+#: src/components/usermanagement/Usermanagement.vue:102
 msgid "Add User"
 msgstr "Dodaj korisnika"
 
-#: src/components/importschedule/Importscheduledetail.vue:798
+#: src/components/staging/StagingDetail.vue:19
+#, fuzzy
+msgid "Approved Gauge Measurements"
+msgstr "Uvoz odobrenih podataka o vodostaju"
+
+#: src/components/importschedule/Importscheduledetail.vue:815
 msgid "April"
 msgstr "Travanj"
 
-#: src/store/map.js:445
+#: src/store/map.js:565
 msgid "Area"
 msgstr "Područje"
 
-#: src/components/importschedule/Importscheduledetail.vue:775
+#: src/components/importschedule/Importscheduledetail.vue:792
 msgid "at"
 msgstr "na"
 
-#: src/components/importschedule/Importscheduledetail.vue:802
+#: src/components/importschedule/Importscheduledetail.vue:819
 msgid "August"
 msgstr "Kolovoz"
 
@@ -60,45 +79,47 @@
 
 #: src/components/importschedule/Importscheduledetail.vue:34
 #, fuzzy
-msgid "Available fairway fpths"
+msgid "Available fairway depths"
 msgstr "Dostupne dubine plovnog puta"
 
 #: src/components/Login.vue:70
 msgid "back to login"
 msgstr "natrag na prijavu"
 
-#: src/components/Bottlenecks.vue:274
-#: src/components/ImportApprovedGaugeMeasurement.vue:111
+#: src/components/Bottlenecks.vue:277
+#: src/components/ImportApprovedGaugeMeasurement.vue:108
 #: src/components/ImportSoundingresults.vue:216
 #: src/components/ImportSoundingresults.vue:255
 #: src/components/ImportSoundingresults.vue:286
-#: src/components/ImportStretches.vue:306
-#: src/components/ImportStretches.vue:313
-#: src/components/ImportStretches.vue:485 src/components/Search.vue:258
+#: src/components/ImportStretches.vue:303
+#: src/components/ImportStretches.vue:310
+#: src/components/ImportStretches.vue:482
+#: src/components/ImportWaterwayProfiles.vue:175 src/components/Search.vue:258
 #: src/components/Systemconfiguration.vue:114
 #: src/components/Systemconfiguration.vue:129
 #: src/components/Systemconfiguration.vue:148
 #: src/components/Systemconfiguration.vue:165
 #: src/components/importqueue/Importqueue.vue:160
 #: src/components/importqueue/Importqueue.vue:180
-#: src/components/importqueue/Importqueuedetail.vue:182
+#: src/components/importqueue/Importqueuedetail.vue:214
 #: src/components/importschedule/Importschedule.vue:148
 #: src/components/importschedule/Importschedule.vue:167
 #: src/components/importschedule/Importschedule.vue:176
 #: src/components/importschedule/Importschedule.vue:198
-#: src/components/importschedule/Importscheduledetail.vue:647
-#: src/components/importschedule/Importscheduledetail.vue:727
-#: src/components/importschedule/Importscheduledetail.vue:757
-#: src/components/staging/StagingDetail.vue:251
+#: src/components/importschedule/Importscheduledetail.vue:664
+#: src/components/importschedule/Importscheduledetail.vue:744
+#: src/components/importschedule/Importscheduledetail.vue:774
+#: src/components/staging/StagingDetail.vue:364
+#: src/components/staging/StagingDetail.vue:418
 #: src/components/usermanagement/Userdetail.vue:304
 #: src/components/usermanagement/Userdetail.vue:376
-#: src/components/usermanagement/Usermanagement.vue:298
-#: src/components/usermanagement/Usermanagement.vue:306
-#: src/components/usermanagement/Usermanagement.vue:340
+#: src/components/usermanagement/Usermanagement.vue:337
+#: src/components/usermanagement/Usermanagement.vue:345
+#: src/components/usermanagement/Usermanagement.vue:379
 msgid "Backend Error"
 msgstr "Greška Servera"
 
-#: src/components/ImportSoundingresults.vue:16
+#: src/components/ImportSoundingresults.vue:16 src/components/Pdftool.vue:496
 msgid "Bottleneck"
 msgstr "Kritični sektor"
 
@@ -112,7 +133,7 @@
 
 #: src/components/Bottlenecks.vue:4 src/components/Sidebar.vue:27
 #: src/components/importschedule/Importscheduledetail.vue:25
-#: src/components/staging/StagingDetail.vue:11
+#: src/components/staging/StagingDetail.vue:12
 msgid "Bottlenecks"
 msgstr "Kritični sektori"
 
@@ -129,13 +150,15 @@
 msgid "choose .zip- file"
 msgstr "odaberi .zip- datoteku"
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:78
-#: src/components/ImportWaterwayProfiles.vue:75
+#: src/components/ImportApprovedGaugeMeasurement.vue:75
+#: src/components/ImportWaterwayProfiles.vue:135
+#: src/components/ImportWaterwayProfiles.vue:169
 msgid "choose file to upload"
 msgstr "odaberi datoteku za učitavanje"
 
-#: src/components/Pdftool.vue:18
-msgid "Choose format:"
+#: src/components/Pdftool.vue:23
+#, fuzzy
+msgid "Chose preset"
 msgstr "Odaberite format:"
 
 #: src/components/fairway/Profiles.vue:64
@@ -159,25 +182,30 @@
 msgid "Country"
 msgstr "Država"
 
-#: src/components/ImportStretches.vue:85
+#: src/components/ImportStretches.vue:87
 msgid "Countrycode"
 msgstr "Oznaka države"
 
-#: src/components/importschedule/Importscheduledetail.vue:333
+#: src/components/importschedule/Importscheduledetail.vue:345
 msgid "Cronstring"
 msgstr "Crontab - linija"
 
 #: src/components/ImportSoundingresults.vue:72
-#: src/components/importqueue/Importqueuedetail.vue:49
+#: src/components/importqueue/Importqueuedetail.vue:54
 #: src/components/staging/Staging.vue:13
 msgid "Date"
 msgstr "Datum"
 
-#: src/components/ImportStretches.vue:201
+#: src/components/ImportStretches.vue:198
 msgid "Date info"
 msgstr "Datum"
 
-#: src/components/Pdftool.vue:396
+#: src/components/staging/StagingDetail.vue:179
+#, fuzzy
+msgid "Date of measurement"
+msgstr "Podatak o vodostaju"
+
+#: src/components/Pdftool.vue:449
 msgid "Date of publication:"
 msgstr "Datum objavljivanja:"
 
@@ -185,11 +213,11 @@
 msgid "Datum"
 msgstr "Datum"
 
-#: src/components/importschedule/Importscheduledetail.vue:780
+#: src/components/importschedule/Importscheduledetail.vue:797
 msgid "day"
 msgstr "Dan"
 
-#: src/components/importschedule/Importscheduledetail.vue:806
+#: src/components/importschedule/Importscheduledetail.vue:823
 msgid "December"
 msgstr "Prosinac"
 
@@ -197,11 +225,16 @@
 msgid "Define stretches"
 msgstr "Definiraj dionice"
 
+#: src/components/usermanagement/Usermanagement.vue:123
+#, fuzzy
+msgid "Delete user"
+msgstr "Brisanje "
+
 #: src/components/importschedule/Importschedule.vue:192
 msgid "Deleted import: #"
 msgstr "Obrisan uvoz: #"
 
-#: src/components/ImportStretches.vue:361
+#: src/components/ImportStretches.vue:358
 msgid "Deleting "
 msgstr "Brisanje "
 
@@ -209,15 +242,28 @@
 msgid "Depth"
 msgstr "Dubina"
 
+#: src/components/Pdftool.vue:522
+msgid "Depth relativ to"
+msgstr ""
+
 #: src/components/ImportSoundingresults.vue:52
 msgid "Depthreference"
 msgstr "Referentna dubina"
 
+#: src/components/importschedule/Importscheduledetail.vue:49
+#, fuzzy
+msgid "Distance marks ashore"
+msgstr "Virtualne Oznake Udaljenosti"
+
 #: src/components/importschedule/Importscheduledetail.vue:46
 #, fuzzy
 msgid "Distance marks virtual"
 msgstr "Virtualne Oznake Udaljenosti"
 
+#: src/components/usermanagement/Usermanagement.vue:131
+msgid "Do you really want to delete the following user account:"
+msgstr ""
+
 #: src/components/Pdftool.vue:10
 msgid "Download"
 msgstr "Preuzimanje"
@@ -234,11 +280,11 @@
 msgid "Email address"
 msgstr "E-mail adresa"
 
-#: src/components/importschedule/Importscheduledetail.vue:53
+#: src/components/importschedule/Importscheduledetail.vue:56
 msgid "Email Notification"
 msgstr "Email Obavijest"
 
-#: src/components/ImportStretches.vue:131
+#: src/components/ImportStretches.vue:133
 msgid "End rhm"
 msgstr "Završni rkm"
 
@@ -270,7 +316,7 @@
 msgid "Errorlog"
 msgstr "Zapis pogreške"
 
-#: src/components/importschedule/Importscheduledetail.vue:771
+#: src/components/importschedule/Importscheduledetail.vue:788
 #, fuzzy
 msgid "Every"
 msgstr "Svaki"
@@ -284,13 +330,15 @@
 msgid "Fairway dimension"
 msgstr "Dimenzije plovnog puta"
 
+#: src/components/ImportWaterwayProfiles.vue:34
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:25
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:25
 #: src/components/importschedule/importtypes/Waterwayarea.vue:25
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:25
 msgid "Featuretype"
 msgstr "Tip elementa/ Vrsta značajke"
 
-#: src/components/importschedule/Importscheduledetail.vue:796
+#: src/components/importschedule/Importscheduledetail.vue:813
 msgid "February"
 msgstr "Veljača"
 
@@ -298,7 +346,11 @@
 msgid "Forgot password"
 msgstr "Zaboravljena lozinka"
 
-#: src/components/importschedule/Importscheduledetail.vue:790
+#: src/components/Pdftool.vue:33
+msgid "Format"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:807
 msgid "Friday"
 msgstr "Petak"
 
@@ -306,11 +358,11 @@
 msgid "Gauge measurement"
 msgstr "Podatak o vodostaju"
 
-#: src/components/Pdftool.vue:10 src/components/Pdftool.vue:61
+#: src/components/Pdftool.vue:10 src/components/Pdftool.vue:96
 msgid "Generate PDF"
 msgstr "Kreiraj PDF"
 
-#: src/components/importschedule/Importscheduledetail.vue:779
+#: src/components/importschedule/Importscheduledetail.vue:796
 msgid "hour"
 msgstr "sat"
 
@@ -318,7 +370,7 @@
 msgid "Id"
 msgstr "Id"
 
-#: src/components/ImportStretches.vue:66
+#: src/components/ImportStretches.vue:68
 msgid "ID"
 msgstr "ID"
 
@@ -326,19 +378,19 @@
 msgid "Identified"
 msgstr "Identificirano"
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:101
+#: src/components/ImportApprovedGaugeMeasurement.vue:98
 #: src/components/ImportSoundingresults.vue:278
-#: src/components/ImportStretches.vue:474
-#: src/components/ImportWaterwayProfiles.vue:88 src/components/Sidebar.vue:58
+#: src/components/ImportStretches.vue:471
+#: src/components/ImportWaterwayProfiles.vue:162 src/components/Sidebar.vue:58
 #: src/components/importschedule/Importschedule.vue:33
-#: src/components/importschedule/Importscheduledetail.vue:456
-#: src/components/importschedule/Importscheduledetail.vue:640
-#: src/components/importschedule/Importscheduledetail.vue:710
-#: src/components/importschedule/Importscheduledetail.vue:740
+#: src/components/importschedule/Importscheduledetail.vue:470
+#: src/components/importschedule/Importscheduledetail.vue:657
+#: src/components/importschedule/Importscheduledetail.vue:727
+#: src/components/importschedule/Importscheduledetail.vue:757
 msgid "Import"
 msgstr "Uvoz"
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:11
+#: src/components/ImportApprovedGaugeMeasurement.vue:8
 #: src/components/Sidebar.vue:76
 msgid "Import approved gaugemeasurements"
 msgstr "Uvoz odobrenih podataka o vodostaju"
@@ -355,7 +407,7 @@
 msgid "Import waterway profiles"
 msgstr "Uvoz profila plovnog puta"
 
-#: src/components/ImportWaterwayProfiles.vue:11
+#: src/components/ImportWaterwayProfiles.vue:8
 msgid "Import Waterwayprofiles"
 msgstr "Uvoz Profila Plovnog Puta"
 
@@ -387,32 +439,36 @@
 msgid "Invalid input"
 msgstr "nevažeći unos"
 
-#: src/components/Pdftool.vue:29
+#: src/components/Pdftool.vue:62
 msgid "ISO A3"
 msgstr "ISO A3"
 
-#: src/components/Pdftool.vue:30
+#: src/components/Pdftool.vue:63
 msgid "ISO A4"
 msgstr "ISO A4"
 
-#: src/components/importschedule/Importscheduledetail.vue:795
+#: src/components/staging/StagingDetail.vue:176
+msgid "ISRS Code"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:812
 msgid "January"
 msgstr "Siječanj"
 
-#: src/components/importschedule/Importscheduledetail.vue:801
+#: src/components/importschedule/Importscheduledetail.vue:818
 msgid "July"
 msgstr "Srpanj"
 
-#: src/components/importschedule/Importscheduledetail.vue:800
+#: src/components/importschedule/Importscheduledetail.vue:817
 msgid "June"
 msgstr "Lipanj"
 
 #: src/components/importqueue/Importqueue.vue:58
-#: src/components/importqueue/Importqueuedetail.vue:45
+#: src/components/importqueue/Importqueuedetail.vue:50
 msgid "Kind"
 msgstr "Tip"
 
-#: src/components/Pdftool.vue:20
+#: src/components/Pdftool.vue:39
 msgid "landscape"
 msgstr "vodoravno"
 
@@ -428,7 +484,7 @@
 msgid "Layers"
 msgstr "Slojevi"
 
-#: src/store/map.js:424
+#: src/store/map.js:544
 msgid "Length"
 msgstr "Duljina"
 
@@ -457,7 +513,7 @@
 msgstr "E-mail je poslan"
 
 #: src/components/importschedule/Importschedule.vue:161
-#: src/components/importschedule/Importscheduledetail.vue:641
+#: src/components/importschedule/Importscheduledetail.vue:658
 msgid "Manually triggered import: #"
 msgstr "Uvoz pokrenut ručno: #"
 
@@ -465,15 +521,15 @@
 msgid "Map"
 msgstr "Karta"
 
-#: src/components/importschedule/Importscheduledetail.vue:797
+#: src/components/importschedule/Importscheduledetail.vue:814
 msgid "March"
 msgstr "Ožujak"
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:132
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:130
 msgid "MaxWidth"
 msgstr "Maksimalna Širina"
 
-#: src/components/importschedule/Importscheduledetail.vue:799
+#: src/components/importschedule/Importscheduledetail.vue:816
 msgid "May"
 msgstr "Svibanj"
 
@@ -481,27 +537,27 @@
 msgid "Measurement"
 msgstr "Mjerenje"
 
-#: src/components/importqueue/Importqueuedetail.vue:58
+#: src/components/importqueue/Importqueuedetail.vue:63
 msgid "Message"
 msgstr "Poruka"
 
-#: src/components/importschedule/Importscheduledetail.vue:772
+#: src/components/importschedule/Importscheduledetail.vue:789
 msgid "minutes past"
 msgstr "prošlo minuta"
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:110
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:109
 msgid "MinWidth"
 msgstr "Minimalna Širina"
 
-#: src/components/importschedule/Importscheduledetail.vue:786
+#: src/components/importschedule/Importscheduledetail.vue:803
 msgid "Monday"
 msgstr "Ponedjeljak"
 
-#: src/components/importschedule/Importscheduledetail.vue:782
+#: src/components/importschedule/Importscheduledetail.vue:799
 msgid "month"
 msgstr "mjesec"
 
-#: src/components/importschedule/Importscheduledetail.vue:198
+#: src/components/importschedule/Importscheduledetail.vue:210
 msgid "Monthly"
 msgstr "Mjesečno"
 
@@ -510,16 +566,20 @@
 msgid "Name"
 msgstr "Naziv"
 
-#: src/components/ImportStretches.vue:182
+#: src/components/ImportStretches.vue:184
 msgid "National Object name"
 msgstr "Nacionalni naziv Objekta"
 
+#: src/components/staging/StagingDetail.vue:227
+msgid "New"
+msgstr ""
+
 #: src/components/importschedule/Importschedule.vue:93
-#: src/components/importschedule/Importscheduledetail.vue:457
+#: src/components/importschedule/Importscheduledetail.vue:471
 msgid "New Import"
 msgstr "Novi uvoz"
 
-#: src/components/ImportStretches.vue:247
+#: src/components/ImportStretches.vue:244
 msgid "New stretch"
 msgstr "Nova dionica"
 
@@ -527,7 +587,7 @@
 msgid "No features identified."
 msgstr "Nema identificiranih objekata."
 
-#: src/components/Bottlenecks.vue:115 src/components/ImportStretches.vue:59
+#: src/components/Bottlenecks.vue:118 src/components/ImportStretches.vue:61
 #: src/components/staging/Staging.vue:36
 msgid "No results."
 msgstr "Nema rezultata."
@@ -536,35 +596,39 @@
 msgid "No scheduled imports"
 msgstr "Nema zakazanih uvoza"
 
-#: src/components/ImportStretches.vue:360
+#: src/components/ImportStretches.vue:357
 msgid "Not implemented"
 msgstr "Nije implementirano"
 
-#: src/components/importschedule/Importscheduledetail.vue:805
+#: src/components/importschedule/Importscheduledetail.vue:822
 msgid "November"
 msgstr "Studeni"
 
-#: src/components/importschedule/Importscheduledetail.vue:776
+#: src/components/importschedule/Importscheduledetail.vue:793
 msgid "o' clock"
 msgstr "sati"
 
-#: src/components/ImportStretches.vue:164
+#: src/components/ImportStretches.vue:166
 msgid "Object name"
 msgstr "Naziv objekta"
 
-#: src/components/importschedule/Importscheduledetail.vue:804
+#: src/components/importschedule/Importscheduledetail.vue:821
 msgid "October"
 msgstr "Listopad"
 
-#: src/components/importschedule/Importscheduledetail.vue:774
+#: src/components/importschedule/Importscheduledetail.vue:791
 msgid "of"
 msgstr "od"
 
-#: src/components/importschedule/Importscheduledetail.vue:773
+#: src/components/staging/StagingDetail.vue:224
+msgid "Old"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:790
 msgid "on"
 msgstr "na"
 
-#: src/components/Pdftool.vue:18
+#: src/components/Pdftool.vue:19
 msgid "Open in new window"
 msgstr "Otvori u novom prozoru"
 
@@ -587,8 +651,12 @@
 msgstr "Zatraženo je poništavanje lozinke!"
 
 #: src/components/usermanagement/Userdetail.vue:346
-msgid "Password should at least be 8 char long including 1 digit and 1 special char like $"
-msgstr "Lozinka bi trebala sadržavati barem 8 znakova uključujući 1 broj i 1 specijalni znak poput $"
+msgid ""
+"Password should at least be 8 char long including 1 digit and 1 special char "
+"like $"
+msgstr ""
+"Lozinka bi trebala sadržavati barem 8 znakova uključujući 1 broj i 1 "
+"specijalni znak poput $"
 
 #: src/components/usermanagement/Userdetail.vue:342
 msgid "Passwords do not match!"
@@ -606,19 +674,21 @@
 msgid "Please choose a role"
 msgstr "Odaberite ulogu"
 
-#: src/components/ImportStretches.vue:97
+#: src/components/ImportStretches.vue:99
 msgid "Please enter a countrycode"
 msgstr "Unesite kod države"
 
 #: src/components/ImportSoundingresults.vue:84
-#: src/components/ImportStretches.vue:212
+#: src/components/ImportStretches.vue:209
 msgid "Please enter a date"
 msgstr "Unesite datum"
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:100
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:99
 msgid "Please enter a depth"
 msgstr "Unesite dubinu"
 
+#: src/components/ImportWaterwayProfiles.vue:46
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:37
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:37
 #: src/components/importschedule/importtypes/Waterwayarea.vue:37
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:37
@@ -629,11 +699,11 @@
 msgid "Please enter a level of service"
 msgstr "Unesite razinu usluge"
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:146
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:143
 msgid "Please enter a maximum width"
 msgstr "Unesite maksimalnu širinu"
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:124
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:122
 msgid "Please enter a minimum width"
 msgstr "Unesite minimalnu širinu"
 
@@ -650,20 +720,22 @@
 msgid "Please enter a reference"
 msgstr "Unesite referencu"
 
-#: src/components/ImportStretches.vue:228
+#: src/components/ImportStretches.vue:225
 msgid "Please enter a source"
 msgstr "Unesite izvor"
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:170
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:167
 msgid "Please enter a source orgranization"
 msgstr "Unesite organizaciju izvora"
 
-#: src/components/ImportStretches.vue:126
+#: src/components/ImportStretches.vue:128
 msgid "Please enter a start point"
 msgstr "Unesite početnu točku"
 
+#: src/components/ImportWaterwayProfiles.vue:25
 #: src/components/importschedule/importtypes/Availablefairwaydepth.vue:19
 #: src/components/importschedule/importtypes/Bottleneck.vue:44
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:19
 #: src/components/importschedule/importtypes/Distancemarksvirtual.vue:19
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:19
 #: src/components/importschedule/importtypes/Gaugemeasurement.vue:19
@@ -678,16 +750,15 @@
 msgid "Please enter a Username"
 msgstr "Unesite Korisničko ime"
 
-#: src/components/ImportStretches.vue:151
+#: src/components/ImportStretches.vue:153
 msgid "Please enter an end point"
 msgstr "Unesite završnu točku"
 
-#: src/components/ImportStretches.vue:78
+#: src/components/ImportStretches.vue:80
 msgid "Please enter an id"
 msgstr "Unesite id"
 
-#: src/components/ImportStretches.vue:176
-#: src/components/ImportStretches.vue:194
+#: src/components/ImportStretches.vue:178
 msgid "Please enter an objectname"
 msgstr "Unesite naziv objekta"
 
@@ -695,6 +766,8 @@
 msgid "Please enter correct coordinates in the format: Lat,Lon,Lat,Lon"
 msgstr "Unesite točne koordinate u formatu: Lat,Lon,Lat,Lon"
 
+#: src/components/ImportWaterwayProfiles.vue:63
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:57
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:57
 #: src/components/importschedule/importtypes/Waterwayarea.vue:57
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:57
@@ -710,7 +783,7 @@
 msgid "Please select one"
 msgstr "Odaberite jedno"
 
-#: src/components/Pdftool.vue:21
+#: src/components/Pdftool.vue:40
 msgid "portrait"
 msgstr "uspravno"
 
@@ -730,6 +803,10 @@
 msgid "Projection"
 msgstr "Projekcija"
 
+#: src/components/Pdftool.vue:514
+msgid "Ref gauge"
+msgstr ""
+
 #: src/components/Logs.vue:48 src/components/importqueue/Importqueue.vue:84
 msgid "Refresh"
 msgstr "Osvježi"
@@ -746,11 +823,15 @@
 msgid "Request password reset!"
 msgstr "Zatraži poništavanje lozinke!"
 
+#: src/components/Pdftool.vue:44
+msgid "Resolution"
+msgstr ""
+
 #: src/components/usermanagement/Userdetail.vue:78
 msgid "Role"
 msgstr "Uloga"
 
-#: src/components/importschedule/Importscheduledetail.vue:791
+#: src/components/importschedule/Importscheduledetail.vue:808
 msgid "Saturday"
 msgstr "Subota"
 
@@ -758,16 +839,16 @@
 msgid "Saved cross profiles"
 msgstr "Spremljeni poprečni profili"
 
-#: src/components/importschedule/Importscheduledetail.vue:711
+#: src/components/importschedule/Importscheduledetail.vue:728
 msgid "Saved import: #"
 msgstr "Spremljen uvoz: #"
 
 #: src/components/importschedule/Importschedule.vue:36
-#: src/components/importschedule/Importscheduledetail.vue:189
+#: src/components/importschedule/Importscheduledetail.vue:201
 msgid "Schedule"
 msgstr "Raspored"
 
-#: src/components/importschedule/Importscheduledetail.vue:147
+#: src/components/importschedule/Importscheduledetail.vue:159
 msgid "Scheduled"
 msgstr "Planiran"
 
@@ -783,7 +864,7 @@
 msgid "Send testmail"
 msgstr "Pošalji testni e-mail"
 
-#: src/components/importschedule/Importscheduledetail.vue:803
+#: src/components/importschedule/Importscheduledetail.vue:820
 msgid "September"
 msgstr "Rujan"
 
@@ -791,11 +872,15 @@
 msgid "Signer"
 msgstr "Potpisnik"
 
-#: src/components/importschedule/Importscheduledetail.vue:167
+#: src/components/importschedule/Importscheduledetail.vue:179
 #, fuzzy
 msgid "Simple schedule"
 msgstr "Jednostavan Raspored"
 
+#: src/components/Pdftool.vue:56
+msgid "Size"
+msgstr ""
+
 #: src/components/Identify.vue:60
 msgid ""
 "Some data ©\n"
@@ -806,6 +891,8 @@
 "        <a href=\"https://www.openstreetmap.org/copyright\">%{ name }</a>\n"
 "        suradnik."
 
+#: src/components/ImportWaterwayProfiles.vue:55
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:45
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:45
 #: src/components/importschedule/importtypes/Waterwayarea.vue:45
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:45
@@ -816,7 +903,7 @@
 msgid "Sounding Result"
 msgstr "Rezultat Hidrografskog mjerenja"
 
-#: src/components/ImportStretches.vue:217
+#: src/components/ImportStretches.vue:214
 msgid "Source"
 msgstr "Izvor"
 
@@ -824,7 +911,7 @@
 msgid "Source organization"
 msgstr "Organizacija izvora"
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:157
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:154
 msgid "Source orgranization"
 msgstr "Organizacija izvora"
 
@@ -844,7 +931,7 @@
 msgid "Start"
 msgstr "Početak"
 
-#: src/components/ImportStretches.vue:106
+#: src/components/ImportStretches.vue:108
 msgid "Start rhm"
 msgstr "Početni rhm"
 
@@ -852,15 +939,15 @@
 msgid "Starting import for "
 msgstr "započinje uvoz za "
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:102
+#: src/components/ImportApprovedGaugeMeasurement.vue:99
 msgid "Starting import of Approved Gauge Measurements"
 msgstr "Započinje uvoz odobrenih vodostaja"
 
-#: src/components/ImportStretches.vue:475
+#: src/components/ImportStretches.vue:472
 msgid "Starting import of stretch"
 msgstr "Započinje uvoz dionice"
 
-#: src/components/ImportStretches.vue:157
+#: src/components/ImportStretches.vue:159
 msgid "Startpoint is not before endpoint."
 msgstr "Početna točka nije prije završne točke."
 
@@ -868,8 +955,8 @@
 msgid "State"
 msgstr "Stanje"
 
-#: src/components/ImportStretches.vue:241
-#: src/components/importschedule/Importscheduledetail.vue:345
+#: src/components/ImportStretches.vue:238
+#: src/components/importschedule/Importscheduledetail.vue:357
 #: src/components/usermanagement/Userdetail.vue:129
 msgid "Submit"
 msgstr "Predaj"
@@ -882,15 +969,19 @@
 msgid "Successful"
 msgstr "Uspješno"
 
-#: src/components/importschedule/Importscheduledetail.vue:792
+#: src/components/importschedule/Importscheduledetail.vue:809
 msgid "Sunday"
 msgstr "Nedjelja"
 
+#: src/components/Pdftool.vue:506
+msgid "Survey date"
+msgstr ""
+
 #: src/components/usermanagement/Userdetail.vue:88
 msgid "Sysadmin"
 msgstr "Sistem admin"
 
-#: src/components/usermanagement/Usermanagement.vue:326
+#: src/components/usermanagement/Usermanagement.vue:365
 msgid "System-Administrator"
 msgstr "Sistem-Administrator"
 
@@ -902,6 +993,10 @@
 msgid "Systemconfiguration"
 msgstr "Konfiguracija sutava"
 
+#: src/components/ImportWaterwayProfiles.vue:163
+msgid "this"
+msgstr ""
+
 #: src/components/Identify.vue:51
 msgid ""
 "This app uses <i>gemma</i>, which is Free Software under <br/>\n"
@@ -910,17 +1005,17 @@
 "Ova aplikacija koristi <i>gemma</i>, koji je Slobodan Softver pod <br/>\n"
 "        %{ license } bez garancije, pogledaj dokumente za detalje."
 
-#: src/components/importschedule/Importscheduledetail.vue:789
+#: src/components/importschedule/Importscheduledetail.vue:806
 msgid "Thursday"
 msgstr "Četvrtak"
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:45
-#: src/components/ImportWaterwayProfiles.vue:43
-#: src/components/importschedule/Importscheduledetail.vue:358
+#: src/components/ImportApprovedGaugeMeasurement.vue:42
+#: src/components/ImportWaterwayProfiles.vue:99
+#: src/components/importschedule/Importscheduledetail.vue:370
 msgid "Trigger import"
 msgstr "Pokretanje uvoza"
 
-#: src/components/importschedule/Importscheduledetail.vue:787
+#: src/components/importschedule/Importscheduledetail.vue:804
 msgid "Tuesday"
 msgstr "Utorak"
 
@@ -929,11 +1024,7 @@
 msgid "Type"
 msgstr "Tip"
 
-#: src/components/ImportWaterwayProfiles.vue:89
-msgid "under construction"
-msgstr "u izgradnji"
-
-#: src/components/importschedule/Importscheduledetail.vue:741
+#: src/components/importschedule/Importscheduledetail.vue:758
 msgid "update import: #"
 msgstr "ažuriraj uvoz: #"
 
@@ -941,8 +1032,10 @@
 msgid "Upload"
 msgstr "Učitaj"
 
+#: src/components/ImportWaterwayProfiles.vue:16
 #: src/components/importschedule/importtypes/Availablefairwaydepth.vue:5
 #: src/components/importschedule/importtypes/Bottleneck.vue:5
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:5
 #: src/components/importschedule/importtypes/Distancemarksvirtual.vue:5
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:5
 #: src/components/importschedule/importtypes/Gaugemeasurement.vue:5
@@ -971,15 +1064,21 @@
 #: src/components/Identify.vue:65
 msgid ""
 "Uses\n"
-"        <a href=\"https://download.geonames.org/export/dump/readme.txt\">GeoNames</a>\n"
+"        <a href=\"https://download.geonames.org/export/dump/readme.txt"
+"\">GeoNames</a>\n"
 "        under %{ geoLicense }."
 msgstr ""
 "Koristi\n"
-"        <a href=\"https://download.geonames.org/export/dump/readme.txt\">GeoNames</a>\n"
+"        <a href=\"https://download.geonames.org/export/dump/readme.txt"
+"\">GeoNames</a>\n"
 "        pod %{ geoLicense }."
 
+#: src/components/staging/StagingDetail.vue:218
+msgid "Value"
+msgstr ""
+
 #: src/components/usermanagement/Userdetail.vue:91
-#: src/components/usermanagement/Usermanagement.vue:327
+#: src/components/usermanagement/Usermanagement.vue:366
 msgid "Waterway Admin"
 msgstr "Admin Plovnog puta"
 
@@ -997,26 +1096,33 @@
 msgstr "Vodomjerna stanica"
 
 #: src/components/usermanagement/Userdetail.vue:94
-#: src/components/usermanagement/Usermanagement.vue:328
+#: src/components/usermanagement/Usermanagement.vue:367
 msgid "Waterway User"
 msgstr "Korisnik plovnog puta"
 
-#: src/components/importschedule/Importscheduledetail.vue:788
+#: src/components/importschedule/Importscheduledetail.vue:805
 msgid "Wednesday"
 msgstr "Srijeda"
 
-#: src/components/importschedule/Importscheduledetail.vue:781
+#: src/components/importschedule/Importscheduledetail.vue:798
 msgid "week"
 msgstr "tjedan"
 
-#: src/components/importschedule/Importscheduledetail.vue:197
+#: src/components/importschedule/Importscheduledetail.vue:209
 msgid "Weekly"
 msgstr "Tjedno"
 
-#: src/components/importschedule/Importscheduledetail.vue:783
+#: src/components/importschedule/Importscheduledetail.vue:800
 msgid "year"
 msgstr "godina"
 
 #: src/components/fairway/Profiles.vue:443
-msgid "You can now select these coordinates from the \"Saved cross profiles\" menu to restore this cross profile."
-msgstr "Sada možete odabrati ove koordinate iz izbornika \"Spremljeni poprečni profili\" da biste vratili ovaj poprečni profil."
+msgid ""
+"You can now select these coordinates from the \"Saved cross profiles\" menu "
+"to restore this cross profile."
+msgstr ""
+"Sada možete odabrati ove koordinate iz izbornika \"Spremljeni poprečni "
+"profili\" da biste vratili ovaj poprečni profil."
+
+#~ msgid "under construction"
+#~ msgstr "u izgradnji"
--- a/client/src/locale/hu_HU/LC_MESSAGES/app.po	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/locale/hu_HU/LC_MESSAGES/app.po	Tue Feb 12 11:11:32 2019 +0100
@@ -10,7 +10,8 @@
 "POT-Creation-Date: 2019-01-24 09:38+0100\n"
 "PO-Revision-Date: 2019-01-26 14:04+0000\n"
 "Last-Translator: Bede Csaba <csababede@gmail.com>\n"
-"Language-Team: Hungarian <https://hosted.weblate.org/projects/gemma/client/hu/>\n"
+"Language-Team: Hungarian <https://hosted.weblate.org/projects/gemma/client/"
+"hu/>\n"
 "Language: hu_HU\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -18,11 +19,23 @@
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 "X-Generator: Weblate 3.5-dev\n"
 
-#: src/components/Pdftool.vue:400
+#: src/components/ImportWaterwayProfiles.vue:164
+msgid " was successfully uploaded."
+msgstr ""
+
+#: src/components/Pdftool.vue:453
 msgid "– generated by:"
 msgstr "- létrehozta:"
 
-#: src/components/importschedule/Importscheduledetail.vue:778
+#: src/components/staging/StagingDetail.vue:188
+msgid "( New )"
+msgstr ""
+
+#: src/components/Pdftool.vue:29
+msgid "{{ template.name }}"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:795
 msgid "15 minutes"
 msgstr ""
 
@@ -34,23 +47,27 @@
 msgid "Accesslog"
 msgstr ""
 
-#: src/components/usermanagement/Usermanagement.vue:104
+#: src/components/usermanagement/Usermanagement.vue:102
 msgid "Add User"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:798
+#: src/components/staging/StagingDetail.vue:19
+msgid "Approved Gauge Measurements"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:815
 msgid "April"
 msgstr ""
 
-#: src/store/map.js:445
+#: src/store/map.js:565
 msgid "Area"
 msgstr "terület"
 
-#: src/components/importschedule/Importscheduledetail.vue:775
+#: src/components/importschedule/Importscheduledetail.vue:792
 msgid "at"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:802
+#: src/components/importschedule/Importscheduledetail.vue:819
 msgid "August"
 msgstr ""
 
@@ -59,45 +76,47 @@
 msgstr ""
 
 #: src/components/importschedule/Importscheduledetail.vue:34
-msgid "Available fairway fpths"
+msgid "Available fairway depths"
 msgstr ""
 
 #: src/components/Login.vue:70
 msgid "back to login"
 msgstr ""
 
-#: src/components/Bottlenecks.vue:274
-#: src/components/ImportApprovedGaugeMeasurement.vue:111
+#: src/components/Bottlenecks.vue:277
+#: src/components/ImportApprovedGaugeMeasurement.vue:108
 #: src/components/ImportSoundingresults.vue:216
 #: src/components/ImportSoundingresults.vue:255
 #: src/components/ImportSoundingresults.vue:286
-#: src/components/ImportStretches.vue:306
-#: src/components/ImportStretches.vue:313
-#: src/components/ImportStretches.vue:485 src/components/Search.vue:258
+#: src/components/ImportStretches.vue:303
+#: src/components/ImportStretches.vue:310
+#: src/components/ImportStretches.vue:482
+#: src/components/ImportWaterwayProfiles.vue:175 src/components/Search.vue:258
 #: src/components/Systemconfiguration.vue:114
 #: src/components/Systemconfiguration.vue:129
 #: src/components/Systemconfiguration.vue:148
 #: src/components/Systemconfiguration.vue:165
 #: src/components/importqueue/Importqueue.vue:160
 #: src/components/importqueue/Importqueue.vue:180
-#: src/components/importqueue/Importqueuedetail.vue:182
+#: src/components/importqueue/Importqueuedetail.vue:214
 #: src/components/importschedule/Importschedule.vue:148
 #: src/components/importschedule/Importschedule.vue:167
 #: src/components/importschedule/Importschedule.vue:176
 #: src/components/importschedule/Importschedule.vue:198
-#: src/components/importschedule/Importscheduledetail.vue:647
-#: src/components/importschedule/Importscheduledetail.vue:727
-#: src/components/importschedule/Importscheduledetail.vue:757
-#: src/components/staging/StagingDetail.vue:251
+#: src/components/importschedule/Importscheduledetail.vue:664
+#: src/components/importschedule/Importscheduledetail.vue:744
+#: src/components/importschedule/Importscheduledetail.vue:774
+#: src/components/staging/StagingDetail.vue:364
+#: src/components/staging/StagingDetail.vue:418
 #: src/components/usermanagement/Userdetail.vue:304
 #: src/components/usermanagement/Userdetail.vue:376
-#: src/components/usermanagement/Usermanagement.vue:298
-#: src/components/usermanagement/Usermanagement.vue:306
-#: src/components/usermanagement/Usermanagement.vue:340
+#: src/components/usermanagement/Usermanagement.vue:337
+#: src/components/usermanagement/Usermanagement.vue:345
+#: src/components/usermanagement/Usermanagement.vue:379
 msgid "Backend Error"
 msgstr ""
 
-#: src/components/ImportSoundingresults.vue:16
+#: src/components/ImportSoundingresults.vue:16 src/components/Pdftool.vue:496
 #, fuzzy
 msgid "Bottleneck"
 msgstr "Gázlók, szűkületek"
@@ -112,7 +131,7 @@
 
 #: src/components/Bottlenecks.vue:4 src/components/Sidebar.vue:27
 #: src/components/importschedule/Importscheduledetail.vue:25
-#: src/components/staging/StagingDetail.vue:11
+#: src/components/staging/StagingDetail.vue:12
 msgid "Bottlenecks"
 msgstr ""
 
@@ -129,13 +148,15 @@
 msgid "choose .zip- file"
 msgstr ""
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:78
-#: src/components/ImportWaterwayProfiles.vue:75
+#: src/components/ImportApprovedGaugeMeasurement.vue:75
+#: src/components/ImportWaterwayProfiles.vue:135
+#: src/components/ImportWaterwayProfiles.vue:169
 msgid "choose file to upload"
 msgstr ""
 
-#: src/components/Pdftool.vue:18
-msgid "Choose format:"
+#: src/components/Pdftool.vue:23
+#, fuzzy
+msgid "Chose preset"
 msgstr "Válasszon formátumot"
 
 #: src/components/fairway/Profiles.vue:64
@@ -160,25 +181,29 @@
 msgid "Country"
 msgstr "Ország"
 
-#: src/components/ImportStretches.vue:85
+#: src/components/ImportStretches.vue:87
 msgid "Countrycode"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:333
+#: src/components/importschedule/Importscheduledetail.vue:345
 msgid "Cronstring"
 msgstr ""
 
 #: src/components/ImportSoundingresults.vue:72
-#: src/components/importqueue/Importqueuedetail.vue:49
+#: src/components/importqueue/Importqueuedetail.vue:54
 #: src/components/staging/Staging.vue:13
 msgid "Date"
 msgstr ""
 
-#: src/components/ImportStretches.vue:201
+#: src/components/ImportStretches.vue:198
 msgid "Date info"
 msgstr ""
 
-#: src/components/Pdftool.vue:396
+#: src/components/staging/StagingDetail.vue:179
+msgid "Date of measurement"
+msgstr ""
+
+#: src/components/Pdftool.vue:449
 msgid "Date of publication:"
 msgstr ""
 
@@ -186,11 +211,11 @@
 msgid "Datum"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:780
+#: src/components/importschedule/Importscheduledetail.vue:797
 msgid "day"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:806
+#: src/components/importschedule/Importscheduledetail.vue:823
 msgid "December"
 msgstr ""
 
@@ -198,11 +223,15 @@
 msgid "Define stretches"
 msgstr ""
 
+#: src/components/usermanagement/Usermanagement.vue:123
+msgid "Delete user"
+msgstr ""
+
 #: src/components/importschedule/Importschedule.vue:192
 msgid "Deleted import: #"
 msgstr ""
 
-#: src/components/ImportStretches.vue:361
+#: src/components/ImportStretches.vue:358
 msgid "Deleting "
 msgstr ""
 
@@ -210,14 +239,26 @@
 msgid "Depth"
 msgstr ""
 
+#: src/components/Pdftool.vue:522
+msgid "Depth relativ to"
+msgstr ""
+
 #: src/components/ImportSoundingresults.vue:52
 msgid "Depthreference"
 msgstr ""
 
+#: src/components/importschedule/Importscheduledetail.vue:49
+msgid "Distance marks ashore"
+msgstr ""
+
 #: src/components/importschedule/Importscheduledetail.vue:46
 msgid "Distance marks virtual"
 msgstr ""
 
+#: src/components/usermanagement/Usermanagement.vue:131
+msgid "Do you really want to delete the following user account:"
+msgstr ""
+
 #: src/components/Pdftool.vue:10
 msgid "Download"
 msgstr ""
@@ -235,11 +276,11 @@
 msgid "Email address"
 msgstr "Email cím"
 
-#: src/components/importschedule/Importscheduledetail.vue:53
+#: src/components/importschedule/Importscheduledetail.vue:56
 msgid "Email Notification"
 msgstr ""
 
-#: src/components/ImportStretches.vue:131
+#: src/components/ImportStretches.vue:133
 msgid "End rhm"
 msgstr ""
 
@@ -271,7 +312,7 @@
 msgid "Errorlog"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:771
+#: src/components/importschedule/Importscheduledetail.vue:788
 msgid "Every"
 msgstr ""
 
@@ -283,13 +324,15 @@
 msgid "Fairway dimension"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:34
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:25
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:25
 #: src/components/importschedule/importtypes/Waterwayarea.vue:25
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:25
 msgid "Featuretype"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:796
+#: src/components/importschedule/Importscheduledetail.vue:813
 msgid "February"
 msgstr ""
 
@@ -297,7 +340,11 @@
 msgid "Forgot password"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:790
+#: src/components/Pdftool.vue:33
+msgid "Format"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:807
 msgid "Friday"
 msgstr ""
 
@@ -305,11 +352,11 @@
 msgid "Gauge measurement"
 msgstr ""
 
-#: src/components/Pdftool.vue:10 src/components/Pdftool.vue:61
+#: src/components/Pdftool.vue:10 src/components/Pdftool.vue:96
 msgid "Generate PDF"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:779
+#: src/components/importschedule/Importscheduledetail.vue:796
 msgid "hour"
 msgstr ""
 
@@ -317,7 +364,7 @@
 msgid "Id"
 msgstr ""
 
-#: src/components/ImportStretches.vue:66
+#: src/components/ImportStretches.vue:68
 msgid "ID"
 msgstr ""
 
@@ -325,19 +372,19 @@
 msgid "Identified"
 msgstr ""
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:101
+#: src/components/ImportApprovedGaugeMeasurement.vue:98
 #: src/components/ImportSoundingresults.vue:278
-#: src/components/ImportStretches.vue:474
-#: src/components/ImportWaterwayProfiles.vue:88 src/components/Sidebar.vue:58
+#: src/components/ImportStretches.vue:471
+#: src/components/ImportWaterwayProfiles.vue:162 src/components/Sidebar.vue:58
 #: src/components/importschedule/Importschedule.vue:33
-#: src/components/importschedule/Importscheduledetail.vue:456
-#: src/components/importschedule/Importscheduledetail.vue:640
-#: src/components/importschedule/Importscheduledetail.vue:710
-#: src/components/importschedule/Importscheduledetail.vue:740
+#: src/components/importschedule/Importscheduledetail.vue:470
+#: src/components/importschedule/Importscheduledetail.vue:657
+#: src/components/importschedule/Importscheduledetail.vue:727
+#: src/components/importschedule/Importscheduledetail.vue:757
 msgid "Import"
 msgstr ""
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:11
+#: src/components/ImportApprovedGaugeMeasurement.vue:8
 #: src/components/Sidebar.vue:76
 msgid "Import approved gaugemeasurements"
 msgstr ""
@@ -354,7 +401,7 @@
 msgid "Import waterway profiles"
 msgstr ""
 
-#: src/components/ImportWaterwayProfiles.vue:11
+#: src/components/ImportWaterwayProfiles.vue:8
 msgid "Import Waterwayprofiles"
 msgstr ""
 
@@ -386,32 +433,36 @@
 msgid "Invalid input"
 msgstr ""
 
-#: src/components/Pdftool.vue:29
+#: src/components/Pdftool.vue:62
 msgid "ISO A3"
 msgstr ""
 
-#: src/components/Pdftool.vue:30
+#: src/components/Pdftool.vue:63
 msgid "ISO A4"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:795
+#: src/components/staging/StagingDetail.vue:176
+msgid "ISRS Code"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:812
 msgid "January"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:801
+#: src/components/importschedule/Importscheduledetail.vue:818
 msgid "July"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:800
+#: src/components/importschedule/Importscheduledetail.vue:817
 msgid "June"
 msgstr ""
 
 #: src/components/importqueue/Importqueue.vue:58
-#: src/components/importqueue/Importqueuedetail.vue:45
+#: src/components/importqueue/Importqueuedetail.vue:50
 msgid "Kind"
 msgstr ""
 
-#: src/components/Pdftool.vue:20
+#: src/components/Pdftool.vue:39
 msgid "landscape"
 msgstr ""
 
@@ -428,7 +479,7 @@
 msgid "Layers"
 msgstr "Rétegek"
 
-#: src/store/map.js:424
+#: src/store/map.js:544
 msgid "Length"
 msgstr ""
 
@@ -457,7 +508,7 @@
 msgstr ""
 
 #: src/components/importschedule/Importschedule.vue:161
-#: src/components/importschedule/Importscheduledetail.vue:641
+#: src/components/importschedule/Importscheduledetail.vue:658
 msgid "Manually triggered import: #"
 msgstr ""
 
@@ -465,15 +516,15 @@
 msgid "Map"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:797
+#: src/components/importschedule/Importscheduledetail.vue:814
 msgid "March"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:132
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:130
 msgid "MaxWidth"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:799
+#: src/components/importschedule/Importscheduledetail.vue:816
 msgid "May"
 msgstr ""
 
@@ -481,28 +532,28 @@
 msgid "Measurement"
 msgstr ""
 
-#: src/components/importqueue/Importqueuedetail.vue:58
+#: src/components/importqueue/Importqueuedetail.vue:63
 #, fuzzy
 msgid "Message"
 msgstr "Üzenet"
 
-#: src/components/importschedule/Importscheduledetail.vue:772
+#: src/components/importschedule/Importscheduledetail.vue:789
 msgid "minutes past"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:110
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:109
 msgid "MinWidth"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:786
+#: src/components/importschedule/Importscheduledetail.vue:803
 msgid "Monday"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:782
+#: src/components/importschedule/Importscheduledetail.vue:799
 msgid "month"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:198
+#: src/components/importschedule/Importscheduledetail.vue:210
 msgid "Monthly"
 msgstr ""
 
@@ -512,16 +563,20 @@
 msgid "Name"
 msgstr "Név"
 
-#: src/components/ImportStretches.vue:182
+#: src/components/ImportStretches.vue:184
 msgid "National Object name"
 msgstr ""
 
+#: src/components/staging/StagingDetail.vue:227
+msgid "New"
+msgstr ""
+
 #: src/components/importschedule/Importschedule.vue:93
-#: src/components/importschedule/Importscheduledetail.vue:457
+#: src/components/importschedule/Importscheduledetail.vue:471
 msgid "New Import"
 msgstr ""
 
-#: src/components/ImportStretches.vue:247
+#: src/components/ImportStretches.vue:244
 msgid "New stretch"
 msgstr ""
 
@@ -529,7 +584,7 @@
 msgid "No features identified."
 msgstr ""
 
-#: src/components/Bottlenecks.vue:115 src/components/ImportStretches.vue:59
+#: src/components/Bottlenecks.vue:118 src/components/ImportStretches.vue:61
 #: src/components/staging/Staging.vue:36
 msgid "No results."
 msgstr ""
@@ -538,35 +593,39 @@
 msgid "No scheduled imports"
 msgstr ""
 
-#: src/components/ImportStretches.vue:360
+#: src/components/ImportStretches.vue:357
 msgid "Not implemented"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:805
+#: src/components/importschedule/Importscheduledetail.vue:822
 msgid "November"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:776
+#: src/components/importschedule/Importscheduledetail.vue:793
 msgid "o' clock"
 msgstr ""
 
-#: src/components/ImportStretches.vue:164
+#: src/components/ImportStretches.vue:166
 msgid "Object name"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:804
+#: src/components/importschedule/Importscheduledetail.vue:821
 msgid "October"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:774
+#: src/components/importschedule/Importscheduledetail.vue:791
 msgid "of"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:773
+#: src/components/staging/StagingDetail.vue:224
+msgid "Old"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:790
 msgid "on"
 msgstr ""
 
-#: src/components/Pdftool.vue:18
+#: src/components/Pdftool.vue:19
 msgid "Open in new window"
 msgstr ""
 
@@ -589,7 +648,9 @@
 msgstr ""
 
 #: src/components/usermanagement/Userdetail.vue:346
-msgid "Password should at least be 8 char long including 1 digit and 1 special char like $"
+msgid ""
+"Password should at least be 8 char long including 1 digit and 1 special char "
+"like $"
 msgstr ""
 
 #: src/components/usermanagement/Userdetail.vue:342
@@ -609,19 +670,21 @@
 msgid "Please choose a role"
 msgstr ""
 
-#: src/components/ImportStretches.vue:97
+#: src/components/ImportStretches.vue:99
 msgid "Please enter a countrycode"
 msgstr ""
 
 #: src/components/ImportSoundingresults.vue:84
-#: src/components/ImportStretches.vue:212
+#: src/components/ImportStretches.vue:209
 msgid "Please enter a date"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:100
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:99
 msgid "Please enter a depth"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:46
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:37
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:37
 #: src/components/importschedule/importtypes/Waterwayarea.vue:37
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:37
@@ -632,11 +695,11 @@
 msgid "Please enter a level of service"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:146
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:143
 msgid "Please enter a maximum width"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:124
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:122
 msgid "Please enter a minimum width"
 msgstr ""
 
@@ -653,20 +716,22 @@
 msgid "Please enter a reference"
 msgstr ""
 
-#: src/components/ImportStretches.vue:228
+#: src/components/ImportStretches.vue:225
 msgid "Please enter a source"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:170
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:167
 msgid "Please enter a source orgranization"
 msgstr ""
 
-#: src/components/ImportStretches.vue:126
+#: src/components/ImportStretches.vue:128
 msgid "Please enter a start point"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:25
 #: src/components/importschedule/importtypes/Availablefairwaydepth.vue:19
 #: src/components/importschedule/importtypes/Bottleneck.vue:44
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:19
 #: src/components/importschedule/importtypes/Distancemarksvirtual.vue:19
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:19
 #: src/components/importschedule/importtypes/Gaugemeasurement.vue:19
@@ -681,16 +746,15 @@
 msgid "Please enter a Username"
 msgstr ""
 
-#: src/components/ImportStretches.vue:151
+#: src/components/ImportStretches.vue:153
 msgid "Please enter an end point"
 msgstr ""
 
-#: src/components/ImportStretches.vue:78
+#: src/components/ImportStretches.vue:80
 msgid "Please enter an id"
 msgstr ""
 
-#: src/components/ImportStretches.vue:176
-#: src/components/ImportStretches.vue:194
+#: src/components/ImportStretches.vue:178
 msgid "Please enter an objectname"
 msgstr ""
 
@@ -698,6 +762,8 @@
 msgid "Please enter correct coordinates in the format: Lat,Lon,Lat,Lon"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:63
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:57
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:57
 #: src/components/importschedule/importtypes/Waterwayarea.vue:57
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:57
@@ -713,7 +779,7 @@
 msgid "Please select one"
 msgstr ""
 
-#: src/components/Pdftool.vue:21
+#: src/components/Pdftool.vue:40
 msgid "portrait"
 msgstr ""
 
@@ -733,6 +799,10 @@
 msgid "Projection"
 msgstr ""
 
+#: src/components/Pdftool.vue:514
+msgid "Ref gauge"
+msgstr ""
+
 #: src/components/Logs.vue:48 src/components/importqueue/Importqueue.vue:84
 msgid "Refresh"
 msgstr ""
@@ -749,11 +819,15 @@
 msgid "Request password reset!"
 msgstr ""
 
+#: src/components/Pdftool.vue:44
+msgid "Resolution"
+msgstr ""
+
 #: src/components/usermanagement/Userdetail.vue:78
 msgid "Role"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:791
+#: src/components/importschedule/Importscheduledetail.vue:808
 msgid "Saturday"
 msgstr ""
 
@@ -761,16 +835,16 @@
 msgid "Saved cross profiles"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:711
+#: src/components/importschedule/Importscheduledetail.vue:728
 msgid "Saved import: #"
 msgstr ""
 
 #: src/components/importschedule/Importschedule.vue:36
-#: src/components/importschedule/Importscheduledetail.vue:189
+#: src/components/importschedule/Importscheduledetail.vue:201
 msgid "Schedule"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:147
+#: src/components/importschedule/Importscheduledetail.vue:159
 msgid "Scheduled"
 msgstr ""
 
@@ -787,7 +861,7 @@
 msgid "Send testmail"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:803
+#: src/components/importschedule/Importscheduledetail.vue:820
 msgid "September"
 msgstr ""
 
@@ -795,10 +869,14 @@
 msgid "Signer"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:167
+#: src/components/importschedule/Importscheduledetail.vue:179
 msgid "Simple schedule"
 msgstr ""
 
+#: src/components/Pdftool.vue:56
+msgid "Size"
+msgstr ""
+
 #: src/components/Identify.vue:60
 msgid ""
 "Some data ©\n"
@@ -806,6 +884,8 @@
 "        contributors."
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:55
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:45
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:45
 #: src/components/importschedule/importtypes/Waterwayarea.vue:45
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:45
@@ -816,7 +896,7 @@
 msgid "Sounding Result"
 msgstr ""
 
-#: src/components/ImportStretches.vue:217
+#: src/components/ImportStretches.vue:214
 msgid "Source"
 msgstr ""
 
@@ -824,7 +904,7 @@
 msgid "Source organization"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:157
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:154
 msgid "Source orgranization"
 msgstr ""
 
@@ -844,7 +924,7 @@
 msgid "Start"
 msgstr ""
 
-#: src/components/ImportStretches.vue:106
+#: src/components/ImportStretches.vue:108
 msgid "Start rhm"
 msgstr ""
 
@@ -852,15 +932,15 @@
 msgid "Starting import for "
 msgstr ""
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:102
+#: src/components/ImportApprovedGaugeMeasurement.vue:99
 msgid "Starting import of Approved Gauge Measurements"
 msgstr ""
 
-#: src/components/ImportStretches.vue:475
+#: src/components/ImportStretches.vue:472
 msgid "Starting import of stretch"
 msgstr ""
 
-#: src/components/ImportStretches.vue:157
+#: src/components/ImportStretches.vue:159
 msgid "Startpoint is not before endpoint."
 msgstr ""
 
@@ -868,8 +948,8 @@
 msgid "State"
 msgstr ""
 
-#: src/components/ImportStretches.vue:241
-#: src/components/importschedule/Importscheduledetail.vue:345
+#: src/components/ImportStretches.vue:238
+#: src/components/importschedule/Importscheduledetail.vue:357
 #: src/components/usermanagement/Userdetail.vue:129
 msgid "Submit"
 msgstr ""
@@ -882,15 +962,19 @@
 msgid "Successful"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:792
+#: src/components/importschedule/Importscheduledetail.vue:809
 msgid "Sunday"
 msgstr ""
 
+#: src/components/Pdftool.vue:506
+msgid "Survey date"
+msgstr ""
+
 #: src/components/usermanagement/Userdetail.vue:88
 msgid "Sysadmin"
 msgstr ""
 
-#: src/components/usermanagement/Usermanagement.vue:326
+#: src/components/usermanagement/Usermanagement.vue:365
 msgid "System-Administrator"
 msgstr ""
 
@@ -902,23 +986,27 @@
 msgid "Systemconfiguration"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:163
+msgid "this"
+msgstr ""
+
 #: src/components/Identify.vue:51
 msgid ""
 "This app uses <i>gemma</i>, which is Free Software under <br/>\n"
 "        %{ license } without warranty, see docs for details."
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:789
+#: src/components/importschedule/Importscheduledetail.vue:806
 msgid "Thursday"
 msgstr ""
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:45
-#: src/components/ImportWaterwayProfiles.vue:43
-#: src/components/importschedule/Importscheduledetail.vue:358
+#: src/components/ImportApprovedGaugeMeasurement.vue:42
+#: src/components/ImportWaterwayProfiles.vue:99
+#: src/components/importschedule/Importscheduledetail.vue:370
 msgid "Trigger import"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:787
+#: src/components/importschedule/Importscheduledetail.vue:804
 msgid "Tuesday"
 msgstr ""
 
@@ -928,11 +1016,7 @@
 msgid "Type"
 msgstr "Típus"
 
-#: src/components/ImportWaterwayProfiles.vue:89
-msgid "under construction"
-msgstr ""
-
-#: src/components/importschedule/Importscheduledetail.vue:741
+#: src/components/importschedule/Importscheduledetail.vue:758
 msgid "update import: #"
 msgstr ""
 
@@ -940,8 +1024,10 @@
 msgid "Upload"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:16
 #: src/components/importschedule/importtypes/Availablefairwaydepth.vue:5
 #: src/components/importschedule/importtypes/Bottleneck.vue:5
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:5
 #: src/components/importschedule/importtypes/Distancemarksvirtual.vue:5
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:5
 #: src/components/importschedule/importtypes/Gaugemeasurement.vue:5
@@ -970,12 +1056,17 @@
 #: src/components/Identify.vue:65
 msgid ""
 "Uses\n"
-"        <a href=\"https://download.geonames.org/export/dump/readme.txt\">GeoNames</a>\n"
+"        <a href=\"https://download.geonames.org/export/dump/readme.txt"
+"\">GeoNames</a>\n"
 "        under %{ geoLicense }."
 msgstr ""
 
+#: src/components/staging/StagingDetail.vue:218
+msgid "Value"
+msgstr ""
+
 #: src/components/usermanagement/Userdetail.vue:91
-#: src/components/usermanagement/Usermanagement.vue:327
+#: src/components/usermanagement/Usermanagement.vue:366
 msgid "Waterway Admin"
 msgstr ""
 
@@ -992,26 +1083,28 @@
 msgstr ""
 
 #: src/components/usermanagement/Userdetail.vue:94
-#: src/components/usermanagement/Usermanagement.vue:328
+#: src/components/usermanagement/Usermanagement.vue:367
 msgid "Waterway User"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:788
+#: src/components/importschedule/Importscheduledetail.vue:805
 msgid "Wednesday"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:781
+#: src/components/importschedule/Importscheduledetail.vue:798
 msgid "week"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:197
+#: src/components/importschedule/Importscheduledetail.vue:209
 msgid "Weekly"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:783
+#: src/components/importschedule/Importscheduledetail.vue:800
 msgid "year"
 msgstr "Év"
 
 #: src/components/fairway/Profiles.vue:443
-msgid "You can now select these coordinates from the \"Saved cross profiles\" menu to restore this cross profile."
+msgid ""
+"You can now select these coordinates from the \"Saved cross profiles\" menu "
+"to restore this cross profile."
 msgstr ""
--- a/client/src/locale/ro_RO/LC_MESSAGES/app.po	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/locale/ro_RO/LC_MESSAGES/app.po	Tue Feb 12 11:11:32 2019 +0100
@@ -8,21 +8,35 @@
 "Project-Id-Version: gemmajs 1.99.0-dev\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2019-01-25 10:11+0100\n"
-"PO-Revision-Date: 2019-01-19 13:20+0000\n"
+"PO-Revision-Date: 2019-02-04 22:09+0000\n"
 "Last-Translator: MANESCU CARMEN <compania@acn.ro>\n"
-"Language-Team: Romanian <https://hosted.weblate.org/projects/gemma/client/ro/>\n"
+"Language-Team: Romanian <https://hosted.weblate.org/projects/gemma/client/ro/"
+">\n"
 "Language: ro_RO\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < 20)) ? 1 : 2;\n"
-"X-Generator: Weblate 3.4-dev\n"
+"Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < "
+"20)) ? 1 : 2;\n"
+"X-Generator: Weblate 3.5-dev\n"
 
-#: src/components/Pdftool.vue:400
-msgid "– generated by:"
+#: src/components/ImportWaterwayProfiles.vue:164
+msgid " was successfully uploaded."
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:778
+#: src/components/Pdftool.vue:453
+msgid "– generated by:"
+msgstr "- generat de:"
+
+#: src/components/staging/StagingDetail.vue:188
+msgid "( New )"
+msgstr ""
+
+#: src/components/Pdftool.vue:29
+msgid "{{ template.name }}"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:795
 msgid "15 minutes"
 msgstr "15 minute"
 
@@ -32,25 +46,30 @@
 
 #: src/components/Logs.vue:25
 msgid "Accesslog"
-msgstr "Logul cu acces"
+msgstr "Logul de acces"
 
-#: src/components/usermanagement/Usermanagement.vue:104
+#: src/components/usermanagement/Usermanagement.vue:102
 msgid "Add User"
 msgstr "Adauga utilizator"
 
-#: src/components/importschedule/Importscheduledetail.vue:798
+#: src/components/staging/StagingDetail.vue:19
+#, fuzzy
+msgid "Approved Gauge Measurements"
+msgstr "Import aprobat masura nivel"
+
+#: src/components/importschedule/Importscheduledetail.vue:815
 msgid "April"
 msgstr "Aprilie"
 
-#: src/store/map.js:445
+#: src/store/map.js:565
 msgid "Area"
 msgstr "Zona"
 
-#: src/components/importschedule/Importscheduledetail.vue:775
+#: src/components/importschedule/Importscheduledetail.vue:792
 msgid "at"
 msgstr "la"
 
-#: src/components/importschedule/Importscheduledetail.vue:802
+#: src/components/importschedule/Importscheduledetail.vue:819
 msgid "August"
 msgstr "August"
 
@@ -60,45 +79,47 @@
 
 #: src/components/importschedule/Importscheduledetail.vue:34
 #, fuzzy
-msgid "Available fairway fpths"
-msgstr "Adancime disponibila Senal Navigabil"
+msgid "Available fairway depths"
+msgstr "Adâncime disponibilă Senal Navigabil"
 
 #: src/components/Login.vue:70
 msgid "back to login"
 msgstr "Inapoi la loggare"
 
-#: src/components/Bottlenecks.vue:274
-#: src/components/ImportApprovedGaugeMeasurement.vue:111
+#: src/components/Bottlenecks.vue:277
+#: src/components/ImportApprovedGaugeMeasurement.vue:108
 #: src/components/ImportSoundingresults.vue:216
 #: src/components/ImportSoundingresults.vue:255
 #: src/components/ImportSoundingresults.vue:286
-#: src/components/ImportStretches.vue:306
-#: src/components/ImportStretches.vue:313
-#: src/components/ImportStretches.vue:485 src/components/Search.vue:258
+#: src/components/ImportStretches.vue:303
+#: src/components/ImportStretches.vue:310
+#: src/components/ImportStretches.vue:482
+#: src/components/ImportWaterwayProfiles.vue:175 src/components/Search.vue:258
 #: src/components/Systemconfiguration.vue:114
 #: src/components/Systemconfiguration.vue:129
 #: src/components/Systemconfiguration.vue:148
 #: src/components/Systemconfiguration.vue:165
 #: src/components/importqueue/Importqueue.vue:160
 #: src/components/importqueue/Importqueue.vue:180
-#: src/components/importqueue/Importqueuedetail.vue:182
+#: src/components/importqueue/Importqueuedetail.vue:214
 #: src/components/importschedule/Importschedule.vue:148
 #: src/components/importschedule/Importschedule.vue:167
 #: src/components/importschedule/Importschedule.vue:176
 #: src/components/importschedule/Importschedule.vue:198
-#: src/components/importschedule/Importscheduledetail.vue:647
-#: src/components/importschedule/Importscheduledetail.vue:727
-#: src/components/importschedule/Importscheduledetail.vue:757
-#: src/components/staging/StagingDetail.vue:251
+#: src/components/importschedule/Importscheduledetail.vue:664
+#: src/components/importschedule/Importscheduledetail.vue:744
+#: src/components/importschedule/Importscheduledetail.vue:774
+#: src/components/staging/StagingDetail.vue:364
+#: src/components/staging/StagingDetail.vue:418
 #: src/components/usermanagement/Userdetail.vue:304
 #: src/components/usermanagement/Userdetail.vue:376
-#: src/components/usermanagement/Usermanagement.vue:298
-#: src/components/usermanagement/Usermanagement.vue:306
-#: src/components/usermanagement/Usermanagement.vue:340
+#: src/components/usermanagement/Usermanagement.vue:337
+#: src/components/usermanagement/Usermanagement.vue:345
+#: src/components/usermanagement/Usermanagement.vue:379
 msgid "Backend Error"
 msgstr "Eroare Server"
 
-#: src/components/ImportSoundingresults.vue:16
+#: src/components/ImportSoundingresults.vue:16 src/components/Pdftool.vue:496
 msgid "Bottleneck"
 msgstr "Puncte critice"
 
@@ -112,7 +133,7 @@
 
 #: src/components/Bottlenecks.vue:4 src/components/Sidebar.vue:27
 #: src/components/importschedule/Importscheduledetail.vue:25
-#: src/components/staging/StagingDetail.vue:11
+#: src/components/staging/StagingDetail.vue:12
 msgid "Bottlenecks"
 msgstr "Puncte critice"
 
@@ -122,22 +143,23 @@
 
 #: src/components/Bottlenecks.vue:30
 msgid "Chainage"
-msgstr ""
+msgstr "Inlantuire"
 
 #: src/components/ImportSoundingresults.vue:178
 #: src/components/ImportSoundingresults.vue:192
 msgid "choose .zip- file"
 msgstr "alege fisiere de tip .zip"
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:78
-#: src/components/ImportWaterwayProfiles.vue:75
+#: src/components/ImportApprovedGaugeMeasurement.vue:75
+#: src/components/ImportWaterwayProfiles.vue:135
+#: src/components/ImportWaterwayProfiles.vue:169
 msgid "choose file to upload"
 msgstr "alege fisier sa incarci"
 
-#: src/components/Pdftool.vue:18
+#: src/components/Pdftool.vue:23
 #, fuzzy
-msgid "Choose format:"
-msgstr "Alege formatul"
+msgid "Chose preset"
+msgstr "Alege formatul:"
 
 #: src/components/fairway/Profiles.vue:64
 msgid "Compare with"
@@ -160,65 +182,86 @@
 msgid "Country"
 msgstr "Tara"
 
-#: src/components/ImportStretches.vue:85
+#: src/components/ImportStretches.vue:87
 msgid "Countrycode"
 msgstr "Cod Tara"
 
-#: src/components/importschedule/Importscheduledetail.vue:333
+#: src/components/importschedule/Importscheduledetail.vue:345
 msgid "Cronstring"
 msgstr ""
 
 #: src/components/ImportSoundingresults.vue:72
-#: src/components/importqueue/Importqueuedetail.vue:49
+#: src/components/importqueue/Importqueuedetail.vue:54
 #: src/components/staging/Staging.vue:13
 msgid "Date"
 msgstr "Data"
 
-#: src/components/ImportStretches.vue:201
+#: src/components/ImportStretches.vue:198
 msgid "Date info"
 msgstr "Informatii despre data"
 
-#: src/components/Pdftool.vue:396
+#: src/components/staging/StagingDetail.vue:179
+#, fuzzy
+msgid "Date of measurement"
+msgstr "Masura statie nivel"
+
+#: src/components/Pdftool.vue:449
 msgid "Date of publication:"
-msgstr ""
+msgstr "Data publicării:"
 
 #: src/components/ImportStretches.vue:11
 msgid "Datum"
-msgstr ""
+msgstr "Dată"
 
-#: src/components/importschedule/Importscheduledetail.vue:780
+#: src/components/importschedule/Importscheduledetail.vue:797
 msgid "day"
 msgstr "ziua"
 
-#: src/components/importschedule/Importscheduledetail.vue:806
+#: src/components/importschedule/Importscheduledetail.vue:823
 msgid "December"
 msgstr "Decembrie"
 
 #: src/components/ImportStretches.vue:4 src/components/Sidebar.vue:54
+msgid "Define stretches"
+msgstr "Defineste secțiunile"
+
+#: src/components/usermanagement/Usermanagement.vue:123
 #, fuzzy
-msgid "Define stretches"
-msgstr "Defineste sectiunea si intinderile"
+msgid "Delete user"
+msgstr "Șterge "
 
 #: src/components/importschedule/Importschedule.vue:192
 msgid "Deleted import: #"
 msgstr "Import sters: #"
 
-#: src/components/ImportStretches.vue:361
+#: src/components/ImportStretches.vue:358
 msgid "Deleting "
-msgstr ""
+msgstr "Șterge "
 
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:86
 msgid "Depth"
 msgstr "Adancime"
 
+#: src/components/Pdftool.vue:522
+msgid "Depth relativ to"
+msgstr ""
+
 #: src/components/ImportSoundingresults.vue:52
 msgid "Depthreference"
 msgstr "Referinta adancime"
 
-#: src/components/importschedule/Importscheduledetail.vue:46
+#: src/components/importschedule/Importscheduledetail.vue:49
 #, fuzzy
+msgid "Distance marks ashore"
+msgstr "Marcaj distanță virtual"
+
+#: src/components/importschedule/Importscheduledetail.vue:46
 msgid "Distance marks virtual"
-msgstr "Marcaj distanta virtual"
+msgstr "Marcaj distanță virtual"
+
+#: src/components/usermanagement/Usermanagement.vue:131
+msgid "Do you really want to delete the following user account:"
+msgstr ""
 
 #: src/components/Pdftool.vue:10
 msgid "Download"
@@ -236,11 +279,11 @@
 msgid "Email address"
 msgstr "Adresa e-mail"
 
-#: src/components/importschedule/Importscheduledetail.vue:53
+#: src/components/importschedule/Importscheduledetail.vue:56
 msgid "Email Notification"
 msgstr "Notificare e-mail"
 
-#: src/components/ImportStretches.vue:131
+#: src/components/ImportStretches.vue:133
 msgid "End rhm"
 msgstr "Rhm final"
 
@@ -272,7 +315,7 @@
 msgid "Errorlog"
 msgstr "Jurnal de erori"
 
-#: src/components/importschedule/Importscheduledetail.vue:771
+#: src/components/importschedule/Importscheduledetail.vue:788
 msgid "Every"
 msgstr "Orice"
 
@@ -281,17 +324,18 @@
 msgstr "Esuat"
 
 #: src/components/importschedule/Importscheduledetail.vue:40
-#, fuzzy
 msgid "Fairway dimension"
-msgstr "Dimensiune senal navigabil"
+msgstr "Dimensiune șenal navigabil"
 
+#: src/components/ImportWaterwayProfiles.vue:34
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:25
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:25
 #: src/components/importschedule/importtypes/Waterwayarea.vue:25
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:25
 msgid "Featuretype"
 msgstr "Tip de caracteristica"
 
-#: src/components/importschedule/Importscheduledetail.vue:796
+#: src/components/importschedule/Importscheduledetail.vue:813
 msgid "February"
 msgstr "Februarie"
 
@@ -299,7 +343,11 @@
 msgid "Forgot password"
 msgstr "Ai uitat parola"
 
-#: src/components/importschedule/Importscheduledetail.vue:790
+#: src/components/Pdftool.vue:33
+msgid "Format"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:807
 msgid "Friday"
 msgstr "Vineri"
 
@@ -307,11 +355,11 @@
 msgid "Gauge measurement"
 msgstr "Masura statie nivel"
 
-#: src/components/Pdftool.vue:10 src/components/Pdftool.vue:61
+#: src/components/Pdftool.vue:10 src/components/Pdftool.vue:96
 msgid "Generate PDF"
 msgstr "Genereaza PDF"
 
-#: src/components/importschedule/Importscheduledetail.vue:779
+#: src/components/importschedule/Importscheduledetail.vue:796
 msgid "hour"
 msgstr "ora"
 
@@ -319,7 +367,7 @@
 msgid "Id"
 msgstr "Eticheta"
 
-#: src/components/ImportStretches.vue:66
+#: src/components/ImportStretches.vue:68
 msgid "ID"
 msgstr "Eticheta"
 
@@ -327,19 +375,19 @@
 msgid "Identified"
 msgstr "Identificat"
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:101
+#: src/components/ImportApprovedGaugeMeasurement.vue:98
 #: src/components/ImportSoundingresults.vue:278
-#: src/components/ImportStretches.vue:474
-#: src/components/ImportWaterwayProfiles.vue:88 src/components/Sidebar.vue:58
+#: src/components/ImportStretches.vue:471
+#: src/components/ImportWaterwayProfiles.vue:162 src/components/Sidebar.vue:58
 #: src/components/importschedule/Importschedule.vue:33
-#: src/components/importschedule/Importscheduledetail.vue:456
-#: src/components/importschedule/Importscheduledetail.vue:640
-#: src/components/importschedule/Importscheduledetail.vue:710
-#: src/components/importschedule/Importscheduledetail.vue:740
+#: src/components/importschedule/Importscheduledetail.vue:470
+#: src/components/importschedule/Importscheduledetail.vue:657
+#: src/components/importschedule/Importscheduledetail.vue:727
+#: src/components/importschedule/Importscheduledetail.vue:757
 msgid "Import"
 msgstr "Import"
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:11
+#: src/components/ImportApprovedGaugeMeasurement.vue:8
 #: src/components/Sidebar.vue:76
 msgid "Import approved gaugemeasurements"
 msgstr "Import aprobat masura nivel"
@@ -356,7 +404,7 @@
 msgid "Import waterway profiles"
 msgstr "Importa profilele caii navigabile"
 
-#: src/components/ImportWaterwayProfiles.vue:11
+#: src/components/ImportWaterwayProfiles.vue:8
 msgid "Import Waterwayprofiles"
 msgstr "Importa profilele caii navigabile"
 
@@ -388,32 +436,36 @@
 msgid "Invalid input"
 msgstr "Inregistrare nevalida"
 
-#: src/components/Pdftool.vue:29
+#: src/components/Pdftool.vue:62
 msgid "ISO A3"
 msgstr "ISO A3"
 
-#: src/components/Pdftool.vue:30
+#: src/components/Pdftool.vue:63
 msgid "ISO A4"
 msgstr "ISO A4"
 
-#: src/components/importschedule/Importscheduledetail.vue:795
+#: src/components/staging/StagingDetail.vue:176
+msgid "ISRS Code"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:812
 msgid "January"
 msgstr "Ianuarie"
 
-#: src/components/importschedule/Importscheduledetail.vue:801
+#: src/components/importschedule/Importscheduledetail.vue:818
 msgid "July"
 msgstr "Iulie"
 
-#: src/components/importschedule/Importscheduledetail.vue:800
+#: src/components/importschedule/Importscheduledetail.vue:817
 msgid "June"
 msgstr "Iunie"
 
 #: src/components/importqueue/Importqueue.vue:58
-#: src/components/importqueue/Importqueuedetail.vue:45
+#: src/components/importqueue/Importqueuedetail.vue:50
 msgid "Kind"
 msgstr "Tip"
 
-#: src/components/Pdftool.vue:20
+#: src/components/Pdftool.vue:39
 msgid "landscape"
 msgstr "orizontala"
 
@@ -429,7 +481,7 @@
 msgid "Layers"
 msgstr "Straturi"
 
-#: src/store/map.js:424
+#: src/store/map.js:544
 msgid "Length"
 msgstr "Lungime"
 
@@ -458,7 +510,7 @@
 msgstr "E-mail-ul a fost trimis"
 
 #: src/components/importschedule/Importschedule.vue:161
-#: src/components/importschedule/Importscheduledetail.vue:641
+#: src/components/importschedule/Importscheduledetail.vue:658
 msgid "Manually triggered import: #"
 msgstr "Import declansat manual: #"
 
@@ -466,15 +518,15 @@
 msgid "Map"
 msgstr "Harta"
 
-#: src/components/importschedule/Importscheduledetail.vue:797
+#: src/components/importschedule/Importscheduledetail.vue:814
 msgid "March"
 msgstr "Martie"
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:132
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:130
 msgid "MaxWidth"
 msgstr "Latime maxima"
 
-#: src/components/importschedule/Importscheduledetail.vue:799
+#: src/components/importschedule/Importscheduledetail.vue:816
 msgid "May"
 msgstr "Mai"
 
@@ -482,27 +534,27 @@
 msgid "Measurement"
 msgstr "Masuratoare"
 
-#: src/components/importqueue/Importqueuedetail.vue:58
+#: src/components/importqueue/Importqueuedetail.vue:63
 msgid "Message"
 msgstr "Mesaj"
 
-#: src/components/importschedule/Importscheduledetail.vue:772
+#: src/components/importschedule/Importscheduledetail.vue:789
 msgid "minutes past"
 msgstr "minute trecute"
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:110
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:109
 msgid "MinWidth"
 msgstr "Latime minima"
 
-#: src/components/importschedule/Importscheduledetail.vue:786
+#: src/components/importschedule/Importscheduledetail.vue:803
 msgid "Monday"
 msgstr "Luni"
 
-#: src/components/importschedule/Importscheduledetail.vue:782
+#: src/components/importschedule/Importscheduledetail.vue:799
 msgid "month"
 msgstr "luna"
 
-#: src/components/importschedule/Importscheduledetail.vue:198
+#: src/components/importschedule/Importscheduledetail.vue:210
 msgid "Monthly"
 msgstr "Lunar"
 
@@ -511,25 +563,28 @@
 msgid "Name"
 msgstr "Nume"
 
-#: src/components/ImportStretches.vue:182
+#: src/components/ImportStretches.vue:184
 msgid "National Object name"
 msgstr "Numele national al obiectului"
 
+#: src/components/staging/StagingDetail.vue:227
+msgid "New"
+msgstr ""
+
 #: src/components/importschedule/Importschedule.vue:93
-#: src/components/importschedule/Importscheduledetail.vue:457
+#: src/components/importschedule/Importscheduledetail.vue:471
 msgid "New Import"
 msgstr "Import nou"
 
-#: src/components/ImportStretches.vue:247
-#, fuzzy
+#: src/components/ImportStretches.vue:244
 msgid "New stretch"
-msgstr "Sector"
+msgstr "Secțiune nouă"
 
 #: src/components/Identify.vue:47
 msgid "No features identified."
-msgstr "Nicio caracteristica identificata"
+msgstr "Nicio caracteristica identificata."
 
-#: src/components/Bottlenecks.vue:115 src/components/ImportStretches.vue:59
+#: src/components/Bottlenecks.vue:118 src/components/ImportStretches.vue:61
 #: src/components/staging/Staging.vue:36
 msgid "No results."
 msgstr "Niciun rezultat."
@@ -538,36 +593,39 @@
 msgid "No scheduled imports"
 msgstr "Niciun import planificat"
 
-#: src/components/ImportStretches.vue:360
-#, fuzzy
+#: src/components/ImportStretches.vue:357
 msgid "Not implemented"
-msgstr "Nu este implementat!"
+msgstr "Nu este implementat"
 
-#: src/components/importschedule/Importscheduledetail.vue:805
+#: src/components/importschedule/Importscheduledetail.vue:822
 msgid "November"
 msgstr "Noiembrie"
 
-#: src/components/importschedule/Importscheduledetail.vue:776
+#: src/components/importschedule/Importscheduledetail.vue:793
 msgid "o' clock"
 msgstr "ora"
 
-#: src/components/ImportStretches.vue:164
+#: src/components/ImportStretches.vue:166
 msgid "Object name"
 msgstr "Nume obiect"
 
-#: src/components/importschedule/Importscheduledetail.vue:804
+#: src/components/importschedule/Importscheduledetail.vue:821
 msgid "October"
 msgstr "Octombrie"
 
-#: src/components/importschedule/Importscheduledetail.vue:774
+#: src/components/importschedule/Importscheduledetail.vue:791
 msgid "of"
 msgstr "al"
 
-#: src/components/importschedule/Importscheduledetail.vue:773
+#: src/components/staging/StagingDetail.vue:224
+msgid "Old"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:790
 msgid "on"
 msgstr "inchis, in"
 
-#: src/components/Pdftool.vue:18
+#: src/components/Pdftool.vue:19
 msgid "Open in new window"
 msgstr "Deschide in fereastra noua"
 
@@ -590,8 +648,12 @@
 msgstr "Solicitat resetare parola!"
 
 #: src/components/usermanagement/Userdetail.vue:346
-msgid "Password should at least be 8 char long including 1 digit and 1 special char like $"
-msgstr "Parola trebuie sa fie de 8 caractere lungime sa includa 1 digit 1 caracter special , de ex. $"
+msgid ""
+"Password should at least be 8 char long including 1 digit and 1 special char "
+"like $"
+msgstr ""
+"Parola trebuie sa fie de 8 caractere lungime sa includa 1 digit 1 caracter "
+"special , de ex. $"
 
 #: src/components/usermanagement/Userdetail.vue:342
 msgid "Passwords do not match!"
@@ -609,19 +671,21 @@
 msgid "Please choose a role"
 msgstr "Selectati un rol"
 
-#: src/components/ImportStretches.vue:97
+#: src/components/ImportStretches.vue:99
 msgid "Please enter a countrycode"
 msgstr "Introduceti un cod pentru țară"
 
 #: src/components/ImportSoundingresults.vue:84
-#: src/components/ImportStretches.vue:212
+#: src/components/ImportStretches.vue:209
 msgid "Please enter a date"
 msgstr "Introduceti o data"
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:100
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:99
 msgid "Please enter a depth"
 msgstr "Introduceti o adancime"
 
+#: src/components/ImportWaterwayProfiles.vue:46
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:37
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:37
 #: src/components/importschedule/importtypes/Waterwayarea.vue:37
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:37
@@ -632,11 +696,11 @@
 msgid "Please enter a level of service"
 msgstr "Introduceti un nivel de servicii"
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:146
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:143
 msgid "Please enter a maximum width"
 msgstr "Introduceti o latime maxima"
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:124
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:122
 msgid "Please enter a minimum width"
 msgstr "Introduceti o latime minima"
 
@@ -653,20 +717,22 @@
 msgid "Please enter a reference"
 msgstr "Introduceti o referinta"
 
-#: src/components/ImportStretches.vue:228
+#: src/components/ImportStretches.vue:225
 msgid "Please enter a source"
 msgstr "Introduceti o sursa"
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:170
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:167
 msgid "Please enter a source orgranization"
 msgstr "Introduceti o sursa (organizatie)"
 
-#: src/components/ImportStretches.vue:126
+#: src/components/ImportStretches.vue:128
 msgid "Please enter a start point"
 msgstr "Introduceti un punct de pornire"
 
+#: src/components/ImportWaterwayProfiles.vue:25
 #: src/components/importschedule/importtypes/Availablefairwaydepth.vue:19
 #: src/components/importschedule/importtypes/Bottleneck.vue:44
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:19
 #: src/components/importschedule/importtypes/Distancemarksvirtual.vue:19
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:19
 #: src/components/importschedule/importtypes/Gaugemeasurement.vue:19
@@ -681,16 +747,15 @@
 msgid "Please enter a Username"
 msgstr "Introduceti nume utilizator"
 
-#: src/components/ImportStretches.vue:151
+#: src/components/ImportStretches.vue:153
 msgid "Please enter an end point"
 msgstr "Introduceti un punct final"
 
-#: src/components/ImportStretches.vue:78
+#: src/components/ImportStretches.vue:80
 msgid "Please enter an id"
 msgstr "Introduceti o eticheta"
 
-#: src/components/ImportStretches.vue:176
-#: src/components/ImportStretches.vue:194
+#: src/components/ImportStretches.vue:178
 msgid "Please enter an objectname"
 msgstr "Introduceti un nume de obiect"
 
@@ -698,6 +763,8 @@
 msgid "Please enter correct coordinates in the format: Lat,Lon,Lat,Lon"
 msgstr "Introduceti coordonatele corect, in format: Lat,Lon,Lat,Lon"
 
+#: src/components/ImportWaterwayProfiles.vue:63
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:57
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:57
 #: src/components/importschedule/importtypes/Waterwayarea.vue:57
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:57
@@ -713,7 +780,7 @@
 msgid "Please select one"
 msgstr "Selectati unul"
 
-#: src/components/Pdftool.vue:21
+#: src/components/Pdftool.vue:40
 msgid "portrait"
 msgstr "vertical"
 
@@ -733,6 +800,10 @@
 msgid "Projection"
 msgstr "Proiectie"
 
+#: src/components/Pdftool.vue:514
+msgid "Ref gauge"
+msgstr ""
+
 #: src/components/Logs.vue:48 src/components/importqueue/Importqueue.vue:84
 msgid "Refresh"
 msgstr "Actualizare"
@@ -749,11 +820,15 @@
 msgid "Request password reset!"
 msgstr "Solicitare resetare parola!"
 
+#: src/components/Pdftool.vue:44
+msgid "Resolution"
+msgstr ""
+
 #: src/components/usermanagement/Userdetail.vue:78
 msgid "Role"
 msgstr "Rol"
 
-#: src/components/importschedule/Importscheduledetail.vue:791
+#: src/components/importschedule/Importscheduledetail.vue:808
 msgid "Saturday"
 msgstr "Sambata"
 
@@ -761,16 +836,16 @@
 msgid "Saved cross profiles"
 msgstr "Profile transversale salvate"
 
-#: src/components/importschedule/Importscheduledetail.vue:711
+#: src/components/importschedule/Importscheduledetail.vue:728
 msgid "Saved import: #"
 msgstr "Import salvat: #"
 
 #: src/components/importschedule/Importschedule.vue:36
-#: src/components/importschedule/Importscheduledetail.vue:189
+#: src/components/importschedule/Importscheduledetail.vue:201
 msgid "Schedule"
 msgstr "Plan, orar"
 
-#: src/components/importschedule/Importscheduledetail.vue:147
+#: src/components/importschedule/Importscheduledetail.vue:159
 msgid "Scheduled"
 msgstr "Programat"
 
@@ -786,7 +861,7 @@
 msgid "Send testmail"
 msgstr "Trimite email de test"
 
-#: src/components/importschedule/Importscheduledetail.vue:803
+#: src/components/importschedule/Importscheduledetail.vue:820
 msgid "September"
 msgstr "Septembrie"
 
@@ -794,10 +869,13 @@
 msgid "Signer"
 msgstr "Semnatar"
 
-#: src/components/importschedule/Importscheduledetail.vue:167
-#, fuzzy
+#: src/components/importschedule/Importscheduledetail.vue:179
 msgid "Simple schedule"
-msgstr "Programare simpla"
+msgstr "Programare simplă"
+
+#: src/components/Pdftool.vue:56
+msgid "Size"
+msgstr ""
 
 #: src/components/Identify.vue:60
 msgid ""
@@ -806,9 +884,11 @@
 "        contributors."
 msgstr ""
 "Cateva date . ©\n"
-"        <a href=\"https://www.openstreetmap.org/copyright\">1%{ name }</a>2\n"
-"        ...... colaborator"
+"        <a href=\"https://www.openstreetmap.org/copyright\">1%{ nume }</"
+"a>2        ...... colaborator."
 
+#: src/components/ImportWaterwayProfiles.vue:55
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:45
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:45
 #: src/components/importschedule/importtypes/Waterwayarea.vue:45
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:45
@@ -819,16 +899,15 @@
 msgid "Sounding Result"
 msgstr "Rezultate masuratori hidrografice"
 
-#: src/components/ImportStretches.vue:217
+#: src/components/ImportStretches.vue:214
 msgid "Source"
 msgstr "Sursa"
 
 #: src/components/ImportStretches.vue:12
-#, fuzzy
 msgid "Source organization"
 msgstr "Organizatia"
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:157
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:154
 msgid "Source orgranization"
 msgstr "Organizatia"
 
@@ -848,7 +927,7 @@
 msgid "Start"
 msgstr "Porneste"
 
-#: src/components/ImportStretches.vue:106
+#: src/components/ImportStretches.vue:108
 msgid "Start rhm"
 msgstr "Rhm de pornire"
 
@@ -856,25 +935,24 @@
 msgid "Starting import for "
 msgstr "Incepe importul pentru: "
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:102
+#: src/components/ImportApprovedGaugeMeasurement.vue:99
 msgid "Starting import of Approved Gauge Measurements"
 msgstr "Incepe importul Masuratorilor de la statiile de nivel aprobate"
 
-#: src/components/ImportStretches.vue:475
-#, fuzzy
+#: src/components/ImportStretches.vue:472
 msgid "Starting import of stretch"
-msgstr "Incepe importul pentru: "
+msgstr "Incepe importul secțiunii"
 
-#: src/components/ImportStretches.vue:157
+#: src/components/ImportStretches.vue:159
 msgid "Startpoint is not before endpoint."
-msgstr ""
+msgstr "Punctul de început nu este înainte de cel de sfârșit."
 
 #: src/components/importqueue/Importqueue.vue:67
 msgid "State"
 msgstr "Status"
 
-#: src/components/ImportStretches.vue:241
-#: src/components/importschedule/Importscheduledetail.vue:345
+#: src/components/ImportStretches.vue:238
+#: src/components/importschedule/Importscheduledetail.vue:357
 #: src/components/usermanagement/Userdetail.vue:129
 msgid "Submit"
 msgstr "Trimis"
@@ -887,15 +965,19 @@
 msgid "Successful"
 msgstr "Cu succes"
 
-#: src/components/importschedule/Importscheduledetail.vue:792
+#: src/components/importschedule/Importscheduledetail.vue:809
 msgid "Sunday"
 msgstr "Duminica"
 
+#: src/components/Pdftool.vue:506
+msgid "Survey date"
+msgstr ""
+
 #: src/components/usermanagement/Userdetail.vue:88
 msgid "Sysadmin"
 msgstr "Administrator de sistem"
 
-#: src/components/usermanagement/Usermanagement.vue:326
+#: src/components/usermanagement/Usermanagement.vue:365
 msgid "System-Administrator"
 msgstr "Administrator de sistem"
 
@@ -907,25 +989,30 @@
 msgid "Systemconfiguration"
 msgstr "Configurare de sistem"
 
+#: src/components/ImportWaterwayProfiles.vue:163
+msgid "this"
+msgstr ""
+
 #: src/components/Identify.vue:51
 msgid ""
 "This app uses <i>gemma</i>, which is Free Software under <br/>\n"
 "        %{ license } without warranty, see docs for details."
 msgstr ""
-"Aceasta aplicatie foloseste <i>1gemma</i>2, care este un soft free (fara plata) sub <br/>3\n"
+"Aceasta aplicatie foloseste <i>1gemma</i>2, care este un soft free (fara "
+"plata) sub <br/>3\n"
 "        %{ license } fara garantie, vezi documentele pentru detalii."
 
-#: src/components/importschedule/Importscheduledetail.vue:789
+#: src/components/importschedule/Importscheduledetail.vue:806
 msgid "Thursday"
 msgstr "Joi"
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:45
-#: src/components/ImportWaterwayProfiles.vue:43
-#: src/components/importschedule/Importscheduledetail.vue:358
+#: src/components/ImportApprovedGaugeMeasurement.vue:42
+#: src/components/ImportWaterwayProfiles.vue:99
+#: src/components/importschedule/Importscheduledetail.vue:370
 msgid "Trigger import"
 msgstr "Import declansat"
 
-#: src/components/importschedule/Importscheduledetail.vue:787
+#: src/components/importschedule/Importscheduledetail.vue:804
 msgid "Tuesday"
 msgstr "Marti"
 
@@ -934,11 +1021,7 @@
 msgid "Type"
 msgstr "Tip"
 
-#: src/components/ImportWaterwayProfiles.vue:89
-msgid "under construction"
-msgstr "in constructie"
-
-#: src/components/importschedule/Importscheduledetail.vue:741
+#: src/components/importschedule/Importscheduledetail.vue:758
 msgid "update import: #"
 msgstr "import pentru actualizare: #"
 
@@ -946,8 +1029,10 @@
 msgid "Upload"
 msgstr "Incarca"
 
+#: src/components/ImportWaterwayProfiles.vue:16
 #: src/components/importschedule/importtypes/Availablefairwaydepth.vue:5
 #: src/components/importschedule/importtypes/Bottleneck.vue:5
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:5
 #: src/components/importschedule/importtypes/Distancemarksvirtual.vue:5
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:5
 #: src/components/importschedule/importtypes/Gaugemeasurement.vue:5
@@ -976,22 +1061,27 @@
 #: src/components/Identify.vue:65
 msgid ""
 "Uses\n"
-"        <a href=\"https://download.geonames.org/export/dump/readme.txt\">GeoNames</a>\n"
+"        <a href=\"https://download.geonames.org/export/dump/readme.txt"
+"\">GeoNames</a>\n"
 "        under %{ geoLicense }."
 msgstr ""
 "Foloseste\n"
-"        <a href=\"https://download.geonames.org/export/dump/readme.txt\">1GeoNames</a>2\n"
+"        <a href=\"https://download.geonames.org/export/dump/readme.txt"
+"\">1GeoNames</a>2\n"
 "        sub %{ geoLicense }."
 
+#: src/components/staging/StagingDetail.vue:218
+msgid "Value"
+msgstr ""
+
 #: src/components/usermanagement/Userdetail.vue:91
-#: src/components/usermanagement/Usermanagement.vue:327
+#: src/components/usermanagement/Usermanagement.vue:366
 msgid "Waterway Admin"
 msgstr "Administrator de cale navigabila"
 
 #: src/components/importschedule/Importscheduledetail.vue:37
-#, fuzzy
 msgid "Waterway area"
-msgstr "Zona cale navigabila"
+msgstr "Zona cale navigabilă"
 
 #: src/components/importschedule/Importscheduledetail.vue:28
 msgid "Waterway axis"
@@ -1002,26 +1092,33 @@
 msgstr "Statie de masura nivel"
 
 #: src/components/usermanagement/Userdetail.vue:94
-#: src/components/usermanagement/Usermanagement.vue:328
+#: src/components/usermanagement/Usermanagement.vue:367
 msgid "Waterway User"
 msgstr "Utilizator cale navigabila"
 
-#: src/components/importschedule/Importscheduledetail.vue:788
+#: src/components/importschedule/Importscheduledetail.vue:805
 msgid "Wednesday"
 msgstr "Miercuri"
 
-#: src/components/importschedule/Importscheduledetail.vue:781
+#: src/components/importschedule/Importscheduledetail.vue:798
 msgid "week"
 msgstr "saptamana"
 
-#: src/components/importschedule/Importscheduledetail.vue:197
+#: src/components/importschedule/Importscheduledetail.vue:209
 msgid "Weekly"
 msgstr "Saptamanal"
 
-#: src/components/importschedule/Importscheduledetail.vue:783
+#: src/components/importschedule/Importscheduledetail.vue:800
 msgid "year"
 msgstr "an"
 
 #: src/components/fairway/Profiles.vue:443
-msgid "You can now select these coordinates from the \"Saved cross profiles\" menu to restore this cross profile."
-msgstr "Poti selecta acum aceste coordonate din meniul \" Profile transversale salvate \" pentru a restaura profilul transversal."
+msgid ""
+"You can now select these coordinates from the \"Saved cross profiles\" menu "
+"to restore this cross profile."
+msgstr ""
+"Poti selecta acum aceste coordonate din meniul \" Profile transversale "
+"salvate \" pentru a restaura profilul transversal."
+
+#~ msgid "under construction"
+#~ msgstr "in constructie"
--- a/client/src/locale/sk_SK/LC_MESSAGES/app.po	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/locale/sk_SK/LC_MESSAGES/app.po	Tue Feb 12 11:11:32 2019 +0100
@@ -10,7 +10,8 @@
 "POT-Creation-Date: 2019-01-25 10:11+0100\n"
 "PO-Revision-Date: 2019-01-22 12:18+0000\n"
 "Last-Translator: Fadi Abbud <fadi.abbud@intevation.de>\n"
-"Language-Team: Slovak <https://hosted.weblate.org/projects/gemma/client/sk/>\n"
+"Language-Team: Slovak <https://hosted.weblate.org/projects/gemma/client/sk/"
+">\n"
 "Language: sk_SK\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -18,11 +19,23 @@
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 "X-Generator: Weblate 3.4-dev\n"
 
-#: src/components/Pdftool.vue:400
+#: src/components/ImportWaterwayProfiles.vue:164
+msgid " was successfully uploaded."
+msgstr ""
+
+#: src/components/Pdftool.vue:453
 msgid "– generated by:"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:778
+#: src/components/staging/StagingDetail.vue:188
+msgid "( New )"
+msgstr ""
+
+#: src/components/Pdftool.vue:29
+msgid "{{ template.name }}"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:795
 msgid "15 minutes"
 msgstr ""
 
@@ -34,23 +47,27 @@
 msgid "Accesslog"
 msgstr ""
 
-#: src/components/usermanagement/Usermanagement.vue:104
+#: src/components/usermanagement/Usermanagement.vue:102
 msgid "Add User"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:798
+#: src/components/staging/StagingDetail.vue:19
+msgid "Approved Gauge Measurements"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:815
 msgid "April"
 msgstr ""
 
-#: src/store/map.js:445
+#: src/store/map.js:565
 msgid "Area"
 msgstr "Oblasť"
 
-#: src/components/importschedule/Importscheduledetail.vue:775
+#: src/components/importschedule/Importscheduledetail.vue:792
 msgid "at"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:802
+#: src/components/importschedule/Importscheduledetail.vue:819
 msgid "August"
 msgstr ""
 
@@ -59,45 +76,47 @@
 msgstr ""
 
 #: src/components/importschedule/Importscheduledetail.vue:34
-msgid "Available fairway fpths"
+msgid "Available fairway depths"
 msgstr ""
 
 #: src/components/Login.vue:70
 msgid "back to login"
 msgstr ""
 
-#: src/components/Bottlenecks.vue:274
-#: src/components/ImportApprovedGaugeMeasurement.vue:111
+#: src/components/Bottlenecks.vue:277
+#: src/components/ImportApprovedGaugeMeasurement.vue:108
 #: src/components/ImportSoundingresults.vue:216
 #: src/components/ImportSoundingresults.vue:255
 #: src/components/ImportSoundingresults.vue:286
-#: src/components/ImportStretches.vue:306
-#: src/components/ImportStretches.vue:313
-#: src/components/ImportStretches.vue:485 src/components/Search.vue:258
+#: src/components/ImportStretches.vue:303
+#: src/components/ImportStretches.vue:310
+#: src/components/ImportStretches.vue:482
+#: src/components/ImportWaterwayProfiles.vue:175 src/components/Search.vue:258
 #: src/components/Systemconfiguration.vue:114
 #: src/components/Systemconfiguration.vue:129
 #: src/components/Systemconfiguration.vue:148
 #: src/components/Systemconfiguration.vue:165
 #: src/components/importqueue/Importqueue.vue:160
 #: src/components/importqueue/Importqueue.vue:180
-#: src/components/importqueue/Importqueuedetail.vue:182
+#: src/components/importqueue/Importqueuedetail.vue:214
 #: src/components/importschedule/Importschedule.vue:148
 #: src/components/importschedule/Importschedule.vue:167
 #: src/components/importschedule/Importschedule.vue:176
 #: src/components/importschedule/Importschedule.vue:198
-#: src/components/importschedule/Importscheduledetail.vue:647
-#: src/components/importschedule/Importscheduledetail.vue:727
-#: src/components/importschedule/Importscheduledetail.vue:757
-#: src/components/staging/StagingDetail.vue:251
+#: src/components/importschedule/Importscheduledetail.vue:664
+#: src/components/importschedule/Importscheduledetail.vue:744
+#: src/components/importschedule/Importscheduledetail.vue:774
+#: src/components/staging/StagingDetail.vue:364
+#: src/components/staging/StagingDetail.vue:418
 #: src/components/usermanagement/Userdetail.vue:304
 #: src/components/usermanagement/Userdetail.vue:376
-#: src/components/usermanagement/Usermanagement.vue:298
-#: src/components/usermanagement/Usermanagement.vue:306
-#: src/components/usermanagement/Usermanagement.vue:340
+#: src/components/usermanagement/Usermanagement.vue:337
+#: src/components/usermanagement/Usermanagement.vue:345
+#: src/components/usermanagement/Usermanagement.vue:379
 msgid "Backend Error"
 msgstr ""
 
-#: src/components/ImportSoundingresults.vue:16
+#: src/components/ImportSoundingresults.vue:16 src/components/Pdftool.vue:496
 msgid "Bottleneck"
 msgstr "Brody a úžiny"
 
@@ -111,7 +130,7 @@
 
 #: src/components/Bottlenecks.vue:4 src/components/Sidebar.vue:27
 #: src/components/importschedule/Importscheduledetail.vue:25
-#: src/components/staging/StagingDetail.vue:11
+#: src/components/staging/StagingDetail.vue:12
 msgid "Bottlenecks"
 msgstr ""
 
@@ -128,14 +147,15 @@
 msgid "choose .zip- file"
 msgstr ""
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:78
-#: src/components/ImportWaterwayProfiles.vue:75
+#: src/components/ImportApprovedGaugeMeasurement.vue:75
+#: src/components/ImportWaterwayProfiles.vue:135
+#: src/components/ImportWaterwayProfiles.vue:169
 msgid "choose file to upload"
 msgstr ""
 
-#: src/components/Pdftool.vue:18
+#: src/components/Pdftool.vue:23
 #, fuzzy
-msgid "Choose format:"
+msgid "Chose preset"
 msgstr "Vyberte formát"
 
 #: src/components/fairway/Profiles.vue:64
@@ -159,25 +179,29 @@
 msgid "Country"
 msgstr "Štát"
 
-#: src/components/ImportStretches.vue:85
+#: src/components/ImportStretches.vue:87
 msgid "Countrycode"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:333
+#: src/components/importschedule/Importscheduledetail.vue:345
 msgid "Cronstring"
 msgstr ""
 
 #: src/components/ImportSoundingresults.vue:72
-#: src/components/importqueue/Importqueuedetail.vue:49
+#: src/components/importqueue/Importqueuedetail.vue:54
 #: src/components/staging/Staging.vue:13
 msgid "Date"
 msgstr ""
 
-#: src/components/ImportStretches.vue:201
+#: src/components/ImportStretches.vue:198
 msgid "Date info"
 msgstr ""
 
-#: src/components/Pdftool.vue:396
+#: src/components/staging/StagingDetail.vue:179
+msgid "Date of measurement"
+msgstr ""
+
+#: src/components/Pdftool.vue:449
 msgid "Date of publication:"
 msgstr ""
 
@@ -185,11 +209,11 @@
 msgid "Datum"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:780
+#: src/components/importschedule/Importscheduledetail.vue:797
 msgid "day"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:806
+#: src/components/importschedule/Importscheduledetail.vue:823
 msgid "December"
 msgstr ""
 
@@ -197,11 +221,15 @@
 msgid "Define stretches"
 msgstr ""
 
+#: src/components/usermanagement/Usermanagement.vue:123
+msgid "Delete user"
+msgstr ""
+
 #: src/components/importschedule/Importschedule.vue:192
 msgid "Deleted import: #"
 msgstr ""
 
-#: src/components/ImportStretches.vue:361
+#: src/components/ImportStretches.vue:358
 msgid "Deleting "
 msgstr ""
 
@@ -209,14 +237,26 @@
 msgid "Depth"
 msgstr ""
 
+#: src/components/Pdftool.vue:522
+msgid "Depth relativ to"
+msgstr ""
+
 #: src/components/ImportSoundingresults.vue:52
 msgid "Depthreference"
 msgstr ""
 
+#: src/components/importschedule/Importscheduledetail.vue:49
+msgid "Distance marks ashore"
+msgstr ""
+
 #: src/components/importschedule/Importscheduledetail.vue:46
 msgid "Distance marks virtual"
 msgstr ""
 
+#: src/components/usermanagement/Usermanagement.vue:131
+msgid "Do you really want to delete the following user account:"
+msgstr ""
+
 #: src/components/Pdftool.vue:10
 msgid "Download"
 msgstr ""
@@ -233,11 +273,11 @@
 msgid "Email address"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:53
+#: src/components/importschedule/Importscheduledetail.vue:56
 msgid "Email Notification"
 msgstr ""
 
-#: src/components/ImportStretches.vue:131
+#: src/components/ImportStretches.vue:133
 msgid "End rhm"
 msgstr ""
 
@@ -269,7 +309,7 @@
 msgid "Errorlog"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:771
+#: src/components/importschedule/Importscheduledetail.vue:788
 msgid "Every"
 msgstr ""
 
@@ -281,13 +321,15 @@
 msgid "Fairway dimension"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:34
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:25
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:25
 #: src/components/importschedule/importtypes/Waterwayarea.vue:25
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:25
 msgid "Featuretype"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:796
+#: src/components/importschedule/Importscheduledetail.vue:813
 msgid "February"
 msgstr ""
 
@@ -295,7 +337,11 @@
 msgid "Forgot password"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:790
+#: src/components/Pdftool.vue:33
+msgid "Format"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:807
 msgid "Friday"
 msgstr ""
 
@@ -303,11 +349,11 @@
 msgid "Gauge measurement"
 msgstr ""
 
-#: src/components/Pdftool.vue:10 src/components/Pdftool.vue:61
+#: src/components/Pdftool.vue:10 src/components/Pdftool.vue:96
 msgid "Generate PDF"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:779
+#: src/components/importschedule/Importscheduledetail.vue:796
 msgid "hour"
 msgstr ""
 
@@ -315,7 +361,7 @@
 msgid "Id"
 msgstr ""
 
-#: src/components/ImportStretches.vue:66
+#: src/components/ImportStretches.vue:68
 msgid "ID"
 msgstr ""
 
@@ -323,19 +369,19 @@
 msgid "Identified"
 msgstr ""
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:101
+#: src/components/ImportApprovedGaugeMeasurement.vue:98
 #: src/components/ImportSoundingresults.vue:278
-#: src/components/ImportStretches.vue:474
-#: src/components/ImportWaterwayProfiles.vue:88 src/components/Sidebar.vue:58
+#: src/components/ImportStretches.vue:471
+#: src/components/ImportWaterwayProfiles.vue:162 src/components/Sidebar.vue:58
 #: src/components/importschedule/Importschedule.vue:33
-#: src/components/importschedule/Importscheduledetail.vue:456
-#: src/components/importschedule/Importscheduledetail.vue:640
-#: src/components/importschedule/Importscheduledetail.vue:710
-#: src/components/importschedule/Importscheduledetail.vue:740
+#: src/components/importschedule/Importscheduledetail.vue:470
+#: src/components/importschedule/Importscheduledetail.vue:657
+#: src/components/importschedule/Importscheduledetail.vue:727
+#: src/components/importschedule/Importscheduledetail.vue:757
 msgid "Import"
 msgstr ""
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:11
+#: src/components/ImportApprovedGaugeMeasurement.vue:8
 #: src/components/Sidebar.vue:76
 msgid "Import approved gaugemeasurements"
 msgstr ""
@@ -352,7 +398,7 @@
 msgid "Import waterway profiles"
 msgstr ""
 
-#: src/components/ImportWaterwayProfiles.vue:11
+#: src/components/ImportWaterwayProfiles.vue:8
 msgid "Import Waterwayprofiles"
 msgstr ""
 
@@ -384,32 +430,36 @@
 msgid "Invalid input"
 msgstr ""
 
-#: src/components/Pdftool.vue:29
+#: src/components/Pdftool.vue:62
 msgid "ISO A3"
 msgstr ""
 
-#: src/components/Pdftool.vue:30
+#: src/components/Pdftool.vue:63
 msgid "ISO A4"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:795
+#: src/components/staging/StagingDetail.vue:176
+msgid "ISRS Code"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:812
 msgid "January"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:801
+#: src/components/importschedule/Importscheduledetail.vue:818
 msgid "July"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:800
+#: src/components/importschedule/Importscheduledetail.vue:817
 msgid "June"
 msgstr ""
 
 #: src/components/importqueue/Importqueue.vue:58
-#: src/components/importqueue/Importqueuedetail.vue:45
+#: src/components/importqueue/Importqueuedetail.vue:50
 msgid "Kind"
 msgstr ""
 
-#: src/components/Pdftool.vue:20
+#: src/components/Pdftool.vue:39
 msgid "landscape"
 msgstr ""
 
@@ -425,7 +475,7 @@
 msgid "Layers"
 msgstr "Vrstvy"
 
-#: src/store/map.js:424
+#: src/store/map.js:544
 msgid "Length"
 msgstr ""
 
@@ -454,7 +504,7 @@
 msgstr ""
 
 #: src/components/importschedule/Importschedule.vue:161
-#: src/components/importschedule/Importscheduledetail.vue:641
+#: src/components/importschedule/Importscheduledetail.vue:658
 msgid "Manually triggered import: #"
 msgstr ""
 
@@ -462,15 +512,15 @@
 msgid "Map"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:797
+#: src/components/importschedule/Importscheduledetail.vue:814
 msgid "March"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:132
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:130
 msgid "MaxWidth"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:799
+#: src/components/importschedule/Importscheduledetail.vue:816
 #, fuzzy
 msgid "May"
 msgstr "Mapa"
@@ -479,27 +529,27 @@
 msgid "Measurement"
 msgstr ""
 
-#: src/components/importqueue/Importqueuedetail.vue:58
+#: src/components/importqueue/Importqueuedetail.vue:63
 msgid "Message"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:772
+#: src/components/importschedule/Importscheduledetail.vue:789
 msgid "minutes past"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:110
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:109
 msgid "MinWidth"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:786
+#: src/components/importschedule/Importscheduledetail.vue:803
 msgid "Monday"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:782
+#: src/components/importschedule/Importscheduledetail.vue:799
 msgid "month"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:198
+#: src/components/importschedule/Importscheduledetail.vue:210
 msgid "Monthly"
 msgstr ""
 
@@ -508,16 +558,20 @@
 msgid "Name"
 msgstr "Názov"
 
-#: src/components/ImportStretches.vue:182
+#: src/components/ImportStretches.vue:184
 msgid "National Object name"
 msgstr ""
 
+#: src/components/staging/StagingDetail.vue:227
+msgid "New"
+msgstr ""
+
 #: src/components/importschedule/Importschedule.vue:93
-#: src/components/importschedule/Importscheduledetail.vue:457
+#: src/components/importschedule/Importscheduledetail.vue:471
 msgid "New Import"
 msgstr ""
 
-#: src/components/ImportStretches.vue:247
+#: src/components/ImportStretches.vue:244
 msgid "New stretch"
 msgstr ""
 
@@ -525,7 +579,7 @@
 msgid "No features identified."
 msgstr ""
 
-#: src/components/Bottlenecks.vue:115 src/components/ImportStretches.vue:59
+#: src/components/Bottlenecks.vue:118 src/components/ImportStretches.vue:61
 #: src/components/staging/Staging.vue:36
 msgid "No results."
 msgstr ""
@@ -534,35 +588,39 @@
 msgid "No scheduled imports"
 msgstr ""
 
-#: src/components/ImportStretches.vue:360
+#: src/components/ImportStretches.vue:357
 msgid "Not implemented"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:805
+#: src/components/importschedule/Importscheduledetail.vue:822
 msgid "November"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:776
+#: src/components/importschedule/Importscheduledetail.vue:793
 msgid "o' clock"
 msgstr ""
 
-#: src/components/ImportStretches.vue:164
+#: src/components/ImportStretches.vue:166
 msgid "Object name"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:804
+#: src/components/importschedule/Importscheduledetail.vue:821
 msgid "October"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:774
+#: src/components/importschedule/Importscheduledetail.vue:791
 msgid "of"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:773
+#: src/components/staging/StagingDetail.vue:224
+msgid "Old"
+msgstr ""
+
+#: src/components/importschedule/Importscheduledetail.vue:790
 msgid "on"
 msgstr ""
 
-#: src/components/Pdftool.vue:18
+#: src/components/Pdftool.vue:19
 msgid "Open in new window"
 msgstr ""
 
@@ -585,7 +643,9 @@
 msgstr ""
 
 #: src/components/usermanagement/Userdetail.vue:346
-msgid "Password should at least be 8 char long including 1 digit and 1 special char like $"
+msgid ""
+"Password should at least be 8 char long including 1 digit and 1 special char "
+"like $"
 msgstr ""
 
 #: src/components/usermanagement/Userdetail.vue:342
@@ -604,19 +664,21 @@
 msgid "Please choose a role"
 msgstr ""
 
-#: src/components/ImportStretches.vue:97
+#: src/components/ImportStretches.vue:99
 msgid "Please enter a countrycode"
 msgstr ""
 
 #: src/components/ImportSoundingresults.vue:84
-#: src/components/ImportStretches.vue:212
+#: src/components/ImportStretches.vue:209
 msgid "Please enter a date"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:100
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:99
 msgid "Please enter a depth"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:46
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:37
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:37
 #: src/components/importschedule/importtypes/Waterwayarea.vue:37
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:37
@@ -627,11 +689,11 @@
 msgid "Please enter a level of service"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:146
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:143
 msgid "Please enter a maximum width"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:124
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:122
 msgid "Please enter a minimum width"
 msgstr ""
 
@@ -648,20 +710,22 @@
 msgid "Please enter a reference"
 msgstr ""
 
-#: src/components/ImportStretches.vue:228
+#: src/components/ImportStretches.vue:225
 msgid "Please enter a source"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:170
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:167
 msgid "Please enter a source orgranization"
 msgstr ""
 
-#: src/components/ImportStretches.vue:126
+#: src/components/ImportStretches.vue:128
 msgid "Please enter a start point"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:25
 #: src/components/importschedule/importtypes/Availablefairwaydepth.vue:19
 #: src/components/importschedule/importtypes/Bottleneck.vue:44
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:19
 #: src/components/importschedule/importtypes/Distancemarksvirtual.vue:19
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:19
 #: src/components/importschedule/importtypes/Gaugemeasurement.vue:19
@@ -676,16 +740,15 @@
 msgid "Please enter a Username"
 msgstr ""
 
-#: src/components/ImportStretches.vue:151
+#: src/components/ImportStretches.vue:153
 msgid "Please enter an end point"
 msgstr ""
 
-#: src/components/ImportStretches.vue:78
+#: src/components/ImportStretches.vue:80
 msgid "Please enter an id"
 msgstr ""
 
-#: src/components/ImportStretches.vue:176
-#: src/components/ImportStretches.vue:194
+#: src/components/ImportStretches.vue:178
 msgid "Please enter an objectname"
 msgstr ""
 
@@ -693,6 +756,8 @@
 msgid "Please enter correct coordinates in the format: Lat,Lon,Lat,Lon"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:63
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:57
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:57
 #: src/components/importschedule/importtypes/Waterwayarea.vue:57
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:57
@@ -708,7 +773,7 @@
 msgid "Please select one"
 msgstr ""
 
-#: src/components/Pdftool.vue:21
+#: src/components/Pdftool.vue:40
 msgid "portrait"
 msgstr ""
 
@@ -728,6 +793,10 @@
 msgid "Projection"
 msgstr ""
 
+#: src/components/Pdftool.vue:514
+msgid "Ref gauge"
+msgstr ""
+
 #: src/components/Logs.vue:48 src/components/importqueue/Importqueue.vue:84
 msgid "Refresh"
 msgstr ""
@@ -744,11 +813,15 @@
 msgid "Request password reset!"
 msgstr ""
 
+#: src/components/Pdftool.vue:44
+msgid "Resolution"
+msgstr ""
+
 #: src/components/usermanagement/Userdetail.vue:78
 msgid "Role"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:791
+#: src/components/importschedule/Importscheduledetail.vue:808
 msgid "Saturday"
 msgstr ""
 
@@ -756,16 +829,16 @@
 msgid "Saved cross profiles"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:711
+#: src/components/importschedule/Importscheduledetail.vue:728
 msgid "Saved import: #"
 msgstr ""
 
 #: src/components/importschedule/Importschedule.vue:36
-#: src/components/importschedule/Importscheduledetail.vue:189
+#: src/components/importschedule/Importscheduledetail.vue:201
 msgid "Schedule"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:147
+#: src/components/importschedule/Importscheduledetail.vue:159
 msgid "Scheduled"
 msgstr ""
 
@@ -781,7 +854,7 @@
 msgid "Send testmail"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:803
+#: src/components/importschedule/Importscheduledetail.vue:820
 msgid "September"
 msgstr ""
 
@@ -789,10 +862,14 @@
 msgid "Signer"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:167
+#: src/components/importschedule/Importscheduledetail.vue:179
 msgid "Simple schedule"
 msgstr ""
 
+#: src/components/Pdftool.vue:56
+msgid "Size"
+msgstr ""
+
 #: src/components/Identify.vue:60
 msgid ""
 "Some data ©\n"
@@ -800,6 +877,8 @@
 "        contributors."
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:55
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:45
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:45
 #: src/components/importschedule/importtypes/Waterwayarea.vue:45
 #: src/components/importschedule/importtypes/Waterwayaxis.vue:45
@@ -810,7 +889,7 @@
 msgid "Sounding Result"
 msgstr ""
 
-#: src/components/ImportStretches.vue:217
+#: src/components/ImportStretches.vue:214
 msgid "Source"
 msgstr "Zdroj správy"
 
@@ -818,7 +897,7 @@
 msgid "Source organization"
 msgstr ""
 
-#: src/components/importschedule/importtypes/Fairwaydimensions.vue:157
+#: src/components/importschedule/importtypes/Fairwaydimensions.vue:154
 msgid "Source orgranization"
 msgstr ""
 
@@ -838,7 +917,7 @@
 msgid "Start"
 msgstr ""
 
-#: src/components/ImportStretches.vue:106
+#: src/components/ImportStretches.vue:108
 msgid "Start rhm"
 msgstr ""
 
@@ -846,15 +925,15 @@
 msgid "Starting import for "
 msgstr ""
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:102
+#: src/components/ImportApprovedGaugeMeasurement.vue:99
 msgid "Starting import of Approved Gauge Measurements"
 msgstr ""
 
-#: src/components/ImportStretches.vue:475
+#: src/components/ImportStretches.vue:472
 msgid "Starting import of stretch"
 msgstr ""
 
-#: src/components/ImportStretches.vue:157
+#: src/components/ImportStretches.vue:159
 msgid "Startpoint is not before endpoint."
 msgstr ""
 
@@ -862,8 +941,8 @@
 msgid "State"
 msgstr ""
 
-#: src/components/ImportStretches.vue:241
-#: src/components/importschedule/Importscheduledetail.vue:345
+#: src/components/ImportStretches.vue:238
+#: src/components/importschedule/Importscheduledetail.vue:357
 #: src/components/usermanagement/Userdetail.vue:129
 msgid "Submit"
 msgstr ""
@@ -876,15 +955,19 @@
 msgid "Successful"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:792
+#: src/components/importschedule/Importscheduledetail.vue:809
 msgid "Sunday"
 msgstr ""
 
+#: src/components/Pdftool.vue:506
+msgid "Survey date"
+msgstr ""
+
 #: src/components/usermanagement/Userdetail.vue:88
 msgid "Sysadmin"
 msgstr ""
 
-#: src/components/usermanagement/Usermanagement.vue:326
+#: src/components/usermanagement/Usermanagement.vue:365
 msgid "System-Administrator"
 msgstr ""
 
@@ -896,23 +979,27 @@
 msgid "Systemconfiguration"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:163
+msgid "this"
+msgstr ""
+
 #: src/components/Identify.vue:51
 msgid ""
 "This app uses <i>gemma</i>, which is Free Software under <br/>\n"
 "        %{ license } without warranty, see docs for details."
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:789
+#: src/components/importschedule/Importscheduledetail.vue:806
 msgid "Thursday"
 msgstr ""
 
-#: src/components/ImportApprovedGaugeMeasurement.vue:45
-#: src/components/ImportWaterwayProfiles.vue:43
-#: src/components/importschedule/Importscheduledetail.vue:358
+#: src/components/ImportApprovedGaugeMeasurement.vue:42
+#: src/components/ImportWaterwayProfiles.vue:99
+#: src/components/importschedule/Importscheduledetail.vue:370
 msgid "Trigger import"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:787
+#: src/components/importschedule/Importscheduledetail.vue:804
 msgid "Tuesday"
 msgstr ""
 
@@ -921,11 +1008,7 @@
 msgid "Type"
 msgstr "Typ"
 
-#: src/components/ImportWaterwayProfiles.vue:89
-msgid "under construction"
-msgstr ""
-
-#: src/components/importschedule/Importscheduledetail.vue:741
+#: src/components/importschedule/Importscheduledetail.vue:758
 msgid "update import: #"
 msgstr ""
 
@@ -933,8 +1016,10 @@
 msgid "Upload"
 msgstr ""
 
+#: src/components/ImportWaterwayProfiles.vue:16
 #: src/components/importschedule/importtypes/Availablefairwaydepth.vue:5
 #: src/components/importschedule/importtypes/Bottleneck.vue:5
+#: src/components/importschedule/importtypes/Distancemarksashore.vue:5
 #: src/components/importschedule/importtypes/Distancemarksvirtual.vue:5
 #: src/components/importschedule/importtypes/Fairwaydimensions.vue:5
 #: src/components/importschedule/importtypes/Gaugemeasurement.vue:5
@@ -963,12 +1048,17 @@
 #: src/components/Identify.vue:65
 msgid ""
 "Uses\n"
-"        <a href=\"https://download.geonames.org/export/dump/readme.txt\">GeoNames</a>\n"
+"        <a href=\"https://download.geonames.org/export/dump/readme.txt"
+"\">GeoNames</a>\n"
 "        under %{ geoLicense }."
 msgstr ""
 
+#: src/components/staging/StagingDetail.vue:218
+msgid "Value"
+msgstr ""
+
 #: src/components/usermanagement/Userdetail.vue:91
-#: src/components/usermanagement/Usermanagement.vue:327
+#: src/components/usermanagement/Usermanagement.vue:366
 msgid "Waterway Admin"
 msgstr ""
 
@@ -985,26 +1075,28 @@
 msgstr ""
 
 #: src/components/usermanagement/Userdetail.vue:94
-#: src/components/usermanagement/Usermanagement.vue:328
+#: src/components/usermanagement/Usermanagement.vue:367
 msgid "Waterway User"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:788
+#: src/components/importschedule/Importscheduledetail.vue:805
 msgid "Wednesday"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:781
+#: src/components/importschedule/Importscheduledetail.vue:798
 msgid "week"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:197
+#: src/components/importschedule/Importscheduledetail.vue:209
 msgid "Weekly"
 msgstr ""
 
-#: src/components/importschedule/Importscheduledetail.vue:783
+#: src/components/importschedule/Importscheduledetail.vue:800
 msgid "year"
 msgstr "Rok"
 
 #: src/components/fairway/Profiles.vue:443
-msgid "You can now select these coordinates from the \"Saved cross profiles\" menu to restore this cross profile."
+msgid ""
+"You can now select these coordinates from the \"Saved cross profiles\" menu "
+"to restore this cross profile."
 msgstr ""
--- a/client/src/main.js	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/main.js	Tue Feb 12 11:11:32 2019 +0100
@@ -74,7 +74,8 @@
   faUser,
   faUsersCog,
   faWater,
-  faWrench
+  faWrench,
+  faRedo
 } from "@fortawesome/free-solid-svg-icons";
 import { faAdn } from "@fortawesome/free-brands-svg-icons";
 import { FontAwesomeIcon } from "@fortawesome/vue-fontawesome";
@@ -127,7 +128,8 @@
   faUser,
   faUsersCog,
   faWater,
-  faWrench
+  faWrench,
+  faRedo
 );
 import ToggleButton from "vue-js-toggle-button";
 
--- a/client/src/store/map.js	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/src/store/map.js	Tue Feb 12 11:11:32 2019 +0100
@@ -42,6 +42,7 @@
   FAIRWAYDIMENSIONSLOS2: "Fairway Dimensions LOS 2",
   FAIRWAYDIMENSIONSLOS3: "Fairway Dimensions LOS 3",
   WATERWAYAXIS: "Waterway Axis",
+  WATERWAYPROFILES: "Waterway Profiles",
   BOTTLENECKS: "Bottlenecks",
   BOTTLENECKISOLINE: "Bottleneck isolines",
   DISTANCEMARKS: "Distance marks",
@@ -50,6 +51,14 @@
   CUTTOOL: "Cut Tool"
 };
 
+const moveMap = ({ view, extent, zoom, preventZoomOut }) => {
+  const currentZoom = view.getZoom();
+  view.fit(extent, {
+    maxZoom: preventZoomOut ? Math.max(zoom, currentZoom) : zoom,
+    duration: 700
+  });
+};
+
 // initial state
 const init = () => {
   return {
@@ -228,6 +237,23 @@
         showInLegend: true
       },
       {
+        name: LAYERS.WATERWAYPROFILES,
+        data: new VectorLayer({
+          source: new VectorSource({
+            strategy: bboxStrategy
+          }),
+          style: new Style({
+            stroke: new Stroke({
+              color: "rgba(0, 0, 255, .5)",
+              lineDash: [5, 5],
+              width: 2
+            })
+          })
+        }),
+        isVisible: true,
+        showInLegend: true
+      },
+      {
         name: LAYERS.BOTTLENECKS,
         data: new VectorLayer({
           source: new VectorSource({
@@ -482,15 +508,16 @@
     cutTool: (state, cutTool) => {
       state.cutTool = cutTool;
     },
+    moveToBoundingBox: (state, { boundingBox, zoom, preventZoomOut }) => {
+      const extent = transformExtent(boundingBox, "EPSG:4326", "EPSG:3857");
+      let view = state.openLayersMap.getView();
+      moveMap({ view, extent, zoom, preventZoomOut });
+    },
     moveToExtent: (state, { feature, zoom, preventZoomOut }) => {
       const boundingBox = bbox(feature.geometry);
       const extent = transformExtent(boundingBox, "EPSG:4326", "EPSG:3857");
       let view = state.openLayersMap.getView();
-      const currentZoom = view.getZoom();
-      view.fit(extent, {
-        maxZoom: preventZoomOut ? Math.max(zoom, currentZoom) : zoom,
-        duration: 700
-      });
+      moveMap({ view, extent, zoom, preventZoomOut });
     },
     moveMap: (state, { coordinates, zoom, preventZoomOut }) => {
       let view = state.openLayersMap.getView();
@@ -607,7 +634,9 @@
           event => {
             commit("setIdentifiedFeatures", []);
             // checking our WFS layers
-            var features = state.openLayersMap.getFeaturesAtPixel(event.pixel);
+            var features = state.openLayersMap.getFeaturesAtPixel(event.pixel, {
+              hitTolerance: 7
+            });
             if (features) {
               commit("setIdentifiedFeatures", features);
 
--- a/client/yarn.lock	Tue Feb 12 10:53:01 2019 +0100
+++ b/client/yarn.lock	Tue Feb 12 11:11:32 2019 +0100
@@ -810,15 +810,20 @@
   dependencies:
     "@types/babel-types" "*"
 
-"@types/node@*", "@types/node@^10.11.7":
-  version "10.12.21"
-  resolved "https://registry.yarnpkg.com/@types/node/-/node-10.12.21.tgz#7e8a0c34cf29f4e17a36e9bd0ea72d45ba03908e"
-  integrity sha512-CBgLNk4o3XMnqMc0rhb6lc77IwShMEglz05deDcn2lQxyXEZivfwgYJu7SMha9V5XcrP6qZuevTHV/QrN2vjKQ==
+"@types/node@*":
+  version "11.9.0"
+  resolved "https://registry.yarnpkg.com/@types/node/-/node-11.9.0.tgz#35fea17653490dab82e1d5e69731abfdbf13160d"
+  integrity sha512-ry4DOrC+xenhQbzk1iIPzCZGhhPGEFv7ia7Iu6XXSLVluiJIe9FfG7Iu3mObH9mpxEXCWLCMU4JWbCCR9Oy1Zg==
+
+"@types/node@^10.11.7":
+  version "10.12.25"
+  resolved "https://registry.yarnpkg.com/@types/node/-/node-10.12.25.tgz#0d01a7dd6127de60d861ece4a650963042abb538"
+  integrity sha512-IcvnGLGSQFDvC07Bz2I8SX+QKErDZbUdiQq7S2u3XyzTyJfUmT0sWJMbeQkMzpTAkO7/N7sZpW/arUM2jfKsbQ==
 
 "@types/node@^8.0.7":
-  version "8.10.39"
-  resolved "https://registry.yarnpkg.com/@types/node/-/node-8.10.39.tgz#e7e87ad00364dd7bc485c940926345b8ec1a26ca"
-  integrity sha512-rE7fktr02J8ybFf6eysife+WF+L4sAHWzw09DgdCebEu+qDwMvv4zl6Bc+825ttGZP73kCKxa3dhJOoGJ8+5mA==
+  version "8.10.40"
+  resolved "https://registry.yarnpkg.com/@types/node/-/node-8.10.40.tgz#4314888d5cd537945d73e9ce165c04cc550144a4"
+  integrity sha512-RRSjdwz63kS4u7edIwJUn8NqKLLQ6LyqF/X4+4jp38MBT3Vwetewi2N4dgJEshLbDwNgOJXNYoOwzVZUSSLhkQ==
 
 "@types/q@^1.5.1":
   version "1.5.1"
@@ -1409,9 +1414,9 @@
   integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==
 
 acorn@^6.0.1, acorn@^6.0.6:
-  version "6.0.7"
-  resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.0.7.tgz#490180ce18337270232d9488a44be83d9afb7fd3"
-  integrity sha512-HNJNgE60C9eOTgn974Tlp3dpLZdUr+SoxxDwPaY9J/kDNOLQTkaDgwBUXAF4SSsrAwD9RpdxuHK/EbuF+W9Ahw==
+  version "6.1.0"
+  resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.1.0.tgz#b0a3be31752c97a0f7013c5f4903b71a05db6818"
+  integrity sha512-MW/FjM+IvU9CgBzjO3UIPCE2pyEwUsoFl+VGdczOPEdxfGFjuKny/gN54mOuX7Qxmb9Rg9MCn2oKiSUeW+pjrw==
 
 address@^1.0.3:
   version "1.0.3"
@@ -1437,9 +1442,9 @@
   integrity sha1-YXmX/F9gV2iUxDX5QNgZ4TW4B2I=
 
 ajv-keywords@^3.1.0:
-  version "3.3.0"
-  resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.3.0.tgz#cb6499da9b83177af8bc1732b2f0a1a1a3aacf8c"
-  integrity sha512-CMzN9S62ZOO4sA/mJZIO4S++ZM7KFWzH3PPWkveLhy4OZ9i1/VatgwWMD46w/XbGCBy7Ye0gCk+Za6mmyfKK7g==
+  version "3.4.0"
+  resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.4.0.tgz#4b831e7b531415a7cc518cd404e73f6193c6349d"
+  integrity sha512-aUjdRFISbuFOl0EIZc+9e4FfZp0bDZgAdOOf30bJmw8VM9v84SHyVyxDfbWxpGYbdZD/9XoKxfHVNmxPkhwyGw==
 
 ajv@^5.2.3, ajv@^5.3.0:
   version "5.5.2"
@@ -1452,9 +1457,9 @@
     json-schema-traverse "^0.3.0"
 
 ajv@^6.1.0, ajv@^6.5.5:
-  version "6.8.1"
-  resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.8.1.tgz#0890b93742985ebf8973cd365c5b23920ce3cb20"
-  integrity sha512-eqxCp82P+JfqL683wwsL73XmFs1eG6qjw+RD3YHx+Jll1r0jNd4dh8QG9NYAeNGA/hnZjeEDgtTskgJULbxpWQ==
+  version "6.9.1"
+  resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.9.1.tgz#a4d3683d74abc5670e75f0b16520f70a20ea8dc1"
+  integrity sha512-XDN92U311aINL77ieWHmqCcNlwjoP5cHXDxIxbf2MaPYuCXOHS7gHH8jktxeK5omgd52XbSTX6a4Piwd1pQmzA==
   dependencies:
     fast-deep-equal "^2.0.1"
     fast-json-stable-stringify "^2.0.0"
@@ -1510,6 +1515,11 @@
   resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998"
   integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=
 
+ansi-regex@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.0.0.tgz#70de791edf021404c3fd615aa89118ae0432e5a9"
+  integrity sha512-iB5Dda8t/UqpPI/IjsejXu5jOGDrzn41wJyljwPH65VCIbk6+1BzFIMJGFwTNrYXT1CrD+B4l19U7awiQ8rk7w==
+
 ansi-styles@^2.2.1:
   version "2.2.1"
   resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
@@ -1695,16 +1705,16 @@
   integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=
 
 ast-types@0.x.x:
-  version "0.11.7"
-  resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.11.7.tgz#f318bf44e339db6a320be0009ded64ec1471f46c"
-  integrity sha512-2mP3TwtkY/aTv5X3ZsMpNAbOnyoC/aMJwJSoaELPkHId0nSQgFcnU4dRW3isxiz7+zBexk0ym3WNVjMiQBnJSw==
+  version "0.12.2"
+  resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.12.2.tgz#341656049ee328ac03fc805c156b49ebab1e4462"
+  integrity sha512-8c83xDLJM/dLDyXNLiR6afRRm4dPKN6KAnKqytRK3DBJul9lA+atxdQkNDkSVPdTqea5HiRq3lnnOIZ0MBpvdg==
 
 astral-regex@^1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9"
   integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==
 
-async-each@^1.0.0:
+async-each@^1.0.1:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d"
   integrity sha1-GdOGodntxufByF04iu28xW0zYC0=
@@ -2100,9 +2110,9 @@
   integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24=
 
 bootstrap@^4.1.1:
-  version "4.2.1"
-  resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-4.2.1.tgz#8f8bdca024dbf0e8644da32e918c8a03a90a5757"
-  integrity sha512-tt/7vIv3Gm2mnd/WeDx36nfGGHleil0Wg8IeB7eMrVkY0fZ5iTaBisSh8oNANc2IBsCc6vCgCNTIM/IEN0+50Q==
+  version "4.3.0"
+  resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-4.3.0.tgz#2559ccb8d45426ac6c54db23eb3d1c9f4257fa22"
+  integrity sha512-M0vqY0Z6UDweV2nLFl5dXcb+GIo53EBCGMMVxCGH5vJxl/jsr+HkULBMd4kn9rdpdBZwd3BduCgMOYOwJybo4Q==
 
 brace-expansion@^1.0.0, brace-expansion@^1.1.7:
   version "1.1.11"
@@ -2121,7 +2131,7 @@
     preserve "^0.2.0"
     repeat-element "^1.1.2"
 
-braces@^2.3.0, braces@^2.3.1:
+braces@^2.3.1, braces@^2.3.2:
   version "2.3.2"
   resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729"
   integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==
@@ -2258,11 +2268,6 @@
     ieee754 "^1.1.4"
     isarray "^1.0.0"
 
-builtin-modules@^1.0.0:
-  version "1.1.1"
-  resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f"
-  integrity sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=
-
 builtin-status-codes@^3.0.0:
   version "3.0.0"
   resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8"
@@ -2426,9 +2431,9 @@
     lodash.uniq "^4.5.0"
 
 caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000929, caniuse-lite@^1.0.30000932:
-  version "1.0.30000935"
-  resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000935.tgz#d1b59df00b46f4921bb84a8a34c1d172b346df59"
-  integrity sha512-1Y2uJ5y56qDt3jsDTdBHL1OqiImzjoQcBG6Yl3Qizq8mcc2SgCFpi+ZwLLqkztYnk9l87IYqRlNBnPSOTbFkXQ==
+  version "1.0.30000936"
+  resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000936.tgz#5d33b118763988bf721b9b8ad436d0400e4a116b"
+  integrity sha512-orX4IdpbFhdNO7bTBhSbahp1EBpqzBc+qrvTRVUFfZgA4zta7TdM6PN5ZxkEUgDnz36m+PfWGcdX7AVfFWItJw==
 
 canvg@1.5.3:
   version "1.5.3"
@@ -2484,7 +2489,7 @@
     strip-ansi "^3.0.0"
     supports-color "^2.0.0"
 
-chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.3.1, chalk@^2.4.1, chalk@^2.4.2:
+chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.4.1, chalk@^2.4.2:
   version "2.4.2"
   resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
   integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
@@ -2523,24 +2528,23 @@
     parse5 "^3.0.1"
 
 chokidar@^2.0.0, chokidar@^2.0.2:
-  version "2.0.4"
-  resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.0.4.tgz#356ff4e2b0e8e43e322d18a372460bbcf3accd26"
-  integrity sha512-z9n7yt9rOvIJrMhvDtDictKrkFHeihkNl6uWMmZlmL6tJtX9Cs+87oK+teBx+JIgzvbX3yZHT3eF8vpbDxHJXQ==
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.1.tgz#adc39ad55a2adf26548bd2afa048f611091f9184"
+  integrity sha512-gfw3p2oQV2wEt+8VuMlNsPjCxDxvvgnm/kz+uATu805mWVF8IJN7uz9DN7iBz+RMJISmiVbCOBFs9qBGMjtPfQ==
   dependencies:
     anymatch "^2.0.0"
-    async-each "^1.0.0"
-    braces "^2.3.0"
+    async-each "^1.0.1"
+    braces "^2.3.2"
     glob-parent "^3.1.0"
-    inherits "^2.0.1"
+    inherits "^2.0.3"
     is-binary-path "^1.0.0"
     is-glob "^4.0.0"
-    lodash.debounce "^4.0.8"
-    normalize-path "^2.1.1"
+    normalize-path "^3.0.0"
     path-is-absolute "^1.0.0"
-    readdirp "^2.0.0"
-    upath "^1.0.5"
+    readdirp "^2.2.1"
+    upath "^1.1.0"
   optionalDependencies:
-    fsevents "^1.2.2"
+    fsevents "^1.2.7"
 
 chownr@^1.0.1, chownr@^1.1.1:
   version "1.1.1"
@@ -2612,7 +2616,7 @@
   dependencies:
     restore-cursor "^2.0.0"
 
-cli-spinners@^1.1.0:
+cli-spinners@^1.3.1:
   version "1.3.1"
   resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-1.3.1.tgz#002c1990912d0d59580c93bd36c056de99e4259a"
   integrity sha512-1QL4544moEsDVH9T/l6Cemov/37iv1RtoKf7NJ04A60+4MREXNfx/QvavbH6QoGdsD4N4Mwy49cmaINR/o2mdg==
@@ -2970,9 +2974,9 @@
     serialize-javascript "^1.4.0"
 
 core-js@^2.4.0, core-js@^2.5.0, core-js@^2.5.7, core-js@^2.6.3:
-  version "2.6.3"
-  resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.3.tgz#4b70938bdffdaf64931e66e2db158f0892289c49"
-  integrity sha512-l00tmFFZOBHtYhN4Cz7k32VM7vTn3rE2ANjQDxdEN6zmXZ/xq1jQuutnmHvMG1ZJ7xd72+TA5YpUK8wz3rWsfQ==
+  version "2.6.4"
+  resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.4.tgz#b8897c062c4d769dd30a0ac5c73976c47f92ea0d"
+  integrity sha512-05qQ5hXShcqGkPZpXEFLIpxayZscVD2kuMBZewxiIPPEagukO4mqgPA9CWhUvFBJfy3ODdK2p9xyHh7FTU9/7A==
 
 core-util-is@1.0.2, core-util-is@~1.0.0:
   version "1.0.2"
@@ -3364,9 +3368,9 @@
     d3-selection "1"
 
 d3-dsv@1:
-  version "1.0.10"
-  resolved "https://registry.yarnpkg.com/d3-dsv/-/d3-dsv-1.0.10.tgz#4371c489a2a654a297aca16fcaf605a6f31a6f51"
-  integrity sha512-vqklfpxmtO2ZER3fq/B33R/BIz3A1PV0FaZRuFM8w6jLo7sUX1BZDh73fPlr0s327rzq4H6EN1q9U+eCBCSN8g==
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/d3-dsv/-/d3-dsv-1.1.1.tgz#aaa830ecb76c4b5015572c647cc6441e3c7bb701"
+  integrity sha512-1EH1oRGSkeDUlDRbhsFytAXU6cAmXFzc52YUe6MRlPClmWb85MP1J5x+YJRzya4ynZWnbELdSAvATFW/MbxaXw==
   dependencies:
     commander "2"
     iconv-lite "0.4"
@@ -3429,9 +3433,9 @@
   integrity sha512-RHhh1ZUJZfhgoqzWWuRhzQJvO7LavchhitSTHGu9oj6uuLFzYZVeBzaWTQ2qSO6bz2w55RMoOCf0MsLCDB6e0w==
 
 d3-quadtree@1:
-  version "1.0.5"
-  resolved "https://registry.yarnpkg.com/d3-quadtree/-/d3-quadtree-1.0.5.tgz#305394840b01f51a341a0da5008585e837fe7e9b"
-  integrity sha512-U2tjwDFbZ75JRAg8A+cqMvqPg1G3BE7UTJn3h8DHjY/pnsAfWdbJKgyfcy7zKjqGtLAmI0q8aDSeG1TVIKRaHQ==
+  version "1.0.6"
+  resolved "https://registry.yarnpkg.com/d3-quadtree/-/d3-quadtree-1.0.6.tgz#d1ab2a95a7f27bbde88582c94166f6ae35f32056"
+  integrity sha512-NUgeo9G+ENQCQ1LsRr2qJg3MQ4DJvxcDNCiohdJGHt5gRhBW6orIB5m5FJ9kK3HNL8g9F4ERVoBzcEwQBfXWVA==
 
 d3-random@1:
   version "1.1.2"
@@ -3516,9 +3520,9 @@
     d3-transition "1"
 
 d3@^5.7.0:
-  version "5.8.2"
-  resolved "https://registry.yarnpkg.com/d3/-/d3-5.8.2.tgz#a8ccf5c93424022070f85fe9f98f5fef6c574e2c"
-  integrity sha512-XUaQCj3DwnLsjhzg7aiICkA7Jy4zIvLFqdynKv/23y8gHnULqC9p7xAjs3Vw3lYtFE5UUmWoUzLj26O2fXAybg==
+  version "5.9.1"
+  resolved "https://registry.yarnpkg.com/d3/-/d3-5.9.1.tgz#fde73fa9af7281d2ff0d2a32aa8f306e93a6d1cd"
+  integrity sha512-JceuBn5VVWySPQc9EA0gfq0xQVgEQXGokHhe+359bmgGeUITLK2r2b9idMzquQne9DKxb7JDCE1gDRXe9OIF2Q==
   dependencies:
     d3-array "1"
     d3-axis "1"
@@ -4786,12 +4790,12 @@
     write "^0.2.1"
 
 flush-write-stream@^1.0.0:
-  version "1.1.0"
-  resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.0.tgz#2e89a8bd5eee42f8ec97e43aae81e3d5099c2ddc"
-  integrity sha512-6MHED/cmsyux1G4/Cek2Z776y9t7WCNd3h2h/HW91vFeU7pzMhA8XvAlDhHcanG5IWuIh/xcC7JASY4WQpG6xg==
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8"
+  integrity sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==
   dependencies:
     inherits "^2.0.3"
-    readable-stream "^3.1.1"
+    readable-stream "^2.3.6"
 
 follow-redirects@^1.0.0, follow-redirects@^1.3.0:
   version "1.6.1"
@@ -4899,7 +4903,7 @@
   resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
   integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
 
-fsevents@^1.2.2, fsevents@^1.2.3:
+fsevents@^1.2.3, fsevents@^1.2.7:
   version "1.2.7"
   resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.7.tgz#4851b664a3783e52003b3c66eb0eee1074933aa4"
   integrity sha512-Pxm6sI2MeBD7RdD12RYsqaP0nMiwx8eZBXCa6z2L+mRHm2DYrOYwihmhjpkdjUHwQhslWQjRpEgNq4XvBmaAuw==
@@ -5098,9 +5102,9 @@
     which "^1.2.14"
 
 globals@^11.0.1, globals@^11.1.0:
-  version "11.10.0"
-  resolved "https://registry.yarnpkg.com/globals/-/globals-11.10.0.tgz#1e09776dffda5e01816b3bb4077c8b59c24eaa50"
-  integrity sha512-0GZF1RiPKU97IHUO5TORo9w1PwrH/NBPl+fS7oMLdaTRiYmYbwK4NWoZWrAdd0/abG9R2BU+OiwyQpTpE6pdfQ==
+  version "11.11.0"
+  resolved "https://registry.yarnpkg.com/globals/-/globals-11.11.0.tgz#dcf93757fa2de5486fbeed7118538adf789e9c2e"
+  integrity sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==
 
 globals@^9.18.0:
   version "9.18.0"
@@ -5193,9 +5197,9 @@
   integrity sha512-d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ==
 
 handlebars@^4.0.3:
-  version "4.0.12"
-  resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.12.tgz#2c15c8a96d46da5e266700518ba8cb8d919d5bc5"
-  integrity sha512-RhmTekP+FZL+XNhwS1Wf+bTTZpdLougwt5pcgA1tuz6Jcx0fpH/7z0qd71RKnZHBCxIRBHfBOnio4gViPemNzA==
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.1.0.tgz#0d6a6f34ff1f63cecec8423aa4169827bf787c3a"
+  integrity sha512-l2jRuU1NAWK6AW5qqcTATWQJvNPEwkM7NEKSiv/gqOsoSQbVoWyqVEY5GS+XPQ88zLNmqASRpzfdm8d79hJS+w==
   dependencies:
     async "^2.5.0"
     optimist "^0.6.1"
@@ -5741,9 +5745,9 @@
   integrity sha1-6qM9bd16zo9/b+DJygRA5wZzix4=
 
 ipaddr.js@^1.5.2:
-  version "1.8.1"
-  resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.8.1.tgz#fa4b79fa47fd3def5e3b159825161c0a519c9427"
-  integrity sha1-+kt5+kf9Pe9eOxWYJRYcClGclCc=
+  version "1.9.0"
+  resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.0.tgz#37df74e430a0e47550fe54a2defe30d8acd95f65"
+  integrity sha512-M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA==
 
 is-absolute-url@^2.0.0:
   version "2.1.0"
@@ -5786,13 +5790,6 @@
   resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
   integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
 
-is-builtin-module@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe"
-  integrity sha1-VAVy0096wxGfj3bDDLwbHgN6/74=
-  dependencies:
-    builtin-modules "^1.0.0"
-
 is-callable@^1.1.4:
   version "1.1.4"
   resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75"
@@ -7828,12 +7825,12 @@
     osenv "^0.1.4"
 
 normalize-package-data@^2.3.2, normalize-package-data@^2.3.4:
-  version "2.4.2"
-  resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.2.tgz#6b2abd85774e51f7936f1395e45acb905dc849b2"
-  integrity sha512-YcMnjqeoUckXTPKZSAsPjUPLxH85XotbpqK3w4RyCwdFQSU5FxxBys8buehkSfg0j9fKvV1hn7O0+8reEgkAiw==
+  version "2.5.0"
+  resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8"
+  integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==
   dependencies:
     hosted-git-info "^2.1.4"
-    is-builtin-module "^1.0.0"
+    resolve "^1.10.0"
     semver "2 || 3 || 4 || 5"
     validate-npm-package-license "^3.0.1"
 
@@ -7870,9 +7867,9 @@
   integrity sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==
 
 npm-packlist@^1.1.6:
-  version "1.2.0"
-  resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.2.0.tgz#55a60e793e272f00862c7089274439a4cc31fc7f"
-  integrity sha512-7Mni4Z8Xkx0/oegoqlcao/JpPCPEMtUvsmB0q7mgvlMinykJLSRTYuFqoQLYgGY8biuxIeiHO+QNJKbCfljewQ==
+  version "1.3.0"
+  resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.3.0.tgz#7f01e8e44408341379ca98cfd756e7b29bd2626c"
+  integrity sha512-qPBc6CnxEzpOcc4bjoIBJbYdy0D/LFFPUdxvfwor4/w3vxeE0h6TiOVurCEPpQ6trjN77u/ShyfeJGsbAfB3dA==
   dependencies:
     ignore-walk "^3.0.1"
     npm-bundled "^1.0.1"
@@ -7946,9 +7943,9 @@
   integrity sha512-OSuu/pU4ENM9kmREg0BdNrUDIl1heYa4mBZacJc+vVWz4GtAwu7jO8s4AIt2aGRUTqxykpWzI3Oqnsm13tTMDA==
 
 object-keys@^1.0.11, object-keys@^1.0.12:
-  version "1.0.12"
-  resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.12.tgz#09c53855377575310cca62f55bb334abff7b3ed2"
-  integrity sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.0.tgz#11bd22348dd2e096a045ab06f6c85bcc340fa032"
+  integrity sha512-6OO5X1+2tYkNyNEx6TsCxEqFfRWaqx6EtMiSbGrw8Ob8v9Ne+Hl8rBAgLBZn5wjEz3s/s6U1WXFUFOcxxAwUpg==
 
 object-visit@^1.0.0:
   version "1.0.1"
@@ -8078,15 +8075,15 @@
     wordwrap "~1.0.0"
 
 ora@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/ora/-/ora-3.0.0.tgz#8179e3525b9aafd99242d63cc206fd64732741d0"
-  integrity sha512-LBS97LFe2RV6GJmXBi6OKcETKyklHNMV0xw7BtsVn2MlsgsydyZetSCbCANr+PFLmDyv4KV88nn0eCKza665Mg==
-  dependencies:
-    chalk "^2.3.1"
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/ora/-/ora-3.1.0.tgz#dbedd8c03b5d017fb67083e87ee52f5ec89823ed"
+  integrity sha512-vRBPaNCclUi8pUxRF/G8+5qEQkc6EgzKK1G2ZNJUIGu088Un5qIxFXeDgymvPRM9nmrcUOGzQgS1Vmtz+NtlMw==
+  dependencies:
+    chalk "^2.4.2"
     cli-cursor "^2.1.0"
-    cli-spinners "^1.1.0"
+    cli-spinners "^1.3.1"
     log-symbols "^2.2.0"
-    strip-ansi "^4.0.0"
+    strip-ansi "^5.0.0"
     wcwidth "^1.0.1"
 
 original@^1.0.0:
@@ -9324,7 +9321,7 @@
     isarray "0.0.1"
     string_decoder "~0.10.x"
 
-readable-stream@3, readable-stream@^3.0.6, readable-stream@^3.1.1:
+readable-stream@3, readable-stream@^3.0.6:
   version "3.1.1"
   resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.1.1.tgz#ed6bbc6c5ba58b090039ff18ce670515795aeb06"
   integrity sha512-DkN66hPyqDhnIQ6Jcsvx9bFjhw214O4poMBcIMgPVpQvNy9a0e0Uhg5SqySyDKAmUlwt8LonTBz1ezOnM8pUdA==
@@ -9333,7 +9330,7 @@
     string_decoder "^1.1.1"
     util-deprecate "^1.0.1"
 
-readdirp@^2.0.0:
+readdirp@^2.2.1:
   version "2.2.1"
   resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525"
   integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==
@@ -9610,7 +9607,7 @@
   resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b"
   integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=
 
-resolve@^1.1.6, resolve@^1.3.2, resolve@^1.8.1:
+resolve@^1.1.6, resolve@^1.10.0, resolve@^1.3.2, resolve@^1.8.1:
   version "1.10.0"
   resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.10.0.tgz#3bdaaeaf45cc07f375656dfd2e54ed0810b101ba"
   integrity sha512-3sUr9aq5OfSg2S9pNtPA9hL1FVEAjvfOC4leW0SNf/mpnaakz2a9femSd6LqAww2RaFctwyf1lCqnTHuF1rxDg==
@@ -10380,6 +10377,13 @@
   dependencies:
     ansi-regex "^3.0.0"
 
+strip-ansi@^5.0.0:
+  version "5.0.0"
+  resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.0.0.tgz#f78f68b5d0866c20b2c9b8c61b5298508dc8756f"
+  integrity sha512-Uu7gQyZI7J7gn5qLn1Np3G9vcYGTVqB+lFTytnDJv83dd8T22aGH451P3jueT2/QemInJDfxHB5Tde5OzgG1Ow==
+  dependencies:
+    ansi-regex "^4.0.0"
+
 strip-bom@3.0.0, strip-bom@^3.0.0:
   version "3.0.0"
   resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
@@ -10629,9 +10633,9 @@
   integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=
 
 tiny-emitter@^2.0.0:
-  version "2.0.2"
-  resolved "https://registry.yarnpkg.com/tiny-emitter/-/tiny-emitter-2.0.2.tgz#82d27468aca5ade8e5fd1e6d22b57dd43ebdfb7c"
-  integrity sha512-2NM0auVBGft5tee/OxP4PI3d8WItkDM+fPnaRAVo6xTDI2knbz9eC5ArWGqtGlYqiH3RU5yMpdyTTO7MguC4ow==
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz#1d1a56edfc51c43e863cbb5382a72330e3555423"
+  integrity sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==
 
 tinycolor2@^1.1.2:
   version "1.4.1"
@@ -10931,7 +10935,7 @@
     has-value "^0.3.1"
     isobject "^3.0.0"
 
-upath@^1.0.5:
+upath@^1.1.0:
   version "1.1.0"
   resolved "https://registry.yarnpkg.com/upath/-/upath-1.1.0.tgz#35256597e46a581db4793d0ce47fa9aebfc9fabd"
   integrity sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw==
@@ -11127,14 +11131,14 @@
     highlight.js "*"
 
 vue-hot-reload-api@^2.3.0:
-  version "2.3.1"
-  resolved "https://registry.yarnpkg.com/vue-hot-reload-api/-/vue-hot-reload-api-2.3.1.tgz#b2d3d95402a811602380783ea4f566eb875569a2"
-  integrity sha512-AA86yKZ5uOKz87/q1UpngEXhbRkaYg1b7HMMVRobNV1IVKqZe8oLIzo6iMocVwZXnYitlGwf2k4ZRLOZlS8oPQ==
+  version "2.3.2"
+  resolved "https://registry.yarnpkg.com/vue-hot-reload-api/-/vue-hot-reload-api-2.3.2.tgz#1fcc1495effe08a790909b46bf7b5c4cfeb6f21b"
+  integrity sha512-NpznMQoe/DzMG7nJjPkJKT7FdEn9xXfnntG7POfTmqnSaza97ylaBf1luZDh4IgV+vgUoR//id5pf8Ru+Ym+0g==
 
 vue-jest@^3.0.2:
-  version "3.0.2"
-  resolved "https://registry.yarnpkg.com/vue-jest/-/vue-jest-3.0.2.tgz#c64bf5da9abd0d3ee16071217037696d14b0689c"
-  integrity sha512-5XIQ1xQFW0ZnWxHWM7adVA2IqbDsdw1vhgZfGFX4oWd75J38KIS3YT41PtiE7lpMLmNM6+VJ0uprT2mhHjUgkA==
+  version "3.0.3"
+  resolved "https://registry.yarnpkg.com/vue-jest/-/vue-jest-3.0.3.tgz#80f664712f2678b1d8bb3af0f2c0bef5efa8de31"
+  integrity sha512-QwFQjkv2vXYPKUkNZkMbV/ZTHyQhRM1JY8nP68dRLQmdvCN+VUEKhlByH/PgPqDr2p/NuhaM3PUjJ9nreR++3w==
   dependencies:
     babel-plugin-transform-es2015-modules-commonjs "^6.26.0"
     chalk "^2.1.0"
@@ -11187,9 +11191,9 @@
     loader-utils "^1.0.2"
 
 vue-template-compiler@^2.5.16, vue-template-compiler@^2.5.17:
-  version "2.6.2"
-  resolved "https://registry.yarnpkg.com/vue-template-compiler/-/vue-template-compiler-2.6.2.tgz#6230abf7ca92d565b7471c0cc3f54d5b12aa48e7"
-  integrity sha512-2dBKNCtBPdx1TFef7T4zwF8IjOx2xbMNryCtFzneP+XIonJwOtnkq4s1mhKv8W79gXcGINQWtuaxituGAcuSnA==
+  version "2.6.6"
+  resolved "https://registry.yarnpkg.com/vue-template-compiler/-/vue-template-compiler-2.6.6.tgz#a807acbf3d51971d3721d75ecb1b927b517c1a02"
+  integrity sha512-OakxDGyrmMQViCjkakQFbDZlG0NibiOzpLauOfyCUVRQc9yPmTqpiz9nF0VeA+dFkXegetw0E5x65BFhhLXO0A==
   dependencies:
     de-indent "^1.0.2"
     he "^1.1.0"
@@ -11200,9 +11204,9 @@
   integrity sha512-cliV19VHLJqFUYbz/XeWXe5CO6guzwd0yrrqqp0bmjlMP3ZZULY7fu8RTC4+3lmHwo6ESVDHFDsvjB15hcR5IA==
 
 vue@^2.5.16:
-  version "2.6.2"
-  resolved "https://registry.yarnpkg.com/vue/-/vue-2.6.2.tgz#1cc9c9c8f7ba8df45e9b97c284947de78b76301c"
-  integrity sha512-NZAb0H+t3/99g2nygURcEJ+ncvzNLPiEiFI5MGhc1Cjsw5uYprF+Ol7SOd1RXPcmVVzK7jUBl0th2tNgt+VQDg==
+  version "2.6.6"
+  resolved "https://registry.yarnpkg.com/vue/-/vue-2.6.6.tgz#dde41e483c11c46a7bf523909f4f2f816ab60d25"
+  integrity sha512-Y2DdOZD8sxApS+iUlwv1v8U1qN41kq6Kw45lM6nVZKhygeWA49q7VCCXkjXqeDBXgurrKWkYQ9cJeEJwAq0b9Q==
 
 vuex@^3.0.1:
   version "3.1.0"
--- a/docker/README.md	Tue Feb 12 10:53:01 2019 +0100
+++ b/docker/README.md	Tue Feb 12 11:11:32 2019 +0100
@@ -1,4 +1,15 @@
-# Setup dev environment using Docker
+# Build and run your dev environment using Docker
+
+- [Build and run your dev environment using Docker](#build-and-run-your-dev-environment-using-docker)
+  - [Build and run your gemma application with Docker Compose in one step](#build-and-run-your-gemma-application-with-docker-compose-in-one-step)
+    - [Hints and tricks](#hints-and-tricks)
+  - [Build and run the gemma application with Docker manually](#build-and-run-the-gemma-application-with-docker-manually)
+    - [Network setup](#network-setup)
+    - [Database setup](#database-setup)
+    - [Create ER diagrams](#create-er-diagrams)
+    - [GeoServer setup](#geoserver-setup)
+    - [Gemma backend setup](#gemma-backend-setup)
+    - [SPA setup](#spa-setup)
 
 Run the `build` commands from the root of your checkout, because it is
 assumed as the context!
@@ -6,89 +17,170 @@
 Other example commands, too, assume they are run from the root of your
 checkout.
 
-## Network setup
+## Build and run your gemma application with Docker Compose in one step
+
+Requires at least Docker Engine release 17.12.0+. Because of Compose file
+format 3.5 for named networks.
+
+If you fiddle around with the following error message: `Version in
+"./docker-compose.yml" is unsupported` take a look at the comments in the
+head of the `docker-compose.yml` file.
 
-- Create a network to connect containers:
-  ```
-  docker network create gemma
-  ```
+From your docker directory, start up your gemma application by running
+`docker-compose up`. Here an example for build and running the gemma
+application:
+
+```shell
+cd docker
+docker-compose -p gemma up
+```
+
+Note: The `-p` flag specifies an alternate project name (default: directory
+name).
 
-## Database setup
+Now you should be able to use the application in your browser by going to
+`http://HOSTNAME:8290`, with `HOSTNAME` being the hostname of your docker
+host.
+
+Stop the application, either by running `docker-compose down` from within your
+docker directory in the second terminal, or by hitting `CTRL+C` in the
+original terminal where you started the gemma application.
+
+### Hints and tricks
 
-- Build Dockerfile with e.g.:
-  ```
-  docker build -t gemma_db -f docker/Dockerfile.db .
-  ```
+If you want to run your services in the background, you can pass the `-d` flag
+(for `detached` mode) to `docker-compose up` and use `docker-compose ps` to see
+what is currently running. Take a look at the following example.
+
+```shell
+docker-compose up -d
+Starting gemma_db ...
+Starting gemma_db ... done
+Starting gemma_geoserver ...
+Starting gemma_geoserver ... done
+Starting gemma_backend ...
+Starting gemma_backend ... done
+Starting gemma_spa ...
+Starting gemma_spa ... done
+```
 
-- Get a running instance with e.g.:
-  ```
-  docker run --name gemma_db -d -p 54321:5432 -v $PWD/schema:/opt/gemma \
-          --network gemma gemma_db
-  ```
-  Use `--network-alias gemma_db` if your container has a different name
+```shell
+docker-compose ps
+     Name                    Command               State            Ports
+----------------------------------------------------------------------------------
+gemma_backend     /usr/local/bin/gemma -c /o ...   Up      0.0.0.0:8200->8000/tcp
+gemma_db          /usr/lib/postgresql/11/bin ...   Up      0.0.0.0:54321->5432/tcp
+gemma_geoserver   /usr/share/tomcat8/bin/cat ...   Up      0.0.0.0:8280->8080/tcp
+gemma_spa         /bin/sh -c make -f Makefil ...   Up      0.0.0.0:8290->8080/tcp
+```
+
+For more infos about Docker Compose take a look at:
+https://docs.docker.com/compose/
 
-- Run tests for RLS policies:
-  ```
-  docker exec gemma_db ./run_tests.sh
-  ```
+## Build and run the gemma application with Docker manually
+
+Or build and run your dev enviroment manually by the following steps.
+
+### Network setup
+
+Create a network to connect containers:
+
+```shell
+docker network create gemma
+```
+
+### Database setup
+
+Build `gemma_db` docker image with e.g.:
 
-## Create ER diagrams
+```shell
+docker build -t gemma_db -f docker/Dockerfile.db .
+```
+
+Get a running instance with e.g.:
 
-Assuming you have installed `postgresql_autodoc` and `graphviz` on a machine
-from wich you can reach your docker host, you can use the following:
+```shell
+docker run --name gemma_db -d -p 54321:5432 -v $PWD/schema:/opt/gemma \
+           --network gemma gemma_db
+```
+
+Use `--network-alias gemma_db` if your container has a different name
+
+Run tests for [Row-Level Security](https://www.postgresql.org/docs/11/ddl-rowsecurity.html) (RLS)
+policies:
 
-- ER diagram with waterway related tables:
-  ```
-  postgresql_autodoc -p 54321 -h $dockerhost \
-      -d gemma -U sophie --password=so2Phie4 -t dot -l . -s 'waterway'
-  dot -Tpdf gemma.dot > gemma_waterway.pdf
-  ```
+```shell
+docker exec gemma_db ./run_tests.sh
+```
+
+### Create ER diagrams
+
+Assuming you have installed `postgresql-autodoc` and
+[graphviz](http://graphviz.org/) on a machine from which you can reach your
+docker host, you can use the following:
+
+ER diagram with waterway related tables:
+
+```shell
+postgresql_autodoc -p 54321 -h $dockerhost \
+                   -d gemma -U sophie --password=so2Phie4 \
+                   -t dot -l . -s 'waterway'
+dot -Tpdf gemma.dot > gemma_waterway.pdf
+```
 
 Omit the `-s` option to get a diagram with all tables or use any other
 schema name to see other parts of the whole picture.
 
-## GeoServer setup
+### GeoServer setup
+
+Build `gemma_geoserver` docker image with e.g.:
 
-- Build Dockerfile with e.g.:
-  ```
-  docker build -t gemma_geoserver -f docker/Dockerfile.geoserv .
-  ```
+```shell
+docker build -t gemma_geoserver -f docker/Dockerfile.geoserv .
+```
+
+Get a running instance with e.g.:
 
-- Get a running instance with e.g.:
-  ```
-  docker run --name gemma_geoserver -d -p 8280:8080 --network gemma \
-         gemma_geoserver
-  ```
-  Use `--network-alias gemma_geoserver` if you give your container
-  a different name.
+```shell
+docker run --name gemma_geoserver -d -p 8280:8080 --network gemma \
+           gemma_geoserver
+```
 
-## Gemma backend setup
+Use `--network-alias gemma_geoserver` if you give your container
+a different name.
+
+### Gemma backend setup
+
+Build `gemma_backend` docker image with e.g.:
 
-- Build Dockerfile with e.g.:
-  ```
-  docker build -t gemma_backend -f docker/Dockerfile.backend .
-  ```
+```shell
+docker build -t gemma_backend -f docker/Dockerfile.backend .
+```
+
+Get a running instance with e.g.:
 
-- Get a running instance with e.g.:
-  ```
-  docker run --name gemma_backend -v $PWD:/opt/gemma -d -p 8200:8000 \
-             --network gemma gemma_backend
-  ```
-  Use `--network-alias gemma_backend` if you give your container
-  a different name.
+```shell
+docker run --name gemma_backend -v $PWD:/opt/gemma -d -p 8200:8000 \
+           --network gemma gemma_backend
+```
+
+Use `--network-alias gemma_backend` if you give your container
+a different name.
 
-## SPA setup
+### SPA setup
+
+Build `gemma_spa` docker image with e.g.:
 
-- Build Dockerfile with e.g.:
-  ```
-  docker build -t gemma_spa -f docker/Dockerfile.spa .
-  ```
+```shell
+docker build -t gemma_spa -f docker/Dockerfile.spa .
+```
 
-- Get a running instance with e.g.:
-  ```
-  docker run --name gemma_spa -v $PWD/client:/opt/gemma/client -d -p 8290:8080 \
-             --network gemma gemma_spa
-  ```
+Get a running instance with e.g.:
+
+```shell
+docker run --name gemma_spa -v $PWD/client:/opt/gemma/client -d -p 8290:8080 \
+           --network gemma gemma_spa
+```
 
 Now you should be able to use the application in your browser by going to
-`http://HOST:8290`, with HOST being the hostname of your docker host.
+`http://HOSTNAME:8290`, with `HOSTNAME` being the hostname of your docker host.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/docker/docker-compose.yml	Tue Feb 12 11:11:32 2019 +0100
@@ -0,0 +1,73 @@
+# If you fiddle around with the following error message:
+# Version in "./docker-compose.yml" is unsupported
+#
+# Option 1)
+# Update docker and docker compose to at least docker version 17.12.0+.
+#
+# Option 2)
+# Change version: "3.5" to version: "3"
+# And delete the name configuration form `networks:` below.
+#
+version: "3.5"
+services:
+  gemma_db:
+    container_name: gemma_db
+    build:
+      context: ../
+      dockerfile: docker/Dockerfile.db
+    image: "gemma_db"
+    volumes:
+    - ../schema:/opt/gemma
+    networks:
+    - gemma
+    ports:
+    - "54321:5432"
+  gemma_geoserver:
+    container_name: gemma_geoserver
+    build:
+      context: ../
+      dockerfile: docker/Dockerfile.geoserv
+    depends_on:
+      - gemma_db
+    image: "gemma_geoserver"
+    networks:
+    - gemma
+    ports:
+     - "8280:8080"
+  gemma_backend:
+    container_name: gemma_backend
+    build:
+      context: ../
+      dockerfile: docker/Dockerfile.backend
+    depends_on:
+      - gemma_db
+      - gemma_geoserver
+    image: "gemma_backend"
+    volumes:
+    - ../:/opt/gemma
+    networks:
+    - gemma
+    ports:
+     - "8200:8000"
+  gemma_spa:
+    container_name: gemma_spa
+    build:
+      context: ../
+      dockerfile: docker/Dockerfile.spa
+    depends_on:
+      - gemma_backend
+      - gemma_geoserver
+    image: "gemma_spa"
+    volumes:
+    - ../client:/opt/gemma/client
+    networks:
+    - gemma
+    ports:
+     - "8290:8080"
+
+networks:
+  gemma:
+      # name: gemma needs at least docker version 17.12.0+
+      # API version: "3.5"
+      # https://docs.docker.com/compose/compose-file/#name-1
+      name: gemma
--- a/pkg/common/attributes.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/common/attributes.go	Tue Feb 12 11:11:32 2019 +0100
@@ -20,13 +20,7 @@
 	"time"
 )
 
-const (
-	TimeFormat = "2006-01-02T15:04:05"
-	DateFormat = "2006-01-02"
-)
-
 type (
-
 	// Attributes is a map of optional key/value attributes
 	// of a configuration.
 	Attributes map[string]string
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/pkg/common/time.go	Tue Feb 12 11:11:32 2019 +0100
@@ -0,0 +1,19 @@
+// This is Free Software under GNU Affero General Public License v >= 3.0
+// without warranty, see README.md and license for details.
+//
+// SPDX-License-Identifier: AGPL-3.0-or-later
+// License-Filename: LICENSES/AGPL-3.0.txt
+//
+// Copyright (C) 2018 by via donau
+//   – Österreichische Wasserstraßen-Gesellschaft mbH
+// Software engineering by Intevation GmbH
+//
+// Author(s):
+//  * Sascha L. Teichmann <sascha.teichmann@intevation.de>
+
+package common
+
+const (
+	TimeFormat = "2006-01-02T15:04:05"
+	DateFormat = "2006-01-02"
+)
--- a/pkg/config/config.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/config/config.go	Tue Feb 12 11:11:32 2019 +0100
@@ -166,6 +166,9 @@
 	return externalURL
 }
 
+// The root directories where to find schema files.
+func SchemaDirs() string { return viper.GetString("schema-dirs") }
+
 // RootCmd is cobra command to be bound th the cobra/viper infrastructure.
 var RootCmd = &cobra.Command{
 	Use:   "gemma",
@@ -246,6 +249,8 @@
 
 	str("tmp-dir", "", "Temp directory of gemma server.\n"+
 		"Defaults to system temp directory.")
+
+	str("schema-dirs", ".", "Directories to find XSD schema files in (recursive).")
 }
 
 var (
--- a/pkg/controllers/importqueue.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/controllers/importqueue.go	Tue Feb 12 11:11:32 2019 +0100
@@ -39,7 +39,12 @@
   kind,
   username,
   signer,
-  summary
+  summary,
+  EXISTS (
+    SELECT true FROM import.import_logs
+      WHERE kind = 'warn'::log_type AND
+            import_id = import.imports.id
+  ) AS has_warnings
 FROM import.imports
 `
 
@@ -213,6 +218,7 @@
 			&it.User,
 			&signer,
 			&summary,
+			&it.Warnings,
 		); err != nil {
 			return
 		}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/pkg/controllers/printtemplates.go	Tue Feb 12 11:11:32 2019 +0100
@@ -0,0 +1,303 @@
+// This is Free Software under GNU Affero General Public License v >= 3.0
+// without warranty, see README.md and license for details.
+//
+// SPDX-License-Identifier: AGPL-3.0-or-later
+// License-Filename: LICENSES/AGPL-3.0.txt
+//
+// Copyright (C) 2018 by via donau
+//   – Österreichische Wasserstraßen-Gesellschaft mbH
+// Software engineering by Intevation GmbH
+//
+// Author(s):
+//  * Sascha L. Teichmann <sascha.teichmann@intevation.de>
+
+package controllers
+
+import (
+	"bytes"
+	"database/sql"
+	"encoding/json"
+	"net/http"
+	"time"
+
+	"github.com/gorilla/mux"
+	"github.com/jackc/pgx/pgtype"
+
+	"gemma.intevation.de/gemma/pkg/models"
+)
+
+const maxPrintTemplateSize = 5 * 1024 * 1024
+
+const (
+	listPrintTemplatesSQL = `
+SELECT
+  template_name,
+  date_info
+FROM
+  users.templates
+ORDER BY date_info DESC`
+
+	hasPrintTemplateSQL = `
+SELECT true FROM users.templates WHERE name = $1`
+
+	deletePrintTemplateSQL = `
+DELETE FROM users.templates WHERE name = $1`
+
+	selectPrintTemplateSQL = `
+SELECT template_data FROM users.templates WHERE name = $1`
+
+	insertPrintTemplateSQL = `
+INSERT INTO users.templates (template_name, template_data)
+VALUES ($1, $2)`
+
+	updatePrintTemplateSQL = `
+UPDATE user.templates template_data = $2 WHERE template_name = $1`
+)
+
+func listPrintTemplates(
+	_ interface{},
+	req *http.Request,
+	conn *sql.Conn,
+) (jr JSONResult, err error) {
+
+	type template struct {
+		Name string      `json:"name"`
+		Time models.Time `json:"time"`
+	}
+
+	var rows *sql.Rows
+	if rows, err = conn.QueryContext(req.Context(), listPrintTemplatesSQL); err != nil {
+		return
+	}
+	defer rows.Close()
+
+	templates := []*template{}
+
+	for rows.Next() {
+		var tmpl template
+		var w time.Time
+		if err = rows.Scan(&tmpl.Name, &w); err != nil {
+			return
+		}
+		tmpl.Time = models.Time{w}
+		templates = append(templates, &tmpl)
+	}
+
+	jr = JSONResult{Result: templates}
+	return
+}
+
+func fetchPrintTemplate(
+	_ interface{},
+	req *http.Request,
+	conn *sql.Conn,
+) (jr JSONResult, err error) {
+
+	ctx := req.Context()
+	name := mux.Vars(req)["name"]
+
+	var data pgtype.Bytea
+	err = conn.QueryRowContext(ctx, selectPrintTemplateSQL, name).Scan(&data)
+
+	switch {
+	case err == sql.ErrNoRows:
+		err = JSONError{
+			Code:    http.StatusNotFound,
+			Message: "No such template found",
+		}
+		return
+	case err != nil:
+		return
+	case data.Status != pgtype.Present:
+		err = JSONError{
+			Code:    http.StatusInternalServerError,
+			Message: "Unexpected return value from database query",
+		}
+		return
+	}
+	jr = JSONResult{Result: bytes.NewReader(data.Bytes)}
+	return
+}
+
+func createPrintTemplate(
+	input interface{},
+	req *http.Request,
+	conn *sql.Conn,
+) (jr JSONResult, err error) {
+
+	ctx := req.Context()
+	name := mux.Vars(req)["name"]
+	in := input.(*json.RawMessage)
+
+	if name == "" {
+		err = JSONError{
+			Code:    http.StatusBadRequest,
+			Message: "Template must have a none empty name",
+		}
+		return
+	}
+	if len(*in) == 0 {
+		err = JSONError{
+			Code:    http.StatusBadRequest,
+			Message: "Template must have a none empty template",
+		}
+		return
+	}
+	var tx *sql.Tx
+	if tx, err = conn.BeginTx(ctx, nil); err != nil {
+		return
+	}
+	defer tx.Rollback()
+
+	var dummy bool
+	err = tx.QueryRowContext(ctx, hasPrintTemplateSQL, name).Scan(&dummy)
+
+	switch {
+	case err == sql.ErrNoRows:
+		// This is fine.
+	case err != nil:
+		return
+	default:
+		err = JSONError{
+			Code:    http.StatusBadRequest,
+			Message: "A template with this name already exists",
+		}
+		return
+	}
+	data := pgtype.Bytea{Bytes: *in, Status: pgtype.Present}
+
+	if _, err = tx.ExecContext(ctx, insertPrintTemplateSQL, name, &data); err != nil {
+		return
+	}
+
+	if err = tx.Commit(); err != nil {
+		return
+	}
+	jr = JSONResult{
+		Code: http.StatusCreated,
+		Result: map[string]string{
+			"created": name,
+		},
+	}
+	return
+}
+
+func deletePrintTemplate(
+	_ interface{},
+	req *http.Request,
+	conn *sql.Conn,
+) (jr JSONResult, err error) {
+
+	ctx := req.Context()
+	name := mux.Vars(req)["name"]
+
+	var tx *sql.Tx
+	if tx, err = conn.BeginTx(ctx, nil); err != nil {
+		return
+	}
+	defer tx.Rollback()
+
+	var dummy bool
+	err = tx.QueryRowContext(ctx, hasPrintTemplateSQL, name).Scan(&dummy)
+
+	switch {
+	case err == sql.ErrNoRows:
+		err = JSONError{
+			Code:    http.StatusNotFound,
+			Message: "No such template found",
+		}
+		return
+	case err != nil:
+		return
+	case !dummy:
+		err = JSONError{
+			Code:    http.StatusInternalServerError,
+			Message: "Unexpected return value from database query",
+		}
+		return
+	}
+
+	if _, err = tx.ExecContext(ctx, deletePrintTemplateSQL, name); err != nil {
+		return
+	}
+
+	if err = tx.Commit(); err != nil {
+		return
+	}
+
+	jr = JSONResult{
+		Result: map[string]string{
+			"deleted": name,
+		},
+	}
+
+	return
+}
+
+func updatePrintTemplate(
+	input interface{},
+	req *http.Request,
+	conn *sql.Conn,
+) (jr JSONResult, err error) {
+
+	ctx := req.Context()
+	name := mux.Vars(req)["name"]
+	in := input.(*json.RawMessage)
+
+	if name == "" {
+		err = JSONError{
+			Code:    http.StatusBadRequest,
+			Message: "Template must have a none empty name",
+		}
+		return
+	}
+	if len(*in) == 0 {
+		err = JSONError{
+			Code:    http.StatusBadRequest,
+			Message: "Template must have a none empty template",
+		}
+		return
+	}
+	var tx *sql.Tx
+	if tx, err = conn.BeginTx(ctx, nil); err != nil {
+		return
+	}
+	defer tx.Rollback()
+
+	var dummy bool
+	err = tx.QueryRowContext(ctx, hasPrintTemplateSQL, name).Scan(&dummy)
+
+	switch {
+	case err == sql.ErrNoRows:
+		err = JSONError{
+			Code:    http.StatusNotFound,
+			Message: "No such template found",
+		}
+		return
+	case err != nil:
+		return
+	case !dummy:
+		err = JSONError{
+			Code:    http.StatusInternalServerError,
+			Message: "Unexpected return value from database query",
+		}
+		return
+	}
+	data := pgtype.Bytea{Bytes: *in, Status: pgtype.Present}
+
+	if _, err = tx.ExecContext(ctx, updatePrintTemplateSQL, name, &data); err != nil {
+		return
+	}
+
+	if err = tx.Commit(); err != nil {
+		return
+	}
+
+	jr = JSONResult{
+		Code: http.StatusOK,
+		Result: map[string]string{
+			"updated": name,
+		},
+	}
+	return
+}
--- a/pkg/controllers/routes.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/controllers/routes.go	Tue Feb 12 11:11:32 2019 +0100
@@ -95,6 +95,31 @@
 		NoConn: true,
 	}).Methods(http.MethodGet)
 
+	// Print templates
+	api.Handle("/templates/print", any(&JSONHandler{
+		Handle: listPrintTemplates,
+	})).Methods(http.MethodGet)
+
+	api.Handle("/templates/print/{name}", any(&JSONHandler{
+		Handle: fetchPrintTemplate,
+	})).Methods(http.MethodGet)
+
+	api.Handle("/templates/print/{name}", waterwayAdmin(&JSONHandler{
+		Input:  func(*http.Request) interface{} { return &json.RawMessage{} },
+		Handle: createPrintTemplate,
+		Limit:  maxPrintTemplateSize,
+	})).Methods(http.MethodPost)
+
+	api.Handle("/templates/print/{name}", waterwayAdmin(&JSONHandler{
+		Handle: deletePrintTemplate,
+	})).Methods(http.MethodDelete)
+
+	api.Handle("/templates/print/{name}", waterwayAdmin(&JSONHandler{
+		Input:  func(*http.Request) interface{} { return &json.RawMessage{} },
+		Handle: updatePrintTemplate,
+		Limit:  maxPrintTemplateSize,
+	})).Methods(http.MethodPatch)
+
 	// External proxies.
 	external := middleware.NotFound(&httputil.ReverseProxy{
 		Director:       proxyDirector(models.ExternalServices.Find),
@@ -180,6 +205,9 @@
 	api.Handle("/imports/wp", waterwayAdmin(
 		http.HandlerFunc(importWaterwayProfiles))).Methods(http.MethodPost)
 
+	api.Handle("/imports/ubn", waterwayAdmin(
+		http.HandlerFunc(importUploadedBottleneck))).Methods(http.MethodPost)
+
 	api.Handle("/imports/{kind:st}", sysAdmin(&JSONHandler{
 		Input:  importModel,
 		Handle: manualImport,
--- a/pkg/controllers/surveys.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/controllers/surveys.go	Tue Feb 12 11:11:32 2019 +0100
@@ -24,17 +24,32 @@
 )
 
 const (
+	// Use the same logic as in schema/gemma.sql to find out
+	// which is the reference gauge and which from its values is meant.
+	// The LEFT for the JOIN is necessary because we still want to list
+	// the surveys even if the corresponding value cannot be found because the
+	// depth_reference and reference_water_level strings do not match.
+	//
+	// As this information could be vary from survey entry to survey,
+	// in theory even for the same bottleneck
+	// it seems to be the right place to return it from the /surveys endpoint.
 	listSurveysSQL = `
 SELECT
   s.bottleneck_id,
   s.date_info::text,
-  bg.objname AS gauge_objname
+  s.depth_reference,
+  bg.objname AS gauge_objname,
+  r.value AS waterlevel_value
 FROM
-  ( SELECT * FROM waterway.bottlenecks AS b, waterway.gauges AS g
-    WHERE b.fk_g_fid = g.location
-  ) AS bg
-  JOIN waterway.sounding_results AS s
-ON bg.id = s.bottleneck_id
+  (
+	( SELECT * FROM waterway.bottlenecks AS b, waterway.gauges AS g
+		WHERE b.fk_g_fid = g.location
+	) AS bg
+	JOIN waterway.sounding_results AS s
+	ON bg.id = s.bottleneck_id
+  )
+LEFT JOIN waterway.gauges_reference_water_levels AS r
+ON s.depth_reference = r.reference_water_level AND bg.location = r.gauge_id
 WHERE bg.objnam=$1`
 )
 
@@ -54,18 +69,27 @@
 	}
 	defer rows.Close()
 
-	surveys := []models.Survey{}
+	surveys := []*models.Survey{}
 
+	// as we do not use the values here, we could simply the code here
+	// to work without an explicit mdels/surverys.go
+	// (like done in controllers/search.go)
 	for rows.Next() {
 		var survey models.Survey
+		var level sql.NullInt64
 		if err = rows.Scan(
 			&survey.BottleneckID,
 			&survey.DateInfo,
+			&survey.DepthReference,
 			&survey.ReferenceGauge,
+			&level,
 		); err != nil {
 			return
 		}
-		surveys = append(surveys, survey)
+		if level.Valid {
+			survey.WaterLevelValue = &level.Int64
+		}
+		surveys = append(surveys, &survey)
 	}
 
 	if err = rows.Err(); err != nil {
@@ -74,7 +98,7 @@
 
 	jr = JSONResult{
 		Result: struct {
-			Surveys []models.Survey `json:"surveys"`
+			Surveys []*models.Survey `json:"surveys"`
 		}{surveys},
 	}
 	return
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/pkg/controllers/ubnimports.go	Tue Feb 12 11:11:32 2019 +0100
@@ -0,0 +1,119 @@
+// This is Free Software under GNU Affero General Public License v >= 3.0
+// without warranty, see README.md and license for details.
+//
+// SPDX-License-Identifier: AGPL-3.0-or-later
+// License-Filename: LICENSES/AGPL-3.0.txt
+//
+// Copyright (C) 2018 by via donau
+//   – Österreichische Wasserstraßen-Gesellschaft mbH
+// Software engineering by Intevation GmbH
+//
+// Author(s):
+//  * Sascha L. Teichmann <sascha.teichmann@intevation.de>
+
+package controllers
+
+import (
+	"bufio"
+	"io"
+	"io/ioutil"
+	"log"
+	"net/http"
+	"os"
+	"path/filepath"
+	"time"
+
+	"gemma.intevation.de/gemma/pkg/auth"
+	"gemma.intevation.de/gemma/pkg/common"
+	"gemma.intevation.de/gemma/pkg/config"
+	"gemma.intevation.de/gemma/pkg/imports"
+)
+
+const (
+	maxUploadedBottleneckSize = 25 * 1024 * 1024
+	uploadBottleneckName      = "ubn"
+)
+
+func storeUploadedBottleneck(req *http.Request) (string, error) {
+
+	// Check for direct upload.
+	f, _, err := req.FormFile(uploadBottleneckName)
+	if err != nil {
+		return "", err
+	}
+	defer f.Close()
+
+	dir, err := ioutil.TempDir(config.TmpDir(), uploadBottleneckName)
+	if err != nil {
+		return "", err
+	}
+
+	o, err := os.Create(filepath.Join(dir, "data.xml"))
+	if err != nil {
+		os.RemoveAll(dir)
+		return "", err
+	}
+
+	out := bufio.NewWriter(o)
+
+	if _, err = io.Copy(out, io.LimitReader(f, maxUploadedBottleneckSize)); err != nil {
+		o.Close()
+		os.RemoveAll(dir)
+		return "", err
+	}
+
+	if err = out.Flush(); err != nil {
+		o.Close()
+		os.RemoveAll(dir)
+		return "", err
+	}
+
+	return dir, nil
+}
+
+func importUploadedBottleneck(rw http.ResponseWriter, req *http.Request) {
+
+	dir, err := storeUploadedBottleneck(req)
+	if err != nil {
+		log.Printf("error: %v\n", err)
+		http.Error(rw, "error: "+err.Error(), http.StatusInternalServerError)
+		return
+	}
+
+	ubn := &imports.UploadedBottleneck{Dir: dir}
+
+	serialized, err := common.ToJSONString(ubn)
+	if err != nil {
+		log.Printf("error: %v\n", err)
+		http.Error(rw, "error: "+err.Error(), http.StatusInternalServerError)
+		return
+	}
+
+	session, _ := auth.GetSession(req)
+
+	sendEmail := req.FormValue("email") != ""
+
+	jobID, err := imports.AddJob(
+		imports.UBNJobKind,
+		time.Time{}, // due
+		nil,         // trys
+		nil,         // wait retry
+		session.User,
+		sendEmail,
+		serialized)
+
+	if err != nil {
+		log.Printf("error: %v\n", err)
+		http.Error(rw, "error: "+err.Error(), http.StatusInternalServerError)
+		return
+	}
+
+	log.Printf("info: added import #%d to queue\n", jobID)
+
+	result := struct {
+		ID int64 `json:"id"`
+	}{
+		ID: jobID,
+	}
+	SendJSON(rw, http.StatusCreated, &result)
+}
--- a/pkg/imports/agm.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/imports/agm.go	Tue Feb 12 11:11:32 2019 +0100
@@ -21,13 +21,13 @@
 	"encoding/json"
 	"fmt"
 	"io"
+	"math"
 	"os"
 	"path/filepath"
 	"strconv"
 	"strings"
 	"time"
 
-	"gemma.intevation.de/gemma/pkg/common"
 	"gemma.intevation.de/gemma/pkg/misc"
 	"gemma.intevation.de/gemma/pkg/models"
 )
@@ -51,13 +51,7 @@
 	return "approved gauge measurements"
 }
 
-func (agmJobCreator) Create(_ JobKind, data string) (Job, error) {
-	agm := new(ApprovedGaugeMeasurements)
-	if err := common.FromJSONString(data, agm); err != nil {
-		return nil, err
-	}
-	return agm, nil
-}
+func (agmJobCreator) Create() Job { return new(ApprovedGaugeMeasurements) }
 
 func (agmJobCreator) Depends() []string {
 	return []string{
@@ -136,6 +130,30 @@
 	SourceOrganization string   `json:"source-organization"`
 }
 
+func (a *agmLine) hasDiff(b *agmLine) bool {
+	const eps = 0.00001
+	fdiff := func(x, y *float64) bool {
+		if x == nil && y == nil {
+			return false
+		}
+		if (x == nil && y != nil) || (x != nil && y == nil) {
+			return true
+		}
+		return math.Abs(*x-*y) > eps
+	}
+	return a.CountryCode != b.CountryCode ||
+		a.Sender != b.Sender ||
+		a.LanguageCode != b.LanguageCode ||
+		!a.DateIssue.Time.Equal(b.DateIssue.Time) ||
+		a.ReferenceCode != b.ReferenceCode ||
+		math.Abs(a.WaterLevel-b.WaterLevel) > eps ||
+		a.Predicted != b.Predicted ||
+		fdiff(a.ValueMin, b.ValueMin) ||
+		fdiff(a.ValueMax, b.ValueMax) ||
+		!a.DateInfo.Time.Equal(b.DateInfo.Time) ||
+		a.SourceOrganization != b.SourceOrganization
+}
+
 type agmSummaryEntry struct {
 	FKGaugeID   models.Isrs `json:"fk-gauge-id"`
 	MeasureDate timetz      `json:"measure-date"`
@@ -481,43 +499,46 @@
 			return nil, err
 		}
 
+		n := newAGMLine(
+			newCountryCode,
+			newSender,
+			newLanguageCode,
+			newDateIssue,
+			newReferenceCode,
+			newValue,
+			newPredicted,
+			newValueMin,
+			newValueMax,
+			newDateInfo,
+			newSourceOrganization,
+		)
+
 		ase := &agmSummaryEntry{
 			FKGaugeID:   *gid,
 			MeasureDate: timetz{md},
-			Versions: []*agmLine{
-				newAGMLine(
-					newCountryCode,
-					newSender,
-					newLanguageCode,
-					newDateIssue,
-					newReferenceCode,
-					newValue,
-					newPredicted,
-					newValueMin,
-					newValueMax,
-					newDateInfo,
-					newSourceOrganization,
-				),
-			},
 		}
 
-		if !newEntry {
-			ase.Versions = []*agmLine{
-				newAGMLine(
-					oldCountryCode,
-					oldSender,
-					oldLanguageCode,
-					oldDateIssue,
-					oldReferenceCode,
-					oldValue,
-					oldPredicted,
-					oldValueMin,
-					oldValueMax,
-					oldDateInfo,
-					oldSourceOrganization,
-				),
-				ase.Versions[0],
+		if newEntry {
+			ase.Versions = []*agmLine{n}
+		} else {
+			o := newAGMLine(
+				oldCountryCode,
+				oldSender,
+				oldLanguageCode,
+				oldDateIssue,
+				oldReferenceCode,
+				oldValue,
+				oldPredicted,
+				oldValueMin,
+				oldValueMax,
+				oldDateInfo,
+				oldSourceOrganization,
+			)
+			// Ignore if there is no diff.
+			if !n.hasDiff(o) {
+				continue
 			}
+			ase.Versions = []*agmLine{o, n}
 		}
 		entries = append(entries, ase)
 	}
--- a/pkg/imports/bn.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/imports/bn.go	Tue Feb 12 11:11:32 2019 +0100
@@ -21,7 +21,6 @@
 	"strconv"
 	"time"
 
-	"gemma.intevation.de/gemma/pkg/common"
 	"gemma.intevation.de/gemma/pkg/soap/ifbn"
 )
 
@@ -88,13 +87,7 @@
 
 func (bnJobCreator) AutoAccept() bool { return false }
 
-func (bnJobCreator) Create(_ JobKind, data string) (Job, error) {
-	bn := new(Bottleneck)
-	if err := common.FromJSONString(data, bn); err != nil {
-		return nil, err
-	}
-	return bn, nil
-}
+func (bnJobCreator) Create() Job { return new(Bottleneck) }
 
 func (bnJobCreator) Depends() []string {
 	return []string{
--- a/pkg/imports/dma.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/imports/dma.go	Tue Feb 12 11:11:32 2019 +0100
@@ -22,7 +22,6 @@
 	"io"
 	"time"
 
-	"gemma.intevation.de/gemma/pkg/common"
 	"gemma.intevation.de/gemma/pkg/wfs"
 )
 
@@ -51,13 +50,7 @@
 
 func (dmaJobCreator) AutoAccept() bool { return true }
 
-func (dmaJobCreator) Create(_ JobKind, data string) (Job, error) {
-	dma := new(DistanceMarksAshore)
-	if err := common.FromJSONString(data, dma); err != nil {
-		return nil, err
-	}
-	return dma, nil
-}
+func (dmaJobCreator) Create() Job { return new(DistanceMarksAshore) }
 
 func (dmaJobCreator) Depends() []string {
 	return []string{
--- a/pkg/imports/dmv.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/imports/dmv.go	Tue Feb 12 11:11:32 2019 +0100
@@ -22,7 +22,6 @@
 	"strings"
 	"time"
 
-	"gemma.intevation.de/gemma/pkg/common"
 	"gemma.intevation.de/gemma/pkg/models"
 	"gemma.intevation.de/gemma/pkg/soap"
 	"gemma.intevation.de/gemma/pkg/soap/erdms"
@@ -52,13 +51,7 @@
 
 func (dmvJobCreator) AutoAccept() bool { return true }
 
-func (dmvJobCreator) Create(_ JobKind, data string) (Job, error) {
-	dmv := new(DistanceMarksVirtual)
-	if err := common.FromJSONString(data, dmv); err != nil {
-		return nil, err
-	}
-	return dmv, nil
-}
+func (dmvJobCreator) Create() Job { return new(DistanceMarksVirtual) }
 
 func (dmvJobCreator) Depends() []string {
 	return []string{
--- a/pkg/imports/fa.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/imports/fa.go	Tue Feb 12 11:11:32 2019 +0100
@@ -21,7 +21,6 @@
 
 	"github.com/jackc/pgx/pgtype"
 
-	"gemma.intevation.de/gemma/pkg/common"
 	"gemma.intevation.de/gemma/pkg/soap/ifaf"
 )
 
@@ -156,13 +155,7 @@
 	return "fairway availability"
 }
 
-func (faJobCreator) Create(_ JobKind, data string) (Job, error) {
-	fa := new(FairwayAvailability)
-	if err := common.FromJSONString(data, fa); err != nil {
-		return nil, err
-	}
-	return fa, nil
-}
+func (faJobCreator) Create() Job { return new(FairwayAvailability) }
 
 func (faJobCreator) Depends() []string {
 	return []string{
--- a/pkg/imports/fd.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/imports/fd.go	Tue Feb 12 11:11:32 2019 +0100
@@ -17,12 +17,10 @@
 	"context"
 	"database/sql"
 	"encoding/json"
-	"errors"
 	"fmt"
 	"io"
 	"time"
 
-	"gemma.intevation.de/gemma/pkg/common"
 	"gemma.intevation.de/gemma/pkg/misc"
 	"gemma.intevation.de/gemma/pkg/wfs"
 )
@@ -76,13 +74,7 @@
 
 func (fdJobCreator) AutoAccept() bool { return false }
 
-func (fdJobCreator) Create(_ JobKind, data string) (Job, error) {
-	fd := new(FairwayDimension)
-	if err := common.FromJSONString(data, fd); err != nil {
-		return nil, err
-	}
-	return fd, nil
-}
+func (fdJobCreator) Create() Job { return new(FairwayDimension) }
 
 func (fdJobCreator) Depends() []string {
 	return []string{
@@ -95,8 +87,16 @@
 	tx *sql.Tx,
 	id int64,
 ) error {
+	// We only want to delete the features of the same LOS
+	// as the imported.
+	var los int64
+	if err := tx.QueryRowContext(ctx, fdFindLOSSQL, id).Scan(&los); err != nil {
+		// Should always return a row because import will exit as unchanged
+		// if no new features were found while inserting.
+		return err
+	}
 	// Delete the old features.
-	if _, err := tx.ExecContext(ctx, deleteFairwayDimensionSQL); err != nil {
+	if _, err := tx.ExecContext(ctx, deleteFairwayDimensionSQL, los); err != nil {
 		return err
 	}
 
@@ -118,12 +118,20 @@
 }
 
 const (
+	fdFindLOSSQL = `
+SELECT level_of_service FROM waterway.fairway_dimensions
+WHERE id IN (
+  SELECT key FROM import.track_imports
+  WHERE import_id = $1 AND
+        relation = 'waterway.fairway_dimensions'::regclass)
+LIMIT 1`
+
 	fdStageDoneSQL = `
 UPDATE waterway.fairway_dimensions SET staging_done = true
 WHERE id IN (
-  SELECT key from import.track_imports
+  SELECT key FROM import.track_imports
   WHERE import_id = $1 AND
-		relation = 'waterway.fairway_dimensions'::regclass)`
+        relation = 'waterway.fairway_dimensions'::regclass)`
 
 	deleteFairwayDimensionSQL = `
 WITH resp AS (
@@ -135,10 +143,11 @@
 DELETE FROM waterway.fairway_dimensions
 WHERE ST_Covers(
   (SELECT a FROM resp),
-  ST_Transform(area::geometry, (SELECT t FROM resp))) AND staging_done = true
-`
+  ST_Transform(area::geometry, (SELECT t FROM resp)))
+  AND staging_done
+  AND level_of_service = $1::smallint`
 
-	// The ST_MakeValid (line125) and ST_Buffer (line124) are a workarround to
+	// The ST_MakeValid and ST_Buffer below are a workarround to
 	// avoid errors due to reprojection.
 	insertFairwayDimensionSQL = `
 WITH resp AS (
@@ -327,9 +336,7 @@
 	}
 
 	if features == 0 {
-		err := errors.New("No features found")
-		feedback.Error("%v", err)
-		return nil, err
+		return nil, UnchangedError("No features found")
 	}
 
 	if err = tx.Commit(); err == nil {
--- a/pkg/imports/gm.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/imports/gm.go	Tue Feb 12 11:11:32 2019 +0100
@@ -20,7 +20,6 @@
 	"strings"
 	"time"
 
-	"gemma.intevation.de/gemma/pkg/common"
 	"gemma.intevation.de/gemma/pkg/models"
 	"gemma.intevation.de/gemma/pkg/soap/nts"
 )
@@ -116,17 +115,9 @@
 	RegisterJobCreator(GMJobKind, gmJobCreator{})
 }
 
-func (gmJobCreator) Description() string {
-	return "gauge measurements"
-}
+func (gmJobCreator) Description() string { return "gauge measurements" }
 
-func (gmJobCreator) Create(_ JobKind, data string) (Job, error) {
-	gm := new(GaugeMeasurement)
-	if err := common.FromJSONString(data, gm); err != nil {
-		return nil, err
-	}
-	return gm, nil
-}
+func (gmJobCreator) Create() Job { return new(GaugeMeasurement) }
 
 func (gmJobCreator) Depends() []string {
 	return []string{
--- a/pkg/imports/queue.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/imports/queue.go	Tue Feb 12 11:11:32 2019 +0100
@@ -27,6 +27,7 @@
 	"github.com/jackc/pgx/pgtype"
 
 	"gemma.intevation.de/gemma/pkg/auth"
+	"gemma.intevation.de/gemma/pkg/common"
 	"gemma.intevation.de/gemma/pkg/config"
 )
 
@@ -73,11 +74,7 @@
 		// Description is the long name of the import.
 		Description() string
 		// Create build the actual job.
-		// kind is the name of the import type.
-		// data is a free form string to pass arguments to the creation
-		// process. This is useful to tell e.g. where to find data
-		// in the file system to be used for importing.
-		Create(kind JobKind, data string) (Job, error)
+		Create() Job
 		// Depends returns a list of ressources locked by this type of import.
 		// Imports are run concurrently if they have disjoint sets
 		// of dependencies.
@@ -589,8 +586,8 @@
 				}
 			}()
 
-			job, err := jc.Create(idj.kind, idj.data)
-			if err != nil {
+			job := jc.Create()
+			if err := common.FromJSONString(idj.data, job); err != nil {
 				errorAndFail(idj.id, "failed to create job for import #%d: %v",
 					idj.id, err)
 				return
--- a/pkg/imports/sr.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/imports/sr.go	Tue Feb 12 11:11:32 2019 +0100
@@ -77,13 +77,7 @@
 
 func (srJobCreator) AutoAccept() bool { return false }
 
-func (srJobCreator) Create(_ JobKind, data string) (Job, error) {
-	sr := new(SoundingResult)
-	if err := common.FromJSONString(data, sr); err != nil {
-		return nil, err
-	}
-	return sr, nil
-}
+func (srJobCreator) Create() Job { return new(SoundingResult) }
 
 func (srJobCreator) Depends() []string {
 	return []string{
--- a/pkg/imports/st.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/imports/st.go	Tue Feb 12 11:11:32 2019 +0100
@@ -19,7 +19,6 @@
 	"errors"
 	"time"
 
-	"gemma.intevation.de/gemma/pkg/common"
 	"gemma.intevation.de/gemma/pkg/models"
 )
 
@@ -46,13 +45,7 @@
 
 func (stJobCreator) AutoAccept() bool { return false }
 
-func (stJobCreator) Create(_ JobKind, data string) (Job, error) {
-	st := new(Stretch)
-	if err := common.FromJSONString(data, st); err != nil {
-		return nil, err
-	}
-	return st, nil
-}
+func (stJobCreator) Create() Job { return new(Stretch) }
 
 func (stJobCreator) Depends() []string {
 	return []string{
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/pkg/imports/ubn.go	Tue Feb 12 11:11:32 2019 +0100
@@ -0,0 +1,73 @@
+// This is Free Software under GNU Affero General Public License v >= 3.0
+// without warranty, see README.md and license for details.
+//
+// SPDX-License-Identifier: AGPL-3.0-or-later
+// License-Filename: LICENSES/AGPL-3.0.txt
+//
+// Copyright (C) 2018 by via donau
+//   – Österreichische Wasserstraßen-Gesellschaft mbH
+// Software engineering by Intevation GmbH
+//
+// Author(s):
+//  * Sascha L. Teichmann <sascha.teichmann@intevation.de>
+
+package imports
+
+import (
+	"context"
+	"database/sql"
+	"errors"
+	"os"
+)
+
+type UploadedBottleneck struct {
+	Dir string `json:"dir"`
+}
+
+// UBNJobKind is the import queue type identifier.
+const UBNJobKind JobKind = "ubn"
+
+type ubnJobCreator struct{}
+
+func init() {
+	RegisterJobCreator(UBNJobKind, ubnJobCreator{})
+}
+
+func (ubnJobCreator) Description() string { return "uploaded bottlenecks" }
+
+func (ubnJobCreator) AutoAccept() bool { return false }
+
+func (ubnJobCreator) Create() Job { return new(UploadedBottleneck) }
+
+func (ubnJobCreator) Depends() []string {
+	return []string{
+		"gauges",
+		"bottlenecks",
+	}
+}
+
+// StageDone moves the imported bottleneck out of the staging area.
+func (ubnJobCreator) StageDone(
+	ctx context.Context,
+	tx *sql.Tx,
+	id int64,
+) error {
+	// TODO: Implement me!
+	return nil
+}
+
+// CleanUp of a uploaded bottleneck import removes the temp dir.
+func (ubn *UploadedBottleneck) CleanUp() error {
+	return os.RemoveAll(ubn.Dir)
+}
+
+// Do executes the actual uploaded bottleneck import.
+func (ubn *UploadedBottleneck) Do(
+	ctx context.Context,
+	importID int64,
+	conn *sql.Conn,
+	feedback Feedback,
+) (interface{}, error) {
+	// TODO: Implement me!
+	return nil, errors.New("Not implemented, yet!")
+}
--- a/pkg/imports/wa.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/imports/wa.go	Tue Feb 12 11:11:32 2019 +0100
@@ -23,7 +23,6 @@
 	"strconv"
 	"time"
 
-	"gemma.intevation.de/gemma/pkg/common"
 	"gemma.intevation.de/gemma/pkg/wfs"
 )
 
@@ -53,13 +52,7 @@
 
 func (waJobCreator) AutoAccept() bool { return true }
 
-func (waJobCreator) Create(_ JobKind, data string) (Job, error) {
-	wa := new(WaterwayArea)
-	if err := common.FromJSONString(data, wa); err != nil {
-		return nil, err
-	}
-	return wa, nil
-}
+func (waJobCreator) Create() Job { return new(WaterwayArea) }
 
 func (waJobCreator) Depends() []string {
 	return []string{
--- a/pkg/imports/wg.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/imports/wg.go	Tue Feb 12 11:11:32 2019 +0100
@@ -23,7 +23,6 @@
 
 	"github.com/jackc/pgx/pgtype"
 
-	"gemma.intevation.de/gemma/pkg/common"
 	"gemma.intevation.de/gemma/pkg/models"
 	"gemma.intevation.de/gemma/pkg/soap"
 	"gemma.intevation.de/gemma/pkg/soap/erdms"
@@ -53,13 +52,7 @@
 
 func (wgJobCreator) AutoAccept() bool { return true }
 
-func (wgJobCreator) Create(_ JobKind, data string) (Job, error) {
-	wg := new(WaterwayGauge)
-	if err := common.FromJSONString(data, wg); err != nil {
-		return nil, err
-	}
-	return wg, nil
-}
+func (wgJobCreator) Create() Job { return new(WaterwayGauge) }
 
 func (wgJobCreator) Depends() []string {
 	return []string{
--- a/pkg/imports/wp.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/imports/wp.go	Tue Feb 12 11:11:32 2019 +0100
@@ -30,7 +30,6 @@
 
 	"github.com/jackc/pgx/pgtype"
 
-	"gemma.intevation.de/gemma/pkg/common"
 	"gemma.intevation.de/gemma/pkg/misc"
 	"gemma.intevation.de/gemma/pkg/models"
 	"gemma.intevation.de/gemma/pkg/wfs"
@@ -61,13 +60,7 @@
 	RegisterJobCreator(WPJobKind, wpJobCreator{})
 }
 
-func (wpJobCreator) Create(_ JobKind, data string) (Job, error) {
-	wp := new(WaterwayProfiles)
-	if err := common.FromJSONString(data, wp); err != nil {
-		return nil, err
-	}
-	return wp, nil
-}
+func (wpJobCreator) Create() Job { return new(WaterwayProfiles) }
 
 func (wpJobCreator) AutoAccept() bool { return false }
 
@@ -96,6 +89,11 @@
 INSERT INTO wp_geoms (geom) VALUES (
   ST_Transform(ST_GeomFromWKB($1, $2::int), 4326)
 )`
+	hasDistanceMarkSQL = `
+SELECT true FROM waterway.distance_marks_virtual
+WHERE location_code =
+  ($1::char(2), $2::char(3), $3::char(5), $4::char(5), $5::int)
+LIMIT 1`
 
 	insertWaterwayProfileSQL = `
 INSERT INTO waterway.waterway_profiles (
@@ -172,7 +170,7 @@
 	summary, err := wp.processCSV(
 		ctx, importID, tx, start, feedback)
 	if err != nil {
-		return nil, fmt.Errorf("error processing CVS: %v", err)
+		return nil, fmt.Errorf("error processing CSV: %v", err)
 	}
 
 	if err := tx.Commit(); err != nil {
@@ -430,6 +428,12 @@
 	}
 	defer trackStmt.Close()
 
+	hasDistanceMarkStmt, err := tx.PrepareContext(ctx, hasDistanceMarkSQL)
+	if err != nil {
+		return nil, err
+	}
+	defer hasDistanceMarkStmt.Close()
+
 	var ids []int64
 
 lines:
@@ -450,6 +454,26 @@
 				line, err)
 		}
 
+		var dummy bool
+		err = hasDistanceMarkStmt.QueryRowContext(
+			ctx,
+			location.CountryCode,
+			location.LoCode,
+			location.FairwaySection,
+			location.Orc,
+			location.Hectometre,
+		).Scan(&dummy)
+
+		switch {
+		case err == sql.ErrNoRows:
+			feedback.Warn("No virtual distance mark found for %s.", location)
+			continue lines
+		case err != nil:
+			return nil, err
+		case !dummy:
+			return nil, errors.New("unexpected result form database")
+		}
+
 		validFromTime, err := parseDate(row[validFromIdx])
 		if err != nil {
 			return nil, fmt.Errorf(
--- a/pkg/imports/wx.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/imports/wx.go	Tue Feb 12 11:11:32 2019 +0100
@@ -22,7 +22,6 @@
 	"io"
 	"time"
 
-	"gemma.intevation.de/gemma/pkg/common"
 	"gemma.intevation.de/gemma/pkg/wfs"
 )
 
@@ -52,13 +51,7 @@
 
 func (wxJobCreator) AutoAccept() bool { return true }
 
-func (wxJobCreator) Create(_ JobKind, data string) (Job, error) {
-	wx := new(WaterwayAxis)
-	if err := common.FromJSONString(data, wx); err != nil {
-		return nil, err
-	}
-	return wx, nil
-}
+func (wxJobCreator) Create() Job { return new(WaterwayAxis) }
 
 func (wxJobCreator) Depends() []string {
 	return []string{
--- a/pkg/models/common.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/models/common.go	Tue Feb 12 11:11:32 2019 +0100
@@ -34,24 +34,42 @@
 
 type (
 	Date struct{ time.Time }
+	Time struct{ time.Time }
+
 	// Country is a valid country 2 letter code.
 	Country string
 	// UniqueCountries is a list of unique countries.
 	UniqueCountries []Country
 )
 
-func (srd Date) MarshalJSON() ([]byte, error) {
-	return json.Marshal(srd.Format(common.DateFormat))
+func (d Date) MarshalJSON() ([]byte, error) {
+	return json.Marshal(d.Format(common.DateFormat))
 }
 
-func (srd *Date) UnmarshalJSON(data []byte) error {
+func (d *Date) UnmarshalJSON(data []byte) error {
 	var s string
 	if err := json.Unmarshal(data, &s); err != nil {
 		return err
 	}
-	d, err := time.Parse(common.DateFormat, s)
+	d2, err := time.Parse(common.DateFormat, s)
 	if err == nil {
-		*srd = Date{d}
+		*d = Date{d2}
+	}
+	return err
+}
+
+func (t Time) MarshalJSON() ([]byte, error) {
+	return json.Marshal(t.Format(common.TimeFormat))
+}
+
+func (t *Time) UnmarshalJSON(data []byte) error {
+	var s string
+	if err := json.Unmarshal(data, &s); err != nil {
+		return err
+	}
+	t2, err := time.Parse(common.TimeFormat, s)
+	if err == nil {
+		*t = Time{t2}
 	}
 	return err
 }
--- a/pkg/models/import.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/models/import.go	Tue Feb 12 11:11:32 2019 +0100
@@ -30,6 +30,7 @@
 		User     string      `json:"user"`
 		Signer   string      `json:"signer,omitempty"`
 		Summary  interface{} `json:"summary,omitempty"`
+		Warnings bool        `json:"warnings,omitempty"`
 	}
 
 	ImportLogEntry struct {
--- a/pkg/models/surveys.go	Tue Feb 12 10:53:01 2019 +0100
+++ b/pkg/models/surveys.go	Tue Feb 12 11:11:32 2019 +0100
@@ -15,8 +15,10 @@
 
 type (
 	Survey struct {
-		BottleneckID   string `json:"bottleneck_id"`
-		DateInfo       string `json:"date_info"`
-		ReferenceGauge string `json:"gauge_objname"`
+		BottleneckID    string `json:"bottleneck_id"`
+		DateInfo        string `json:"date_info"`
+		DepthReference  string `json:"depth_reference"`
+		ReferenceGauge  string `json:"gauge_objname"`
+		WaterLevelValue *int64 `json:"waterlevel_value,omitempty"`
 	}
 )
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/pkg/soap/validate.go	Tue Feb 12 11:11:32 2019 +0100
@@ -0,0 +1,151 @@
+// This is Free Software under GNU Affero General Public License v >= 3.0
+// without warranty, see README.md and license for details.
+//
+// SPDX-License-Identifier: AGPL-3.0-or-later
+// License-Filename: LICENSES/AGPL-3.0.txt
+//
+// Copyright (C) 2018 by via donau
+//   – Österreichische Wasserstraßen-Gesellschaft mbH
+// Software engineering by Intevation GmbH
+//
+// Author(s):
+//  * Sascha L. Teichmann <sascha.teichmann@intevation.de>
+
+package soap
+
+import (
+	"bytes"
+	"encoding/xml"
+	"fmt"
+	"io"
+	"io/ioutil"
+	"os"
+	"os/exec"
+	"path/filepath"
+	"strings"
+
+	"golang.org/x/net/html/charset"
+
+	"gemma.intevation.de/gemma/pkg/config"
+)
+
+const linter = "xmllint"
+
+type (
+	ValidationError string
+	foundError      string
+)
+
+func (ef foundError) Error() string {
+	return string(ef)
+}
+
+func (ve ValidationError) Error() string {
+	return string(ve)
+}
+
+func FindSchema(name string) (string, error) {
+	name = strings.ToLower(name)
+	config.WaitReady()
+	for _, root := range filepath.SplitList(config.SchemaDirs()) {
+		err := filepath.Walk(root, func(path string, info os.FileInfo, err error) error {
+			if err != nil {
+				return err
+			}
+			if info == nil {
+				return nil
+			}
+			if info.Mode().IsRegular() && strings.ToLower(info.Name()) == name {
+				return foundError(path)
+			}
+			return nil
+		})
+		if path, ok := err.(foundError); ok {
+			return string(path), nil
+		}
+		if err != nil {
+			return "", err
+		}
+	}
+	return "", nil
+}
+
+func ValidateFile(fname, schema string, dst interface{}) error {
+	f, err := os.Open(fname)
+	if err != nil {
+		return err
+	}
+	defer f.Close()
+	return Validate(f, schema, dst)
+}
+
+func Validate(r io.Reader, schema string, dst interface{}) error {
+	schemaPath, err := FindSchema(schema)
+	if err != nil {
+		return err
+	}
+	if schemaPath == "" {
+		return fmt.Errorf("no schema file '%s' found", schema)
+	}
+	linterPath, err := exec.LookPath(linter)
+	if err != nil {
+		return err
+	}
+
+	type envelope struct {
+		_    xml.Name `xml:"http://schemas.xmlsoap.org/soap/envelope/ Envelope"`
+		Body *struct {
+			Inner []byte `xml:",innerxml"`
+		} `xml:"http://schemas.xmlsoap.org/soap/envelope/ Body"`
+	}
+
+	content, err := ioutil.ReadAll(r)
+	if err != nil {
+		return err
+	}
+
+	dec := xml.NewDecoder(bytes.NewReader(content))
+	dec.CharsetReader = charset.NewReaderLabel
+
+	var env envelope
+	if err := dec.Decode(&env); err != nil {
+		return err
+	}
+
+	// It has a body -> throw envelope away.
+	if env.Body != nil && len(env.Body.Inner) > 0 {
+		content = env.Body.Inner
+	}
+
+	cmd := exec.Command(
+		linterPath,
+		"--schema", schemaPath,
+		"--noout",
+		"-")
+
+	var stderr bytes.Buffer
+
+	cmd.Stdin = bytes.NewReader(content)
+	cmd.Stderr = &stderr
+	cmd.Stdout = ioutil.Discard
+
+	if err := cmd.Start(); err != nil {
+		return err
+	}
+
+	if err := cmd.Wait(); err != nil {
+		if err2, ok := err.(*exec.ExitError); ok {
+			if !err2.Success() {
+				return ValidationError(stderr.String())
+			}
+		}
+		return err
+	}
+
+	// Validation successful -> Deserialize.
+
+	dec = xml.NewDecoder(bytes.NewReader(content))
+	dec.CharsetReader = charset.NewReaderLabel
+
+	return dec.Decode(dst)
+}
--- a/schema/auth.sql	Tue Feb 12 10:53:01 2019 +0100
+++ b/schema/auth.sql	Tue Feb 12 11:11:32 2019 +0100
@@ -40,7 +40,8 @@
 -- imported data due to historicisation? Special tables like
 -- import_configuration will further need UPDATE and DELETE privileges.
 GRANT INSERT, UPDATE, DELETE ON
-    users.templates, users.user_templates TO waterway_admin;
+    users.templates TO waterway_admin;
+    -- users.templates, users.user_templates TO waterway_admin;
 
 GRANT USAGE ON SCHEMA import TO waterway_admin;
 GRANT SELECT, INSERT ON ALL TABLES IN SCHEMA import TO waterway_admin;
@@ -104,14 +105,14 @@
 $$;
 
 -- templates
-CREATE POLICY user_templates ON users.user_templates FOR ALL TO waterway_user
-    USING (username IN(SELECT username FROM users.list_users));
-ALTER TABLE users.user_templates ENABLE ROW LEVEL SECURITY;
+-- CREATE POLICY user_templates ON users.user_templates FOR ALL TO waterway_user
+--    USING (username IN(SELECT username FROM users.list_users));
+-- ALTER TABLE users.user_templates ENABLE ROW LEVEL SECURITY;
 
-CREATE POLICY user_templates ON users.templates FOR ALL TO waterway_user
-    USING (template_name IN(SELECT template_name FROM users.user_templates))
-    WITH CHECK (true);
-ALTER TABLE users.templates ENABLE ROW LEVEL SECURITY;
+-- CREATE POLICY user_templates ON users.templates FOR ALL TO waterway_user
+--     USING (template_name IN(SELECT template_name FROM users.user_templates))
+--     WITH CHECK (true);
+-- ALTER TABLE users.templates ENABLE ROW LEVEL SECURITY;
 
 --
 -- RLS policies for waterway_admin
--- a/schema/auth_tests.sql	Tue Feb 12 10:53:01 2019 +0100
+++ b/schema/auth_tests.sql	Tue Feb 12 11:11:32 2019 +0100
@@ -36,16 +36,16 @@
     $$,
     'Only staged data should be visible');
 
-SELECT isnt_empty($$
-    SELECT * FROM users.templates
-    $$,
-    'User should see templates associated to him');
-SELECT is_empty($$
-    SELECT * FROM users.templates
-        JOIN users.user_templates USING (template_name)
-        WHERE username <> current_user
-    $$,
-    'User should only see templates associated to him');
+--SELECT isnt_empty($$
+--    SELECT * FROM users.templates
+--    $$,
+--    'User should see templates associated to him');
+--SELECT is_empty($$
+--    SELECT * FROM users.templates
+--        JOIN users.user_templates USING (template_name)
+--        WHERE username <> current_user
+--    $$,
+--    'User should only see templates associated to him');
 
 --
 -- Run tests as waterway administrator
@@ -79,26 +79,26 @@
     'Waterway admin cannot insert data outside his region');
 
 -- template management
-SELECT isnt_empty($$
-    SELECT * FROM users.templates
-        JOIN users.user_templates USING (template_name)
-        WHERE username <> current_user
-    $$,
-    'Waterway admin should see templates of other users');
+--SELECT isnt_empty($$
+--    SELECT * FROM users.templates
+--        JOIN users.user_templates USING (template_name)
+--        WHERE username <> current_user
+--    $$,
+--    'Waterway admin should see templates of other users');
 
-SELECT lives_ok($$
-    INSERT INTO users.templates (template_name, template_data)
-        VALUES ('New AT', '\x');
-        INSERT INTO users.user_templates
-        VALUES ('test_user_at', 'New AT')
-    $$,
-    'Waterway admin can add templates for users in his country');
+--SELECT lives_ok($$
+--    INSERT INTO users.templates (template_name, template_data)
+--        VALUES ('New AT', '\x');
+--        INSERT INTO users.user_templates
+--        VALUES ('test_user_at', 'New AT')
+--    $$,
+--    'Waterway admin can add templates for users in his country');
 
-SELECT throws_ok($$
-    INSERT INTO users.user_templates VALUES ('waterway_user2', 'AT')
-    $$,
-    42501, NULL,
-    'Waterway admin cannot add template for other country');
+--SELECT throws_ok($$
+--    INSERT INTO users.user_templates VALUES ('waterway_user2', 'AT')
+--    $$,
+--    42501, NULL,
+--    'Waterway admin cannot add template for other country');
 
 SELECT isnt_empty($$
     UPDATE users.templates SET template_data = '\xDABE'
--- a/schema/demo-data/published_services.sql	Tue Feb 12 10:53:01 2019 +0100
+++ b/schema/demo-data/published_services.sql	Tue Feb 12 11:11:32 2019 +0100
@@ -19,4 +19,5 @@
     ('waterway.bottlenecks_geoserver'),
     ('waterway.bottleneck_overview'),
     ('waterway.waterway_axis'),
-    ('waterway.waterway_area')
+    ('waterway.waterway_area'),
+    ('waterway.waterway_profiles')
--- a/schema/gemma.sql	Tue Feb 12 10:53:01 2019 +0100
+++ b/schema/gemma.sql	Tue Feb 12 11:11:32 2019 +0100
@@ -4,13 +4,14 @@
 -- SPDX-License-Identifier: AGPL-3.0-or-later
 -- License-Filename: LICENSES/AGPL-3.0.txt
 
--- Copyright (C) 2018 by via donau
+-- Copyright (C) 2018,2019 by via donau
 --   – Österreichische Wasserstraßen-Gesellschaft mbH
 -- Software engineering by Intevation GmbH
 
 -- Author(s):
 --  * Tom Gottfried <tom@intevation.de>
 --  * Sascha Teichmann <sascha.teichmann@intevation.de>
+--  * Sascha Wilde <sascha.wilde@intevation.de>
 
 BEGIN;
 
@@ -188,13 +189,13 @@
     CREATE TRIGGER templates_date_info BEFORE UPDATE ON templates
         FOR EACH ROW EXECUTE PROCEDURE update_date_info()
 
-    CREATE TABLE user_templates (
-        username varchar NOT NULL
-            REFERENCES internal.user_profiles
-                ON DELETE CASCADE ON UPDATE CASCADE,
-        template_name varchar NOT NULL REFERENCES templates ON DELETE CASCADE,
-        PRIMARY KEY (username, template_name)
-    )
+    -- CREATE TABLE user_templates (
+    --    username varchar NOT NULL
+    --        REFERENCES internal.user_profiles
+    --            ON DELETE CASCADE ON UPDATE CASCADE,
+    --    template_name varchar NOT NULL REFERENCES templates ON DELETE CASCADE,
+    --    PRIMARY KEY (username, template_name)
+    --)
 ;
 ALTER TABLE internal.user_profiles ADD
     country char(2) NOT NULL REFERENCES users.responsibility_areas;
@@ -292,9 +293,6 @@
         -- a non-staged fk_gauge_id/measure_date pair.
         UNIQUE (fk_gauge_id, measure_date, staging_done)
     )
-    CREATE TRIGGER gauge_measurements_date_info
-        BEFORE UPDATE ON gauge_measurements
-        FOR EACH ROW EXECUTE PROCEDURE update_date_info()
 
     CREATE TABLE waterway_axis (
         id int PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY,
@@ -329,7 +327,8 @@
     -- At least geoserver-2.13.2 does not serve type geography correctly
     -- and does not serve the location_code as isrs type
     CREATE VIEW distance_marks_geoserver AS
-        SELECT isrs_asText(location_code),
+        SELECT location_code,
+               isrs_asText(location_code) AS location,
                geom::Geometry(POINT, 4326),
                related_enc,
                (location_code).hectometre
@@ -397,8 +396,8 @@
 
     CREATE TABLE waterway_profiles (
         id int PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY,
-        location isrs NOT NULL,
-        geom geography(linestring, 4326), -- TODO: NOT NIL
+        location isrs NOT NULL REFERENCES distance_marks_virtual,
+        geom geography(linestring, 4326),
         validity tstzrange,
         lnwl double precision,
         mwl double precision,
--- a/schema/tap_tests_data.sql	Tue Feb 12 10:53:01 2019 +0100
+++ b/schema/tap_tests_data.sql	Tue Feb 12 11:11:32 2019 +0100
@@ -90,8 +90,8 @@
 
 INSERT INTO users.templates (template_name, template_data)
     VALUES ('AT', '\x'), ('RO', '\x');
-INSERT INTO users.user_templates
-    VALUES ('test_user_at', 'AT'), ('test_user_ro', 'RO');
+--INSERT INTO users.user_templates
+--    VALUES ('test_user_at', 'AT'), ('test_user_ro', 'RO');
 
 WITH
 job AS (