This commit is contained in:
2026-09-02 00:59:46 +07:00
parent 690efbbbf5
commit 30ffe8ea08
45 changed files with 2138 additions and 1643 deletions
+56 -27
View File
@@ -43,7 +43,6 @@ const goToLogout = () => {
}
const openMenu = ref(false)
</script>
<template>
@@ -53,26 +52,54 @@ const openMenu = ref(false)
<MenuOutlined />
</Icon>
</div>
<div class="left-group menu-buttons-block" :class="!openMenu ? 'menu-buttons-block-active' : ''">
<div class="menu-item-block" :class="{ active: props.active == 'main' }" @click="router.push('/')">
<div
class="left-group menu-buttons-block"
:class="!openMenu ? 'menu-buttons-block-active' : ''"
>
<div
class="menu-item-block"
:class="{ active: props.active == 'main' }"
@click="router.push('/')"
>
Главная
</div>
<div class="menu-item-block" :class="{ active: props.active == 'office' }" v-if="authStore.hasRole('user')"
@click="router.push('/office')">
<div
class="menu-item-block"
:class="{ active: props.active == 'office' }"
v-if="authStore.hasRole('user')"
@click="router.push('/office')"
>
Кабинет
</div>
<div class="menu-item-block" :class="{ active: props.active == 'games' }" v-if="hasPermission('games_page')"
@click="router.push('/games')">
<div
class="menu-item-block"
:class="{ active: props.active == 'games' }"
v-if="hasPermission('games_page')"
@click="router.push('/games')"
>
Игры
</div>
<div class="menu-item-block" :class="{ active: props.active == 'catalog' }" @click="router.push('/catalog')">
<div
class="menu-item-block"
:class="{ active: props.active == 'catalog' }"
@click="router.push('/catalog')"
>
Каталог
</div>
<div class="menu-item-block" :class="{ active: props.active == 'scenarios' }" v-if="hasPermission('scenarios_page')" @click="router.push('/scenarios')">
<div
class="menu-item-block"
:class="{ active: props.active == 'scenarios' }"
v-if="hasPermission('scenarios_page')"
@click="router.push('/scenarios')"
>
Мои сценарии
</div>
<div class="menu-item-block" :class="{ active: props.active == 'users' }" v-if="hasPermission('users_page')"
@click="router.push('/users')">
<div
class="menu-item-block"
:class="{ active: props.active == 'users' }"
v-if="hasPermission('users_page')"
@click="router.push('/users')"
>
Пользователи
</div>
</div>
@@ -81,31 +108,33 @@ const openMenu = ref(false)
<div v-if="!authStore.isAuthenticated" class="menu-item-block right" @click="goToLogin">
Войти
</div>
<div v-if="authStore.isAuthenticated" class="menu-item-block right" @click="goToLogout">Выйти</div>
<div v-if="authStore.isAuthenticated" class="menu-item-block right" @click="goToLogout">
Выйти
</div>
</div>
</div>
</template>
<style scoped>
.menu-block {
align-items: center;
background-color: #222;
display: flex;
height: 70px;
justify-content: space-between;
left: 0;
padding: 20px;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 70px;
background-color: #222;
padding: 20px;
display: flex;
justify-content: space-between;
align-items: center;
}
.menu-item-block {
display: inline-block;
margin-left: 10px;
cursor: pointer;
padding: 5px;
display: inline-block;
font-size: 1.1em;
margin-left: 10px;
padding: 5px;
}
.menu-item-block:hover {
@@ -129,14 +158,14 @@ const openMenu = ref(false)
@media (width < 1024px) {
.menu-buttons-block {
position: fixed;
top: 70px;
left: 0;
width: 100%;
background-color: #222;
display: flex;
flex-direction: column;
background-color: #222;
left: 0;
padding-bottom: 5px;
position: fixed;
top: 70px;
width: 100%;
}
.menu-buttons-block div {