[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:
Konstantina Galouni 2020-10-09 09:35:22 +00:00
parent 02ecf896ba
commit 1dc0040f1f
8 changed files with 726 additions and 647 deletions

View File

@ -1,7 +1,13 @@
<div class="about">
<div class="uk-align-center">
<div class="uk-section uk-padding-remove-bottom">
<div class="uk-margin-large-left uk-margin-medium-bottom">
<breadcrumbs [breadcrumbs]="breadcrumbs"></breadcrumbs>
</div>
</div>
<!-- <div class="uk-align-center">-->
<div class="firstBackground">
<div class="uk-container uk-container-large uk-section">
<div class="uk-container uk-container-large uk-section uk-padding-remove-top">
<h2 class="uk-text-center">About</h2>
<div class="uk-flex uk-flex-center">
<div class="uk-padding-small uk-width-3-5@m">
@ -25,7 +31,7 @@
</div>
<!-- <div class="uk-margin-large-bottom">-->
<div class="uk-container uk-container-large uk-section uk-padding-remove-top">
<div id="architecture" class="uk-container uk-container-large uk-section">
<h2 class="uk-text-center">Architecture</h2>
<div class="uk-flex uk-flex-center">
@ -518,7 +524,7 @@
</div>
</div>
<div class="uk-container uk-container-large uk-section uk-padding-remove-top">
<div id="metrics" class="uk-container uk-container-large uk-section">
<div class="uk-margin-large-left uk-margin-large-right">
<h2 class="uk-text-center">Data & Metrics</h2>
<h4 class="uk-margin-medium-top portal-color">Coming soon...</h4>
@ -533,7 +539,7 @@
</div>
</div>
<div class="uk-container uk-container-large uk-section uk-padding-remove-top">
<div id="infrastructure" class="uk-container uk-container-large uk-section">
<h2 class="uk-text-center">Infrastructure</h2>
<div class="uk-padding uk-margin-large-left uk-margin-large-right">
<div class="uk-flex uk-flex-center">
@ -545,7 +551,7 @@
</div>
</div>
<div class="uk-container uk-container-large uk-section uk-padding-remove-top">
<div id="team" class="uk-container uk-container-large uk-section">
<h2 class="uk-text-center">Team</h2>
<div>
<div class="uk-margin-bottom uk-padding uk-button-remove-top">
@ -576,5 +582,5 @@
</div>
<!-- </div>-->
</div>
</div>
<!-- </div>-->
</div>

View File

@ -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) {

View File

@ -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]

View File

@ -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) {

View File

@ -1,5 +1,12 @@
<div class="uk-section uk-section-small uk-container uk-container-large contact">
<div class="uk-container uk-align-center">
<!--<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 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">
@ -15,8 +22,12 @@
[contactForm]="contactForm" (sendEmitter)="send($event)"></contact-us>
</div>
</div>
</div>
</div>
</div>
<div class="uk-width-1-1 uk-margin-xlarge-top">
<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">
@ -93,10 +104,12 @@
</div>
</div>
</div>
</div>
<div class="uk-width-5-6 uk-margin-xlarge-top uk-margin-xlarge-bottom">
<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 class="uk-container">
<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="#">
@ -110,7 +123,7 @@
</div>
</div>
</div>
</div>
<!-- </div>-->
</div>
<modal-alert #AlertModal (alertOutput)="goToHome()">
<div class="uk-text-center">

View File

@ -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',
@ -27,7 +28,18 @@ export class ContactComponent implements OnInit {
@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'});
}
}
}

View File

@ -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">

View File

@ -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'});
}
}
}