diff --git a/src/pages/Edition.vue b/src/pages/Edition.vue
index c28ca51..f33cac1 100644
--- a/src/pages/Edition.vue
+++ b/src/pages/Edition.vue
@@ -160,7 +160,7 @@ export default {
console.log('texts/toc REST: data', data)
this.meta = data.meta
this.author = data.meta.author
- if (data.content) {
+ if (data.content && data.content !== 'vide') {
if (Array.isArray(data.content)) {
this.toc = data.content
} else {
@@ -171,10 +171,16 @@ export default {
// console.log('toc', this.toc)
this.textid = this.toc[0].children[1].uuid
}
+ } else {
+ console.warn('Bad edition uuid', this.$route.params.id, this.$route)
+ this.$router.replace({
+ name: 'notfound',
+ query: { fullpath: this.$route.path }
+ })
}
})
.catch((error) => {
- console.warn('Issue with locorum', error)
+ console.warn('Issue with text toc', error)
Promise.reject(error)
})
},
@@ -240,7 +246,12 @@ export default {
})
.catch((error) => {
console.warn('Issue with getTextContent', error)
+ console.warn('Bad edition uuid', this.$route.params.id, this.$route)
Promise.reject(error)
+ this.$router.replace({
+ name: 'notfound',
+ query: { fullpath: this.$route.path }
+ })
})
},
onCenterScrolled (e) {
diff --git a/src/pages/Locorum.vue b/src/pages/Locorum.vue
index c569c31..053e03c 100644
--- a/src/pages/Locorum.vue
+++ b/src/pages/Locorum.vue
@@ -51,6 +51,10 @@ export default {
.catch((error) => {
console.warn('Issue with locorum', error)
Promise.reject(error)
+ this.$router.replace({
+ name: 'notfound',
+ query: { fullpath: this.$route.path }
+ })
})
}
}
diff --git a/src/pages/Nominum.vue b/src/pages/Nominum.vue
index 357b50f..cbddb9d 100644
--- a/src/pages/Nominum.vue
+++ b/src/pages/Nominum.vue
@@ -55,6 +55,10 @@ export default {
.catch((error) => {
console.warn('Issue with nominum', error)
Promise.reject(error)
+ this.$router.replace({
+ name: 'notfound',
+ query: { fullpath: this.$route.path }
+ })
})
}
}
diff --git a/src/pages/NotFound.vue b/src/pages/NotFound.vue
new file mode 100644
index 0000000..a0bb591
--- /dev/null
+++ b/src/pages/NotFound.vue
@@ -0,0 +1,44 @@
+
+
+
+ 404 - Contenu non trouvé
+ {{ path }}
+
+
+
+
+
+
+
diff --git a/src/pages/Operum.vue b/src/pages/Operum.vue
index 091dddf..f4c8077 100644
--- a/src/pages/Operum.vue
+++ b/src/pages/Operum.vue
@@ -46,6 +46,10 @@ export default {
.catch((error) => {
console.warn('Issue with operum', error)
Promise.reject(error)
+ this.$router.replace({
+ name: 'notfound',
+ query: { fullpath: this.$route.path }
+ })
})
}
}
diff --git a/src/router/index.js b/src/router/index.js
index 5e75eb5..da3b7c8 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -13,6 +13,7 @@ import Nominum from 'pages/Nominum'
import Locorum from 'pages/Locorum'
import Operum from 'pages/Operum'
import Bibliographie from 'pages/Bibliographie'
+import NotFound from 'pages/NotFound'
Vue.use(Router)
@@ -82,6 +83,12 @@ const routes = [
name: 'bibliographie',
path: '/bibliographie',
component: Bibliographie
+ },
+ {
+ name: 'notfound',
+ path: '/404',
+ alias: '*',
+ component: NotFound
}
]