menu nicklist {
•NOTICELOCKER•
.LOCK $chr(9) $1
..NICK $chr(8199) $mnick($1) : lock $1 $mnick($1)
..USER $chr(8199) $muser($1) : lock $1 $muser($1)
..HOST $chr(8199) $mhost($1) : lock $1 $mhost($1)
.UNLOCK $chr(9) $1
..NICK $chr(8199) $mnick($1) : unlock $1 $mnick($1)
..USER $chr(8199) $muser($1) : unlock $1 $muser($1)
..HOST $chr(8199) $mhost($1) : unlock $1 $mhost($1)
.-
.LIST: ignore -ln
}
on *:PARSELINE:in:* NOTICE *:{
var %addr $matchtok($gettok($parseline,1,58),@,1,32), %nick $gettok(%addr,1,33)
if ($readfile($mnick(%nick))) || ($readfile($muser(%nick))) || ($readfile($mhost(%nick))) {
var %v1 $v1 | if (!$ignore(%v1)) .ignore -n %v1
if (!$hget(inot,%nick)) { .notice %nick NOTICE NOT ALLOWED !!! | .hadd -m inot %nick 1 }
}
else {
if ($ignore($mnick(%nick))) .ignore -rn $mnick(%nick)
if ($ignore($muser(%nick))) .ignore -rn $muser(%nick)
if ($ignore($mhost(%nick))) .ignore -rn $mhost(%nick)
if ($hget(inot,%nick)) .hdel -w inot %nick
}
}
alias -l pathfile { return addons/noticeblocked.txt }
alias -l readfile { if ($read($pathfile,ntw,$1)) { return $v1 } }
alias -l mnick { return $+($ial($1).nick,!*@*) }
alias -l muser { return $+(*!,$ial($1).user,@*) }
alias -l mhost { return $+(*!*@,$ial($1).host) }
alias -l lock { if (!$readfile($2)) { write -i $pathfile $2 | .ignore -n $2 | echo 4 LOCK: $1 - $2 } }
alias -l unlock { if ($readfile($2)) { write $+(-dl,$readn) $pathfile | .ignore -rn $2 | if (!$ignore($address($1,5)) && $hget(inot,$1)) { .hdel -w inot $1 } | echo 3 UNLOCK: $1 - $2 } }