Skip to content

Commit

Permalink
ajout page erreur
Browse files Browse the repository at this point in the history
  • Loading branch information
Théo Chambon committed Oct 18, 2023
1 parent 0a33aec commit 9464c38
Show file tree
Hide file tree
Showing 4 changed files with 86 additions and 7 deletions.
3 changes: 2 additions & 1 deletion components/theses/ThesisSkeleton.vue
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@
<v-skeleton-loader type="table-row"></v-skeleton-loader>
<v-skeleton-loader type="table-row"></v-skeleton-loader>
<v-skeleton-loader type="table-row" class="px-4"></v-skeleton-loader>
<v-skeleton-loader type="button" class="d-flex flex-row-reverse pe-7 w-25"></v-skeleton-loader>
<v-skeleton-loader type="article"></v-skeleton-loader>
<v-skeleton-loader type="article"></v-skeleton-loader>
<v-skeleton-loader type="article"></v-skeleton-loader>
</template>

Expand Down
81 changes: 81 additions & 0 deletions error.vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
<script setup lang="ts">
const props = defineProps({
error: Object
})
const handleError = () => clearError({ redirect: '/' })
</script>

<template>
<v-app>
<CommonHeaderCustom></CommonHeaderCustom>
<v-main>
<h1>Erreur {{ error.statusCode }} : <div v-if="error.statusCode.toString().startsWith('4')">Page
Introuvable</div>
<div v-if="error.statusCode.toString().startsWith('5')">Serveur
Indisponible</div>
</h1>
<p v-if="error.statusCode.toString().startsWith('5')"><strong>Merci d'essayer à nouveau dans quelques instants.
Si le problème persiste vous
pouvez contacter le guichet
d'assistance de l'Abes : <a href="https://stp.abes.fr/node/3?origine=thesesFr"
target="_blank">https://stp.abes.fr/node/3?origine=thesesFr</a>.</strong>
<br /><br />
Vous pouvez joindre les informations suivantes à votre demande d'assistance :
<br /><br />
<pre>{{ error.message }}</pre>
<br />
<span v-html="error.stack" />
</p>
<p v-if="error.statusCode.toString().startsWith('4')"><strong>La page à laquelle vous tentez d'accéder n'existe
pas, ou
n'est plus disponible.</strong></p>
<br /><br />
<button @click="handleError">Retour à l'accueil</button>
</v-main>
<CommonFooterCustom></CommonFooterCustom>
</v-app>
</template>

<style scoped>
h1 {
padding-top: 20px;
padding-bottom: 20px;
font-size: 3rem;
width: 80%;
}
button {
font-size: 2em;
color: #252C61;
border: solid 2px #252C61;
border-radius: 5px;
background-color: transparent;
padding: 10px;
margin-bottom: 50px;
}
p {
width: 90%;
padding: 20px;
}
pre {
width: 80%;
white-space: pre-wrap;
display: grid !important;
}
:deep(.stack) {
display: contents;
width: 80%;
white-space: pre-wrap;
word-break: break-all;
}
div {
display: inline;
}
</style>
3 changes: 3 additions & 0 deletions pages/[id].vue
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,9 @@ function checkId(id) {
}).catch(() => { return "personne" })
}
else if (regexSujet.test(id)) type.value = "sujet";
else {
throw createError({ statusCode: 404, statusMessage: 'Page Not Found' })
}
}
</script>
Expand Down
6 changes: 0 additions & 6 deletions pages/index.vue
Original file line number Diff line number Diff line change
Expand Up @@ -50,12 +50,6 @@ const { data: nbSujets } = await getStatsSujets();
const { data: nbTheses } = await getStatsTheses();
const { data: nbPersonnes } = await getStatsPersonnes();
useSeoMeta({
title: `Theses.fr`,
ogTitle: `Theses.fr`,
description: "Moteur de recherche des thèses françaises, theses.fr propose l’accès aux thèses de doctorat soutenues ou en préparation.",
ogDescription: "Moteur de recherche des thèses françaises, theses.fr propose l’accès aux thèses de doctorat soutenues ou en préparation."
})
onMounted(() => {
// réinitialiser les éléments liés à la recherche au retour à la page d'accueil
reinitializeResultData();
Expand Down

0 comments on commit 9464c38

Please sign in to comment.