diff --git a/angular.json b/angular.json index c5cb604..4025e05 100644 --- a/angular.json +++ b/angular.json @@ -49,6 +49,8 @@ "src/material.scss" ], "scripts": [ + "src/assets/openaire-theme/js/uikit.min.js", + "src/assets/openaire-theme/js/uikit-icons.min.js", "node_modules/jquery/dist/jquery.js" ] }, diff --git a/src/app/app.component.ts b/src/app/app.component.ts index 3687863..9aba2db 100644 --- a/src/app/app.component.ts +++ b/src/app/app.component.ts @@ -1,5 +1,5 @@ import {Component} from '@angular/core'; -import {ActivatedRoute, Router} from '@angular/router'; +import {ActivatedRoute, NavigationEnd, Router} from '@angular/router'; import {EnvProperties} from './openaireLibrary/utils/properties/env-properties'; import {MenuItem, RootMenuItem} from './openaireLibrary/sharedComponents/menu'; @@ -21,6 +21,9 @@ import {SmoothScroll} from "./openaireLibrary/utils/smooth-scroll"; import {Meta} from "@angular/platform-browser"; import {CommunityInfo} from "./openaireLibrary/connect/community/communityInfo"; import {SEOService} from "./openaireLibrary/sharedComponents/SEO/SEO.service"; +import {FormBuilder, FormGroup} from "@angular/forms"; +import {QuickContactService} from "./openaireLibrary/sharedComponents/quick-contact/quick-contact.service"; +import {EmailService} from "./openaireLibrary/utils/email/email.service"; @Component({ selector: 'app-root', @@ -40,7 +43,7 @@ import {SEOService} from "./openaireLibrary/sharedComponents/SEO/SEO.service"; + @@ -96,26 +101,31 @@ export class AppComponent { user: User; communityId: string = ""; header: Header; - logoPath: string = 'assets/common-assets/'; + logoPath: string = 'assets/common-assets/logo-services/connect/'; + /* Contact */ + public showQuickContact: boolean; + public showGetStarted: boolean = true; + public contactForm: FormGroup; subscriptions = []; layout: CustomizationOptions = null; constructor(private route: ActivatedRoute, private propertiesService: EnvironmentSpecificService, private _communitiesService: CommunitiesService, private smoothScroll: SmoothScroll, private router: Router, private userManagementService: UserManagementService, - private configurationService: ConfigurationService, private _communityService: CommunityService, private _layoutService: LayoutService, private _meta: Meta, private seoService: SEOService) { - } - - ngOnDestroy() { - this.subscriptions.forEach(subscription => { - if (subscription instanceof Subscriber) { - subscription.unsubscribe(); + private configurationService: ConfigurationService, private _communityService: CommunityService, + private _layoutService: LayoutService, private _meta: Meta, private seoService: SEOService, + private quickContactService: QuickContactService, + private fb: FormBuilder, + private emailService: EmailService) { + this.subscriptions.push(router.events.forEach((event) => { + if (event instanceof NavigationEnd) { + if (event.url === '/contact-us') { + this.quickContactService.setDisplay(false); + } else if (event.url !== '/contact-us' && !this.showQuickContact) { + this.quickContactService.setDisplay(true); + } + this.showGetStarted = event.url !== '/get-started'; } - }); - this._communitiesService.clearSubscriptions(); - this.userManagementService.clearSubscriptions(); - this.configurationService.clearSubscriptions(); - this._communityService.clearSubscriptions(); - this.smoothScroll.clearSubscriptions(); + })); } ngOnInit() { @@ -140,6 +150,19 @@ export class AppComponent { this.init()})); } + ngOnDestroy() { + this.subscriptions.forEach(subscription => { + if (subscription instanceof Subscriber) { + subscription.unsubscribe(); + } + }); + this._communitiesService.clearSubscriptions(); + this.userManagementService.clearSubscriptions(); + this.configurationService.clearSubscriptions(); + this._communityService.clearSubscriptions(); + this.smoothScroll.clearSubscriptions(); + } + get isManager() { return Session.isCommunityCurator(this.user) || Session.isPortalAdministrator(this.user) || (this.communityId && Session.isManager('community', this.communityId, this.user)) } @@ -311,8 +334,8 @@ export class AppComponent { route: restrictedData ? "" : "/", url: restrictedData ? url : "", title: 'connect', - logoUrl: this.logoPath + 'logo-large-connect.png', - logoSmallUrl: this.logoPath + 'logo-small-connect.png', + logoUrl: this.logoPath + 'main.svg', + logoSmallUrl: this.logoPath + 'small.svg', position: 'left', badge: true }; diff --git a/src/app/app.module.ts b/src/app/app.module.ts index 08e030e..8589415 100755 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -27,6 +27,7 @@ import {ErrorInterceptorService} from "./openaireLibrary/error-interceptor.servi import {IsCommunity} from "./openaireLibrary/connect/communityGuard/isCommunity.guard"; import {SubscribeService} from "./openaireLibrary/utils/subscribe/subscribe.service"; import {RoleVerificationModule} from "./openaireLibrary/role-verification/role-verification.module"; +import {QuickContactModule} from "./openaireLibrary/sharedComponents/quick-contact/quick-contact.module"; @NgModule({ @@ -41,11 +42,11 @@ import {RoleVerificationModule} from "./openaireLibrary/role-verification/role-v CookieLawModule, CustomizationModule, SubscribeModule.forRoot(), InviteBasicModule, - BrowserModule.withServerTransition({ appId: 'serverApp' }), + BrowserModule.withServerTransition({appId: 'serverApp'}), AppRoutingModule, BrowserTransferStateModule, BrowserAnimationsModule, - PageURLResolverModule, Schema2jsonldModule, RoleVerificationModule + PageURLResolverModule, Schema2jsonldModule, RoleVerificationModule, QuickContactModule ], declarations: [AppComponent, OpenaireErrorPageComponent], exports: [AppComponent], diff --git a/src/app/contact/contact.component.html b/src/app/contact/contact.component.html index 0923215..321e9c5 100644 --- a/src/app/contact/contact.component.html +++ b/src/app/contact/contact.component.html @@ -1,26 +1,24 @@ - -
-
- +
+
+
+ +
-
-
-
-
- -

+
+
+ +

Contact us to
learn more.

-
- -

- +
Our team will respond to your submission soon.
- Press OK to redirect to OpenAIRE Connect home page. + Press OK to redirect to OpenAIRE Monitor home page.
diff --git a/src/app/contact/contact.component.ts b/src/app/contact/contact.component.ts index 2a7e063..e960924 100644 --- a/src/app/contact/contact.component.ts +++ b/src/app/contact/contact.component.ts @@ -31,7 +31,7 @@ export class ContactComponent implements OnInit { public divContents = null; public breadcrumbs: Breadcrumb[] = [{name: 'home', route: '/'}, {name: 'Contact us'}]; public contactForm: FormGroup; - @ViewChild('AlertModal') modal; + @ViewChild('modal') modal; private subscriptions = []; ngOnDestroy() { diff --git a/src/app/learn-how/faqs/faqs.component.ts b/src/app/learn-how/faqs/faqs.component.ts index dc9918d..186165a 100644 --- a/src/app/learn-how/faqs/faqs.component.ts +++ b/src/app/learn-how/faqs/faqs.component.ts @@ -25,7 +25,7 @@ import {properties} from "../../../environments/environment";
  • - What is a "Research community"? + What is a "Research community"?
  • - What is the difference between a Community Gateway and the + What is the difference between a Community Gateway and the Research Community Dashboard (RCD)?
  • - How can Research Community thematic services integrate with + How can Research Community thematic services integrate with the Research Community Dashboard (RCD)?
  • -
  • What does my Research Community gain in terms of Open +
  • What does my Research Community gain in terms of Open Science?
  • - How is the service part of the European Open Science Cloud? + How is the service part of the European Open Science Cloud?
  • - Who owns the gateway? + Who owns the gateway?
  • - How is the gateway operated? + How is the gateway operated?
  • - What is the SLA of the service? + What is the SLA of the service?
  • - What are the costs? + What are the costs?
  • - In what other areas can my Research community collaborate with + In what other areas can my Research community collaborate with OpenAIRE?