X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=Commands%2FUsermgm.pm;h=e530b84c8ac8049c8a35050d3670e25809ae9e30;hb=726b4c0ff9accf03aac73e14d6aee8742bc95c92;hp=5866f9144886ecd829b6b91874988a0148c9a2c0;hpb=8d103256e7f29d892d040ec25a38b2cb56e7f942;p=NDIRC.git diff --git a/Commands/Usermgm.pm b/Commands/Usermgm.pm index 5866f91..e530b84 100644 --- a/Commands/Usermgm.pm +++ b/Commands/Usermgm.pm @@ -60,7 +60,7 @@ INSERT INTO users (username,hostmask,pnick,discord_id) VALUES($1,$2,$3,$4) }; command '-user' => { - help => q(syntax: .-user nick | nick must be alphanum characters, if no pnick is given then it will be set to nick), + help => q(syntax: .-user nick | Deactivates a user), type => q(usermgmt), acl => 'irc_deactivateuser' }, class extends NDIRC::Command { @@ -74,8 +74,8 @@ command '-user' => { if ($f->rows == 1){ my $updated = $dbh->do(q{ -UPDATE users SET hostmask = $1, password = NULL WHERE uid = $2 - },undef,$username,$uid); +UPDATE users SET hostmask = NULL, discord_id = discord_id || '_', password = NULL WHERE uid = $1 + },undef,$uid); if ($updated > 0){ my $groups = $dbh->do(q{DELETE FROM groupmembers WHERE uid = ?},undef,$uid); $groups += 0; @@ -159,16 +159,16 @@ command whois => { my $f = $dbh->prepare(q{ -SELECT username, pnick, hostmask, array_to_string(array_agg(gid),'') AS flags +SELECT username, pnick, hostmask, discord_id, array_to_string(array_agg(gid),'') AS flags FROM users u LEFT OUTER JOIN (SELECT uid,gid FROM groupmembers ORDER BY uid,gid ) g USING (uid) WHERE username ILIKE ? -GROUP BY username,pnick,hostmask LIMIT 5 +GROUP BY username,pnick,hostmask,discord_id LIMIT 5 }); $f->execute($nick); while (my $user = $f->fetchrow_hashref){ - $c->reply("$user->{username} (/$user->{pnick}) flags: ($user->{flags}) host: $user->{hostmask}"); + $c->reply("$user->{username} ($user->{pnick},$user->{discord_id}) flags: ($user->{flags}) host: $user->{hostmask}"); } if ($f->rows == 0){ $c->reply("No hit, maybe spelling mistake, or add % as wildcard");