Explorar o código

Add Footer where it was missing

Bubka %!s(int64=3) %!d(string=hai) anos
pai
achega
6e1d27e08c

+ 4 - 2
resources/js/components/Footer.vue

@@ -7,8 +7,10 @@
                 </div>
             </div>
         </div>
-        <div v-if="$route.name.startsWith('settings.')" class="content has-text-centered is-size-6">
-            <a class="has-text-grey" href="https://github.com/Bubka/2FAuth"><b>2FAuth</b> <font-awesome-icon :icon="['fab', 'github-alt']" /></a> - v{{ appVersion }}
+        <div v-if="$route.meta.showAbout === true" class="content has-text-centered is-size-6">
+            <router-link :to="{ name: 'about' }" class="has-text-grey">
+                2FAuth – <span class="has-text-weight-bold">v{{ appVersion }}</span>
+            </router-link>
         </div>
         <div v-else class="content has-text-centered">
             <router-link :to="{ name: 'settings.options' }" class="has-text-grey">{{ $t('settings.settings') }}</router-link>

+ 13 - 13
resources/js/routes.js

@@ -44,20 +44,20 @@ const router = new Router({
         { path: '/group/create', name: 'createGroup', component: CreateGroup, meta: { requiresAuth: true } },
         { path: '/group/:groupId/edit', name: 'editGroup', component: EditGroup, meta: { requiresAuth: true }, props: true },
 
-        { path: '/settings/options', name: 'settings.options', component: SettingsOptions, meta: { requiresAuth: true } },
-        { path: '/settings/account', name: 'settings.account', component: SettingsAccount, meta: { requiresAuth: true } },
-        { path: '/settings/oauth', name: 'settings.oauth.tokens', component: SettingsOAuth, meta: { requiresAuth: true } },
-        { path: '/settings/oauth/pat/create', name: 'settings.oauth.generatePAT', component: GeneratePAT, meta: { requiresAuth: true } },
-        { path: '/settings/webauthn/:credentialId/edit', name: 'settings.webauthn.editCredential', component: EditCredential, meta: { requiresAuth: true }, props: true },
-        { path: '/settings/webauthn', name: 'settings.webauthn.devices', component: SettingsWebAuthn, meta: { requiresAuth: true } },
+        { path: '/settings/options', name: 'settings.options', component: SettingsOptions, meta: { requiresAuth: true, showAbout: true } },
+        { path: '/settings/account', name: 'settings.account', component: SettingsAccount, meta: { requiresAuth: true, showAbout: true } },
+        { path: '/settings/oauth', name: 'settings.oauth.tokens', component: SettingsOAuth, meta: { requiresAuth: true, showAbout: true } },
+        { path: '/settings/oauth/pat/create', name: 'settings.oauth.generatePAT', component: GeneratePAT, meta: { requiresAuth: true, showAbout: true } },
+        { path: '/settings/webauthn/:credentialId/edit', name: 'settings.webauthn.editCredential', component: EditCredential, meta: { requiresAuth: true, showAbout: true }, props: true },
+        { path: '/settings/webauthn', name: 'settings.webauthn.devices', component: SettingsWebAuthn, meta: { requiresAuth: true, showAbout: true } },
 
-        { path: '/login', name: 'login', component: Login, meta: { disabledWithAuthProxy: true } },
-        { path: '/register', name: 'register', component: Register, meta: { disabledWithAuthProxy: true } },
-        { path: '/autolock', name: 'autolock',component: Autolock, meta: { disabledWithAuthProxy: true } },
-        { path: '/password/request', name: 'password.request', component: PasswordRequest, meta: { disabledWithAuthProxy: true } },
-        { path: '/password/reset/:token', name: 'password.reset', component: PasswordReset, meta: { disabledWithAuthProxy: true } },
-        { path: '/webauthn/lost', name: 'webauthn.lost', component: WebauthnLost, meta: { disabledWithAuthProxy: true } },
-        { path: '/webauthn/recover', name: 'webauthn.recover', component: WebauthnRecover, meta: { disabledWithAuthProxy: true } },
+        { path: '/login', name: 'login', component: Login, meta: { disabledWithAuthProxy: true, showAbout: true } },
+        { path: '/register', name: 'register', component: Register, meta: { disabledWithAuthProxy: true, showAbout: true } },
+        { path: '/autolock', name: 'autolock',component: Autolock, meta: { disabledWithAuthProxy: true, showAbout: true } },
+        { path: '/password/request', name: 'password.request', component: PasswordRequest, meta: { disabledWithAuthProxy: true, showAbout: true } },
+        { path: '/password/reset/:token', name: 'password.reset', component: PasswordReset, meta: { disabledWithAuthProxy: true, showAbout: true } },
+        { path: '/webauthn/lost', name: 'webauthn.lost', component: WebauthnLost, meta: { disabledWithAuthProxy: true, showAbout: true } },
+        { path: '/webauthn/recover', name: 'webauthn.recover', component: WebauthnRecover, meta: { disabledWithAuthProxy: true, showAbout: true } },
 
         { path: '/flooded', name: 'flooded',component: Errors, props: true },
         { path: '/error', name: 'genericError',component: Errors, props: true },

+ 2 - 0
resources/js/views/auth/Autolock.vue

@@ -4,6 +4,8 @@
         <div class="nav-links">
             <p><router-link :to="{ name: 'login', params: {forceRefresh : true} }" class="button is-link">{{ $t('auth.sign_in') }}</router-link></p>
         </div>
+        <!-- footer -->
+        <vue-footer></vue-footer>
     </form-wrapper>
 </template>
 

+ 2 - 0
resources/js/views/auth/Login.vue

@@ -32,6 +32,8 @@
                 </div>
             </div>
         </form-wrapper>
+        <!-- footer -->
+        <vue-footer></vue-footer>
     </div>
 </template>
 

+ 2 - 0
resources/js/views/auth/Register.vue

@@ -33,6 +33,8 @@
                 <p>{{ $t('auth.forms.already_register') }}&nbsp;<router-link :to="{ name: 'login' }" class="is-link">{{ $t('auth.sign_in') }}</router-link></p>
             </div>
         </form-wrapper>
+        <!-- footer -->
+        <vue-footer></vue-footer>
     </div>
 </template>
 

+ 2 - 0
resources/js/views/auth/password/Request.vue

@@ -4,6 +4,8 @@
             <form-field :form="form" fieldName="email" inputType="email" :label="$t('auth.forms.email')" autofocus />
             <form-buttons :isBusy="form.isBusy" :caption="$t('auth.forms.send_password_reset_link')" :showCancelButton="true" cancelLandingView="login" />
         </form>
+        <!-- footer -->
+        <vue-footer></vue-footer>
     </form-wrapper>
 </template>
 

+ 2 - 0
resources/js/views/auth/password/Reset.vue

@@ -6,6 +6,8 @@
             <form-field :form="form" fieldName="password_confirmation" inputType="password" :label="$t('auth.forms.confirm_password')" />
             <form-buttons :isBusy="form.isBusy" :caption="$t('auth.forms.change_password')" :showCancelButton="true" cancelLandingView="login" />
         </form>
+        <!-- footer -->
+        <vue-footer></vue-footer>
     </form-wrapper>
 </template>
 

+ 2 - 0
resources/js/views/auth/webauthn/Lost.vue

@@ -4,6 +4,8 @@
             <form-field :form="form" fieldName="email" inputType="email" :label="$t('auth.forms.email')" autofocus />
             <form-buttons :isBusy="form.isBusy" :caption="$t('auth.webauthn.send_recovery_link')" :showCancelButton="true" cancelLandingView="login" />
         </form>
+        <!-- footer -->
+        <vue-footer></vue-footer>
     </form-wrapper>
 </template>
 

+ 2 - 0
resources/js/views/auth/webauthn/Recover.vue

@@ -21,6 +21,8 @@
                 </div>
             </div>
         </div>
+        <!-- footer -->
+        <vue-footer></vue-footer>
     </form-wrapper>
 </template>