rendered paste bodyalias ircop.scan { if $dialog(ircop.s) == $null) { unset %cbd | dialog -m ircop.s ircop.s } }
dialog ircop.s {
title "IRCOP Scanner"
size -1 -1 245 270
text "", 5, 10 10 190 20
text "IRCOP(s) Per Channel", 6, 130 10 190 20
text "Channel to scan", 7, 130 165 130 100
list 8, 130 40 100 140, autohs
list 9, 10 40 100 140,autohs
button "Close", 2, 95 240 50 20, ok
button "Query", 18, 10 180 40 20
button "Refresh", 19, 65 180 45 20,default
button "Scan", 16, 190 210 40 15
combo 10, 130 180 100 100, drop
box "", 140, 5 18 110 190
box "", 141, 125 20 110 210
edit "", 142, 75 210 40 20,autohs read
text "Total IRCop(s)", 143, 5 215 70 15
}
on *:dialog:ircop.s:edit:*:{
if ($did == 10) set %cbd $did(ircop.s,10).text
}
menu channel,status {
-
IRCop Scan:ircop.scan
-
}
on *:dialog:ircop.s:init:*:{
dialog -t ircop.s $network IRCop Scan
did -o ircop.s 5 1 IRCOP(s) on $network
chan.l
ircop.s1
did -c ircop.s 10 1
}
on *:dialog:ircop.s:sclick:*:{
if ($did == 1) unset %cbd
if ($did == 16) ircops.chan
if ($did == 18) if ($did(9,$did(9).sel) != $null) query $did(9,$did(9).sel)
if ($did == 19) { ircop.s1 }
}
on *:dialog:ircop.s:dclick:*: if ($did == 9) query $did(9,$did(9).sel)
alias ircop.s1 {
did -r ircop.s 9
.disable #ircopscan.chan
.enable #ircop-scan.net
who 0 o
}
#ircopscan.chan off
raw 315:*: .disable #ircopscan.chan | halt
raw 352:*: if (* isin $7) did -a ircop.s 8 $6 | halt
#ircopscan.chan end
#ircop-scan.net off
raw 315:*: .disable #ircop-scan.net | halt
raw 352:*: if ($dialog(ircop.s) != $null) { did -a ircop.s 9 $6 | did -o ircop.s 142 1 $ircop.count | halt }
#ircop-scan.net end
alias ircops.chan {
did -r ircop.s 8
.who $did(ircop.s,10).text
.enable #ircopscan.chan
}
alias ircop.count {
if ($did(ircop.s,9,1).text == $null) { halt }
var %z = 0
:loop
inc %z 1
if ($did(ircop.s,9,%z).text != $null) { goto loop }
else return %z
}
alias chan.l {
var %channum = 0
:findchan
inc %channum 1
var %chan = $chan(%channum)
if (%chan == $null) { goto end }
did -i ircop.s 10 1 %chan
goto findchan
:end
}
alias ae return echo -a
alias se return echo -s
on *:load:{ $ae 12IRCop 4Scanner 12Loaded