Skip to content

Commit f545f6d

Browse files
committed
User management on new Admin UI.
1 parent cbf022c commit f545f6d

File tree

4 files changed

+219
-248
lines changed

4 files changed

+219
-248
lines changed
+42-46
Original file line numberDiff line numberDiff line change
@@ -1,47 +1,43 @@
11
<template>
2-
<v-container fluid class="admin-page">
3-
<v-card class="fill-height d-flex flex-column">
4-
<v-tabs
5-
v-model="activeTab"
6-
color="primary"
7-
align-tabs="center"
8-
>
9-
<v-tab :value="1">{{ $t('admin.tabs.userManagement') }}</v-tab>
10-
<v-tab :value="2">{{ $t('admin.tabs.systemSettings') }}</v-tab>
11-
<v-tab :value="3">{{ $t('admin.tabs.logs') }}</v-tab>
12-
</v-tabs>
13-
14-
<v-card-text>
15-
<v-window v-model="activeTab">
16-
<v-window-item :value="1">
17-
<user-management-tab />
18-
</v-window-item>
19-
20-
<v-window-item :value="2">
21-
<system-settings-tab />
22-
</v-window-item>
23-
24-
<v-window-item :value="3">
25-
<logs-tab />
26-
</v-window-item>
27-
</v-window>
28-
</v-card-text>
29-
</v-card>
30-
</v-container>
31-
</template>
32-
33-
<script setup>
34-
import { ref } from 'vue';
35-
import UserManagementTab from './UserManagementTab.vue';
36-
import SystemSettingsTab from './SystemSettingsTab.vue';
37-
import LogsTab from './LogsTab.vue';
38-
39-
const activeTab = ref(1);
40-
</script>
41-
42-
<style scoped>
43-
.admin-page {
44-
padding-top: 2rem;
45-
padding-bottom: 2rem;
46-
}
47-
</style>
2+
<v-container fluid class="admin-page">
3+
<v-card class="fill-height d-flex flex-column">
4+
<v-tabs v-model="activeTab" color="primary" align-tabs="center">
5+
<v-tab :value="1">{{ $t('admin.tabs.userManagement') }}</v-tab>
6+
<v-tab :value="2">{{ $t('admin.tabs.systemSettings') }}</v-tab>
7+
<v-tab :value="3">{{ $t('admin.tabs.logs') }}</v-tab>
8+
</v-tabs>
9+
10+
<v-card-text>
11+
<v-window v-model="activeTab">
12+
<v-window-item :value="1">
13+
<user-management-tab />
14+
</v-window-item>
15+
16+
<v-window-item :value="2">
17+
<system-settings-tab />
18+
</v-window-item>
19+
20+
<v-window-item :value="3">
21+
<logs-tab />
22+
</v-window-item>
23+
</v-window>
24+
</v-card-text>
25+
</v-card>
26+
</v-container>
27+
</template>
28+
29+
<script setup>
30+
import { ref } from 'vue';
31+
import UserManagementTab from './UserManagementTab.vue';
32+
import SystemSettingsTab from './SystemSettingsTab.vue';
33+
import LogsTab from './LogsTab.vue';
34+
35+
const activeTab = ref(1);
36+
</script>
37+
38+
<style scoped>
39+
.admin-page {
40+
padding-top: 2rem;
41+
padding-bottom: 2rem;
42+
}
43+
</style>

src/AdminUI/src/components/DashboardPage.vue

+8-13
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
11
<template>
22
<v-container fluid>
3-
<v-row>
4-
<v-col cols="12">
5-
<h1 class="text-h4 mb-6">{{ $t('dashboard.title') }}</h1>
6-
</v-col>
7-
</v-row>
83
<v-row>
94
<v-col v-for="shortcut in shortcuts" :key="shortcut.title" cols="12" sm="6" md="4">
105
<v-card dense :color="shortcut.color" hover @click="navigateTo(shortcut.route)">
@@ -28,18 +23,18 @@
2823
<script setup>
2924
import { ref } from 'vue';
3025
import { useRouter } from 'vue-router';
31-
import { Monitor, Bell, Table, Calendar, FileText, UserCog, HelpCircle,BarChart, Database } from 'lucide-vue-next';
26+
import { Monitor, Bell, Table, Calendar, FileText, UserCog, HelpCircle, BarChart, Database } from 'lucide-vue-next';
3227
3328
const router = useRouter();
3429
3530
const shortcuts = ref([
36-
{ titleKey: 'dashboard.displayViewer', icon: Monitor, color: 'primary', route: '/display-viewer', page: '/display.html', target:"_blank" },
37-
{ titleKey: 'dashboard.alarmsViewer', icon: Bell, color: 'error', route: '/alarms-viewer', page: '/tabular.html?SELMODULO=ALARMS_VIEWER', target:"_blank" },
38-
{ titleKey: 'dashboard.tabularViewer', icon: Table, color: 'success', route: '/tabular-viewer', page: '/tabular.html', target:"_blank" },
39-
{ titleKey: 'dashboard.eventsViewer', icon: Calendar, color: 'info', route: '/events-viewer', page: '/events.html', target:"_blank" },
40-
{ titleKey: 'dashboard.logViewer', icon: FileText, color: 'warning', route: '/log-viewer', page: '/log-io', target:"_blank" },
41-
{ titleKey: 'dashboard.grafana', icon: BarChart, color: 'secondary', route: '/grafana', page: '/grafana', target:"_blank" },
42-
{ titleKey: 'dashboard.metabase', icon: Database, color: 'primary', route: '/metabase', page: '/metabase', target:"_blank" },
31+
{ titleKey: 'dashboard.displayViewer', icon: Monitor, color: 'primary', route: '/display-viewer', page: '/display.html', target: "_blank" },
32+
{ titleKey: 'dashboard.alarmsViewer', icon: Bell, color: 'error', route: '/alarms-viewer', page: '/tabular.html?SELMODULO=ALARMS_VIEWER', target: "_blank" },
33+
{ titleKey: 'dashboard.tabularViewer', icon: Table, color: 'success', route: '/tabular-viewer', page: '/tabular.html', target: "_blank" },
34+
{ titleKey: 'dashboard.eventsViewer', icon: Calendar, color: 'info', route: '/events-viewer', page: '/events.html', target: "_blank" },
35+
{ titleKey: 'dashboard.logViewer', icon: FileText, color: 'warning', route: '/log-viewer', page: '/log-io', target: "_blank" },
36+
{ titleKey: 'dashboard.grafana', icon: BarChart, color: 'secondary', route: '/grafana', page: '/grafana', target: "_blank" },
37+
{ titleKey: 'dashboard.metabase', icon: Database, color: 'primary', route: '/metabase', page: '/metabase', target: "_blank" },
4338
{ titleKey: 'dashboard.admin', icon: UserCog, color: 'primary', route: '/admin' },
4439
{ titleKey: 'dashboard.about', icon: HelpCircle, color: 'secondary', route: '/about' },
4540
]);

0 commit comments

Comments
 (0)