summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ishtar_common/models.py2
-rw-r--r--ishtar_common/urls.py5
-rw-r--r--ishtar_common/views.py16
3 files changed, 22 insertions, 1 deletions
diff --git a/ishtar_common/models.py b/ishtar_common/models.py
index c8056a4ab..f16b9ffc9 100644
--- a/ishtar_common/models.py
+++ b/ishtar_common/models.py
@@ -2919,7 +2919,7 @@ class Person(Address, Merge, OwnPerms, ValueGetter, MainItem):
return actions
actions += [
(
- reverse("person_create", args=[self.pk]),
+ reverse("account_creation", args=[self.pk]),
_("Create new user"),
"fa fa-user",
"",
diff --git a/ishtar_common/urls.py b/ishtar_common/urls.py
index 7bbdc189f..c21f51d71 100644
--- a/ishtar_common/urls.py
+++ b/ishtar_common/urls.py
@@ -203,6 +203,11 @@ urlpatterns = [
name="account_deletion",
),
url(
+ r"account_creation/(?P<step>.+)?$",
+ check_rights(["add_ishtaruser"])(views.account_creation_wizard),
+ name="account_creation",
+ ),
+ url(
r"^import-new/$",
check_rights(["change_import"])(views.NewImportView.as_view()),
name="new_import",
diff --git a/ishtar_common/views.py b/ishtar_common/views.py
index 6f5953841..5b67f1bcb 100644
--- a/ishtar_common/views.py
+++ b/ishtar_common/views.py
@@ -319,6 +319,12 @@ account_management_wizard = wizards.AccountWizard.as_view(
url_name="account_management",
)
+account_creation_wizard = wizards.AccountWizard.as_view(
+ account_wizard_steps,
+ label=_("Account creation"),
+ url_name="account_creation",
+)
+
account_deletion_wizard = wizards.IshtarUserDeletionWizard.as_view(
[
("selec-account_deletion", forms.AccountFormSelection),
@@ -328,6 +334,16 @@ account_deletion_wizard = wizards.IshtarUserDeletionWizard.as_view(
url_name="account_deletion",
)
+def account_create(request, pk):
+ if not wizard_is_available(account_creation_wizard, request, models.IshtarUser):
+ return HttpResponseRedirect("/")
+ wizards.AccountWizard.session_set_value(
+ request, "selec-account_management", "pk", pk, reset=True
+ )
+ return redirect(
+ reverse("account_creation", kwargs={"step": "account-account_management"})
+ )
+
def get_autocomplete_generic(model, extra=None):
if not extra: