]> ruin.nu Git - NDIRC.git/blobdiff - Commands/Usermgm.pm
Converted the .flags command
[NDIRC.git] / Commands / Usermgm.pm
index be87acb886493a059a1b2c33284f957e6d917b10..8a87f8e1fae85147459336c9e4bcf654420c6f29 100644 (file)
@@ -162,4 +162,22 @@ GROUP BY username,pnick,hostmask LIMIT 5
        }
 }
 
+sub flag
+       : Help(syntax: .flag flag | Lists all users with the given flag.)
+       : ACL(irc_flag)
+{
+       my ($self,$c,$msg) = @_;
+       my ($flag) = $msg =~ /^(\w)$/ or die 'ARGS';
+
+       my $f = $c->model->prepare(q{
+SELECT TRIM(', ' FROM concat(username||', ')),count(username)
+FROM (SELECT uid, username FROM users ORDER BY username) u
+       JOIN groupmembers gm USING (uid)
+       JOIN groups g USING (gid)
+WHERE flag = $1
+               });
+       my ($users,$count) = $c->model->selectrow_array($f,undef,$flag);
+       $c->reply("<b>$count</b> Users with flag <b>$flag</b>: $users");
+}
+
 1;