Something went wrong on our end
-
Florian Azizian authoredFlorian Azizian authored
sent-numeric-package-page.component.html 9.54 KiB
<div class="mat-dialog-content-container">
<h1 mat-dialog-title>
<span style="flex: 1;">
{{lang.sendNumericPackage}}
</span>
<button [title]="lang.close" mat-icon-button (click)="saveDraft()">
<mat-icon class="fa fa-times"></mat-icon>
</button></h1>
<mat-dialog-content class="modal-container">
<div *ngIf="loading" class="loading">
<mat-spinner style="margin:auto;"></mat-spinner>
</div>
<div *ngIf="canManageMail()" class="alert-message alert-message-info"
[innerHTML]="lang.sendNumericPackageInfo | scan: [maarch2maarchUrl]"></div>
<mat-form-field>
<mat-label class="attachLabel">{{lang.sender}}</mat-label>
<input *ngIf="!canManageMail()" matInput [value]="currentSender.label" readonly>
<mat-select *ngIf="canManageMail()" [compareWith]="this.compareSenders" [(ngModel)]="currentSender"
required>
<mat-option *ngFor="let sender of availableSenders | sortBy: 'label'" [value]="sender">
{{sender.label}} ({{sender.m2m}})
</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field>
<mat-label class="attachLabel">{{lang.recipient}} *</mat-label>
<mat-chip-list id="recipients-list" #recipientsList>
<mat-chip class="recipients" *ngFor="let recipient of recipients" [selectable]="selectable"
[removable]="canManageMail()" (removed)="remove(recipient, 'recipients')"
(click)="remove(recipient, 'recipients')">
<span style="flex:1;">
<div>
{{recipient.label}} - <b>{{recipient.m2m}}</b>
</div>
<div class="attachLabel">
({{lang.communicationMean}} : {{communicationType}})
</div>
</span>
<mat-icon matChipRemove class="fa fa-times" *ngIf="canManageMail()"></mat-icon>
</mat-chip>
<input #recipientsInput [formControl]="recipientsCtrl" [matChipInputFor]="recipientsList"
[matAutocomplete]="autoEmails" (focus)="resetAutocomplete()" required>
</mat-chip-list>
<mat-autocomplete #autoEmails="matAutocomplete" (optionSelected)="addRecipient($event.option.value)">
<mat-option *ngFor="let option of filteredEmails | async" [value]="option" class="m2mRecipientList">
<div>
{{option.label}} - <b>{{option.m2m}}</b>
</div>
<div class="attachLabel">
({{lang.communicationMean}} : {{option.communicationMeans}})
</div>
</mat-option>
</mat-autocomplete>
</mat-form-field>
<mat-form-field>
<mat-label class="attachLabel">{{lang.mailSubject}}</mat-label>
<input matInput [readonly]="!canManageMail()" [(ngModel)]="numericPackage.object" maxlength="70" required>
<button mat-icon-button matSuffix *ngFor="let keyVal of emailAttachTool | keyvalue"
[disabled]="!canManageMail()" [title]="emailAttachTool[keyVal.key].title"
(click)="$event.stopPropagation();currentEmailAttachTool=keyVal.key;"
[matMenuTriggerFor]="emailAttachListMenu">
<mat-icon class="{{emailAttachTool[keyVal.key].icon}}"
[class.activeButton]="isSelectedAttachType(keyVal.key)" color="primary">
</mat-icon>
</button>
<mat-menu #emailAttachListMenu="matMenu" [class]="'attachListMenu'">
<ng-container *ngFor="let keyVal of emailAttachTool | keyvalue">
<ng-container *ngIf="keyVal.key === currentEmailAttachTool">
<button mat-menu-item style="line-height: normal;" disableRipple
*ngFor="let attach of emailAttachTool[keyVal.key].list"
[disabled]="isSelectedAttach(attach,keyVal.key)"
(click)="$event.stopPropagation();toggleAttach(attach,keyVal.key,'original');">
<span (click)="$event.stopPropagation();toggleAttach(attach,keyVal.key,'original')"
[title]="attach.label">
<div style="font-size: 10px;opacity: 0.5;">{{attach.chrono}} - {{attach.typeLabel}}
({{attach.creator}})</div>
{{attach.label | shorten: 45: '...'}} - {{attach.format}}
</span>
</button>
</ng-container>
</ng-container>
</mat-menu>
</mat-form-field>
<mat-form-field *ngIf="!canManageMail()">
<mat-label class="attachLabel">{{lang.reference}}</mat-label>
<input matInput [value]="reference" readonly>
</mat-form-field>
<div class="attachMsg"
*ngIf="numericPackage.mainExchangeDoc === null && emailAttach.length === 0 && canManageMail()">
{{lang.attachItemToNumericPackage}}
<i class="fas fa-arrow-up"></i>
</div>
<div style="overflow: auto;max-height: 300px;">
<mat-list *ngIf="numericPackage.mainExchangeDoc !== null">
<h3 mat-subheader class="attachLabel">{{lang.mainDocNumericPackage}}</h3>
<mat-list-item class="numericPackageAttach" *ngIf="numericPackage.mainExchangeDoc !== null">
<p mat-line class="numericPackageAttachItem">
<span
style="overflow: hidden;text-overflow: ellipsis;">{{numericPackage.mainExchangeDoc.label}}</span>
<span class="badge">{{numericPackage.mainExchangeDoc.typeLabel}}</span>
<span class="subInfo">.{{numericPackage.mainExchangeDoc.format}}</span>
<button mat-icon-button color="warn" (click)="numericPackage.mainExchangeDoc=null">
<mat-icon class="fa fa-trash"></mat-icon>
</button>
</p>
</mat-list-item>
</mat-list>
<mat-divider *ngIf="emailAttach.length > 0"></mat-divider>
<mat-list *ngIf="emailAttach.length > 0">
<h3 mat-subheader class="attachLabel">{{lang.attachmentsNumericPackage}}</h3>
<mat-list-item class="numericPackageAttach" *ngFor="let attach of emailAttach; let i=index">
<p mat-line class="numericPackageAttachItem">
<span style="overflow: hidden;text-overflow: ellipsis;"
[title]="attach.label">{{attach.label}}</span>
<span class="badge">{{attach.typeLabel}}</span>
<span class="subInfo">.{{attach.format}}</span>
<button mat-icon-button color="warn" (click)="removeAttach(i)">
<mat-icon class="fa fa-trash"></mat-icon>
</button>
</p>
</mat-list-item>
</mat-list>
</div>
<!--<div class="models" *ngIf="canManageMail()">
<plugin-select-search *ngIf="availableEmailModels.length > 0" [label]="lang.emailModel"
[placeholderLabel]="lang.emailModel" [datas]="availableEmailModels"
[formControlSelect]="templateEmailListForm" (afterSelected)="mergeEmailTemplate($event)">
</plugin-select-search>
<plugin-select-search #templateList *ngIf="availableSignEmailModels.length > 0"
[label]="lang.emailSignatures" [placeholderLabel]="lang.emailSignatures"
[datas]="availableSignEmailModels" [formControlSelect]="emailSignListForm"
(afterSelected)="mergeSignEmailTemplate($event)">
</plugin-select-search>
</div>-->
<ng-container *ngIf="!canManageMail()">
<div class="col-md-8">
</div>
<div class="col-md-4">
<button mat-button color="primary" style="width: 180px;white-space: initial;line-height: 20px;padding: 10px;" (click)="saveNumericPackageFile()">
<i class="fas fa-file-download" style="font-size: 40px;"></i><br/>
<span>Télécharger le pli numérique</span>
</button>
</div>
</ng-container>
<div style="padding-top: 10px;">
<mat-form-field appearance="outline">
<mat-label class="attachLabel">{{lang.note}}</mat-label>
<textarea matInput [placeholder]="lang.addNoteToNumericPackage" [(ngModel)]="numericPackage.content"
matTextareaAutosize style="padding:0" [readonly]="!canManageMail()"></textarea>
</mat-form-field>
</div>
</mat-dialog-content>
<span class="divider-modal"></span>
<div mat-dialog-actions class="actions">
<button mat-raised-button color="primary"
*ngIf="canManageMail() && privilegeService.hasCurrentUserPrivilege('sendmail')" (click)="onSubmit()"
[disabled]="recipients.length === 0 || numericPackage.mainExchangeDoc === null || loading">{{lang.send}}</button>
<button mat-raised-button color="warn" (click)="deleteEmail()"
*ngIf="data.emailId && !loading"
[disabled]="headerService.user.id !== emailCreatorId">{{lang.delete}}</button>
</div>
</div>