user-management.html 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <pstm-uri>/users</pstm-uri>
  5. <pstm-template>main</pstm-template>
  6. <link rel="stm-guard" require="auth" href="/login" pre-entrypoint>
  7. </head>
  8. <body>
  9. <section class="stack">
  10. <h2>User management</h2>
  11. <div class="table-wrap" stm-if="users != null">
  12. <table class="table-hover">
  13. <thead>
  14. <tr>
  15. <th>Username</th>
  16. <th>Email</th>
  17. <th>Enabled</th>
  18. <th>Permissions</th>
  19. <th>Actions</th>
  20. </tr>
  21. </thead>
  22. <tbody>
  23. <tr stm-for-user-in="users.users">
  24. <td stm-text="user.username">user</td>
  25. <td stm-text="user.email">email</td>
  26. <td stm-text="user.enabled ? 'Yes' : 'No'">Yes</td>
  27. <td>
  28. <code stm-for-permission-in="user.permissions"><span stm-text="permission">permission</span> </code>
  29. </td>
  30. <td>
  31. <div class="cluster">
  32. <form class="cluster" stm-action="user.set_enabled">
  33. <input type="checkbox" name="enabled" stm-attribute.checked="user.enabled">
  34. <button class="btn btn-sm" type="submit"><span stm-text="user.enabled ? 'Disable' : 'Enable'">Toggle</span></button>
  35. </form>
  36. <form class="cluster" stm-action="user.grant">
  37. <input type="text" name="permission" placeholder="permission" required>
  38. <button class="btn btn-sm" type="submit">Grant</button>
  39. </form>
  40. <form class="cluster" stm-action="user.revoke">
  41. <input type="text" name="permission" placeholder="permission" required>
  42. <button class="btn btn-sm" type="submit">Revoke</button>
  43. </form>
  44. <form class="cluster" stm-action="user.delete">
  45. <button class="btn btn-sm btn-danger" type="submit">Delete</button>
  46. </form>
  47. </div>
  48. </td>
  49. </tr>
  50. </tbody>
  51. </table>
  52. </div>
  53. </section>
  54. </body>
  55. </html>