diff --git a/src/resources/js/app.js b/src/resources/js/app.js --- a/src/resources/js/app.js +++ b/src/resources/js/app.js @@ -188,7 +188,7 @@ isLoading() { return isLoading > 0 }, - errorPage(code, msg) { + errorPage(code, msg, hint) { // Until https://github.com/vuejs/vue-router/issues/977 is implemented // we can't really use router to display error page as it has two side // effects: it changes the URL and adds the error page to browser history. @@ -203,8 +203,11 @@ } if (!msg) msg = map[code] || "Unknown Error" + if (!hint) hint = '' - const error_page = `
${code}
${msg}
` + const error_page = '
' + + `
${code}
${msg}
${hint}
` + + '
' $('#error-page').remove() $('#app').append(error_page) diff --git a/src/resources/js/routes-user.js b/src/resources/js/routes-user.js --- a/src/resources/js/routes-user.js +++ b/src/resources/js/routes-user.js @@ -31,25 +31,25 @@ path: '/distlist/:list', name: 'distlist', component: DistlistInfoComponent, - meta: { requiresAuth: true } + meta: { requiresAuth: true, perm: 'distlists' } }, { path: '/distlists', name: 'distlists', component: DistlistListComponent, - meta: { requiresAuth: true } + meta: { requiresAuth: true, perm: 'distlists' } }, { path: '/domain/:domain', name: 'domain', component: DomainInfoComponent, - meta: { requiresAuth: true } + meta: { requiresAuth: true, perm: 'domains' } }, { path: '/domains', name: 'domains', component: DomainListComponent, - meta: { requiresAuth: true } + meta: { requiresAuth: true, perm: 'domains' } }, { path: '/login', @@ -100,19 +100,19 @@ path: '/user/:user', name: 'user', component: UserInfoComponent, - meta: { requiresAuth: true } + meta: { requiresAuth: true, perm: 'users' } }, { path: '/users', name: 'users', component: UserListComponent, - meta: { requiresAuth: true } + meta: { requiresAuth: true, perm: 'users' } }, { path: '/wallet', name: 'wallet', component: WalletComponent, - meta: { requiresAuth: true } + meta: { requiresAuth: true, perm: 'wallets' } }, { name: '404', diff --git a/src/resources/themes/app.scss b/src/resources/themes/app.scss --- a/src/resources/themes/app.scss +++ b/src/resources/themes/app.scss @@ -35,8 +35,10 @@ top: 0; height: 100%; width: 100%; + align-content: center; align-items: center; display: flex; + flex-wrap: wrap; justify-content: center; color: #636b6f; z-index: 10; @@ -53,6 +55,12 @@ font-size: 18px; padding: 0 15px; } + + .hint { + margin-top: 3em; + text-align: center; + width: 100%; + } } .app-loader { diff --git a/src/resources/vue/App.vue b/src/resources/vue/App.vue --- a/src/resources/vue/App.vue +++ b/src/resources/vue/App.vue @@ -1,5 +1,5 @@