@@ -4289,7 +4289,9 @@ function singleRecovery(serial) {
42894289 data : datastr ,
42904290 dataType : "json" ,
42914291 success : function ( response , textStatus ) {
4292- updateRecoveries ( response ) ;
4292+ if ( ! offline . get ( 'opt_hide_recoveries' ) ) {
4293+ updateRecoveries ( response , true ) ;
4294+ }
42934295 }
42944296 } ) ;
42954297
@@ -4732,8 +4734,7 @@ function updateRecoveryMarker(recovery) {
47324734 }
47334735 }
47344736
4735- function updateRecoveries ( r ) {
4736-
4737+ function updateRecoveries ( r , single = false ) {
47374738 if ( ! r ) return ;
47384739 ls_recoveries = true ;
47394740
@@ -4742,41 +4743,38 @@ function updateRecoveryMarker(recovery) {
47424743
47434744 var i = 0 , ii = r . length ;
47444745 for ( ; i < ii ; i ++ ) {
4745- var date = Date . parse ( r [ i ] . datetime ) ;
4746- if ( ( ( dateNow - date ) / 86400000 ) < 3 ) {
4747- var lat = parseFloat ( r [ i ] . lat ) ;
4748- var lon = parseFloat ( r [ i ] . lon ) ;
4749-
4750- if ( lat < - 90 || lat > 90 || lon < - 180 || lon > 180 ) continue ;
4751-
4752- var r_index = $ . inArray ( r [ i ] . serial , recovery_names ) ;
4753-
4754- if ( r_index == - 1 ) {
4755- recovery_names . push ( r [ i ] . serial ) ;
4756- r_index = recovery_names . length - 1 ;
4757- recoveries [ r_index ] = { marker : null , infobox : null } ;
4758- }
4759-
4760- var recovery = recoveries [ r_index ] ;
4761- recovery . serial = r [ i ] . serial ;
4762- recovery . lat = lat ;
4763- recovery . lon = lon ;
4764- recovery . recovered_by = r [ i ] . recovered_by ;
4765- recovery . alt = parseFloat ( r [ i ] . alt ) ;
4766- recovery . recovered = r [ i ] . recovered ;
4767- recovery . description = r [ i ] . description ;
4768- recovery . datetime = r [ i ] . datetime ;
4769- recovery . fresh = true ;
4770-
4771- updateRecoveryMarker ( recovery ) ;
4772- }
4746+ var lat = parseFloat ( r [ i ] . lat ) ;
4747+ var lon = parseFloat ( r [ i ] . lon ) ;
4748+
4749+ if ( lat < - 90 || lat > 90 || lon < - 180 || lon > 180 ) continue ;
4750+
4751+ var r_index = $ . inArray ( r [ i ] . serial , recovery_names ) ;
4752+
4753+ if ( r_index == - 1 ) {
4754+ recovery_names . push ( r [ i ] . serial ) ;
4755+ r_index = recovery_names . length - 1 ;
4756+ recoveries [ r_index ] = { marker : null , infobox : null } ;
4757+ }
4758+
4759+ var recovery = recoveries [ r_index ] ;
4760+ recovery . serial = r [ i ] . serial ;
4761+ recovery . lat = lat ;
4762+ recovery . lon = lon ;
4763+ recovery . recovered_by = r [ i ] . recovered_by ;
4764+ recovery . alt = parseFloat ( r [ i ] . alt ) ;
4765+ recovery . recovered = r [ i ] . recovered ;
4766+ recovery . description = r [ i ] . description ;
4767+ recovery . datetime = r [ i ] . datetime ;
4768+ recovery . fresh = true ;
4769+ updateRecoveryMarker ( recovery ) ;
4770+
47734771 }
47744772
47754773 // clear old recovery markers
47764774 i = 0 ;
47774775 for ( ; i < recoveries . length ; ) {
47784776 var e = recoveries [ i ] ;
4779- if ( e . fresh ) {
4777+ if ( e . fresh || single ) {
47804778 e . fresh = false ;
47814779 i ++ ;
47824780 }
0 commit comments