1
0

admin_ils_users.html 4.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. {% extends 'auth_layout.html' %}
  2. {% block content %}
  3. {% if context.message %}
  4. <div class="row">
  5. <div class="col text-center text-primary">
  6. <i class="ri-error-warning-fill"></i> {{ context.message }}
  7. </div>
  8. </div>
  9. {% endif %}
  10. <div class="row">
  11. <div class="col">
  12. <a href="#!" data-bs-toggle="modal" data-bs-target="#add-user" class="btn btn-primary float-end"><i class="ri-user-add-line"></i> Add ILS User</a>
  13. <a href="{{ url_for('admin_ils_users_csv_download') }}" class="btn btn-dark float-end me-2"><i class="ri-file-download-fill"></i> CSV Export</a>
  14. <a href="{{ url_for('admin_ils_users_csv_import') }}" class="btn btn-dark float-end me-2"><i class="ri-file-upload-fill"></i> CSV Import</a>
  15. <h3><i class="ri-shield-user-fill"></i> ILS Users</h3>
  16. <p class="lead">ILS users accounts establish with the ILS system.</p>
  17. </div>
  18. </div>
  19. <div class="row">
  20. <div class="col">
  21. <table class="table table-flush">
  22. <thead>
  23. <tr>
  24. <th scope="col">Username</th>
  25. <th scope="col">Email</th>
  26. <th scope="col">Reset Date</th>
  27. <th scope="col">Reset Age</th>
  28. <th scope="col">Actions</th>
  29. </tr>
  30. </thead>
  31. <tbody>
  32. {% for user in context.users %}
  33. <tr>
  34. <td>{{ user.username }}</td>
  35. <td>{{ user.email }}</td>
  36. <td>{{ user.reset_datetime }}</td>
  37. <td>{{ user.reset_datetime|time_since }}</td>
  38. <td>
  39. <a href="{{ url_for('admin_ils_users_edit', id=user.id) }}" class="btn btn-primary">Edit</a>
  40. <a href="#!" class="btn btn-danger" data-bs-toggle="modal" data-bs-target="#remove-user-{{ loop.index0 }}">Delete</a>
  41. </td>
  42. </tr>
  43. {% endfor %}
  44. </tbody>
  45. </table>
  46. </div>
  47. </div>
  48. <div class="modal fade" id="add-user" tabindex="-1">
  49. <div class="modal-dialog modal-dialog-centered">
  50. <div class="modal-content">
  51. <div class="modal-header bg-light">
  52. <h1 class="modal-title fs-5"><i class="ri-user-add-fill"></i> Add ILS User</h1>
  53. <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
  54. </div>
  55. <form action="" method="post">
  56. <div class="modal-body">
  57. <div class="mb-3">
  58. <input type="text" class="form-control" id="username" name="username" placeholder="Username" required>
  59. </div>
  60. <div class="mb-3">
  61. <input type="email" class="form-control" id="email" name="email" placeholder="Email" required>
  62. </div>
  63. </div>
  64. <div class="modal-footer bg-light">
  65. <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
  66. <input type="submit" class="btn btn-primary" value="Save">
  67. </div>
  68. </form>
  69. </div>
  70. </div>
  71. </div>
  72. {% for user in context.users %}
  73. <div class="modal fade" id="remove-user-{{ loop.index0 }}" tabindex="-1">
  74. <div class="modal-dialog modal-dialog-centered">
  75. <div class="modal-content">
  76. <div class="modal-header bg-light">
  77. <h1 class="modal-title fs-5">Confirmation</h1>
  78. <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
  79. </div>
  80. <div class="modal-body">
  81. <div class="mb-3">
  82. <p class="lead">Are you sure you want to delete this user?</p>
  83. </div>
  84. </div>
  85. <div class="modal-footer bg-light">
  86. <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
  87. <a class="btn btn-danger" href="{{ url_for('admin_ils_users_delete', id=user.id) }}">Yes, remove the user</a>
  88. </div>
  89. </div>
  90. </div>
  91. </div>
  92. {% endfor %}
  93. {% endblock %}