probe routing
This commit is contained in:
parent
0fe54aaa86
commit
0a897c4be2
|
@ -53,11 +53,11 @@ export class ProbeListComponent implements OnInit {
|
||||||
}
|
}
|
||||||
|
|
||||||
getUptime(probe: Probe) {
|
getUptime(probe: Probe) {
|
||||||
if (!probe.connectDate) {
|
// if (!probe.connectDate) {
|
||||||
return 'Not Connected.';
|
// return 'Not Connected.';
|
||||||
}
|
// }
|
||||||
const hours = Math.abs(new Date().getTime() - probe.connectDate.getTime());
|
// const hours = Math.abs(new Date().getTime() - probe.connectDate.getTime());
|
||||||
return this.convertUptimeString(hours);
|
// return this.convertUptimeString(hours);
|
||||||
}
|
}
|
||||||
|
|
||||||
convertUptimeString(hours: number) {
|
convertUptimeString(hours: number) {
|
||||||
|
|
|
@ -1,16 +1,18 @@
|
||||||
import { NgModule } from '@angular/core';
|
import { NgModule } from '@angular/core';
|
||||||
import { Routes, RouterModule } from '@angular/router';
|
import { Routes, RouterModule } from '@angular/router';
|
||||||
import { ProbeTabPageComponent } from './probe-tab-page.component';
|
import { ProbeTabPageComponent } from './probe-tab-page.component';
|
||||||
|
import { ProbeListPageComponent } from '@app/pages/probes/probe/probe-list-page.component';
|
||||||
|
import { ProbeDetailPageComponent } from '@app/pages/probes/probe/probe-detail-page.component';
|
||||||
|
|
||||||
const routes: Routes = [
|
const routes: Routes = [
|
||||||
{
|
{
|
||||||
path: '',
|
path: '',
|
||||||
component: ProbeTabPageComponent,
|
component: ProbeTabPageComponent,
|
||||||
children: [
|
children: [
|
||||||
{ path: 'list', loadChildren: './probe/probe-page.module#ProbePageModule' },
|
{ path: 'list', component: ProbeListPageComponent },
|
||||||
{ path: 'noauth', loadChildren: './noauth-probe/noauth-probe-page.module#NoAuthProbePageModule' },
|
{ path: 'noauth', loadChildren: './noauth-probe/noauth-probe-page.module#NoAuthProbePageModule' },
|
||||||
{ path: 'download', loadChildren: './download/download-page.module#ProbeDownloadPageModule' },
|
{ path: 'download', loadChildren: './download/download-page.module#ProbeDownloadPageModule' },
|
||||||
{ path: ':id/info', loadChildren: './probe/probe-page.module#ProbePageModule' },
|
{ path: ':id/info', component: ProbeDetailPageComponent },
|
||||||
// { path: ':id/targets', loadChildren: 'app/pages/targets/targets-page.module#TargetsPageModule'},
|
// { path: ':id/targets', loadChildren: 'app/pages/targets/targets-page.module#TargetsPageModule'},
|
||||||
{ path: ':id/history', component: null },
|
{ path: ':id/history', component: null },
|
||||||
]
|
]
|
||||||
|
|
|
@ -7,6 +7,8 @@ import { ProbeModule } from '@overflow/probe/probe.module';
|
||||||
import { ProbeTabPageComponent } from './probe-tab-page.component';
|
import { ProbeTabPageComponent } from './probe-tab-page.component';
|
||||||
import { ProbeTabPageRoutingModule } from './probe-tab-page-routing.module';
|
import { ProbeTabPageRoutingModule } from './probe-tab-page-routing.module';
|
||||||
import { TabbarModule } from '../../commons/component/layout/tabbar/app.tabbar.module';
|
import { TabbarModule } from '../../commons/component/layout/tabbar/app.tabbar.module';
|
||||||
|
import { ProbeListPageComponent } from '@app/pages/probes/probe/probe-list-page.component';
|
||||||
|
import { ProbeDetailPageComponent } from '@app/pages/probes/probe/probe-detail-page.component';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
|
@ -18,6 +20,8 @@ import { TabbarModule } from '../../commons/component/layout/tabbar/app.tabbar.m
|
||||||
],
|
],
|
||||||
declarations: [
|
declarations: [
|
||||||
ProbeTabPageComponent,
|
ProbeTabPageComponent,
|
||||||
|
ProbeListPageComponent,
|
||||||
|
ProbeDetailPageComponent
|
||||||
]
|
]
|
||||||
})
|
})
|
||||||
export class ProbeTabPageModule { }
|
export class ProbeTabPageModule { }
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
<of-probe-detail [probeHostID]="probeHostID" (discovery)="onDiscovery($event)"></of-probe-detail>
|
|
@ -6,10 +6,10 @@ import { Target } from '@overflow/commons-typescript/model/target';
|
||||||
import { BreadcrumbService } from '@app/commons/service/breadcrumb.service';
|
import { BreadcrumbService } from '@app/commons/service/breadcrumb.service';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'of-pages-probe',
|
selector: 'of-pages-probe-detail',
|
||||||
templateUrl: './probe-page.component.html',
|
templateUrl: './probe-detail-page.component.html',
|
||||||
})
|
})
|
||||||
export class ProbePageComponent {
|
export class ProbeDetailPageComponent {
|
||||||
|
|
||||||
isDetail: boolean;
|
isDetail: boolean;
|
||||||
probeHostID: string;
|
probeHostID: string;
|
||||||
|
@ -20,34 +20,10 @@ export class ProbePageComponent {
|
||||||
private breadcrumbService: BreadcrumbService
|
private breadcrumbService: BreadcrumbService
|
||||||
) {
|
) {
|
||||||
this.route.params.subscribe(params => {
|
this.route.params.subscribe(params => {
|
||||||
if (params['id']) {
|
this.probeHostID = params['id'];
|
||||||
this.onDetailContainer(params['id']);
|
|
||||||
} else {
|
|
||||||
this.onListContainer();
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
onListContainer() {
|
|
||||||
this.breadcrumbService.setItems([
|
|
||||||
{ label: 'Probe', routerLink: ['/probe/list'], }
|
|
||||||
]);
|
|
||||||
this.isDetail = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
onDetailContainer(probeHostID: string) {
|
|
||||||
this.probeHostID = probeHostID;
|
|
||||||
this.breadcrumbService.setItems([
|
|
||||||
{ label: 'Probe', routerLink: ['/probe/list'] },
|
|
||||||
{ label: this.probeHostID }
|
|
||||||
]);
|
|
||||||
this.isDetail = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
onProbeSelect(probeHost: ProbeHost) {
|
|
||||||
this.router.navigate(['probe', probeHost.id, 'info']);
|
|
||||||
}
|
|
||||||
|
|
||||||
onTargetSelect(target: Target) {
|
onTargetSelect(target: Target) {
|
||||||
console.log(target);
|
console.log(target);
|
||||||
}
|
}
|
|
@ -0,0 +1 @@
|
||||||
|
<of-probe-list (select)="onProbeSelect($event)"></of-probe-list>
|
27
src/app/pages/probes/probe/probe-list-page.component.ts
Normal file
27
src/app/pages/probes/probe/probe-list-page.component.ts
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
import { Component, OnDestroy } from '@angular/core';
|
||||||
|
import { Router, ActivatedRoute, NavigationEnd } from '@angular/router';
|
||||||
|
import { Subscription } from 'rxjs/Subscription';
|
||||||
|
import { ProbeHost, Probe } from '@overflow/commons-typescript/model/probe';
|
||||||
|
import { Target } from '@overflow/commons-typescript/model/target';
|
||||||
|
import { BreadcrumbService } from '@app/commons/service/breadcrumb.service';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'of-pages-probe-list',
|
||||||
|
templateUrl: './probe-list-page.component.html',
|
||||||
|
})
|
||||||
|
export class ProbeListPageComponent {
|
||||||
|
|
||||||
|
constructor(
|
||||||
|
private router: Router,
|
||||||
|
private route: ActivatedRoute,
|
||||||
|
private breadcrumbService: BreadcrumbService
|
||||||
|
) {
|
||||||
|
this.breadcrumbService.setItems([
|
||||||
|
{ label: 'Probe', routerLink: ['/probe/list'], }
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
onProbeSelect(probeHost: ProbeHost) {
|
||||||
|
this.router.navigate(['probe', probeHost.id, 'info']);
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,16 +0,0 @@
|
||||||
import { NgModule } from '@angular/core';
|
|
||||||
import { Routes, RouterModule } from '@angular/router';
|
|
||||||
import { ProbePageComponent } from './probe-page.component';
|
|
||||||
|
|
||||||
const routes: Routes = [
|
|
||||||
{
|
|
||||||
path: '',
|
|
||||||
component: ProbePageComponent,
|
|
||||||
},
|
|
||||||
];
|
|
||||||
|
|
||||||
@NgModule({
|
|
||||||
imports: [RouterModule.forChild(routes)],
|
|
||||||
exports: [RouterModule]
|
|
||||||
})
|
|
||||||
export class ProbePageRoutingModule { }
|
|
|
@ -1,7 +0,0 @@
|
||||||
<div *ngIf="!isDetail; else detailView">
|
|
||||||
<of-probe-list (select)="onProbeSelect($event)"></of-probe-list>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<ng-template #detailView>
|
|
||||||
<of-probe-detail [probeHostID]="probeHostID" (discovery)="onDiscovery($event)"></of-probe-detail>
|
|
||||||
</ng-template>
|
|
|
@ -1,21 +0,0 @@
|
||||||
import { NgModule } from '@angular/core';
|
|
||||||
import { CommonModule } from '@angular/common';
|
|
||||||
|
|
||||||
import { UIModule } from '@overflow/shared/ui/ui.module';
|
|
||||||
import { ProbeModule } from '@overflow/probe/probe.module';
|
|
||||||
|
|
||||||
import { ProbePageComponent } from './probe-page.component';
|
|
||||||
import { ProbePageRoutingModule } from './probe-page-routing.module';
|
|
||||||
|
|
||||||
@NgModule({
|
|
||||||
imports: [
|
|
||||||
CommonModule,
|
|
||||||
UIModule,
|
|
||||||
ProbePageRoutingModule,
|
|
||||||
ProbeModule,
|
|
||||||
],
|
|
||||||
entryComponents: [
|
|
||||||
],
|
|
||||||
declarations: [ProbePageComponent]
|
|
||||||
})
|
|
||||||
export class ProbePageModule { }
|
|
Loading…
Reference in New Issue
Block a user