]> ruin.nu Git - NDIRC.git/blobdiff - Usermgm.pm
scans are stored for much longer
[NDIRC.git] / Usermgm.pm
index 99f3ec979ec755220759841a720126f1d93cec9c..e02370dafb57fafc33f3bfa673d75d2bc5a382b5 100644 (file)
@@ -96,13 +96,13 @@ sub flag {
 
        if (officer()|| ($ND::target eq $ND::scanchan && $flag eq 'S')){
                my $f = $ND::DBH->prepare(qq{
-SELECT TRIM(', ' FROM concat(username||', ')) FROM
+SELECT TRIM(', ' FROM concat(username||', ')),count(username) FROM
        (SELECT uid, username FROM users ORDER BY username) u NATURAL JOIN groupmembers gm 
        JOIN groups g ON g.gid = gm.gid
 WHERE flag = ?;
                        });
-               if (my ($users) = $ND::DBH->selectrow_array($f,undef,$flag)){
-                       $ND::server->command("msg $ND::target Users with flag $ND::B$flag$ND::B: $users");
+               if (my ($users,$count) = $ND::DBH->selectrow_array($f,undef,$flag)){
+                       $ND::server->command("msg $ND::target $ND::B$count$ND::B Users with flag $ND::B$flag$ND::B: $users");
                }
        }else{
                $ND::server->command("msg $ND::target Only officers are allowed to check that");
@@ -114,16 +114,18 @@ sub laston {
 
        if (officer()){
                my $f = $ND::DBH->prepare(qq{SELECT username,last
-                       FROM (SELECT uid,username, date_part('day',now() - laston)::int AS last FROM users) u NATURAL JOIN groupmembers NATURAL JOIN groups WHERE flag = ? AND (last >= ? OR last IS NULL) ORDER BY last DESC
+                       FROM (SELECT uid,username, date_part('day',now() - laston)::int AS last,laston FROM users) u NATURAL JOIN groupmembers NATURAL JOIN groups WHERE flag = ? AND (last >= ? OR last IS NULL) ORDER BY laston
                        });
                $min = 0 unless defined $min;
                $f->execute($flag,$min);
                my $text;
+               my $i = 0;
                while (my $user = $f->fetchrow_hashref){
                        $user->{last} = '?' unless defined $user->{last};
                        $text .= "$user->{username}($user->{last}) ";
+                       $i++;
                }
-               $ND::server->command("msg $ND::target Users(days) with flag $ND::B$flag$ND::B: $text");
+               $ND::server->command("msg $ND::target $ND::B$i$ND::B Users(days) with flag $ND::B$flag$ND::B: $text");
        }else{
                $ND::server->command("msg $ND::target Only officers are allowed to check that");
        }