source: ReserveNGo-frontend/src/components/Project/Nav_bar_new.vue@ ac6da22

Last change on this file since ac6da22 was 17c7d5e, checked in by Aleksandarj03 <138524804+Aleksandarj03@…>, 3 months ago

Major design overhauls pre prototype presentation 2

  • Property mode set to 100644
File size: 3.1 KB
Line 
1<script>
2import { userStore } from '@/PiniaStores/UserStore.js'
3import logout_ from '@/components/Project/Auth/logout_.vue'
4
5export default {
6 components: {
7 logout_,
8 },
9 data() {
10 return {
11 user: userStore(),
12 managerLocalId:"",
13 }
14 },
15 methods: {
16 fetchLocalForManager(){
17 fetch("http://localhost:8080/api/local-manager/my-local",{
18 method: 'GET',
19 headers: {
20 'Content-Type': 'application/json',
21 Authorization: this.user.getToken
22 },
23 }).then((res) => res.json())
24 .then((data) => (this.managerLocalId = data.id))
25 .catch((err) => console.log(err));
26
27 }
28 },
29 mounted() {
30 if(this.user && this.user.data.role==="ROLE_LOCAL_MANAGER"){
31 this.fetchLocalForManager();
32 }
33 }
34}
35</script>
36
37<template>
38 <nav class="navbar navbar-expand-lg navbar-dark custom-background-nav py-2 px-5 ">
39 <div class="container-fluid">
40 <router-link to="/" class="navbar-brand d-flex align-items-center">
41 <img src="/src/assets/rng_logo.png" alt="Logo" height="50" class="me-2" />
42 <span class="fw-bold text-black">Reserve And Go</span>
43 </router-link>
44
45
46 <div class="collapse navbar-collapse justify-content-end" id="navbarContent">
47 <ul class="navbar-nav align-items-center">
48
49 <li class="nav-item" v-if="user.data.role === 'ROLE_CUSTOMER'">
50 <router-link to="/favourite_locals" class="nav-link text-black">Favourite locals</router-link>
51 </li>
52
53 <li class="nav-item pe-3" v-if="user.data.role === 'ROLE_CUSTOMER'">
54 <router-link to="/my_reservations" class="nav-link text-black">My reservations</router-link>
55 </li>
56
57 <li class="nav-item pe-3" v-if="user.data.role === 'ROLE_ADMIN'">
58 <router-link to="/admin-dashboard" class="nav-link text-black">Dashboard</router-link>
59 </li>
60 <li class="nav-item pe-3" v-if="user.data.role === 'ROLE_LOCAL_MANAGER'">
61 <router-link :to="`/more_details/${this.managerLocalId}`" class="nav-link text-black">My Restaurant</router-link>
62 </li>
63
64 <li class="nav-item" v-if="user.data.role !== 'ROLE_ADMIN' && user.data.role !== 'UN_AUTHENTICATED'">
65
66 <router-link to="/profilePage" class="nav-link text-white">
67 <i class="fa-solid fa-user"></i>
68 {{ user.data.firstName }} {{ user.data.lastName }}
69 </router-link>
70 </li>
71
72 <li class="nav-item" v-if="user.data.role === 'UN_AUTHENTICATED'">
73 <router-link to="/login" class="btn btn-dark me-2">Login</router-link>
74 </li>
75
76 <li class="nav-item" v-if="user.data.role === 'UN_AUTHENTICATED'">
77 <router-link to="/register" class="btn btn-dark me-2">Register</router-link>
78 </li>
79
80 <li class="nav-item">
81 <logout_ />
82 </li>
83
84 </ul>
85 </div>
86 </div>
87 </nav>
88</template>
89
90<style scoped>
91.navbar-brand span {
92 font-size: 1.25rem;
93}
94
95.custom-background-nav{
96 background-color: #5EA5BC;
97}
98
99
100.navbar-nav .nav-link:hover {
101 color: rgba(255, 255, 255, 0.6) !important;
102}
103</style>
Note: See TracBrowser for help on using the repository browser.