diff --git a/src/app/features/home/components/presentationals/home-archive-form/home-archive-detail.presentational.html b/src/app/features/home/components/presentationals/home-archive-form/home-archive-detail.presentational.html index 20bf2b2bb4e9c4b04128358d34c510a6dbd66a43..2e0dcbe0a93018f68ad77446f6f4eab76433ed26 100644 --- a/src/app/features/home/components/presentationals/home-archive-form/home-archive-detail.presentational.html +++ b/src/app/features/home/components/presentationals/home-archive-form/home-archive-detail.presentational.html @@ -58,9 +58,7 @@ <div class="access-level" [class]="colorAccessLevel" > - <dlcm-shared-icon [iconName]="accessLevelIconName" - class="xlg" - ></dlcm-shared-icon> + <dlcm-shared-access-level [accessLevel]="archive.accessLevel"></dlcm-shared-access-level> <span class="label">{{labelTranslateEnum.accessLevel | translate}}</span> <span>{{archive.accessLevelToTranslate | translate}}</span> </div> diff --git a/src/app/features/home/components/presentationals/home-archive-form/home-archive-detail.presentational.ts b/src/app/features/home/components/presentationals/home-archive-form/home-archive-detail.presentational.ts index 2549185368c79b98cbe9d59af33f0cec92f63344..afd12e16a2f7217c3b921ed2e86aa2b2e509a36c 100644 --- a/src/app/features/home/components/presentationals/home-archive-form/home-archive-detail.presentational.ts +++ b/src/app/features/home/components/presentationals/home-archive-form/home-archive-detail.presentational.ts @@ -12,9 +12,9 @@ import {Enums} from "@enums"; import {environment} from "@environments/environment"; import {Archive} from "@home/models/archive.model"; import {GetShortDoiWrapper} from "@shared/components/presentationals/shared-doi-menu/shared-doi-menu.presentational"; -import {IconNameEnum} from "@shared/enums/icon-name.enum"; import {LabelTranslateEnum} from "@shared/enums/label-translate.enum"; import {ViewModeListEnum} from "@shared/enums/view-mode-list.enum"; +import {AccessLevelHelper} from "@shared/helpers/access-level.helper"; import {ObservableOrPromiseOrValue} from "@shared/models/extra-button-toolbar.model"; import {SecurityService} from "@shared/services/security.service"; import { @@ -68,7 +68,6 @@ export class HomeArchiveDetailPresentational extends SharedAbstractPresentationa listInfo: Info[]; - accessLevelIconName: IconNameEnum; colorAccessLevel: "red" | "orange" | "green"; defaultImageArchive: string = `assets/themes/${environment.theme}/toolbar-header-image.svg`; @@ -102,28 +101,10 @@ export class HomeArchiveDetailPresentational extends SharedAbstractPresentationa } ngOnInit(): void { - this._computeAccessLevelIcon(); + this.colorAccessLevel = AccessLevelHelper.getColor(this.archive.accessLevel); this._defineListInfo(); } - private _computeAccessLevelIcon(): void { - switch (this.archive.accessLevel) { - case Enums.Deposit.AccessEnum.RESTRICTED: - this.accessLevelIconName = IconNameEnum.accessLevelRestricted; - this.colorAccessLevel = "orange"; - break; - case Enums.Deposit.AccessEnum.CLOSED: - this.accessLevelIconName = IconNameEnum.accessLevelClosed; - this.colorAccessLevel = "red"; - break; - case Enums.Deposit.AccessEnum.PUBLIC: - default: - this.accessLevelIconName = IconNameEnum.accessLevelPublic; - this.colorAccessLevel = "green"; - break; - } - } - private _defineListInfo(): void { this.listInfo = [ { diff --git a/src/app/features/home/components/presentationals/home-archive-tile/home-archive-tile.presentational.html b/src/app/features/home/components/presentationals/home-archive-tile/home-archive-tile.presentational.html index e080f35ce3da66f9da7f2c1d30a268d942c7b211..6fa91f05ebf38c69c22f125ff8698392b9246430 100644 --- a/src/app/features/home/components/presentationals/home-archive-tile/home-archive-tile.presentational.html +++ b/src/app/features/home/components/presentationals/home-archive-tile/home-archive-tile.presentational.html @@ -22,9 +22,7 @@ <span class="access-level" [class]="colorAccessLevel" > - <dlcm-shared-icon [iconName]="accessLevelIconName" - class="xlg" - ></dlcm-shared-icon> + <dlcm-shared-access-level [accessLevel]="archive.accessLevel"></dlcm-shared-access-level> {{archive.accessLevelToTranslate | translate}} </span> <span class="size"> diff --git a/src/app/features/home/components/presentationals/home-archive-tile/home-archive-tile.presentational.ts b/src/app/features/home/components/presentationals/home-archive-tile/home-archive-tile.presentational.ts index 5e256aebf7578aecd13fc295198f122e19200ef1..e82c621813210d4c1fd2ab651129832e89b1a065 100644 --- a/src/app/features/home/components/presentationals/home-archive-tile/home-archive-tile.presentational.ts +++ b/src/app/features/home/components/presentationals/home-archive-tile/home-archive-tile.presentational.ts @@ -7,10 +7,9 @@ import { Output, } from "@angular/core"; import {SharedAbstractPresentational} from "@app/shared/components/presentationals/shared-abstract/shared-abstract.presentational"; -import {Enums} from "@enums"; import {environment} from "@environments/environment"; import {Archive} from "@home/models/archive.model"; -import {IconNameEnum} from "@shared/enums/icon-name.enum"; +import {AccessLevelHelper} from "@shared/helpers/access-level.helper"; import { BehaviorSubject, Observable, @@ -41,7 +40,6 @@ export class HomeArchiveTilePresentational extends SharedAbstractPresentational defaultImageArchive: string = `assets/themes/${environment.theme}/toolbar-header-image.svg`; - accessLevelIconName: IconNameEnum; colorAccessLevel: "red" | "orange" | "green"; constructor() { @@ -50,25 +48,7 @@ export class HomeArchiveTilePresentational extends SharedAbstractPresentational ngOnInit(): void { super.ngOnInit(); - this._computeAccessLevelIcon(); - } - - private _computeAccessLevelIcon(): void { - switch (this.archive.accessLevel) { - case Enums.Deposit.AccessEnum.RESTRICTED: - this.accessLevelIconName = IconNameEnum.accessLevelRestricted; - this.colorAccessLevel = "orange"; - break; - case Enums.Deposit.AccessEnum.CLOSED: - this.accessLevelIconName = IconNameEnum.accessLevelClosed; - this.colorAccessLevel = "red"; - break; - case Enums.Deposit.AccessEnum.PUBLIC: - default: - this.accessLevelIconName = IconNameEnum.accessLevelPublic; - this.colorAccessLevel = "green"; - break; - } + this.colorAccessLevel = AccessLevelHelper.getColor(this.archive.accessLevel); } download(mouseEvent: MouseEvent): void { diff --git a/src/app/shared/components/presentationals/shared-access-level/shared-access-level.presentational.ts b/src/app/shared/components/presentationals/shared-access-level/shared-access-level.presentational.ts index 130b527fd5e7a0b4da30321ba0cb0ca79754c97a..287215a7872fcd873363a4681ae4a3d84cb4f2b1 100644 --- a/src/app/shared/components/presentationals/shared-access-level/shared-access-level.presentational.ts +++ b/src/app/shared/components/presentationals/shared-access-level/shared-access-level.presentational.ts @@ -32,7 +32,7 @@ export class SharedAccessLevelPresentational extends SharedAbstractPresentationa } @Input() - size: string; + size: string = "xlg"; @Input() withTooltip: boolean = false; diff --git a/src/app/shared/components/presentationals/shared-data-table/shared-data-table.presentational.html b/src/app/shared/components/presentationals/shared-data-table/shared-data-table.presentational.html index 926b87667b4c4a2494d996c7dd1716fa6742afec..7c9eba9555f73f7142d58ee20e7d20b76b087e8b 100644 --- a/src/app/shared/components/presentationals/shared-data-table/shared-data-table.presentational.html +++ b/src/app/shared/components/presentationals/shared-data-table/shared-data-table.presentational.html @@ -447,7 +447,6 @@ <dlcm-shared-access-level *ngSwitchCase="dataTableComponentEnum.accessLevel" [accessLevel]="getCellData(rowData, col)" [withTooltip]="true" - [size]="'xlg'" ></dlcm-shared-access-level> </ng-container> diff --git a/src/app/shared/helpers/access-level.helper.ts b/src/app/shared/helpers/access-level.helper.ts new file mode 100644 index 0000000000000000000000000000000000000000..09033e66d45a0d7b689c8bf9ad12285bb7ef07b7 --- /dev/null +++ b/src/app/shared/helpers/access-level.helper.ts @@ -0,0 +1,15 @@ +import {Enums} from "@enums"; + +export class AccessLevelHelper { + static getColor(accessLevel: Enums.Deposit.AccessEnum): "red" | "orange" | "green" { + switch (accessLevel) { + case Enums.Deposit.AccessEnum.RESTRICTED: + return "orange"; + case Enums.Deposit.AccessEnum.CLOSED: + return "red"; + case Enums.Deposit.AccessEnum.PUBLIC: + default: + return "green"; + } + } +} \ No newline at end of file