diff --git a/client/src/components/Collections/common/CollectionEditView.vue b/client/src/components/Collections/common/CollectionEditView.vue index 5f231903a451..de5fbd62a52c 100644 --- a/client/src/components/Collections/common/CollectionEditView.vue +++ b/client/src/components/Collections/common/CollectionEditView.vue @@ -55,9 +55,26 @@ const collectionChangeKey = ref(0); const attributesData = computed(() => { return collectionAttributesStore.getAttributes(props.collectionId); }); +const attributesLoadError = computed(() => + errorMessageAsString(collectionAttributesStore.hasItemLoadError(props.collectionId)) +); + const collection = computed(() => { return collectionStore.getCollectionById(props.collectionId); }); +const collectionLoadError = computed(() => { + if (collection.value) { + return errorMessageAsString(collectionStore.hasLoadingCollectionElementsError(collection.value)); + } + return ""; +}); +watch([attributesLoadError, collectionLoadError], () => { + if (attributesLoadError.value) { + errorMessage.value = attributesLoadError.value; + } else if (collectionLoadError.value) { + errorMessage.value = collectionLoadError.value; + } +}); const databaseKeyFromElements = computed(() => { return attributesData.value?.dbkey; }); @@ -101,7 +118,7 @@ async function clickedSave(attribute: string, newValue: any) { try { await copyCollection(props.collectionId, dbKey); } catch (err) { - errorMessage.value = errorMessageAsString(err, "History import failed."); + errorMessage.value = errorMessageAsString(err, `Changing ${attribute} failed`); } } @@ -119,7 +136,7 @@ async function clickedConvert(selectedConverter: any) { await axios.post(url, data).catch(handleError); successMessage.value = "Conversion started successfully."; } catch (err) { - errorMessage.value = errorMessageAsString(err, "History import failed."); + errorMessage.value = errorMessageAsString(err, "Conversion failed."); } } @@ -143,12 +160,12 @@ async function clickedDatatypeChange(selectedDatatype: any) { await updateHistoryItemsBulk(currentHistoryId.value ?? "", data); successMessage.value = "Datatype changed successfully."; } catch (err) { - errorMessage.value = errorMessageAsString(err, "History import failed."); + errorMessage.value = errorMessageAsString(err, "Datatype change failed."); } } function handleError(err: any) { - errorMessage.value = errorMessageAsString(err, "History import failed."); + errorMessage.value = errorMessageAsString(err, "Datatype conversion failed."); if (err?.data?.stderr) { jobError.value = err.data; @@ -191,14 +208,14 @@ async function saveAttrs() { {{ localize(infoMessage) }} - + {{ localize(errorMessage) }} {{ localize(successMessage) }} - +