rendered paste bodymenu * {
-
Blacklist · V.01:BList
}
Alias BList {
dialog -md BList BList
}
dialog BList {
title "Advanced Blacklist Dialog™ · V.01"
size -1 -1 160 200
option dbu
Tab "Home", 01, 000 -002 160 202
Tab "Users", 02
Menu "&File" 03
Menu "&Clear Blacklisted Users" 04
Button "Edit User", 05, 62 177 36 12, Tab 2
Button "Ok", 06, 000 188 036 012, Ok
Button "Cancel", 07, 122 188 036 012, Cancel
Text "James' Blacklist dialog · On Request of [P5]", 08, 027 030 105 012, Tab 1
Box "Header", 09, 023 024 109 016, Tab 1
Edit "Person To Blacklist", 10, 028 050 100 012, Center, Tab 1, AutoHS
Edit "Reason for Blacklist", 11, 028 063 100 012, Center, Tab 1, AutoHS
Edit "#Channel for Blacklist", 12, 028 076 100 012, Center, Tab 1, AutoHS
Box "Blacklist Info", 13, 023 041 109 051, Tab 1
Check "Channel Blacklist", 14, 030 100 050 012, Tab 1
Check "Regular Blacklist", 15, 080 100 050 012, Tab 1
Box "Blacklist Type", 16, 023 094 109 020, Tab 1
Box "Blacklist Commands", 17, 023 120 109 023, Tab 1
button "Enable", 18, 44 128 36 12, Tab 1
button "Disable", 19, 80 128 36 12, Tab 1
Text "Advanced Blacklist Dialog™ · By Jdawg140 · V.01", 20, 000 175 160 012, Center, Tab 1
Text "", 21, 000 155 160 012, Center, Tab 1
List 22, 020 040 120 120, VSbar, HSbar, Tab 2
Box "Blacklisted Users", 23, 017 032 127 127, Tab 2
Button "Rem Blacklist", 24, 62 165 36 12, Tab 2
Tab "Global Ban", 25
Edit "Person To Global Ban", 26, 028 050 100 012, Center, Tab 25, AutoHS, Limit 60
Edit "Reason for Global Ban", 27, 028 063 100 012, Center, Tab 25, AutoHS
Box "Global Ban Info", 28, 023 041 109 038, Tab 25
Button "Global Ban!", 29, 060 090 36 012, Center, Tab 25
Box "Inishiate Ban", 30, 023 082 109 025, Tab 25
}
on *:dialog:BList:menu:*: {
if ($did == 54) dialog -x $dname
elseif ($did == 50) did -a $dname 21 Use the buttons on the dialog
elseif ($did == 51) {
if ($did($dname,22).seltext) {
remini BList.ini $network $gettok($ifmatch,1,46)
write -ds $+ $gettok($gettok($read(BList. $+ $network, $gettok($did($dname,22).seltext,1,46)),1,124),1,32) BList. $+ $network
r_BList
}
else did -a $dname 21 No selected User
}
elseif ($did == 52) {
if ($did($dname,22).seltext) {
remini BList.ini $network $gettok($ifmatch,1,46)
write -ds $+ $gettok($gettok($read(BList. $+ $network, $gettok($did($dname,22).seltext,1,46)),1,124),1,32) BList. $+ $network
set %Blacklist2.5 $gettok($ifmatch,2-,46)
r_BList
dialog -x $dname
BList
}
else did -a $dname 21 No selected User
}
elseif ($did == 55) {
.remove BList. $+ $network
remini BList.ini $network
did -a $dname 21 All blacklisted users removed
did -r $dname 22
}
}
ON *:DIALOG:BList:Close:*:{ unset %Blacklist.* }
ON *:DIALOG:BList:sclick:*:{
if ($did == 29) {
var %i = 0
while (%i < $comchan($me,0)) {
inc %i
if ($comchan($me,%i) != #Idle) {
if ($me ishop $comchan($me,%i) || $me isop $comchan($me,%i)) {
mode $comchan($me,%i) +b $iif($address($did($dname,26),2),$ifmatch,$did($dname,26))
msg $comchan($me,%i) 15,1 $+ I have just globaly banned $iif($address($did($dname,26),2),$ifmatch,$did($dname,26)) $&
$iif($address($did($dname,26),2), $&
( $+ $did($dname,26) $+ ) ) $+ . 10,1Reason: $qt($did($dname,27))
}
}
}
}
if ($did == 18) {
if (%Blacklist.18 == Enabled) {
write BList. $+ $network $iif($address($did($dname,10),2),$ifmatch,$did($dname,10)) $chr(124) $&
$calc($ini(BList.ini,$network,0) + 1) $chr(124) $iif($did($dname,14).state,~c: $+ $did($dname,12),~r:All) $&
$chr(124) $did($dname,11)
writeini BList.ini $network $calc($ini(BList.ini,$network,0) + 1) $iif($did($dname,14).state,~c: $+ $did($dname,12),~r:All) $&
$iif($address($did($dname,10),2),$ifmatch,$did($dname,10)) $chr(124) $did($dname,11)
did -az $dname 22 $ini(BList.ini,$network,0) $+ . $iif($did($dname,14).state,~c: $+ $did($dname,12),~r:All) $&
$iif($address($did($dname,10),2),$ifmatch,$did($dname,10)) $chr(124) $did($dname,11)
B_Check
}
else {
set %Blacklist.18 Enabled
did -a $dname 18 Add Blacklist
did -e $dname 19
did -n $dname 10
did -n $dname 11
}
}
elseif ($did == 5) {
if ($did($dname,22).seltext) {
remini BList.ini $network $gettok($ifmatch,1,46)
write -ds $+ $gettok($gettok($read(BList. $+ $network, $gettok($did($dname,22).seltext,1,46)),1,124),1,32) BList. $+ $network
set %Blacklist2.5 $gettok($ifmatch,2-,46)
r_BList
dialog -x $dname
BList
}
}
elseif ($did == 22) {
did -e $dname 24
did -e $dname 05
}
elseif ($did == 24) {
if ($did($dname,22).seltext) {
remini BList.ini $network $gettok($ifmatch,1,46)
write -ds $+ $gettok($gettok($read(BList. $+ $network, $gettok($did($dname,22).seltext,1,46)),1,124),1,32) BList. $+ $network
r_BList
}
}
elseif ($did == 14) {
if ($did($dname,15).state) {
did -u $dname 15
did -e $dname 12
did -e $dname 15
}
elseif (!$did($dname,15).state) {
did -c $dname 15
did -b $dname 15
did -b $dname 12
}
}
elseif ($did == 15) {
if (!$did($dname,14).state) did -c $dname 15
if ($did($dname,14).state) {
did -u $dname 14
did -b $dname 15
did -b $dname 12
}
}
elseif ($did == 19) {
did -m $dname 10
did -m $dname 11
did -b $dname 19
did -b $dname 12
unset %Blacklist.*
did -a $dname 18 Enable
did -b $dname 19
did -c $dname 15
did -b $dname 15
did -u $dname 14
}
}
ON *:DIALOG:BList:init:0:{
did -m $dname 10
did -m $dname 11
did -b $dname 12
did -c $dname 15
did -b $dname 19
did -b $dname 15
did -b $dname 20
did -b $dname 24
did -b $dname 05
did -a $dname 03 50 Add User
did -a $dname 03 51 Rem User
did -a $dname 03 52 Edit User
did -a $dname 03 53 $str($chr(160),6) $+ - $+ $str($chr(160),2)
did -a $dname 03 54 Close
did -a $dname 04 55 Clear!
var %i = 0
while (%i < $ini(BList.ini,$network,0)) {
inc %i
did -az $dname 22 %i $+ . $readini(BList.ini,$network,%i)
}
if (%Blacklist2.5) {
echo -at %Blacklist2.5
if (*~c:* iswm %Blacklist2.5) {
did -a $dname 21 Edit BlackList: Use A Comma (,) to seperate channels
did -r $dname 10
did -r $dname 11
did -r $dname 12
did -c $dname 14
did -u $dname 15
did -e $dname 12
did -a $dname 12 $remove($gettok(%Blacklist2.5,1,32),~c:)
did -a $dname 10 $gettok(%Blacklist2.5,2,32)
did -a $dname 11 $gettok(%Blacklist2.5,4-,32)
set %Blacklist.18 Enabled
did -a $dname 18 Add Blacklist
did -e $dname 19
did -n $dname 10
did -n $dname 11
unset %Blacklist2.5
}
if (*~r:* iswm %Blacklist2.5) {
did -a $dname 21 Edit BlackList: Use A Comma (,) to seperate channels
did -r $dname 10
did -r $dname 11
did -a $dname 11 $gettok(%Blacklist2.5,4-,32)
did -a $dname 10 $gettok(%Blacklist2.5,2,32)
set %Blacklist.18 Enabled
did -a $dname 18 Add Blacklist
did -e $dname 19
did -n $dname 10
did -n $dname 11
unset %Blacklist2.5
}
}
}
alias -l r_BList {
did -r BList 22
var %BList $ctime
var %i = 0
var %z = 0
while (%i < $ini(BList.ini,$network,0)) {
inc %i
write $+(%BList,.txt) $readini(BList.ini,$network,$ini(BList.ini,$network,%i))
}
remini BList.ini $network
while (%z < $lines($+(%BList,.txt))) {
inc %z
writeini BList.ini $network %z $read($+(%BList,.txt),%z)
did -az BList 22 $+(%z,.) $readini(BList.ini,$network,%z)
}
.remove $+(%BList,.txt)
}
ON *:OP:#:{ if ($opnick == $me) $bcheck($chan) }
ON *:HELP:#:{ if ($hnick == $me) $bcheck($chan) }
ON *:JOIN:#:{
if ($me isop $chan) || ($me ishop $chan) {
if ($read(BList. $+ $network, s, $nick) || $read(BList. $+ $network, s, $address($nick,2))) {
var %IfMatch = $ifmatch
if (*~r:All* iswm $gettok(%IfMatch,2,124) || *~c:* $+ $chan $+ * iswm $gettok(%IfMatch,2,124)) {
var %users +1
ban -k $chan $nick 2 4,1Blacklisted 15,1[Reason: $gettok(%IfMatch,3-,124) ] $KCOUNT
}
}
}
}
Alias -l bcheck {
var %i = 0
var %Chan = $1
while (%i < $nick($1,0)) {
inc %i
if ($read(BList. $+ $network, s, $nick($1,%i)) || $read(BList. $+ $network, s, $address($nick($1,%i),2))) {
var %IfMatch = $ifmatch
if (*~r:All* iswm $gettok(%IfMatch,2,124) || *~c:* $+ %Chan $+ * iswm $gettok(%IfMatch,2,124)) {
var %users +1
ban -k %Chan $nick(%Chan,%i) 2 4,1Blacklisted 15,1[Reason: $gettok(%IfMatch,3-,124) ] $KCOUNT
}
}
}
}
Alias -l B_Check {
var %i = 0
while (%i < $comchan($me,0)) {
inc %i
if ($me ishop $comchan($me,%i) || $me isop $comchan($me,%i)) {
$bcheck($comchan($me,%i))
}
}
}
alias -l kcount {
inc %kicks
Return [ ]
}