@@ -119,13 +119,13 @@ function showOnlyConsoleGraphs(activeApp) {
119
119
$ ( '#echo-continuous' ) . css ( "display" ,
120
120
( activeApp == "echo" ) ? "block" : "none" ) ;
121
121
var isConsole = ( activeApp == "bwtester" || activeApp == "camerapp"
122
- || activeApp == "sensorapp" || activeApp == "echo" ) ;
122
+ || activeApp == "sensorapp" || activeApp == "echo" || activeApp == "traceroute" ) ;
123
123
$ ( '.stdout' ) . css ( "display" , isConsole ? "block" : "none" ) ;
124
124
}
125
125
126
126
function handleSwitchTabs ( ) {
127
127
var activeApp = $ ( '.nav-tabs .active > a' ) . attr ( 'name' ) ;
128
- var isCont = ( activeApp == "bwtester" || activeApp == "echo" ) ;
128
+ var isCont = ( activeApp == "bwtester" || activeApp == "echo" || activeApp == "traceroute" ) ;
129
129
enableContControls ( isCont ) ;
130
130
// show/hide graphs for bwtester
131
131
showOnlyConsoleGraphs ( activeApp ) ;
@@ -364,6 +364,8 @@ function manageTestData() {
364
364
requestBwTestByTime ( form_data ) ;
365
365
} else if ( activeApp == "echo" ) {
366
366
requestEchoByTime ( form_data ) ;
367
+ } else if ( activeApp == "traceroute" ) {
368
+ requestTraceRouteByTime ( form_data ) ;
367
369
}
368
370
lastTimeBwDb = now ;
369
371
} , dataIntervalMs ) ;
@@ -467,6 +469,42 @@ function requestEchoByTime(form_data) {
467
469
} ) ;
468
470
}
469
471
472
+ function requestTraceRouteByTime ( form_data ) {
473
+ $ . post ( "/gettraceroutebytime" , form_data , function ( json ) {
474
+ var d = JSON . parse ( json ) ;
475
+ console . info ( 'resp:' , JSON . stringify ( d ) ) ;
476
+ if ( d != null ) {
477
+ if ( d . active != null ) {
478
+ $ ( '#switch_cont' ) . prop ( "checked" , d . active ) ;
479
+ if ( d . active ) {
480
+ enableTestControls ( false ) ;
481
+ lockTab ( "traceroute" ) ;
482
+ } else {
483
+ enableTestControls ( true ) ;
484
+ releaseTabs ( ) ;
485
+ clearInterval ( intervalGraphData ) ;
486
+ }
487
+ }
488
+ if ( d . graph != null ) {
489
+ // write data on graph
490
+ for ( var i = 0 ; i < d . graph . length ; i ++ ) {
491
+ if ( d . graph [ i ] . CmdOutput != null
492
+ && d . graph [ i ] . CmdOutput != "" ) {
493
+ // result returned, display it and reset progress
494
+ handleEndCmdDisplay ( d . graph [ i ] . CmdOutput ) ;
495
+ }
496
+
497
+ console . info ( JSON . stringify ( data ) ) ;
498
+ console . info ( 'continous traceroute' , 'duration:' ,
499
+ d . graph [ i ] . ActualDuration , 'ms' ) ;
500
+
501
+ // TODO (mwfarb): implement traceroute graph
502
+ }
503
+ }
504
+ }
505
+ } ) ;
506
+ }
507
+
470
508
function refreshTickData ( chart , newTime ) {
471
509
var x = newTime , y = null ;
472
510
var series0 = chart . series [ 0 ] ;
@@ -587,7 +625,8 @@ function command(continuous) {
587
625
name : "apps" ,
588
626
value : activeApp
589
627
} ) ;
590
- if ( activeApp == "bwtester" || activeApp == "echo" ) {
628
+ if ( activeApp == "bwtester" || activeApp == "echo"
629
+ || activeApp == "traceroute" ) {
591
630
// add extra bwtester options required
592
631
form_data . push ( {
593
632
name : "continuous" ,
@@ -639,6 +678,8 @@ function command(continuous) {
639
678
} else if ( activeApp == "echo" ) {
640
679
// check for usable data for graphing
641
680
handleContResponse ( resp , continuous , startTime ) ;
681
+ } else if ( activeApp == "traceroute" ) {
682
+ handleContResponse ( resp , continuous , startTime ) ;
642
683
} else {
643
684
handleGeneralResponse ( ) ;
644
685
}
@@ -685,13 +726,15 @@ function lockTab(href) {
685
726
enableTab ( "camerapp" , "camerapp" == href ) ;
686
727
enableTab ( "sensorapp" , "sensorapp" == href ) ;
687
728
enableTab ( "echo" , "echo" == href ) ;
729
+ enableTab ( "traceroute" , "traceroute" == href ) ;
688
730
}
689
731
690
732
function releaseTabs ( ) {
691
733
enableTab ( "bwtester" , true ) ;
692
734
enableTab ( "camerapp" , true ) ;
693
735
enableTab ( "sensorapp" , true ) ;
694
736
enableTab ( "echo" , true ) ;
737
+ enableTab ( "traceroute" , true ) ;
695
738
}
696
739
697
740
function enableTab ( href , enable ) {
0 commit comments