annotate client/src/components/importoverview/ImportOverview.vue @ 3559:c220ad7e61ed

client: import review/configuration: unified column names in table (User/Author -> Owner)
author Markus Kottlaender <markus@intevation.de>
date Fri, 31 May 2019 16:42:43 +0200
parents e2ed741545e1
children d02d4e31491b
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2559
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
1 <template>
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
2 <div class="overview">
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
3 <UIBoxHeader
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
4 icon="clipboard-check"
2760
c6fba10926cc client:correct a set of strings marking
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2759
diff changeset
5 :title="importReviewLabel"
2559
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
6 :closeCallback="$parent.close"
3014
5a3ac4d3dbbb client: replaced refresh icon in import overview and zoom controls with a more appropriate one
Markus Kottlaender <markus@intevation.de>
parents: 2985
diff changeset
7 :actions="[{ callback: loadUpdatedLogs, icon: 'sync' }]"
2559
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
8 />
2632
0b14de0bb85f client: importoverview2: moved refresh button to box header, added loading animation like in other boxes
Markus Kottlaender <markus@intevation.de>
parents: 2626
diff changeset
9 <div class="position-relative">
2894
95e40c87a943 client: applied component name change where it is used
Markus Kottlaender <markus@intevation.de>
parents: 2885
diff changeset
10 <UISpinnerOverlay v-if="loading" />
2880
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
11 <div class="border-bottom p-2 d-flex justify-content-between">
2632
0b14de0bb85f client: importoverview2: moved refresh button to box header, added loading animation like in other boxes
Markus Kottlaender <markus@intevation.de>
parents: 2626
diff changeset
12 <Filters></Filters>
2880
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
13 <button
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
14 class="btn btn-xs btn-info"
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
15 :disabled="!reviewed.length"
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
16 @click="save"
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
17 >
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
18 <translate>Commit</translate> {{ reviewed.length }}
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
19 </button>
2559
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
20 </div>
2745
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
21 <div
2880
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
22 class="p-2 d-flex align-items-center justify-content-between border-bottom"
2745
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
23 >
2880
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
24 <button
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
25 :disabled="!this.prev"
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
26 @click="earlier"
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
27 class="btn btn-xs btn-outline-secondary"
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
28 >
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
29 <font-awesome-icon icon="angle-left" fixed-width />
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
30 <translate>Earlier</translate>
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
31 </button>
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
32 <div class="d-flex align-items-center small">
2945
ab771ea5e4fe client: importoverview: improved display of date interval
Markus Kottlaender <markus@intevation.de>
parents: 2934
diff changeset
33 {{ interval[0] | dateTime(selectedInterval !== $options.LAST_HOUR) }}
ab771ea5e4fe client: importoverview: improved display of date interval
Markus Kottlaender <markus@intevation.de>
parents: 2934
diff changeset
34 <template v-if="selectedInterval !== $options.TODAY">
ab771ea5e4fe client: importoverview: improved display of date interval
Markus Kottlaender <markus@intevation.de>
parents: 2934
diff changeset
35 <span class="mx-2">&ndash;</span>
ab771ea5e4fe client: importoverview: improved display of date interval
Markus Kottlaender <markus@intevation.de>
parents: 2934
diff changeset
36 {{
ab771ea5e4fe client: importoverview: improved display of date interval
Markus Kottlaender <markus@intevation.de>
parents: 2934
diff changeset
37 interval[1] | dateTime(selectedInterval !== $options.LAST_HOUR)
ab771ea5e4fe client: importoverview: improved display of date interval
Markus Kottlaender <markus@intevation.de>
parents: 2934
diff changeset
38 }}
ab771ea5e4fe client: importoverview: improved display of date interval
Markus Kottlaender <markus@intevation.de>
parents: 2934
diff changeset
39 </template>
2745
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
40 <select
2880
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
41 style="width: 75px; height: 24px"
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
42 class="form-control form-control-sm small ml-2"
2745
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
43 v-model="selectedInterval"
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
44 >
2880
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
45 <option :value="$options.LAST_HOUR">
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
46 <translate>Hour</translate>
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
47 </option>
2877
55a9c7965e25 client: importoverview: fixed interval select fix
Markus Kottlaender <markus@intevation.de>
parents: 2876
diff changeset
48 <option :value="$options.TODAY"><translate>Day</translate></option>
2880
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
49 <option :value="$options.LAST_7_DAYS">
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
50 <translate>7 days</translate>
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
51 </option>
2877
55a9c7965e25 client: importoverview: fixed interval select fix
Markus Kottlaender <markus@intevation.de>
parents: 2876
diff changeset
52 <option :value="$options.LAST_30_DAYS">
55a9c7965e25 client: importoverview: fixed interval select fix
Markus Kottlaender <markus@intevation.de>
parents: 2876
diff changeset
53 <translate>30 Days</translate>
55a9c7965e25 client: importoverview: fixed interval select fix
Markus Kottlaender <markus@intevation.de>
parents: 2876
diff changeset
54 </option>
2745
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
55 </select>
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
56 </div>
3416
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
57 <div class="btn-group">
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
58 <button
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
59 :disabled="!this.next"
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
60 @click="later"
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
61 class="btn btn-xs btn-outline-secondary"
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
62 >
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
63 <translate>Later</translate>
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
64 <font-awesome-icon icon="angle-right" fixed-width />
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
65 </button>
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
66 <button
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
67 :disabled="!this.next"
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
68 @click="now"
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
69 class="btn btn-xs btn-outline-secondary"
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
70 >
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
71 <font-awesome-icon icon="angle-double-right" fixed-width />
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
72 </button>
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
73 </div>
2745
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
74 </div>
2699
ef10f1cd6cb8 import_overview: testwise including header component
Thomas Junk <thomas.junk@intevation.de>
parents: 2666
diff changeset
75 <UITableHeader
ef10f1cd6cb8 import_overview: testwise including header component
Thomas Junk <thomas.junk@intevation.de>
parents: 2666
diff changeset
76 :columns="[
3506
e2ed741545e1 import_overview: added country column
Thomas Junk <thomas.junk@intevation.de>
parents: 3416
diff changeset
77 { id: 'id', title: `${idLabel}`, width: '75px' },
2779
21eb85cdfe45 Client: improve a set of strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2771
diff changeset
78 { id: 'kind', title: `${kindLabel}`, width: '53px' },
21eb85cdfe45 Client: improve a set of strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2771
diff changeset
79 { id: 'enqueued', title: `${enqueuedLabel}`, width: '138px' },
3559
c220ad7e61ed client: import review/configuration: unified column names in table (User/Author -> Owner)
Markus Kottlaender <markus@intevation.de>
parents: 3506
diff changeset
80 { id: 'user', title: `${ownerLabel}`, width: '80px' },
3506
e2ed741545e1 import_overview: added country column
Thomas Junk <thomas.junk@intevation.de>
parents: 3416
diff changeset
81 { id: 'country', title: `${countryLabel}`, width: '55px' },
e2ed741545e1 import_overview: added country column
Thomas Junk <thomas.junk@intevation.de>
parents: 3416
diff changeset
82 { id: 'signer', title: `${signerLabel}`, width: '80px' },
2779
21eb85cdfe45 Client: improve a set of strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2771
diff changeset
83 { id: 'state', title: `${statusLabel}`, width: '72px' },
2738
add2d47c2567 client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents: 2734
diff changeset
84 { id: 'warnings', icon: 'exclamation-triangle', width: '44px' }
2699
ef10f1cd6cb8 import_overview: testwise including header component
Thomas Junk <thomas.junk@intevation.de>
parents: 2666
diff changeset
85 ]"
ef10f1cd6cb8 import_overview: testwise including header component
Thomas Junk <thomas.junk@intevation.de>
parents: 2666
diff changeset
86 />
2738
add2d47c2567 client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents: 2734
diff changeset
87 <!--
add2d47c2567 client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents: 2734
diff changeset
88 For server-side sorting, etc simply don't use the sortTable filter.
add2d47c2567 client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents: 2734
diff changeset
89 Instead you could just pass a function that loads the imports, like:
add2d47c2567 client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents: 2734
diff changeset
90 :data="loadImports(sortColumn, sortDirection)"
add2d47c2567 client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents: 2734
diff changeset
91 -->
add2d47c2567 client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents: 2734
diff changeset
92 <UITableBody
add2d47c2567 client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents: 2734
diff changeset
93 :data="filteredImports() | sortTable(sortColumn, sortDirection)"
2880
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
94 :isActive="item => item.id === this.show"
2934
cfa0adbfce63 import_overview: adjust layout height
Thomas Junk <thomas.junk@intevation.de>
parents: 2894
diff changeset
95 maxHeight="70vh"
2738
add2d47c2567 client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents: 2734
diff changeset
96 >
2874
b9a6abef9f1c client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents: 2847
diff changeset
97 <template v-slot:row="{ item: entry }">
b9a6abef9f1c client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents: 2847
diff changeset
98 <LogEntry :entry="entry"></LogEntry>
b9a6abef9f1c client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents: 2847
diff changeset
99 </template>
2880
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
100 <template v-slot:expand="{ item: entry }">
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
101 <LogDetail :entry="entry"></LogDetail>
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
102 </template>
2725
9465749410ba client: import overview: use table body component
Markus Kottlaender <markus@intevation.de>
parents: 2720
diff changeset
103 </UITableBody>
2559
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
104 </div>
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
105 </div>
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
106 </template>
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
107
2885
190c84c712e8 client: importoverview: positioned spinner overlay so that it does not cover the controls in the top but only the table
Markus Kottlaender <markus@intevation.de>
parents: 2880
diff changeset
108 <style lang="sass" scoped>
190c84c712e8 client: importoverview: positioned spinner overlay so that it does not cover the controls in the top but only the table
Markus Kottlaender <markus@intevation.de>
parents: 2880
diff changeset
109 .spinner-overlay
190c84c712e8 client: importoverview: positioned spinner overlay so that it does not cover the controls in the top but only the table
Markus Kottlaender <markus@intevation.de>
parents: 2880
diff changeset
110 top: 110px
190c84c712e8 client: importoverview: positioned spinner overlay so that it does not cover the controls in the top but only the table
Markus Kottlaender <markus@intevation.de>
parents: 2880
diff changeset
111 </style>
190c84c712e8 client: importoverview: positioned spinner overlay so that it does not cover the controls in the top but only the table
Markus Kottlaender <markus@intevation.de>
parents: 2880
diff changeset
112
2559
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
113 <script>
2578
3ad81357a57c overview2 WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 2559
diff changeset
114 /* This is Free Software under GNU Affero General Public License v >= 3.0
3ad81357a57c overview2 WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 2559
diff changeset
115 * without warranty, see README.md and license for details.
3ad81357a57c overview2 WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 2559
diff changeset
116 *
3ad81357a57c overview2 WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 2559
diff changeset
117 * SPDX-License-Identifier: AGPL-3.0-or-later
3ad81357a57c overview2 WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 2559
diff changeset
118 * License-Filename: LICENSES/AGPL-3.0.txt
3ad81357a57c overview2 WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 2559
diff changeset
119 *
3ad81357a57c overview2 WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 2559
diff changeset
120 * Copyright (C) 2018 by via donau
3ad81357a57c overview2 WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 2559
diff changeset
121 * – Österreichische Wasserstraßen-Gesellschaft mbH
3ad81357a57c overview2 WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 2559
diff changeset
122 * Software engineering by Intevation GmbH
3ad81357a57c overview2 WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 2559
diff changeset
123 *
3ad81357a57c overview2 WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 2559
diff changeset
124 * Author(s):
3ad81357a57c overview2 WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 2559
diff changeset
125 * Thomas Junk <thomas.junk@intevation.de>
2738
add2d47c2567 client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents: 2734
diff changeset
126 * Markus Kottländer <markus.kottlaender@intevation.de>
2578
3ad81357a57c overview2 WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 2559
diff changeset
127 */
2559
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
128
2654
3c04c8e46bd4 importoverview: reload reloads current selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2651
diff changeset
129 import { mapState, mapGetters } from "vuex";
2738
add2d47c2567 client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents: 2734
diff changeset
130 import { displayError, displayInfo } from "@/lib/errors";
add2d47c2567 client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents: 2734
diff changeset
131 import { STATES } from "@/store/imports";
add2d47c2567 client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents: 2734
diff changeset
132 import { sortTable } from "@/lib/mixins";
2985
1b8bb4f89227 client: removed .js and .vue extention from imports
Markus Kottlaender <markus@intevation.de>
parents: 2950
diff changeset
133 import { HTTP } from "@/lib/http";
2745
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
134 import {
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
135 startOfDay,
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
136 startOfHour,
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
137 endOfHour,
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
138 endOfDay,
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
139 addDays,
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
140 subDays,
2748
c6695d6e9334 import_overview: filtering date interval via backend
Thomas Junk <thomas.junk@intevation.de>
parents: 2745
diff changeset
141 format
2745
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
142 } from "date-fns";
2559
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
143
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
144 export default {
2578
3ad81357a57c overview2 WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 2559
diff changeset
145 components: {
2985
1b8bb4f89227 client: removed .js and .vue extention from imports
Markus Kottlaender <markus@intevation.de>
parents: 2950
diff changeset
146 Filters: () => import("./Filters"),
1b8bb4f89227 client: removed .js and .vue extention from imports
Markus Kottlaender <markus@intevation.de>
parents: 2950
diff changeset
147 LogEntry: () => import("./LogEntry"),
1b8bb4f89227 client: removed .js and .vue extention from imports
Markus Kottlaender <markus@intevation.de>
parents: 2950
diff changeset
148 LogDetail: () => import("./LogDetail")
2578
3ad81357a57c overview2 WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 2559
diff changeset
149 },
2875
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
150 mixins: [sortTable],
2877
55a9c7965e25 client: importoverview: fixed interval select fix
Markus Kottlaender <markus@intevation.de>
parents: 2876
diff changeset
151 LAST_HOUR: "lasthour",
55a9c7965e25 client: importoverview: fixed interval select fix
Markus Kottlaender <markus@intevation.de>
parents: 2876
diff changeset
152 TODAY: "today",
55a9c7965e25 client: importoverview: fixed interval select fix
Markus Kottlaender <markus@intevation.de>
parents: 2876
diff changeset
153 LAST_7_DAYS: "lastsevendays",
55a9c7965e25 client: importoverview: fixed interval select fix
Markus Kottlaender <markus@intevation.de>
parents: 2876
diff changeset
154 LAST_30_DAYS: "lastthirtydays",
2619
eb1ec926ff97 client: importoverview2: added refresh button
Markus Kottlaender <markus@intevation.de>
parents: 2618
diff changeset
155 data() {
eb1ec926ff97 client: importoverview2: added refresh button
Markus Kottlaender <markus@intevation.de>
parents: 2618
diff changeset
156 return {
2745
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
157 loading: false,
2877
55a9c7965e25 client: importoverview: fixed interval select fix
Markus Kottlaender <markus@intevation.de>
parents: 2876
diff changeset
158 selectedInterval: this.$options.LAST_HOUR
2619
eb1ec926ff97 client: importoverview2: added refresh button
Markus Kottlaender <markus@intevation.de>
parents: 2618
diff changeset
159 };
eb1ec926ff97 client: importoverview2: added refresh button
Markus Kottlaender <markus@intevation.de>
parents: 2618
diff changeset
160 },
2578
3ad81357a57c overview2 WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 2559
diff changeset
161 computed: {
2738
add2d47c2567 client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents: 2734
diff changeset
162 ...mapState("application", ["searchQuery"]),
2759
7badd99c9315 import_overview: sprinkled fairydust into the app to make magical timewarp possible for log_overview
Thomas Junk <thomas.junk@intevation.de>
parents: 2753
diff changeset
163 ...mapState("imports", [
2771
838cf903538f import_overview: on refresh reload current details
Thomas Junk <thomas.junk@intevation.de>
parents: 2769
diff changeset
164 "show",
2759
7badd99c9315 import_overview: sprinkled fairydust into the app to make magical timewarp possible for log_overview
Thomas Junk <thomas.junk@intevation.de>
parents: 2753
diff changeset
165 "imports",
7badd99c9315 import_overview: sprinkled fairydust into the app to make magical timewarp possible for log_overview
Thomas Junk <thomas.junk@intevation.de>
parents: 2753
diff changeset
166 "reviewed",
7badd99c9315 import_overview: sprinkled fairydust into the app to make magical timewarp possible for log_overview
Thomas Junk <thomas.junk@intevation.de>
parents: 2753
diff changeset
167 "startDate",
7badd99c9315 import_overview: sprinkled fairydust into the app to make magical timewarp possible for log_overview
Thomas Junk <thomas.junk@intevation.de>
parents: 2753
diff changeset
168 "endDate",
7badd99c9315 import_overview: sprinkled fairydust into the app to make magical timewarp possible for log_overview
Thomas Junk <thomas.junk@intevation.de>
parents: 2753
diff changeset
169 "prev",
7badd99c9315 import_overview: sprinkled fairydust into the app to make magical timewarp possible for log_overview
Thomas Junk <thomas.junk@intevation.de>
parents: 2753
diff changeset
170 "next"
7badd99c9315 import_overview: sprinkled fairydust into the app to make magical timewarp possible for log_overview
Thomas Junk <thomas.junk@intevation.de>
parents: 2753
diff changeset
171 ]),
2745
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
172 ...mapGetters("imports", ["filters"]),
3506
e2ed741545e1 import_overview: added country column
Thomas Junk <thomas.junk@intevation.de>
parents: 3416
diff changeset
173 countryLabel() {
e2ed741545e1 import_overview: added country column
Thomas Junk <thomas.junk@intevation.de>
parents: 3416
diff changeset
174 return this.$gettext("Country");
e2ed741545e1 import_overview: added country column
Thomas Junk <thomas.junk@intevation.de>
parents: 3416
diff changeset
175 },
2760
c6fba10926cc client:correct a set of strings marking
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2759
diff changeset
176 importReviewLabel() {
c6fba10926cc client:correct a set of strings marking
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2759
diff changeset
177 return this.$gettext("Import review");
c6fba10926cc client:correct a set of strings marking
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2759
diff changeset
178 },
2779
21eb85cdfe45 Client: improve a set of strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2771
diff changeset
179 idLabel() {
21eb85cdfe45 Client: improve a set of strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2771
diff changeset
180 return this.$gettext("Id");
21eb85cdfe45 Client: improve a set of strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2771
diff changeset
181 },
21eb85cdfe45 Client: improve a set of strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2771
diff changeset
182 kindLabel() {
21eb85cdfe45 Client: improve a set of strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2771
diff changeset
183 return this.$gettext("Kind");
21eb85cdfe45 Client: improve a set of strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2771
diff changeset
184 },
21eb85cdfe45 Client: improve a set of strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2771
diff changeset
185 enqueuedLabel() {
21eb85cdfe45 Client: improve a set of strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2771
diff changeset
186 return this.$gettext("Enqueued");
21eb85cdfe45 Client: improve a set of strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2771
diff changeset
187 },
3559
c220ad7e61ed client: import review/configuration: unified column names in table (User/Author -> Owner)
Markus Kottlaender <markus@intevation.de>
parents: 3506
diff changeset
188 ownerLabel() {
c220ad7e61ed client: import review/configuration: unified column names in table (User/Author -> Owner)
Markus Kottlaender <markus@intevation.de>
parents: 3506
diff changeset
189 return this.$gettext("Owner");
2779
21eb85cdfe45 Client: improve a set of strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2771
diff changeset
190 },
21eb85cdfe45 Client: improve a set of strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2771
diff changeset
191 signerLabel() {
21eb85cdfe45 Client: improve a set of strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2771
diff changeset
192 return this.$gettext("Signer");
21eb85cdfe45 Client: improve a set of strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2771
diff changeset
193 },
21eb85cdfe45 Client: improve a set of strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2771
diff changeset
194 statusLabel() {
21eb85cdfe45 Client: improve a set of strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2771
diff changeset
195 return this.$gettext("Status");
21eb85cdfe45 Client: improve a set of strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2771
diff changeset
196 },
2745
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
197 interval() {
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
198 return [this.startDate, this.endDate];
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
199 }
2559
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
200 },
2875
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
201 watch: {
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
202 $route() {
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
203 const { id } = this.$route.params;
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
204 if (id) this.showSingleRessource(id);
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
205 },
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
206 selectedInterval() {
2950
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
207 this.loadUpdatedLogs();
2875
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
208 },
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
209 imports() {
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
210 if (this.imports.length == 0) {
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
211 if (this.next) {
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
212 const [start, end] = this.determineInterval(this.next);
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
213 this.$store.commit("imports/setStartDate", start);
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
214 this.$store.commit("imports/setEndDate", end);
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
215 this.loadLogs();
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
216 } else if (this.prev) {
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
217 const [start, end] = this.determineInterval(this.prev);
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
218 this.$store.commit("imports/setStartDate", start);
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
219 this.$store.commit("imports/setEndDate", end);
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
220 this.loadLogs();
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
221 }
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
222 }
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
223 },
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
224 filters() {
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
225 this.loadLogs();
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
226 }
84effca50751 client: importoverview: cleaned up code
Markus Kottlaender <markus@intevation.de>
parents: 2874
diff changeset
227 },
2559
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
228 methods: {
2799
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
229 showSingleRessource(id) {
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
230 id = id * 1;
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
231 this.loadDetails(id)
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
232 .then(response => {
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
233 this.$store.commit("imports/setCurrentDetails", response.data);
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
234 const { enqueued } = response.data;
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
235 this.$store.commit("imports/setStartDate", startOfHour(enqueued));
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
236 this.$store.commit("imports/setEndDate", endOfHour(enqueued));
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
237 this.$store.commit("imports/showDetailsFor", id);
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
238 this.loadLogs();
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
239 })
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
240 .catch(error => {
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
241 this.loading = false;
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
242 this.$store.commit("imports/setCurrentDetails", {});
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
243 const { status, data } = error.response;
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
244 displayError({
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
245 title: this.$gettext("Backend Error"),
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
246 message: `${status}: ${data.message || data}`
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
247 });
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
248 });
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
249 },
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
250 loadDetails(id) {
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
251 return new Promise((resolve, reject) => {
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
252 HTTP.get("/imports/" + id, {
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
253 headers: { "X-Gemma-Auth": localStorage.getItem("token") }
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
254 })
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
255 .then(response => {
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
256 resolve(response);
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
257 })
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
258 .catch(error => {
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
259 reject(error);
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
260 });
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
261 });
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
262 },
2769
c2a2515c7a72 import_overview: hopefully fixed dancing bug
Thomas Junk <thomas.junk@intevation.de>
parents: 2768
diff changeset
263 determineInterval(pointInTime) {
c2a2515c7a72 import_overview: hopefully fixed dancing bug
Thomas Junk <thomas.junk@intevation.de>
parents: 2768
diff changeset
264 let start, end;
2745
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
265 switch (this.selectedInterval) {
2877
55a9c7965e25 client: importoverview: fixed interval select fix
Markus Kottlaender <markus@intevation.de>
parents: 2876
diff changeset
266 case this.$options.LAST_HOUR:
2769
c2a2515c7a72 import_overview: hopefully fixed dancing bug
Thomas Junk <thomas.junk@intevation.de>
parents: 2768
diff changeset
267 start = startOfHour(pointInTime);
c2a2515c7a72 import_overview: hopefully fixed dancing bug
Thomas Junk <thomas.junk@intevation.de>
parents: 2768
diff changeset
268 end = endOfHour(pointInTime);
2745
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
269 break;
2877
55a9c7965e25 client: importoverview: fixed interval select fix
Markus Kottlaender <markus@intevation.de>
parents: 2876
diff changeset
270 case this.$options.TODAY:
2769
c2a2515c7a72 import_overview: hopefully fixed dancing bug
Thomas Junk <thomas.junk@intevation.de>
parents: 2768
diff changeset
271 start = startOfDay(pointInTime);
c2a2515c7a72 import_overview: hopefully fixed dancing bug
Thomas Junk <thomas.junk@intevation.de>
parents: 2768
diff changeset
272 end = endOfDay(pointInTime);
2745
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
273 break;
2877
55a9c7965e25 client: importoverview: fixed interval select fix
Markus Kottlaender <markus@intevation.de>
parents: 2876
diff changeset
274 case this.$options.LAST_7_DAYS:
2769
c2a2515c7a72 import_overview: hopefully fixed dancing bug
Thomas Junk <thomas.junk@intevation.de>
parents: 2768
diff changeset
275 start = startOfDay(pointInTime);
2847
4da07a11e6e1 import_overview: fix date calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2840
diff changeset
276 end = endOfDay(addDays(start, 7));
2745
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
277 break;
2877
55a9c7965e25 client: importoverview: fixed interval select fix
Markus Kottlaender <markus@intevation.de>
parents: 2876
diff changeset
278 case this.$options.LAST_30_DAYS:
2769
c2a2515c7a72 import_overview: hopefully fixed dancing bug
Thomas Junk <thomas.junk@intevation.de>
parents: 2768
diff changeset
279 start = startOfDay(pointInTime);
2847
4da07a11e6e1 import_overview: fix date calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2840
diff changeset
280 end = endOfDay(addDays(start, 30));
2745
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
281 break;
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
282 }
2769
c2a2515c7a72 import_overview: hopefully fixed dancing bug
Thomas Junk <thomas.junk@intevation.de>
parents: 2768
diff changeset
283 return [start, end];
c2a2515c7a72 import_overview: hopefully fixed dancing bug
Thomas Junk <thomas.junk@intevation.de>
parents: 2768
diff changeset
284 },
c2a2515c7a72 import_overview: hopefully fixed dancing bug
Thomas Junk <thomas.junk@intevation.de>
parents: 2768
diff changeset
285 earlier() {
c2a2515c7a72 import_overview: hopefully fixed dancing bug
Thomas Junk <thomas.junk@intevation.de>
parents: 2768
diff changeset
286 if (!this.prev) return;
c2a2515c7a72 import_overview: hopefully fixed dancing bug
Thomas Junk <thomas.junk@intevation.de>
parents: 2768
diff changeset
287 const [start, end] = this.determineInterval(this.prev);
c2a2515c7a72 import_overview: hopefully fixed dancing bug
Thomas Junk <thomas.junk@intevation.de>
parents: 2768
diff changeset
288 this.$store.commit("imports/setStartDate", start);
c2a2515c7a72 import_overview: hopefully fixed dancing bug
Thomas Junk <thomas.junk@intevation.de>
parents: 2768
diff changeset
289 this.$store.commit("imports/setEndDate", end);
2748
c6695d6e9334 import_overview: filtering date interval via backend
Thomas Junk <thomas.junk@intevation.de>
parents: 2745
diff changeset
290 this.loadLogs();
2745
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
291 },
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
292 later() {
2769
c2a2515c7a72 import_overview: hopefully fixed dancing bug
Thomas Junk <thomas.junk@intevation.de>
parents: 2768
diff changeset
293 if (!this.next) return;
c2a2515c7a72 import_overview: hopefully fixed dancing bug
Thomas Junk <thomas.junk@intevation.de>
parents: 2768
diff changeset
294 const [start, end] = this.determineInterval(this.next);
c2a2515c7a72 import_overview: hopefully fixed dancing bug
Thomas Junk <thomas.junk@intevation.de>
parents: 2768
diff changeset
295 this.$store.commit("imports/setStartDate", start);
c2a2515c7a72 import_overview: hopefully fixed dancing bug
Thomas Junk <thomas.junk@intevation.de>
parents: 2768
diff changeset
296 this.$store.commit("imports/setEndDate", end);
2748
c6695d6e9334 import_overview: filtering date interval via backend
Thomas Junk <thomas.junk@intevation.de>
parents: 2745
diff changeset
297 this.loadLogs();
2745
d2896bb852e7 import_overview: paging interval selection
Thomas Junk <thomas.junk@intevation.de>
parents: 2740
diff changeset
298 },
3416
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
299 now() {
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
300 if (!this.next) return;
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
301 const [start, end] = this.determineInterval(new Date());
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
302 this.$store.commit("imports/setStartDate", start);
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
303 this.$store.commit("imports/setEndDate", end);
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
304 this.loadLogs();
b65c2530c680 client: import review: added button to go back to latest date
Markus Kottlaender <markus@intevation.de>
parents: 3409
diff changeset
305 },
2738
add2d47c2567 client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents: 2734
diff changeset
306 filteredImports() {
2749
cd789302b3e2 import_overview: start is initially always beginning of current hour
Thomas Junk <thomas.junk@intevation.de>
parents: 2748
diff changeset
307 return this.imports;
2738
add2d47c2567 client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents: 2734
diff changeset
308 },
2789
c1e832f77726 import_overview: setting a sane default window in case of reload
Thomas Junk <thomas.junk@intevation.de>
parents: 2785
diff changeset
309 loadUpdatedLogs() {
2950
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
310 const now = new Date();
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
311 switch (this.selectedInterval) {
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
312 case this.$options.LAST_HOUR:
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
313 this.$store.commit("imports/setStartDate", startOfHour(now));
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
314 this.$store.commit("imports/setEndDate", now);
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
315 break;
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
316 case this.$options.TODAY:
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
317 this.$store.commit("imports/setStartDate", startOfDay(now));
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
318 this.$store.commit("imports/setEndDate", now);
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
319 break;
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
320 case this.$options.LAST_7_DAYS:
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
321 this.$store.commit(
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
322 "imports/setStartDate",
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
323 subDays(startOfDay(now), 7)
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
324 );
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
325 this.$store.commit("imports/setEndDate", now);
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
326 break;
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
327 case this.$options.LAST_30_DAYS:
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
328 this.$store.commit(
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
329 "imports/setStartDate",
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
330 subDays(startOfDay(now), 30)
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
331 );
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
332 this.$store.commit("imports/setEndDate", now);
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
333 break;
1775ffa65504 import_overview: fix time calculation
Thomas Junk <thomas.junk@intevation.de>
parents: 2945
diff changeset
334 }
2789
c1e832f77726 import_overview: setting a sane default window in case of reload
Thomas Junk <thomas.junk@intevation.de>
parents: 2785
diff changeset
335 this.loadLogs();
c1e832f77726 import_overview: setting a sane default window in case of reload
Thomas Junk <thomas.junk@intevation.de>
parents: 2785
diff changeset
336 },
2559
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
337 loadLogs() {
2619
eb1ec926ff97 client: importoverview2: added refresh button
Markus Kottlaender <markus@intevation.de>
parents: 2618
diff changeset
338 this.loading = true;
2559
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
339 this.$store
2748
c6695d6e9334 import_overview: filtering date interval via backend
Thomas Junk <thomas.junk@intevation.de>
parents: 2745
diff changeset
340 .dispatch("imports/getImports", {
c6695d6e9334 import_overview: filtering date interval via backend
Thomas Junk <thomas.junk@intevation.de>
parents: 2745
diff changeset
341 filter: this.filters,
c6695d6e9334 import_overview: filtering date interval via backend
Thomas Junk <thomas.junk@intevation.de>
parents: 2745
diff changeset
342 from: format(this.startDate, "YYYY-MM-DDTHH:mm:ss.SSS"),
2749
cd789302b3e2 import_overview: start is initially always beginning of current hour
Thomas Junk <thomas.junk@intevation.de>
parents: 2748
diff changeset
343 to: format(this.endDate, "YYYY-MM-DDTHH:mm:ss.SSS"),
cd789302b3e2 import_overview: start is initially always beginning of current hour
Thomas Junk <thomas.junk@intevation.de>
parents: 2748
diff changeset
344 query: this.searchQuery
2748
c6695d6e9334 import_overview: filtering date interval via backend
Thomas Junk <thomas.junk@intevation.de>
parents: 2745
diff changeset
345 })
2559
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
346 .then(() => {
2880
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
347 if (this.show) {
2799
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
348 this.loadDetails(this.show)
2771
838cf903538f import_overview: on refresh reload current details
Thomas Junk <thomas.junk@intevation.de>
parents: 2769
diff changeset
349 .then(response => {
838cf903538f import_overview: on refresh reload current details
Thomas Junk <thomas.junk@intevation.de>
parents: 2769
diff changeset
350 this.$store.commit("imports/setCurrentDetails", response.data);
838cf903538f import_overview: on refresh reload current details
Thomas Junk <thomas.junk@intevation.de>
parents: 2769
diff changeset
351 this.loading = false;
838cf903538f import_overview: on refresh reload current details
Thomas Junk <thomas.junk@intevation.de>
parents: 2769
diff changeset
352 })
838cf903538f import_overview: on refresh reload current details
Thomas Junk <thomas.junk@intevation.de>
parents: 2769
diff changeset
353 .catch(error => {
2796
718ec88fbeed import_overview: disable loading spinner in case of errors
Thomas Junk <thomas.junk@intevation.de>
parents: 2789
diff changeset
354 this.loading = false;
718ec88fbeed import_overview: disable loading spinner in case of errors
Thomas Junk <thomas.junk@intevation.de>
parents: 2789
diff changeset
355 this.$store.commit("imports/setCurrentDetails", {});
2771
838cf903538f import_overview: on refresh reload current details
Thomas Junk <thomas.junk@intevation.de>
parents: 2769
diff changeset
356 const { status, data } = error.response;
838cf903538f import_overview: on refresh reload current details
Thomas Junk <thomas.junk@intevation.de>
parents: 2769
diff changeset
357 displayError({
838cf903538f import_overview: on refresh reload current details
Thomas Junk <thomas.junk@intevation.de>
parents: 2769
diff changeset
358 title: this.$gettext("Backend Error"),
838cf903538f import_overview: on refresh reload current details
Thomas Junk <thomas.junk@intevation.de>
parents: 2769
diff changeset
359 message: `${status}: ${data.message || data}`
838cf903538f import_overview: on refresh reload current details
Thomas Junk <thomas.junk@intevation.de>
parents: 2769
diff changeset
360 });
838cf903538f import_overview: on refresh reload current details
Thomas Junk <thomas.junk@intevation.de>
parents: 2769
diff changeset
361 });
838cf903538f import_overview: on refresh reload current details
Thomas Junk <thomas.junk@intevation.de>
parents: 2769
diff changeset
362 } else {
838cf903538f import_overview: on refresh reload current details
Thomas Junk <thomas.junk@intevation.de>
parents: 2769
diff changeset
363 this.loading = false;
838cf903538f import_overview: on refresh reload current details
Thomas Junk <thomas.junk@intevation.de>
parents: 2769
diff changeset
364 }
2559
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
365 })
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
366 .catch(error => {
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
367 const { status, data } = error.response;
2796
718ec88fbeed import_overview: disable loading spinner in case of errors
Thomas Junk <thomas.junk@intevation.de>
parents: 2789
diff changeset
368 this.loading = false;
2559
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
369 displayError({
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
370 title: this.$gettext("Backend Error"),
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
371 message: `${status}: ${data.message || data}`
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
372 });
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
373 });
2626
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
374 },
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
375 save() {
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
376 if (!this.reviewed.length) return;
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
377
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
378 let popupContent = `<table class="table table-sm small mb-0 border-0" style="margin-top: -1px;">`;
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
379 this.reviewed.forEach(r => {
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
380 let imp = this.imports.find(i => i.id === r.id);
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
381 let approved = STATES.APPROVED === r.status;
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
382 popupContent += `<tr>
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
383 <td>${imp.id}</td>
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
384 <td>${imp.kind.toUpperCase()}</td>
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
385 <td>${this.$options.filters.dateTime(imp.enqueued)}</td>
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
386 <td class="text-${approved ? "success" : "danger"}">
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
387 ${this.$gettext(approved ? "approved" : "declined")}
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
388 </td>
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
389 </tr>`;
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
390 });
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
391 popupContent += "</table>";
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
392
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
393 this.$store.commit("application/popup", {
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
394 icon: "clipboard-check",
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
395 title: this.$gettext("Finish Review"),
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
396 padding: false,
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
397 big: true,
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
398 content: popupContent,
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
399 confirm: {
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
400 icon: "check",
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
401 callback: () => {
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
402 let data = this.reviewed.map(r => ({
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
403 id: r.id,
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
404 state: r.status
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
405 }));
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
406 this.$store
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
407 .dispatch("imports/confirmReview", data)
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
408 .then(response => {
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
409 this.loadLogs();
2638
6c1730fc3dc1 client: importsoverview2: clear reviewed array after finishing review
Markus Kottlaender <markus@intevation.de>
parents: 2632
diff changeset
410 this.$store.commit("imports/setReviewed", []);
3409
c0f5f62343c9 client: import review: refresh map layers after accepting/declining imports
Markus Kottlaender <markus@intevation.de>
parents: 3014
diff changeset
411 this.$store.dispatch("map/refreshLayers");
2626
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
412 const messages = response.data
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
413 .map(x => {
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
414 if (x.message) return x.message;
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
415 if (x.error) return x.error;
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
416 })
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
417 .join("\n\n");
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
418 displayInfo({
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
419 title: "Staging Area",
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
420 message: messages,
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
421 options: {
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
422 timeout: 0,
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
423 buttons: [{ text: "Ok", action: null, bold: true }]
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
424 }
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
425 });
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
426 })
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
427 .catch(error => {
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
428 const { status, data } = error.response;
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
429 displayError({
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
430 title: "Backend Error",
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
431 message: `${status}: ${data.message || data}`
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
432 });
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
433 });
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
434 }
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
435 },
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
436 cancel: {
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
437 label: this.$gettext("Cancel"),
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
438 icon: "times"
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
439 }
50cc5bffd787 client: importoverview2: implemented Finish Review (confirm) dialog
Markus Kottlaender <markus@intevation.de>
parents: 2619
diff changeset
440 });
2559
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
441 }
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
442 },
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
443 mounted() {
3506
e2ed741545e1 import_overview: added country column
Thomas Junk <thomas.junk@intevation.de>
parents: 3416
diff changeset
444 this.$store.dispatch("usermanagement/loadUsers").catch(error => {
e2ed741545e1 import_overview: added country column
Thomas Junk <thomas.junk@intevation.de>
parents: 3416
diff changeset
445 const { status, data } = error.response;
e2ed741545e1 import_overview: added country column
Thomas Junk <thomas.junk@intevation.de>
parents: 3416
diff changeset
446 displayError({
e2ed741545e1 import_overview: added country column
Thomas Junk <thomas.junk@intevation.de>
parents: 3416
diff changeset
447 title: this.$gettext("Backend Error"),
e2ed741545e1 import_overview: added country column
Thomas Junk <thomas.junk@intevation.de>
parents: 3416
diff changeset
448 message: `${status}: ${data.message || data}`
e2ed741545e1 import_overview: added country column
Thomas Junk <thomas.junk@intevation.de>
parents: 3416
diff changeset
449 });
e2ed741545e1 import_overview: added country column
Thomas Junk <thomas.junk@intevation.de>
parents: 3416
diff changeset
450 });
2799
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
451 const { id } = this.$route.params;
2880
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
452 if (id) {
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
453 this.showSingleRessource(id);
c40540889b53 client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents: 2877
diff changeset
454 } else {
2799
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
455 this.$store.commit("application/searchQuery", "");
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
456 this.loadLogs();
e19fac818aab import_overview: specifying single imports via URL should open the overview with all logentries of the according hour and open the details for the specified import
Thomas Junk <thomas.junk@intevation.de>
parents: 2796
diff changeset
457 }
2578
3ad81357a57c overview2 WIP
Thomas Junk <thomas.junk@intevation.de>
parents: 2559
diff changeset
458 }
2559
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
459 };
d9e1db955d49 Backed out changeset 91c68153e7b6
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
460 </script>