diff --git a/src/app/appmarket/bulkDeployment/appDeployment/appupload/appupload.component.html b/src/app/appmarket/bulkDeployment/appDeployment/appupload/appupload.component.html index a85c031a1a59b5479a9637daa655e3dbb7bbf755..328d1af22da2d36c22a9624a6d9c57e56fa4e5d3 100644 --- a/src/app/appmarket/bulkDeployment/appDeployment/appupload/appupload.component.html +++ b/src/app/appmarket/bulkDeployment/appDeployment/appupload/appupload.component.html @@ -1,5 +1,5 @@ <div style="width: 80%; margin: auto; margin-top: 4rem;"> - <div style="margin-bottom: 5rem"> + <div style="margin-bottom: 3rem"> <div class="flex justify-content-between"> <h2>{{'BULK.APP.UPLOAD' | translate}} {{deployService.getSelectedApp()}}</h2> <div> @@ -7,17 +7,17 @@ [src]="(appImagesService.getAppLogoUrl(deployService.getSelectedAppId()) | secure) || 'assets/images/app-logo-example.png'"/> </div> </div> - <p>{{'BULK.APP.INFO' | translate}}</p> + <p>{{'BULK.APP.UPLOAD_INFO' | translate}}</p> </div> <p-fileUpload name="file[]" customUpload="true" (uploadHandler)="myUploader($event)" accept=".csv" - multiple="false"></p-fileUpload> + multiple="false" uploadLabel="{{'BULK.BUTTON' | translate}}"></p-fileUpload> - <div style="margin-top: 2rem; display: flex; justify-content: center; flex-direction: column"> - <div style="margin-top: 2rem; margin-bottom: 1rem"> + <div style="margin-top: 1.5rem; display: flex; justify-content: center; flex-direction: column"> + <div style="margin-top: 1.5rem; margin-bottom: 1rem"> <p>{{'BULK.APP.UPLOAD_TEXT' | translate}}</p> </div> - <textarea pInputTextarea [(ngModel)]="csvText" rows="10" cols="127"></textarea> + <textarea pInputTextarea [(ngModel)]="csvText" rows="10" cols="127" (keyup)="changeDetector = true"></textarea> </div> <div *ngIf="errorMessage !== ''" style="margin-top: 1rem; display: flex; justify-content: start; color: indianred"> @@ -26,7 +26,7 @@ <div style="margin-top: 2rem; display: flex; justify-content: center;"> <button class="btn btn-primary" (click)="uploadText(); this.errorMessage=''" - [disabled]="csvText === ''"> {{'BULK.UPLOAD_BUTTON' | translate}}</button> + [disabled]="csvText === '' || !changeDetector"> {{'BULK.UPLOAD_BUTTON' | translate}}</button> </div> <div *ngIf="showProgressBar" style="margin-top: 20px;"> diff --git a/src/app/appmarket/bulkDeployment/appDeployment/appupload/appupload.component.ts b/src/app/appmarket/bulkDeployment/appDeployment/appupload/appupload.component.ts index b79169b5ca323c1ae7842c8fb08dbcfe4088b115..5afc07c9751b7d1e224e29274259214a320e54b4 100644 --- a/src/app/appmarket/bulkDeployment/appDeployment/appupload/appupload.component.ts +++ b/src/app/appmarket/bulkDeployment/appDeployment/appupload/appupload.component.ts @@ -17,6 +17,7 @@ export class AppuploadComponent implements OnInit { '"Domain 2","instance-2","4.0.0","Param3","Param4"\n'; public errorMessage = ''; + public changeDetector = false; constructor(public readonly deployService: AppdeploymentService, private router: Router, diff --git a/src/app/appmarket/bulkDeployment/bulk-view/bulk-view.component.html b/src/app/appmarket/bulkDeployment/bulk-view/bulk-view.component.html index e8bba2482b2a4165a96f68d104d0026fe43750e6..25267e40cbee8268ab16660d50c92731ebada852 100644 --- a/src/app/appmarket/bulkDeployment/bulk-view/bulk-view.component.html +++ b/src/app/appmarket/bulkDeployment/bulk-view/bulk-view.component.html @@ -1,6 +1,6 @@ <div class="col-sm-12 col-sm-offset-1 col-sm-10 col-md-offset-1 col-md-10"> <div *ngIf="bulk && bulkType === 'DOMAIN' "> - <h3>{{'BULK.DOMAIN.HEADER' | translate}}</h3> + <h3>{{'BULK.DOMAIN.HEADER_VIEW' | translate}}</h3> <div class="" style="padding-bottom: 5rem; margin-top: 3rem"> <label for="id" class="col-sm-2 control-label text-right mt-2">{{ 'BULK.LIST.ID' | translate }}</label> <div class="col-sm-10"> @@ -50,14 +50,18 @@ <tr> <th>{{'BULK.LIST.STATE' | translate}}</th> <th>{{'BULK.LIST.CREATED' | translate}}</th> - <th>{{'BULK.LIST.DETAILS' | translate}}</th> + <th>{{'BULK.LIST.DOMAIN_ID' | translate}}</th> + <th>{{'BULK.LIST.DOMAIN_NAME' | translate}}</th> + <th>{{'BULK.LIST.DOMAIN_CODENAME' | translate}}</th> <th style="width: 5%" scope="col"></th> </tr> <ng-template ngFor let-response [ngForOf]="bulk.entries" let-i="index"> <tr *ngIf="response.type === 'DOMAIN'" class="table-row"> <td>{{'BULK.STATE.' + response.state | translate}}</td> <td>{{response.created}}</td> - <td>{{getDetails(response)}}</td> + <td>{{getDomainId(response)}}</td> + <td>{{getDomainName(response)}}</td> + <td>{{getDomainCodeName(response)}}</td> <td style="width: 5%" class="text-right"> <span class="dropdown"> <a style="display: inline-block" class="dropdown-toggle " aria-expanded="false" aria-haspopup="true" @@ -97,14 +101,18 @@ <tr> <th>{{'BULK.LIST.STATE' | translate}}</th> <th>{{'BULK.LIST.CREATED' | translate}}</th> - <th>{{'BULK.LIST.DETAILS' | translate}}</th> + <th>{{'BULK.LIST.USER_ID' | translate}}</th> + <th>{{'BULK.LIST.USER_NAME' | translate}}</th> + <th>{{'BULK.LIST.EMAIL' | translate}}</th> <th style="width: 5%" scope="col"></th> </tr> - <ng-template ngFor let-replay [ngForOf]="bulk.entries" let-i="index"> - <tr *ngIf="replay.type === 'USER'" class="table-row"> - <td>{{'BULK.STATE.' + replay.state | translate}}</td> - <td>{{replay.created}}</td> - <td>{{getDetails(replay)}}</td> + <ng-template ngFor let-response [ngForOf]="bulk.entries" let-i="index"> + <tr *ngIf="response.type === 'USER'" class="table-row"> + <td>{{'BULK.STATE.' + response.state | translate}}</td> + <td>{{response.created}}</td> + <td>{{getUserId(response)}}</td> + <td>{{getUsername(response)}}</td> + <td>{{getEmail(response)}}</td> <td style="width: 5%" class="text-right"> <span class="dropdown"> <a style="display: inline-block" class="dropdown-toggle " aria-expanded="false" aria-haspopup="true" @@ -112,11 +120,11 @@ <em class="fas fa-cog icon-black icon-bigger"></em> </a> <ul class="dropdown-menu pull-right-drop"> - <li *ngIf="replay.type === 'DOMAIN'"> - <a [routerLink]="['/admin/domains/view/', replay?.details['domainId']]">{{ 'BULK.LIST.MOVE_DOMAIN' | translate }}</a> + <li *ngIf="response.type === 'DOMAIN'"> + <a [routerLink]="['/admin/domains/view/', response?.details['domainId']]">{{ 'BULK.LIST.MOVE_DOMAIN' | translate }}</a> </li> - <li *ngIf="replay.type === 'USER'"> - <a [routerLink]="['/admin/users/view', replay?.details['userId']]">{{ 'BULK.LIST.MOVE_USER' | translate }}</a> + <li *ngIf="response.type === 'USER'"> + <a [routerLink]="['/admin/users/view', response?.details['userId']]">{{ 'BULK.LIST.MOVE_USER' | translate }}</a> </li> </ul> </span> diff --git a/src/app/appmarket/bulkDeployment/bulk-view/bulk-view.component.ts b/src/app/appmarket/bulkDeployment/bulk-view/bulk-view.component.ts index 8511fb0d17ad1751f3b12f3e16e387c4e4299f7f..effc888f2f6908e7ed3ba15638ec1b8094156a63 100644 --- a/src/app/appmarket/bulkDeployment/bulk-view/bulk-view.component.ts +++ b/src/app/appmarket/bulkDeployment/bulk-view/bulk-view.component.ts @@ -51,16 +51,6 @@ export class BulkViewComponent implements OnInit, OnDestroy { }); } - public getDetails(entry: BulkResponse) { - if (entry.type === 'USER') { - return `Username: ${entry.details['userName']} email: ${entry.details['email']} userId: ${entry.details['userId']}` - } else if (entry.type === 'DOMAIN') { - return `DomainId: ${entry.details['domainId']} name: ${entry.details['domainName']}` - } else if (entry.type === 'APPLICATION') { - return `AppInstanceId: ${entry.details['appInstanceId']} name: ${entry.details['appInstanceName']} domain: ${entry.details['domainCodename']}` - } - } - public getAppInstanceId(entry: BulkResponse) { return entry?.details['appInstanceId'] } @@ -73,6 +63,26 @@ export class BulkViewComponent implements OnInit, OnDestroy { return entry?.details['domainCodename'] || entry?.details['domainName'] } + public getUsername(entry: BulkResponse) { + return entry?.details['userName'] + } + + public getEmail(entry: BulkResponse) { + return entry?.details['email'] + } + + public getUserId(entry: BulkResponse) { + return entry?.details['userId'] + } + + public getDomainId(entry: BulkResponse) { + return entry?.details['domainId'] + } + + public getDomainName(entry: BulkResponse) { + return entry?.details['domainName'] + } + public update() { this.refresh = timer(0, 20000).pipe(map(() => { this.deployService.getBulkDeployment(this.bulk.id).subscribe(bulk => { diff --git a/src/app/appmarket/bulkDeployment/domainDeployment/domainupload/domainupload.component.html b/src/app/appmarket/bulkDeployment/domainDeployment/domainupload/domainupload.component.html index 5e43031c77447591746f779f9abe3ec4a49a44ce..71d0eff138b7dc6da3d9f249f33ce97de8f63dc2 100644 --- a/src/app/appmarket/bulkDeployment/domainDeployment/domainupload/domainupload.component.html +++ b/src/app/appmarket/bulkDeployment/domainDeployment/domainupload/domainupload.component.html @@ -1,16 +1,16 @@ <div style="width: 80%; margin: auto; margin-top: 4rem;"> - <div style="margin-bottom: 5rem"> + <div style="margin-bottom: 2rem"> <h2>{{'BULK.DOMAIN.NAVIGATION' | translate}}</h2> - <p>{{'BULK.DOMAIN.INFO' | translate}}</p> + <p class="mt-4">{{'BULK.DOMAIN.UPLOAD' | translate}}</p> </div> <p-fileUpload name="file[]" customUpload="true" (uploadHandler)="myUploader($event)" accept=".csv" - multiple="false"></p-fileUpload> + multiple="false" uploadLabel="{{'BULK.BUTTON' | translate}}"></p-fileUpload> - <div style="margin-top: 2rem; display: flex; justify-content: center; flex-direction: column"> - <div style="margin-top: 2rem; margin-bottom: 1rem"> - <p>{{'BULK.DOMAIN.INFO' | translate}}</p> + <div style="margin-top: 1.5rem; display: flex; justify-content: center; flex-direction: column"> + <div style="margin-top: 1.5rem; margin-bottom: 1rem"> + <p>{{'BULK.APP.UPLOAD_TEXT' | translate}}</p> </div> - <textarea pInputTextarea [(ngModel)]="csvText" rows="10" cols="127"></textarea> + <textarea pInputTextarea [(ngModel)]="csvText" rows="10" cols="127" (keyup)="changeDetector = true"></textarea> </div> <div *ngIf="errorMessage !== ''" style="margin-top: 1rem; display: flex; justify-content: start; color: indianred"> @@ -18,7 +18,7 @@ </div> <div style="margin-top: 2rem; display: flex; justify-content: center;" > - <button class="btn btn-primary" (click)="uploadText(); this.errorMessage=''" [disabled]="csvText === ''"> {{'BULK.UPLOAD_BUTTON' | translate}}</button> + <button class="btn btn-primary" (click)="uploadText(); this.errorMessage=''" [disabled]="csvText === '' || !changeDetector"> {{'BULK.UPLOAD_BUTTON' | translate}}</button> </div> <div *ngIf="showProgressBar" style="margin-top: 20px;"> diff --git a/src/app/appmarket/bulkDeployment/domainDeployment/domainupload/domainupload.component.ts b/src/app/appmarket/bulkDeployment/domainDeployment/domainupload/domainupload.component.ts index 0e7d673719a9b3b24db2d56c69ef39f527ec3168..16d321c4881e9b73e460a0113e38c30e7ff1be18 100644 --- a/src/app/appmarket/bulkDeployment/domainDeployment/domainupload/domainupload.component.ts +++ b/src/app/appmarket/bulkDeployment/domainDeployment/domainupload/domainupload.component.ts @@ -18,6 +18,7 @@ export class DomainuploadComponent implements OnInit { '"ExampleDomain2","TestUser2","","Lab1","email2@domain.com"\n'; public errorMessage = ''; + public changeDetector = false; constructor(private readonly deployService: AppdeploymentService, private router: Router,