You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dlab.apache.org by dg...@apache.org on 2019/12/30 15:32:18 UTC

[incubator-dlab] branch DLAB-1420 created (now 8f7974c)

This is an automated email from the ASF dual-hosted git repository.

dgnatyshyn pushed a change to branch DLAB-1420
in repository https://gitbox.apache.org/repos/asf/incubator-dlab.git.


      at 8f7974c  [DLAB-1420]: Fixed bugs in  action menu for project management

This branch includes the following new commits:

     new 8f7974c  [DLAB-1420]: Fixed bugs in  action menu for project management

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@dlab.apache.org
For additional commands, e-mail: commits-help@dlab.apache.org


[incubator-dlab] 01/01: [DLAB-1420]: Fixed bugs in action menu for project management

Posted by dg...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

dgnatyshyn pushed a commit to branch DLAB-1420
in repository https://gitbox.apache.org/repos/asf/incubator-dlab.git

commit 8f7974ce5994c80d00c335192b3979bc6de1059a
Author: Dmytro Gnatyshyn <di...@ukr.net>
AuthorDate: Mon Dec 30 17:31:31 2019 +0200

    [DLAB-1420]: Fixed bugs in  action menu for project management
---
 .../project-list/project-list.component.html       | 27 +++++++++++-----------
 .../project/project-list/project-list.component.ts |  7 +++++-
 .../administration/project/project.component.ts    |  2 +-
 .../src/app/core/services/endpoint.service.ts      |  1 -
 .../edge-action-dialog.component.ts                | 10 ++++----
 .../notification-dialog.component.ts               | 11 +++++----
 6 files changed, 32 insertions(+), 26 deletions(-)

diff --git a/services/self-service/src/main/resources/webapp/src/app/administration/project/project-list/project-list.component.html b/services/self-service/src/main/resources/webapp/src/app/administration/project/project-list/project-list.component.html
index 06246d4..b8c1c39 100644
--- a/services/self-service/src/main/resources/webapp/src/app/administration/project/project-list/project-list.component.html
+++ b/services/self-service/src/main/resources/webapp/src/app/administration/project/project-list/project-list.component.html
@@ -69,35 +69,34 @@
       <bubble-up #actions class="list-menu" position="bottom-left" alternative="top-left">
         <ul class="list-unstyled">
           <div class="active-items"></div>
-          <li class="project-seting-item" *ngIf="areStoppedEndpoints(element)">
+          <li class="project-seting-item" *ngIf="areStoppedEndpoints(element)" (click)="openEdgeDialog('start', element)">
             <i class="material-icons">play_circle_outline</i>
-            <a class="action" (click)="openEdgeDialog('start', element)">
+            <a class="action">
               Start edge node
             </a>
           </li>
-          <li class="project-seting-item" *ngIf="areStartedEndpoints(element)">
+          <li class="project-seting-item" *ngIf="areStartedEndpoints(element)" (click)="openEdgeDialog('stop', element )">
             <i class="material-icons">pause_circle_outline</i>
-            <a class="action" (click)="openEdgeDialog('stop', element )">
+            <a class="action" >
               Stop edge node
             </a>
           </li>
-          <li class="project-seting-item " *ngIf="areStoppedEndpoints(element) || areStartedEndpoints(element)">
-            <i class="material-icons">highlight_off</i>
-            <a class="action" (click)="openEdgeDialog('terminate', element)">
+          <li class="project-seting-item " *ngIf="areStoppedEndpoints(element) || areStartedEndpoints(element)" (click)="openEdgeDialog('terminate', element)">
+            <i class="material-icons">phonelink_off</i>
+            <a class="action">
               Terminate edge node
             </a>
           </li>
-          <li class="project-seting-item">
+          <li class="project-seting-item" (click)="editProject(element)">
             <i class="material-icons">mode_edit</i>
-            <a (click)="editProject(element)">
-              Edit {{element.name }}
+            <a >
+              Edit project
             </a>
           </li>
-          <li class="project-seting-item" *ngIf="!isInProgress(element) && isActiveEndpoint(element)">
+          <li class="project-seting-item" *ngIf="!isInProgress(element) && isActiveEndpoint(element)" (click)="deleteProject(element)">
             <i class="material-icons">delete_forever</i>
