diff --git a/src/app/contact/contact.component.ts b/src/app/contact/contact.component.ts
index 49e5d01..ce1f481 100644
--- a/src/app/contact/contact.component.ts
+++ b/src/app/contact/contact.component.ts
@@ -4,12 +4,15 @@ import {EmailService} from '../openaireLibrary/utils/email/email.service';
import {Email} from '../openaireLibrary/utils/email/email';
import {EnvProperties} from '../openaireLibrary/utils/properties/env-properties';
import {Composer} from '../openaireLibrary/utils/email/composer';
-import {Title} from '@angular/platform-browser';
+import {Meta, Title} from '@angular/platform-browser';
import {HelperFunctions} from '../openaireLibrary/utils/HelperFunctions.class';
import {FormBuilder, FormGroup, Validators} from '@angular/forms';
import {properties} from '../../environments/environment';
import {FAQ} from "../openaireLibrary/utils/entities/FAQ";
import {Breadcrumb} from "../openaireLibrary/utils/breadcrumbs/breadcrumbs.component";
+import {Subscription} from 'rxjs';
+import {PiwikService} from '../openaireLibrary/utils/piwik/piwik.service';
+import {SEOService} from '../openaireLibrary/sharedComponents/SEO/SEO.service';
@Component({
selector: 'contact',
@@ -23,7 +26,9 @@ export class ContactComponent implements OnInit {
public email: Email;
public faqs: FAQ[] = [];
public properties: EnvProperties = properties;
-
+ subs: Subscription[] = [];
+ description = "Do you have questions? Contact us";
+ title = "OpenAIRE - Research Graph | Support";
public contactForm: FormGroup;
@ViewChild('AlertModal') modal;
@ViewChild('recaptcha') recaptcha;
@@ -41,21 +46,32 @@ export class ContactComponent implements OnInit {
constructor(private router: Router,
private route: ActivatedRoute,
private emailService: EmailService,
- private title: Title,
+ private _title: Title,
+ private _piwikService:PiwikService,
+ private _meta: Meta, private seoService: SEOService,
private fb: FormBuilder) {
this.setFaqs();
}
ngOnInit() {
- this.title.setTitle('OpenAIRE - Research Graph | Contact Us');
- this.route.fragment.subscribe(fragment => {
+ this._title.setTitle(this.title);
+ this._meta.updateTag({content:this.description},"name='description'");
+ this._meta.updateTag({content:this.description},"property='og:description'");
+ this._meta.updateTag({content:this.title},"property='og:title'");
+ this.subs.push(this.route.fragment.subscribe(fragment => {
setTimeout(() => {
this.goTo(fragment);
}, 100);
- });
+ }));
this.email = {body: '', subject: '', recipients: []};
this.reset();
this.showLoading = false;
+ var url = this.properties.domain + this.properties.baseLink+this.router.url;
+ this.seoService.createLinkForCanonicalURL(url, false);
+ this._meta.updateTag({content:url},"property='og:url'");
+ if(this.properties.enablePiwikTrack && (typeof document !== 'undefined')){
+ this.subs.push(this._piwikService.trackView(this.properties, this.title).subscribe());
+ }
}
public send(event) {
@@ -81,7 +97,7 @@ export class ContactComponent implements OnInit {
private sendMail(admins: any) {
this.showLoading = true;
- this.emailService.contact(this.properties,
+ this.subs.push(this.emailService.contact(this.properties,
Composer.composeEmailForGraph(this.contactForm.value, admins),
this.contactForm.value.recaptcha).subscribe(
res => {
@@ -99,7 +115,7 @@ export class ContactComponent implements OnInit {
this.showLoading = false;
this.contactForm.get('recaptcha').setValue('');
}
- );
+ ));
}
public modalOpen() {
@@ -148,4 +164,9 @@ export class ContactComponent implements OnInit {
window.scrollTo({top: y, behavior: 'smooth'});
}
}
+ public ngOnDestroy() {
+ for (let sub of this.subs) {
+ sub.unsubscribe();
+ }
+ }
}
diff --git a/src/app/home/home.component.ts b/src/app/home/home.component.ts
index 1e05ac3..16ade1a 100644
--- a/src/app/home/home.component.ts
+++ b/src/app/home/home.component.ts
@@ -60,22 +60,22 @@ export class HomeComponent {
private config: ConfigurationService, private _meta: Meta, private _title: Title, private seoService: SEOService
) {
- let description = "OpenAIRE Research Graph";
+ let description = "OpenAIRE Research Graph is an open resource that aggregates a collection of research data properties (metadata, links) available within the OpenAIRE Open Science infrastructure for funders, organizations, researchers, research communities and publishers to interlink information by using a semantic graph database approach.";
this._title.setTitle(this.pageTitle);
- /*this._meta.updateTag({content: description}, "name='description'");
+ this._meta.updateTag({content: description}, "name='description'");
this._meta.updateTag({content: description}, "property='og:description'");
- this._meta.updateTag({content: this.pageTitle}, "property='og:title'");*/
+ this._meta.updateTag({content: this.pageTitle}, "property='og:title'");
}
public ngOnInit() {
- /*this.seoService.createLinkForCanonicalURL(this.properties.domain + this.properties.baseLink + this._router.url, false);*/
if (this.properties) {
- /*var url = this.properties.domain + this.properties.baseLink + this._router.url;
+ let url = this.properties.domain + this.properties.baseLink + this._router.url;
+ this.seoService.createLinkForCanonicalURL(url, false);
this._meta.updateTag({content: url}, "property='og:url'");
if (this.properties.enablePiwikTrack && (typeof document !== 'undefined')) {
- this.subs.push(this._piwikService.trackView(this.properties, "OpenAIRE").subscribe());
- }*/
+ this.subs.push(this._piwikService.trackView(this.properties, this.pageTitle).subscribe());
+ }
this.getNumbers();
this.animation();
}
diff --git a/src/app/resources/resources.component.html b/src/app/resources/resources.component.html
index 16af6ae..aba5a96 100644
--- a/src/app/resources/resources.component.html
+++ b/src/app/resources/resources.component.html
@@ -1,4 +1,8 @@
+
+
diff --git a/src/app/resources/resources.component.ts b/src/app/resources/resources.component.ts
index 770232b..2617754 100644
--- a/src/app/resources/resources.component.ts
+++ b/src/app/resources/resources.component.ts
@@ -1,7 +1,12 @@
import {Component, OnInit} from '@angular/core';
-import {Title} from '@angular/platform-browser';
+import {Meta, Title} from '@angular/platform-browser';
import {Breadcrumb} from "../openaireLibrary/utils/breadcrumbs/breadcrumbs.component";
-import {ActivatedRoute} from "@angular/router";
+import {ActivatedRoute, Router} from '@angular/router';
+import {properties} from '../../environments/environment';
+import {EnvProperties} from '../openaireLibrary/utils/properties/env-properties';
+import {PiwikService} from '../openaireLibrary/utils/piwik/piwik.service';
+import {SEOService} from '../openaireLibrary/sharedComponents/SEO/SEO.service';
+import {Subscription} from 'rxjs';
@Component({
selector: 'resources',
@@ -9,7 +14,10 @@ import {ActivatedRoute} from "@angular/router";
styleUrls: ['resources.component.css'],
})
export class ResourcesComponent implements OnInit {
-
+ properties:EnvProperties;
+ subs: Subscription[] = [];
+ description = "Start building with OpenAIRE APIs. How to access the graph? XML Metadata schema and documentation.";
+ title = "OpenAIRE - Research Graph | Resources";
public breadcrumbs: Breadcrumb[] = [
{
name: 'home',
@@ -20,16 +28,28 @@ export class ResourcesComponent implements OnInit {
}
];
- constructor(private title: Title, private route: ActivatedRoute) {
+ constructor(private _title: Title, private route: ActivatedRoute, private _router: Router,
+ private _piwikService:PiwikService,
+ private _meta: Meta, private seoService: SEOService) {
}
ngOnInit() {
- this.title.setTitle('OpenAIRE - Research Graph | Resources');
- this.route.fragment.subscribe(fragment => {
+ this.properties = properties;
+ this._title.setTitle(this.title);
+ this._meta.updateTag({content:this.description},"name='description'");
+ this._meta.updateTag({content:this.description},"property='og:description'");
+ this._meta.updateTag({content:this.title},"property='og:title'");
+ var url = this.properties.domain + this.properties.baseLink+this._router.url;
+ this.seoService.createLinkForCanonicalURL(url, false);
+ this._meta.updateTag({content:url},"property='og:url'");
+ if(this.properties.enablePiwikTrack && (typeof document !== 'undefined')){
+ this.subs.push(this._piwikService.trackView(this.properties, this.title).subscribe());
+ }
+ this.subs.push(this.route.fragment.subscribe(fragment => {
setTimeout(() => {
this.goTo(fragment);
}, 100);
- });
+ }));
}
goTo(id: string) {
@@ -40,4 +60,10 @@ export class ResourcesComponent implements OnInit {
window.scrollTo({top: y, behavior: 'smooth'});
}
}
+
+ public ngOnDestroy() {
+ for (let sub of this.subs) {
+ sub.unsubscribe();
+ }
+ }
}
diff --git a/src/app/resources/resources.module.ts b/src/app/resources/resources.module.ts
index 7779620..3e46869 100644
--- a/src/app/resources/resources.module.ts
+++ b/src/app/resources/resources.module.ts
@@ -4,6 +4,7 @@ import {RouterModule} from "@angular/router";
import {ResourcesComponent} from "./resources.component";
import {BreadcrumbsModule} from "../openaireLibrary/utils/breadcrumbs/breadcrumbs.module";
+import {Schema2jsonldModule} from '../openaireLibrary/sharedComponents/schema2jsonld/schema2jsonld.module';
@NgModule({
imports: [
@@ -11,7 +12,8 @@ import {BreadcrumbsModule} from "../openaireLibrary/utils/breadcrumbs/breadcrumb
RouterModule.forChild([{
path: '', component: ResourcesComponent
}]),
- BreadcrumbsModule
+ BreadcrumbsModule,
+ Schema2jsonldModule
],
declarations: [ResourcesComponent],
exports: [ResourcesComponent]
diff --git a/src/environments/environment.beta.ts b/src/environments/environment.beta.ts
index 2da4971..f3c79dc 100644
--- a/src/environments/environment.beta.ts
+++ b/src/environments/environment.beta.ts
@@ -2,6 +2,11 @@ import {EnvProperties} from '../app/openaireLibrary/utils/properties/env-propert
export let properties: EnvProperties = {
environment: "beta",
+ domain : "https://graph.openaire.eu",
+ baseLink: "",
+ enablePiwikTrack: false,
+ piwikBaseUrl: "https://analytics.openaire.eu/piwik.php?idsite=",
+ piwikSiteId: "",
searchAPIURLLAst: "https://beta.services.openaire.eu/search/v2/api/",
adminToolsAPIURL: "https://beta.services.openaire.eu/uoa-admin-tools/",
admins: ["graph@openaire.eu"],
diff --git a/src/environments/environment.prod.ts b/src/environments/environment.prod.ts
index 5f6feec..e10d89d 100644
--- a/src/environments/environment.prod.ts
+++ b/src/environments/environment.prod.ts
@@ -2,6 +2,11 @@ import {EnvProperties} from '../app/openaireLibrary/utils/properties/env-propert
export let properties: EnvProperties = {
environment: "production",
+ domain : "https://graph.openaire.eu",
+ baseLink: "",
+ enablePiwikTrack: true,
+ piwikBaseUrl: "https://analytics.openaire.eu/piwik.php?idsite=",
+ piwikSiteId: "",
searchAPIURLLAst: "https://services.openaire.eu/search/v2/api/",
adminToolsAPIURL:"https://services.openaire.eu/uoa-admin-tools/",
admins: ["graph@openaire.eu"],
diff --git a/src/environments/environment.ts b/src/environments/environment.ts
index 90c5a10..579ab2d 100644
--- a/src/environments/environment.ts
+++ b/src/environments/environment.ts
@@ -7,6 +7,11 @@ import {EnvProperties} from "../app/openaireLibrary/utils/properties/env-propert
export let properties: EnvProperties = {
environment: "development",
+ domain : "https://graph.openaire.eu",
+ baseLink: "",
+ enablePiwikTrack: false,
+ piwikBaseUrl: "https://analytics.openaire.eu/piwik.php?idsite=",
+ piwikSiteId: "",
searchAPIURLLAst: "https://beta.services.openaire.eu/search/v2/api/",
adminToolsAPIURL: 'http://duffy.di.uoa.gr:8080/uoa-admin-tools/',
admins: ["kostis30fylloy@gmail.com"],
diff --git a/src/index.html b/src/index.html
index 5bb9919..164bb6d 100644
--- a/src/index.html
+++ b/src/index.html
@@ -7,6 +7,7 @@
OpenAIRE - Research Graph
+
diff --git a/src/index.prod.html b/src/index.prod.html
index b6c9cd0..de56254 100644
--- a/src/index.prod.html
+++ b/src/index.prod.html
@@ -7,6 +7,7 @@
OpenAIRE - Research Graph
+
diff --git a/src/robots.prod.txt b/src/robots.prod.txt
new file mode 100644
index 0000000..33adb13
--- /dev/null
+++ b/src/robots.prod.txt
@@ -0,0 +1,4 @@
+User-Agent: *
+Crawl-delay: 30
+
+sitemap: https://graph.openaire.eu/sitemap.xml
diff --git a/src/robots.txt b/src/robots.txt
new file mode 100644
index 0000000..a9da171
--- /dev/null
+++ b/src/robots.txt
@@ -0,0 +1,2 @@
+sitemap.xmlUser-Agent: *
+Disallow: /
diff --git a/src/sitemap.xml b/src/sitemap.xml
new file mode 100644
index 0000000..cbf9427
--- /dev/null
+++ b/src/sitemap.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+