Mercurial > gemma
view client/src/components/importoverview/StretchDetails.vue @ 2945:ab771ea5e4fe
client: importoverview: improved display of date interval
author | Markus Kottlaender <markus@intevation.de> |
---|---|
date | Fri, 05 Apr 2019 10:37:58 +0200 |
parents | 80815b0a665c |
children | b74ebeb2bdc8 |
line wrap: on
line source
<template> <div> <a @click="zoomToStretch()" class="text-info pointer">{{ details.summary.stretch }}</a> </div> </template> <script> /* 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): * Thomas Junk <thomas.junk@intevation.de> */ import { displayError } from "@/lib/errors.js"; import { LAYERS } from "@/store/map.js"; import { mapState } from "vuex"; export default { name: "stretchdetails", props: ["entry"], mounted() { this.$store.commit("imports/hideAdditionalInfo"); }, computed: { ...mapState("imports", ["showAdditional", "details"]) }, methods: { moveToExtent(feature) { this.$store.commit("map/moveToExtent", { feature: feature, zoom: 17, preventZoomOut: true }); }, zoomToStretch() { const name = this.details.summary.stretch; this.$store.commit("map/setLayerVisible", LAYERS.STRETCHES); this.$store .dispatch("imports/loadStretch", name) .then(response => { if (response.data.features.length < 1) throw new Error("no feaures found for: " + name); this.moveToExtent(response.data.features[0]); }) .catch(error => { console.log(error); const { status, data } = error.response; displayError({ title: this.$gettext("Backend Error"), message: `${status}: ${data.message || data}` }); }); } } }; </script> <style></style>