-            <a (click)="deleteProject(element)" class="action"
-               [ngClass]="{'not-allowed' : isInProgress(element) || !isActiveEndpoint(element) }">
-              Delete {{element.name }}
+            <a  class="action" [ngClass]="{'not-allowed' : isInProgress(element) || !isActiveEndpoint(element) }">
+              Delete project
             </a>
           </li>
         </ul>
diff --git a/services/self-service/src/main/resources/webapp/src/app/administration/project/project-list/project-list.component.ts b/services/self-service/src/main/resources/webapp/src/app/administration/project/project-list/project-list.component.ts
index 5256d77..146e99e 100644
--- a/services/self-service/src/main/resources/webapp/src/app/administration/project/project-list/project-list.component.ts
+++ b/services/self-service/src/main/resources/webapp/src/app/administration/project/project-list/project-list.component.ts
@@ -73,7 +73,12 @@ export class ProjectListComponent implements OnInit, OnDestroy {
       this.endpointService.getEndpointsData().subscribe((endpoints: any) => {
         if(this.projectList){
           this.projectList.forEach(project => project.endpoints.forEach(endpoint => {
-            endpoint.endpointStatus = endpoints.filter(v => v.name === endpoint.name)[0].status;
+            const filtredEndpoints =  endpoints.filter(v => v.name === endpoint.name);
+            if(filtredEndpoints.length){
+              endpoint.endpointStatus = endpoints.filter(v => v.name === endpoint.name)[0].status;
+            }else{
+              endpoint.endpointStatus = "N/A"
+            }
           }))
         }
        });
diff --git a/services/self-service/src/main/resources/webapp/src/app/administration/project/project.component.ts b/services/self-service/src/main/resources/webapp/src/app/administration/project/project.component.ts
index 382cd17..72b6430 100644
--- a/services/self-service/src/main/resources/webapp/src/app/administration/project/project.component.ts
+++ b/services/self-service/src/main/resources/webapp/src/app/administration/project/project.component.ts
@@ -105,7 +105,7 @@ export class ProjectComponent implements OnInit, OnDestroy {
   }
 
   public deleteProject($event) {
-    this.dialog.open(NotificationDialogComponent, { data: { type: 'confirmation', item: $event }, panelClass: 'modal-sm' })
+    this.dialog.open(NotificationDialogComponent, { data: { type: 'confirmation', item: $event , action: 'decommissioned', }, panelClass: 'modal-sm' })
       .afterClosed().subscribe(result => {
         result && this.projectService.deleteProject($event.name).subscribe(() => {
           this.refreshGrid();
diff --git a/services/self-service/src/main/resources/webapp/src/app/core/services/endpoint.service.ts b/services/self-service/src/main/resources/webapp/src/app/core/services/endpoint.service.ts
index 2abe823..67efbe2 100644
--- a/services/self-service/src/main/resources/webapp/src/app/core/services/endpoint.service.ts
+++ b/services/self-service/src/main/resources/webapp/src/app/core/services/endpoint.service.ts
@@ -36,7 +36,6 @@ export class EndpointService {
       .buildGetEndpointsData()
       .pipe(
         map(response => {
-          console.log(response);
           return response
         }),
         catchError(ErrorUtils.handleServiceError));
diff --git a/services/self-service/src/main/resources/webapp/src/app/shared/modal-dialog/edge-action-dialog/edge-action-dialog.component.ts b/services/self-service/src/main/resources/webapp/src/app/shared/modal-dialog/edge-action-dialog/edge-action-dialog.component.ts
index 0152c3d..f223c74 100644
--- a/services/self-service/src/main/resources/webapp/src/app/shared/modal-dialog/edge-action-dialog/edge-action-dialog.component.ts
+++ b/services/self-service/src/main/resources/webapp/src/app/shared/modal-dialog/edge-action-dialog/edge-action-dialog.component.ts
@@ -10,7 +10,7 @@ import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';
       <h4 class="modal-title"><span class="action">{{data.type | titlecase}}</span> endpoints</h4>
       <button type="button" class="close" (click)="dialogRef.close()">&times;</button>
     </header>
-      <div mat-dialog-content class="content message">
+      <div mat-dialog-content class="content message mat-dialog-content">
           <h3 class="strong">Select the items you want to {{data.type}}</h3>
           <ul class="endpoint-list scrolling-content">
               <li *ngFor="let endpoint of data.item" class="endpoint-list-item">
@@ -20,12 +20,13 @@ import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';
                   </label>
               </li>
           </ul>
-      </div>
+
       <p class="m-top-20 action-text"><span class="strong">Do you want to proceed?</span></p>
 
       <div class="text-center m-top-30 m-bott-10">
         <button type="button" class="butt" mat-raised-button (click)="dialogRef.close()">No</button>
-        <button type="button" class="butt butt-success" mat-raised-button (click)="dialogRef.close(endpointsNewStatus)">Yes</button>
+        <button type="button" class="butt butt-success" mat-raised-button (click)="dialogRef.close(endpointsNewStatus)" [disabled]="!endpointsNewStatus.length">Yes</button>
+      </div>
       </div>
   </div>
   `,
@@ -57,7 +58,7 @@ import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';
 })
 
 export class EdgeActionDialogComponent {
-  public endpointsNewStatus: Array<object>;
+  public endpointsNewStatus: Array<object> = [];
   constructor(
     public dialogRef: MatDialogRef<EdgeActionDialogComponent>,
     @Inject(MAT_DIALOG_DATA) public data: any) {
@@ -68,5 +69,6 @@ export class EdgeActionDialogComponent {
 
   public endpointAction() {
     this.endpointsNewStatus = this.data.item.filter(endpoint => endpoint.checked);
+    console.log(this.endpointsNewStatus)
   }
 }
diff --git a/services/self-service/src/main/resources/webapp/src/app/shared/modal-dialog/notification-dialog/notification-dialog.component.ts b/services/self-service/src/main/resources/webapp/src/app/shared/modal-dialog/notification-dialog/notification-dialog.component.ts
index 37aad61..0961008 100644
--- a/services/self-service/src/main/resources/webapp/src/app/shared/modal-dialog/notification-dialog/notification-dialog.component.ts
+++ b/services/self-service/src/main/resources/webapp/src/app/shared/modal-dialog/notification-dialog/notification-dialog.component.ts
@@ -56,6 +56,7 @@ import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';
                   <ng-template #label>
                       <p>
             <span *ngIf="!!data.list">Endpoint</span>
+            <span *ngIf="data.action && data.action === 'decommissioned'">Project</span>
             <span class="ellipsis strong" matTooltip="{{ data.item.name }}" matTooltipPosition="above"
                   [matTooltipDisabled]="data.item.name.length > 35">
              {{ data.item.name }}</span> will be {{ data.action || 'disconnected' }}.
@@ -123,14 +124,14 @@ import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';
     header h4 i { vertical-align: bottom; }
     header a i { font-size: 20px; }
     header a:hover i { color: #35afd5; cursor: pointer; }
-    .plur { font-style: normal; }    
+    .plur { font-style: normal; }
     .scrolling-content{overflow-y: auto; max-height: 200px; }
     .endpoint { width: 70%; text-align: left; color: #577289;}
     .status { width: 30%;text-align: left;}
     .label { font-size: 15px; font-weight: 500; font-family: "Open Sans",sans-serif;}
-    .node { font-weight: 300;}     
+    .node { font-weight: 300;}
     .resource-name { width: 280px;text-align: left; padding: 10px 0;line-height: 26px;}
-    .project { width: 30%;text-align: left; padding: 10px 0;line-height: 26px;}    
+    .project { width: 30%;text-align: left; padding: 10px 0;line-height: 26px;}
     .resource-list{max-width: 100%; margin: 0 auto;margin-top: 20px; }
     .resource-list-header{display: flex; font-weight: 600; font-size: 16px;height: 48px; border-top: 1px solid #edf1f5; border-bottom: 1px solid #edf1f5; padding: 0 20px;}
     .resource-list-row{display: flex; border-bottom: 1px solid #edf1f5;padding: 0 20px;}
@@ -138,8 +139,8 @@ import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';
     .confirm-message{color: #35afd5;font-size: 13px;min-height: 18px; text-align: center;}
     .checkbox{margin-right: 5px;vertical-align: middle; margin-bottom: 3px;}
     label{cursor: pointer}
-    
-    
+
+
   `]
 })
 export class NotificationDialogComponent{


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@dlab.apache.org
For additional commands, e-mail: commits-help@dlab.apache.org