diff --git a/public/app/features/admin/AdminEditUserCtrl.ts b/public/app/features/admin/AdminEditUserCtrl.ts
index 27e2e445c94..70a6b6d4fe8 100644
--- a/public/app/features/admin/AdminEditUserCtrl.ts
+++ b/public/app/features/admin/AdminEditUserCtrl.ts
@@ -86,9 +86,7 @@ export default class AdminEditUserCtrl {
$scope.updatePermissions = () => {
const payload = $scope.permissions;
- backendSrv.put('/api/admin/users/' + $scope.user_id + '/permissions', payload).then(() => {
- $location.path('/admin/users');
- });
+ backendSrv.put('/api/admin/users/' + $scope.user_id + '/permissions', payload);
};
$scope.create = () => {
@@ -163,6 +161,36 @@ export default class AdminEditUserCtrl {
});
};
+ $scope.deleteUser = (user: any) => {
+ $scope.appEvent('confirm-modal', {
+ title: 'Delete',
+ text: 'Do you want to delete ' + user.login + '?',
+ icon: 'fa-trash',
+ yesText: 'Delete',
+ onConfirm: () => {
+ backendSrv.delete('/api/admin/users/' + user.id).then(() => {
+ $location.path('/admin/users');
+ });
+ },
+ });
+ };
+
+ $scope.disableUser = event => {
+ const user = $scope.user;
+
+ // External user can not be disabled
+ if (user.authModule) {
+ event.preventDefault();
+ event.stopPropagation();
+ return;
+ }
+
+ const actionEndpoint = user.isDisabled ? '/enable' : '/disable';
+ backendSrv.post('/api/admin/users/' + user.id + actionEndpoint).then(() => {
+ $scope.init();
+ });
+ };
+
$scope.init();
}
}
diff --git a/public/app/features/admin/AdminListUsersCtrl.ts b/public/app/features/admin/AdminListUsersCtrl.ts
index 48c1e1705f6..3f1e1e1bf51 100644
--- a/public/app/features/admin/AdminListUsersCtrl.ts
+++ b/public/app/features/admin/AdminListUsersCtrl.ts
@@ -12,7 +12,7 @@ export default class AdminListUsersCtrl {
navModel: any;
/** @ngInject */
- constructor(private $scope: any, private backendSrv: BackendSrv, navModelSrv: NavModelSrv) {
+ constructor(private backendSrv: BackendSrv, navModelSrv: NavModelSrv) {
this.navModel = navModelSrv.getNav('admin', 'global-users', 0);
this.query = '';
this.getUsers();
@@ -40,17 +40,10 @@ export default class AdminListUsersCtrl {
this.getUsers();
}
- deleteUser(user: any) {
- this.$scope.appEvent('confirm-modal', {
- title: 'Delete',
- text: 'Do you want to delete ' + user.login + '?',
- icon: 'fa-trash',
- yesText: 'Delete',
- onConfirm: () => {
- this.backendSrv.delete('/api/admin/users/' + user.id).then(() => {
- this.getUsers();
- });
- },
- });
+ getAuthModule(user: any) {
+ if (user.authModule && user.authModule.length) {
+ return user.authModule[0];
+ }
+ return undefined;
}
}
diff --git a/public/app/features/admin/partials/edit_user.html b/public/app/features/admin/partials/edit_user.html
index a41eef89ad2..12bfbe8f722 100644
--- a/public/app/features/admin/partials/edit_user.html
+++ b/public/app/features/admin/partials/edit_user.html
@@ -1,135 +1,179 @@
+
Edit User
+
+
Change password
-
+
+
+
+
-
Change password
+
Permissions
-
-
-
-
-
+
Organizations
-
Permissions
+
-
+
Sessions
-
Organizations
+
-
+
-
-
-
Sessions
-
-
-
-
+
diff --git a/public/app/features/admin/partials/users.html b/public/app/features/admin/partials/users.html
index dd8c8c2c2ad..da33deeef0c 100644
--- a/public/app/features/admin/partials/users.html
+++ b/public/app/features/admin/partials/users.html
@@ -55,9 +55,10 @@
-
-
-
+ LDAP
+ |
+
+ Disabled
|
diff --git a/public/sass/components/_tags.scss b/public/sass/components/_tags.scss
index 4451f2ee8a6..ce5d427d15b 100644
--- a/public/sass/components/_tags.scss
+++ b/public/sass/components/_tags.scss
@@ -29,9 +29,25 @@
top: 1px;
padding-right: 4px;
}
-}
-.label-tag:hover {
- opacity: 0.85;
- background-color: darken($purple, 10%);
+ &.muted {
+ opacity: 0.85;
+ background-color: darken($purple, 10%);
+ color: $text-muted;
+ }
+
+ &:hover {
+ opacity: 0.85;
+ background-color: darken($purple, 10%);
+ }
+
+ &--gray {
+ opacity: 0.85;
+ background-color: $gray-1;
+ border-color: $gray-2;
+
+ &:hover {
+ background-color: $gray-1;
+ }
+ }
}