@@ -42,6 +42,8 @@ let feedTimestamp = '';
42
42
let alertsByLine = { } ;
43
43
// let alertsByStop = {};
44
44
45
+ let dataReturned = false ;
46
+
45
47
let railAlerts = {
46
48
'all' : [ ] ,
47
49
'current' : { } ,
@@ -68,7 +70,8 @@ fetch(DATA_SOURCE, {
68
70
throw new Error ( 'Network response was not ok.' ) ;
69
71
} )
70
72
. then ( data => {
71
- console . log ( 'Request successfull!' ) ;
73
+ console . log ( 'Request successful!' ) ;
74
+ dataReturned = true ;
72
75
console . log ( data ) ;
73
76
updateLastUpdated ( data . header . timestamp ) ;
74
77
processAlerts ( data . entity ) ;
@@ -529,6 +532,7 @@ function updateView() {
529
532
let filteredAlerts = [ ] ;
530
533
let service = getServiceSelected ( ) ;
531
534
let nowvsLater = getStatusSelected ( ) ;
535
+ let routeName = '' ;
532
536
533
537
switch ( serviceSelected ) {
534
538
case SERVICE . RAIL :
@@ -546,11 +550,13 @@ function updateView() {
546
550
alertList . innerHTML = '' ;
547
551
548
552
if ( Object . keys ( filteredAlerts ) . length == 0 ) {
549
- let noAlerts = document . createElement ( "div" ) ;
550
- noAlerts . classList . add ( "alert-item" ) ;
551
- noAlerts . innerHTML = `There are no ${ nowvsLater } alerts for ${ service } . Last updated: ${ feedTimestamp } .` ;
552
-
553
- alertList . appendChild ( noAlerts ) ;
553
+ if ( dataReturned ) {
554
+ let noAlerts = document . createElement ( "div" ) ;
555
+ noAlerts . classList . add ( "alert-item" ) ;
556
+ noAlerts . innerHTML = `There are no ${ nowvsLater } alerts for ${ service } . Last updated: ${ feedTimestamp } .` ;
557
+
558
+ alertList . appendChild ( noAlerts ) ;
559
+ }
554
560
} else {
555
561
// Loop through each key in the filteredAlerts object
556
562
for ( let item in filteredAlerts ) {
@@ -581,26 +587,32 @@ function updateView() {
581
587
switch ( railRoute ) {
582
588
case '801' :
583
589
railIcon . src = LINE_ICONS [ '801' ] ;
590
+ routeName = 'A Line' ;
584
591
railIcon . alt = 'A Line' ;
585
592
break ;
586
593
case '802' :
587
594
railIcon . src = LINE_ICONS [ '802' ] ;
595
+ routeName = 'B Line' ;
588
596
railIcon . alt = 'B Line' ;
589
597
break ;
590
598
case '803' :
591
599
railIcon . src = LINE_ICONS [ '803' ] ;
600
+ routeName = 'C Line' ;
592
601
railIcon . alt = 'C Line' ;
593
602
break ;
594
603
case '804' :
595
604
railIcon . src = LINE_ICONS [ '804' ] ;
605
+ routeName = 'E Line' ;
596
606
railIcon . alt = 'D Line' ;
597
607
break ;
598
608
case '805' :
599
609
railIcon . src = LINE_ICONS [ '805' ] ;
610
+ routeName = 'D Line' ;
600
611
railIcon . alt = 'E Line' ;
601
612
break ;
602
613
case '807' :
603
614
railIcon . src = LINE_ICONS [ '807' ] ;
615
+ routeName = 'K Line' ;
604
616
railIcon . alt = 'K Line' ;
605
617
break ;
606
618
}
@@ -618,23 +630,27 @@ function updateView() {
618
630
case '901' :
619
631
busIcon . src = LINE_ICONS [ '901' ] ;
620
632
busIcon . alt = 'G Line' ;
633
+ routeName = 'G Line' ;
621
634
icon . classList . add ( "alert-item__icon--bus-icon" ) ;
622
635
icon . appendChild ( busIcon ) ;
623
636
break ;
624
637
case '910' :
625
638
busIcon . src = LINE_ICONS [ '910' ] ;
626
639
busIcon . alt = 'J Line' ;
640
+ routeName = 'J Line' ;
627
641
icon . classList . add ( "alert-item__icon--bus-icon" ) ;
628
642
icon . appendChild ( busIcon ) ;
629
643
break ;
630
644
case '950' :
631
645
busIcon . src = LINE_ICONS [ '950' ] ;
632
646
busIcon . alt = 'J Line' ;
647
+ routeName = 'J Line' ;
633
648
icon . classList . add ( "alert-item__icon--bus-icon" ) ;
634
649
icon . appendChild ( busIcon ) ;
635
650
break ;
636
651
default :
637
652
icon . classList . add ( "alert-item__icon--bus" ) ;
653
+ routeName = `Line ${ busRoute } ` ;
638
654
}
639
655
640
656
icon . innerHTML = `<div>${ item } </div>` ;
@@ -669,6 +685,11 @@ function updateView() {
669
685
content_description . classList . add ( "alert-item__description" ) ;
670
686
content_description . innerHTML = alert . alert . description_text . translation [ 0 ] . text ;
671
687
688
+ if ( alert . alert . url ) {
689
+ content_description . innerHTML += `<br><br><a href="${ alert . alert . url . translation [ 0 ] . text } " target="_blank">More info on service impact to ${ routeName } .</a>` ;
690
+ }
691
+
692
+
672
693
content_description . innerHTML += '<br><br>Starting on: ' + convertDateTime ( alert . alert . active_period [ 0 ] . start ) ;
673
694
if ( alert . alert . active_period [ 0 ] . end ) {
674
695
content_description . innerHTML += '<br>Ending on: ' + convertDateTime ( alert . alert . active_period [ 0 ] . end ) ;
0 commit comments