Implement user deletion
This commit is contained in:
@@ -134,6 +134,23 @@ async function onRemoveGroup(group) {
|
||||
await refreshGroups();
|
||||
}
|
||||
|
||||
async function onRemoveUser(user) {
|
||||
const yes = await inputDialog.value.confirm({
|
||||
title: t('users.deleteUserDialog.title', { username: (user.username || user.email) }),
|
||||
message: t('users.deleteUserDialog.description'),
|
||||
confirmStyle: 'danger',
|
||||
confirmLabel: t('users.deleteUserDialog.deleteAction'),
|
||||
rejectLabel: t('main.dialog.cancel')
|
||||
});
|
||||
|
||||
if (!yes) return;
|
||||
|
||||
const [error] = await usersModel.remove(user.id);
|
||||
if (error) console.error(error);
|
||||
|
||||
await refreshUsers();
|
||||
}
|
||||
|
||||
onMounted(async () => {
|
||||
const [error, result] = await profileModel.get();
|
||||
if (error) return console.error(error);
|
||||
@@ -193,7 +210,7 @@ onMounted(async () => {
|
||||
<Button small tool secondary :disabled="!canImpersonate(user)" @click="setGhost.show(user)" v-tooltip="$t('users.users.setGhostTooltip')" icon="fa-solid fa-user-secret" />
|
||||
<Button small tool secondary :disabled="!canEdit(user)" @click="userEdit.show(user)" v-tooltip="$t('users.users.editUserTooltip')" icon="fa fa-pencil-alt" />
|
||||
</ButtonGroup>
|
||||
<Button small tool danger :disabled="!canEdit(user) || isMe(user)" @click="userRemove.show(user)" v-tooltip="$t('users.users.removeUserTooltip')" icon="far fa-trash-alt" />
|
||||
<Button small tool danger :disabled="!canEdit(user) || isMe(user)" @click="onRemoveUser(user)" v-tooltip="$t('users.users.removeUserTooltip')" icon="far fa-trash-alt" />
|
||||
</div>
|
||||
</template>
|
||||
</TableView>
|
||||
|
||||
Reference in New Issue
Block a user