From 7e4bdaf308f9cfe2dc25a17be9db0f7850a5e889 Mon Sep 17 00:00:00 2001 From: Alex Orluc <alex.orluc@maarch.org> Date: Wed, 6 Jun 2018 19:34:38 +0200 Subject: [PATCH] FEAT #7731 add docservers admin components --- .../docserver-administration.component.html | 77 +++++++ .../docservers-administration.component.html | 193 ++++++++---------- apps/maarch_entreprise/css/engine.css | 10 + .../administration-routing.module.ts | 2 + .../administration/administration.module.ts | 2 + .../docserver-administration.component.ts | 68 ++++++ .../docservers-administration.component.ts | 131 ++++++------ .../entities-administration.component.ts | 4 + .../js/angular/lang/lang-en.ts | 12 ++ .../js/angular/lang/lang-fr.ts | 12 ++ apps/maarch_entreprise/xml/services.xml | 4 +- sql/data_fr.sql | 72 +++---- 12 files changed, 380 insertions(+), 207 deletions(-) create mode 100644 apps/maarch_entreprise/Views/docserver-administration.component.html create mode 100644 apps/maarch_entreprise/js/angular/app/administration/docserver-administration.component.ts diff --git a/apps/maarch_entreprise/Views/docserver-administration.component.html b/apps/maarch_entreprise/Views/docserver-administration.component.html new file mode 100644 index 00000000000..1d1ebd47082 --- /dev/null +++ b/apps/maarch_entreprise/Views/docserver-administration.component.html @@ -0,0 +1,77 @@ +<div class="admin-container" [class.admin-is-mobile]="mobileQuery.matches"> + <mat-toolbar color="primary" class="admin-toolbar"> + <button mat-button (click)="snav.toggle()"> + <mat-icon class="maarchLogo" [svgIcon]="mobileQuery.matches ? 'maarchLogoOnly' : 'maarchLogo'"></mat-icon> + </button> + <h1 class="admin-toolbar-title">{{lang.docserverCreation}} + <small [class.hide-for-mobile]="mobileQuery.matches">{{docserver.docserver_id}}</small> + </h1> + <span style="flex: 1 1 auto;"></span> + <menu-top></menu-top> + </mat-toolbar> + <mat-sidenav-container class="admin-sidenav-container" [style.marginTop.px]="mobileQuery.matches ? 56 : 0"> + <mat-sidenav #snav [mode]="mobileQuery.matches ? 'over' : 'side'" [fixedInViewport]="mobileQuery.matches" fixedTopGap="56" + [opened]="mobileQuery.matches ? false : true" style="width:300px;"> + <menu-nav></menu-nav> + <mat-divider></mat-divider> + </mat-sidenav> + <mat-sidenav-content> + <div *ngIf="loading" style="display:flex;height:100%;"> + <mat-spinner style="margin:auto;"></mat-spinner> + </div> + <mat-card *ngIf="!loading" class="card-app-content"> + <form class="form-horizontal" (ngSubmit)="onSubmit(docserver)" #docserverForm="ngForm"> + <div class="row" style="margin-top: 10px;"> + <div class="col-md-12"> + <mat-form-field> + <mat-select required name="docserver_type" id="docserver_type" title="{{lang.docserverType}}" placeholder="{{lang.docserverType}}" + [(ngModel)]="docserver.docserver_type_id" required> + <mat-option *ngFor="let docserverType of this.docserversTypes" [value]="docserverType.docserver_type_id"> + {{docserverType.docserver_type_label}} + </mat-option> + </mat-select> + </mat-form-field> + <mat-form-field> + <input matInput required name="identifier" id="identifier" title="{{lang.id}}" type="text" placeholder="{{lang.id}}" [(ngModel)]="docserver.docserver_id" + maxlength="32" pattern="^[\w.-]*$" required> + </mat-form-field> + <mat-form-field> + <input matInput required name="label" id="label" title="{{lang.label}}" type="text" placeholder="{{lang.label}}" maxlength="255" + [(ngModel)]="docserver.device_label" maxlength="255" required> + </mat-form-field> + <mat-form-field> + <mat-select required name="collection" id="collection" title="{{lang.collection}}" placeholder="{{lang.collection}}" [(ngModel)]="docserver.coll_id" + required> + <mat-option value="letterbox_coll" selected> + letterbox_coll + </mat-option> + <mat-option value="attachments_coll"> + attachments_coll + </mat-option> + <mat-option value="attachments_version_coll"> + attachments_version_coll + </mat-option> + <mat-option value="archive_transfer_coll"> + archive_transfer_coll + </mat-option> + </mat-select> + </mat-form-field> + <mat-form-field> + <input matInput required name="max_size" id="max_size" title="{{lang.maxSize}}" type="number" placeholder="{{lang.maxSize}}" + [(ngModel)]="docserver.limitSizeFormatted" [disabled]="docserver.is_readonly" pattern="^\d+$"> + <span matSuffix> Go</span> + </mat-form-field> + <mat-form-field> + <input matInput required name="path" id="path" title="path" type="text" placeholder="Chemin" [(ngModel)]="docserver.path_template" + [disabled]="docserver.is_readonly"> + </mat-form-field> + </div> + <div class="col-md-12 text-center" style="padding:10px;"> + <button mat-raised-button color="primary" type="submit" [disabled]="!docserverForm.form.valid">{{lang.add}}</button> + </div> + </div> + </form> + </mat-card> + </mat-sidenav-content> + </mat-sidenav-container> +</div> \ No newline at end of file diff --git a/apps/maarch_entreprise/Views/docservers-administration.component.html b/apps/maarch_entreprise/Views/docservers-administration.component.html index db9da702701..2a23fb948af 100644 --- a/apps/maarch_entreprise/Views/docservers-administration.component.html +++ b/apps/maarch_entreprise/Views/docservers-administration.component.html @@ -13,119 +13,100 @@ [opened]="mobileQuery.matches ? false : true" style="width:300px;"> <menu-nav></menu-nav> <mat-divider></mat-divider> + <mat-nav-list> + <h3 mat-subheader>{{lang.actions}}</h3> + <a mat-list-item routerLink="/administration/docservers/new"> + <mat-icon color="primary" mat-list-icon class="fa fa-plus"></mat-icon> + <p mat-line> + {{lang.add}} + </p> + </a> + </mat-nav-list> + <mat-divider></mat-divider> </mat-sidenav> <mat-sidenav-content> <div *ngIf="loading" style="display:flex;height:100%;"> <mat-spinner style="margin:auto;"></mat-spinner> </div> <mat-card *ngIf="!loading" class="card-app-content"> - <h3>Zone documentaire <small>DOC</small></h3> - <hr/> - <div class="row"> - <div class="col-md-4" *ngFor="let docserver of this.docserversFasthd"> - <mat-card> - <div color="warn" style="position: absolute;top: 10px;left: 10px;font-weight: bold;"> - {{docserver.priority_number}} - </div> - <button *ngIf="docserver.is_readonly == 'N'" mat-icon-button color="accent" style="position: absolute;top: 5px;right:10px;" title="Verrouiller la zone de stockage (lecture seule)"> - <mat-icon class="fa fa-lock-open"></mat-icon> - </button> - <button *ngIf="docserver.is_readonly == 'Y'" mat-icon-button color="warn" style="position: absolute;top: 5px;right:10px;" title="Déverouiller la zone de stockage (lecture seule)"> - <mat-icon class="fa fa-lock"></mat-icon> - </button> - <div class="row" style="margin-top: 10px;"> - <div class="col-md-12"> - <mat-form-field> - <input matInput required name="label" id="label" title="{{lang.label}}" type="text" placeholder="{{lang.label}}" maxlength="255" - [(ngModel)]="docserver.device_label" [disabled]="docserver.is_readonly == 'Y'"> - </mat-form-field> - </div> - <div class="col-md-4"> - <mat-progress-spinner *ngIf="docserver.percent_number < 70" name="percent_val" id="percent_val" color="primary" mode="determinate" [value]="docserver.percent_number" style="margin:auto;"> - </mat-progress-spinner> - <mat-progress-spinner *ngIf="docserver.percent_number >= 70" name="percent_val" id="percent_val" color="warn" mode="determinate" [value]="docserver.percent_number" style="margin:auto;"> - </mat-progress-spinner> - <span style="position: absolute;top: 40px;left:60px;font-weight: bold;" title="{{docserver.actual_size_number}} Go">{{docserver.percent_number}}%</span> - </div> - <div class="col-md-8"> - <mat-form-field> - <input matInput required name="Collection" id="Collection" title="Collection" type="text" placeholder="Collection" - [(ngModel)]="docserver.coll_id" maxlength="255" disabled> - </mat-form-field> - <mat-form-field> - <input matInput required name="identifier" id="identifier" title="Identifiant" type="text" placeholder="Identifiant" - [(ngModel)]="docserver.docserver_id" maxlength="255" disabled> - </mat-form-field> - <mat-form-field> - <mat-select id="status" name="status" title="Docserver secondaire" placeholder="Docserver secondaire" - required> - <mat-option value="none"> - Aucun - </mat-option> - <mat-option value="fasthd_man_2"> - FASTHD_MAN_2 - </mat-option> - </mat-select> - </mat-form-field> - <mat-form-field> - <input matInput required name="max_size" id="max_size" title="Taille maximale" type="number" placeholder="Taille maximale" - [(ngModel)]="docserver.size_limit_number" [disabled]="docserver.is_readonly == 'Y'"> - <span matSuffix> Go</span> - </mat-form-field> - </div> - <div class="col-md-12"> - <mat-form-field> - <input matInput required name="path" id="path" title="path" type="text" placeholder="Chemin" maxlength="255" [(ngModel)]="docserver.path_template" [disabled]="docserver.is_readonly == 'Y'"> - </mat-form-field> - </div> + <mat-accordion> + <mat-expansion-panel *ngFor="let docserverType of this.docserversTypes"> + <mat-expansion-panel-header> + <mat-panel-title> + {{docserverType.docserver_type_label}} + </mat-panel-title> + <mat-panel-description> + {{docserverType.docserver_type_id}} + </mat-panel-description> + </mat-expansion-panel-header> + <div class="row"> + <div class="col-md-4" *ngFor="let docserver of this.docservers[docserverType.docserver_type_id];let i=index"> + <mat-card> + <form class="form-horizontal" (ngSubmit)="onSubmit(docserver)" #docserverFormUp="ngForm"> + <button *ngIf="!docserver.is_readonly" mat-icon-button color="accent" (click)="toggleDocserver(docserver)" style="position: absolute;top: 5px;right:10px;" + matTooltip="{{lang.lockDocserver}}"> + <mat-icon class="fa fa-lock-open"></mat-icon> + </button> + <button *ngIf="docserver.is_readonly" mat-icon-button color="warn" (click)="toggleDocserver(docserver)" style="position: absolute;top: 5px;right:10px;" + matTooltip="{{lang.unlockDocserver}}"> + <mat-icon class="fa fa-lock"></mat-icon> + </button> + <div class="row" style="margin-top: 10px;"> + <div class="col-md-12"> + <mat-form-field> + <input matInput required name="label" id="label" title="{{lang.label}}" type="text" placeholder="{{lang.label}}" maxlength="255" + [(ngModel)]="docserver.device_label" [disabled]="docserver.is_readonly"> + </mat-form-field> + </div> + <div class="col-md-4"> + <mat-progress-spinner *ngIf="docserver.percentage < 60" name="percent_val" id="percent_val" color="primary" mode="determinate" + [value]="docserver.percentage" style="margin:auto;"> + </mat-progress-spinner> + <mat-progress-spinner *ngIf="docserver.percentage >= 60" name="percent_val" id="percent_val" color="warn" mode="determinate" + [value]="docserver.percentage" style="margin:auto;"> + </mat-progress-spinner> + <span style="position: absolute;font-weight: bold;left: 50%;transform: translateX(-50%);top: 40%;font-weight: bold;" title="{{docserver.actualSizeFormatted}}">{{docserver.percentage}}%</span> + </div> + <div class="col-md-8"> + <mat-form-field> + <input matInput required name="collection" id="collection" title="{{lang.collection}}" type="text" placeholder="{{lang.collection}}" [(ngModel)]="docserver.coll_id" disabled> + </mat-form-field> + <mat-form-field> + <input matInput required name="identifier" id="identifier" title="{{lang.id}}" type="text" placeholder="{{lang.id}}" [(ngModel)]="docserver.docserver_id" + disabled> + </mat-form-field> + </div> + <div class="col-md-4"> + <mat-form-field> + <input matInput required name="max_size" id="max_size" title="{{lang.maxSize}}" type="number" placeholder="{{lang.maxSize}}" + [(ngModel)]="docserver.limitSizeFormatted" [disabled]="docserver.is_readonly"> + <span matSuffix> Go</span> + </mat-form-field> + </div> + <div class="col-md-8"> + <mat-form-field> + <input matInput required name="priority" id="priority" title="{{lang.priority}}" type="number" placeholder="{{lang.priority}}" + [(ngModel)]="docserver.priority_number" [disabled]="docserver.is_readonly"> + </mat-form-field> + </div> + <div class="col-md-12"> + <mat-form-field> + <input matInput required name="path" id="path" title="path" type="text" placeholder="Chemin" [(ngModel)]="docserver.path_template" + [disabled]="docserver.is_readonly"> + </mat-form-field> + </div> + <div class="col-md-12 text-center" style="padding:10px;"> + <button mat-raised-button color="primary" type="submit" [disabled]="checkModif(docserver,this.docserversClone[docserverType.docserver_type_id][i])">{{lang.update}}</button> + <button mat-raised-button color="default" [disabled]="checkModif(docserver,this.docserversClone[docserverType.docserver_type_id][i])" (click)="cancelModification(docserverType.docserver_type_id,i)">{{lang.cancel}}</button> + <button mat-raised-button type="button" color="warn" (click)="delete(docserver,i)">{{lang.delete}}</button> + </div> + </div> + </form> + </mat-card> </div> - - </mat-card> - </div> - </div> - <h3>Zone Imagette</h3> - <hr/> - <div class="row"> - - </div> - <!--<div class="row"> - <div class="col-md-6 col-xs-6"> - <mat-form-field> - <input matInput (keyup)="applyFilter($event.target.value)" placeholder="{{lang.filterBy}}"> - </mat-form-field> - </div> - <div class="col-md-6 col-xs-6"> - <mat-paginator #paginator [length]="100" [pageSize]="10"> - </mat-paginator> - </div> - </div> - <mat-table #table [dataSource]="dataSource" matSort matSortActive="docserver_id" matSortDirection="asc"> - <ng-container matColumnDef="docserver_id"> - <mat-header-cell *matHeaderCellDef mat-sort-header>{{lang.id}}</mat-header-cell> - <mat-cell *matCellDef="let element"> - {{element.docserver_id}} </mat-cell> - </ng-container> - <ng-container matColumnDef="device_label"> - <mat-header-cell *matHeaderCellDef mat-sort-header [class.hide-for-mobile]="mobileQuery.matches">{{lang.description}}</mat-header-cell> - <mat-cell *matCellDef="let element" [class.hide-for-mobile]="mobileQuery.matches"> - {{element.device_label}} </mat-cell> - </ng-container> - <ng-container matColumnDef="docserver_type_id"> - <mat-header-cell *matHeaderCellDef mat-sort-header>{{lang.value}}</mat-header-cell> - <mat-cell *matCellDef="let element"> - {{element.docserver_type_id}} </mat-cell> - </ng-container> - <ng-container matColumnDef="actions"> - <mat-header-cell *matHeaderCellDef></mat-header-cell> - <mat-cell *matCellDef="let element" style="justify-content: flex-end;"> - <button mat-icon-button color="warn" matTooltip="{{lang.delete}}" (click)="$event.stopPropagation();"> - <mat-icon class="fa fa-trash-alt fa-2x" aria-hidden="true"></mat-icon> - </button> - </mat-cell> - </ng-container> - <mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row> - <mat-row *matRowDef="let row; columns: displayedColumns;" routerLink="/administration/docservers/{{row.docserver_id}}" style="cursor:pointer;" matTooltip="{{lang.view}}"></mat-row> - </mat-table>--> + </div> + </mat-expansion-panel> + </mat-accordion> </mat-card> </mat-sidenav-content> </mat-sidenav-container> diff --git a/apps/maarch_entreprise/css/engine.css b/apps/maarch_entreprise/css/engine.css index 60df0821cd0..a1aa1287a8a 100755 --- a/apps/maarch_entreprise/css/engine.css +++ b/apps/maarch_entreprise/css/engine.css @@ -331,4 +331,14 @@ h1.admin-app-name { .mat-raised-button { margin : 5px !important; +} + +.mat-expansion-panel-header-title, +.mat-expansion-panel-header-description { + flex-basis: 0; +} + +.mat-expansion-panel-header-description { + justify-content: space-between; + align-items: center; } \ No newline at end of file diff --git a/apps/maarch_entreprise/js/angular/app/administration/administration-routing.module.ts b/apps/maarch_entreprise/js/angular/app/administration/administration-routing.module.ts index 108ce9b88c1..aa7dc806fd1 100755 --- a/apps/maarch_entreprise/js/angular/app/administration/administration-routing.module.ts +++ b/apps/maarch_entreprise/js/angular/app/administration/administration-routing.module.ts @@ -30,6 +30,7 @@ import { ContactsGroupsAdministrationComponent } from './contacts-groups- import { ContactsGroupAdministrationComponent } from './contacts-group-administration.component'; import { VersionsUpdateAdministrationComponent } from './versions-update-administration.component'; import { DocserversAdministrationComponent } from './docservers-administration.component'; +import { DocserverAdministrationComponent } from './docserver-administration.component'; @NgModule({ imports: [ @@ -73,6 +74,7 @@ import { DocserversAdministrationComponent } from './docservers-admin { path: 'administration/contacts-groups/:id', component: ContactsGroupAdministrationComponent }, { path: 'administration/versions-update', component: VersionsUpdateAdministrationComponent }, { path: 'administration/docservers', component: DocserversAdministrationComponent }, + { path: 'administration/docservers/new', component: DocserverAdministrationComponent }, ]), ], exports: [ diff --git a/apps/maarch_entreprise/js/angular/app/administration/administration.module.ts b/apps/maarch_entreprise/js/angular/app/administration/administration.module.ts index eac9eee682e..1114b0ee92d 100755 --- a/apps/maarch_entreprise/js/angular/app/administration/administration.module.ts +++ b/apps/maarch_entreprise/js/angular/app/administration/administration.module.ts @@ -39,6 +39,7 @@ import { ContactsGroupsAdministrationComponent } from './contacts-groups- import { ContactsGroupAdministrationComponent } from './contacts-group-administration.component'; import { VersionsUpdateAdministrationComponent } from './versions-update-administration.component'; import { DocserversAdministrationComponent } from './docservers-administration.component'; +import { DocserverAdministrationComponent } from './docserver-administration.component'; @NgModule({ imports: [ @@ -86,6 +87,7 @@ import { DocserversAdministrationComponent } from './docservers-admin SortPipe, VersionsUpdateAdministrationComponent, DocserversAdministrationComponent, + DocserverAdministrationComponent, ], entryComponents: [ UsersAdministrationRedirectModalComponent, diff --git a/apps/maarch_entreprise/js/angular/app/administration/docserver-administration.component.ts b/apps/maarch_entreprise/js/angular/app/administration/docserver-administration.component.ts new file mode 100644 index 00000000000..f6117abfee0 --- /dev/null +++ b/apps/maarch_entreprise/js/angular/app/administration/docserver-administration.component.ts @@ -0,0 +1,68 @@ +import { ChangeDetectorRef, Component, OnInit, ViewChild, Pipe, PipeTransform } from '@angular/core'; +import { MediaMatcher } from '@angular/cdk/layout'; +import { HttpClient } from '@angular/common/http'; +import { Router } from '@angular/router'; +import { LANG } from '../translate.component'; +import { NotificationService } from '../notification.service'; +import { MatPaginator, MatTableDataSource, MatSort } from '@angular/material'; + +declare function $j(selector: any): any; + +declare var angularGlobals: any; + +@Component({ + templateUrl: "../../../../Views/docserver-administration.component.html", + providers : [NotificationService] +}) + +export class DocserverAdministrationComponent implements OnInit { + + mobileQuery : MediaQueryList; + private _mobileQueryListener : () => void; + + coreUrl : string; + lang : any = LANG; + loading : boolean = false; + dataSource : any; + + docserver : any = {coll_id:"letterbox_coll", docserver_type_id:"DOC", limitSizeFormatted :"50"}; + docserversTypes : any = []; + + @ViewChild(MatPaginator) paginator: MatPaginator; + @ViewChild(MatSort) sort: MatSort; + + constructor(changeDetectorRef: ChangeDetectorRef, media: MediaMatcher, public http: HttpClient, private router: Router, private notify: NotificationService) { + $j("link[href='merged_css.php']").remove(); + this.mobileQuery = media.matchMedia('(max-width: 768px)'); + this._mobileQueryListener = () => changeDetectorRef.detectChanges(); + this.mobileQuery.addListener(this._mobileQueryListener); + } + + ngOnDestroy(): void { + this.mobileQuery.removeListener(this._mobileQueryListener); + } + + ngOnInit(): void { + this.coreUrl = angularGlobals.coreUrl; + + this.loading = true; + + this.http.get(this.coreUrl + 'rest/docserverTypes') + .subscribe((data: any) => { + this.docserversTypes = data.docserverTypes; + this.loading = false; + }); + } + + + onSubmit(docserver:any) { + docserver.size_limit_number = docserver.limitSizeFormatted * 1000000000; + this.http.post(this.coreUrl + 'rest/docservers', docserver) + .subscribe((data: any) => { + this.notify.success(this.lang.docserverAdded); + this.router.navigate(["/administration/docservers/"]); + }, (err) => { + this.notify.error(err.error.errors); + }); + } +} diff --git a/apps/maarch_entreprise/js/angular/app/administration/docservers-administration.component.ts b/apps/maarch_entreprise/js/angular/app/administration/docservers-administration.component.ts index dab84c6f19d..41b27915ace 100644 --- a/apps/maarch_entreprise/js/angular/app/administration/docservers-administration.component.ts +++ b/apps/maarch_entreprise/js/angular/app/administration/docservers-administration.component.ts @@ -1,17 +1,19 @@ -import { ChangeDetectorRef, Component, OnInit, ViewChild } from '@angular/core'; +import { ChangeDetectorRef, Component, OnInit, ViewChild, Pipe, PipeTransform } from '@angular/core'; import { MediaMatcher } from '@angular/cdk/layout'; import { HttpClient } from '@angular/common/http'; import { LANG } from '../translate.component'; +import { NotificationService } from '../notification.service'; import { MatPaginator, MatTableDataSource, MatSort } from '@angular/material'; declare function $j(selector: any): any; declare var angularGlobals: any; - @Component({ - templateUrl: "../../../../Views/docservers-administration.component.html" + templateUrl: "../../../../Views/docservers-administration.component.html", + providers : [NotificationService] }) + export class DocserversAdministrationComponent implements OnInit { mobileQuery : MediaQueryList; @@ -22,14 +24,14 @@ export class DocserversAdministrationComponent implements OnInit { loading : boolean = false; dataSource : any; - docservers : any = {}; - docserversFasthd : any = []; + docservers : any = []; + docserversClone : any = []; + docserversTypes : any = {}; @ViewChild(MatPaginator) paginator: MatPaginator; @ViewChild(MatSort) sort: MatSort; - - - constructor(changeDetectorRef: ChangeDetectorRef, media: MediaMatcher, public http: HttpClient) { + + constructor(changeDetectorRef: ChangeDetectorRef, media: MediaMatcher, public http: HttpClient, private notify: NotificationService) { $j("link[href='merged_css.php']").remove(); this.mobileQuery = media.matchMedia('(max-width: 768px)'); this._mobileQueryListener = () => changeDetectorRef.detectChanges(); @@ -40,12 +42,6 @@ export class DocserversAdministrationComponent implements OnInit { this.mobileQuery.removeListener(this._mobileQueryListener); } - applyFilter(filterValue: string) { - filterValue = filterValue.trim(); // Remove whitespace - filterValue = filterValue.toLowerCase(); // MatTableDataSource defaults to lowercase matches - this.dataSource.filter = filterValue; - } - ngOnInit(): void { this.coreUrl = angularGlobals.coreUrl; @@ -54,58 +50,65 @@ export class DocserversAdministrationComponent implements OnInit { this.http.get(this.coreUrl + 'rest/docservers') .subscribe((data: any) => { this.docservers = data.docservers; - - this.docserversFasthd = [ - { - actual_size_number: 44444444444, - adr_priority_number: 2, - coll_id: "letterbox_coll", - creation_date: "2011-01-13 14:47:49.197164", - device_label: "Fast internal disc bay for letterbox mode", - docserver_id: "FASTHD_MAN", - docserver_location_id: "NANTERRE", - docserver_type_id: "DOC", - enabled: "Y", - is_readonly: "N", - path_template: "/var/www/html/docservers/maarch_courrier_develop/manual/", - priority_number: 10, - size_limit_number: 50000000000 - }, - { - actual_size_number: 2455890616, - adr_priority_number: 2, - coll_id: "letterbox_coll", - creation_date: "2011-01-13 14:47:49.197164", - device_label: "Fast internal disc bay for letterbox mode", - docserver_id: "FASTHD_AI", - docserver_location_id: "NANTERRE", - docserver_type_id: "DOC", - enabled: "Y", - is_readonly: "Y", - path_template: "/var/www/html/docservers/maarch_courrier_develop/ai/", - priority_number: 10, - size_limit_number: 50000000000 - } - ] - this.docserversFasthd.forEach((elem: any, index: number) => { - var factor = null; - - elem.size_limit_number = elem.size_limit_number / 1000000000; - factor = Math.pow(10, 2); - elem.size_limit_number = Math.round(elem.size_limit_number * factor) / factor; - - elem.actual_size_number = elem.actual_size_number / 1000000000; - factor = Math.pow(10, 2); - elem.actual_size_number = Math.round(elem.actual_size_number * factor) / factor; - - //percent - elem.percent_number = (elem.actual_size_number*100)/elem.size_limit_number; - }); - - console.log(this.docserversFasthd); - + this.docserversClone = JSON.parse(JSON.stringify(this.docservers)); + this.docserversTypes = data.types; this.loading = false; + }); + } + toggleDocserver(docserver:any) { + //TO DO : implement secondary_docserver instead of priority + if (docserver.secondary_docserver == '') { + alert('Veuillez choisir un docserver secondaire'); + } else { + docserver.is_readonly = !docserver.is_readonly; + } + } + + cancelModification(docserverType:any, index:number) { + this.docservers[docserverType][index] =JSON.parse(JSON.stringify(this.docserversClone[docserverType][index])); + } + + checkModif(docserver:any,docserversClone:any) { + docserver.size_limit_number = docserver.limitSizeFormatted * 1000000000; + if (JSON.stringify(docserver) === JSON.stringify(docserversClone)) { + return true + } else { + if (docserver.size_limit_number >= docserver.actual_size_number && docserver.limitSizeFormatted > 0 && /^[\d]*$/.test(docserver.limitSizeFormatted) && /^[\d]*$/.test(docserver.priority_number) && /\/$/.test(docserver.path_template) ) { + return false; + } else { + return true; + } + } + } + + onSubmit(docserver:any) { + docserver.size_limit_number = docserver.limitSizeFormatted * 1000000000; + this.http.put(this.coreUrl + 'rest/docservers/'+docserver.id,docserver) + .subscribe((data: any) => { + this.docserversClone = JSON.parse(JSON.stringify(this.docservers)); + this.notify.success(this.lang.docserverUpdated); + }, (err) => { + this.notify.error(err.error.errors); + }); + } + + delete(docserver:any,i:number) { + let r = null; + if (docserver.actual_size_number == 0) { + r = confirm(this.lang.delete+' ?'); + } else { + r = confirm(this.lang.docserverdeleteWarning); + } + + if (r) { + this.http.delete(this.coreUrl + 'rest/docservers/'+docserver.id) + .subscribe((data: any) => { + this.docservers[docserver.docserver_type_id].splice(i, 1); + this.notify.success(this.lang.docserverDeleted); + }, (err) => { + this.notify.error(err.error.errors); }); + } } } diff --git a/apps/maarch_entreprise/js/angular/app/administration/entities-administration.component.ts b/apps/maarch_entreprise/js/angular/app/administration/entities-administration.component.ts index 1faecccefe8..6f5f7e7d103 100644 --- a/apps/maarch_entreprise/js/angular/app/administration/entities-administration.component.ts +++ b/apps/maarch_entreprise/js/angular/app/administration/entities-administration.component.ts @@ -181,8 +181,12 @@ export class EntitiesAdministrationComponent extends AutoCompletePlugin implemen this.http.get(this.coreUrl + "rest/entities/" + entity_id + '/details') .subscribe((data: any) => { this.currentEntity = data['entity']; + console.log('oops'); if (this.currentEntity.visaTemplate[0]) { this.idCircuitVisa = this.currentEntity.visaTemplate[0].id; + } else { + console.log('oops'); + this.idCircuitVisa = null; } this.dataSource = new MatTableDataSource(this.currentEntity.users); this.dataSource.paginator = this.paginator; diff --git a/apps/maarch_entreprise/js/angular/lang/lang-en.ts b/apps/maarch_entreprise/js/angular/lang/lang-en.ts index d3611160851..06328f09d4a 100755 --- a/apps/maarch_entreprise/js/angular/lang/lang-en.ts +++ b/apps/maarch_entreprise/js/angular/lang/lang-en.ts @@ -29,6 +29,7 @@ export const LANG_EN = { "addVisaSignUser" : "Add a visa / sign user", "administration" : "Administration", "administrationServices" : "Administration services", + "adrPriority" : "Sequence priority", "allActions" : "All actions", "application" : "Application", "appUpToDate" : "Your application is up to date", @@ -207,6 +208,7 @@ export const LANG_EN = { "manageSignatures" : "Manage signatures", "march" : "March", "may" : "May", + "maxSize" : "Maximum size", "memberAllUsers" : "All users member", "memberDiffTypeUsers" : "Diffusion type users member", "memberUserDest" : "Dest user member", @@ -278,6 +280,7 @@ export const LANG_EN = { "primary" : "Primaire", "primaryEntity" : "Primary entity", "priorities" : "Priorities", + "priority" : "Priority", "priorityAdded" : "Priority added", "priorityCreation" : "Priority creation", "priorityDeleted" : "Priority deleted", @@ -372,6 +375,7 @@ export const LANG_EN = { "type" : "Type", "unlinkAction" : "Unlink action", "unlinkGroup" : "Unlink group", + "unlockDocserver" : "Unlock this docserver (read and write)", "unselectAll" : "Unselect all", "until" : "Until", "update" : "Update", @@ -405,6 +409,12 @@ export const LANG_EN = { "yes" : "Yes", "zipcode" : "Zip code", "doctypesAdmin" : "Document types", + "docserverAdded" : "Docserver added", + "docserverCreation" : "Docserver creation", + "docserverDeleted" : "Doctype deleted", + "docserverdeleteWarning" : "This docserver have files, these files will not available in application, continue ?", + "docserverType" : "Docserver type", + "docserverUpdated" : "Doctype updated", "firstLevelDoctype" : "Folder", "secondLevelDoctype" : "Sub-folder", "doctype" : "Document types", @@ -422,6 +432,7 @@ export const LANG_EN = { "progression" : "Progression", "loadedFile" : "Loaded file", "loading" : "Loading", + "lockDocserver" : "Lock this docserver (read only)", "generatedFile" : "Generated file", "destruction" : "Destruction", "conservation" : "Retention", @@ -437,6 +448,7 @@ export const LANG_EN = { "documentTypeReplacement" : "Document type replacement", "transferToDoctype" : "Replace by this document type", "complementaryFields" : "Complementary fields", + "collection" : "Collection", "archival" : "Archival", "field" : "Field", "mandatory" : "Mandatory", diff --git a/apps/maarch_entreprise/js/angular/lang/lang-fr.ts b/apps/maarch_entreprise/js/angular/lang/lang-fr.ts index 1306bd48e12..7afd2460fbe 100755 --- a/apps/maarch_entreprise/js/angular/lang/lang-fr.ts +++ b/apps/maarch_entreprise/js/angular/lang/lang-fr.ts @@ -35,6 +35,7 @@ export const LANG_FR = { "addVisaSignUser" : "Ajouter un viseur / signataire", "administration" : "Administration", "administrationServices" : "Droits d'administration", + "adrPriority" : "Priorité de séquence", "allActions" : "Toutes les actions", "alreadyExist" : "L'identifiant existe déjà ", "application" : "Application", @@ -97,6 +98,7 @@ export const LANG_FR = { "clickOn" : "Cliquez sur", "color" : "Couleur", "complementaryFields" : "Champs complémentaires", + "collection" : "Collection", "confirmAction" : "Voulez-vous vraiment effectuer cette action ?", "conservation" : "Conservation", "content_management" : "Versionning de document", @@ -138,6 +140,12 @@ export const LANG_FR = { "dlAttachment" : "Télécharger la pièce jointe", "doctype" : "Type de document", "doctypesAdmin" : "Typologie(s) documentaire(s)", + "docserverAdded" : "Zone de stockage ajoutée", + "docserverCreation" : "Création d'une zone de stockage", + "docserverDeleted" : "Zone de stockage supprimée", + "docserverdeleteWarning" : "Le docserver semble avoir des fichiers stockés, cela entrainera la non dispoibilité ceux-ci dans l'application, continuer ?", + "docserverType" : "Type de Zone de stockage", + "docserverUpdated" : "Zone de stockage modifiée", "docservers" : "Zones de stockage", "documents" : "document(s)", "documentTypeAdded" : "Type de document ajouté", @@ -255,6 +263,7 @@ export const LANG_FR = { "listTemplatesRolesUpdated" : "Rôles modifiés", "loadedFile" : "Fichier importé", "loading" : "Chargement", + "lockDocserver" : "Verrouiller la zone de stockage (lecture seule)", "logout" : "Se déconnecter", "maarchApplication" : "Application Maarch", "mail" : "Courrier", @@ -264,6 +273,7 @@ export const LANG_FR = { "mandatory" : "Obligatoire", "march" : "Mars", "may" : "Mai", + "maxSize" : "Taille maximale", "memberAllUsers" : "Tout les utilisateurs membres", "memberDiffTypeUsers" : "Personnes membres du type de diffusion", "memberUserDest" : "Utilisateur destinataire membre", @@ -347,6 +357,7 @@ export const LANG_FR = { "priorities" : "Priorité(s)", "prioritiesHelpDesc" : "Glisser-déposer les priorités pour modifier l'ordre", "prioritiesOrder" : "Gérer l'ordre des priorités", + "priority" : "Priorité", "priorityAdded" : "Priorité ajoutée", "priorityCreation" : "Création d'une priorité", "priorityDeleted" : "Priorité supprimée", @@ -462,6 +473,7 @@ export const LANG_FR = { "unlinkAction" : "Dissocier l'action", "unlinkGroup" : "Dissocier le groupe", "unselectAll" : "Tout désélectionner", + "unlockDocserver" : "Déverouiller la zone de stockage (lecture et écriture)", "until" : "Jusqu'à ", "update" : "Modifier", "updateAtt" : "Modifier la pièce jointe", diff --git a/apps/maarch_entreprise/xml/services.xml b/apps/maarch_entreprise/xml/services.xml index 6af1f7bc828..562ef4fec16 100755 --- a/apps/maarch_entreprise/xml/services.xml +++ b/apps/maarch_entreprise/xml/services.xml @@ -238,12 +238,14 @@ <id>admin_docservers</id> <name>_DOCSERVERS</name> <comment>_ADMIN_DOCSERVERS_DESC</comment> - <servicepage>index.php?page=admin_docservers&admin=docservers&mode=list</servicepage> + <servicepage>/administration/docservers</servicepage> + <!--<servicepage>index.php?page=admin_docservers&admin=docservers&mode=list</servicepage>--> <servicetype>admin</servicetype> <category>supervision</category> <system_service>false</system_service> <style>fa fa-hdd</style> <enabled>true</enabled> + <angular>true</angular> </SERVICE> <SERVICE> <id>view_technical_infos</id> diff --git a/sql/data_fr.sql b/sql/data_fr.sql index 8afd5294bc4..0a282dfbb43 100755 --- a/sql/data_fr.sql +++ b/sql/data_fr.sql @@ -997,49 +997,49 @@ INSERT INTO security (group_id, coll_id, where_clause, maarch_comment, can_inser ------------ TRUNCATE TABLE docserver_types; INSERT INTO docserver_types (docserver_type_id, docserver_type_label, enabled, fingerprint_mode) -VALUES ('DOC', 'Documents', 'Y', 'SHA512'); +VALUES ('DOC', 'Documents numériques', 'Y', 'SHA512'); INSERT INTO docserver_types (docserver_type_id, docserver_type_label, enabled, fingerprint_mode) -VALUES ('CONVERT', 'Conversions', 'Y', 'SHA256'); +VALUES ('CONVERT', 'Conversions de formats', 'Y', 'SHA256'); INSERT INTO docserver_types (docserver_type_id, docserver_type_label, enabled, fingerprint_mode) -VALUES ('FULLTEXT', 'FULLTEXT', 'Y', 'SHA256'); +VALUES ('FULLTEXT', 'Plein texte', 'Y', 'SHA256'); INSERT INTO docserver_types (docserver_type_id, docserver_type_label, enabled, fingerprint_mode) -VALUES ('TNL', 'Thumbnails', 'Y', 'NONE'); +VALUES ('TNL', 'Miniatures', 'Y', 'NONE'); INSERT INTO docserver_types (docserver_type_id, docserver_type_label, enabled, fingerprint_mode) -VALUES ('TEMPLATES', 'TEMPLATES', 'Y', 'NONE'); +VALUES ('TEMPLATES', 'Modèles de documents', 'Y', 'NONE'); INSERT INTO docserver_types (docserver_type_id, docserver_type_label, enabled, fingerprint_mode) -VALUES ('ARCHIVETRANSFER', 'Archive Transfer', 'Y', 'SHA256'); +VALUES ('ARCHIVETRANSFER', 'Archives numériques', 'Y', 'SHA256'); TRUNCATE TABLE docservers; -INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, enabled, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) -VALUES ('FASTHD_AI', 'DOC', 'Fast internal disc bay for autoimport', 'N', 'Y', 50000000000, 1, '/opt/maarch/docservers/ai/', '2011-01-07 13:43:48.696644', 'letterbox_coll', 11); -INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, enabled, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) -VALUES ('FASTHD_MAN', 'DOC', 'Fast internal disc bay for letterbox mode', 'N', 'Y', 50000000000, 1290730, '/opt/maarch/docservers/manual/', '2011-01-13 14:47:49.197164', 'letterbox_coll', 10); -INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, enabled, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) -VALUES ('FASTHD_ATTACH', 'FASTHD', 'Fast internal disc bay for attachments', 'N', 'Y', 50000000000, 1, '/opt/maarch/docservers/manual_attachments/', '2011-01-13 14:47:49.197164', 'attachments_coll', 2); -INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, enabled, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) -VALUES ('FASTHD_ATTACH_VERSION', 'FASTHD', 'Fast internal disc bay for attachments version', 'N', 'Y', 50000000000, 1, '/opt/maarch/docservers/manual_attachments_version/', '2011-01-13 14:47:49.197164', 'attachments_version_coll', 100); -INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, enabled, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) -VALUES ('CONVERT_MLB', 'CONVERT', 'Server for mlb documents conversion', 'N', 'Y', 50000000000, 0, '/opt/maarch/docservers/convert_mlb/', '2015-03-16 14:47:49.197164', 'letterbox_coll', 13); -INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, enabled, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) -VALUES ('CONVERT_ATTACH', 'CONVERT', 'Server for attachments documents conversion', 'N', 'Y', 50000000000, 0, '/opt/maarch/docservers/convert_attachments/', '2015-03-16 14:47:49.197164', 'attachments_coll', 14); -INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, enabled, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) -VALUES ('CONVERT_ATTACH_VERSION', 'CONVERT', 'Server for attachments version documents conversion', 'N', 'Y', 50000000000, 0, '/opt/maarch/docservers/convert_attachments_version/', '2015-03-16 14:47:49.197164', 'attachments_version_coll', 101); -INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, enabled, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) -VALUES ('TNL_MLB', 'TNL', 'Server for thumbnails of documents', 'N', 'Y', 50000000000, 0, '/opt/maarch/docservers/thumbnails_mlb/', '2015-03-16 14:47:49.197164', 'letterbox_coll', 12); -INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, enabled, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) -VALUES ('TNL_ATTACH', 'TNL', 'Server for thumbnails of attachments', 'N', 'Y', 50000000000, 0, '/opt/maarch/docservers/thumbnails_attachments/', '2015-03-16 14:47:49.197164', 'attachments_coll', 15); -INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, enabled, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) -VALUES ('TNL_ATTACH_VERSION', 'TNL', 'Server for thumbnails of attachments version', 'N', 'Y', 50000000000, 0, '/opt/maarch/docservers/thumbnails_attachments_version/', '2015-03-16 14:47:49.197164', 'attachments_version_coll', 102); -INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, enabled, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) -VALUES ('FULLTEXT_MLB', 'FULLTEXT', 'Server for mlb documents fulltext', 'N', 'Y', 50000000000, 0, '/opt/maarch/docservers/fulltext_mlb/', '2015-03-16 14:47:49.197164', 'letterbox_coll', 16); -INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, enabled, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) -VALUES ('FULLTEXT_ATTACH', 'FULLTEXT', 'Server for attachments documents fulltext', 'N', 'Y', 50000000000, 0, '/opt/maarch/docservers/fulltext_attachments/', '2015-03-16 14:47:49.197164', 'attachments_coll', 17); -INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, enabled, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) -VALUES ('FULLTEXT_ATTACH_VERSION', 'FULLTEXT', 'Server for attachments version documents fulltext', 'N', 'Y', 50000000000, 0, '/opt/maarch/docservers/fulltext_attachments_version/', '2015-03-16 14:47:49.197164', 'attachments_version_coll', 103); -INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, enabled, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) -VALUES ('TEMPLATES', 'TEMPLATES', '[system] Templates', 'N', 'Y', 50000000000, 71511, '/opt/maarch/docservers/templates/', '2012-04-01 14:49:05.095119', 'templates', 1); -INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, enabled, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) -VALUES ('ARCHIVETRANSFER', 'ARCHIVETRANSFER', 'Fast internal disc bay for archive transfer', 'N', 'Y', 50000000000, 1, '/opt/maarch/docservers/archive_transfer/', '2017-01-13 14:47:49.197164', 'archive_transfer_coll', 10); +INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) +VALUES ('FASTHD_AI', 'DOC', 'Dépôt documentaire issue d''imports de masse', 'N', 50000000000, 1, '/opt/maarch/docservers/ai/', '2011-01-07 13:43:48.696644', 'letterbox_coll', 11); +INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) +VALUES ('FASTHD_MAN', 'DOC', 'Dépôt documentaire de numérisation manuelle', 'N', 50000000000, 1290730, '/opt/maarch/docservers/manual/', '2011-01-13 14:47:49.197164', 'letterbox_coll', 10); +INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) +VALUES ('FASTHD_ATTACH', 'FASTHD', 'Dépôt des pièces jointes', 'N', 50000000000, 1, '/opt/maarch/docservers/manual_attachments/', '2011-01-13 14:47:49.197164', 'attachments_coll', 2); +INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) +VALUES ('FASTHD_ATTACH_VERSION', 'FASTHD', 'Dépôt des pièces jointes versionnées', 'N', 50000000000, 1, '/opt/maarch/docservers/manual_attachments_version/', '2011-01-13 14:47:49.197164', 'attachments_version_coll', 100); +INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) +VALUES ('CONVERT_MLB', 'CONVERT', 'Dépôt des formats des documents numérisés', 'N', 50000000000, 0, '/opt/maarch/docservers/convert_mlb/', '2015-03-16 14:47:49.197164', 'letterbox_coll', 13); +INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) +VALUES ('CONVERT_ATTACH', 'CONVERT', 'Dépôt des formats des pièces jointes', 'N', 50000000000, 0, '/opt/maarch/docservers/convert_attachments/', '2015-03-16 14:47:49.197164', 'attachments_coll', 14); +INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) +VALUES ('CONVERT_ATTACH_VERSION', 'CONVERT', 'Dépôt des formats des pièces jointes versionnées', 'N', 50000000000, 0, '/opt/maarch/docservers/convert_attachments_version/', '2015-03-16 14:47:49.197164', 'attachments_version_coll', 101); +INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) +VALUES ('TNL_MLB', 'TNL', 'Dépôt des maniatures des documents numérisés', 'N', 50000000000, 0, '/opt/maarch/docservers/thumbnails_mlb/', '2015-03-16 14:47:49.197164', 'letterbox_coll', 12); +INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) +VALUES ('TNL_ATTACH', 'TNL', 'Dépôt des maniatures des pièces jointes', 'N', 50000000000, 0, '/opt/maarch/docservers/thumbnails_attachments/', '2015-03-16 14:47:49.197164', 'attachments_coll', 15); +INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) +VALUES ('TNL_ATTACH_VERSION', 'TNL', 'Dépôt des maniatures des pièces jointes versionnées', 'N', 50000000000, 0, '/opt/maarch/docservers/thumbnails_attachments_version/', '2015-03-16 14:47:49.197164', 'attachments_version_coll', 102); +INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) +VALUES ('FULLTEXT_MLB', 'FULLTEXT', 'Dépôt de l''extraction plein texte des documents numérisés', 'N', 50000000000, 0, '/opt/maarch/docservers/fulltext_mlb/', '2015-03-16 14:47:49.197164', 'letterbox_coll', 16); +INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) +VALUES ('FULLTEXT_ATTACH', 'FULLTEXT', 'Dépôt de l''extraction plein texte des pièces jointes', 'N', 50000000000, 0, '/opt/maarch/docservers/fulltext_attachments/', '2015-03-16 14:47:49.197164', 'attachments_coll', 17); +INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) +VALUES ('FULLTEXT_ATTACH_VERSION', 'FULLTEXT', 'Dépôt de l''extraction plein texte des pièces jointes versionnées', 'N', 50000000000, 0, '/opt/maarch/docservers/fulltext_attachments_version/', '2015-03-16 14:47:49.197164', 'attachments_version_coll', 103); +INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) +VALUES ('TEMPLATES', 'TEMPLATES', 'Dépôt des modèles de documents', 'N', 50000000000, 71511, '/opt/maarch/docservers/templates/', '2012-04-01 14:49:05.095119', 'templates', 1); +INSERT INTO docservers (docserver_id, docserver_type_id, device_label, is_readonly, size_limit_number, actual_size_number, path_template, creation_date, coll_id, priority_number) +VALUES ('ARCHIVETRANSFER', 'ARCHIVETRANSFER', 'Dépôt des archives numériques', 'N', 50000000000, 1, '/opt/maarch/docservers/archive_transfer/', '2017-01-13 14:47:49.197164', 'archive_transfer_coll', 10); ------------ --SUPERADMIN USER ------------ -- GitLab