From f9edc18adf8a157bc220bae30a308f4471f9979b Mon Sep 17 00:00:00 2001 From: Dominik George <dominik.george@teckids.org> Date: Sun, 24 Oct 2021 14:56:36 +0200 Subject: [PATCH] Remove persons_accounts view --- aleksis/core/menus.py | 11 ---- aleksis/core/models.py | 1 - aleksis/core/rules.py | 5 -- .../core/templates/core/person/accounts.html | 65 ------------------- aleksis/core/urls.py | 1 - aleksis/core/views.py | 21 ------ 6 files changed, 104 deletions(-) delete mode 100644 aleksis/core/templates/core/person/accounts.html diff --git a/aleksis/core/menus.py b/aleksis/core/menus.py index b368a6c70..d9fd84b0f 100644 --- a/aleksis/core/menus.py +++ b/aleksis/core/menus.py @@ -267,17 +267,6 @@ MENUS = { ) ], }, - { - "name": _("Persons and accounts"), - "url": "persons_accounts", - "icon": "person_add", - "validators": [ - ( - "aleksis.core.util.predicates.permission_validator", - "core.link_persons_accounts_rule", - ) - ], - }, { "name": _("Groups and child groups"), "url": "groups_child_groups", diff --git a/aleksis/core/models.py b/aleksis/core/models.py index 8fffbe122..ae9449d2c 100644 --- a/aleksis/core/models.py +++ b/aleksis/core/models.py @@ -952,7 +952,6 @@ class GlobalPermissions(GlobalPermissionModel): class Meta(GlobalPermissionModel.Meta): permissions = ( ("view_system_status", _("Can view system status")), - ("link_persons_accounts", _("Can link persons to accounts")), ("manage_data", _("Can manage data")), ("impersonate", _("Can impersonate")), ("search", _("Can use search")), diff --git a/aleksis/core/rules.py b/aleksis/core/rules.py index 9b8f7cc1f..9d563ed52 100644 --- a/aleksis/core/rules.py +++ b/aleksis/core/rules.py @@ -80,10 +80,6 @@ delete_person_predicate = has_person & ( ) rules.add_perm("core.delete_person_rule", delete_person_predicate) -# Link persons with accounts -link_persons_accounts_predicate = has_person & has_global_perm("core.link_persons_accounts") -rules.add_perm("core.link_persons_accounts_rule", link_persons_accounts_predicate) - # View groups view_groups_predicate = has_person & ( has_global_perm("core.view_group") | has_any_object("core.view_group", Group) @@ -161,7 +157,6 @@ rules.add_perm( & ( view_persons_predicate | view_groups_predicate - | link_persons_accounts_predicate | assign_child_groups_to_groups_predicate ), ) diff --git a/aleksis/core/templates/core/person/accounts.html b/aleksis/core/templates/core/person/accounts.html deleted file mode 100644 index 03725518d..000000000 --- a/aleksis/core/templates/core/person/accounts.html +++ /dev/null @@ -1,65 +0,0 @@ -{# -*- engine:django -*- #} - -{% extends "core/base.html" %} - -{% load i18n any_js %} - -{% block extra_head %} - {{ persons_accounts_formset.media.css }} - {% include_css "select2-materialize" %} -{% endblock %} - -{% block browser_title %}{% blocktrans %}Link persons to accounts{% endblocktrans %}{% endblock %} -{% block page_title %} - {% blocktrans %}Link persons to accounts{% endblocktrans %} -{% endblock %} - -{% block content %} - <div class="alert info"> - <p> - <i class="material-icons left">info</i> - {% blocktrans %} - You can use this form to assign user accounts to persons. Use the - dropdowns to select existing accounts; use the text fields to create new - accounts on-the-fly. The latter will create a new account with the - entered username and copy all other details from the person. - {% endblocktrans %} - </p> - </div> - - <form method="post"> - {% csrf_token %} - {{ persons_accounts_formset.management_form }} - - <button type="submit" class="btn green waves-effect waves-light"> - <i class="material-icons left">save</i> - {% blocktrans %}Update{% endblocktrans %} - </button> - - <table> - <tr> - <th>{% blocktrans %}Person{% endblocktrans %}</th> - <th>{% blocktrans %}Existing account{% endblocktrans %}</th> - <th>{% blocktrans %}New account{% endblocktrans %}</th> - </tr> - {% for form in persons_accounts_formset %} - {{ form.id }} - <tr> - <td> - {{ form.last_name }} - {{ form.first_name }} - </td> - <td>{{ form.user }}</td> - <td>{{ form.new_user }}</td> - </tr> - {% endfor %} - </table> - - <button type="submit" class="btn green waves-effect waves-light"> - <i class="material-icons left">save</i> - {% blocktrans %}Update{% endblocktrans %} - </button> - </form> - {% include_js "select2-materialize" %} - {{ persons_accounts_formset.media.js }} -{% endblock %} diff --git a/aleksis/core/urls.py b/aleksis/core/urls.py index b09c6ff94..870863da4 100644 --- a/aleksis/core/urls.py +++ b/aleksis/core/urls.py @@ -46,7 +46,6 @@ urlpatterns = [ path("school_terms/create/", views.SchoolTermCreateView.as_view(), name="create_school_term"), path("school_terms/<int:pk>/", views.SchoolTermEditView.as_view(), name="edit_school_term"), path("persons", views.persons, name="persons"), - path("persons/accounts", views.persons_accounts, name="persons_accounts"), path("person", views.person, name="person"), path("person/create", views.edit_person, name="create_person"), path("person/<int:id_>", views.person, name="person_by_id"), diff --git a/aleksis/core/views.py b/aleksis/core/views.py index e24bafa17..eb6448522 100644 --- a/aleksis/core/views.py +++ b/aleksis/core/views.py @@ -361,27 +361,6 @@ def groups(request: HttpRequest) -> HttpResponse: return render(request, "core/group/list.html", context) -@never_cache -@permission_required("core.link_persons_accounts_rule") -def persons_accounts(request: HttpRequest) -> HttpResponse: - """View allowing to batch-process linking of users to persons.""" - context = {} - - # Get all persons - persons_qs = Person.objects.all() - - # Form set with one form per known person - persons_accounts_formset = PersonsAccountsFormSet(request.POST or None, queryset=persons_qs) - - if request.method == "POST": - if persons_accounts_formset.is_valid(): - persons_accounts_formset.save() - - context["persons_accounts_formset"] = persons_accounts_formset - - return render(request, "core/person/accounts.html", context) - - @never_cache @permission_required("core.assign_child_groups_to_groups_rule") def groups_child_groups(request: HttpRequest) -> HttpResponse: -- GitLab