@@ -274,7 +274,9 @@ function setupInputListeners() {
274
274
$listview ,
275
275
$mapSvg ,
276
276
$map ,
277
- $countryHover ;
277
+ $countryHover ,
278
+ reload = true ,
279
+ reload_team = true ;
278
280
279
281
280
282
/**
@@ -516,44 +518,72 @@ function setupInputListeners() {
516
518
} , FB_CTF . data . CONF . refreshConf ) ;
517
519
518
520
// Countries and other modules
521
+ var count = 0 ;
519
522
setInterval ( function ( ) {
520
- if ( FB_CTF . data . CONF . gameboard === '1' ) {
521
- // Map
522
- getCountryData ( ) ;
523
- refreshMapData ( ) ;
524
- // Announcements
525
- if ( Widget . getWidgetStatus ( 'Announcements' ) === 'open' ) {
526
- loadAnnouncementsModule ( ) ;
527
- }
528
- // Filter
529
- if ( Widget . getWidgetStatus ( 'Filter' ) === 'open' ) {
530
- loadSavedFilterModule ( ) ;
531
- }
532
- // Activity
533
- if ( Widget . getWidgetStatus ( 'Activity' ) === 'open' ) {
534
- loadActivityModule ( ) ;
523
+ if ( reload == true || count > 1 ) {
524
+ reload = false ;
525
+ if ( FB_CTF . data . CONF . gameboard === '1' ) {
526
+ // Map
527
+ getCountryData ( ) ;
528
+ refreshMapData ( ) ;
529
+ // Announcements
530
+ if ( Widget . getWidgetStatus ( 'Announcements' ) === 'open' ) {
531
+ loadAnnouncementsModule ( ) ;
532
+ }
533
+ // Filter
534
+ if ( Widget . getWidgetStatus ( 'Filter' ) === 'open' ) {
535
+ loadSavedFilterModule ( ) ;
536
+ }
537
+ // Activity
538
+ if ( Widget . getWidgetStatus ( 'Activity' ) === 'open' ) {
539
+ loadActivityModule ( ) ;
540
+ }
541
+ } else {
542
+ clearMapData ( ) ;
543
+ clearAnnouncements ( ) ;
544
+ clearActivity ( ) ;
535
545
}
536
- } else {
537
- clearMapData ( ) ;
538
- clearAnnouncements ( ) ;
539
- clearActivity ( ) ;
546
+ }
547
+
548
+ if ( reload == false ) {
549
+ count += 1 ;
550
+ }
551
+
552
+ // reset counter
553
+ if ( count > 1 ) {
554
+ count = 0 ;
555
+ reload = true ;
540
556
}
541
557
} , FB_CTF . data . CONF . refreshMap ) ;
542
558
543
559
// Teams
560
+ var teams_count = 0 ;
544
561
setInterval ( function ( ) {
545
- if ( FB_CTF . data . CONF . gameboard === '1' ) {
546
- // Teams
547
- loadTeamData ( ) ;
548
- if ( Widget . getWidgetStatus ( 'Teams' ) === 'open' ) {
549
- loadTeamsModule ( ) ;
550
- }
551
- if ( Widget . getWidgetStatus ( 'Leaderboard' ) === 'open' ) {
552
- loadLeaderboardModule ( ) ;
562
+ if ( reload_team == true || teams_count > 1 ) {
563
+ reload_team = false ;
564
+ if ( FB_CTF . data . CONF . gameboard === '1' ) {
565
+ // Teams
566
+ loadTeamData ( ) ;
567
+ if ( Widget . getWidgetStatus ( 'Teams' ) === 'open' ) {
568
+ loadTeamsModule ( ) ;
569
+ }
570
+ if ( Widget . getWidgetStatus ( 'Leaderboard' ) === 'open' ) {
571
+ loadLeaderboardModule ( ) ;
572
+ }
573
+ } else {
574
+ clearTeams ( ) ;
575
+ clearLeaderboard ( ) ;
553
576
}
554
- } else {
555
- clearTeams ( ) ;
556
- clearLeaderboard ( ) ;
577
+ }
578
+
579
+ if ( reload_team == false ) {
580
+ teams_count += 1 ;
581
+ }
582
+
583
+ // reset team counter
584
+ if ( teams_count > 1 ) {
585
+ teams_count = 0 ;
586
+ reload_team = true ;
557
587
}
558
588
} , FB_CTF . data . CONF . refreshMap ) ;
559
589
@@ -1433,13 +1463,16 @@ function setupInputListeners() {
1433
1463
return $ . get ( loadPath , function ( data ) {
1434
1464
FB_CTF . data . TEAMS = data ;
1435
1465
var df = $ . Deferred ( ) ;
1466
+ reload_team = true ;
1436
1467
return df . resolve ( FB_CTF . data . TEAMS ) ;
1437
1468
} , 'json' ) . error ( function ( jqhxr , status , error ) {
1438
1469
console . error ( "There was a problem retrieving the team data." ) ;
1439
1470
console . log ( loadPath ) ;
1440
1471
console . log ( status ) ;
1441
1472
console . log ( error ) ;
1442
1473
console . error ( "/error" ) ;
1474
+ console . error ( "Team data request failed" ) ;
1475
+ reload_team = false ;
1443
1476
} ) ;
1444
1477
}
1445
1478
@@ -1498,13 +1531,15 @@ function setupInputListeners() {
1498
1531
return $ . get ( loadPath , function ( data ) {
1499
1532
FB_CTF . data . CONF = data ;
1500
1533
var df = $ . Deferred ( ) ;
1534
+ reload = true ;
1501
1535
return df . resolve ( FB_CTF . data . CONF ) ;
1502
1536
} , 'json' ) . error ( function ( jqhxr , status , error ) {
1503
1537
console . error ( "There was a problem retrieving the conf data." ) ;
1504
1538
console . log ( loadPath ) ;
1505
1539
console . log ( status ) ;
1506
1540
console . log ( error ) ;
1507
1541
console . error ( "/error" ) ;
1542
+ reload = false ;
1508
1543
} ) ;
1509
1544
}
1510
1545
@@ -1546,12 +1581,14 @@ function setupInputListeners() {
1546
1581
$ ( '#' + key ) [ 0 ] . parentNode . setAttribute ( 'data-captured' , value . datacaptured ) ;
1547
1582
}
1548
1583
} ) ;
1584
+ reload = true ;
1549
1585
} , 'json' ) . error ( function ( jqhxr , status , error ) {
1550
1586
console . error ( "There was a problem retrieving the map data." ) ;
1551
1587
console . log ( loadPath ) ;
1552
1588
console . log ( status ) ;
1553
1589
console . log ( error ) ;
1554
1590
console . error ( "/error" ) ;
1591
+ reload = false ;
1555
1592
} ) ;
1556
1593
}
1557
1594
@@ -1568,12 +1605,14 @@ function setupInputListeners() {
1568
1605
$ ( '#' + key ) [ 0 ] . parentNode . children [ 1 ] . classList . remove ( "captured--you" ) ;
1569
1606
$ ( '#' + key ) [ 0 ] . parentNode . children [ 1 ] . classList . remove ( "captured--opponent" ) ;
1570
1607
} ) ;
1608
+ reload = true ;
1571
1609
} , 'json' ) . error ( function ( jqhxr , status , error ) {
1572
1610
console . error ( "There was a problem retrieving the map data." ) ;
1573
1611
console . log ( loadPath ) ;
1574
1612
console . log ( status ) ;
1575
1613
console . log ( error ) ;
1576
1614
console . error ( "/error" ) ;
1615
+ reload = false ;
1577
1616
} ) ;
1578
1617
}
1579
1618
@@ -1591,13 +1630,15 @@ function setupInputListeners() {
1591
1630
return $ . get ( loadPath , function ( data ) {
1592
1631
FB_CTF . data . COUNTRIES = data ;
1593
1632
var df = $ . Deferred ( ) ;
1633
+ reload = true ;
1594
1634
return df . resolve ( FB_CTF . data . COUNTRIES ) ;
1595
1635
} , 'json' ) . error ( function ( jqxhr , status , error ) {
1596
1636
console . error ( "There was a problem retrieving the game data." ) ;
1597
1637
console . log ( loadPath ) ;
1598
1638
console . log ( status ) ;
1599
1639
console . log ( error ) ;
1600
1640
console . error ( "/error" ) ;
1641
+ reload = false ;
1601
1642
} ) ;
1602
1643
}
1603
1644
0 commit comments