You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ma...@apache.org on 2019/06/03 18:13:07 UTC
[airavata-django-portal] 01/02: AIRAVATA-3041 Adding search over
identity server users
This is an automated email from the ASF dual-hosted git repository.
machristie pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/airavata-django-portal.git
commit 06b551e7d70347c34b7e71bafce3a9d52f5a967a
Author: Marcus Christie <ma...@apache.org>
AuthorDate: Mon Jun 3 10:35:46 2019 -0400
AIRAVATA-3041 Adding search over identity server users
---
.../components/users/UserManagementContainer.vue | 50 +++++++++++++++++++---
1 file changed, 45 insertions(+), 5 deletions(-)
diff --git a/django_airavata/apps/admin/static/django_airavata_admin/src/components/users/UserManagementContainer.vue b/django_airavata/apps/admin/static/django_airavata_admin/src/components/users/UserManagementContainer.vue
index 25c5ba7..6f11a93 100644
--- a/django_airavata/apps/admin/static/django_airavata_admin/src/components/users/UserManagementContainer.vue
+++ b/django_airavata/apps/admin/static/django_airavata_admin/src/components/users/UserManagementContainer.vue
@@ -2,7 +2,29 @@
<div>
<div class="row">
<div class="col">
- <h1 class="h4 mb-4">Users</h1>
+ <h1 class="h4 mb-4">Manage Users</h1>
+ </div>
+ </div>
+ <div class="row">
+ <div class="col">
+ <div class="card">
+ <div class="card-body">
+ <b-input-group>
+ <b-form-input
+ v-model="search"
+ placeholder="Search by name, email or username"
+ @keydown.native.enter="searchUsers"
+ />
+ <b-input-group-append>
+ <b-button @click="resetSearch">Reset</b-button>
+ <b-button
+ variant="primary"
+ @click="searchUsers"
+ >Search</b-button>
+ </b-input-group-append>
+ </b-input-group>
+ </div>
+ </div>
</div>
</div>
<div class="row">
@@ -59,7 +81,8 @@ export default {
return {
usersPaginator: null,
allGroups: null,
- showingDetails: {}
+ showingDetails: {},
+ search: null
};
},
components: {
@@ -111,7 +134,8 @@ export default {
return this.usersPaginator
? this.usersPaginator.results.map(u => {
const user = u.clone();
- user._showDetails = this.showingDetails[u.airavataInternalUserId] || false;
+ user._showDetails =
+ this.showingDetails[u.airavataInternalUserId] || false;
return user;
})
: [];
@@ -141,15 +165,31 @@ export default {
});
},
reloadUserProfiles() {
- services.ManagedUserProfileService.list({
+ const params = {
limit: 10,
offset: this.currentOffset
- }).then(users => (this.usersPaginator = users));
+ };
+ if (this.search) {
+ params["search"] = this.search;
+ }
+ services.ManagedUserProfileService.list(params).then(
+ users => (this.usersPaginator = users)
+ );
},
toggleDetails(row) {
row.toggleDetails();
this.showingDetails[row.item.airavataInternalUserId] = !this
.showingDetails[row.item.airavataInternalUserId];
+ },
+ searchUsers() {
+ // Reset paginator when starting a search
+ this.usersPaginator = null;
+ this.reloadUserProfiles();
+ },
+ resetSearch() {
+ this.usersPaginator = null;
+ this.search = null;
+ this.reloadUserProfiles();
}
}
};