WIP - fix displaying name for owner field

This commit is contained in:
Francisco Gaona
2026-04-10 22:19:11 +02:00
parent a2d48f6a03
commit baf3997fb6
6 changed files with 88 additions and 3 deletions

View File

@@ -33,6 +33,10 @@
<Label class="text-muted-foreground">Email</Label>
<p class="font-medium">{{ user?.email }}</p>
</div>
<div>
<Label class="text-muted-foreground">Alias</Label>
<p class="font-medium">{{ user?.alias || 'N/A' }}</p>
</div>
<div>
<Label class="text-muted-foreground">First Name</Label>
<p class="font-medium">{{ user?.firstName || 'N/A' }}</p>
@@ -210,6 +214,9 @@ const removeRole = async (roleId: string) => {
const getUserName = (user: any) => {
if (!user) return 'User';
if (user.alias) {
return user.alias;
}
if (user.firstName || user.lastName) {
return [user.firstName, user.lastName].filter(Boolean).join(' ');
}

View File

@@ -95,6 +95,10 @@
<Label for="lastName">Last Name (Optional)</Label>
<Input id="lastName" v-model="newUser.lastName" placeholder="Doe" />
</div>
<div class="space-y-2">
<Label for="alias">Alias (Optional)</Label>
<Input id="alias" v-model="newUser.alias" placeholder="Display name" />
</div>
</div>
<DialogFooter>
<Button variant="outline" @click="showCreateDialog = false">Cancel</Button>
@@ -131,6 +135,10 @@
<Label for="edit-lastName">Last Name</Label>
<Input id="edit-lastName" v-model="editUser.lastName" placeholder="Doe" />
</div>
<div class="space-y-2">
<Label for="edit-alias">Alias</Label>
<Input id="edit-alias" v-model="editUser.alias" placeholder="Display name" />
</div>
</div>
<DialogFooter>
<Button variant="outline" @click="showEditDialog = false">Cancel</Button>
@@ -187,6 +195,7 @@ const newUser = ref({
password: '',
firstName: '',
lastName: '',
alias: '',
});
const editUser = ref({
id: '',
@@ -194,6 +203,7 @@ const editUser = ref({
password: '',
firstName: '',
lastName: '',
alias: '',
});
const userToDelete = ref<any>(null);
@@ -215,7 +225,7 @@ const createUser = async () => {
await api.post('/setup/users', newUser.value);
toast.success('User created successfully');
showCreateDialog.value = false;
newUser.value = { email: '', password: '', firstName: '', lastName: '' };
newUser.value = { email: '', password: '', firstName: '', lastName: '', alias: '' };
await loadUsers();
} catch (error: any) {
console.error('Failed to create user:', error);
@@ -230,6 +240,7 @@ const openEditDialog = (user: any) => {
password: '',
firstName: user.firstName || '',
lastName: user.lastName || '',
alias: user.alias || '',
};
showEditDialog.value = true;
};
@@ -240,6 +251,7 @@ const updateUser = async () => {
email: editUser.value.email,
firstName: editUser.value.firstName,
lastName: editUser.value.lastName,
alias: editUser.value.alias,
};
if (editUser.value.password) {
payload.password = editUser.value.password;
@@ -273,6 +285,9 @@ const deleteUser = async () => {
};
const getUserName = (user: any) => {
if (user.alias) {
return user.alias;
}
if (user.firstName || user.lastName) {
return [user.firstName, user.lastName].filter(Boolean).join(' ');
}