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

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

commit c3a6176e9993b07122f1e1eb6eab8eba71ca8cfc
Author: Dmytro Gnatyshyn <di1...@ukr.net>
AuthorDate: Tue May 19 12:52:04 2020 +0300

    [DLAB-1784]: Fixed bug with uploading
---
 .../bucket-browser/bucket-browser.component.html   |  2 +-
 .../bucket-browser/bucket-browser.component.scss   |  2 +-
 .../bucket-browser/bucket-browser.component.ts     | 12 +++--
 .../buckets-tree/bucket-tree.component.html        |  2 +-
 .../buckets-tree/bucket-tree.component.ts          |  5 ++
 .../folder-tree/folder-tree.component.ts           | 56 +++++++++++++---------
 .../detail-dialog/detail-dialog.component.html     |  2 +-
 7 files changed, 50 insertions(+), 31 deletions(-)

diff --git 
a/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/bucket-browser.component.html
 
b/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/bucket-browser.component.html
index 9093eba..292620b 100644
--- 
a/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/bucket-browser.component.html
+++ 
b/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/bucket-browser.component.html
@@ -108,7 +108,7 @@
     <div class="bucket-wrapper" [ngClass]="{'added-upload': 
addedFiles.length}" id="scrolling">
       <div class="backet-selection" [ngClass]="{'opened': isSelectionOpened}">
         <div class="button-wrapper">
-          <i (click)="toggleBucketSelection()" class="material-icons 
close">{{isSelectionOpened ? 'chevron_left' : 'chevron_right'}}</i>
+          <i (click)="toggleBucketSelection()" class="material-icons close" 
*ngIf="!isSelectionOpened">chevron_right</i>
         </div>
         <dlab-bucket-tree
           [hidden] = "!isSelectionOpened"
diff --git 
a/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/bucket-browser.component.scss
 
b/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/bucket-browser.component.scss
index fcaea993..aee697d 100644
--- 
a/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/bucket-browser.component.scss
+++ 
b/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/bucket-browser.component.scss
@@ -376,7 +376,7 @@
   }
 
   .folder-tree {
-    padding: 0px 30px;
+    padding: 0px 15px;
     padding-top: 6px;
   }
 
diff --git 
a/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/bucket-browser.component.ts
 
