diff --git a/connect/connectHelper.ts b/connect/connectHelper.ts index 14542fa2..1e8b32c4 100644 --- a/connect/connectHelper.ts +++ b/connect/connectHelper.ts @@ -6,6 +6,9 @@ import {CommunityInfo} from "./community/communityInfo"; export class ConnectHelper { public static getCommunityFromDomain(domain: string): string{ + if(properties.adminToolsPortalType === 'irish') { + return properties.adminToolsCommunity; + } if(properties.environment == "development" && (properties.adminToolsPortalType == "connect" || properties.adminToolsPortalType == "community" || properties.adminToolsPortalType == "aggregator" || properties.adminToolsPortalType == "eosc")) { diff --git a/dashboard/portal/portalHelper.ts b/dashboard/portal/portalHelper.ts index bc08cd2a..5239ecb4 100644 --- a/dashboard/portal/portalHelper.ts +++ b/dashboard/portal/portalHelper.ts @@ -1,17 +1,17 @@ import {Option} from "../../sharedComponents/input/input.component"; -import {StakeholderEntities} from "../../monitor/entities/stakeholder"; +import {StakeholderConfiguration} from "../../monitor-admin/utils/indicator-utils"; -export class PortalUtils{ +export class PortalUtils { portalTypes: Option[] = [ {value: 'explore', label: 'Explore Portal'}, {value: 'connect', label: 'Connect portal'}, {value: 'monitor', label: 'Monitor portal'}, {value: 'community', label: 'Community Gateway'}, - {value: 'funder', label: StakeholderEntities.FUNDER + ' Dashboard'}, - {value: 'ri', label: StakeholderEntities.RI + ' Dashboard'}, - {value: 'organization', label: StakeholderEntities.ORGANIZATION + ' Dashboard'}, - {value: 'project', label: StakeholderEntities.PROJECT + ' Dashboard'} + {value: 'funder', label: StakeholderConfiguration.ENTITIES.funder + ' ' + StakeholderConfiguration.ENTITIES.stakeholder}, + {value: 'ri', label: StakeholderConfiguration.ENTITIES.ri + ' ' + StakeholderConfiguration.ENTITIES.stakeholder}, + {value: 'organization', label: StakeholderConfiguration.ENTITIES.organization + ' ' + StakeholderConfiguration.ENTITIES.stakeholder}, + {value: 'project', label: StakeholderConfiguration.ENTITIES.project + ' ' + StakeholderConfiguration.ENTITIES.stakeholder}, ]; } diff --git a/dashboard/sharedComponents/sidebar/sidebar-base.component.ts b/dashboard/sharedComponents/sidebar/sidebar-base.component.ts new file mode 100644 index 00000000..a7d23d1a --- /dev/null +++ b/dashboard/sharedComponents/sidebar/sidebar-base.component.ts @@ -0,0 +1,42 @@ +import {ChangeDetectorRef, Directive, OnInit} from "@angular/core"; +import {BaseComponent} from "../../../sharedComponents/base/base.component"; +import {MenuItem} from "../../../sharedComponents/menu"; +import {LayoutService} from "./layout.service"; + +@Directive() +export class SidebarBaseComponent extends BaseComponent implements OnInit { + hasSidebar: boolean = false; + hasInternalSidebar: boolean = false; + /** + * Menu Items + * */ + sideBarItems: MenuItem[] = []; + backItem: MenuItem = null; + + protected layoutService: LayoutService; + protected cdr: ChangeDetectorRef; + + constructor() { + super(); + } + + ngOnInit() { + this.subscriptions.push(this.layoutService.hasSidebar.subscribe(hasSidebar => { + this.hasSidebar = hasSidebar; + this.cdr.detectChanges(); + })); + this.subscriptions.push(this.layoutService.hasInternalSidebar.subscribe(hasInternalSidebar => { + this.hasInternalSidebar = hasInternalSidebar; + this.cdr.detectChanges(); + })); + this.layoutService.setOpen(true); + } + + public get open() { + return this.layoutService.open; + } + + public get hover() { + return this.layoutService.hover; + } +} diff --git a/login/utils/helper.class.ts b/login/utils/helper.class.ts index 8fdd6229..c58991ac 100644 --- a/login/utils/helper.class.ts +++ b/login/utils/helper.class.ts @@ -1,4 +1,5 @@ -import {stakeholderTypes} from "../../monitor/entities/stakeholder"; +import {StakeholderConfiguration} from "../../monitor-admin/utils/indicator-utils"; + export class User { email: string; @@ -100,7 +101,7 @@ export class Session { } public static isMonitorCurator(user: User): boolean { - return stakeholderTypes.filter(stakeholderType => this.isTypeCurator(stakeholderType.value, user)).length > 0; + return StakeholderConfiguration.TYPES.filter(stakeholderType => this.isTypeCurator(stakeholderType.value, user)).length > 0; } public static isCommunityCurator(user: User): boolean { @@ -112,7 +113,7 @@ export class Session { } public static isCurator(type: string, user: User): boolean { - return (type === 'community' || stakeholderTypes.find(stakeholderType => stakeholderType.value == type)) && this.isTypeCurator(type, user); + return (type === 'community' || StakeholderConfiguration.TYPES.find(stakeholderType => stakeholderType.value == type)) && this.isTypeCurator(type, user); } public static isPortalAdministrator(user: User): boolean { diff --git a/monitor-admin/general/edit-stakeholder/edit-stakeholder.component.ts b/monitor-admin/general/edit-stakeholder/edit-stakeholder.component.ts index f84f197d..b9025f20 100644 --- a/monitor-admin/general/edit-stakeholder/edit-stakeholder.component.ts +++ b/monitor-admin/general/edit-stakeholder/edit-stakeholder.component.ts @@ -1,11 +1,8 @@ -import {Component, Input, OnDestroy, ViewChild} from "@angular/core"; +import {Component, Input, ViewChild} from "@angular/core"; import {Stakeholder} from "../../../monitor/entities/stakeholder"; import {UntypedFormBuilder, UntypedFormGroup, Validators} from "@angular/forms"; -import {StakeholderUtils} from "../../utils/indicator-utils"; import {Option} from "../../../sharedComponents/input/input.component"; import {Subscription} from "rxjs"; -import {EnvProperties} from "../../../utils/properties/env-properties"; -import {properties} from "src/environments/environment"; import {StakeholderService} from "../../../monitor/services/stakeholder.service"; import {UtilitiesService} from "../../../services/utilities.service"; import {Role, Session, User} from "../../../login/utils/helper.class"; @@ -16,121 +13,132 @@ import {NotificationUtils} from "../../../notifications/notification-utils"; import {Notification} from "../../../notifications/notifications"; import {NotificationHandler} from "../../../utils/notification-handler"; import {StatsProfilesService} from "../../utils/services/stats-profiles.service"; +import {StakeholderBaseComponent} from "../../utils/stakeholder-base.component"; @Component({ selector: 'edit-stakeholder', template: ` -