Added to delete a user account in the Mia core application.
This commit is contained in:
parent
1c67d0f5ac
commit
b2aad32579
@ -32,8 +32,7 @@ urlpatterns = [
|
|||||||
path("users/<user:user>", views.UserView.as_view(), name="users.detail"),
|
path("users/<user:user>", views.UserView.as_view(), name="users.detail"),
|
||||||
path("users/<user:user>/edit", views.user_form, name="users.edit"),
|
path("users/<user:user>/edit", views.user_form, name="users.edit"),
|
||||||
path("users/<user:user>/update", views.user_store, name="users.update"),
|
path("users/<user:user>/update", views.user_store, name="users.update"),
|
||||||
# TODO: To be done.
|
path("users/<user:user>/delete", views.user_delete, name="users.delete"),
|
||||||
path("users/<user:user>/delete", views.todo, name="users.delete"),
|
|
||||||
path("api/users/<str:login_id>/exists", views.api_users_exists,
|
path("api/users/<str:login_id>/exists", views.api_users_exists,
|
||||||
name="api.users.exists"),
|
name="api.users.exists"),
|
||||||
# TODO: To be done.
|
# TODO: To be done.
|
||||||
|
@ -138,7 +138,7 @@ def user_store(request, user=None):
|
|||||||
user.name = form["name"].value()
|
user.name = form["name"].value()
|
||||||
user.is_disabled = form["is_disabled"].value()
|
user.is_disabled = form["is_disabled"].value()
|
||||||
if not user.is_dirty():
|
if not user.is_dirty():
|
||||||
message = gettext_noop("This user account was not modified.")
|
message = gettext_noop("This user account was not changed.")
|
||||||
else:
|
else:
|
||||||
user.save(current_user=request.user)
|
user.save(current_user=request.user)
|
||||||
message = gettext_noop("This user account was saved successfully.")
|
message = gettext_noop("This user account was saved successfully.")
|
||||||
@ -146,6 +146,36 @@ def user_store(request, user=None):
|
|||||||
return redirect("mia_core:users.detail", user)
|
return redirect("mia_core:users.detail", user)
|
||||||
|
|
||||||
|
|
||||||
|
@require_POST
|
||||||
|
@login_required
|
||||||
|
def user_delete(request, user):
|
||||||
|
"""The view to delete an user.
|
||||||
|
|
||||||
|
Args:
|
||||||
|
request (HttpRequest): The request.
|
||||||
|
user (User): The user.
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
HttpResponseRedirect: The response.
|
||||||
|
"""
|
||||||
|
message = None
|
||||||
|
if user.pk == request.user.pk:
|
||||||
|
message = gettext_noop("You cannot delete your own account.")
|
||||||
|
elif user.is_in_use():
|
||||||
|
message = gettext_noop(
|
||||||
|
"You cannot delete this account because it is in use.")
|
||||||
|
elif user.is_deleted:
|
||||||
|
message = gettext_noop("This account is already deleted.")
|
||||||
|
if message is not None:
|
||||||
|
messages.error(request, message)
|
||||||
|
return redirect("mia_core:users.detail", user)
|
||||||
|
user.delete()
|
||||||
|
message = gettext_noop("This user account was deleted successfully.")
|
||||||
|
messages.success(request, message)
|
||||||
|
return redirect("mia_core:users")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def api_users_exists(request, login_id):
|
def api_users_exists(request, login_id):
|
||||||
"""The view to check whether a user with a log in ID exists.
|
"""The view to check whether a user with a log in ID exists.
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user