diff --git a/src/frontend/app/folder/document-list/folder-document-list.component.html b/src/frontend/app/folder/document-list/folder-document-list.component.html
index b276fce86704911fb2f919cc317243685ea66918..ae6820341a249613d40543f653a0676062b4f88c 100644
--- a/src/frontend/app/folder/document-list/folder-document-list.component.html
+++ b/src/frontend/app/folder/document-list/folder-document-list.component.html
@@ -7,7 +7,7 @@
         <menu-nav></menu-nav>
         <basket-home *ngIf="homeData" #basketHome [homeData]="homeData" [snavL]="snav"></basket-home>
         <mat-divider></mat-divider>
-        <panel-folder #panelFolder [selectedId]="folderInfo.id"></panel-folder>
+        <panel-folder #panelFolder *ngIf="folderInfo.id !== '' && folderInfo.id !== undefined" [selectedId]="folderInfo.id"></panel-folder>
     </mat-sidenav>
     <mat-sidenav-content>
         <mat-card id="viewThumbnail" style="display:none;position: fixed;z-index: 2;margin-left: 1px;"><img style="max-height: 100vh;" src="{{thumbnailUrl}}" /></mat-card>
@@ -55,7 +55,7 @@
                     </div>
                 </div>
                 <div style="height:90%;overflow:auto;position:absolute;width:100%;">
-                    <table #tableBasketListSort="matSort" cdkDropList id="folder-list" [cdkDropListConnectedTo]="panelFolder.getDragIds()" [cdkDropListData]="data" mat-table [dataSource]="data" matSort
+                    <table #tableBasketListSort="matSort" cdkDropList id="folder-list" [cdkDropListConnectedTo]="listTodrag()" [cdkDropListData]="data" mat-table [dataSource]="data" matSort
                         matSortActive="res_id" matSortDisableClear matSortDirection="asc" style="width:100%;">
 
                         <ng-container matColumnDef="res_id">
@@ -70,7 +70,10 @@
                                     </span>
                                     <span *ngIf="!appService.getViewMode()" style="cursor:pointer;" class="main-info-status" (click)="launch(defaultAction,row);">
                                         <mat-icon *ngIf="row.isLocked !== true" title="{{row.statusLabel}}" [ngStyle]="{'color': row.priorityColor}" color="primary"
-                                            class="{{row.statusImage.charAt(0)}}{{row.statusImage.charAt(1)}} {{row.statusImage}} {{row.statusImage.charAt(0)}}{{row.statusImage.charAt(1)}}-2x">
+                                            class="{{row.statusImage.charAt(0)}}{{row.statusImage.charAt(1)}} {{row.statusImage}} {{row.statusImage.charAt(0)}}{{row.statusImage.charAt(1)}}-2x statusIcon">
+                                        </mat-icon>
+                                        <mat-icon *ngIf="row.isLocked !== true" title="{{row.statusLabel}}" [ngStyle]="{'color': row.priorityColor}" color="primary"
+                                            class="fa fa-folder-open fa-2x">
                                         </mat-icon>
                                         <span *ngIf="row.confidentiality === 'Y'" class="watermark">{{lang.confidential}}</span>
                                         <mat-icon *ngIf="row.isLocked === true" title="{{lang.warnLockResInProgress}} : {{row.locker}}" style="color: red;" class="fa fa-lock fa-2x">
diff --git a/src/frontend/app/folder/document-list/folder-document-list.component.scss b/src/frontend/app/folder/document-list/folder-document-list.component.scss
index 0b92c670d61f23dca1f61917e92f0cc46b9ab9de..ad012d5d5f93e70595f870bed6698d7264b05004 100644
--- a/src/frontend/app/folder/document-list/folder-document-list.component.scss
+++ b/src/frontend/app/folder/document-list/folder-document-list.component.scss
@@ -2,9 +2,19 @@
 
 .dragPreview {
     text-align: center;
-    border-radius:5px;
+    border-radius: 5px;
     background: white;
     padding: 10px;
-    box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2),0 8px 10px 1px rgba(0, 0, 0, 0.14),0 3px 14px 2px rgba(0, 0, 0, 0.12);
+    box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2), 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12);
     color: $primary;
