diff --git a/website/client/assets/images/404.png b/website/client/assets/images/404.png new file mode 100644 index 0000000000..664f25070d Binary files /dev/null and b/website/client/assets/images/404.png differ diff --git a/website/client/components/404.vue b/website/client/components/404.vue new file mode 100644 index 0000000000..5201b55b5c --- /dev/null +++ b/website/client/components/404.vue @@ -0,0 +1,55 @@ + + + + + \ No newline at end of file diff --git a/website/client/components/appFooter.vue b/website/client/components/appFooter.vue index 15334be709..262bfc9b3b 100644 --- a/website/client/components/appFooter.vue +++ b/website/client/components/appFooter.vue @@ -119,6 +119,7 @@ padding-top: 3em; margin: 0; color: #878190; + z-index: 99; a { color: #878190; diff --git a/website/client/router.js b/website/client/router.js index 005693fc7b..1a7e41a1aa 100644 --- a/website/client/router.js +++ b/website/client/router.js @@ -85,6 +85,8 @@ const QuestsPage = () => import(/* webpackChunkName: "shops-quest" */'./componen const SeasonalPage = () => import(/* webpackChunkName: "shops-seasonal" */'./components/shops/seasonal/index'); const TimeTravelersPage = () => import(/* webpackChunkName: "shops-timetravelers" */'./components/shops/timeTravelers/index'); +import NotFoundPage from './components/404'; + Vue.use(VueRouter); const router = new VueRouter({ @@ -253,6 +255,7 @@ const router = new VueRouter({ { name: 'pressKit', path: 'press-kit', component: PressKitPage, meta: {requiresLogin: false}}, { name: 'privacy', path: 'privacy', component: PrivacyPage, meta: {requiresLogin: false}}, { name: 'terms', path: 'terms', component: TermsPage, meta: {requiresLogin: false}}, + { name: 'notFound', path: 'not-found', component: NotFoundPage, meta: {requiresLogin: false} }, ], }, { @@ -263,6 +266,7 @@ const router = new VueRouter({ { name: 'contributors', path: 'contributors', component: HeroesPage }, ], }, + { path: '*', redirect: { name: 'notFound' } }, ], });