[Monitor Dashboard | Trunk]: Add users admin page. Add verification modal

git-svn-id: https://svn.driver.research-infrastructures.eu/driver/dnet40/modules/uoa-monitor-portal/trunk/monitor_dashboard@59505 d315682c-612b-4755-9ff5-7f18f6832af3
This commit is contained in:
Konstantinos Triantafyllou 2020-10-05 13:16:15 +00:00
parent 21ed77a926
commit f36cba5d4c
7 changed files with 53 additions and 13 deletions

View File

@ -31,11 +31,11 @@ const routes: Routes = [
resolve: {envSpecific: EnvironmentSpecificResolver}, resolve: {envSpecific: EnvironmentSpecificResolver},
data: {hasAdminMenu: true} data: {hasAdminMenu: true}
}, },
/*{ {
path: 'admin/:stakeholder/users', path: 'admin/:stakeholder/users',
loadChildren: './users/users.module#UsersModule', loadChildren: './users/users.module#UsersModule',
resolve: {envSpecific: EnvironmentSpecificResolver} resolve: {envSpecific: EnvironmentSpecificResolver}
},*/ },
{ {
path: 'admin/:stakeholder', path: 'admin/:stakeholder',
loadChildren: './stakeholder/stakeholder.module#StakeholderModule', loadChildren: './stakeholder/stakeholder.module#StakeholderModule',

View File

@ -68,4 +68,6 @@
</div> </div>
</div> </div>
<router-outlet></router-outlet> <router-outlet></router-outlet>
<role-verification *ngIf="stakeholder && properties.environment === 'development'"
[id]="stakeholder.alias" [name]="stakeholder.name" [type]="stakeholder.type"></role-verification>
</div> </div>

View File

@ -19,9 +19,10 @@ import {UserMiniModule} from "./openaireLibrary/login/userMiniModule.module";
import {SideBarModule} from "./openaireLibrary/dashboard/sharedComponents/sidebar/sideBar.module"; import {SideBarModule} from "./openaireLibrary/dashboard/sharedComponents/sidebar/sideBar.module";
import {SharedModule} from "./openaireLibrary/shared/shared.module"; import {SharedModule} from "./openaireLibrary/shared/shared.module";
import {Schema2jsonldModule} from "./openaireLibrary/sharedComponents/schema2jsonld/schema2jsonld.module"; import {Schema2jsonldModule} from "./openaireLibrary/sharedComponents/schema2jsonld/schema2jsonld.module";
import {RoleVerificationModule} from "./openaireLibrary/role-verification/role-verification.module";
@NgModule({ @NgModule({
imports: [ imports: [
SharedModule, SharedModule,
BrowserAnimationsModule, BrowserAnimationsModule,
@ -35,8 +36,7 @@ import {Schema2jsonldModule} from "./openaireLibrary/sharedComponents/schema2jso
SubscribeModule.forRoot(), SubscribeModule.forRoot(),
BrowserModule.withServerTransition({appId: 'my-app'}), BrowserModule.withServerTransition({appId: 'my-app'}),
AppRoutingModule, AppRoutingModule,
UserMiniModule, SideBarModule, Schema2jsonldModule UserMiniModule, SideBarModule, Schema2jsonldModule, RoleVerificationModule
], ],
declarations: [AppComponent, OpenaireErrorPageComponent], declarations: [AppComponent, OpenaireErrorPageComponent],
exports: [AppComponent], exports: [AppComponent],

View File

@ -1,2 +1,9 @@
<div id="page_content"> <div id="page_content">
<div *ngIf="loading" class="uk-section">
<loading></loading>
</div>
<div *ngIf="!loading && alias" class="uk-padding">
<dashboard-users [id]="alias" [name]="name" [type]="type" [link]="link"></dashboard-users>
</div>
</div> </div>

View File

@ -1,7 +1,36 @@
import {Component} from "@angular/core"; import {Component, OnInit} from "@angular/core";
import {StakeholderService} from "../openaireLibrary/monitor/services/stakeholder.service";
import {properties} from "../../environments/environment";
@Component({ @Component({
selector: 'users', selector: 'users',
templateUrl: 'users.component.html' templateUrl: 'users.component.html'
}) })
export class UsersComponent {} export class UsersComponent implements OnInit{
public alias: string;
public name: string;
public type: string;
public link: string;
public loading: boolean;
constructor(private stakeholderService: StakeholderService) {
}
ngOnInit() {
this.loading = true;
this.stakeholderService.getStakeholderAsObservable().subscribe(stakeholder => {
if(stakeholder) {
this.alias = stakeholder.alias;
this.name = stakeholder.name;
this.type = stakeholder.type;
this.link = this.getURL(this.alias);
this.loading = false;
}
})
}
private getURL(id: string): string {
return properties.domain + properties.baseLink + "/" + id + "?verify=";
}
}

View File

@ -3,9 +3,11 @@ import {UsersComponent} from "./users.component";
import {CommonModule} from "@angular/common"; import {CommonModule} from "@angular/common";
import {UsersRoutingModule} from "./users-routing.module"; import {UsersRoutingModule} from "./users-routing.module";
import {AdminDashboardGuard} from "../utils/adminDashboard.guard"; import {AdminDashboardGuard} from "../utils/adminDashboard.guard";
import {DashboardUsersModule} from "../openaireLibrary/dashboard/users/dashboard-users.module";
import {LoadingModule} from "../openaireLibrary/utils/loading/loading.module";
@NgModule({ @NgModule({
imports: [CommonModule, UsersRoutingModule], imports: [CommonModule, UsersRoutingModule, DashboardUsersModule, LoadingModule],
declarations: [UsersComponent], declarations: [UsersComponent],
exports: [UsersComponent], exports: [UsersComponent],
providers: [AdminDashboardGuard] providers: [AdminDashboardGuard]

View File

@ -49,13 +49,13 @@ export let properties: EnvProperties = {
vocabulariesAPI: "https://dev-openaire.d4science.org/provision/mvc/vocabularies/", vocabulariesAPI: "https://dev-openaire.d4science.org/provision/mvc/vocabularies/",
piwikBaseUrl: "https://analytics.openaire.eu/piwik.php?idsite=", piwikBaseUrl: "https://analytics.openaire.eu/piwik.php?idsite=",
piwikSiteId: "80", piwikSiteId: "80",
/*registryUrl: 'http://mpagasas.di.uoa.gr:8080/dnet-openaire-users-1.0.0-SNAPSHOT/api/registry/', registryUrl: 'http://mpagasas.di.uoa.gr:8080/dnet-openaire-users-1.0.0-SNAPSHOT/api/registry/',
loginUrl: "http://mpagasas.di.uoa.gr:8180/dnet-login/openid_connect_login", loginUrl: "http://mpagasas.di.uoa.gr:8180/dnet-login/openid_connect_login",
userInfoUrl: "http://mpagasas.di.uoa.gr:8080/dnet-openaire-users-1.0.0-SNAPSHOT/api/users/getUserInfo?accessToken=", userInfoUrl: "http://mpagasas.di.uoa.gr:8080/dnet-openaire-users-1.0.0-SNAPSHOT/api/users/getUserInfo?accessToken=",
logoutUrl: 'http://mpagasas.di.uoa.gr:8180/dnet-login/openid_logout',*/ logoutUrl: 'http://mpagasas.di.uoa.gr:8180/dnet-login/openid_logout',
loginUrl: "http://dl170.madgik.di.uoa.gr:8180/dnet-login/openid_connect_login", /*loginUrl: "http://dl170.madgik.di.uoa.gr:8180/dnet-login/openid_connect_login",
userInfoUrl: "http://dl170.madgik.di.uoa.gr:8180/dnet-openaire-users-1.0.0-SNAPSHOT/api/users/getUserInfo?accessToken=", userInfoUrl: "http://dl170.madgik.di.uoa.gr:8180/dnet-openaire-users-1.0.0-SNAPSHOT/api/users/getUserInfo?accessToken=",
logoutUrl: "https://aai.openaire.eu/proxy/saml2/idp/SingleLogoutService.php?ReturnTo=", logoutUrl: "https://aai.openaire.eu/proxy/saml2/idp/SingleLogoutService.php?ReturnTo=",*/
cookieDomain: ".di.uoa.gr", cookieDomain: ".di.uoa.gr",
feedbackmail: "openaire.test@gmail.com", feedbackmail: "openaire.test@gmail.com",
cacheUrl: "http://scoobydoo.di.uoa.gr:3000/get?url=", cacheUrl: "http://scoobydoo.di.uoa.gr:3000/get?url=",
@ -73,7 +73,7 @@ export let properties: EnvProperties = {
pagingLimit: 20, pagingLimit: 20,
resultsPerPage: 10, resultsPerPage: 10,
baseLink: "/dashboard", baseLink: "/dashboard",
domain: "https://beta.monitor.openaire.eu", domain: "http://mpagasas.di.uoa.gr:4600",
searchLinkToResult: "/search/result?id=", searchLinkToResult: "/search/result?id=",
searchLinkToPublication: "/search/publication?articleId=", searchLinkToPublication: "/search/publication?articleId=",
searchLinkToProject: "/search/project?projectId=", searchLinkToProject: "/search/project?projectId=",