-  }
\ No newline at end of file
+}
+
+.statusIcon {
+    font-size: 10px;
+    position: absolute;
+    right: 0px;
+    background: white;
+    padding: 3px;
+    border-radius: 10px;
+    border: solid 1px;
+}
\ No newline at end of file
diff --git a/src/frontend/app/folder/document-list/folder-document-list.component.ts b/src/frontend/app/folder/document-list/folder-document-list.component.ts
index 3fb40df78c35222f7eeda3e97d410ff7e4ac24c6..a696fd6d9695fc6135c600b3c485a371287a0c41 100644
--- a/src/frontend/app/folder/document-list/folder-document-list.component.ts
+++ b/src/frontend/app/folder/document-list/folder-document-list.component.ts
@@ -1,15 +1,15 @@
 import { Component, OnInit, ViewChild, EventEmitter, ViewContainerRef } from '@angular/core';
 import { HttpClient } from '@angular/common/http';
 import { LANG } from '../../translate.component';
-import { merge, Observable, of as observableOf, Subject  } from 'rxjs';
+import { merge, Observable, of as observableOf, Subject, of } from 'rxjs';
 import { NotificationService } from '../../notification.service';
-import { MatDialog } from '@angular/material/dialog';
+import { MatDialog, MatDialogRef } from '@angular/material/dialog';
 import { MatPaginator } from '@angular/material/paginator';
 import { MatSidenav } from '@angular/material/sidenav';
 import { MatSort } from '@angular/material/sort';
 
 import { DomSanitizer, SafeHtml } from '@angular/platform-browser';
-import { startWith, switchMap, map, catchError, takeUntil, tap } from 'rxjs/operators';
+import { startWith, switchMap, map, catchError, takeUntil, tap, exhaustMap, filter } from 'rxjs/operators';
 import { ActivatedRoute, Router } from '@angular/router';
 import { HeaderService } from '../../../service/header.service';
 
@@ -17,6 +17,8 @@ import { Overlay } from '@angular/cdk/overlay';
 import { PanelListComponent } from '../../list/panel/panel-list.component';
 import { AppService } from '../../../service/app.service';
 import { PanelFolderComponent } from '../panel/panel-folder.component';
+import { BasketHomeComponent } from '../../basket/basket-home.component';
+import { ConfirmComponent } from '../../../plugins/modal/confirm.component';
 
 
 declare function $j(selector: any): any;
