[Trunk | Graph]:
1. app.component.ts: Update menu to include page fragments. 2. resources.component.html & resources.component.ts: Add page fragment (schema). 3. contact.component.html & contact.component.ts: Add page fragments (documentation, faq) | Add breadcrumb. 4. about.component.html & about.component.ts & about.module.ts: Add page fragments (architecture, metrics, infrastructure, team) | Add breadcrumb. git-svn-id: https://svn.driver.research-infrastructures.eu/driver/dnet40/modules/uoa-graph-portal/trunk@59534 d315682c-612b-4755-9ff5-7f18f6832af3
This commit is contained in:
parent
02ecf896ba
commit
1dc0040f1f
File diff suppressed because it is too large
Load Diff
|
@ -2,6 +2,7 @@ import {AfterViewChecked, Component, ElementRef, OnInit, ViewChild} from '@angul
|
|||
import {faqs} from './faqs';
|
||||
import {ActivatedRoute} from '@angular/router';
|
||||
import {Title} from '@angular/platform-browser';
|
||||
import {Breadcrumb} from "../openaireLibrary/utils/breadcrumbs/breadcrumbs.component";
|
||||
|
||||
declare var UIkit: any;
|
||||
|
||||
|
@ -19,17 +20,27 @@ export class AboutComponent implements OnInit {
|
|||
public enrichmentPropagationReadMore: boolean = false;
|
||||
public enrichmentMiningReadMore: boolean = false;
|
||||
|
||||
public breadcrumbs: Breadcrumb[] = [
|
||||
{
|
||||
name: 'home',
|
||||
route: '/'
|
||||
},
|
||||
{
|
||||
name: 'about'
|
||||
}
|
||||
];
|
||||
|
||||
constructor(private title: Title,
|
||||
private route: ActivatedRoute) {
|
||||
}
|
||||
|
||||
ngOnInit() {
|
||||
this.title.setTitle('OpenAIRE - Research Graph | About');
|
||||
// this.route.fragment.subscribe(fragment => {
|
||||
// setTimeout(() => {
|
||||
// this.goTo(fragment);
|
||||
// }, 100);
|
||||
// });
|
||||
this.route.fragment.subscribe(fragment => {
|
||||
setTimeout(() => {
|
||||
this.goTo(fragment);
|
||||
}, 100);
|
||||
});
|
||||
}
|
||||
|
||||
goTo(id: string) {
|
||||
|
|
|
@ -3,13 +3,15 @@ import {CommonModule} from "@angular/common";
|
|||
import {RouterModule} from "@angular/router";
|
||||
|
||||
import {AboutComponent} from "./about.component";
|
||||
import {BreadcrumbsModule} from "../openaireLibrary/utils/breadcrumbs/breadcrumbs.module";
|
||||
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
RouterModule.forChild([{
|
||||
path: '', component: AboutComponent
|
||||
}])
|
||||
}]),
|
||||
BreadcrumbsModule
|
||||
],
|
||||
declarations: [AboutComponent],
|
||||
exports: [AboutComponent]
|
||||
|
|
|
@ -38,22 +38,28 @@ export class AppComponent implements OnInit {
|
|||
{
|
||||
rootItem: new MenuItem("about", "About", "", "/about", false, [], null, {}),
|
||||
items: [
|
||||
// new MenuItem("architecture", "Architecture", "", "/about", false, [], null, {}, null, 'architecture'),
|
||||
/*
|
||||
new MenuItem("faqs", "FAQs", "", "/about", false, [], null, {}, null, 'faqs')
|
||||
*/
|
||||
new MenuItem("overview", "Overview", "", "/about", false, [], null, {}),
|
||||
new MenuItem("architecture", "Architecture", "", "/about", false, [], null, {}, null, 'architecture'),
|
||||
new MenuItem("metrics", "Data and Metrics", "", "/about", false, [], null, {}, null, 'metrics'),
|
||||
new MenuItem("infrastructure", "Infrastructure", "", "/about", false, [], null, {}, null, 'infrastructure'),
|
||||
new MenuItem("team", "Team", "", "/about", false, [], null, {}, null, 'team')
|
||||
]
|
||||
},
|
||||
{
|
||||
rootItem: new MenuItem("resources", "Resources", "", "/resources", false, [], null, {}),
|
||||
items: [
|
||||
// new MenuItem("provide", "OpenAIRE Provide", "", "/resources", false, [], null, {}),
|
||||
// new MenuItem("apis", "APIs and Reports", "", "/resources", false, [], null, {}, null, 'apis')
|
||||
new MenuItem("api", "API", "", "/resources", false, [], null, {}),
|
||||
new MenuItem("schema", "Metadata Schema", "", "/resources", false, [], null, {}, null, "schema"),
|
||||
// new MenuItem("sources", "Sources", "", "/resources", false, [], null, {}, null, "sources"),
|
||||
]
|
||||
},
|
||||
{
|
||||
rootItem: new MenuItem("contact", "Support", "", "/support", false, [], null, {}),
|
||||
items: []
|
||||
items: [
|
||||
new MenuItem("contact", "Contact", "", "/support", false, [], null, {}),
|
||||
new MenuItem("documentation", "Documentation", "", "/support", false, [], null, {}, null, "documentation"),
|
||||
new MenuItem("faq", "FAQs", "", "/support", false, [], null, {}, null, "faq"),
|
||||
]
|
||||
}
|
||||
];
|
||||
if(!isHome) {
|
||||
|
|
|
@ -1,116 +1,129 @@
|
|||
<div class="uk-section uk-section-small uk-container uk-container-large contact">
|
||||
<div class="uk-container uk-align-center">
|
||||
<h2 class="uk-text-center">Support</h2>
|
||||
<div class="uk-grid uk-flex uk-flex-center" uk-grid>
|
||||
<div class="uk-width-2-3">
|
||||
<h3 class="uk-margin-top">Do you have a question? <span class="portal-color">Contact us</span>.</h3>
|
||||
<!--<div class="uk-section uk-section-small uk-container uk-container-large contact">-->
|
||||
<div class="contact">
|
||||
<!-- <div class="uk-align-center">-->
|
||||
<div class="uk-section">
|
||||
<div class="uk-margin-large-left uk-margin-medium-bottom">
|
||||
<breadcrumbs [breadcrumbs]="breadcrumbs"></breadcrumbs>
|
||||
</div>
|
||||
|
||||
<div *ngIf="showLoading" class="uk-margin-large">
|
||||
<div class="uk-animation-fade uk-margin-top uk-width-1-1" role="alert"><span
|
||||
class="loading-gif uk-align-center"></span></div>
|
||||
</div>
|
||||
<div *ngIf="!showLoading">
|
||||
<contact-us [properties]="properties" [errorMessage]="errorMessage"
|
||||
[right]="false"
|
||||
[contactForm]="contactForm" (sendEmitter)="send($event)"></contact-us>
|
||||
</div>
|
||||
</div>
|
||||
<div class="uk-container">
|
||||
<h2 class="uk-text-center">Support</h2>
|
||||
<div class="uk-grid uk-flex uk-flex-center" uk-grid>
|
||||
<div class="uk-width-2-3">
|
||||
<h3 class="uk-margin-top">Do you have a question? <span class="portal-color">Contact us</span>.</h3>
|
||||
|
||||
<div class="uk-width-1-1 uk-margin-xlarge-top">
|
||||
<div class="uk-child-width-1-3@m uk-child-width-1-1@s uk-grid-large uk-grid-match uk-grid" uk-grid="" uk-height-match=".target">
|
||||
<div class="uk-first-column">
|
||||
<div class="uk-card uk-card-default uk-card-body link-card">
|
||||
<div class="uk-card-media-top uk-flex uk-flex-middle uk-flex-center uk-margin-small-top">
|
||||
<div class="target" style="min-height: 110px;"><img src="assets/graph-assets/contact/documentation.svg" style="height:80px; width:94px"></div>
|
||||
</div>
|
||||
|
||||
<div class="uk-margin-top">
|
||||
<div class="target uk-text-center">
|
||||
<a class="uk-link uk-button uk-text-capitalize uk-text-small"
|
||||
href="https://develop.openaire.eu" target="_blank">
|
||||
Documentation
|
||||
<span class="space">
|
||||
<svg height="16" viewBox="0 0 16 16" width="16" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.578,4.244,5.667,11.155V8.167A.833.833,0,1,0,4,8.167v5A.832.832,0,0,0,4.833,14h5a.833.833,0,0,0,0-1.667H6.845l6.911-6.911a.833.833,0,1,0-1.178-1.178h0Z"
|
||||
fill="#2D72D6" id="arrow-down-left2" transform="translate(7.071 19.799) rotate(-135)">
|
||||
</path>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div *ngIf="showLoading" class="uk-margin-large">
|
||||
<div class="uk-animation-fade uk-margin-top uk-width-1-1" role="alert"><span
|
||||
class="loading-gif uk-align-center"></span></div>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<div class="uk-card uk-card-default uk-card-body link-card">
|
||||
<div class="uk-card-media-top uk-flex uk-flex-middle uk-flex-center uk-margin-small-top">
|
||||
<div class="target"><img src="assets/graph-assets/contact/webinars.svg" style="height:110px; width:101px"></div>
|
||||
</div>
|
||||
|
||||
<div class="uk-margin-top">
|
||||
<div class="target uk-text-center" style="">
|
||||
<a class="uk-link uk-button uk-text-capitalize uk-text-small"
|
||||
href="https://www.openaire.eu/item/webinar-on-the-openaire-research-graph?highlight=WyJncmFwaCIsIndlYmluYXIiLCJ3ZWJpbmFyJyJd"
|
||||
target="_blank">
|
||||
Webinars
|
||||
<span class="space">
|
||||
<svg height="16" viewBox="0 0 16 16" width="16" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.578,4.244,5.667,11.155V8.167A.833.833,0,1,0,4,8.167v5A.832.832,0,0,0,4.833,14h5a.833.833,0,0,0,0-1.667H6.845l6.911-6.911a.833.833,0,1,0-1.178-1.178h0Z"
|
||||
fill="#2D72D6" id="arrow-down-left2" transform="translate(7.071 19.799) rotate(-135)">
|
||||
</path>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div *ngIf="!showLoading">
|
||||
<contact-us [properties]="properties" [errorMessage]="errorMessage"
|
||||
[right]="false"
|
||||
[contactForm]="contactForm" (sendEmitter)="send($event)"></contact-us>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<div class="uk-card uk-card-default uk-card-body link-card">
|
||||
<div class="uk-card-media-top uk-flex uk-flex-middle uk-flex-center uk-margin-small-top">
|
||||
<div class="target" style="min-height: 110px;"><img src="assets/graph-assets/contact/howto.svg" style="height:100px; width:107px"></div>
|
||||
</div>
|
||||
<div class="uk-margin-top">
|
||||
<div class="target uk-text-center" style="">
|
||||
<a class="uk-link uk-button uk-text-capitalize uk-text-small"
|
||||
href="https://subugoe.github.io/scholcomm_analytics/posts/oaire_graph_2020/"
|
||||
target="_blank">
|
||||
How to
|
||||
<span class="space">
|
||||
<svg height="16" viewBox="0 0 16 16" width="16" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.578,4.244,5.667,11.155V8.167A.833.833,0,1,0,4,8.167v5A.832.832,0,0,0,4.833,14h5a.833.833,0,0,0,0-1.667H6.845l6.911-6.911a.833.833,0,1,0-1.178-1.178h0Z"
|
||||
fill="#2D72D6" id="arrow-down-left2" transform="translate(7.071 19.799) rotate(-135)">
|
||||
</path>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
<!-- <h5 class="uk-text-bold">How to</h5>-->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="uk-width-5-6 uk-margin-xlarge-top uk-margin-xlarge-bottom">
|
||||
<h3 class="uk-text-center uk-margin-top portal-color">FAQs</h3>
|
||||
<div class="uk-container">
|
||||
<ul class="uk-accordion" uk-accordion="">
|
||||
<li *ngFor="let faq of faqs" class="uk-card uk-card-default uk-card-body faq-card uk-margin-small uk-padding-small">
|
||||
<a class="uk-accordion-title color" href="#">
|
||||
<h5 class="uk-margin-remove-bottom">{{faq.question}}</h5>
|
||||
</a>
|
||||
<div class="uk-accordion-content color" aria-hidden="true" hidden="">
|
||||
<p>{{faq.answer}}</p>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="documentation" class="uk-container uk-section">
|
||||
<div class="uk-width-1-1">
|
||||
<div class="uk-child-width-1-3@m uk-child-width-1-1@s uk-grid-large uk-grid-match uk-grid" uk-grid="" uk-height-match=".target">
|
||||
<div class="uk-first-column">
|
||||
<div class="uk-card uk-card-default uk-card-body link-card">
|
||||
<div class="uk-card-media-top uk-flex uk-flex-middle uk-flex-center uk-margin-small-top">
|
||||
<div class="target" style="min-height: 110px;"><img src="assets/graph-assets/contact/documentation.svg" style="height:80px; width:94px"></div>
|
||||
</div>
|
||||
|
||||
<div class="uk-margin-top">
|
||||
<div class="target uk-text-center">
|
||||
<a class="uk-link uk-button uk-text-capitalize uk-text-small"
|
||||
href="https://develop.openaire.eu" target="_blank">
|
||||
Documentation
|
||||
<span class="space">
|
||||
<svg height="16" viewBox="0 0 16 16" width="16" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.578,4.244,5.667,11.155V8.167A.833.833,0,1,0,4,8.167v5A.832.832,0,0,0,4.833,14h5a.833.833,0,0,0,0-1.667H6.845l6.911-6.911a.833.833,0,1,0-1.178-1.178h0Z"
|
||||
fill="#2D72D6" id="arrow-down-left2" transform="translate(7.071 19.799) rotate(-135)">
|
||||
</path>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<div class="uk-card uk-card-default uk-card-body link-card">
|
||||
<div class="uk-card-media-top uk-flex uk-flex-middle uk-flex-center uk-margin-small-top">
|
||||
<div class="target"><img src="assets/graph-assets/contact/webinars.svg" style="height:110px; width:101px"></div>
|
||||
</div>
|
||||
|
||||
<div class="uk-margin-top">
|
||||
<div class="target uk-text-center" style="">
|
||||
<a class="uk-link uk-button uk-text-capitalize uk-text-small"
|
||||
href="https://www.openaire.eu/item/webinar-on-the-openaire-research-graph?highlight=WyJncmFwaCIsIndlYmluYXIiLCJ3ZWJpbmFyJyJd"
|
||||
target="_blank">
|
||||
Webinars
|
||||
<span class="space">
|
||||
<svg height="16" viewBox="0 0 16 16" width="16" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.578,4.244,5.667,11.155V8.167A.833.833,0,1,0,4,8.167v5A.832.832,0,0,0,4.833,14h5a.833.833,0,0,0,0-1.667H6.845l6.911-6.911a.833.833,0,1,0-1.178-1.178h0Z"
|
||||
fill="#2D72D6" id="arrow-down-left2" transform="translate(7.071 19.799) rotate(-135)">
|
||||
</path>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<div class="uk-card uk-card-default uk-card-body link-card">
|
||||
<div class="uk-card-media-top uk-flex uk-flex-middle uk-flex-center uk-margin-small-top">
|
||||
<div class="target" style="min-height: 110px;"><img src="assets/graph-assets/contact/howto.svg" style="height:100px; width:107px"></div>
|
||||
</div>
|
||||
<div class="uk-margin-top">
|
||||
<div class="target uk-text-center" style="">
|
||||
<a class="uk-link uk-button uk-text-capitalize uk-text-small"
|
||||
href="https://subugoe.github.io/scholcomm_analytics/posts/oaire_graph_2020/"
|
||||
target="_blank">
|
||||
How to
|
||||
<span class="space">
|
||||
<svg height="16" viewBox="0 0 16 16" width="16" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.578,4.244,5.667,11.155V8.167A.833.833,0,1,0,4,8.167v5A.832.832,0,0,0,4.833,14h5a.833.833,0,0,0,0-1.667H6.845l6.911-6.911a.833.833,0,1,0-1.178-1.178h0Z"
|
||||
fill="#2D72D6" id="arrow-down-left2" transform="translate(7.071 19.799) rotate(-135)">
|
||||
</path>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
<!-- <h5 class="uk-text-bold">How to</h5>-->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="faq" class="uk-container uk-section uk-flex uk-flex-center">
|
||||
<div class="uk-width-5-6 uk-margin-xlarge-bottom">
|
||||
<h3 class="uk-text-center uk-margin-top portal-color">FAQs</h3>
|
||||
<div>
|
||||
<ul class="uk-accordion" uk-accordion="">
|
||||
<li *ngFor="let faq of faqs" class="uk-card uk-card-default uk-card-body faq-card uk-margin-small uk-padding-small">
|
||||
<a class="uk-accordion-title color" href="#">
|
||||
<h5 class="uk-margin-remove-bottom">{{faq.question}}</h5>
|
||||
</a>
|
||||
<div class="uk-accordion-content color" aria-hidden="true" hidden="">
|
||||
<p>{{faq.answer}}</p>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- </div>-->
|
||||
</div>
|
||||
<modal-alert #AlertModal (alertOutput)="goToHome()">
|
||||
<div class="uk-text-center">
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import {Component, OnInit, ViewChild} from '@angular/core';
|
||||
import {Router} from '@angular/router';
|
||||
import {ActivatedRoute, Router} from '@angular/router';
|
||||
import {EmailService} from '../openaireLibrary/utils/email/email.service';
|
||||
import {Email} from '../openaireLibrary/utils/email/email';
|
||||
import {EnvProperties} from '../openaireLibrary/utils/properties/env-properties';
|
||||
|
@ -9,6 +9,7 @@ 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";
|
||||
|
||||
@Component({
|
||||
selector: 'contact',
|
||||
|
@ -26,8 +27,19 @@ export class ContactComponent implements OnInit {
|
|||
public contactForm: FormGroup;
|
||||
@ViewChild('AlertModal') modal;
|
||||
@ViewChild('recaptcha') recaptcha;
|
||||
|
||||
|
||||
public breadcrumbs: Breadcrumb[] = [
|
||||
{
|
||||
name: 'home',
|
||||
route: '/'
|
||||
},
|
||||
{
|
||||
name: 'support'
|
||||
}
|
||||
];
|
||||
|
||||
constructor(private router: Router,
|
||||
private route: ActivatedRoute,
|
||||
private emailService: EmailService,
|
||||
private title: Title,
|
||||
private fb: FormBuilder) {
|
||||
|
@ -36,6 +48,11 @@ export class ContactComponent implements OnInit {
|
|||
|
||||
ngOnInit() {
|
||||
this.title.setTitle('OpenAIRE - Research Graph | Contact Us');
|
||||
this.route.fragment.subscribe(fragment => {
|
||||
setTimeout(() => {
|
||||
this.goTo(fragment);
|
||||
}, 100);
|
||||
});
|
||||
this.email = {body: '', subject: '', recipients: []};
|
||||
this.reset();
|
||||
this.showLoading = false;
|
||||
|
@ -122,4 +139,13 @@ export class ContactComponent implements OnInit {
|
|||
"For each field you can know if they have been collected from one of our sources, if it has been inferred (and with which algorithm and with which confidence level)"
|
||||
});
|
||||
}
|
||||
|
||||
goTo(id: string) {
|
||||
const yOffset = -100;
|
||||
const element = document.getElementById(id);
|
||||
if(element) {
|
||||
const y = element.getBoundingClientRect().top + window.pageYOffset + yOffset;
|
||||
window.scrollTo({top: y, behavior: 'smooth'});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -52,7 +52,7 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="uk-margin-large-bottom">
|
||||
<div id="schema" class="uk-margin-large-bottom">
|
||||
<div class="uk-section uk-container uk-container-large">
|
||||
<h3 class="uk-text-center">Metadata Schema</h3>
|
||||
<div class="uk-margin-large-top uk-grid uk-grid-large uk-child-width-1-2@m">
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
import {Component, OnInit} from '@angular/core';
|
||||
import {Title} from '@angular/platform-browser';
|
||||
import {Breadcrumb} from "../openaireLibrary/utils/breadcrumbs/breadcrumbs.component";
|
||||
import {ActivatedRoute} from "@angular/router";
|
||||
|
||||
@Component({
|
||||
selector: 'resources',
|
||||
|
@ -19,10 +20,24 @@ export class ResourcesComponent implements OnInit {
|
|||
}
|
||||
];
|
||||
|
||||
constructor(private title: Title) {
|
||||
constructor(private title: Title, private route: ActivatedRoute) {
|
||||
}
|
||||
|
||||
ngOnInit() {
|
||||
this.title.setTitle('OpenAIRE - Research Graph | Resources');
|
||||
this.route.fragment.subscribe(fragment => {
|
||||
setTimeout(() => {
|
||||
this.goTo(fragment);
|
||||
}, 100);
|
||||
});
|
||||
}
|
||||
|
||||
goTo(id: string) {
|
||||
const yOffset = -100;
|
||||
const element = document.getElementById(id);
|
||||
if(element) {
|
||||
const y = element.getBoundingClientRect().top + window.pageYOffset + yOffset;
|
||||
window.scrollTo({top: y, behavior: 'smooth'});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue