API & Client - complete users administration

This commit is contained in:
Sam
2022-03-20 18:29:18 +01:00
parent c92787a0d5
commit 135281fe1d
13 changed files with 278 additions and 48 deletions

View File

@ -105,13 +105,19 @@ export const actions: ActionTree<IUsersState, IRootState> & IUsersActions = {
): void {
context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)
context.commit(USERS_STORE.MUTATIONS.UPDATE_IS_SUCCESS, false)
const data: Record<string, boolean> = {}
const data: Record<string, boolean | string> = {}
if (payload.admin !== undefined) {
data.admin = payload.admin
}
if (payload.resetPassword !== undefined) {
if (payload.resetPassword) {
data.reset_password = payload.resetPassword
}
if (payload.activate) {
data.activate = payload.activate
}
if (payload.new_email !== undefined) {
data.new_email = payload.new_email
}
authApi
.patch(`users/${payload.username}`, data)
.then((res) => {
@ -120,7 +126,15 @@ export const actions: ActionTree<IUsersState, IRootState> & IUsersActions = {
USERS_STORE.MUTATIONS.UPDATE_USER_IN_USERS,
res.data.data.users[0]
)
context.commit(USERS_STORE.MUTATIONS.UPDATE_IS_SUCCESS, true)
if (payload.resetPassword || payload.new_email) {
context.commit(USERS_STORE.MUTATIONS.UPDATE_IS_SUCCESS, true)
}
if (payload.activate || payload.new_email) {
context.commit(
USERS_STORE.MUTATIONS.UPDATE_USER,
res.data.data.users[0]
)
}
} else {
handleError(context, null)
}