Merge branch 'master' of ssh://git.indexdata.com:222/home/git/pub/irspy
[irspy-moved-to-github.git] / lib / ZOOM / IRSpy / Utils.pm
index 27df7c1..0583662 100644 (file)
@@ -163,7 +163,7 @@ sub cql_quote {
     my($term) = @_;
 
     $term =~ s/([""\\*?])/\\$1/g;
-    $term = qq["$term"] if $term =~ /[\s""\/]/;
+    $term = qq["$term"] if $term =~ /[\s""\/\\]/;
     return $term;
 }
 
@@ -180,8 +180,7 @@ sub cql_target {
        $id = $protocol;
     }
 
-    return "rec.id=" . cql_quote($id);
-    #return "rec.id_raw=" . cql_quote($id);
+    return "rec.id==" . cql_quote($id);
 }
 
 
@@ -814,17 +813,21 @@ sub calc_reliability_string {
 sub calc_reliability_stats {
     my($xc) = @_;
 
-    my $now = isodate(time());
+    my $sixtyDaysAgo = time() - 60*24*60*60;
+    my $iso60DA = isodate($sixtyDaysAgo);
     my @allpings = $xc->findnodes("i:status/i:probe");
-    return (0, 0, 0) if @allpings == 0;
 
     my($nall, $nok) = (0, 0);
     foreach my $node (@allpings) {
        my $ok = $xc->findvalue('@ok', $node);
+       my $when = $node->to_literal();
+       #warn "$when cmp $iso60DA == ", ($when cmp $iso60DA), "\n";
+       next if $when lt $iso60DA;
        $nall++;
        $nok += !!$ok;
     }
 
+    return (0, 0, 0) if $nall == 0;
     my $percent = int(100*$nok/$nall + 0.5);
     return ($nok, $nall, $percent);
 }