MainHeader.vue 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. <template>
  2. <nav class="nav is-info">
  3. <div class="nav-left">
  4. <a class="nav-item is-brand" href="#" v-link="{ path: '/' }">
  5. Musare
  6. </a>
  7. </div>
  8. <!--<span class="nav-toggle" :class="{ 'is-active': isActive }" @click="toggleMobileMenu()">
  9. <span></span>
  10. <span></span>
  11. <span></span>
  12. </span>-->
  13. <div class="nav-right">
  14. <a class="nav-item is-tab admin" href="#" v-link="{ path: '/admin' }">
  15. Admin
  16. </a>
  17. <a class="nav-item is-tab" href="#">
  18. About
  19. </a>
  20. <a class="nav-item is-tab" href="#" v-link="{ path: '/news' }">
  21. News
  22. </a>
  23. <a class="nav-item is-tab" href="#" v-if="$parent.$parent.loggedIn" @click="$parent.$parent.logout()">
  24. Logout
  25. </a>
  26. <span class="grouped" v-else>
  27. <a class="nav-item" href="#" @click="toggleModal('login')">
  28. Login
  29. </a>
  30. <a class="nav-item" href="#" @click="toggleModal('register')">
  31. Register
  32. </a>
  33. </span>
  34. </div>
  35. </nav>
  36. </template>
  37. <script>
  38. export default {
  39. methods: {
  40. toggleModal: function (type) {
  41. for (let i = 0; i < this.$parent.$children.length; i++) {
  42. if (this.$parent.$children[i]._uid == 4 && type == 'login') {
  43. this.$parent.$children[i].isActive = !this.$parent.$children[i].isActive;
  44. } else if (this.$parent.$children[i]._uid == 5 && type == 'register') {
  45. this.$parent.$children[i].isActive = !this.$parent.$children[i].isActive;
  46. }
  47. }
  48. }
  49. }
  50. }
  51. </script>
  52. <style lang="scss" scoped>
  53. @import 'theme.scss';
  54. .nav {
  55. background-color: $grey-darker;
  56. .is-brand {
  57. font-size: 26px !important;
  58. }
  59. .nav-item {
  60. font-size: 15px;
  61. color: $white;
  62. &:hover {
  63. color: $white;
  64. }
  65. }
  66. .admin {
  67. color: $blue;
  68. }
  69. }
  70. .grouped {
  71. margin: 0;
  72. display: flex;
  73. text-decoration: none;
  74. }
  75. </style>