Footer.vue 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. <template>
  2. <footer class="has-background-black-ter">
  3. <div class="columns is-gapless" v-if="showButtons">
  4. <div class="column has-text-centered">
  5. <div class="field is-grouped">
  6. <slot></slot>
  7. </div>
  8. </div>
  9. </div>
  10. <div v-if="$route.meta.showAbout === true" class="content has-text-centered is-size-6">
  11. <router-link :to="{ name: 'about' }" class="has-text-grey">
  12. 2FAuth – <span class="has-text-weight-bold">v{{ appVersion }}</span>
  13. </router-link>
  14. </div>
  15. <div v-else class="content has-text-centered">
  16. <router-link id="lnkSettings" :to="{ name: 'settings.options' }" class="has-text-grey">
  17. {{ $t('settings.settings') }}<span v-if="$root.appSettings.latestRelease && $root.appSettings.checkForUpdate" class="release-flag"></span>
  18. </router-link>
  19. <span v-if="!this.$root.appConfig.proxyAuth || (this.$root.appConfig.proxyAuth && this.$root.appConfig.proxyLogoutUrl)">
  20. - <button id="lnkSignOut" class="button is-text is-like-text has-text-grey" @click="logout">{{ $t('auth.sign_out') }}</button>
  21. </span>
  22. </div>
  23. </footer>
  24. </template>
  25. <script>
  26. export default {
  27. name: 'VueFooter',
  28. data(){
  29. return {
  30. }
  31. },
  32. props: {
  33. showButtons: true,
  34. },
  35. methods: {
  36. logout() {
  37. if(confirm(this.$t('auth.confirm.logout'))) {
  38. this.appLogout()
  39. }
  40. }
  41. }
  42. };
  43. </script>