This is an automated email from the ASF dual-hosted git repository. hshpak pushed a commit to branch fix/DATALAB-2800/possibility-to-add-several-users in repository https://gitbox.apache.org/repos/asf/incubator-datalab.git
commit a7cbe5ad86e060a95944bff68fcb6bddf767aa83 Author: Hennadii_Shpak <[email protected]> AuthorDate: Thu May 5 17:41:40 2022 +0300 added possibility to add several users --- .../app/administration/roles/roles.component.ts | 41 ++++++++++++++-------- 1 file changed, 27 insertions(+), 14 deletions(-) diff --git a/services/self-service/src/main/resources/webapp/src/app/administration/roles/roles.component.ts b/services/self-service/src/main/resources/webapp/src/app/administration/roles/roles.component.ts index dc119c7db..1f9b8ac06 100644 --- a/services/self-service/src/main/resources/webapp/src/app/administration/roles/roles.component.ts +++ b/services/self-service/src/main/resources/webapp/src/app/administration/roles/roles.component.ts @@ -26,7 +26,7 @@ import { RolesGroupsService, HealthStatusService, ApplicationSecurityService, Ap import { CheckUtils, SortUtils } from '../../core/util'; import { DICTIONARY } from '../../../dictionary/global.dictionary'; import { ProgressBarService } from '../../core/services/progress-bar.service'; -import { ConfirmationDialogComponent, ConfirmationDialogType } from '../../shared/modal-dialog/confirmation-dialog'; +import {ConfirmationDialogComponent, ConfirmationDialogType} from '../../shared'; @Component({ selector: 'datalab-roles', @@ -315,11 +315,20 @@ export class RolesComponent implements OnInit { return; } if (user.value && user.value.trim()) { - item.users instanceof Array ? item.users.push(user.value.trim()) : item.users = [user.value.trim()]; + item.users = [...item.users, ...this.normalizeUserList(user.value)]; } user.value = ''; } + private normalizeUserList(userNameList: string): string[] { + if (userNameList.includes(',')) { + return userNameList.split(',') + .map(userName => userName.trim()) + .filter(userName => userName); + } + return [ userNameList ]; + } + private getEnvironmentHealthStatus() { this.healthStatusService.getEnvironmentHealthStatus() .subscribe((result: any) => { @@ -341,9 +350,13 @@ export class RolesComponent implements OnInit { } public checkIfUserAdded(element: any, value: string) { - element.isUserAdded = element.users - .map(v => v.toLowerCase()) - .includes(value.toLowerCase()); + if (value.includes(',')) { + element.isUserAdded = element.users.some(userName => this.normalizeUserList(value).includes(userName)); + } else { + element.isUserAdded = element.users + .map(v => v.toLowerCase()) + .includes(value.toLowerCase()); + } } } @@ -367,18 +380,18 @@ export class RolesComponent implements OnInit { </p> </div> <div class="text-center"> - <button - type="button" - class="butt" - mat-raised-button + <button + type="button" + class="butt" + mat-raised-button (click)="dialogRef.close()" > No </button> - <button - type="button" - class="butt butt-success" - mat-raised-button + <button + type="button" + class="butt butt-success" + mat-raised-button (click)="dialogRef.close(true)" > Yes @@ -393,4 +406,4 @@ export class ConfirmDeleteUserAccountDialogComponent { public dialogRef: MatDialogRef<ConfirmDeleteUserAccountDialogComponent>, @Inject(MAT_DIALOG_DATA) public data: any ) { } -} \ No newline at end of file +} --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
