use Exporter 'import';
our @EXPORT_OK = qw(utf8param
+ trimField
+ utf8paramTrim
isodate
xml_encode
cql_quote
return $cooked;
}
-
# Utility functions follow, exported for use of web UI
sub utf8param_apache1 {
my($r, $key, $value) = @_;
$year+1900, $mon+1, $mday, $hour, $min, $sec);
}
-# strips whitespaces and start and ends of fields
-sub trimFields {
+# strips whitespaces at start and ends of a field
+sub trimField {
my $field = shift;
$field =~ s/^\s+//;
return $field;
}
+# utf8param() with trim
+sub utf8paramTrim {
+ my $result = utf8param(@_);
+
+ if (defined $result) {
+ $result = trimField($result);
+ }
+
+ return $result;
+}
+
# I can't -- just can't, can't, can't -- believe that this function
# isn't provided by one of the core XML modules. But the evidence all
# says that it's not: among other things, XML::Generator and
}
} else {
- next if !$value; # No need to create a new empty node
+ next if !defined $value; # No need to create a new empty node
my($ppath, $selector) = $xpath =~ /(.*)\/(.*)/;
dom_add_node($xc, $ppath, $selector, $value, @addAfter);
#print "New $key ($xpath) = '$value'<br/>\n";
return (0, 0, 0) if $nall == 0;
my @okpings = $xc->findnodes('i:status/i:probe[@ok = "1"]');
my $nok = @okpings;
- my $percent = int(100*$nok/$nall);
+ my $percent = int(100*$nok/$nall + 0.5);
return ($nok, $nall, $percent);
}