diff --git a/claims/claim-utils/displayClaims/displayClaims.component.html b/claims/claim-utils/displayClaims/displayClaims.component.html index 2f477b41..d7fc1c86 100644 --- a/claims/claim-utils/displayClaims/displayClaims.component.html +++ b/claims/claim-utils/displayClaims/displayClaims.component.html @@ -1,4 +1,4 @@ - +
diff --git a/claims/claim-utils/displayClaims/displayClaims.component.ts b/claims/claim-utils/displayClaims/displayClaims.component.ts index 58ccde80..8e4e4835 100644 --- a/claims/claim-utils/displayClaims/displayClaims.component.ts +++ b/claims/claim-utils/displayClaims/displayClaims.component.ts @@ -9,6 +9,7 @@ import {AlertModal} from '../../../utils/modal/alert'; import {Session} from '../../../login/utils/helper.class'; import{EnvProperties} from '../../../utils/properties/env-properties'; import {LoginErrorCodes} from '../../../login/utils/guardHelper.class'; +import { SEOService } from '../../../sharedComponents/SEO/SEO.service'; @Component({ @@ -21,16 +22,20 @@ export class DisplayClaimsComponent { properties:EnvProperties; public searchTermStream = new Subject(); - constructor (private _claimService: ClaimsService, private route: ActivatedRoute, private _router:Router, private location: Location) { + constructor (private _claimService: ClaimsService, private route: ActivatedRoute, private _router:Router, private location: Location, +private seoService: SEOService) { } ngOnInit() { this.route.data .subscribe((data: { envSpecific: EnvProperties }) => { this.properties = data.envSpecific; + this.url = data.envSpecific.baseLink+this._router.url; }); this.sub = this.route.queryParams.subscribe(params => { + this.seoService.createLinkForCanonicalURL(false); + if( this.myClaims){ this.fetchBy = "User"; this.fetchId = Session.getUserEmail(); @@ -120,6 +125,9 @@ export class DisplayClaimsComponent { claimsDeleted:number = 0; @Input() communityId:string = null; + + url=null; + getClaims () { if(!Session.isLoggedIn()){ this.userValidMessage = "User session has expired. Please login again."; diff --git a/claims/claim-utils/displayClaims/displayClaims.module.ts b/claims/claim-utils/displayClaims/displayClaims.module.ts index f4cea6c1..236de06a 100644 --- a/claims/claim-utils/displayClaims/displayClaims.module.ts +++ b/claims/claim-utils/displayClaims/displayClaims.module.ts @@ -9,11 +9,13 @@ import {AlertModalModule} from '../../../utils/modal/alertModal.module'; import {ClaimEntityFormatterModule} from '../entityFormatter/claimEntityFormatter.module'; import {PagingModule } from '../../../utils/paging.module'; import {HelperModule} from '../../../utils/helper/helper.module'; +import {Schema2jsonldModule} from '../../../sharedComponents/schema2jsonld/schema2jsonld.module'; +import { SEOServiceModule } from '../../../sharedComponents/SEO/SEOService.module'; @NgModule({ imports: [ CommonModule, FormsModule, RouterModule, ClaimServiceModule, LoadingModalModule, AlertModalModule, -ClaimEntityFormatterModule, PagingModule, HelperModule +ClaimEntityFormatterModule, PagingModule, HelperModule, Schema2jsonldModule, SEOServiceModule ], declarations: [ diff --git a/claims/directLinking/directLinking.component.html b/claims/directLinking/directLinking.component.html index 91131770..31791dbf 100644 --- a/claims/directLinking/directLinking.component.html +++ b/claims/directLinking/directLinking.component.html @@ -1,6 +1,7 @@
+
diff --git a/claims/directLinking/directLinking.component.ts b/claims/directLinking/directLinking.component.ts index e9dd3948..99969942 100644 --- a/claims/directLinking/directLinking.component.ts +++ b/claims/directLinking/directLinking.component.ts @@ -12,6 +12,7 @@ import {SearchPublicationsService} from '../../services/searchPublications.se import {SearchDatasetsService} from '../../services/searchDatasets.service'; import {SearchSoftwareService} from '../../services/searchSoftware.service'; import {SearchOrpsService} from '../../services/searchOrps.service'; +import { SEOService } from '../../sharedComponents/SEO/SEO.service'; @Component({ @@ -39,21 +40,25 @@ export class DirectLinkingComponent { properties:EnvProperties; @Input() communityId:string= null; localStoragePrefix:string = ""; + url=null; constructor (private _router: Router, private route: ActivatedRoute, private entitySearch:EntitiesSearchService, private publicationsSearch:SearchPublicationsService, private datasetsSearch:SearchDatasetsService, private softwareSearch:SearchSoftwareService,private ORPSearch:SearchOrpsService, - private _meta: Meta, private _title: Title) { + private _meta: Meta, private _title: Title, private seoService: SEOService ) { var title = "OpenAIRE | Direct Linking"; this._meta.updateTag({content:title},"property='og:title'"); this._title.setTitle(title); + this.seoService.createLinkForCanonicalURL(false); + } ngOnInit() { this.route.data .subscribe((data: { envSpecific: EnvProperties }) => { this.properties = data.envSpecific; + this.url = data.envSpecific.baseLink+this._router.url; }); diff --git a/claims/directLinking/directLinking.module.ts b/claims/directLinking/directLinking.module.ts index 5c07c92d..d22217e2 100644 --- a/claims/directLinking/directLinking.module.ts +++ b/claims/directLinking/directLinking.module.ts @@ -21,6 +21,8 @@ import {ClaimProjectsSearchFormModule} from '../claim-utils/claimProjectSearchFo import {ClaimResultSearchFormModule} from '../claim-utils/claimResultSearchForm.module'; import {IsRouteEnabled} from '../../error/isRouteEnabled.guard'; import {OrpsServiceModule} from '../../services/orpsService.module'; +import {Schema2jsonldModule} from '../../sharedComponents/schema2jsonld/schema2jsonld.module'; +import { SEOServiceModule } from '../../sharedComponents/SEO/SEOService.module'; @NgModule({ @@ -28,7 +30,7 @@ import {OrpsServiceModule} from '../../services/orpsService.module'; SharedModule, SelectedProjectsModule, SelectedContextsModule, SelectedPublicationsModule, InsertClaimsModule, EntitySearchServiceModule, PublicationsServiceModule, DatasetsServiceModule, StartOverModule, HelperModule, - ClaimContextSearchFormModule, ClaimProjectsSearchFormModule, ClaimResultSearchFormModule, OrpsServiceModule + ClaimContextSearchFormModule, ClaimProjectsSearchFormModule, ClaimResultSearchFormModule, OrpsServiceModule, Schema2jsonldModule, SEOServiceModule ], diff --git a/claims/linking/linkingGeneric.component.html b/claims/linking/linkingGeneric.component.html index f3255e55..245c2c0f 100644 --- a/claims/linking/linkingGeneric.component.html +++ b/claims/linking/linkingGeneric.component.html @@ -1,6 +1,7 @@
+
diff --git a/claims/linking/linkingGeneric.component.ts b/claims/linking/linkingGeneric.component.ts index 83929643..e1b38c4e 100644 --- a/claims/linking/linkingGeneric.component.ts +++ b/claims/linking/linkingGeneric.component.ts @@ -10,6 +10,7 @@ import {ClaimProject, ClaimResult} from '../claim-utils/claimEntities.class'; import {EntitiesSearchService} from '../../utils/entitiesAutoComplete/entitySearch.service'; import {SearchPublicationsService} from '../../services/searchPublications.service'; import {SearchDatasetsService} from '../../services/searchDatasets.service'; +import { SEOService } from '../../sharedComponents/SEO/SEO.service'; declare var UIkit:any; @@ -42,20 +43,25 @@ export class LinkingGenericComponent { sub:any =null; properties:EnvProperties; localStoragePrefix:string = "linking_"; + url=null; constructor (private _router: Router, private route: ActivatedRoute, private entitySearch:EntitiesSearchService, private publicationsSearch:SearchPublicationsService, private datasetsSearch:SearchDatasetsService, - private _meta: Meta, private _title: Title ) { + private _meta: Meta, private _title: Title, + private seoService: SEOService ) { var title = "OpenAIRE | Linking"; this._meta.updateTag({content:title},"property='og:title'"); this._title.setTitle(title); + this.seoService.createLinkForCanonicalURL(false); + } ngOnInit() { this.route.data .subscribe((data: { envSpecific: EnvProperties }) => { this.properties = data.envSpecific; + this.url = data.envSpecific.baseLink+this._router.url; }); if( typeof localStorage !== 'undefined') { diff --git a/claims/linking/linkingGeneric.module.ts b/claims/linking/linkingGeneric.module.ts index 86b70d8f..f5f6626c 100644 --- a/claims/linking/linkingGeneric.module.ts +++ b/claims/linking/linkingGeneric.module.ts @@ -15,13 +15,16 @@ import {BulkClaimModule} from './bulkClaim/bulkClaim.module'; import {ClaimResultSearchFormModule} from '../claim-utils/claimResultSearchForm.module'; import {HelperModule} from '../../utils/helper/helper.module'; import {IsRouteEnabled} from '../../error/isRouteEnabled.guard'; +import {Schema2jsonldModule} from '../../sharedComponents/schema2jsonld/schema2jsonld.module'; +import { SEOServiceModule } from '../../sharedComponents/SEO/SEOService.module'; @NgModule({ imports: [ SharedModule, SelectedProjectsModule, SelectedContextsModule, SelectedPublicationsModule, InsertClaimsModule, StartOverModule, - ClaimContextSearchFormModule, ClaimProjectsSearchFormModule, BulkClaimModule, ClaimResultSearchFormModule, HelperModule + ClaimContextSearchFormModule, ClaimProjectsSearchFormModule, BulkClaimModule, ClaimResultSearchFormModule, + HelperModule, Schema2jsonldModule, SEOServiceModule ], providers:[LoginGuard, PreviousRouteRecorder, IsRouteEnabled], declarations: [ diff --git a/deposit/datasets/depositBySubjectResult.component.html b/deposit/datasets/depositBySubjectResult.component.html index 8b5e31f5..d6c92f38 100644 --- a/deposit/datasets/depositBySubjectResult.component.html +++ b/deposit/datasets/depositBySubjectResult.component.html @@ -2,6 +2,7 @@
+
diff --git a/deposit/datasets/depositBySubjectResult.component.ts b/deposit/datasets/depositBySubjectResult.component.ts index c1a59f70..b4b61e39 100644 --- a/deposit/datasets/depositBySubjectResult.component.ts +++ b/deposit/datasets/depositBySubjectResult.component.ts @@ -15,6 +15,7 @@ import {RouterHelper} from '../../utils/routerHelper.class'; import {SearchDataprovidersService} from '../../services/searchDataproviders.service'; import {OrganizationService} from '../../services/organization.service'; import {PiwikService} from '../../utils/piwik/piwik.service'; +import { SEOService } from '../../sharedComponents/SEO/SEO.service'; @Component({ selector: 'deposit-by-subject-result', @@ -46,13 +47,15 @@ export class DepositBySubjectResultComponent { sub: any; piwiksub: any; properties:EnvProperties; + url=null; constructor (private _router: Router, private route: ActivatedRoute, private _searchDataprovidersService: SearchDataprovidersService, private _meta: Meta, private _title: Title, - private _piwikService:PiwikService) { + private _piwikService:PiwikService, + private seoService: SEOService) { this.fetchDataproviders = new FetchDataproviders(this._searchDataprovidersService); @@ -63,6 +66,8 @@ export class DepositBySubjectResultComponent { this.updateTitle(title); this.updateDescription(description); + this.seoService.createLinkForCanonicalURL(false); + } ngOnInit() { @@ -71,6 +76,8 @@ export class DepositBySubjectResultComponent { this.properties = data.envSpecific; this.updateUrl(data.envSpecific.baseLink+this._router.url); this.zenodo = this.properties.zenodo; + this.url = data.envSpecific.baseLink+this._router.url; + if(this.properties.enablePiwikTrack && (typeof document !== 'undefined')){ this.piwiksub = this._piwikService.trackView(this.properties, "Deposit "+this.requestFor, this.piwikSiteId).subscribe(); } diff --git a/deposit/datasets/depositBySubjectResults.module.ts b/deposit/datasets/depositBySubjectResults.module.ts index 6445da0c..e0bfa1b0 100644 --- a/deposit/datasets/depositBySubjectResults.module.ts +++ b/deposit/datasets/depositBySubjectResults.module.ts @@ -12,13 +12,15 @@ import {DataProvidersServiceModule} from '../../services/dataProvidersService.mo import {SearchResultsModule } from '../../searchPages/searchUtils/searchResults.module'; import {HelperModule} from '../../utils/helper/helper.module'; import {IsRouteEnabled} from '../../error/isRouteEnabled.guard'; +import {Schema2jsonldModule} from '../../sharedComponents/schema2jsonld/schema2jsonld.module'; +import { SEOServiceModule } from '../../sharedComponents/SEO/SEOService.module'; @NgModule({ imports: [ CommonModule, FormsModule, DepositModule, SearchResultsModule, DataProvidersServiceModule, PagingModule, - HelperModule + HelperModule, Schema2jsonldModule, SEOServiceModule ], declarations: [ diff --git a/deposit/deposit.component.html b/deposit/deposit.component.html index aedb9780..448ea361 100644 --- a/deposit/deposit.component.html +++ b/deposit/deposit.component.html @@ -2,6 +2,8 @@
Deposit {{requestFor}}
+ +
diff --git a/deposit/deposit.component.ts b/deposit/deposit.component.ts index 9c3d2897..55ce69db 100644 --- a/deposit/deposit.component.ts +++ b/deposit/deposit.component.ts @@ -7,6 +7,7 @@ import {Observable} from 'rxjs/Observable'; import {EnvProperties} from '../utils/properties/env-properties'; import {PiwikService} from '../utils/piwik/piwik.service'; +import { SEOService } from '../sharedComponents/SEO/SEO.service'; @Component({ @@ -40,14 +41,15 @@ export class DepositComponent { piwiksub:any; properties:EnvProperties; - + url=null; constructor (private route: ActivatedRoute, private _router: Router, private _meta: Meta, private _title: Title, - private _piwikService:PiwikService) { + private _piwikService:PiwikService, + private seoService: SEOService ) { var title = "Deposit "+this.requestFor; var description = "Openaire, repositories, open access, content provider, compatibility, organization, deposit "+ this.requestFor; - + this.seoService.createLinkForCanonicalURL(false); this.updateTitle(title); this.updateDescription(description); } @@ -62,7 +64,7 @@ export class DepositComponent { this.ercGuidlines = this.properties.ercGuidlines this.helpdesk = this.properties.helpdesk; this.updateUrl(data.envSpecific.baseLink+this._router.url); - + this.url = data.envSpecific.baseLink+this._router.url; if(this.properties.enablePiwikTrack && (typeof document !== 'undefined')){ this.piwiksub = this._piwikService.trackView(this.properties, "Deposit "+this.requestFor, this.piwikSiteId).subscribe(); } diff --git a/deposit/deposit.module.ts b/deposit/deposit.module.ts index 8eaf0b55..1ad7098f 100644 --- a/deposit/deposit.module.ts +++ b/deposit/deposit.module.ts @@ -15,6 +15,8 @@ import {PiwikServiceModule} from '../utils/piwik/piwikService.module'; import {HelperModule} from '../utils/helper/helper.module'; import { DepositBySubjectComponent } from './datasets/depositBySubject.component'; import {IFrameModule} from '../utils/iframe.module'; +import {Schema2jsonldModule} from '../sharedComponents/schema2jsonld/schema2jsonld.module'; +import { SEOServiceModule } from '../sharedComponents/SEO/SEOService.module'; @@ -28,7 +30,7 @@ import {IFrameModule} from '../utils/iframe.module'; SearchResultsModule, PiwikServiceModule, HelperModule, - IFrameModule + IFrameModule, Schema2jsonldModule, SEOServiceModule ], declarations: [ DepositComponent, diff --git a/deposit/depositResult.component.ts b/deposit/depositResult.component.ts index 13429945..42282fed 100644 --- a/deposit/depositResult.component.ts +++ b/deposit/depositResult.component.ts @@ -12,6 +12,7 @@ import {FetchDataproviders} from '../utils/fetchEntitiesClasses/fetchDat import {SearchDataprovidersService} from '../services/searchDataproviders.service'; import {OrganizationService} from '../services/organization.service'; import {PiwikService} from '../utils/piwik/piwik.service'; +import { SEOService } from '../sharedComponents/SEO/SEO.service'; @Component({ selector: 'deposit-result', @@ -19,6 +20,7 @@ import {PiwikService} from '../utils/piwik/piwik.service';
+