From 00b736d8d6d9f60ff2eb60e0cc79165c013f0632 Mon Sep 17 00:00:00 2001 From: Ross Date: Mon, 15 Dec 2025 12:23:26 +0000 Subject: [PATCH] Implement bulk user management features: add user generation preview and bulk creation functionality in CID group view --- .../generic/cid_group_view_detail.html | 83 +++++++------------ .../partials/cid_group_generate_preview.html | 22 +++++ .../generic/partials/group_users_list.html | 39 +++++++++ generic/urls.py | 10 +++ generic/views.py | 72 ++++++++++++++++ 5 files changed, 173 insertions(+), 53 deletions(-) create mode 100644 generic/templates/generic/partials/cid_group_generate_preview.html create mode 100644 generic/templates/generic/partials/group_users_list.html diff --git a/generic/templates/generic/cid_group_view_detail.html b/generic/templates/generic/cid_group_view_detail.html index 6f43b95a..711b6121 100755 --- a/generic/templates/generic/cid_group_view_detail.html +++ b/generic/templates/generic/cid_group_view_detail.html @@ -28,61 +28,38 @@

Users

- {% if users %} -
-
Sort by:
-
- - - -
+
+
Sort by:
+
+ + +
+
-
    - {% for user in users %} -
  • - {% if group_type == "cid" %} -
    -
    -
    {{ user.name }}
    -
    {{ user.email }}
    -
    -
    -
    CID: {{ user.cid }}
    -
    Passcode: {{ user.passcode }}
    -
    - {% if user.login_email_sent %} - - {% else %} - - {% endif %} - {% if user.email %} - - {% else %} - No email - {% endif %} -
    -
    -
    - {% else %} -
    -
    {{ user.username }}
    -
    {{ user.email }}
    -
    - {% endif %} -
  • - {% endfor %} -
- {% else %} -

This group has no users. - {% if group_type == "cid" %} - You can create or add users here. - {% endif %} -

- {% endif %} +
+
+ {% csrf_token %} + + +
+ +
+
+
+
+ +
+ {% if users %} + {% include 'generic/partials/group_users_list.html' with users=users group_type=group_type %} + {% else %} +

This group has no users. + {% if group_type == "cid" %} + You can create or add users here. + {% endif %} +

+ {% endif %} +
diff --git a/generic/templates/generic/partials/cid_group_generate_preview.html b/generic/templates/generic/partials/cid_group_generate_preview.html new file mode 100644 index 00000000..d0a98394 --- /dev/null +++ b/generic/templates/generic/partials/cid_group_generate_preview.html @@ -0,0 +1,22 @@ +{% comment %} Preview partial for parsed rows; includes a form to create users {% endcomment %} +
+
Preview ({{ rows|length }} rows)
+
+ + + + + + {% for r in rows %} + + {% endfor %} + +
NameEmail
{{ r.name }}{{ r.email }}
+
+ +
+ {% csrf_token %} + + +
+
diff --git a/generic/templates/generic/partials/group_users_list.html b/generic/templates/generic/partials/group_users_list.html new file mode 100644 index 00000000..06a04e6c --- /dev/null +++ b/generic/templates/generic/partials/group_users_list.html @@ -0,0 +1,39 @@ +{% comment %} Partial: renders the users