return;
}
- my $i = 0;
- my %factinfo;
- my @factinfo = &getFactInfo($faqtoid,"*");
- foreach ( &dbGetColInfo("factoids") ) {
- $factinfo{$_} = $factinfo[$i] || '';
- $i++;
- }
+ my %factinfo = &dbGetColNiceHash("factoids", "*", "factoid_key=".&dbQuote($faqtoid));
# factoid does not exist.
- if (scalar @factinfo <= 1) {
+ if (scalar (keys %factinfo) <= 1) {
&performReply("there's no such factoid as \002$faqtoid\002");
return;
}
}
# modified:
-# if ($factinfo{'modified_by'}) {
-# $string = "last modified";
-#
-# my $time = $factinfo{'modified_time'};
-# if ($time) {
-# if (time() - $time > 60*60*24*7) {
-# $string .= " at \037". scalar(localtime $time). "\037";
-# } else {
-# $string .= " ".&Time2String(time() - $time)." ago";
-# }
-# }
-#
-# my @x;
-# foreach (split ",", $factinfo{'modified_by'}) {
-# /\!/;
-# push(@x, $`);
-# }
-# $string .= "by ".&IJoin(@x);
-#
-# $i++;
-# push(@array,$string);
-# }
+ if ($factinfo{'modified_by'}) {
+ $string = "last modified";
+
+ my $time = $factinfo{'modified_time'};
+ if ($time) {
+ if (time() - $time > 60*60*24*7) {
+ $string .= " at \037". scalar(localtime $time). "\037";
+ } else {
+ $string .= " ".&Time2String(time() - $time)." ago ";
+ }
+ }
+
+ my @x;
+ foreach (split ",", $factinfo{'modified_by'}) {
+ /\!/;
+ push(@x, $`);
+ }
+ $string .= "by ".&IJoin(@x);
+
+ $i++;
+ push(@array,$string);
+ }
# requested:
if ($factinfo{'requested_by'}) {
my $prefix = "factoid statistics by author: ";
return &formListReply(0, $prefix, @list);
- } elsif ($type =~ /^broken$/i) {
- &status("factstats(broken): starting...");
+ } elsif ($type =~ /^vandalism$/i) {
+ &status("factstats(vandalism): starting...");
my $start_time = &timeget();
my %data = &dbGetCol("factoids", "factoid_key,factoid_value", "factoid_value IS NOT NULL");
my @list;
my $delta_time = &timedelta($start_time);
- &status(sprintf("factstats(broken): %.02f sec to retreive all factoids.", $delta_time)) if ($delta_time > 0);
+ &status(sprintf("factstats(vandalismbroken): %.02f sec to retreive all factoids.", $delta_time)) if ($delta_time > 0);
$start_time = &timeget();
# parse the factoids.
}
$delta_time = &timedelta($start_time);
- &status(sprintf("factstats(broken): %.02f sec to complete.", $delta_time)) if ($delta_time > 0);
+ &status(sprintf("factstats(vandalism): %.02f sec to complete.", $delta_time)) if ($delta_time > 0);
# bail out on no results.
if (scalar @list == 0) {
- return 'no broken factoids... wooohoo.';
+ return 'no vandalised factoids... wooohoo.';
}
# parse the results.
- my $prefix = "broken factoid ";
+ my $prefix = "Vandalised factoid ";
return &formListReply(1, $prefix, @list);
} elsif ($type =~ /^total$/i) {
for (@list) {
my $factoid = $_;
my $val = &getFactInfo($factoid, "factoid_value");
- if ($val =~ /^<REPLY> see( also)? (.*?)\.?$/i) {
+ if ($val =~ /^<REPLY> ?see( also)? (.*?)\.?$/i) {
my $redirf = lc $2;
my $redir = &getFactInfo($redirf, "factoid_value");
next if (defined $redir);
my @list;
my $total = 0;
my $users = 0;
- foreach $rate (sort { $a <=> $b } keys %hash) {
+ foreach $rate (sort { $b <=> $a } keys %hash) {
my $f = join(", ", sort keys %{ $hash{$rate} });
my $str = "$f - ".&Time2String($rate);
$str =~ s/\002//g;