b/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/bucket-browser.component.ts
index 2b12dec..07a1fd8 100644
--- 
a/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/bucket-browser.component.ts
+++ 
b/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/bucket-browser.component.ts
@@ -165,6 +165,9 @@ export class BucketBrowserComponent implements OnInit {
     this.searchValue = '';
     this.clearSelection();
     this.selectedFolder = event.flatNode;
+    if (this.isSelectionOpened){
+      this.isSelectionOpened = false;
+    }
     this.folderItems = event.element ? event.element.children : event.children;
     if (this.folderItems) {
       this.folders = this.folderItems.filter(v => v.children).sort((a, b) => 
a.item > b.item ? 1 : -1);
@@ -191,16 +194,15 @@ export class BucketBrowserComponent implements OnInit {
   }
 
   public deleteAddedFile(file) {
-    if ( file.subscr ) {
+    if ( file.subscr && file.request) {
       this.dialog.open(BucketConfirmationDialogComponent, {data: {items: file, 
type: 'cancel-uploading'} , width: '550px'})
         .afterClosed().subscribe((res) => {
           res && file.subscr.unsubscribe();
-          if (!res) {
-            return;
-          }
+          res && this.addedFiles.splice(this.addedFiles.indexOf(file), 1);
       });
+    } else {
+      this.addedFiles.splice(this.addedFiles.indexOf(file), 1);
     }
-    this.addedFiles.splice(this.addedFiles.indexOf(file), 1);
   }
 
   private uploadNewFile(file) {
diff --git 
a/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/buckets-tree/bucket-tree.component.html
 
b/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/buckets-tree/bucket-tree.component.html
index 8d5e04b..8d294a5 100644
--- 
a/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/buckets-tree/bucket-tree.component.html
+++ 
b/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/buckets-tree/bucket-tree.component.html
@@ -20,6 +20,6 @@
         {{treeControl.isExpanded(node) ? 'expand_more' : 'chevron_right'}}
       </mat-icon>
     </button>
-    {{node.name}}
+    <span (click)="toggleProject(node, 
treeControl.isExpanded(node))">{{node.name}}</span>
   </mat-tree-node>
 </mat-tree>
diff --git 
a/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/buckets-tree/bucket-tree.component.ts
 
b/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/buckets-tree/bucket-tree.component.ts
index 2b3006b..3a21dce 100644
--- 
a/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/buckets-tree/bucket-tree.component.ts
+++ 
b/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/buckets-tree/bucket-tree.component.ts
@@ -53,6 +53,7 @@ export class BucketTreeComponent implements OnInit {
     this.activeBucketName = this.openedBucket || '';
     this.dataSource.data = this.buckets;
     this.setActiveBucket();
+    console.log(this.treeControl);
   }
 
   public openBucketData(bucket) {
@@ -66,6 +67,10 @@ export class BucketTreeComponent implements OnInit {
     this.expandAllParents(this.activeBacket);
   }
 
+  public toggleProject(el, isExpanded){
+    isExpanded ? this.treeControl.collapse(el) : this.treeControl.expand(el);
+  }
+
   private expandAllParents(el) {
     if (el) {
       this.treeControl.expand(el);
diff --git 
a/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/folder-tree/folder-tree.component.ts
 
b/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/folder-tree/folder-tree.component.ts
index f207661..b1d7530 100644
--- 
a/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/folder-tree/folder-tree.component.ts
+++ 
b/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/folder-tree/folder-tree.component.ts
@@ -1,4 +1,4 @@
-import {Component, Output, EventEmitter, OnDestroy, Input} from 
'@angular/core';
+import {Component, Output, EventEmitter, OnDestroy, Input, OnInit} from 
'@angular/core';
 import {FlatTreeControl} from '@angular/cdk/tree';
 import {MatTreeFlatDataSource, MatTreeFlattener} from '@angular/material/tree';
 import {BucketBrowserService, TodoItemFlatNode, TodoItemNode} from 
'../../../core/services/bucket-browser.service';
@@ -17,6 +17,8 @@ export class MyErrorStateMatcher implements ErrorStateMatcher 
{
   }
 }
 
+
+
 @Component({
   selector: 'dlab-folder-tree',
   templateUrl: './folder-tree.component.html',
@@ -47,29 +49,36 @@ export class FolderTreeComponent implements OnDestroy {
     public toastr: ToastrService,
     private bucketBrowserService: BucketBrowserService,
     private bucketDataService: BucketDataService,
-    ) {
+  ) {
     this.treeFlattener = new MatTreeFlattener(this.transformer, this.getLevel, 
this.isExpandable, this.getChildren);
     this.treeControl = new FlatTreeControl<TodoItemFlatNode>(this.getLevel, 
this.isExpandable);
     this.dataSource = new MatTreeFlatDataSource(this.treeControl, 
this.treeFlattener);
-
-    this.subscriptions.add(bucketDataService._bucketData.subscribe(data => {
-     if (data) {
-       this.dataSource.data = data;
+    this.subscriptions.add(this.bucketDataService._bucketData.subscribe(data 
=> {
+      // const emptyFolder = 
this.dataSource._flattenedData.getValue().filter(v => v.item === '')[0];
+      // console.log(emptyFolder);
+      if (data) {
+        this.dataSource.data = data;
         const subject = this.dataSource._flattenedData;
-       this.folderTreeSubs = subject.subscribe((subjectData) => {
+        const subjectData = subject.getValue();
           if (this.selectedFolder) {
             this.selectedFolder = subjectData.filter(v => v.item === 
this.selectedFolder.item && v.level === this.selectedFolder.level)[0];
           }
           this.expandAllParents(this.selectedFolder || subjectData[0]);
           this.showItem(this.selectedFolder || subjectData[0]);
-          if (this.folderCreationParent && subject.getValue().filter(v => 
v.item === '').length === 0) {
-            this.folderCreationRefresh(this.folderCreationParent, '', false);
-          } else {
-            this.disableAll.emit(false);
-          }
-        });
+          // if (emptyFolder || this.folderFormControl.value) {
+          //   const folderName = this.folderFormControl.value;
+          //   this.folderFormControl.setValue('');
+          //   this.folderFormControl.updateValueAndValidity();
+          //   this.folderFormControl.markAsPristine();
+          //   console.log(this.folderCreationParent);
+          //   this.addNewItem(this.folderCreationParent, folderName, false);
+          // } else {
+          //   console.log('false');
+          //   this.disableAll.emit(false);
+          // }
       }
     }));
+    this.dataSource._flattenedData.subscribe();
   }
 
   getLevel = (node: TodoItemFlatNode) => node.level;
@@ -93,7 +102,7 @@ export class FolderTreeComponent implements OnDestroy {
     this.flatNodeMap.set(flatNode, node);
     this.nestedNodeMap.set(node, flatNode);
     return flatNode;
-  }
+  };
 
   ngOnDestroy() {
     this.bucketDataService._bucketData.next([]);
@@ -171,12 +180,13 @@ export class FolderTreeComponent implements OnDestroy {
     return null;
   }
 
-  private addNewItem(node: TodoItemFlatNode, file, isFile, path) {
+  private addNewItem(node: TodoItemFlatNode, file, isFile) {
     this.folderCreationParent = node;
     this.folderCreationRefresh(node, file, isFile);
   }
 
   public folderCreationRefresh(node: TodoItemFlatNode, file, isFile) {
+    this.folderFormControl.setValue(file);
     const currNode = this.flatNodeMap.get(node);
     this.bucketDataService.insertItem(currNode!, file, isFile);
     this.treeControl.expand(node);
@@ -205,13 +215,15 @@ export class FolderTreeComponent implements OnDestroy {
     formData.append('endpoint', this.endpoint);
     this.bucketBrowserService.uploadFile(formData)
       .subscribe((event) => {
-      if (event instanceof HttpResponse) {
-          this.bucketDataService.refreshBucketdata(bucket, this.endpoint);
-          this.toastr.success('Folder successfully created!', 'Success!');
-          this.resetForm();
-          this.folderCreating = false;
-          this.folderCreationParent = null;
-        }
+          if (event instanceof HttpResponse) {
+            this.bucketDataService.refreshBucketdata(bucket, this.endpoint);
+            this.toastr.success('Folder successfully created!', 'Success!');
+            this.resetForm();
+            this.folderCreating = false;
+            this.folderCreationParent = null;
+            // 
this.dataSource._flattenedData.getValue().slice()this.dataSource._flattenedData.getValue().filter(v
 => v.item === '')[0]
+            
this.dataSource._flattenedData.getValue().splice(this.dataSource._flattenedData.getValue().indexOf(this.dataSource._flattenedData.getValue().filter(v
 => v.item === '')[0]));
+          }
         }, error => {
           this.toastr.error(error.message || 'Folder creation error!', 
'Oops!');
           this.folderCreating = false;
diff --git 
a/services/self-service/src/main/resources/webapp/src/app/resources/exploratory/detail-dialog/detail-dialog.component.html
 
b/services/self-service/src/main/resources/webapp/src/app/resources/exploratory/detail-dialog/detail-dialog.component.html
index 0b5a821..9f146c0 100644
--- 
a/services/self-service/src/main/resources/webapp/src/app/resources/exploratory/detail-dialog/detail-dialog.component.html
+++ 
b/services/self-service/src/main/resources/webapp/src/app/resources/exploratory/detail-dialog/detail-dialog.component.html
@@ -77,7 +77,7 @@
                     class="bucket-info bucket-link"
                     [ngClass]="{'not-allow': !this.bucketStatus.view || 
!this.isBucketAllowed}"
                     (mouseover)="showCopyIcon('project')"
-                    (click)="bucketBrowser('ofuks-1304-pr2-local-bucket', 
notebook.endpoint, this.bucketStatus.view && this.isBucketAllowed)"
+                    (click)="bucketBrowser(notebook.account_name, 
notebook.endpoint, this.bucketStatus.view && this.isBucketAllowed)"
                   >
                     {{ notebook.account_name}}
                   </span>


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

Reply via email to