Mercurial > gemma
annotate client/src/components/fairway/Profiles.vue @ 3784:110436ee8ed2 yworks-svg2pdf
Fairwayprofile: dashed patterns in PDF
author | Thomas Junk <thomas.junk@intevation.de> |
---|---|
date | Wed, 03 Jul 2019 12:38:13 +0200 |
parents | 6f5297dc6039 |
children | 242057dbc8c3 |
rev | line source |
---|---|
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
1 <template> |
1480 | 2 <div |
3 :class="[ | |
4 'box ui-element rounded bg-white text-nowrap', | |
5 { expanded: showProfiles } | |
6 ]" | |
7 > | |
2260
531e776cb81d
client: reduced width of pdf-, profile- and identify-box
Markus Kottlaender <markus@intevation.de>
parents:
2154
diff
changeset
|
8 <div style="width: 18rem"> |
2754
d0f6c222f4f9
client:correct a set of strings marking
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2740
diff
changeset
|
9 <UIBoxHeader |
d0f6c222f4f9
client:correct a set of strings marking
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2740
diff
changeset
|
10 icon="chart-area" |
d0f6c222f4f9
client:correct a set of strings marking
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2740
diff
changeset
|
11 :title="profilesLable" |
d0f6c222f4f9
client:correct a set of strings marking
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2740
diff
changeset
|
12 :closeCallback="close" |
d0f6c222f4f9
client:correct a set of strings marking
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2740
diff
changeset
|
13 /> |
2534
bb5286acfee2
client: reduced spacings between and inside boxes and more compact main menu
Markus Kottlaender <markus@intevation.de>
parents:
2436
diff
changeset
|
14 <div class="box-body"> |
3158
f91df0bc4986
client: compare surveys: prevent loading of differences from blocking the whole dialog
Markus Kottlaender <markus@intevation.de>
parents:
3146
diff
changeset
|
15 <UISpinnerOverlay v-if="surveysLoading || profileLoading" /> |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
16 <select |
2540
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
17 @change="moveToBottleneck" |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
18 v-model="selectedBottleneck" |
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
19 class="form-control font-weight-bold" |
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
20 > |
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
21 <option :value="null"> |
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
22 <translate>Select Bottleneck</translate> |
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
23 </option> |
2812
30a753f51a3c
client: profiles: ordered bottleneck list by country code
Markus Kottlaender <markus@intevation.de>
parents:
2754
diff
changeset
|
24 <optgroup |
30a753f51a3c
client: profiles: ordered bottleneck list by country code
Markus Kottlaender <markus@intevation.de>
parents:
2754
diff
changeset
|
25 v-for="(bottlenecksForCountry, cc) in orderedBottlenecks" |
30a753f51a3c
client: profiles: ordered bottleneck list by country code
Markus Kottlaender <markus@intevation.de>
parents:
2754
diff
changeset
|
26 :key="cc" |
30a753f51a3c
client: profiles: ordered bottleneck list by country code
Markus Kottlaender <markus@intevation.de>
parents:
2754
diff
changeset
|
27 :label="cc" |
1480 | 28 > |
2812
30a753f51a3c
client: profiles: ordered bottleneck list by country code
Markus Kottlaender <markus@intevation.de>
parents:
2754
diff
changeset
|
29 <option |
30a753f51a3c
client: profiles: ordered bottleneck list by country code
Markus Kottlaender <markus@intevation.de>
parents:
2754
diff
changeset
|
30 v-for="bn in bottlenecksForCountry" |
30a753f51a3c
client: profiles: ordered bottleneck list by country code
Markus Kottlaender <markus@intevation.de>
parents:
2754
diff
changeset
|
31 :key="bn.properties.name" |
30a753f51a3c
client: profiles: ordered bottleneck list by country code
Markus Kottlaender <markus@intevation.de>
parents:
2754
diff
changeset
|
32 :value="bn.properties.name" |
30a753f51a3c
client: profiles: ordered bottleneck list by country code
Markus Kottlaender <markus@intevation.de>
parents:
2754
diff
changeset
|
33 > |
30a753f51a3c
client: profiles: ordered bottleneck list by country code
Markus Kottlaender <markus@intevation.de>
parents:
2754
diff
changeset
|
34 {{ bn.properties.name }} |
30a753f51a3c
client: profiles: ordered bottleneck list by country code
Markus Kottlaender <markus@intevation.de>
parents:
2754
diff
changeset
|
35 </option> |
30a753f51a3c
client: profiles: ordered bottleneck list by country code
Markus Kottlaender <markus@intevation.de>
parents:
2754
diff
changeset
|
36 </optgroup> |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
37 </select> |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
38 <div v-if="selectedBottleneck"> |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
39 <div class="d-flex mt-2"> |
3527
8a9ee18de13f
client: fairway profiles: implemented selection between depth reference waterlevel and current waterlevel
Markus Kottlaender <markus@intevation.de>
parents:
3512
diff
changeset
|
40 <div class="flex-fill" style="max-width: 75px;"> |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
41 <small class="text-muted"> |
2540
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
42 <translate>Waterlevel</translate>: |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
43 </small> |
1480 | 44 <select |
2540
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
45 v-model="selectedWaterLevel" |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
46 class="form-control form-control-sm small" |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
47 > |
3527
8a9ee18de13f
client: fairway profiles: implemented selection between depth reference waterlevel and current waterlevel
Markus Kottlaender <markus@intevation.de>
parents:
3512
diff
changeset
|
48 <option value="ref"> |
8a9ee18de13f
client: fairway profiles: implemented selection between depth reference waterlevel and current waterlevel
Markus Kottlaender <markus@intevation.de>
parents:
3512
diff
changeset
|
49 <translate>Depth Reference</translate> |
3578
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
50 <template v-if="selectedSurvey"> |
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
51 ({{ selectedSurvey.depth_reference }}/{{ |
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
52 $options.filters.waterlevel( |
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
53 selectedSurvey.waterlevel_value |
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
54 ) |
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
55 }} |
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
56 m) |
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
57 </template> |
2540
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
58 </option> |
3512
30a47d9fc667
client: fairway profiles: removed some old code
Markus Kottlaender <markus@intevation.de>
parents:
3425
diff
changeset
|
59 <option value="current"> |
3527
8a9ee18de13f
client: fairway profiles: implemented selection between depth reference waterlevel and current waterlevel
Markus Kottlaender <markus@intevation.de>
parents:
3512
diff
changeset
|
60 <translate>Current Waterlevel</translate> |
3578
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
61 <template v-if="bottleneck"> |
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
62 ({{ |
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
63 $options.filters.waterlevel( |
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
64 bottleneck.get("gm_waterlevel") |
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
65 ) |
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
66 }} |
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
67 m) |
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
68 </template> |
2540
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
69 </option> |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
70 </select> |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
71 </div> |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
72 <div class="flex-fill ml-2"> |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
73 <small class="text-muted"> <translate>Survey</translate>: </small> |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
74 <select |
1480 | 75 v-model="selectedSurvey" |
2540
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
76 class="form-control form-control-sm small" |
1480 | 77 > |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
78 <option |
1379 | 79 v-for="survey in surveys" |
80 :key="survey.date_info" | |
81 :value="survey" | |
2541
468c8dc796cf
client: convert lib helper functions to Vue filters
Markus Kottlaender <markus@intevation.de>
parents:
2540
diff
changeset
|
82 >{{ survey.date_info | surveyDate }}</option |
1480 | 83 > |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
84 </select> |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
85 </div> |
1480 | 86 <div |
2540
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
87 class="flex-fill ml-2" |
1480 | 88 v-if="selectedSurvey && surveys.length > 1" |
89 > | |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
90 <small class="text-muted mt-1"> |
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
91 <translate>Compare with</translate>: |
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
92 </small> |
1480 | 93 <select |
94 v-model="additionalSurvey" | |
2540
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
95 class="form-control form-control-sm small" |
1480 | 96 > |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
97 <option :value="null">None</option> |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
98 <option |
1379 | 99 v-for="survey in additionalSurveys" |
100 :key="survey.date_info" | |
101 :value="survey" | |
2541
468c8dc796cf
client: convert lib helper functions to Vue filters
Markus Kottlaender <markus@intevation.de>
parents:
2540
diff
changeset
|
102 >{{ survey.date_info | surveyDate }}</option |
1480 | 103 > |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
104 </select> |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
105 </div> |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
106 </div> |
3086
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
107 <div class="mt-2 d-flex" v-if="additionalSurvey"> |
2848
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
108 <button |
3158
f91df0bc4986
client: compare surveys: prevent loading of differences from blocking the whole dialog
Markus Kottlaender <markus@intevation.de>
parents:
3146
diff
changeset
|
109 v-if="differencesLoading" |
f91df0bc4986
client: compare surveys: prevent loading of differences from blocking the whole dialog
Markus Kottlaender <markus@intevation.de>
parents:
3146
diff
changeset
|
110 class="btn btn-info btn-xs flex-fill" |
f91df0bc4986
client: compare surveys: prevent loading of differences from blocking the whole dialog
Markus Kottlaender <markus@intevation.de>
parents:
3146
diff
changeset
|
111 disabled |
f91df0bc4986
client: compare surveys: prevent loading of differences from blocking the whole dialog
Markus Kottlaender <markus@intevation.de>
parents:
3146
diff
changeset
|
112 > |
f91df0bc4986
client: compare surveys: prevent loading of differences from blocking the whole dialog
Markus Kottlaender <markus@intevation.de>
parents:
3146
diff
changeset
|
113 <font-awesome-icon icon="spinner" spin class="mr-1" /> |
f91df0bc4986
client: compare surveys: prevent loading of differences from blocking the whole dialog
Markus Kottlaender <markus@intevation.de>
parents:
3146
diff
changeset
|
114 <translate>Calculating differences</translate> |
f91df0bc4986
client: compare surveys: prevent loading of differences from blocking the whole dialog
Markus Kottlaender <markus@intevation.de>
parents:
3146
diff
changeset
|
115 </button> |
f91df0bc4986
client: compare surveys: prevent loading of differences from blocking the whole dialog
Markus Kottlaender <markus@intevation.de>
parents:
3146
diff
changeset
|
116 <button |
3085
7ac392edf8e2
client: added pane rotate button to profile dialog when second map is displayed
Markus Kottlaender <markus@intevation.de>
parents:
3079
diff
changeset
|
117 class="btn btn-info btn-xs flex-fill" |
3079
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
118 @click="differencesVisible ? showSurvey() : showDifferences()" |
3158
f91df0bc4986
client: compare surveys: prevent loading of differences from blocking the whole dialog
Markus Kottlaender <markus@intevation.de>
parents:
3146
diff
changeset
|
119 v-else |
2848
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
120 > |
3079
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
121 <translate v-if="differencesVisible" key="showsurvey" |
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
122 >Show survey</translate |
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
123 > |
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
124 <translate v-else key="showdifferences" |
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
125 >Show differences</translate |
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
126 > |
2848
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
127 </button> |
3085
7ac392edf8e2
client: added pane rotate button to profile dialog when second map is displayed
Markus Kottlaender <markus@intevation.de>
parents:
3079
diff
changeset
|
128 <button |
3146
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
129 v-if="!paneSetup.includes('FAIRWAYPROFILE')" |
3085
7ac392edf8e2
client: added pane rotate button to profile dialog when second map is displayed
Markus Kottlaender <markus@intevation.de>
parents:
3079
diff
changeset
|
130 class="btn btn-info btn-xs ml-2" |
7ac392edf8e2
client: added pane rotate button to profile dialog when second map is displayed
Markus Kottlaender <markus@intevation.de>
parents:
3079
diff
changeset
|
131 @click="$store.commit('application/paneRotate')" |
7ac392edf8e2
client: added pane rotate button to profile dialog when second map is displayed
Markus Kottlaender <markus@intevation.de>
parents:
3079
diff
changeset
|
132 v-tooltip="rotatePanesTooltip" |
7ac392edf8e2
client: added pane rotate button to profile dialog when second map is displayed
Markus Kottlaender <markus@intevation.de>
parents:
3079
diff
changeset
|
133 > |
7ac392edf8e2
client: added pane rotate button to profile dialog when second map is displayed
Markus Kottlaender <markus@intevation.de>
parents:
3079
diff
changeset
|
134 <font-awesome-icon icon="redo" fixed-width /> |
7ac392edf8e2
client: added pane rotate button to profile dialog when second map is displayed
Markus Kottlaender <markus@intevation.de>
parents:
3079
diff
changeset
|
135 </button> |
3086
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
136 <button |
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
137 class="btn btn-info btn-xs ml-2" |
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
138 @click="toggleSyncMaps()" |
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
139 v-tooltip="syncMapsTooltip" |
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
140 > |
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
141 <font-awesome-icon |
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
142 :icon="mapsAreSynced ? 'unlink' : 'link'" |
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
143 fixed-width |
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
144 /> |
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
145 </button> |
2848
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
146 </div> |
1480 | 147 <hr class="w-100 mb-0" /> |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
148 <small class="text-muted d-block mt-2"> |
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
149 <translate>Saved cross profiles</translate>: |
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
150 </small> |
1395
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
151 <div class="d-flex"> |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
152 <select |
1480 | 153 :class="[ |
154 'form-control form-control-sm flex-fill', | |
155 { 'rounded-left-only': selectedCut } | |
156 ]" | |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
157 v-model="selectedCut" |
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
158 > |
1395
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
159 <option></option> |
1480 | 160 <option |
161 v-for="(cut, index) in previousCuts" | |
162 :value="cut" | |
163 :key="index" | |
164 >{{ cut.label }}</option | |
165 > | |
1395
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
166 </select> |
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
167 <button |
2540
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
168 class="btn btn-sm btn-dark input-button-right" |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
169 @click="deleteSelectedCut(selectedCut)" |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
170 v-if="selectedCut" |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
171 > |
1480 | 172 <font-awesome-icon icon="trash" /> |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
173 </button> |
1395
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
174 </div> |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
175 <small class="text-muted d-block mt-2"> |
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
176 <translate>Enter coordinates manually</translate>: |
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
177 </small> |
1395
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
178 <div class="position-relative"> |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
179 <input |
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
180 class="form-control form-control-sm pr-5" |
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
181 placeholder="Lat,Lon,Lat,Lon" |
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
182 v-model="coordinatesInput" |
1480 | 183 /> |
1395
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
184 <button |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
185 class="btn btn-sm btn-info position-absolute input-button-right" |
1395
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
186 @click="applyManualCoordinates" |
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
187 style="top: 0; right: 0;" |
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
188 v-if="coordinatesInputIsValid" |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
189 > |
1480 | 190 <font-awesome-icon icon="check" /> |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
191 </button> |
1395
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
192 </div> |
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
193 <small class="d-flex text-left mt-2" v-if="startPoint && endPoint"> |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
194 <div class="text-nowrap mr-3"> |
1480 | 195 <b> <translate>Start</translate>: </b> <br /> |
196 Lat: {{ startPoint[1] }} <br /> | |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
197 Lon: {{ startPoint[0] }} |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
198 </div> |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
199 <div class="text-nowrap"> |
1480 | 200 <b>End:</b> <br /> |
201 Lat: {{ endPoint[1] }} <br /> | |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
202 Lon: {{ endPoint[0] }} |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
203 </div> |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
204 <button |
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
205 v-clipboard:copy="coordinatesForClipboard" |
1379 | 206 v-clipboard:success="onCopyCoordinates" |
207 class="btn btn-info btn-sm ml-auto mt-auto" | |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
208 > |
1480 | 209 <font-awesome-icon icon="copy" /> |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
210 </button> |
1379 | 211 </small> |
1395
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
212 <div class="d-flex mt-3"> |
1480 | 213 <div |
214 class="pr-3 w-50" | |
215 v-if="startPoint && endPoint && !selectedCut" | |
216 > | |
217 <button | |
218 class="btn btn-info btn-sm w-100" | |
219 @click="showLabelInput = !showLabelInput" | |
220 > | |
221 <font-awesome-icon :icon="showLabelInput ? 'times' : 'check'" /> | |
1379 | 222 {{ showLabelInput ? "Cancel" : "Save" }} |
223 </button> | |
224 </div> | |
1480 | 225 <div |
226 :class="startPoint && endPoint && !selectedCut ? 'w-50' : 'w-100'" | |
227 > | |
3578
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
228 <button |
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
229 class="btn btn-info btn-sm w-100" |
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
230 @click="toggleCutTool" |
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
231 :disabled="!selectedSurvey" |
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
232 > |
3062
87e0422cffa7
client: draw/cut tools work now with multiple maps
Markus Kottlaender <markus@intevation.de>
parents:
3054
diff
changeset
|
233 <font-awesome-icon :icon="cutToolEnabled ? 'times' : 'plus'" /> |
87e0422cffa7
client: draw/cut tools work now with multiple maps
Markus Kottlaender <markus@intevation.de>
parents:
3054
diff
changeset
|
234 {{ cutToolEnabled ? "Cancel" : "New" }} |
1379 | 235 </button> |
236 </div> | |
237 </div> | |
238 <div v-if="showLabelInput" class="mt-2"> | |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
239 <small class="text-muted"> |
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
240 <translate>Enter label for cross profile</translate>: |
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
241 </small> |
1379 | 242 <div class="position-relative"> |
1480 | 243 <input |
244 class="form-control form-control-sm pr-5" | |
245 v-model="cutLabel" | |
246 /> | |
1379 | 247 <button |
248 class="btn btn-sm btn-info position-absolute input-button-right" | |
249 @click="saveCut" | |
250 v-if="cutLabel" | |
251 style="top: 0; right: 0;" | |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
252 > |
1480 | 253 <font-awesome-icon icon="check" /> |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
254 </button> |
1379 | 255 </div> |
256 </div> | |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
257 </div> |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
258 </div> |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
259 </div> |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
260 </div> |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
261 </template> |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
262 |
1449 | 263 <style lang="scss" scoped> |
264 .input-button-right { | |
265 border-top-right-radius: $border-radius; | |
266 border-bottom-right-radius: $border-radius; | |
267 border-top-left-radius: 0 !important; | |
268 border-bottom-left-radius: 0 !important; | |
269 } | |
1395
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
270 |
1449 | 271 .rounded-left-only { |
272 border-top-right-radius: 0 !important; | |
273 border-bottom-right-radius: 0 !important; | |
274 border-top-left-radius: $border-radius; | |
275 border-bottom-left-radius: $border-radius; | |
276 } | |
3200 | 277 |
278 input, | |
279 select { | |
280 font-size: 0.8em; | |
281 } | |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
282 </style> |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
283 |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
284 <script> |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
285 /* This is Free Software under GNU Affero General Public License v >= 3.0 |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
286 * without warranty, see README.md and license for details. |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
287 * |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
288 * SPDX-License-Identifier: AGPL-3.0-or-later |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
289 * License-Filename: LICENSES/AGPL-3.0.txt |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
290 * |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1399
diff
changeset
|
291 * Copyright (C) 2018 by via donau |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
292 * – Österreichische Wasserstraßen-Gesellschaft mbH |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
293 * Software engineering by Intevation GmbH |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
294 * |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
295 * Author(s): |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
296 * Markus Kottländer <markus.kottlaender@intevation.de> |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
297 */ |
3044
c71373594719
client: map: prepared store to hold multiple map objects
Markus Kottlaender <markus@intevation.de>
parents:
3006
diff
changeset
|
298 import { mapState, mapGetters } from "vuex"; |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
299 import Feature from "ol/Feature"; |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
300 import LineString from "ol/geom/LineString"; |
2985
1b8bb4f89227
client: removed .js and .vue extention from imports
Markus Kottlaender <markus@intevation.de>
parents:
2957
diff
changeset
|
301 import { displayError, displayInfo } from "@/lib/errors"; |
2848
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
302 import { HTTP } from "@/lib/http"; |
3146
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
303 import { COMPARESURVEYS } from "@/components/paneSetups"; |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
304 |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
305 export default { |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
306 name: "profiles", |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
307 data() { |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
308 return { |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
309 coordinatesInput: "", |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
310 cutLabel: "", |
3146
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
311 showLabelInput: false |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
312 }; |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
313 }, |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
314 computed: { |
3146
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
315 ...mapState("application", ["showProfiles", "paneSetup"]), |
3086
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
316 ...mapState("map", ["openLayersMaps", "syncedMaps", "cutToolEnabled"]), |
2436
64ff5984351e
client: renamed store property
Markus Kottlaender <markus@intevation.de>
parents:
2435
diff
changeset
|
317 ...mapState("bottlenecks", [ |
64ff5984351e
client: renamed store property
Markus Kottlaender <markus@intevation.de>
parents:
2435
diff
changeset
|
318 "bottlenecksList", |
64ff5984351e
client: renamed store property
Markus Kottlaender <markus@intevation.de>
parents:
2435
diff
changeset
|
319 "surveys", |
64ff5984351e
client: renamed store property
Markus Kottlaender <markus@intevation.de>
parents:
2435
diff
changeset
|
320 "surveysLoading" |
64ff5984351e
client: renamed store property
Markus Kottlaender <markus@intevation.de>
parents:
2435
diff
changeset
|
321 ]), |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
322 ...mapState("fairwayprofile", [ |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
323 "previousCuts", |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
324 "startPoint", |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
325 "endPoint", |
2540
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
326 "profileLoading", |
2851
a7e31594959d
profiles: difference selection now with spinner
Thomas Junk <thomas.junk@intevation.de>
parents:
2848
diff
changeset
|
327 "differencesLoading", |
3146
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
328 "waterLevels", |
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
329 "currentProfile" |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
330 ]), |
3044
c71373594719
client: map: prepared store to hold multiple map objects
Markus Kottlaender <markus@intevation.de>
parents:
3006
diff
changeset
|
331 ...mapGetters("map", ["openLayersMap"]), |
3236
5914d615f703
available_fairway_depth: use the store luke
Thomas Junk <thomas.junk@intevation.de>
parents:
3204
diff
changeset
|
332 ...mapGetters("bottlenecks", ["orderedBottlenecks"]), |
2754
d0f6c222f4f9
client:correct a set of strings marking
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2740
diff
changeset
|
333 profilesLable() { |
3425
cb2f67a07400
client: toolbar/dialogs: unified toolbar tooltips and dialog titles
Markus Kottlaender <markus@intevation.de>
parents:
3236
diff
changeset
|
334 return this.$gettext("Bottleneck Surveys"); |
2754
d0f6c222f4f9
client:correct a set of strings marking
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2740
diff
changeset
|
335 }, |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
336 selectedBottleneck: { |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
337 get() { |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
338 return this.$store.state.bottlenecks.selectedBottleneck; |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
339 }, |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
340 set(name) { |
3204
1253fe15e3e3
client: identify: implemented popup when clicking the map and the intention is not clear...
Markus Kottlaender <markus@intevation.de>
parents:
3200
diff
changeset
|
341 this.$store.dispatch("bottlenecks/setSelectedBottleneck", name); |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
342 } |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
343 }, |
2540
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
344 selectedWaterLevel: { |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
345 get() { |
3512
30a47d9fc667
client: fairway profiles: removed some old code
Markus Kottlaender <markus@intevation.de>
parents:
3425
diff
changeset
|
346 return this.$store.state.fairwayprofile.selectedWaterLevel; |
2540
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
347 }, |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
348 set(value) { |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
349 this.$store.commit("fairwayprofile/setSelectedWaterLevel", value); |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
350 } |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
351 }, |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
352 selectedSurvey: { |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
353 get() { |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
354 return this.$store.state.bottlenecks.selectedSurvey; |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
355 }, |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
356 set(survey) { |
1394
b350b0b5cb6c
refactored fairwayprofile cross cuts
Markus Kottlaender <markus@intevation.de>
parents:
1391
diff
changeset
|
357 this.$store.commit("fairwayprofile/additionalSurvey", null); |
b350b0b5cb6c
refactored fairwayprofile cross cuts
Markus Kottlaender <markus@intevation.de>
parents:
1391
diff
changeset
|
358 this.$store.commit("bottlenecks/selectedSurvey", survey); |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
359 } |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
360 }, |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
361 additionalSurvey: { |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
362 get() { |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
363 return this.$store.state.fairwayprofile.additionalSurvey; |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
364 }, |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
365 set(survey) { |
1391
801ae5f4bc5b
fixed bug when changing additional survey in profile dialog
Markus Kottlaender <markus@intevation.de>
parents:
1382
diff
changeset
|
366 this.$store.commit("fairwayprofile/additionalSurvey", survey); |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
367 } |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
368 }, |
1395
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
369 selectedCut: { |
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
370 get() { |
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
371 return this.$store.state.fairwayprofile.selectedCut; |
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
372 }, |
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
373 set(cut) { |
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
374 this.$store.commit("fairwayprofile/selectedCut", cut); |
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
375 if (!cut) { |
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
376 this.$store.commit("fairwayprofile/clearCurrentProfile"); |
3062
87e0422cffa7
client: draw/cut tools work now with multiple maps
Markus Kottlaender <markus@intevation.de>
parents:
3054
diff
changeset
|
377 this.openLayersMaps.forEach(m => { |
87e0422cffa7
client: draw/cut tools work now with multiple maps
Markus Kottlaender <markus@intevation.de>
parents:
3054
diff
changeset
|
378 m.getLayer("CUTTOOL") |
87e0422cffa7
client: draw/cut tools work now with multiple maps
Markus Kottlaender <markus@intevation.de>
parents:
3054
diff
changeset
|
379 .getSource() |
87e0422cffa7
client: draw/cut tools work now with multiple maps
Markus Kottlaender <markus@intevation.de>
parents:
3054
diff
changeset
|
380 .clear(); |
87e0422cffa7
client: draw/cut tools work now with multiple maps
Markus Kottlaender <markus@intevation.de>
parents:
3054
diff
changeset
|
381 }); |
1395
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
382 } |
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
383 } |
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
384 }, |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
385 additionalSurveys() { |
3694
6f5297dc6039
client: bottleneck surveys dialog: show only compare survey dates that are not the selected one
Markus Kottlaender <markus@intevation.de>
parents:
3683
diff
changeset
|
386 return this.surveys.filter( |
6f5297dc6039
client: bottleneck surveys dialog: show only compare survey dates that are not the selected one
Markus Kottlaender <markus@intevation.de>
parents:
3683
diff
changeset
|
387 survey => survey.date_info !== this.selectedSurvey.date_info |
6f5297dc6039
client: bottleneck surveys dialog: show only compare survey dates that are not the selected one
Markus Kottlaender <markus@intevation.de>
parents:
3683
diff
changeset
|
388 ); |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
389 }, |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
390 coordinatesForClipboard() { |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
391 return ( |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
392 this.startPoint[1] + |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
393 "," + |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
394 this.startPoint[0] + |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
395 "," + |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
396 this.endPoint[1] + |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
397 "," + |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
398 this.endPoint[0] |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
399 ); |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
400 }, |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
401 coordinatesInputIsValid() { |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
402 const coordinates = this.coordinatesInput |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
403 .split(",") |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
404 .map(coord => parseFloat(coord.trim())) |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
405 .filter(c => Number(c) === c); |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
406 return coordinates.length === 4; |
3079
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
407 }, |
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
408 differencesVisible() { |
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
409 return ( |
3146
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
410 this.openLayersMap(COMPARESURVEYS.compare.id) && |
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
411 !this.openLayersMap(COMPARESURVEYS.compare.id) |
3079
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
412 .getLayer("BOTTLENECKISOLINE") |
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
413 .getVisible() && |
3146
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
414 this.openLayersMap(COMPARESURVEYS.compare.id) |
3079
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
415 .getLayer("DIFFERENCES") |
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
416 .getVisible() |
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
417 ); |
3085
7ac392edf8e2
client: added pane rotate button to profile dialog when second map is displayed
Markus Kottlaender <markus@intevation.de>
parents:
3079
diff
changeset
|
418 }, |
7ac392edf8e2
client: added pane rotate button to profile dialog when second map is displayed
Markus Kottlaender <markus@intevation.de>
parents:
3079
diff
changeset
|
419 rotatePanesTooltip() { |
7ac392edf8e2
client: added pane rotate button to profile dialog when second map is displayed
Markus Kottlaender <markus@intevation.de>
parents:
3079
diff
changeset
|
420 return this.$gettext("Rotate Maps"); |
3086
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
421 }, |
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
422 syncMapsTooltip() { |
3120
a77d0eafeccc
client: compare surveys: changing label of button to sync maps depending on whether maps are synced or not
Markus Kottlaender <markus@intevation.de>
parents:
3086
diff
changeset
|
423 return this.$gettext( |
a77d0eafeccc
client: compare surveys: changing label of button to sync maps depending on whether maps are synced or not
Markus Kottlaender <markus@intevation.de>
parents:
3086
diff
changeset
|
424 this.mapsAreSynced ? "Unsynchronize Maps" : "Synchronize Maps" |
a77d0eafeccc
client: compare surveys: changing label of button to sync maps depending on whether maps are synced or not
Markus Kottlaender <markus@intevation.de>
parents:
3086
diff
changeset
|
425 ); |
3086
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
426 }, |
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
427 mapsAreSynced() { |
3146
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
428 return this.syncedMaps.includes(COMPARESURVEYS.compare.id); |
3578
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
429 }, |
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
430 bottleneck() { |
5fb86c262756
client: cross profiles: display reference waterlevel and current waterlevel values in waterlevel dropdown and disabled New button as long as no survey is selected
Markus Kottlaender <markus@intevation.de>
parents:
3527
diff
changeset
|
431 return this.openLayersMap() |
3683
4a00ff7e44f0
client: fairway profile: avoid console error spamming by properly checking properties
Markus Kottlaender <markus@intevation.de>
parents:
3578
diff
changeset
|
432 ? this.openLayersMap() |
4a00ff7e44f0
client: fairway profile: avoid console error spamming by properly checking properties
Markus Kottlaender <markus@intevation.de>
parents:
3578
diff
changeset
|
433 .getLayer("BOTTLENECKS") |
4a00ff7e44f0
client: fairway profile: avoid console error spamming by properly checking properties
Markus Kottlaender <markus@intevation.de>
parents:
3578
diff
changeset
|
434 .getSource() |
4a00ff7e44f0
client: fairway profile: avoid console error spamming by properly checking properties
Markus Kottlaender <markus@intevation.de>
parents:
3578
diff
changeset
|
435 .getFeatures() |
4a00ff7e44f0
client: fairway profile: avoid console error spamming by properly checking properties
Markus Kottlaender <markus@intevation.de>
parents:
3578
diff
changeset
|
436 .find(f => f.get("objnam") === this.selectedBottleneck) |
4a00ff7e44f0
client: fairway profile: avoid console error spamming by properly checking properties
Markus Kottlaender <markus@intevation.de>
parents:
3578
diff
changeset
|
437 : null; |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
438 } |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
439 }, |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
440 watch: { |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
441 selectedBottleneck() { |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
442 this.$store.dispatch("fairwayprofile/previousCuts"); |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
443 this.cutLabel = |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
444 this.selectedBottleneck + " (" + new Date().toISOString() + ")"; |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
445 }, |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
446 selectedSurvey(survey) { |
1394
b350b0b5cb6c
refactored fairwayprofile cross cuts
Markus Kottlaender <markus@intevation.de>
parents:
1391
diff
changeset
|
447 this.loadProfile(survey); |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
448 }, |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
449 additionalSurvey(survey) { |
3079
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
450 if (survey) { |
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
451 this.loadDifferences(); |
3146
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
452 this.$store.commit( |
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
453 "application/paneSetup", |
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
454 Object.keys(this.currentProfile).length |
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
455 ? "COMPARESURVEYS_FAIRWAYPROFILE" |
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
456 : "COMPARESURVEYS" |
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
457 ); |
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
458 this.$store.commit("map/syncedMaps", [COMPARESURVEYS.compare.id]); |
3079
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
459 } else { |
3146
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
460 this.$store.commit( |
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
461 "application/paneSetup", |
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
462 Object.keys(this.currentProfile).length ? "FAIRWAYPROFILE" : "DEFAULT" |
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
463 ); |
3086
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
464 this.$store.commit("map/syncedMaps", []); |
3079
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
465 } |
1394
b350b0b5cb6c
refactored fairwayprofile cross cuts
Markus Kottlaender <markus@intevation.de>
parents:
1391
diff
changeset
|
466 this.loadProfile(survey); |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
467 }, |
1395
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
468 selectedCut(cut) { |
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
469 if (cut) { |
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
470 this.applyCoordinates(cut.coordinates); |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
471 } |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
472 } |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
473 }, |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
474 methods: { |
3086
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
475 toggleSyncMaps() { |
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
476 if (this.mapsAreSynced) { |
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
477 this.$store.commit( |
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
478 "map/syncedMaps", |
3146
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
479 this.syncedMaps.filter(m => m !== COMPARESURVEYS.compare.id) |
3086
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
480 ); |
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
481 } else { |
3146
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
482 this.$store.commit("map/syncedMaps", [COMPARESURVEYS.compare.id]); |
3086
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
483 } |
a69a8deb56fe
client: added button to sync/unsync maps when comparing sounding results
Markus Kottlaender <markus@intevation.de>
parents:
3085
diff
changeset
|
484 }, |
3079
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
485 loadDifferences() { |
2851
a7e31594959d
profiles: difference selection now with spinner
Thomas Junk <thomas.junk@intevation.de>
parents:
2848
diff
changeset
|
486 this.$store.commit("fairwayprofile/setDifferencesLoading", true); |
2848
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
487 HTTP.post( |
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
488 "/diff", |
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
489 { |
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
490 bottleneck: this.selectedSurvey.bottleneck_id, |
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
491 minuend: this.selectedSurvey.date_info, |
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
492 subtrahend: this.additionalSurvey.date_info |
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
493 }, |
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
494 { |
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
495 headers: { |
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
496 "X-Gemma-Auth": localStorage.getItem("token") |
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
497 } |
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
498 } |
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
499 ) |
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
500 .catch(error => { |
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
501 const { status, data } = error.response; |
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
502 displayError({ |
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
503 title: this.$gettext("Backend Error"), |
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
504 message: `${status}: ${data.message || data}` |
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
505 }); |
2851
a7e31594959d
profiles: difference selection now with spinner
Thomas Junk <thomas.junk@intevation.de>
parents:
2848
diff
changeset
|
506 }) |
a7e31594959d
profiles: difference selection now with spinner
Thomas Junk <thomas.junk@intevation.de>
parents:
2848
diff
changeset
|
507 .finally(() => { |
a7e31594959d
profiles: difference selection now with spinner
Thomas Junk <thomas.junk@intevation.de>
parents:
2848
diff
changeset
|
508 this.$store.commit("fairwayprofile/setDifferencesLoading", false); |
2848
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
509 }); |
b6886706b325
profiles: display sounding_differences
Thomas Junk <thomas.junk@intevation.de>
parents:
2844
diff
changeset
|
510 }, |
3079
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
511 showDifferences() { |
3146
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
512 this.openLayersMap(COMPARESURVEYS.compare.id) |
3079
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
513 .getLayer("BOTTLENECKISOLINE") |
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
514 .setVisible(false); |
3146
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
515 this.openLayersMap(COMPARESURVEYS.compare.id) |
3079
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
516 .getLayer("DIFFERENCES") |
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
517 .setVisible(true); |
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
518 }, |
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
519 showSurvey() { |
3146
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
520 this.openLayersMap(COMPARESURVEYS.compare.id) |
3079
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
521 .getLayer("BOTTLENECKISOLINE") |
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
522 .setVisible(true); |
3146
b6cc4838d2c0
client: implemented pane mechanic for diagrams
Markus Kottlaender <markus@intevation.de>
parents:
3121
diff
changeset
|
523 this.openLayersMap(COMPARESURVEYS.compare.id) |
3079
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
524 .getLayer("DIFFERENCES") |
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
525 .setVisible(false); |
57255fda7594
client: compare surveys on map
Markus Kottlaender <markus@intevation.de>
parents:
3062
diff
changeset
|
526 }, |
2387
f185503ef35a
client: unified box's header styles by creating a reusable component
Markus Kottlaender <markus@intevation.de>
parents:
2365
diff
changeset
|
527 close() { |
f185503ef35a
client: unified box's header styles by creating a reusable component
Markus Kottlaender <markus@intevation.de>
parents:
2365
diff
changeset
|
528 this.$store.commit("application/showProfiles", false); |
f185503ef35a
client: unified box's header styles by creating a reusable component
Markus Kottlaender <markus@intevation.de>
parents:
2365
diff
changeset
|
529 }, |
1394
b350b0b5cb6c
refactored fairwayprofile cross cuts
Markus Kottlaender <markus@intevation.de>
parents:
1391
diff
changeset
|
530 loadProfile(survey) { |
b350b0b5cb6c
refactored fairwayprofile cross cuts
Markus Kottlaender <markus@intevation.de>
parents:
1391
diff
changeset
|
531 if (survey) { |
b350b0b5cb6c
refactored fairwayprofile cross cuts
Markus Kottlaender <markus@intevation.de>
parents:
1391
diff
changeset
|
532 this.$store.commit("fairwayprofile/profileLoading", true); |
1399
8e2c9e518440
improved search style
Markus Kottlaender <markus@intevation.de>
parents:
1396
diff
changeset
|
533 this.$store |
8e2c9e518440
improved search style
Markus Kottlaender <markus@intevation.de>
parents:
1396
diff
changeset
|
534 .dispatch("fairwayprofile/loadProfile", survey) |
2550
dc42faf90e1d
client: profiles: trigger splitscreen loading animation when changing compare survey
Markus Kottlaender <markus@intevation.de>
parents:
2541
diff
changeset
|
535 .finally(() => { |
dc42faf90e1d
client: profiles: trigger splitscreen loading animation when changing compare survey
Markus Kottlaender <markus@intevation.de>
parents:
2541
diff
changeset
|
536 this.$store.commit("fairwayprofile/profileLoading", false); |
dc42faf90e1d
client: profiles: trigger splitscreen loading animation when changing compare survey
Markus Kottlaender <markus@intevation.de>
parents:
2541
diff
changeset
|
537 }); |
1394
b350b0b5cb6c
refactored fairwayprofile cross cuts
Markus Kottlaender <markus@intevation.de>
parents:
1391
diff
changeset
|
538 } |
b350b0b5cb6c
refactored fairwayprofile cross cuts
Markus Kottlaender <markus@intevation.de>
parents:
1391
diff
changeset
|
539 }, |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
540 toggleCutTool() { |
3062
87e0422cffa7
client: draw/cut tools work now with multiple maps
Markus Kottlaender <markus@intevation.de>
parents:
3054
diff
changeset
|
541 this.$store.commit("map/cutToolEnabled", !this.cutToolEnabled); |
87e0422cffa7
client: draw/cut tools work now with multiple maps
Markus Kottlaender <markus@intevation.de>
parents:
3054
diff
changeset
|
542 this.$store.commit("map/lineToolEnabled", false); |
87e0422cffa7
client: draw/cut tools work now with multiple maps
Markus Kottlaender <markus@intevation.de>
parents:
3054
diff
changeset
|
543 this.$store.commit("map/polygonToolEnabled", false); |
1437
1cd1549aab47
fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents:
1435
diff
changeset
|
544 this.$store.commit("map/setCurrentMeasurement", null); |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
545 }, |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
546 onCopyCoordinates() { |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
547 displayInfo({ |
1441
a4554e942954
Client: add a set of marked translations
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1437
diff
changeset
|
548 message: this.$gettext("Coordinates copied to clipboard!") |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
549 }); |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
550 }, |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
551 applyManualCoordinates() { |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
552 const coordinates = this.coordinatesInput |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
553 .split(",") |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
554 .map(coord => parseFloat(coord.trim())); |
1395
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
555 this.selectedCut = null; |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
556 this.coordinatesInput = ""; |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
557 this.applyCoordinates([ |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
558 coordinates[1], |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
559 coordinates[0], |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
560 coordinates[3], |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
561 coordinates[2] |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
562 ]); |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
563 }, |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
564 applyCoordinates(coordinates) { |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
565 // allow only numbers |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
566 coordinates = coordinates.filter(c => Number(c) === c); |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
567 if (coordinates.length === 4) { |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
568 // draw line on map |
3062
87e0422cffa7
client: draw/cut tools work now with multiple maps
Markus Kottlaender <markus@intevation.de>
parents:
3054
diff
changeset
|
569 this.openLayersMaps.forEach(m => { |
87e0422cffa7
client: draw/cut tools work now with multiple maps
Markus Kottlaender <markus@intevation.de>
parents:
3054
diff
changeset
|
570 m.getLayer("CUTTOOL") |
87e0422cffa7
client: draw/cut tools work now with multiple maps
Markus Kottlaender <markus@intevation.de>
parents:
3054
diff
changeset
|
571 .getSource() |
87e0422cffa7
client: draw/cut tools work now with multiple maps
Markus Kottlaender <markus@intevation.de>
parents:
3054
diff
changeset
|
572 .clear(); |
87e0422cffa7
client: draw/cut tools work now with multiple maps
Markus Kottlaender <markus@intevation.de>
parents:
3054
diff
changeset
|
573 }); |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
574 const cut = new Feature({ |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
575 geometry: new LineString([ |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
576 [coordinates[0], coordinates[1]], |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
577 [coordinates[2], coordinates[3]] |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
578 ]).transform("EPSG:4326", "EPSG:3857") |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
579 }); |
3062
87e0422cffa7
client: draw/cut tools work now with multiple maps
Markus Kottlaender <markus@intevation.de>
parents:
3054
diff
changeset
|
580 this.openLayersMaps.forEach(m => { |
87e0422cffa7
client: draw/cut tools work now with multiple maps
Markus Kottlaender <markus@intevation.de>
parents:
3054
diff
changeset
|
581 m.getLayer("CUTTOOL") |
87e0422cffa7
client: draw/cut tools work now with multiple maps
Markus Kottlaender <markus@intevation.de>
parents:
3054
diff
changeset
|
582 .getSource() |
87e0422cffa7
client: draw/cut tools work now with multiple maps
Markus Kottlaender <markus@intevation.de>
parents:
3054
diff
changeset
|
583 .addFeature(cut); |
87e0422cffa7
client: draw/cut tools work now with multiple maps
Markus Kottlaender <markus@intevation.de>
parents:
3054
diff
changeset
|
584 }); |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
585 |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
586 // draw diagram |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
587 this.$store.dispatch("fairwayprofile/cut", cut); |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
588 } else { |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
589 displayError({ |
1441
a4554e942954
Client: add a set of marked translations
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1437
diff
changeset
|
590 title: this.$gettext("Invalid input"), |
a4554e942954
Client: add a set of marked translations
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1437
diff
changeset
|
591 message: this.$gettext( |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
592 "Please enter correct coordinates in the format: Lat,Lon,Lat,Lon" |
1441
a4554e942954
Client: add a set of marked translations
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1437
diff
changeset
|
593 ) |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
594 }); |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
595 } |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
596 }, |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
597 saveCut() { |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
598 const previousCuts = |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
599 JSON.parse(localStorage.getItem("previousCuts")) || []; |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
600 const newEntry = { |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
601 label: this.cutLabel, |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
602 bottleneckName: this.selectedBottleneck, |
1377
fa7d647f8d77
added timestamp to saved cross profiles
Markus Kottlaender <markus@intevation.de>
parents:
1372
diff
changeset
|
603 coordinates: [...this.startPoint, ...this.endPoint], |
fa7d647f8d77
added timestamp to saved cross profiles
Markus Kottlaender <markus@intevation.de>
parents:
1372
diff
changeset
|
604 timestamp: new Date().getTime() |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
605 }; |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
606 const existingEntry = previousCuts.find(cut => { |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
607 return JSON.stringify(cut) === JSON.stringify(newEntry); |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
608 }); |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
609 if (!existingEntry) previousCuts.push(newEntry); |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
610 if (previousCuts.length > 100) previousCuts.shift(); |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
611 localStorage.setItem("previousCuts", JSON.stringify(previousCuts)); |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
612 this.$store.dispatch("fairwayprofile/previousCuts"); |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
613 |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
614 this.showLabelInput = false; |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
615 displayInfo({ |
1441
a4554e942954
Client: add a set of marked translations
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1437
diff
changeset
|
616 title: this.$gettext("Profile saved!"), |
a4554e942954
Client: add a set of marked translations
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1437
diff
changeset
|
617 message: this.$gettext( |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
618 'You can now select these coordinates from the "Saved cross profiles" menu to restore this cross profile.' |
1441
a4554e942954
Client: add a set of marked translations
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1437
diff
changeset
|
619 ) |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
620 }); |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
621 }, |
2540
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
622 deleteSelectedCut(cut) { |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
623 this.$store.commit("application/popup", { |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
624 icon: "trash", |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
625 title: this.$gettext("Delete cross profile"), |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
626 content: |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
627 this.$gettext("Do you really want to delete the cross profile:") + |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
628 `<br> |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
629 <b>${cut.label}</b>`, |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
630 confirm: { |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
631 label: this.$gettext("Delete"), |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
632 icon: "trash", |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
633 callback: () => { |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
634 let previousCuts = |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
635 JSON.parse(localStorage.getItem("previousCuts")) || []; |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
636 previousCuts = previousCuts.filter(cut => { |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
637 return JSON.stringify(cut) !== JSON.stringify(this.selectedCut); |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
638 }); |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
639 localStorage.setItem("previousCuts", JSON.stringify(previousCuts)); |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
640 this.$store.commit("fairwayprofile/selectedCut", null); |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
641 this.$store.dispatch("fairwayprofile/previousCuts"); |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
642 displayInfo({ title: this.$gettext("Profile deleted!") }); |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
643 } |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
644 }, |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
645 cancel: { |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
646 label: this.$gettext("Cancel"), |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
647 icon: "times" |
3c17d401fbd4
client: cross profiles: moved waterlevel select to Profiles dialog
Markus Kottlaender <markus@intevation.de>
parents:
2534
diff
changeset
|
648 } |
1395
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
649 }); |
210e9f16f8a0
delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents:
1394
diff
changeset
|
650 }, |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
651 moveToBottleneck() { |
2436
64ff5984351e
client: renamed store property
Markus Kottlaender <markus@intevation.de>
parents:
2435
diff
changeset
|
652 const bottleneck = this.bottlenecksList.find( |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
653 bn => bn.properties.name === this.selectedBottleneck |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
654 ); |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
655 if (!bottleneck) return; |
3054
1ef2f4179d30
client: map store: merged/renamed method(s)
Markus Kottlaender <markus@intevation.de>
parents:
3044
diff
changeset
|
656 this.$store.dispatch("map/moveToFeauture", { |
2136
3138d60dd1a6
moveToExtent substitutes moveMap where easy doable
Thomas Junk <thomas.junk@intevation.de>
parents:
1613
diff
changeset
|
657 feature: bottleneck, |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
658 zoom: 17, |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
659 preventZoomOut: true |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
660 }); |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
661 } |
2434
817b3d726b43
client: loadBottlenecks (bottleneck_overview) only where needed
Markus Kottlaender <markus@intevation.de>
parents:
2387
diff
changeset
|
662 }, |
817b3d726b43
client: loadBottlenecks (bottleneck_overview) only where needed
Markus Kottlaender <markus@intevation.de>
parents:
2387
diff
changeset
|
663 mounted() { |
2435
3679d604645e
client: renamed store action
Markus Kottlaender <markus@intevation.de>
parents:
2434
diff
changeset
|
664 this.$store.dispatch("bottlenecks/loadBottlenecksList"); |
1372
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
665 } |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
666 }; |
553aadd97087
new cross profile workflow (WIP)
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
667 </script> |