annotate client/src/components/stretches/Stretches.vue @ 4356:5356fd2ea3f6

Identify: legend shows reference values from Nash Sutcliffe
author Thomas Junk <thomas.junk@intevation.de>
date Mon, 09 Sep 2019 15:54:48 +0200
parents 086640dc0fba
children 024b16a1c253
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
1 <template>
3281
439e1865a2d2 client: define stretches/imports: code cleanup / style improvements
Markus Kottlaender <markus@intevation.de>
parents: 3276
diff changeset
2 <div class="d-flex flex-column">
3289
c2cba529658d client: define stretches: seperated list and form into two components
Markus Kottlaender <markus@intevation.de>
parents: 3281
diff changeset
3 <UIBoxHeader icon="road" :title="title" :closeCallback="$parent.close" />
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
4 <div class="position-relative">
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
5 <UISpinnerOverlay v-if="loading" />
3289
c2cba529658d client: define stretches: seperated list and form into two components
Markus Kottlaender <markus@intevation.de>
parents: 3281
diff changeset
6 <StretchForm v-if="showForm" :editStretch="editStretch" />
c2cba529658d client: define stretches: seperated list and form into two components
Markus Kottlaender <markus@intevation.de>
parents: 3281
diff changeset
7 <div v-else>
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
8 <UITableHeader
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
9 :columns="[
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
10 { id: 'properties.name', title: `${nameLabel}`, class: 'col-4' },
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
11 {
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
12 id: 'properties.date_info',
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
13 title: `${dateLabel}`,
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
14 class: 'col-2'
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
15 },
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
16 {
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
17 id: 'properties.source_organization',
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
18 title: `${sourceorganizationLabel}`,
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
19 class: 'col-3'
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
20 }
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
21 ]"
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
22 />
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
23 <UITableBody
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
24 :data="filteredStretches() | sortTable(sortColumn, sortDirection)"
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
25 >
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
26 <template v-slot:row="{ item: stretch }">
3281
439e1865a2d2 client: define stretches/imports: code cleanup / style improvements
Markus Kottlaender <markus@intevation.de>
parents: 3276
diff changeset
27 <div class="py-1 px-2 col-4">
3276
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
28 <a @click="moveMapToStretch(stretch)" href="#">
3265
f92f7c9df392 client: define stretches: fixed editing stretches
Markus Kottlaender <markus@intevation.de>
parents: 3263
diff changeset
29 {{ stretch.properties.name }}
f92f7c9df392 client: define stretches: fixed editing stretches
Markus Kottlaender <markus@intevation.de>
parents: 3263
diff changeset
30 </a>
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
31 </div>
3281
439e1865a2d2 client: define stretches/imports: code cleanup / style improvements
Markus Kottlaender <markus@intevation.de>
parents: 3276
diff changeset
32 <div class="py-1 px-2 col-2">
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
33 {{ stretch.properties.date_info | surveyDate }}
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
34 </div>
3281
439e1865a2d2 client: define stretches/imports: code cleanup / style improvements
Markus Kottlaender <markus@intevation.de>
parents: 3276
diff changeset
35 <div class="py-1 px-2 col-3">
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
36 {{ stretch.properties.source_organization }}
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
37 </div>
3281
439e1865a2d2 client: define stretches/imports: code cleanup / style improvements
Markus Kottlaender <markus@intevation.de>
parents: 3276
diff changeset
38 <div class="py-1 px-2 col text-right">
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
39 <button
3276
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
40 v-if="isInStaging(stretch.properties.name)"
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
41 @click="gotoStaging(stretch.properties.name)"
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
42 class="btn btn-xs btn-danger mr-1"
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
43 >
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
44 <font-awesome-icon
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
45 icon="exclamation-triangle"
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
46 fixed-width
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
47 v-tooltip="reviewTooltip"
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
48 />
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
49 </button>
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
50 <button
4337
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
51 class="btn btn-xs btn-dark mr-2"
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
52 @click="download(stretch)"
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
53 >
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
54 <font-awesome-icon icon="download" fixed-width />
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
55 </button>
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
56 <button
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
57 class="btn btn-xs btn-dark"
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
58 @click="deleteStretch(stretch)"
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
59 >
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
60 <font-awesome-icon icon="trash" fixed-width />
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
61 </button>
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
62 </div>
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
63 </template>
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
64 </UITableBody>
3281
439e1865a2d2 client: define stretches/imports: code cleanup / style improvements
Markus Kottlaender <markus@intevation.de>
parents: 3276
diff changeset
65 <div class="text-right p-2 border-top">
3289
c2cba529658d client: define stretches: seperated list and form into two components
Markus Kottlaender <markus@intevation.de>
parents: 3281
diff changeset
66 <button
c2cba529658d client: define stretches: seperated list and form into two components
Markus Kottlaender <markus@intevation.de>
parents: 3281
diff changeset
67 @click="
c2cba529658d client: define stretches: seperated list and form into two components
Markus Kottlaender <markus@intevation.de>
parents: 3281
diff changeset
68 showForm = true;
c2cba529658d client: define stretches: seperated list and form into two components
Markus Kottlaender <markus@intevation.de>
parents: 3281
diff changeset
69 editStretch = null;
c2cba529658d client: define stretches: seperated list and form into two components
Markus Kottlaender <markus@intevation.de>
parents: 3281
diff changeset
70 "
c2cba529658d client: define stretches: seperated list and form into two components
Markus Kottlaender <markus@intevation.de>
parents: 3281
diff changeset
71 class="btn btn-sm btn-info"
c2cba529658d client: define stretches: seperated list and form into two components
Markus Kottlaender <markus@intevation.de>
parents: 3281
diff changeset
72 >
3281
439e1865a2d2 client: define stretches/imports: code cleanup / style improvements
Markus Kottlaender <markus@intevation.de>
parents: 3276
diff changeset
73 <translate>New stretch</translate>
439e1865a2d2 client: define stretches/imports: code cleanup / style improvements
Markus Kottlaender <markus@intevation.de>
parents: 3276
diff changeset
74 </button>
439e1865a2d2 client: define stretches/imports: code cleanup / style improvements
Markus Kottlaender <markus@intevation.de>
parents: 3276
diff changeset
75 </div>
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
76 </div>
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
77 </div>
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
78 </div>
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
79 </template>
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
80
3281
439e1865a2d2 client: define stretches/imports: code cleanup / style improvements
Markus Kottlaender <markus@intevation.de>
parents: 3276
diff changeset
81 <style lang="sass" scoped>
439e1865a2d2 client: define stretches/imports: code cleanup / style improvements
Markus Kottlaender <markus@intevation.de>
parents: 3276
diff changeset
82 .input-button
439e1865a2d2 client: define stretches/imports: code cleanup / style improvements
Markus Kottlaender <markus@intevation.de>
parents: 3276
diff changeset
83 border-top-left-radius: 0
439e1865a2d2 client: define stretches/imports: code cleanup / style improvements
Markus Kottlaender <markus@intevation.de>
parents: 3276
diff changeset
84 border-bottom-left-radius: 0
439e1865a2d2 client: define stretches/imports: code cleanup / style improvements
Markus Kottlaender <markus@intevation.de>
parents: 3276
diff changeset
85 right: 0
439e1865a2d2 client: define stretches/imports: code cleanup / style improvements
Markus Kottlaender <markus@intevation.de>
parents: 3276
diff changeset
86 height: 31px
439e1865a2d2 client: define stretches/imports: code cleanup / style improvements
Markus Kottlaender <markus@intevation.de>
parents: 3276
diff changeset
87 </style>
439e1865a2d2 client: define stretches/imports: code cleanup / style improvements
Markus Kottlaender <markus@intevation.de>
parents: 3276
diff changeset
88
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
89 <script>
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
90 /* This is Free Software under GNU Affero General Public License v >= 3.0
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
91 * without warranty, see README.md and license for details.
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
92 *
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
93 * SPDX-License-Identifier: AGPL-3.0-or-later
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
94 * License-Filename: LICENSES/AGPL-3.0.txt
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
95 *
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
96 * Copyright (C) 2018, 2019 by via donau
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
97 * – Österreichische Wasserstraßen-Gesellschaft mbH
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
98 * Software engineering by Intevation GmbH
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
99 *
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
100 * Author(s):
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
101 * Thomas Junk <thomas.junk@intevation.de>
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
102 * Tom Gottfried <tom.gottfried@intevation.de>
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
103 */
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
104 import { mapState, mapGetters } from "vuex";
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
105 import { displayError, displayInfo } from "@/lib/errors";
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
106 import { HTTP } from "@/lib/http";
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
107 import { sortTable } from "@/lib/mixins";
4337
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
108 import { format } from "date-fns";
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
109
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
110 export default {
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
111 mixins: [sortTable],
3289
c2cba529658d client: define stretches: seperated list and form into two components
Markus Kottlaender <markus@intevation.de>
parents: 3281
diff changeset
112 components: {
c2cba529658d client: define stretches: seperated list and form into two components
Markus Kottlaender <markus@intevation.de>
parents: 3281
diff changeset
113 StretchForm: () => import("./StretchForm")
c2cba529658d client: define stretches: seperated list and form into two components
Markus Kottlaender <markus@intevation.de>
parents: 3281
diff changeset
114 },
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
115 data() {
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
116 return {
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
117 staging: [],
3289
c2cba529658d client: define stretches: seperated list and form into two components
Markus Kottlaender <markus@intevation.de>
parents: 3281
diff changeset
118 loading: false,
c2cba529658d client: define stretches: seperated list and form into two components
Markus Kottlaender <markus@intevation.de>
parents: 3281
diff changeset
119 showForm: false,
c2cba529658d client: define stretches: seperated list and form into two components
Markus Kottlaender <markus@intevation.de>
parents: 3281
diff changeset
120 editStretch: null
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
121 };
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
122 },
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
123 computed: {
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
124 ...mapState("application", ["searchQuery"]),
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
125 ...mapGetters("map", ["openLayersMap"]),
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
126 ...mapState("imports", ["stretches"]),
3289
c2cba529658d client: define stretches: seperated list and form into two components
Markus Kottlaender <markus@intevation.de>
parents: 3281
diff changeset
127 title() {
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
128 return this.$gettext("Define Stretches");
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
129 },
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
130 nameLabel() {
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
131 return this.$gettext("Name");
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
132 },
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
133 dateLabel() {
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
134 return this.$gettext("Date");
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
135 },
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
136 sourceorganizationLabel() {
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
137 return this.$gettext("Source organization");
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
138 },
3276
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
139 reviewTooltip() {
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
140 return this.$gettext("Review pending import");
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
141 }
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
142 },
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
143 methods: {
4337
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
144 download(stretch) {
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
145 const { name } = stretch.properties;
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
146 HTTP.get(`/data/stretch/shape/${name}`, {
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
147 responseType: "blob",
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
148 headers: {
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
149 "X-Gemma-Auth": localStorage.getItem("token")
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
150 }
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
151 }).then(response => {
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
152 const link = document.createElement("a");
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
153 const now = new Date();
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
154 link.href = window.URL.createObjectURL(response.data);
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
155 link.download = `${name}-${format(now, "YYYY-mm-DD")}.zip`;
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
156 document.body.appendChild(link);
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
157 link.click();
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
158 document.body.removeChild(link);
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
159 });
086640dc0fba stretches: download etd
Thomas Junk <thomas.junk@intevation.de>
parents: 4284
diff changeset
160 },
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
161 filteredStretches() {
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
162 return this.stretches.filter(s => {
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
163 return (s.properties.name + s.properties.source_organization)
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
164 .toLowerCase()
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
165 .includes(this.searchQuery.toLowerCase());
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
166 });
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
167 },
3274
c1beed689439 client: define stretches: inlined method
Markus Kottlaender <markus@intevation.de>
parents: 3272
diff changeset
168 gotoStaging(stretchName) {
3276
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
169 let pendingImport = this.staging.find(s => s.name === stretchName);
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
170 if (pendingImport)
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
171 this.$router.push("/imports/overview/" + pendingImport.id);
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
172 },
3276
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
173 isInStaging(stretchName) {
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
174 return !!this.staging.find(s => s.name === stretchName);
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
175 },
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
176 loadStagingData() {
3276
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
177 HTTP.get("/imports?states=pending&kinds=st", {
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
178 headers: { "X-Gemma-Auth": localStorage.getItem("token") }
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
179 })
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
180 .then(response => {
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
181 response.data.imports.forEach(i => {
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
182 HTTP.get("/imports/" + i.id, {
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
183 headers: { "X-Gemma-Auth": localStorage.getItem("token") }
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
184 })
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
185 .then(response => {
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
186 this.staging.push({
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
187 id: i.id,
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
188 name: response.data.summary.stretch
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
189 });
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
190 })
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
191 .catch(error => {
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
192 const { status, data } = error.response;
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
193 displayError({
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
194 title: this.$gettext("Backend Error"),
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
195 message: `${status}: ${data.message || data}`
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
196 });
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
197 })
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
198 .finally(() => (this.loading = false));
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
199 });
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
200 })
3276
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
201 .catch(error => {
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
202 const { status, data } = error.response;
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
203 displayError({
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
204 title: this.$gettext("Backend Error"),
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
205 message: `${status}: ${data.message || data}`
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
206 });
3276
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
207 });
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
208 },
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
209 deleteStretch(stretch) {
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
210 this.$store.commit("application/popup", {
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
211 icon: "trash",
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
212 title: this.$gettext("Delete Stretch"),
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
213 content:
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
214 this.$gettext("Do you really want to delete this stretch:") +
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
215 `<br>
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
216 <b>${stretch.properties.name}, ${
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
217 stretch.properties.source_organization
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
218 } (${stretch.properties.countries})</b>`,
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
219 confirm: {
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
220 label: this.$gettext("Delete"),
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
221 icon: "trash",
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
222 callback: () => {
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
223 displayInfo({
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
224 title: this.$gettext("Not implemented"),
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
225 message: this.$gettext("Deleting ") + stretch.id
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
226 });
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
227 }
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
228 },
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
229 cancel: {
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
230 label: this.$gettext("Cancel"),
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
231 icon: "times"
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
232 }
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
233 });
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
234 },
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
235 moveMapToStretch(stretch) {
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
236 this.$store.commit("imports/selectedStretchId", stretch.id);
3272
a9d047ccf408 client: fairway availability: set stretch in dialog when selecting stretch from map/list
Markus Kottlaender <markus@intevation.de>
parents: 3265
diff changeset
237 this.$store.commit("fairwayavailability/type", "stretches");
a9d047ccf408 client: fairway availability: set stretch in dialog when selecting stretch from map/list
Markus Kottlaender <markus@intevation.de>
parents: 3265
diff changeset
238 this.$store.commit("application/showFairwayDepth", true);
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
239 this.openLayersMap()
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
240 .getLayer("STRETCHES")
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
241 .setVisible(true);
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
242 this.$store.dispatch("map/moveToFeauture", {
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
243 feature: stretch,
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
244 zoom: 17,
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
245 preventZoomOut: true
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
246 });
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
247 }
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
248 },
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
249 mounted() {
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
250 this.loading = true;
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
251 this.$store
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
252 .dispatch("imports/loadStretches")
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
253 .catch(error => {
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
254 const { status, data } = error.response;
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
255 displayError({
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
256 title: this.$gettext("Backend Error"),
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
257 message: `${status}: ${data.message || data}`
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
258 });
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
259 })
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
260 .finally(() => (this.loading = false));
3276
75db3199f76e client: define stretches: fixed review button for stretches with pending import
Markus Kottlaender <markus@intevation.de>
parents: 3275
diff changeset
261 this.loadStagingData();
3263
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
262 }
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
263 };
d23532a4d0c3 client: define stretches: renamed component file and moved to subdirectory
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
264 </script>