orgUsers.html 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. <topnav title="Organization" icon="fa fa-fw fa-users" subnav="true">
  2. <ul class="nav">
  3. <li class="active"><a href="org/users">Users</a></li>
  4. </ul>
  5. </topnav>
  6. <div class="page-container">
  7. <div class="page">
  8. <h2>Organization users</h2>
  9. <button class="btn btn-success pull-right" ng-click="openInviteModal()">
  10. Invite Users
  11. </button>
  12. <br>
  13. <tabset>
  14. <tab heading="Users ({{users.length}})">
  15. <table class="grafana-options-table form-inline">
  16. <tr>
  17. <th>Login</th>
  18. <th>Email</th>
  19. <th>Role</th>
  20. <th></th>
  21. </tr>
  22. <tr ng-repeat="user in users">
  23. <td>{{user.login}}</td>
  24. <td>{{user.email}}</td>
  25. <td>
  26. <select type="text" ng-model="user.role" class="input-medium" ng-options="f for f in ['Viewer', 'Editor', 'Read Only Editor', 'Admin']" ng-change="updateOrgUser(user)">
  27. </select>
  28. </td>
  29. <td style="width: 1%">
  30. <a ng-click="removeUser(user)" class="btn btn-danger btn-mini">
  31. <i class="fa fa-remove"></i>
  32. </a>
  33. </td>
  34. </tr>
  35. </table>
  36. </tab>
  37. <tab heading="Pending Invitations ({{pendingInvites.length}})">
  38. <table class="grafana-options-table form-inline">
  39. <tr>
  40. <th>Email</th>
  41. <th>Name</th>
  42. <th></th>
  43. </tr>
  44. <tr ng-repeat="invite in pendingInvites">
  45. <td>{{invite.email}}</td>
  46. <td>{{invite.name}}</td>
  47. <td style="width: 1%">
  48. <button class="btn btn-inverse btn-mini" data-clipboard-text="{{snapshotUrl}}" clipboard-button>
  49. <i class="fa fa-clipboard"></i> Copy Invite
  50. </button>
  51. &nbsp;&nbsp;
  52. <a class="pointer">
  53. <i class="fa fa-caret-right"></i>
  54. </a>
  55. </td>
  56. </tr>
  57. </table>
  58. </tab>
  59. </tabset>
  60. </div>
  61. </div>