diff --git a/resources/js_vue3/components/VersionChecker.vue b/resources/js_vue3/components/VersionChecker.vue index b62871b3..6c3bc6ed 100644 --- a/resources/js_vue3/components/VersionChecker.vue +++ b/resources/js_vue3/components/VersionChecker.vue @@ -4,16 +4,20 @@ const appSettings = useAppSettingsStore() const isScanning = ref(false) - const isUpToDate = ref(null) + const isUpToDate = ref() async function getLatestRelease() { isScanning.value = true; + isUpToDate.value = undefined - await systemService.getLastRelease() + await systemService.getLastRelease({returnError: true}) .then(response => { appSettings.latestRelease = response.data.newRelease isUpToDate.value = response.data.newRelease === false }) + .catch(() => { + isUpToDate.value = null + }) isScanning.value = false; } @@ -30,7 +34,10 @@ {{ appSettings.latestRelease }} is available View on Github - {{ $t('commons.you_are_up_to_date') }} + {{ $t('commons.you_are_up_to_date') }} + + + {{ $t('errors.check_failed_try_later') }} diff --git a/resources/js_vue3/services/systemService.js b/resources/js_vue3/services/systemService.js index 8b1bced2..f3004a44 100644 --- a/resources/js_vue3/services/systemService.js +++ b/resources/js_vue3/services/systemService.js @@ -7,16 +7,16 @@ export default { * * @returns Promise */ - getSystemInfos() { - return webClient.get('infos') + getSystemInfos(config = {}) { + return webClient.get('infos', { ...config }) }, /** * * @returns Promise */ - getLastRelease() { - return webClient.get('latestRelease') + getLastRelease(config = {}) { + return webClient.get('latestRelease', { ...config }) } } \ No newline at end of file diff --git a/resources/js_vue3/views/About.vue b/resources/js_vue3/views/About.vue index 7d4008c5..ec3b514d 100644 --- a/resources/js_vue3/views/About.vue +++ b/resources/js_vue3/views/About.vue @@ -17,7 +17,7 @@ const listAdminSettings = ref(null) onMounted(() => { - systemService.getSystemInfos().then(response => { + systemService.getSystemInfos({returnError: true}).then(response => { infos.value = response.data.common if (response.data.admin_settings) { @@ -28,6 +28,9 @@ userPreferences.value = response.data.user_preferences } }) + .catch(() => { + infos.value = null + }) }) function copyToClipboard(data) { @@ -94,7 +97,7 @@

{{ $t('commons.environment') }}

-
+
@@ -102,6 +105,9 @@
  • {{key}}: {{value}}
  • +
    + {{ $t('errors.error_during_data_fetching') }} +

    {{ $t('settings.admin_settings') }}

    diff --git a/resources/lang/en/errors.php b/resources/lang/en/errors.php index bdbf6807..fb89b393 100644 --- a/resources/lang/en/errors.php +++ b/resources/lang/en/errors.php @@ -56,5 +56,7 @@ return [ 'file_upload_failed' => 'File upload failed', 'unauthorized' => 'Unauthorized', 'unauthorized_legend' => 'You do not have permissions to view this resource or to perform this action', - 'cannot_delete_the_only_admin' => 'Cannot delete the only admin account' + 'cannot_delete_the_only_admin' => 'Cannot delete the only admin account', + 'error_during_data_fetching' => '💀 Something went wrong during data fetching', + 'check_failed_try_later' => 'Check failed, please retry later', ]; \ No newline at end of file