Method code for $channel_ui.channel_purge_cmd()

[Turn on line numbering]
arg cmdstr, cmd, channel;
var db, channel, connected, u;

channel = (| tosym(channel.lowercase()) |) || 0;
if (channel == 0)
    return "@purge-channel <channel>";
db = (| $channel_db.search(channel) |) || 0;
if (db == 0)
    return "That channel does not exist.";
if (sender() != db[5] && !$sys.is_system(sender()))
    return "You are not the channel owner.";
$channel_db.remove(channel);
connected = $user_db.connected();
for u in ($user_db.database().to_dict().to_list().slice(2).compress()) {
    if (u in connected && u.channel_dict().invert().contains(db[1]))
        u.tell("<" + db[1] + "> Channel deleted by " + sender().name());
    (| u._del_active_channel(db[1]) |);
    (| u._del_channel_dict((u.channel_dict().invert())[db[1]]) |);
    pause();
}
return "Channel deleted.";

// Created 24-Jul-1996 as a part of ColdCore, see: @help Credit

Tlon