annotate client/src/components/ImportStretches.vue @ 2384:c06b001dc26b

client: improved popup implementation For deleting users and templates there was a more or less quick n' dirty implementation of a confirmation dialog/popup. Since we need this kind of dialog in several more places I generalized the implementation a bit and made it more robust.
author Markus Kottlaender <markus@intevation.de>
date Mon, 25 Feb 2019 13:11:30 +0100
parents 341010faf34c
children f185503ef35a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1610
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
1 <template>
1803
975a7de89f05 define stretches WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 1797
diff changeset
2 <div class="d-flex flex-column mb-3">
1797
67340ceecc5f feat: define sections and stretches etd
Thomas Junk <thomas.junk@intevation.de>
parents: 1669
diff changeset
3 <h6 class="mb-0 py-2 px-3 border-bottom d-flex align-items-center">
67340ceecc5f feat: define sections and stretches etd
Thomas Junk <thomas.junk@intevation.de>
parents: 1669
diff changeset
4 <font-awesome-icon icon="road" class="mr-2"></font-awesome-icon>
1870
3050d702913a sections and stretches: only stretches. only sysadmin.
Thomas Junk <thomas.junk@intevation.de>
parents: 1827
diff changeset
5 <translate>Define stretches</translate>
1797
67340ceecc5f feat: define sections and stretches etd
Thomas Junk <thomas.junk@intevation.de>
parents: 1669
diff changeset
6 </h6>
1942
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
7 <div v-if="!edit" class="mb-3 mr-3 ml-3 text-left">
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
8 <table v-if="stretches.length > 0" class="table">
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
9 <thead>
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
10 <tr>
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
11 <th class="header"><translate>Name</translate></th>
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
12 <th class="header"><translate>Datum</translate></th>
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
13 <th class="header"><translate>Source organization</translate></th>
2384
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
14 <th></th>
1942
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
15 </tr>
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
16 </thead>
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
17 <tbody>
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
18 <tr class="small" v-for="(stretch, index) in stretches" :key="index">
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
19 <td class="">
1980
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
20 <a
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
21 class="linkto text-info"
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
22 v-if="isInStaging(stretch.properties.name)"
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
23 @click="gotoStaging(getStagingLink(stretch.properties.name))"
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
24 >
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
25 {{ stretch.properties.name
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
26 }}<font-awesome-icon
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
27 class="ml-1 text-danger"
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
28 icon="exclamation-triangle"
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
29 fixed-width
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
30 ></font-awesome-icon
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
31 ><small class="ml-1">review</small>
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
32 </a>
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
33 <a v-else @click="moveMapToStretch(index)" href="#">{{
1942
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
34 stretch.properties.name
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
35 }}</a>
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
36 </td>
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
37 <td class="">
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
38 {{ formatSurveyDate(stretch.properties["date_info"]) }}
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
39 </td>
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
40 <td>{{ stretch.properties["source_organization"] }}</td>
2384
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
41 <td class="text-right">
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
42 <button
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
43 class="btn btn-sm btn-dark mr-1"
1942
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
44 @click="editStretch(index)"
2384
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
45 >
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
46 <font-awesome-icon icon="pencil-alt" fixed-width />
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
47 </button>
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
48 <button
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
49 class="btn btn-sm btn-dark"
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
50 @click="deleteStretch(stretch)"
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
51 >
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
52 <font-awesome-icon icon="trash" fixed-width />
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
53 </button>
1942
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
54 </td>
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
55 </tr>
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
56 </tbody>
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
57 </table>
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
58 <div class="mt-3" v-if="stretches.length == 0">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
59 <translate>No results.</translate>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
60 </div>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
61 </div>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
62 <div v-if="edit">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
63 <div class="ml-3 mr-3">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
64 <div class="d-flex flex-row justify-content-between">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
65 <div class="mt-2 w-50 mr-2 text-left">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
66 <small class="text-muted"> <translate>ID</translate> </small>
1870
3050d702913a sections and stretches: only stretches. only sysadmin.
Thomas Junk <thomas.junk@intevation.de>
parents: 1827
diff changeset
67 <input
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
68 id="id"
1870
3050d702913a sections and stretches: only stretches. only sysadmin.
Thomas Junk <thomas.junk@intevation.de>
parents: 1827
diff changeset
69 type="text"
3050d702913a sections and stretches: only stretches. only sysadmin.
Thomas Junk <thomas.junk@intevation.de>
parents: 1827
diff changeset
70 class="form-control"
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
71 placeholder="AT_Section_12"
1870
3050d702913a sections and stretches: only stretches. only sysadmin.
Thomas Junk <thomas.junk@intevation.de>
parents: 1827
diff changeset
72 aria-label="id"
3050d702913a sections and stretches: only stretches. only sysadmin.
Thomas Junk <thomas.junk@intevation.de>
parents: 1827
diff changeset
73 v-model="id"
1980
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
74 :disabled="!idEditable"
1870
3050d702913a sections and stretches: only stretches. only sysadmin.
Thomas Junk <thomas.junk@intevation.de>
parents: 1827
diff changeset
75 />
3050d702913a sections and stretches: only stretches. only sysadmin.
Thomas Junk <thomas.junk@intevation.de>
parents: 1827
diff changeset
76 <span class="text-left text-danger">
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
77 <small v-if="idError && !id">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
78 <translate>Please enter an id</translate>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
79 </small>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
80 </span>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
81 </div>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
82 <div class="mt-2 w-50 ml-2 text-left">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
83 <div>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
84 <small class="text-muted">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
85 <translate>Countrycode</translate>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
86 </small>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
87 <input
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
88 id="countryCode"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
89 type="text"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
90 class="form-control"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
91 placeholder="AT"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
92 aria-label="id"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
93 v-model="countryCode"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
94 />
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
95 <span class="text-left text-danger">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
96 <small v-if="countryCodeError && !countryCode">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
97 <translate>Please enter a countrycode </translate>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
98 </small>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
99 </span>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
100 </div>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
101 <div class="w-50 ml-2"></div>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
102 </div>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
103 </div>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
104 <div class="d-flex flex-column justify-content-between">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
105 <div class="mt-2 text-left">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
106 <small class="text-muted"> <translate>Start rhm</translate> </small>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
107 <div class="d-flex flex-row">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
108 <input
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
109 id="startrhm"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
110 type="text"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
111 class="form-control"
1987
ee274693b8ee Use something similar to a valid ISRS location code as placeholder
Tom Gottfried <tom@intevation.de>
parents: 1980
diff changeset
112 placeholder="e.g. ATXXX000010000019900"
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
113 aria-label="startrhm"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
114 v-model="startrhm"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
115 />
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
116 <span class="input-group-text">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
117 <font-awesome-icon
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
118 @click="togglePipette('start')"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
119 :class="{ 'text-info': pipetteStart }"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
120 icon="bullseye"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
121 ></font-awesome-icon>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
122 </span>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
123 </div>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
124 <span class="text-left text-danger">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
125 <small v-if="startrhmError && !startrhm">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
126 <translate>Please enter a start point</translate>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
127 </small>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
128 </span>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
129 </div>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
130 <div class="mt-2 text-left">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
131 <small class="text-muted"> <translate>End rhm</translate> </small>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
132 <div class="d-flex flex-row">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
133 <input
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
134 id="endrhm"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
135 type="text"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
136 class="form-control"
1987
ee274693b8ee Use something similar to a valid ISRS location code as placeholder
Tom Gottfried <tom@intevation.de>
parents: 1980
diff changeset
137 placeholder="e.g. ATXXX000010000019900"
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
138 aria-label="endrhm"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
139 v-model="endrhm"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
140 />
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
141 <span class="input-group-text">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
142 <font-awesome-icon
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
143 @click="togglePipette('end')"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
144 :class="{ 'text-info': pipetteEnd }"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
145 icon="bullseye"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
146 ></font-awesome-icon>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
147 </span>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
148 </div>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
149 <span class="text-left text-danger">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
150 <small v-if="endrhmError && !endrhm">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
151 <translate>Please enter an end point</translate>
1870
3050d702913a sections and stretches: only stretches. only sysadmin.
Thomas Junk <thomas.junk@intevation.de>
parents: 1827
diff changeset
152 </small>
3050d702913a sections and stretches: only stretches. only sysadmin.
Thomas Junk <thomas.junk@intevation.de>
parents: 1827
diff changeset
153 </span>
3050d702913a sections and stretches: only stretches. only sysadmin.
Thomas Junk <thomas.junk@intevation.de>
parents: 1827
diff changeset
154 </div>
1959
84e475938b75 define stretches: validation of start vs endpoint
Thomas Junk <thomas.junk@intevation.de>
parents: 1942
diff changeset
155 <span class="text-left text-danger">
84e475938b75 define stretches: validation of start vs endpoint
Thomas Junk <thomas.junk@intevation.de>
parents: 1942
diff changeset
156 <small v-if="!pointsValid">
84e475938b75 define stretches: validation of start vs endpoint
Thomas Junk <thomas.junk@intevation.de>
parents: 1942
diff changeset
157 <translate>Startpoint is not before endpoint.</translate>
84e475938b75 define stretches: validation of start vs endpoint
Thomas Junk <thomas.junk@intevation.de>
parents: 1942
diff changeset
158 </small>
84e475938b75 define stretches: validation of start vs endpoint
Thomas Junk <thomas.junk@intevation.de>
parents: 1942
diff changeset
159 </span>
1809
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
160 </div>
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
161 <div class="d-flex flex-row justify-content-between">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
162 <div class="mt-2 mr-2 w-50 text-left">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
163 <small class="text-muted">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
164 <translate>Object name</translate>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
165 </small>
1809
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
166 <input
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
167 id="objbn"
1809
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
168 type="text"
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
169 class="form-control"
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
170 placeholder=""
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
171 aria-label="objbn"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
172 v-model="objbn"
1809
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
173 />
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
174 <span class="text-left text-danger">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
175 <small v-if="objbnError && !objbn">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
176 <translate>Please enter an objectname</translate>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
177 </small>
1809
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
178 </span>
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
179 </div>
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
180 <div class="mt-2 ml-2 w-50 text-left">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
181 <small class="text-muted">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
182 <translate>National Object name</translate>
1803
975a7de89f05 define stretches WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 1797
diff changeset
183 </small>
1809
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
184 <input
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
185 id="nobjbn"
1809
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
186 type="text"
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
187 class="form-control"
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
188 placeholder=""
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
189 aria-label="nobjbn"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
190 v-model="nobjbn"
1809
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
191 />
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
192 </div>
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
193 </div>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
194 <div class="d-flex flex-row justify-content-between">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
195 <div class="mt-2 mr-2 w-50 text-left">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
196 <small class="text-muted"> <translate>Date info</translate> </small>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
197 <input
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
198 id="date_info"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
199 type="date"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
200 class="form-control"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
201 placeholder="date_info"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
202 aria-label="date_info"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
203 v-model="date_info"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
204 />
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
205 <span class="text-left text-danger">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
206 <small v-if="date_infoError && !date_info">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
207 <translate>Please enter a date</translate>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
208 </small>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
209 </span>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
210 </div>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
211 <div class="mt-2 ml-2 w-50 text-left">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
212 <small class="text-muted"> <translate>Source</translate> </small>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
213 <input
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
214 id="source"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
215 type="text"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
216 class="form-control"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
217 placeholder="source"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
218 aria-label="source"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
219 v-model="source"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
220 />
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
221 <span class="text-left text-danger">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
222 <small v-if="sourceError && !source">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
223 <translate>Please enter a source</translate>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
224 </small>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
225 </span>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
226 </div>
1803
975a7de89f05 define stretches WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 1797
diff changeset
227 </div>
975a7de89f05 define stretches WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 1797
diff changeset
228 </div>
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
229 <div class="text-right mt-2 mr-3 mb-3">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
230 <button @click="edit = false" class="btn btn-warning mr-2">Back</button>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
231 <button
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
232 @click="save"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
233 type="submit"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
234 class="shadow-sm btn btn-info submit-button"
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
235 >
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
236 <translate>Submit</translate>
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
237 </button>
1803
975a7de89f05 define stretches WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 1797
diff changeset
238 </div>
1809
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
239 </div>
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
240 <div class="text-right mr-3">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
241 <button v-if="!edit" @click="startEdit()" class="btn btn-info">
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
242 <translate>New stretch</translate>
1809
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
243 </button>
1803
975a7de89f05 define stretches WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 1797
diff changeset
244 </div>
1610
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
245 </div>
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
246 </template>
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
247
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
248 <script>
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
249 /* This is Free Software under GNU Affero General Public License v >= 3.0
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
250 * without warranty, see README.md and license for details.
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
251 *
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
252 * SPDX-License-Identifier: AGPL-3.0-or-later
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
253 * License-Filename: LICENSES/AGPL-3.0.txt
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
254 *
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
255 * Copyright (C) 2018 by via donau
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
256 * – Österreichische Wasserstraßen-Gesellschaft mbH
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
257 * Software engineering by Intevation GmbH
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
258 *
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
259 * Author(s):
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
260 * Thomas Junk <thomas.junk@intevation.de>
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
261 */
1827
27c4effba5b1 stretches only for sysadmin plus country code
Thomas Junk <thomas.junk@intevation.de>
parents: 1823
diff changeset
262 import { mapState, mapGetters } from "vuex";
1921
0059aa870a39 Hotfixed stretch import.
Sascha Wilde <wilde@intevation.de>
parents: 1896
diff changeset
263 import { displayError, displayInfo } from "@/lib/errors.js";
1942
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
264 import { formatSurveyDate } from "@/lib/date.js";
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2136
diff changeset
265 import { LAYERS } from "@/store/map.js";
1610
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
266
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
267 export default {
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
268 name: "importstretches",
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
269 data() {
1803
975a7de89f05 define stretches WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 1797
diff changeset
270 return {
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
271 edit: false,
1980
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
272 idEditable: true,
1803
975a7de89f05 define stretches WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 1797
diff changeset
273 id: "",
1809
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
274 funktion: "",
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
275 startrhm: "",
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
276 endrhm: "",
1803
975a7de89f05 define stretches WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 1797
diff changeset
277 objbn: "",
975a7de89f05 define stretches WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 1797
diff changeset
278 nobjbn: "",
1827
27c4effba5b1 stretches only for sysadmin plus country code
Thomas Junk <thomas.junk@intevation.de>
parents: 1823
diff changeset
279 countryCode: "",
1809
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
280 date_info: new Date().toISOString().split("T")[0],
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
281 source: "",
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
282 pipetteStart: false,
1816
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
283 pipetteEnd: false,
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
284 idError: false,
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
285 funktionError: false,
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
286 startrhmError: false,
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
287 endrhmError: false,
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
288 objbnError: false,
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
289 nobjbnError: false,
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
290 date_infoError: false,
1827
27c4effba5b1 stretches only for sysadmin plus country code
Thomas Junk <thomas.junk@intevation.de>
parents: 1823
diff changeset
291 sourceError: false,
27c4effba5b1 stretches only for sysadmin plus country code
Thomas Junk <thomas.junk@intevation.de>
parents: 1823
diff changeset
292 countryCodeError: false
1803
975a7de89f05 define stretches WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 1797
diff changeset
293 };
1610
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
294 },
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
295 mounted() {
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
296 this.edit = false;
1980
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
297 this.loadStretches().catch(error => {
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
298 const { status, data } = error.response;
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
299 displayError({
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
300 title: this.$gettext("Backend Error"),
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
301 message: `${status}: ${data.message || data}`
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
302 });
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
303 });
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
304 this.loadStagingData().catch(error => {
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
305 const { status, data } = error.response;
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
306 displayError({
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
307 title: this.$gettext("Backend Error"),
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
308 message: `${status}: ${data.message || data}`
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
309 });
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
310 });
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
311 },
1809
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
312 methods: {
1980
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
313 gotoStaging(id) {
2364
341010faf34c import_stretch: fix false review link
Thomas Junk <thomas.junk@intevation.de>
parents: 2170
diff changeset
314 this.$router.push("/review/" + id);
1980
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
315 },
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
316 isInStaging(stretchname) {
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
317 for (let s of this.stretchesInStaging) {
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
318 if (s.name == stretchname) return true;
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
319 }
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
320 return false;
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
321 },
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
322 getStagingLink(stretchname) {
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
323 for (let s of this.stretchesInStaging) {
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
324 if (s.name == stretchname) return s.id;
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
325 }
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
326 },
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
327 loadStagingData() {
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
328 return new Promise((resolve, reject) => {
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
329 this.$store
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
330 .dispatch("imports/getStaging")
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
331 .then(response => {
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
332 resolve(response);
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
333 })
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
334 .catch(error => {
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
335 reject(error);
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
336 });
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
337 });
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
338 },
1942
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
339 editStretch(index) {
1977
53c1383dfee3 define stretch: edit function prefills fields
Thomas Junk <thomas.junk@intevation.de>
parents: 1961
diff changeset
340 const properties = this.stretches[index].properties;
53c1383dfee3 define stretch: edit function prefills fields
Thomas Junk <thomas.junk@intevation.de>
parents: 1961
diff changeset
341 this.date_info = properties.date_info.split("T")[0];
53c1383dfee3 define stretch: edit function prefills fields
Thomas Junk <thomas.junk@intevation.de>
parents: 1961
diff changeset
342 this.id = properties.name;
53c1383dfee3 define stretch: edit function prefills fields
Thomas Junk <thomas.junk@intevation.de>
parents: 1961
diff changeset
343 this.nobjbn = properties.nobjnam;
53c1383dfee3 define stretch: edit function prefills fields
Thomas Junk <thomas.junk@intevation.de>
parents: 1961
diff changeset
344 this.objbn = properties.objnam;
53c1383dfee3 define stretch: edit function prefills fields
Thomas Junk <thomas.junk@intevation.de>
parents: 1961
diff changeset
345 this.countryCode = properties.countries;
53c1383dfee3 define stretch: edit function prefills fields
Thomas Junk <thomas.junk@intevation.de>
parents: 1961
diff changeset
346 this.source = properties["source_organization"];
1942
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
347 this.edit = true;
1977
53c1383dfee3 define stretch: edit function prefills fields
Thomas Junk <thomas.junk@intevation.de>
parents: 1961
diff changeset
348 this.startrhm = this.sanitizeRHM(properties.lower);
53c1383dfee3 define stretch: edit function prefills fields
Thomas Junk <thomas.junk@intevation.de>
parents: 1961
diff changeset
349 this.endrhm = this.sanitizeRHM(properties.upper);
1980
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
350 this.idEditable = false;
1942
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
351 },
2384
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
352 deleteStretch(stretch) {
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
353 this.$store.commit("application/popup", {
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
354 icon: "trash",
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
355 title: this.$gettext("Delete Stretch"),
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
356 content:
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
357 this.$gettext("Do you really want to delete this stretch:") +
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
358 `<br>
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
359 <b>${stretch.properties.name}, ${
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
360 stretch.properties.source_organization
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
361 } (${stretch.properties.countries})</b>`,
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
362 confirm: {
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
363 label: this.$gettext("Delete"),
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
364 icon: "trash",
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
365 callback: () => {
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
366 displayInfo({
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
367 title: this.$gettext("Not implemented"),
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
368 message: this.$gettext("Deleting " + stretch.id)
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
369 });
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
370 }
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
371 },
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
372 cancel: {
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
373 label: this.$gettext("Cancel"),
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
374 icon: "times"
c06b001dc26b client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents: 2364
diff changeset
375 }
1942
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
376 });
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
377 },
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
378 moveMapToStretch(index) {
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2136
diff changeset
379 this.$store.commit("map/setLayerVisible", LAYERS.STRETCHES);
2136
3138d60dd1a6 moveToExtent substitutes moveMap where easy doable
Thomas Junk <thomas.junk@intevation.de>
parents: 2102
diff changeset
380 this.$store.commit("map/moveToExtent", {
3138d60dd1a6 moveToExtent substitutes moveMap where easy doable
Thomas Junk <thomas.junk@intevation.de>
parents: 2102
diff changeset
381 feature: this.stretches[index],
1942
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
382 zoom: 17,
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
383 preventZoomOut: true
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
384 });
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
385 },
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
386 formatSurveyDate(d) {
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
387 return formatSurveyDate(d);
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
388 },
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
389 loadStretches() {
1980
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
390 return new Promise((resolve, reject) => {
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
391 this.$store
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
392 .dispatch("imports/loadStretches")
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
393 .then(response => {
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
394 resolve(response);
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
395 })
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
396 .catch(error => {
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
397 reject(error);
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
398 });
1942
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
399 });
d1b7b1c70410 import stretch: listview with edit-function
Thomas Junk <thomas.junk@intevation.de>
parents: 1930
diff changeset
400 },
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
401 clean() {
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
402 this.id = "";
1980
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
403 this.edit = false;
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
404 this.idEditable = true;
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
405 this.funktion = "";
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
406 this.startrhm = "";
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
407 this.endrhm = "";
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
408 this.objbn = "";
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
409 this.nobjbn = "";
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
410 this.countryCode = "";
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
411 this.date_info = new Date().toISOString().split("T")[0];
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
412 this.source = "";
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
413 this.pipetteStart = false;
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
414 this.pipetteEnd = false;
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
415 this.idError = false;
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
416 this.funktionError = false;
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
417 this.startrhmError = false;
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
418 this.endrhmError = false;
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
419 this.objbnError = false;
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
420 this.nobjbnError = false;
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
421 this.date_infoError = false;
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
422 this.sourceError = false;
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
423 this.countryCodeError = false;
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
424 },
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
425 startEdit() {
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
426 this.clean();
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
427 this.edit = true;
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
428 },
1823
7d37d9f5f272 define stretches: better targetting behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1816
diff changeset
429 togglePipette(t) {
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2136
diff changeset
430 this.$store.commit("map/setLayerVisible", LAYERS.DISTANCEMARKSAXIS);
1823
7d37d9f5f272 define stretches: better targetting behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1816
diff changeset
431 if (t === "start") {
7d37d9f5f272 define stretches: better targetting behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1816
diff changeset
432 this.pipetteStart = !this.pipetteStart;
7d37d9f5f272 define stretches: better targetting behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1816
diff changeset
433 this.pipetteEnd = false;
7d37d9f5f272 define stretches: better targetting behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1816
diff changeset
434 } else {
7d37d9f5f272 define stretches: better targetting behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1816
diff changeset
435 this.pipetteEnd = !this.pipetteEnd;
7d37d9f5f272 define stretches: better targetting behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1816
diff changeset
436 this.pipetteStart = false;
7d37d9f5f272 define stretches: better targetting behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1816
diff changeset
437 }
7d37d9f5f272 define stretches: better targetting behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1816
diff changeset
438 },
1816
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
439 validate() {
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
440 const fields = [
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
441 "id",
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
442 "funktion",
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
443 "startrhm",
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
444 "endrhm",
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
445 "objbn",
1960
e5c5954fbd84 define stretches: validation
Thomas Junk <thomas.junk@intevation.de>
parents: 1959
diff changeset
446 "nobjbn",
e5c5954fbd84 define stretches: validation
Thomas Junk <thomas.junk@intevation.de>
parents: 1959
diff changeset
447 "countryCode",
1816
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
448 "date_info",
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
449 "source"
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
450 ];
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
451 fields.forEach(field => {
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
452 if (!this[field]) {
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
453 this[field + "Error"] = true;
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
454 } else {
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
455 this[field + "Error"] = false;
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
456 }
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
457 });
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
458 },
1871
8ae7a1fba4cd prototypical listview for stretches. new and back buttons. have fun
Thomas Junk <thomas.junk@intevation.de>
parents: 1870
diff changeset
459 save() {
1816
199fa7e759aa define stretches: more userfriendly errormessage behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1809
diff changeset
460 this.validate();
1960
e5c5954fbd84 define stretches: validation
Thomas Junk <thomas.junk@intevation.de>
parents: 1959
diff changeset
461 if (!this.pointsValid) return;
e5c5954fbd84 define stretches: validation
Thomas Junk <thomas.junk@intevation.de>
parents: 1959
diff changeset
462 if (
e5c5954fbd84 define stretches: validation
Thomas Junk <thomas.junk@intevation.de>
parents: 1959
diff changeset
463 !this.id ||
e5c5954fbd84 define stretches: validation
Thomas Junk <thomas.junk@intevation.de>
parents: 1959
diff changeset
464 !this.startrhm ||
e5c5954fbd84 define stretches: validation
Thomas Junk <thomas.junk@intevation.de>
parents: 1959
diff changeset
465 !this.endrhm ||
e5c5954fbd84 define stretches: validation
Thomas Junk <thomas.junk@intevation.de>
parents: 1959
diff changeset
466 !this.source ||
e5c5954fbd84 define stretches: validation
Thomas Junk <thomas.junk@intevation.de>
parents: 1959
diff changeset
467 !this.date_info ||
e5c5954fbd84 define stretches: validation
Thomas Junk <thomas.junk@intevation.de>
parents: 1959
diff changeset
468 !this.objbn ||
e5c5954fbd84 define stretches: validation
Thomas Junk <thomas.junk@intevation.de>
parents: 1959
diff changeset
469 !this.countryCode
e5c5954fbd84 define stretches: validation
Thomas Junk <thomas.junk@intevation.de>
parents: 1959
diff changeset
470 )
e5c5954fbd84 define stretches: validation
Thomas Junk <thomas.junk@intevation.de>
parents: 1959
diff changeset
471 return;
1930
1aa864cccddc define stretches: converted to vuex
Thomas Junk <thomas.junk@intevation.de>
parents: 1921
diff changeset
472 const data = {
1aa864cccddc define stretches: converted to vuex
Thomas Junk <thomas.junk@intevation.de>
parents: 1921
diff changeset
473 name: this.id,
1aa864cccddc define stretches: converted to vuex
Thomas Junk <thomas.junk@intevation.de>
parents: 1921
diff changeset
474 from: this.startrhm,
1aa864cccddc define stretches: converted to vuex
Thomas Junk <thomas.junk@intevation.de>
parents: 1921
diff changeset
475 to: this.endrhm,
1aa864cccddc define stretches: converted to vuex
Thomas Junk <thomas.junk@intevation.de>
parents: 1921
diff changeset
476 "source-organization": this.source,
1aa864cccddc define stretches: converted to vuex
Thomas Junk <thomas.junk@intevation.de>
parents: 1921
diff changeset
477 "date-info": this.date_info,
1aa864cccddc define stretches: converted to vuex
Thomas Junk <thomas.junk@intevation.de>
parents: 1921
diff changeset
478 objnam: this.objbn,
1aa864cccddc define stretches: converted to vuex
Thomas Junk <thomas.junk@intevation.de>
parents: 1921
diff changeset
479 nobjnam: this.nobjbn,
1977
53c1383dfee3 define stretch: edit function prefills fields
Thomas Junk <thomas.junk@intevation.de>
parents: 1961
diff changeset
480 countries: this.countryCode.split(",").map(x => {
53c1383dfee3 define stretch: edit function prefills fields
Thomas Junk <thomas.junk@intevation.de>
parents: 1961
diff changeset
481 return x.trim();
53c1383dfee3 define stretch: edit function prefills fields
Thomas Junk <thomas.junk@intevation.de>
parents: 1961
diff changeset
482 })
1889
b6d0460b069d define stretches: Now with store-backend
Thomas Junk <thomas.junk@intevation.de>
parents: 1888
diff changeset
483 };
1930
1aa864cccddc define stretches: converted to vuex
Thomas Junk <thomas.junk@intevation.de>
parents: 1921
diff changeset
484 this.$store
1aa864cccddc define stretches: converted to vuex
Thomas Junk <thomas.junk@intevation.de>
parents: 1921
diff changeset
485 .dispatch("imports/saveStretch", data)
1921
0059aa870a39 Hotfixed stretch import.
Sascha Wilde <wilde@intevation.de>
parents: 1896
diff changeset
486 .then(() => {
0059aa870a39 Hotfixed stretch import.
Sascha Wilde <wilde@intevation.de>
parents: 1896
diff changeset
487 displayInfo({
0059aa870a39 Hotfixed stretch import.
Sascha Wilde <wilde@intevation.de>
parents: 1896
diff changeset
488 title: this.$gettext("Import"),
1930
1aa864cccddc define stretches: converted to vuex
Thomas Junk <thomas.junk@intevation.de>
parents: 1921
diff changeset
489 message: this.$gettext("Starting import of stretch")
1921
0059aa870a39 Hotfixed stretch import.
Sascha Wilde <wilde@intevation.de>
parents: 1896
diff changeset
490 });
1930
1aa864cccddc define stretches: converted to vuex
Thomas Junk <thomas.junk@intevation.de>
parents: 1921
diff changeset
491 this.clean();
1980
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
492 this.loadStretches().then(() => {
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
493 this.edit = false;
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
494 });
1921
0059aa870a39 Hotfixed stretch import.
Sascha Wilde <wilde@intevation.de>
parents: 1896
diff changeset
495 })
0059aa870a39 Hotfixed stretch import.
Sascha Wilde <wilde@intevation.de>
parents: 1896
diff changeset
496 .catch(error => {
0059aa870a39 Hotfixed stretch import.
Sascha Wilde <wilde@intevation.de>
parents: 1896
diff changeset
497 const { status, data } = error.response;
0059aa870a39 Hotfixed stretch import.
Sascha Wilde <wilde@intevation.de>
parents: 1896
diff changeset
498 displayError({
0059aa870a39 Hotfixed stretch import.
Sascha Wilde <wilde@intevation.de>
parents: 1896
diff changeset
499 title: this.$gettext("Backend Error"),
0059aa870a39 Hotfixed stretch import.
Sascha Wilde <wilde@intevation.de>
parents: 1896
diff changeset
500 message: `${status}: ${data.message || data}`
0059aa870a39 Hotfixed stretch import.
Sascha Wilde <wilde@intevation.de>
parents: 1896
diff changeset
501 });
0059aa870a39 Hotfixed stretch import.
Sascha Wilde <wilde@intevation.de>
parents: 1896
diff changeset
502 });
1809
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
503 }
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
504 },
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
505 watch: {
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
506 identifiedFeatures() {
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
507 const filterDistanceMarks = x => {
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
508 return /^distance_marks/.test(x["id_"]);
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
509 };
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
510 const distanceMark = this.identifiedFeatures.filter(filterDistanceMarks);
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
511 if (distanceMark.length > 0) {
2170
3bfe48e32f20 Fixed de-duplication (primary geoserver id) for virt dist marks.
Sascha Wilde <wilde@intevation.de>
parents: 2169
diff changeset
512 const value = distanceMark[0].getProperties()["location"];
1809
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
513 this.startrhm = this.pipetteStart ? value : this.startrhm;
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
514 this.endrhm = this.pipetteEnd ? value : this.endrhm;
1823
7d37d9f5f272 define stretches: better targetting behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1816
diff changeset
515 this.pipetteStart = false;
7d37d9f5f272 define stretches: better targetting behaviour
Thomas Junk <thomas.junk@intevation.de>
parents: 1816
diff changeset
516 this.pipetteEnd = false;
1809
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
517 }
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
518 }
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
519 },
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
520 computed: {
1827
27c4effba5b1 stretches only for sysadmin plus country code
Thomas Junk <thomas.junk@intevation.de>
parents: 1823
diff changeset
521 ...mapState("map", ["identifiedFeatures", "currentMeasurement"]),
1889
b6d0460b069d define stretches: Now with store-backend
Thomas Junk <thomas.junk@intevation.de>
parents: 1888
diff changeset
522 ...mapGetters("user", ["isSysAdmin"]),
1980
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
523 ...mapState("imports", ["stretches", "staging"]),
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
524 stretchesInStaging() {
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
525 const result = [];
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
526 for (let stretch of this.stretches) {
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
527 for (let s of this.staging) {
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
528 if (s.kind == "st" && s.summary.stretch == stretch.properties.name) {
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
529 result.push({ name: s.summary.stretch, id: s.id });
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
530 }
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
531 }
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
532 }
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
533 return result;
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
534 },
1959
84e475938b75 define stretches: validation of start vs endpoint
Thomas Junk <thomas.junk@intevation.de>
parents: 1942
diff changeset
535 pointsValid() {
84e475938b75 define stretches: validation of start vs endpoint
Thomas Junk <thomas.junk@intevation.de>
parents: 1942
diff changeset
536 if (!this.startrhm || !this.endrhm) return true;
1961
9b9f1d164f26 validation
Thomas Junk <thomas.junk@intevation.de>
parents: 1960
diff changeset
537 const start = this.startrhm.replace(/\D+/, "") * 1;
9b9f1d164f26 validation
Thomas Junk <thomas.junk@intevation.de>
parents: 1960
diff changeset
538 const end = this.endrhm.replace(/\D+/, "") * 1;
1959
84e475938b75 define stretches: validation of start vs endpoint
Thomas Junk <thomas.junk@intevation.de>
parents: 1942
diff changeset
539 const result = start < end;
84e475938b75 define stretches: validation of start vs endpoint
Thomas Junk <thomas.junk@intevation.de>
parents: 1942
diff changeset
540 return result;
84e475938b75 define stretches: validation of start vs endpoint
Thomas Junk <thomas.junk@intevation.de>
parents: 1942
diff changeset
541 }
1809
b16a6db0008f feat: define sections and stretches with targetting option
Thomas Junk <thomas.junk@intevation.de>
parents: 1803
diff changeset
542 }
1610
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
543 };
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
544 </script>
2ee243f9a7ee import stretches boilerplate added
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
545
1980
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
546 <style lang="scss" scoped>
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
547 .linkto {
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
548 cursor: pointer;
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
549 }
c8e2f6838eaf define stretches: mark stretches in review
Thomas Junk <thomas.junk@intevation.de>
parents: 1977
diff changeset
550 </style>