change username to user

This commit is contained in:
Adrian Zürcher
2026-02-19 10:51:09 +01:00
parent ab88acd740
commit e686a27bf1
6 changed files with 23 additions and 10 deletions

View File

@@ -17,7 +17,7 @@ export default boot(async ({ app }) => {
useStore
.setUser({
id: resp.data.id,
username: resp.data.username,
user: resp.data.username,
role: { role: resp.data.role, permissions: [] },
})
.catch((err) => console.error(err));

View File

@@ -69,6 +69,7 @@ const dialog = ref();
const form = ref();
const newUser = ref(false);
const role = ref('');
const localUser = ref<User>({
user: '',
email: '',

View File

@@ -15,7 +15,7 @@ const router = useRouter();
const userStore = useUserStore();
onMounted(() => {
if (userStore.user?.username !== '' && userStore.user?.role.role !== '') {
if (userStore.user?.user !== '' && userStore.user?.role.role !== '') {
forwardToPage().catch((err) => console.error(err));
}
});

View File

@@ -3,7 +3,7 @@
<q-btn dense flat round icon="person" :color="currentUser ? 'green' : ''">
<q-menu ref="refLoginMenu">
<q-list style="min-width: 120px">
<q-item v-if="user.user" class="text-primary">{{ currentUser?.username }}</q-item>
<q-item v-if="user.user" class="text-primary">{{ currentUser?.user }}</q-item>
<q-item v-if="showLogin" clickable v-close-popup @click="openLogin">
<q-item-section class="text-primary">{{ loginText }}</q-item-section>
</q-item>
@@ -69,7 +69,7 @@ const darkMode = computed(() => {
return 'dark_mode';
});
const showLogin = computed(
() => (route.path !== '/' && route.path !== '/login') || currentUser.value?.username === '',
() => (route.path !== '/' && route.path !== '/login') || currentUser.value?.user === '',
);
const autorized = computed(() => !!user.isAuthorizedAs(['admin']));

View File

@@ -35,7 +35,7 @@ export function useLogin() {
await userStore
.setUser({
id: resp.data.id,
username: resp.data.user,
user: resp.data.user,
role: { role: resp.data.role, permissions: [] },
})
.catch((err) => NotifyResponse(err, 'error'));
@@ -69,7 +69,7 @@ export function useLogin() {
userStore
.setUser({
id: resp.data.id,
username: resp.data.user,
user: resp.data.user,
role: { role: resp.data.role, permissions: [] },
})
.catch((err) => NotifyResponse(err, 'error'));

View File

@@ -25,8 +25,17 @@ export const useUserStore = defineStore('user', {
};
},
isPermittedTo: (state: UserState) => {
return (name: string, type: 'read' | 'write' | 'delete' | 'import' | 'export'): boolean => {
return (
name: string,
type: 'read' | 'write' | 'delete' | 'import' | 'export',
compareRole?: Role,
): boolean => {
const permission = state.user?.permissions?.find((r: Permission) => r.name === name);
if (compareRole && permission) {
const rolePermission = compareRole.permissions?.find((r: Permission) => r.name === name);
if (rolePermission && rolePermission?.permission > permission?.permission) return false;
}
switch (type) {
case 'read':
return permission?.permission ? (permission.permission & (1 << 0)) === 1 : false;
@@ -62,7 +71,7 @@ export const useUserStore = defineStore('user', {
if (!this.user) return;
if ($q) {
$q?.notify({
message: "user '" + this.user?.username + "' logged out",
message: "user '" + this.user?.user + "' logged out",
color: 'orange',
position: 'top',
icon: 'warning',
@@ -80,7 +89,7 @@ export const useUserStore = defineStore('user', {
],
});
} else {
console.error("user '" + this.user?.username + "' logged out");
console.error("user '" + this.user?.user + "' logged out");
}
this.user = null;
@@ -108,9 +117,12 @@ export const useUserStore = defineStore('user', {
],
});
} else {
console.error("user '" + this.user?.username + "' logged out");
console.error("user '" + this.user?.user + "' logged out");
}
});
},
isAdmin() {
return this.user?.role.role.includes('admin');
},
},
});