}
}
+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;
our @ISA = qw/Exporter/;
-our @EXPORT = qw/flag laston addPoints setHost setPNick getShips getFleet/;
-
-sub flag {
- my ($msg, $command) = @_;
-
- my ($flag);
- if(defined $msg && $msg =~ /^(\w)$/){
- $flag = $1;
- }else{
- $ND::server->command("notice $ND::nick syntax: .$command flag");
- return;
- }
-
- if (officer() || ia() || ($ND::target eq $ND::scanchan && $flag eq 'S')){
- my $f = $ND::DBH->prepare(qq{
-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,$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");
- }
-}
+our @EXPORT = qw/laston addPoints setHost setPNick getShips getFleet/;
sub laston {
my ($msg, $command) = @_;
INSERT INTO roles VALUES('irc_deactivateuser');
INSERT INTO roles VALUES('irc_chattr');
INSERT INTO roles VALUES('irc_whois');
+INSERT INTO roles VALUES('irc_flag');
INSERT INTO group_roles (gid,role) VALUES(1,'irc_p_nick');
INSERT INTO group_roles (gid,role) VALUES(1,'irc_p_intel');
INSERT INTO group_roles (gid,role) VALUES(1,'irc_deactivateuser');
INSERT INTO group_roles (gid,role) VALUES(1,'irc_chattr');
INSERT INTO group_roles (gid,role) VALUES(1,'irc_whois');
+INSERT INTO group_roles (gid,role) VALUES(1,'irc_flag');
INSERT INTO group_roles (gid,role) VALUES(2,'irc_gs');
INSERT INTO group_roles (gid,role) VALUES(2,'irc_scan');
INSERT INTO group_roles (gid,role) VALUES(3,'irc_deactivateuser');
INSERT INTO group_roles (gid,role) VALUES(3,'irc_chattr');
INSERT INTO group_roles (gid,role) VALUES(3,'irc_whois');
+INSERT INTO group_roles (gid,role) VALUES(3,'irc_flag');
INSERT INTO group_roles (gid,role) VALUES(4,'irc_points_others');
INSERT INTO group_roles (gid,role) VALUES(18,'irc_p_intel');
INSERT INTO group_roles (gid,role) VALUES(18,'irc_points_others');
INSERT INTO group_roles (gid,role) VALUES(18,'irc_whois');
+INSERT INTO group_roles (gid,role) VALUES(18,'irc_flag');
INSERT INTO group_roles (gid,role) VALUES(19,'irc_p_intel');