openaire-library/utils/properties/env-properties.ts

176 lines
5.7 KiB
TypeScript
Raw Normal View History

export type Environment = "development" | "test" | "beta" | "production";
export type Dashboard = "explore" | "connect" | "monitor" | "aggregator" | "eosc" | "developers" | "faircore4eosc";
export type PortalType = "explore" | "connect" | "community" | "monitor" | "funder" | "ri" | "project" | "organization" | "aggregator" | "eosc" | "faircore4eosc" | "irish";
export interface EnvProperties {
environment?: Environment;
adminToolsPortalType?: PortalType;
dashboard?: Dashboard;
isDashboard?: boolean;
domain?: string;
enablePiwikTrack?: boolean;
useCache?: boolean;
useLongCache?: boolean;
showAddThis?: boolean;
showContent?: boolean;
enableEoscDataTransfer?:boolean;
statisticsFrameAPIURL?: string; //delete?
statisticsFrameNewAPIURL?: string;
2023-02-08 10:21:16 +01:00
bipFrameAPIURL?: string;
useNewStatistisTool?: boolean; //delete?
useOldStatisticsSchema?: boolean;
monitorStatsFrameUrl?:string;
disableFrameLoad?:boolean
statisticsAPIURL?: string;
impactFactorsAPIURL?: string; //???
enermapsURL?: string;
claimsAPIURL?: string;
searchAPIURLLAst?: string;
searchResourcesAPIURL?: string;
openCitationsAPIURL?: string;
csvAPIURL?: string;
searchCrossrefAPIURL?: string;
searchDataciteAPIURL?: string;
searchOrcidURL?: string;
orcidURL?: string;
[Trunk | Library]: 1. error-interceptor.service.ts: Add "properties.orcidAPIURL" in UNAUTHORIZED_WHITELIST. 2. resultLanding.component.html: If result has identifiers and user is logged in, call <orcid-work>. 3. resultLanding.module.ts: Import OrcidModule. 4. searchResult.component.ts: If user is logged in, call "orcidService.getPutCodes()" and set orcidPutCodes of previewResults. 5. searchResults.module.ts: Add "OrcidService" in providers. 6. searchResearchResults.service.ts: In method "parseResults()", call "this.parsingFunctions.parseIdentifiers(resData['pid'])" to set identifiers. 7. customOptions.class.ts: Change method return type: "public static registryOptions(): any" --> public static registryOptions(): {}". (caused problem in return type of services (e.g. HttpEvent<string> instead of string). 8. searchResult.ts: Add field "identifiers: Map<string, string[]>". 9. env-properties.ts: Add field "orcidAPIURL". 10. result-preview.component.html: a. If result has identifiers and user is logged in, call <orcid-work>. b. In bottom line with impact factors and orcid, add class "result-preview-bottom" (set color to #747474 (like muted text) when not on hover). 11. result-preview.component.ts: Add field "loggedIn" and check on init if user is logged in (via Session). 12. result-preview.module.ts: Import OrcidModule. 13. result-preview.ts: Add field "orcidPutCodes" | In method "searchResultConvert()", set resultPreview.identifiers with all identifiers (not only dois). git-svn-id: https://svn.driver.research-infrastructures.eu/driver/dnet40/modules/uoa-services-library/trunk/ng-openaire-library/src/app@60231 d315682c-612b-4755-9ff5-7f18f6832af3
2021-01-13 19:30:25 +01:00
orcidAPIURL?: string;
orcidTokenURL?: string;
orcidClientId?: string;
doiURL?: string;
pmcURL?: string;
pmidURL?: string;
handleURL?: string;
cordisURL?: string;
openDoarURL?: string;
r3DataURL?: string;
swhURL?: string;
fairSharingURL?: string,
eoscMarketplaceURL?: string,
sherpaURL?: string;
sherpaURLSuffix?: string;
zenodo?: string;
zenodoCommunities?: string;
helpdesk?: string;
helpdeskEmail?: string;
utilsService?: string;
vocabulariesAPI?: string;
piwikBaseUrl?: string;
piwikSiteId?: string;
loginUrl?: string;
registryUrl?: string;
logoutUrl?: string;
userInfoUrl?: string;
clientManagementUrl?: string,
developersApiUrl?: string,
cookieDomain?: string;
feedbackmail?: string;
feedbackmailForMissingEntities?: string;
cacheUrl?: string;
deleteCacheUrl?: string;
deleteBrowserCacheUrl?: string;
monitorServiceAPIURL?: string;
adminToolsAPIURL?: string;
adminToolsCommunity?: string;
useHelpTexts?:boolean;
contextsAPI?: string;
communityAPI?: string;
communitiesAPI?: string;
datasourcesAPI?: string;
miningBackendURL?: string;
csvLimit?: number;
pagingLimit?: number;
resultsPerPage?: number;
baseLink?: string;
baseOpenaireLink?: string;
afterLoginRedirectLink?: string;
searchLinkToResult?: string;
searchLinkToPublication?: string;
searchLinkToProject?: string;
searchLinkToDataProvider?: string;
2022-05-13 14:57:31 +02:00
searchLinkToService?: string;
searchLinkToDataset?: string;
searchLinkToSoftwareLanding?: string;
searchLinkToOrp?: string;
searchLinkToOrganization?: string;
//Search pages
searchLinkToAll?: string;
searchLinkToCommunities?: string;
searchLinkToStakeholders?: string;
searchLinkToPublications?: string;
searchLinkToDataProviders?: string;
2022-05-13 14:57:31 +02:00
searchLinkToServices?: string;
searchLinkToProjects?: string;
searchLinkToDatasets?: string;
searchLinkToSoftware?: string;
searchLinkToOrps?: string;
searchLinkToOrganizations?: string;
searchLinkToCompatibleDataProviders?: string;
searchLinkToEntityRegistriesDataProviders?: string;
searchLinkToJournals?: string;
searchLinkToResults?: string;
//Advanced Search for pages
searchLinkToAdvancedPublications?: string;
searchLinkToAdvancedProjects?: string;
searchLinkToAdvancedDatasets?: string;
searchLinkToAdvancedSoftware?: string;
searchLinkToAdvancedOrps?: string;
searchLinkToAdvancedDataProviders?: string;
2022-05-13 14:57:31 +02:00
searchLinkToAdvancedServices?: string;
searchLinkToAdvancedOrganizations?: string;
searchLinkToAdvancedResults?: string;
errorLink?: string
lastIndexInformationLink?: string;
showLastIndexInformationLink?: boolean;
widgetLink?: string;
claimsInformationLink?: string;
depositLearnHowPage?: string;
depositSearchPage?: string;
shareInZenodoPage?: string;
// recaptcha site key
reCaptchaSiteKey?: string;
// contact us recipients
admins?: string[];
lastIndexUpdate?: string; //delete?
indexInfoAPI?: string;
altMetricsAPIURL?: string;
b2noteAPIURL?: string; //delete?
adminPortalURL?: string;
sushiliteURL?: string;
notificationsAPIURL?: string;
myOrcidLinksPage?: string;
footerGrantText?: string;
egiNotebookLink?: string;
connectPortalUrl?;
eoscDataTransferAPI?;
eoscDataTransferLoginUrl?;
eoscDataTransferDestinations?;
hasMachineCache?: boolean;
}
export function checkPropertyValues(properties:EnvProperties){
let keys = Object.keys(properties);
let Warn = 0;
// console.debug( "Environment: " +properties.environment )
for(let attribute of keys){
// console.debug(attribute + ": " +properties[attribute] + " " )
if (properties.environment == "production" && typeof properties[attribute] == 'string' && (properties[attribute].indexOf("beta.") != -1 || properties[attribute].indexOf("uoa.di.gr") != -1)) {
console.warn("shouldn't be prod? " + attribute + ": " + properties[attribute]);
Warn++;
}
if (properties.environment != "production" && typeof properties[attribute] == 'string' && properties[attribute].indexOf("https://services.") != -1) {
console.warn("should be prod? " + attribute + ": " + properties[attribute]);
Warn++;
}
if (properties.environment != "development" && typeof properties[attribute] == 'string' && properties[attribute].indexOf("uoa.di.gr") != -1) {
console.warn("should be in dev? " + attribute + ": " + properties[attribute]);
Warn++;
}
}
/*if(Warn > 0){
alert("check properties: " + Warn)
}*/
}