Skip to content

Commit 7cf01f9

Browse files
authored
Metadata update feedback (#2073)
1 parent f03081a commit 7cf01f9

File tree

16 files changed

+73
-3
lines changed

16 files changed

+73
-3
lines changed

geonode_mapstore_client/client/js/plugins/MetadataEditor/containers/MetadataUpdateButton.jsx

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88

99
import React from 'react';
1010
import get from 'lodash/get';
11+
import isEmpty from 'lodash/isEmpty';
1112
import PropTypes from "prop-types";
1213
import { updateMetadata } from '@js/api/geonode/v2/metadata';
1314
import Message from '@mapstore/framework/components/I18N/Message';
@@ -24,7 +25,9 @@ function MetadataUpdateButton({
2425
setUpdating,
2526
setUpdateError,
2627
setInitialMetadata,
27-
setExtraErrors
28+
setExtraErrors,
29+
onSuccess,
30+
onFailure
2831
}, context) {
2932

3033
function handleUpdate() {
@@ -33,7 +36,12 @@ function MetadataUpdateButton({
3336
updateMetadata(pk, metadata)
3437
.then((response) => {
3538
setInitialMetadata(metadata);
36-
setExtraErrors(get(response, 'data.extraErrors', {}));
39+
const extraErrors = get(response, 'data.extraErrors', {});
40+
setExtraErrors(extraErrors);
41+
onSuccess({
42+
title: "gnviewer.metadataUpdateTitle",
43+
message: `gnviewer.${isEmpty(extraErrors) ? "metadataUpdateSuccess" : "metadataUpdatePartialSuccess"}`
44+
});
3745
})
3846
.catch((error) => {
3947
setExtraErrors(get(error, 'data.extraErrors', {}));
@@ -48,6 +56,10 @@ function MetadataUpdateButton({
4856
message: get(error, 'data.message',
4957
getMessageById(context.messages, 'gnviewer.metadataUpdateError'))
5058
});
59+
onFailure({
60+
title: "gnviewer.metadataUpdateTitle",
61+
message: "gnviewer.metadataUpdateFailure"
62+
});
5163
})
5264
.finally(() => {
5365
setUpdating(false);

geonode_mapstore_client/client/js/plugins/MetadataEditor/index.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ import metadataReducer from './reducers/metadata';
3030
import Button from '@mapstore/framework/components/layout/Button';
3131
import Message from '@mapstore/framework/components/I18N/Message';
3232
import { resourceHasPermission } from '@js/utils/ResourceUtils';
33+
import { success as successNotification, error as errorNotification } from '@mapstore/framework/actions/notifications';
3334

3435
const MetadataEditor = lazy(() => import('./containers/MetadataEditor'));
3536

@@ -68,7 +69,9 @@ const connectMetadata = connect(
6869
setUpdateError: setMetadataUpdateError,
6970
setUpdating: setMetadataUpdating,
7071
setResource: setMetadataResource,
71-
setExtraErrors
72+
setExtraErrors,
73+
onSuccess: successNotification,
74+
onFailure: errorNotification
7275
}
7376
);
7477

geonode_mapstore_client/static/mapstore/configs/localConfig.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3512,6 +3512,9 @@
35123512
},
35133513
{
35143514
"name": "MetadataViewer"
3515+
},
3516+
{
3517+
"name": "Notifications"
35153518
}
35163519
],
35173520
"upload_dataset": [

geonode_mapstore_client/static/mapstore/gn-translations/data.de-DE.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -459,6 +459,10 @@
459459
"metadataNotFound": "Für die ausgewählte Ressource wurden keine Metadaten gefunden",
460460
"filterMetadata": "Nach Namen filtern...",
461461
"noMetadataFound": "Keine Metadaten gefunden...",
462+
"metadataUpdateTitle": "Metadaten",
463+
"metadataUpdateSuccess": "Metadaten aktualisiert erfolgreich",
464+
"metadataUpdatePartialSuccess": "Metadaten aktualisiert teilweise erfolgreich",
465+
"metadataUpdateFailure": "Metadatenaktualisierung fehlgeschlagen",
462466
"metadataGroupTitle": "Allgemein",
463467
"noGridData": "Keine Daten zum Anzeigen",
464468
"layerSettings": {

geonode_mapstore_client/static/mapstore/gn-translations/data.en-US.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -459,6 +459,10 @@
459459
"metadataNotFound": "Metadata not found for the selected resource",
460460
"filterMetadata": "Filter by name...",
461461
"noMetadataFound": "No metadata found...",
462+
"metadataUpdateTitle": "Metadata",
463+
"metadataUpdateSuccess": "Metadata updated successfully",
464+
"metadataUpdatePartialSuccess": "Metadata updated partially successful",
465+
"metadataUpdateFailure": "Metadata update failed",
462466
"metadataGroupTitle": "General",
463467
"noGridData": "No data to display",
464468
"layerSettings": {

geonode_mapstore_client/static/mapstore/gn-translations/data.es-ES.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -458,6 +458,10 @@
458458
"metadataNotFound": "No se encontraron metadatos para el recurso seleccionado",
459459
"filterMetadata": "Filtrar por nombre...",
460460
"noMetadataFound": "No se encontraron metadatos...",
461+
"metadataUpdateTitle": "Metadatos",
462+
"metadataUpdateSuccess": "Metadatos actualizados correctamente",
463+
"metadataUpdatePartialSuccess": "Metadatos actualizados parcialmente correctamente",
464+
"metadataUpdateFailure": "Error al actualizar los metadatos",
461465
"metadataGroupTitle": "General",
462466
"noGridData": "No hay datos para mostrar",
463467
"layerSettings": {

geonode_mapstore_client/static/mapstore/gn-translations/data.fi-FI.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -429,6 +429,10 @@
429429
"metadataNotFound": "Metadata not found for the selected resource",
430430
"filterMetadata": "Filter by name...",
431431
"noMetadataFound": "No metadata found...",
432+
"metadataUpdateTitle": "Metadata",
433+
"metadataUpdateSuccess": "Metadata updated successfully",
434+
"metadataUpdatePartialSuccess": "Metadata updated partially successful",
435+
"metadataUpdateFailure": "Metadata update failed",
432436
"metadataGroupTitle": "General",
433437
"noGridData": "No data to display",
434438
"layerSettings": {

geonode_mapstore_client/static/mapstore/gn-translations/data.fr-FR.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -459,6 +459,10 @@
459459
"metadataNotFound": "Les métadonnées ne sont pas trouvées pour la ressource sélectionnée",
460460
"filterMetadata": "Filtrer par nom...",
461461
"noMetadataFound": "Aucune métadonnée trouvée...",
462+
"metadataUpdateTitle": "Métadonnées",
463+
"metadataUpdateSuccess": "Métadonnées mises à jour avec succès",
464+
"metadataUpdatePartialSuccess": "Métadonnées mises à jour partiellement avec succès",
465+
"metadataUpdateFailure": "Mise à jour des métadonnées impossible",
462466
"metadataGroupTitle": "Général",
463467
"noGridData": "Aucune donnée à afficher",
464468
"layerSettings": {

geonode_mapstore_client/static/mapstore/gn-translations/data.hr-HR.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -429,6 +429,10 @@
429429
"metadataNotFound": "Metadata not found for the selected resource",
430430
"filterMetadata": "Filter by name...",
431431
"noMetadataFound": "No metadata found...",
432+
"metadataUpdateTitle": "Metadata",
433+
"metadataUpdateSuccess": "Metadata updated successfully",
434+
"metadataUpdatePartialSuccess": "Metadata updated partially successful",
435+
"metadataUpdateFailure": "Metadata update failed",
432436
"metadataGroupTitle": "General",
433437
"noGridData": "No data to display",
434438
"layerSettings": {

geonode_mapstore_client/static/mapstore/gn-translations/data.it-IT.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -461,6 +461,10 @@
461461
"metadataNotFound": "Metadati non disponibili per la risorsa selezionata",
462462
"filterMetadata": "Filtra per nome...",
463463
"noMetadataFound": "Nessun metadato trovato...",
464+
"metadataUpdateTitle": "Metadati",
465+
"metadataUpdateSuccess": "Metadati aggiornati con successo",
466+
"metadataUpdatePartialSuccess": "Metadati aggiornati parzialmente con successo",
467+
"metadataUpdateFailure": "Impossibile aggiornare i metadati",
464468
"metadataGroupTitle": "Generale",
465469
"noGridData": "Nessun dato da visualizzare",
466470
"layerSettings": {

0 commit comments

Comments
 (0)