users.html 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. <page-header model="ctrl.navModel"></page-header>
  2. <div class="page-container page-body">
  3. <div class="page-action-bar">
  4. <label class="gf-form gf-form--grow gf-form--has-input-icon">
  5. <input type="text" class="gf-form-input max-width-30" placeholder="Find user by name/login/email" tabindex="1" give-focus="true" ng-model="ctrl.query" ng-model-options="{ debounce: 500 }" spellcheck='false' ng-change="ctrl.getUsers()" />
  6. <i class="gf-form-input-icon fa fa-search"></i>
  7. </label>
  8. <div class="page-action-bar__spacer"></div>
  9. <a class="btn btn-primary" href="admin/users/create">
  10. New user
  11. </a>
  12. </div>
  13. <div class="admin-list-table">
  14. <table class="filter-table form-inline filter-table--hover">
  15. <thead>
  16. <tr>
  17. <th></th>
  18. <th>Login</th>
  19. <th>Email</th>
  20. <th>
  21. Seen
  22. <tip>Time since user was seen using Grafana</tip>
  23. </th>
  24. <th></th>
  25. <th style="width: 1%"></th>
  26. </tr>
  27. </thead>
  28. <tbody>
  29. <tr ng-repeat="user in ctrl.users">
  30. <td class="width-4 text-center link-td">
  31. <a href="admin/users/edit/{{user.id}}">
  32. <img class="filter-table__avatar" ng-src="{{user.avatarUrl}}"></img>
  33. </a>
  34. </td>
  35. <td class="link-td">
  36. <a href="admin/users/edit/{{user.id}}">
  37. {{user.login}}
  38. </a>
  39. </td>
  40. <td class="link-td">
  41. <a href="admin/users/edit/{{user.id}}">
  42. {{user.email}}
  43. </a>
  44. </td>
  45. <td class="link-td">
  46. <a href="admin/users/edit/{{user.id}}">
  47. {{user.lastSeenAtAge}}
  48. </a>
  49. </td>
  50. <td class="link-td">
  51. <a href="admin/users/edit/{{user.id}}">
  52. <i class="fa fa-shield" ng-show="user.isAdmin" bs-tooltip="'Grafana Admin'"></i>
  53. </a>
  54. </td>
  55. <td class="text-right">
  56. <a ng-click="ctrl.deleteUser(user)" class="btn btn-danger btn-small">
  57. <i class="fa fa-remove"></i>
  58. </a>
  59. </td>
  60. </tr>
  61. </tbody>
  62. </table>
  63. </div>
  64. <div class="admin-list-paging" ng-if="ctrl.showPaging">
  65. <ol>
  66. <li ng-repeat="page in ctrl.pages">
  67. <button class="btn btn-small" ng-class="{'btn-secondary': page.current, 'btn-inverse': !page.current}" ng-click="ctrl.navigateToPage(page)">{{page.page}}</button>
  68. </li>
  69. </ol>
  70. </div>
  71. </div>