@@ -35,7 +37,7 @@ export class FolderDocumentListComponent implements OnInit {
     public innerHtml: SafeHtml;
     basketUrl: string;
     homeData: any;
-    
+
     injectDatasParam = {
         resId: 0,
         editable: false
@@ -44,6 +46,8 @@ export class FolderDocumentListComponent implements OnInit {
 
     filtersChange = new EventEmitter();
 
+    dialogRef: MatDialogRef<any>;
+
     @ViewChild('snav', { static: true }) sidenavLeft: MatSidenav;
     @ViewChild('snav2', { static: true }) sidenavRight: MatSidenav;
 
@@ -87,20 +91,21 @@ export class FolderDocumentListComponent implements OnInit {
 
     @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;
     @ViewChild('tableBasketListSort', { static: true }) sort: MatSort;
-    @ViewChild('panelFolder', { static: true }) panelFolder: PanelFolderComponent;
+    @ViewChild('panelFolder', { static: false }) panelFolder: PanelFolderComponent;
+    @ViewChild('basketHome', { static: true }) basketHome: BasketHomeComponent;
 
     constructor(
-        private router: Router, 
-        private route: ActivatedRoute, 
-        public http: HttpClient, 
-        public dialog: MatDialog, 
-        private sanitizer: DomSanitizer, 
-        private headerService: HeaderService, 
-        private notify: NotificationService, 
-        public overlay: Overlay, 
+        private router: Router,
+        private route: ActivatedRoute,
+        public http: HttpClient,
+        public dialog: MatDialog,
+        private sanitizer: DomSanitizer,
+        private headerService: HeaderService,
+        private notify: NotificationService,
+        public overlay: Overlay,
         public viewContainerRef: ViewContainerRef,
         public appService: AppService) {
-            $j("link[href='merged_css.php']").remove();
+        $j("link[href='merged_css.php']").remove();
     }
 
     ngOnInit(): void {
@@ -116,13 +121,17 @@ export class FolderDocumentListComponent implements OnInit {
         this.route.params.subscribe(params => {
             this.destroy$.next(true);
 
-            this.basketUrl = '../../rest/folders/' + params['folderId'] + '/resources';
-            this.folderInfo = 
-            {
-                "id": params['folderId'],
-                "label": 'test'
+            this.http.get('../../rest/folders/' + params['folderId'])
+                .subscribe((data: any) => {
+                    this.folderInfo =
+                        {
+                            'id': params['folderId'],
+                            'label': data.folder.label
+                        };
 
-            };
+                    this.headerService.setHeader('Dossier : ' + this.folderInfo.label);
+                });
+            this.basketUrl = '../../rest/folders/' + params['folderId'] + '/resources';
             this.selectedRes = [];
             this.sidenavRight.close();
             window['MainHeaderComponent'].setSnav(this.sidenavLeft);
@@ -161,7 +170,7 @@ export class FolderDocumentListComponent implements OnInit {
                     this.isLoadingResults = false;
                     data = this.processPostData(data);
                     this.resultsLength = data.countResources;
-                    //this.allResInBasket = data.count;
+                    this.allResInBasket = data.allResources;
                     //this.headerService.setHeader('Dossier : ' + this.folderInfo.label);
                     return data.resources;
                 }),
@@ -192,13 +201,13 @@ export class FolderDocumentListComponent implements OnInit {
     }
 
     togglePanel(mode: string, row: any) {
-        let thisSelect = { checked : true };
-        let thisDeselect = { checked : false };
+        let thisSelect = { checked: true };
+        let thisDeselect = { checked: false };
         row.checked = true;
         this.toggleAllRes(thisDeselect);
         this.toggleRes(thisSelect, row);
 
-        if(this.currentResource.res_id == row.res_id && this.sidenavRight.opened && this.currentMode == mode) {
+        if (this.currentResource.res_id == row.res_id && this.sidenavRight.opened && this.currentMode == mode) {
             this.sidenavRight.close();
         } else {
             this.currentMode = mode;
@@ -210,7 +219,7 @@ export class FolderDocumentListComponent implements OnInit {
 
     refreshBadgeNotes(nb: number) {
         this.currentResource.countNotes = nb;
-    }                                     
+    }
 
     refreshBadgeAttachments(nb: number) {
         this.currentResource.countAttachments = nb;
@@ -221,6 +230,14 @@ export class FolderDocumentListComponent implements OnInit {
         this.filtersChange.emit();
     }
 
+    refreshDaoAfterAction() {
+        this.sidenavRight.close();
+        this.refreshDao();
+        this.basketHome.refreshBasketHome();
+        const e: any = { checked: false };
+        this.toggleAllRes(e);
+    }
+
     viewThumbnail(row: any) {
         this.thumbnailUrl = '../../rest/res/' + row.res_id + '/thumbnail';
         $j('#viewThumbnail').show();
@@ -277,7 +294,11 @@ export class FolderDocumentListComponent implements OnInit {
     }
 
     unclassify() {
-        this.http.request('DELETE', '../../rest/folders/' + this.folderInfo.id + '/resources', { body: { resources: this.selectedRes } }).pipe(
+        this.dialogRef = this.dialog.open(ConfirmComponent, { autoFocus: false, disableClose: true, data: { title: this.lang.delete, msg: 'Voulez-vous enlever <b>' + this.selectedRes.length + '</b> document(s) du classement ?' } });
+
+        this.dialogRef.afterClosed().pipe(
+            filter((data: string) => data === 'ok'),
+            exhaustMap(() => this.http.request('DELETE', '../../rest/folders/' + this.folderInfo.id + '/resources', { body: { resources: this.selectedRes } })),
             tap((data: any) => {
                 this.notify.success(this.lang.removedFromFolder);
                 this.resultsLength = data.countResources;
@@ -286,14 +307,24 @@ export class FolderDocumentListComponent implements OnInit {
                         this.data.splice(key, 1);
                     }
                 });
+                this.refreshDaoAfterAction();
             })
         ).subscribe();
     }
+
+    listTodrag() {
+        if (this.panelFolder !== undefined) {
+            return this.panelFolder.getDragIds();
+        } else {
+            return [];
+        }
+    }
 }
 export interface BasketList {
     folder: any;
     resources: any[];
     countResources: number;
+    allResources: number[];
 }
 
 export class ResultListHttpDao {
diff --git a/src/frontend/app/folder/folder-tree.component.ts b/src/frontend/app/folder/folder-tree.component.ts
index 9e16999216b917f9c1e257c807aebdc8c2cae8d7..a6fe1f1493ef5d859edee74c4d76c6089de1eeea 100644
--- a/src/frontend/app/folder/folder-tree.component.ts
+++ b/src/frontend/app/folder/folder-tree.component.ts
@@ -122,9 +122,11 @@ export class FolderTreeComponent implements OnInit {
             map((data: any) => this.flatToNestedObject(data.folders)),
             filter((data: any) => data.length > 0),
             tap((data) => this.initTree(data)),
-            filter(() => this.seletedId !== undefined),
-            tap(() => this.openTree(this.seletedId)),
-            tap(() => this.selectTree(this.seletedId))
+            //filter(() => this.seletedId !== undefined),
+            tap(() => {
+                this.openTree(this.seletedId);
+                this.selectTree(this.seletedId);
+            })
         ).subscribe();
     }
 
@@ -135,8 +137,8 @@ export class FolderTreeComponent implements OnInit {
         });
     }
 
-    openTree(id: number) {
-        let indexSelectedFolder = this.treeControl.dataNodes.map((folder: any) => folder.id).indexOf(id);
+    openTree(id: any) {
+        let indexSelectedFolder = this.treeControl.dataNodes.map((folder: any) => folder.id).indexOf(parseInt(id));
 
         while (indexSelectedFolder != -1) {
             indexSelectedFolder = this.treeControl.dataNodes.map((folder: any) => folder.id).indexOf(this.treeControl.dataNodes[indexSelectedFolder].parent_id);
@@ -146,8 +148,8 @@ export class FolderTreeComponent implements OnInit {
         }
     }
 
-    selectTree(id: number) {
-        let indexSelectedFolder = this.treeControl.dataNodes.map((folder: any) => folder.id).indexOf(id);
+    selectTree(id: any) {
+        let indexSelectedFolder = this.treeControl.dataNodes.map((folder: any) => folder.id).indexOf(parseInt(id));
         if (indexSelectedFolder != -1) {
             this.treeControl.dataNodes[indexSelectedFolder].selected = true;
         }
diff --git a/src/frontend/app/folder/panel/panel-folder.component.ts b/src/frontend/app/folder/panel/panel-folder.component.ts
index 847100f822bea095062817dfd193ca816ebe74f4..b613cfaa15bd8eef3e616afb689de32ef59d2fcf 100644
--- a/src/frontend/app/folder/panel/panel-folder.component.ts
+++ b/src/frontend/app/folder/panel/panel-folder.component.ts
@@ -27,4 +27,8 @@ export class PanelFolderComponent implements OnInit {
             return [];
         }
     }
+
+    initTree() {
+        this.folderTree.openTree(this.id);
+    }
 }