You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dlab.apache.org by an...@apache.org on 2019/09/25 14:48:55 UTC
[incubator-dlab] 04/08: [DLAB-472]: added filtering configuration
to management grid
This is an automated email from the ASF dual-hosted git repository.
ankovalyshyn pushed a commit to branch DLAB-1056
in repository https://gitbox.apache.org/repos/asf/incubator-dlab.git
commit cb317e90c6f5d700e4deca0db4fbcd7842af47c6
Author: Andriana Kovalyshyn <An...@epam.com>
AuthorDate: Wed Sep 25 15:43:55 2019 +0300
[DLAB-472]: added filtering configuration to management grid
---
.../management-grid/management-grid.component.html | 2 +-
.../management-grid/management-grid.component.scss | 38 +++++++++++++---------
.../management-grid/management-grid.component.ts | 36 +++++++++++++++++++-
3 files changed, 59 insertions(+), 17 deletions(-)
diff --git a/services/self-service/src/main/resources/webapp/src/app/administration/management/management-grid/management-grid.component.html b/services/self-service/src/main/resources/webapp/src/app/administration/management/management-grid/management-grid.component.html
index 61350b8..95832b5 100644
--- a/services/self-service/src/main/resources/webapp/src/app/administration/management/management-grid/management-grid.component.html
+++ b/services/self-service/src/main/resources/webapp/src/app/administration/management/management-grid/management-grid.component.html
@@ -18,7 +18,7 @@
-->
<div class="ani">
- <table mat-table [dataSource]="allEnvironmentData" class="data-grid mat-elevation-z6">
+ <table mat-table [dataSource]="allEnvironmentData" class="data-grid management mat-elevation-z6">
<ng-container matColumnDef="user">
<th mat-header-cell *matHeaderCellDef class="user"> User </th>
<td mat-cell *matCellDef="let element">{{ element.user }}</td>
diff --git a/services/self-service/src/main/resources/webapp/src/app/administration/management/management-grid/management-grid.component.scss b/services/self-service/src/main/resources/webapp/src/app/administration/management/management-grid/management-grid.component.scss
index c52342f..6e6da98 100644
--- a/services/self-service/src/main/resources/webapp/src/app/administration/management/management-grid/management-grid.component.scss
+++ b/services/self-service/src/main/resources/webapp/src/app/administration/management/management-grid/management-grid.component.scss
@@ -17,25 +17,32 @@
* under the License.
*/
-.dashboard_table {
+.data-grid {
+ &.management {
- .th_user,
- .th_name {
- width: 20%;
- }
+ .user,
+ .name,
+ .project {
+ width: 15%;
- .th_shape,
- .th_status {
- width: 12% !important;
- }
+ .list-menu li {
+ text-transform: inherit;
+ }
+ }
- .th_resources {
- width: 33%;
- }
+ .shape,
+ .status {
+ width: 12% !important;
+ }
+
+ .resources {
+ width: 25%;
+ }
- .dashboard_table_body {
- td:first-child {
- cursor: default;
+ .dashboard_table_body {
+ td:first-child {
+ cursor: default;
+ }
}
}
}
@@ -50,4 +57,5 @@ table {
.actions {
text-align: right;
}
+
}
diff --git a/services/self-service/src/main/resources/webapp/src/app/administration/management/management-grid/management-grid.component.ts b/services/self-service/src/main/resources/webapp/src/app/administration/management/management-grid/management-grid.component.ts
index b0735b6..32e960f 100644
--- a/services/self-service/src/main/resources/webapp/src/app/administration/management/management-grid/management-grid.component.ts
+++ b/services/self-service/src/main/resources/webapp/src/app/administration/management/management-grid/management-grid.component.ts
@@ -88,8 +88,42 @@ export class ManagementGridComponent implements OnInit {
this.buildGrid();
}
- public applyFilter(form) {
+ public applyFilter(config) {
debugger;
+
+ let filteredData = this.allEnvironmentData;
+
+ const containsStatus = (list, selectedItems) => {
+ return list.filter((item: any) => { if (selectedItems.indexOf(item.status) !== -1) return item; });
+ };
+
+ if (filteredData.length) this.filtering = true;
+ if (config) {
+ filteredData = filteredData.filter(item => {
+
+ // const isName = item.name.toLowerCase().indexOf(config.name.toLowerCase()) !== -1;
+ const isName = 1;
+ const isStatus = config.statuses.length > 0 ? (config.statuses.indexOf(item.status) !== -1) : (config.type !== 'active');
+ const isShape = config.shapes.length > 0 ? (config.shapes.indexOf(item.shape) !== -1) : true;
+
+ const modifiedResources = containsStatus(item.resources, config.resources);
+ let isResources = config.resources.length > 0 ? (modifiedResources.length > 0) : true;
+
+ if (config.resources.length > 0 && modifiedResources.length > 0) { item.resources = modifiedResources; }
+
+ if (config.resources.length === 0 && config.type === 'active' ||
+ modifiedResources.length >= 0 && config.resources.length > 0 && config.type === 'active') {
+ item.resources = modifiedResources;
+ isResources = true;
+ }
+
+ return isName && isStatus && isShape && isResources;
+
+ });
+
+ }
+
+ this.allEnvironmentData = filteredData;
}
toggleResourceAction(environment: any, action: string, resource?): void {
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@dlab.apache.org
For additional commands, e-mail: commits-help@dlab.apache.org