annotate client/src/components/systemconfiguration/MorphologyClassbreaks.vue @ 5736:55892008ec96 default tip

Fixed a bunch of corner cases in WG import.
author Sascha Wilde <wilde@sha-bang.de>
date Wed, 29 May 2024 19:02:42 +0200
parents 84d01a536bec
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
1 <template>
3889
851c0ccba59b client: configuration: separated sections in tabs
Markus Kottlaender <markus@intevation.de>
parents: 3867
diff changeset
2 <div class="d-flex flex-column py-4">
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
3 <div class="px-3">
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
4 <h6 class="font-weight-bold"><translate>Sounding Result</translate></h6>
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
5 <div class="d-flex flex-wrap">
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
6 <div
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
7 class="input-group mb-3 mr-2 classbreak"
3625
a688a478e35f implemented configuration backend and frontend
Markus Kottlaender <markus@intevation.de>
parents: 3622
diff changeset
8 v-for="(value, i) in morphologyClassbreaks"
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
9 :key="i"
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
10 >
3763
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
11 <div class="input-group-prepend">
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
12 <button
3856
0b8b62fd8cea client: configuration: added tint icon to classbreak color selection
Markus Kottlaender <markus@intevation.de>
parents: 3855
diff changeset
13 :class="[
0b8b62fd8cea client: configuration: added tint icon to classbreak color selection
Markus Kottlaender <markus@intevation.de>
parents: 3855
diff changeset
14 'btn btn-sm btn-outline-secondary',
0b8b62fd8cea client: configuration: added tint icon to classbreak color selection
Markus Kottlaender <markus@intevation.de>
parents: 3855
diff changeset
15 { hasColor: morphologyClassbreaks[i][1] !== '#ffffff' }
0b8b62fd8cea client: configuration: added tint icon to classbreak color selection
Markus Kottlaender <markus@intevation.de>
parents: 3855
diff changeset
16 ]"
3763
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
17 :style="
3856
0b8b62fd8cea client: configuration: added tint icon to classbreak color selection
Markus Kottlaender <markus@intevation.de>
parents: 3855
diff changeset
18 'width: 28px; background-color: ' +
3763
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
19 (morphologyClassbreaks[i][1] || 'transparent')
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
20 "
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
21 type="button"
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
22 @click="showColorPicker('sounding-' + i)"
3856
0b8b62fd8cea client: configuration: added tint icon to classbreak color selection
Markus Kottlaender <markus@intevation.de>
parents: 3855
diff changeset
23 >
0b8b62fd8cea client: configuration: added tint icon to classbreak color selection
Markus Kottlaender <markus@intevation.de>
parents: 3855
diff changeset
24 <font-awesome-icon icon="tint" />
0b8b62fd8cea client: configuration: added tint icon to classbreak color selection
Markus Kottlaender <markus@intevation.de>
parents: 3855
diff changeset
25 </button>
3763
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
26 <div
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
27 class="color-picker card shadow-sm"
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
28 v-if="activeColorPicker === 'sounding-' + i"
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
29 >
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
30 <UIBoxHeader
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
31 :title="colorPickerTitle"
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
32 icon="paint-brush"
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
33 :actions="[
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
34 {
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
35 callback: () => {
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
36 morphologyClassbreaks[i][1] = '#ffffff';
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
37 activeColorPicker = null;
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
38 },
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
39 icon: 'trash'
3859
d1901366676a client: configuration: replaced icon to close colorpicker for classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3856
diff changeset
40 },
d1901366676a client: configuration: replaced icon to close colorpicker for classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3856
diff changeset
41 {
d1901366676a client: configuration: replaced icon to close colorpicker for classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3856
diff changeset
42 callback: () => {
d1901366676a client: configuration: replaced icon to close colorpicker for classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3856
diff changeset
43 activeColorPicker = null;
d1901366676a client: configuration: replaced icon to close colorpicker for classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3856
diff changeset
44 },
d1901366676a client: configuration: replaced icon to close colorpicker for classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3856
diff changeset
45 icon: 'check'
3763
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
46 }
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
47 ]"
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
48 />
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
49 <chrome-picker
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
50 v-model="morphologyClassbreaks[i][1]"
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
51 @input="color => (morphologyClassbreaks[i][1] = color.hex)"
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
52 />
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
53 </div>
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
54 </div>
4299
43f28ef473c7 validator for morpology classbreaks
Thomas Junk <thomas.junk@intevation.de>
parents: 4298
diff changeset
55 <form id="novalidatedform" />
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
56 <input
4282
5d6a4dd3efa1 client: improve input validation in sys-config for Bottleneck Morphology Classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 3889
diff changeset
57 v-model.number="morphologyClassbreaks[i][0]"
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
58 type="number"
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
59 min="0"
4299
43f28ef473c7 validator for morpology classbreaks
Thomas Junk <thomas.junk@intevation.de>
parents: 4298
diff changeset
60 step="0.01"
43f28ef473c7 validator for morpology classbreaks
Thomas Junk <thomas.junk@intevation.de>
parents: 4298
diff changeset
61 class="form-control form-control-sm numfield"
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
62 />
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
63 <div class="input-group-append">
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
64 <button
3612
c48b1e0fccd0 client: configuration: morphology: changed delete button color, to be less flashy
Markus Kottlaender <markus@intevation.de>
parents: 3611
diff changeset
65 class="btn btn-sm btn-outline-secondary"
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
66 type="button"
3625
a688a478e35f implemented configuration backend and frontend
Markus Kottlaender <markus@intevation.de>
parents: 3622
diff changeset
67 @click="morphologyClassbreaks.splice(i, 1)"
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
68 >
3614
2055b689be54 client: configuration: morphology: even less flashy delete button style
Markus Kottlaender <markus@intevation.de>
parents: 3612
diff changeset
69 <font-awesome-icon icon="times" />
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
70 </button>
3855
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
71 <button
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
72 class="btn btn-sm btn-outline-secondary"
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
73 @click="addClassbreak(morphologyClassbreaks, i)"
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
74 >
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
75 <font-awesome-icon icon="plus" />
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
76 </button>
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
77 </div>
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
78 </div>
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
79 <button
3855
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
80 v-if="!morphologyClassbreaks.length"
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
81 class="btn btn-sm btn-success mb-3"
3855
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
82 @click="addClassbreak(morphologyClassbreaks, 0)"
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
83 >
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
84 <font-awesome-icon icon="plus" />
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
85 </button>
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
86 </div>
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
87 </div>
3860
9a7a27301720 client: configuration: save sounding result classbreaks and comparison classbreaks separately
Markus Kottlaender <markus@intevation.de>
parents: 3859
diff changeset
88 <div class="mb-4 px-3">
9a7a27301720 client: configuration: save sounding result classbreaks and comparison classbreaks separately
Markus Kottlaender <markus@intevation.de>
parents: 3859
diff changeset
89 <a
9a7a27301720 client: configuration: save sounding result classbreaks and comparison classbreaks separately
Markus Kottlaender <markus@intevation.de>
parents: 3859
diff changeset
90 @click.prevent="submitClassbreaks"
4298
10bbaa57227c client: disable send button with same values for bottleneck Morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4287
diff changeset
91 :class="[
10bbaa57227c client: disable send button with same values for bottleneck Morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4287
diff changeset
92 'btn btn-info btn-sm text-white',
4302
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
93 { disabled: !checkClassbreaks }
4298
10bbaa57227c client: disable send button with same values for bottleneck Morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4287
diff changeset
94 ]"
3860
9a7a27301720 client: configuration: save sounding result classbreaks and comparison classbreaks separately
Markus Kottlaender <markus@intevation.de>
parents: 3859
diff changeset
95 >
9a7a27301720 client: configuration: save sounding result classbreaks and comparison classbreaks separately
Markus Kottlaender <markus@intevation.de>
parents: 3859
diff changeset
96 <translate>Send</translate>
9a7a27301720 client: configuration: save sounding result classbreaks and comparison classbreaks separately
Markus Kottlaender <markus@intevation.de>
parents: 3859
diff changeset
97 </a>
3861
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
98 <a
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
99 @click.prevent="resetClassbreaks"
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
100 class="btn btn-outline-info btn-sm ml-2"
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
101 >
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
102 <translate>Reset to defaults</translate>
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
103 </a>
4302
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
104 <span class="text-danger" v-if="!checkClassbreaks">
4299
43f28ef473c7 validator for morpology classbreaks
Thomas Junk <thomas.junk@intevation.de>
parents: 4298
diff changeset
105 {{ validationMessage }}
4282
5d6a4dd3efa1 client: improve input validation in sys-config for Bottleneck Morphology Classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 3889
diff changeset
106 </span>
4372
4e6b4fd68979 clients: improve systemconfig classbreaks
Bernhard Reiter <bernhard@intevation.de>
parents: 4370
diff changeset
107 <span class="text-secondary fix-trans-space" v-translate>
4e6b4fd68979 clients: improve systemconfig classbreaks
Bernhard Reiter <bernhard@intevation.de>
parents: 4370
diff changeset
108 Changes need a map reload. Consider informing your users.
4e6b4fd68979 clients: improve systemconfig classbreaks
Bernhard Reiter <bernhard@intevation.de>
parents: 4370
diff changeset
109 </span>
3860
9a7a27301720 client: configuration: save sounding result classbreaks and comparison classbreaks separately
Markus Kottlaender <markus@intevation.de>
parents: 3859
diff changeset
110 </div>
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
111 <div class="px-3">
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
112 <h6 class="font-weight-bold">
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
113 <translate>Sounding Result Comparison</translate>
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
114 </h6>
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
115 <div class="d-flex flex-wrap">
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
116 <div
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
117 class="input-group mb-3 mr-2 classbreak"
3625
a688a478e35f implemented configuration backend and frontend
Markus Kottlaender <markus@intevation.de>
parents: 3622
diff changeset
118 v-for="(value, i) in morphologyClassbreaksCompare"
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
119 :key="i"
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
120 >
3763
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
121 <div class="input-group-prepend">
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
122 <button
3856
0b8b62fd8cea client: configuration: added tint icon to classbreak color selection
Markus Kottlaender <markus@intevation.de>
parents: 3855
diff changeset
123 :class="[
0b8b62fd8cea client: configuration: added tint icon to classbreak color selection
Markus Kottlaender <markus@intevation.de>
parents: 3855
diff changeset
124 'btn btn-sm btn-outline-secondary',
0b8b62fd8cea client: configuration: added tint icon to classbreak color selection
Markus Kottlaender <markus@intevation.de>
parents: 3855
diff changeset
125 { hasColor: morphologyClassbreaksCompare[i][1] !== '#ffffff' }
0b8b62fd8cea client: configuration: added tint icon to classbreak color selection
Markus Kottlaender <markus@intevation.de>
parents: 3855
diff changeset
126 ]"
3763
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
127 :style="
3856
0b8b62fd8cea client: configuration: added tint icon to classbreak color selection
Markus Kottlaender <markus@intevation.de>
parents: 3855
diff changeset
128 'width: 28px; background-color: ' +
3763
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
129 (morphologyClassbreaksCompare[i][1] || 'transparent')
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
130 "
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
131 type="button"
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
132 @click="showColorPicker('compare-' + i)"
3856
0b8b62fd8cea client: configuration: added tint icon to classbreak color selection
Markus Kottlaender <markus@intevation.de>
parents: 3855
diff changeset
133 >
0b8b62fd8cea client: configuration: added tint icon to classbreak color selection
Markus Kottlaender <markus@intevation.de>
parents: 3855
diff changeset
134 <font-awesome-icon icon="tint" />
0b8b62fd8cea client: configuration: added tint icon to classbreak color selection
Markus Kottlaender <markus@intevation.de>
parents: 3855
diff changeset
135 </button>
3763
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
136 <div
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
137 class="color-picker card shadow-sm"
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
138 v-if="activeColorPicker === 'compare-' + i"
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
139 >
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
140 <UIBoxHeader
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
141 :title="colorPickerTitle"
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
142 icon="paint-brush"
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
143 :actions="[
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
144 {
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
145 callback: () => {
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
146 morphologyClassbreaksCompare[i][1] = '#ffffff';
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
147 activeColorPicker = null;
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
148 },
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
149 icon: 'trash'
3859
d1901366676a client: configuration: replaced icon to close colorpicker for classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3856
diff changeset
150 },
d1901366676a client: configuration: replaced icon to close colorpicker for classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3856
diff changeset
151 {
d1901366676a client: configuration: replaced icon to close colorpicker for classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3856
diff changeset
152 callback: () => {
d1901366676a client: configuration: replaced icon to close colorpicker for classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3856
diff changeset
153 activeColorPicker = null;
d1901366676a client: configuration: replaced icon to close colorpicker for classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3856
diff changeset
154 },
d1901366676a client: configuration: replaced icon to close colorpicker for classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3856
diff changeset
155 icon: 'check'
3763
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
156 }
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
157 ]"
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
158 />
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
159 <chrome-picker
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
160 v-model="morphologyClassbreaksCompare[i][1]"
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
161 @input="
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
162 color => (morphologyClassbreaksCompare[i][1] = color.hex)
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
163 "
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
164 />
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
165 </div>
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
166 </div>
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
167 <input
4282
5d6a4dd3efa1 client: improve input validation in sys-config for Bottleneck Morphology Classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 3889
diff changeset
168 v-model.number="morphologyClassbreaksCompare[i][0]"
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
169 type="number"
4299
43f28ef473c7 validator for morpology classbreaks
Thomas Junk <thomas.junk@intevation.de>
parents: 4298
diff changeset
170 step="0.01"
43f28ef473c7 validator for morpology classbreaks
Thomas Junk <thomas.junk@intevation.de>
parents: 4298
diff changeset
171 class="form-control form-control-sm numfield"
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
172 />
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
173 <div class="input-group-append">
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
174 <button
3612
c48b1e0fccd0 client: configuration: morphology: changed delete button color, to be less flashy
Markus Kottlaender <markus@intevation.de>
parents: 3611
diff changeset
175 class="btn btn-sm btn-outline-secondary"
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
176 type="button"
3625
a688a478e35f implemented configuration backend and frontend
Markus Kottlaender <markus@intevation.de>
parents: 3622
diff changeset
177 @click="morphologyClassbreaksCompare.splice(i, 1)"
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
178 >
3614
2055b689be54 client: configuration: morphology: even less flashy delete button style
Markus Kottlaender <markus@intevation.de>
parents: 3612
diff changeset
179 <font-awesome-icon icon="times" />
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
180 </button>
3855
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
181 <button
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
182 class="btn btn-sm btn-outline-secondary"
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
183 @click="addClassbreak(morphologyClassbreaksCompare, i)"
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
184 >
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
185 <font-awesome-icon icon="plus" />
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
186 </button>
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
187 </div>
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
188 </div>
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
189 <button
3855
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
190 v-if="!morphologyClassbreaksCompare.length"
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
191 class="btn btn-sm btn-success mb-3"
3855
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
192 @click="addClassbreak(morphologyClassbreaksCompare, 0)"
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
193 >
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
194 <font-awesome-icon icon="plus" />
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
195 </button>
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
196 </div>
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
197 </div>
3860
9a7a27301720 client: configuration: save sounding result classbreaks and comparison classbreaks separately
Markus Kottlaender <markus@intevation.de>
parents: 3859
diff changeset
198 <div class="px-3">
9a7a27301720 client: configuration: save sounding result classbreaks and comparison classbreaks separately
Markus Kottlaender <markus@intevation.de>
parents: 3859
diff changeset
199 <a
9a7a27301720 client: configuration: save sounding result classbreaks and comparison classbreaks separately
Markus Kottlaender <markus@intevation.de>
parents: 3859
diff changeset
200 @click.prevent="submitClassbreaksCompare"
4282
5d6a4dd3efa1 client: improve input validation in sys-config for Bottleneck Morphology Classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 3889
diff changeset
201 :class="[
5d6a4dd3efa1 client: improve input validation in sys-config for Bottleneck Morphology Classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 3889
diff changeset
202 'btn btn-info btn-sm text-white',
4302
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
203 { disabled: !checkClassbreaksCompare }
4282
5d6a4dd3efa1 client: improve input validation in sys-config for Bottleneck Morphology Classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 3889
diff changeset
204 ]"
3860
9a7a27301720 client: configuration: save sounding result classbreaks and comparison classbreaks separately
Markus Kottlaender <markus@intevation.de>
parents: 3859
diff changeset
205 >
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
206 <translate>Send</translate>
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
207 </a>
3861
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
208 <a
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
209 @click.prevent="resetClassbreaksCompare"
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
210 class="btn btn-outline-info btn-sm ml-2"
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
211 >
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
212 <translate>Reset to defaults</translate>
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
213 </a>
4302
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
214 <span class="text-danger" v-if="!checkClassbreaksCompare">
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
215 {{ validationMessageForCompare }}
4282
5d6a4dd3efa1 client: improve input validation in sys-config for Bottleneck Morphology Classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 3889
diff changeset
216 </span>
4372
4e6b4fd68979 clients: improve systemconfig classbreaks
Bernhard Reiter <bernhard@intevation.de>
parents: 4370
diff changeset
217 <span class="text-secondary fix-trans-space" v-translate>
4373
aa249a25f0ec client: silence a code layout warning
Bernhard Reiter <bernhard@intevation.de>
parents: 4372
diff changeset
218 Colour changes need a map reload. Value changes need a de- and re-select
aa249a25f0ec client: silence a code layout warning
Bernhard Reiter <bernhard@intevation.de>
parents: 4372
diff changeset
219 of a difference calculation. Inform your users!
4372
4e6b4fd68979 clients: improve systemconfig classbreaks
Bernhard Reiter <bernhard@intevation.de>
parents: 4370
diff changeset
220 </span>
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
221 </div>
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
222 </div>
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
223 </template>
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
224
5629
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
225 <style scoped>
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
226 .numfield:invalid {
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
227 border: 2px solid;
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
228 border-color: #ff0000;
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
229 }
4299
43f28ef473c7 validator for morpology classbreaks
Thomas Junk <thomas.junk@intevation.de>
parents: 4298
diff changeset
230
5629
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
231 .classbreak {
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
232 width: 154px;
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
233 }
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
234 .classbreak .btn-outline-secondary {
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
235 border-color: #ccc;
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
236 color: #ccc;
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
237 }
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
238 .classbreak .btn-outline-secondary:hover:not(.hasColor) {
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
239 background: #eee !important;
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
240 }
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
241 .classbreak .input-group-prepend .btn-outline-secondary.hasColor {
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
242 color: rgba(255, 255, 255, 0.5);
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
243 }
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
244 .classbreak .input-group-append .btn-outline-secondary:hover {
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
245 color: #dc3545;
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
246 }
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
247 .classbreak .input-group-append .btn-outline-secondary:last-child:hover {
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
248 color: #28a745;
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
249 }
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
250 .classbreak .color-picker {
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
251 position: absolute;
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
252 top: -4px;
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
253 left: 19px;
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
254 z-index: 9;
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
255 overflow: hidden;
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
256 border-top-left-radius: 0 !important;
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
257 }
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
258 .classbreak .color-picker .btn {
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
259 border-radius: 0 !important;
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
260 }
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
261 .classbreak .color-picker .vc-chrome {
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
262 box-shadow: none;
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
263 }
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
264
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
265 ::v-deep .vc-chrome-alpha-wrap {
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
266 display: none !important;
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
267 }
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
268
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
269 ::v-deep .vc-chrome-hue-wrap {
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
270 margin-top: 10px;
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
271 }
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
272
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
273 ::v-deep .vc-chrome-saturation-wrap {
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
274 border-radius: 0;
84d01a536bec Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents: 4638
diff changeset
275 }
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
276 </style>
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
277
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
278 <script>
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
279 /* This is Free Software under GNU Affero General Public License v >= 3.0
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
280 * without warranty, see README.md and license for details.
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
281 *
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
282 * SPDX-License-Identifier: AGPL-3.0-or-later
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
283 * License-Filename: LICENSES/AGPL-3.0.txt
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
284 *
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
285 * Copyright (C) 2018 by via donau
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
286 * – Österreichische Wasserstraßen-Gesellschaft mbH
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
287 * Software engineering by Intevation GmbH
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
288 *
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
289 * Author(s):
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
290 * Markus Kottländer <markus@intevation.de>
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
291 */
3622
30a9fdac70f0 client: configuration: prepared fetching morphology classbreaks and ecdis url from backend
Markus Kottlaender <markus@intevation.de>
parents: 3614
diff changeset
292 import { mapState } from "vuex";
3763
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
293 import { Chrome } from "vue-color";
3867
d37f44c4d531 client: configuration: moved default values to separate file
Markus Kottlaender <markus@intevation.de>
parents: 3861
diff changeset
294 import defaults from "./defaults";
3861
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
295
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
296 export default {
3763
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
297 components: {
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
298 "chrome-picker": Chrome
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
299 },
3625
a688a478e35f implemented configuration backend and frontend
Markus Kottlaender <markus@intevation.de>
parents: 3622
diff changeset
300 data() {
a688a478e35f implemented configuration backend and frontend
Markus Kottlaender <markus@intevation.de>
parents: 3622
diff changeset
301 return {
a688a478e35f implemented configuration backend and frontend
Markus Kottlaender <markus@intevation.de>
parents: 3622
diff changeset
302 morphologyClassbreaks: [],
3763
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
303 morphologyClassbreaksCompare: [],
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
304 activeColorPicker: null,
4302
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
305 closeColorPickerListener: null,
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
306 validationMessage: "",
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
307 validationMessageForCompare: ""
3625
a688a478e35f implemented configuration backend and frontend
Markus Kottlaender <markus@intevation.de>
parents: 3622
diff changeset
308 };
a688a478e35f implemented configuration backend and frontend
Markus Kottlaender <markus@intevation.de>
parents: 3622
diff changeset
309 },
3622
30a9fdac70f0 client: configuration: prepared fetching morphology classbreaks and ecdis url from backend
Markus Kottlaender <markus@intevation.de>
parents: 3614
diff changeset
310 computed: {
3763
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
311 ...mapState("application", ["config"]),
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
312 colorPickerTitle() {
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
313 return this.$gettext("Choose color");
4282
5d6a4dd3efa1 client: improve input validation in sys-config for Bottleneck Morphology Classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 3889
diff changeset
314 },
4302
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
315 checkClassbreaks() {
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
316 return (
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
317 this.valuesAreValid(this.morphologyClassbreaks) &&
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
318 !this.hasDoublettes(this.morphologyClassbreaks)
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
319 );
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
320 },
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
321 checkClassbreaksCompare() {
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
322 return (
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
323 this.valuesAreValid(this.morphologyClassbreaksCompare, "compare") &&
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
324 !this.hasDoublettes(this.morphologyClassbreaksCompare, "compare")
4299
43f28ef473c7 validator for morpology classbreaks
Thomas Junk <thomas.junk@intevation.de>
parents: 4298
diff changeset
325 );
4302
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
326 }
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
327 },
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
328 methods: {
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
329 // check if the same value is used for more than one field.
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
330 hasDoublettes(m, compare) {
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
331 const errorMessage = this.$gettext(
4370
1e0d5c40b3f1 client: improve systemconfiguration classbreaks
Bernhard Reiter <bernhard@intevation.de>
parents: 4369
diff changeset
332 "Same value is used in multiple fields."
4302
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
333 );
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
334 let values = [];
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
335 for (let i = 0; i < m.length; i++) {
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
336 values[i] = Number(m[i][0]);
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
337 }
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
338 if (new Set(values).size !== values.length) {
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
339 // determine which message to change
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
340 if (compare !== "compare") {
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
341 this.validationMessage = errorMessage;
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
342 } else {
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
343 this.validationMessageForCompare = errorMessage;
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
344 }
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
345 return true;
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
346 }
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
347 return false;
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
348 },
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
349 valuesAreValid(m, compare) {
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
350 const errorMessage = this.$gettext(
4370
1e0d5c40b3f1 client: improve systemconfiguration classbreaks
Bernhard Reiter <bernhard@intevation.de>
parents: 4369
diff changeset
351 "There are invalid classbreak values."
4299
43f28ef473c7 validator for morpology classbreaks
Thomas Junk <thomas.junk@intevation.de>
parents: 4298
diff changeset
352 );
4302
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
353 let values = m.map(e => {
4299
43f28ef473c7 validator for morpology classbreaks
Thomas Junk <thomas.junk@intevation.de>
parents: 4298
diff changeset
354 const element = e[0];
43f28ef473c7 validator for morpology classbreaks
Thomas Junk <thomas.junk@intevation.de>
parents: 4298
diff changeset
355 if (!isNaN(element)) {
4302
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
356 if (element === "") return false; // check if the field is empty
4299
43f28ef473c7 validator for morpology classbreaks
Thomas Junk <thomas.junk@intevation.de>
parents: 4298
diff changeset
357 if (!isNaN(element)) {
4302
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
358 const numberParts = String(element).split("."); // check number of decimal places
4299
43f28ef473c7 validator for morpology classbreaks
Thomas Junk <thomas.junk@intevation.de>
parents: 4298
diff changeset
359 return numberParts.length == 2 ? numberParts[1].length < 3 : true;
43f28ef473c7 validator for morpology classbreaks
Thomas Junk <thomas.junk@intevation.de>
parents: 4298
diff changeset
360 }
43f28ef473c7 validator for morpology classbreaks
Thomas Junk <thomas.junk@intevation.de>
parents: 4298
diff changeset
361 }
43f28ef473c7 validator for morpology classbreaks
Thomas Junk <thomas.junk@intevation.de>
parents: 4298
diff changeset
362 return false;
43f28ef473c7 validator for morpology classbreaks
Thomas Junk <thomas.junk@intevation.de>
parents: 4298
diff changeset
363 });
4302
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
364 if (values.every(e => e === true)) {
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
365 return true;
4282
5d6a4dd3efa1 client: improve input validation in sys-config for Bottleneck Morphology Classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 3889
diff changeset
366 }
4302
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
367 if (compare !== "compare") {
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
368 this.validationMessage = errorMessage;
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
369 } else {
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
370 this.validationMessageForCompare = errorMessage;
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
371 }
b86f828df7d6 client: improve validation for morphology classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4299
diff changeset
372 return false;
4282
5d6a4dd3efa1 client: improve input validation in sys-config for Bottleneck Morphology Classbreaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 3889
diff changeset
373 },
3855
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
374 addClassbreak(classbreaks, i) {
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
375 classbreaks.splice(
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
376 i,
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
377 0,
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
378 classbreaks.length > i
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
379 ? [classbreaks[i][0], classbreaks[i][1]] // create new array!
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
380 : [1, "#ffffff"]
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
381 );
4a2a778f35da client: configuration: classbreaks: fixed databinding issue and added possibility to add classbreaks at any position
Markus Kottlaender <markus@intevation.de>
parents: 3850
diff changeset
382 },
3763
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
383 showColorPicker(id) {
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
384 this.activeColorPicker = this.activeColorPicker === id ? null : id;
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
385 },
3860
9a7a27301720 client: configuration: save sounding result classbreaks and comparison classbreaks separately
Markus Kottlaender <markus@intevation.de>
parents: 3859
diff changeset
386 submitClassbreaks() {
3850
0d0e52612c32 client: reload config right after saving it to make sure everything is updated
Markus Kottlaender <markus@intevation.de>
parents: 3763
diff changeset
387 this.$store
0d0e52612c32 client: reload config right after saving it to make sure everything is updated
Markus Kottlaender <markus@intevation.de>
parents: 3763
diff changeset
388 .dispatch("application/saveConfig", {
0d0e52612c32 client: reload config right after saving it to make sure everything is updated
Markus Kottlaender <markus@intevation.de>
parents: 3763
diff changeset
389 morphology_classbreaks: this.morphologyClassbreaks
4638
2e19ed576c68 client: sys-config: sort class breaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4373
diff changeset
390 .sort((a, b) => (a[0] < b[0] ? -1 : 1))
3850
0d0e52612c32 client: reload config right after saving it to make sure everything is updated
Markus Kottlaender <markus@intevation.de>
parents: 3763
diff changeset
391 .map(cb => (cb[1] === "#ffffff" ? cb[0] : cb.join(":")))
3860
9a7a27301720 client: configuration: save sounding result classbreaks and comparison classbreaks separately
Markus Kottlaender <markus@intevation.de>
parents: 3859
diff changeset
392 .join(",")
9a7a27301720 client: configuration: save sounding result classbreaks and comparison classbreaks separately
Markus Kottlaender <markus@intevation.de>
parents: 3859
diff changeset
393 })
9a7a27301720 client: configuration: save sounding result classbreaks and comparison classbreaks separately
Markus Kottlaender <markus@intevation.de>
parents: 3859
diff changeset
394 .finally(() => this.$store.dispatch("application/loadConfig"));
9a7a27301720 client: configuration: save sounding result classbreaks and comparison classbreaks separately
Markus Kottlaender <markus@intevation.de>
parents: 3859
diff changeset
395 },
9a7a27301720 client: configuration: save sounding result classbreaks and comparison classbreaks separately
Markus Kottlaender <markus@intevation.de>
parents: 3859
diff changeset
396 submitClassbreaksCompare() {
9a7a27301720 client: configuration: save sounding result classbreaks and comparison classbreaks separately
Markus Kottlaender <markus@intevation.de>
parents: 3859
diff changeset
397 this.$store
9a7a27301720 client: configuration: save sounding result classbreaks and comparison classbreaks separately
Markus Kottlaender <markus@intevation.de>
parents: 3859
diff changeset
398 .dispatch("application/saveConfig", {
3850
0d0e52612c32 client: reload config right after saving it to make sure everything is updated
Markus Kottlaender <markus@intevation.de>
parents: 3763
diff changeset
399 morphology_classbreaks_compare: this.morphologyClassbreaksCompare
4638
2e19ed576c68 client: sys-config: sort class breaks
Fadi Abbud <fadi.abbud@intevation.de>
parents: 4373
diff changeset
400 .sort((a, b) => (a[0] < b[0] ? -1 : 1))
3850
0d0e52612c32 client: reload config right after saving it to make sure everything is updated
Markus Kottlaender <markus@intevation.de>
parents: 3763
diff changeset
401 .map(cb => (cb[1] === "#ffffff" ? cb[0] : cb.join(":")))
0d0e52612c32 client: reload config right after saving it to make sure everything is updated
Markus Kottlaender <markus@intevation.de>
parents: 3763
diff changeset
402 .join(",")
0d0e52612c32 client: reload config right after saving it to make sure everything is updated
Markus Kottlaender <markus@intevation.de>
parents: 3763
diff changeset
403 })
0d0e52612c32 client: reload config right after saving it to make sure everything is updated
Markus Kottlaender <markus@intevation.de>
parents: 3763
diff changeset
404 .finally(() => this.$store.dispatch("application/loadConfig"));
3861
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
405 },
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
406 resetClassbreaks() {
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
407 this.morphologyClassbreaks = this.parseClassbreakString(
3867
d37f44c4d531 client: configuration: moved default values to separate file
Markus Kottlaender <markus@intevation.de>
parents: 3861
diff changeset
408 defaults.morphology_classbreaks
3861
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
409 );
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
410 },
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
411 resetClassbreaksCompare() {
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
412 this.morphologyClassbreaksCompare = this.parseClassbreakString(
3867
d37f44c4d531 client: configuration: moved default values to separate file
Markus Kottlaender <markus@intevation.de>
parents: 3861
diff changeset
413 defaults.morphology_classbreaks_compare
3861
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
414 );
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
415 },
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
416 parseClassbreakString(str) {
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
417 return str
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
418 .split(",")
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
419 .map(cb => cb.split(":"))
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
420 .map(cb => {
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
421 cb[0] = Number(cb[0]);
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
422 cb[1] = cb[1] || "#ffffff";
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
423 return cb;
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
424 });
3622
30a9fdac70f0 client: configuration: prepared fetching morphology classbreaks and ecdis url from backend
Markus Kottlaender <markus@intevation.de>
parents: 3614
diff changeset
425 }
3625
a688a478e35f implemented configuration backend and frontend
Markus Kottlaender <markus@intevation.de>
parents: 3622
diff changeset
426 },
a688a478e35f implemented configuration backend and frontend
Markus Kottlaender <markus@intevation.de>
parents: 3622
diff changeset
427 mounted() {
3861
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
428 this.morphologyClassbreaks = this.parseClassbreakString(
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
429 this.config.morphology_classbreaks
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
430 );
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
431 this.morphologyClassbreaksCompare = this.parseClassbreakString(
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
432 this.config.morphology_classbreaks_compare
704f853b9c37 client: configuration: reset morphology classbreaks
Markus Kottlaender <markus@intevation.de>
parents: 3860
diff changeset
433 );
3763
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
434
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
435 this.closeColorPickerListener = e => {
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
436 // Escape
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
437 if (e.keyCode === 27) {
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
438 this.activeColorPicker = null;
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
439 }
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
440 };
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
441 window.addEventListener("keydown", this.closeColorPickerListener);
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
442 },
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
443 destroyed() {
a1bb7c894058 client: configuration: morphology classbreaks: added color selection
Markus Kottlaender <markus@intevation.de>
parents: 3625
diff changeset
444 window.removeEventListener("keydown", this.closeColorPickerListener);
3606
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
445 }
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
446 };
a8190a570b71 client: configuration: prepared morphology classbreaks UI
Markus Kottlaender <markus@intevation.de>
parents:
diff changeset
447 </script>