rendered paste bodydialog AddNickHost.info {
title "WiseS"
size -1 -1 82 51
option dbu
text "Add by:", 1, 1 1 25 8
radio "Nick", 2, 1 10 23 10
radio "Ident", 3, 25 14 23 10
radio "Host", 4, 1 18 23 10
edit "", 6, 1 29 77 10
button "Ok", 7, 1 39 34 11
button "Cancel", 8, 44 39 34 11, cancel
}
on *:dialog:AddNickHost.info:*:*: {
if ($devent == init) {
if (!$dialog(infoline)) {
dialog -x $dname
}
}
if ($devent == sclick) && ($did == 7) {
if ($did(6).text) {
if ($did(AddNickHost.info,2,0).state == 1) {
set %x $chr(127) $+ Nick
}
if ($did(AddNickHost.info,3,0).state == 1) {
set %x $chr(127) $+ Ident
}
if ($did(AddNickHost.info,4,0).state == 1) {
set %x $chr(127) $+ Host
}
if ($did(AddNickHost.info,5,0).state == 1) {
set %x $chr(127) $+ Full
}
writeini Data\InfoLine.ws $+($ini.encode($did(6).text),%x) on true
unset %x
info.refreshnicks
dialog -x $dname
}
else {
noop $input(Please input text,w,Warning,w)
}
}
}
dialog AddInfo.info {
title "Add Info [WiseScript]"
size -1 -1 137 37
option dbu
button "Ok", 5, 3 21 34 11, ok
button "Cancel", 6, 40 21 36 11, cancel
text "Info:", 1, 2 1 25 8
}
on *:dialog:AddInfo.info:*:*: {
if ($devent == init) {
if (!$dialog(infoline)) {
dialog -x $dname
}
dcx Mark $dname AddInfo.info_cb
xdialog -c $dname 2 richedit 4 18 260 20
}
if ($devent == sclick) {
if ($did == 5) {
set %x $calc($remove($ini(Data\InfoLine.ws,$info.getselected,$ini(Data\InfoLine.ws,$info.getselected,0)),info) + 1)
writeini Data\InfoLine.ws $info.getselected $+(info,%x) $xdid($dname,2).text
info.refreshinfos %Info.ToAdd
unset %Info.ToAdd
unset %x
}
if ($did == 6) {
unset %Info.ToAdd
}
}
if ($devent == close) {
if (%Info.ToAdd) { unset %Info.ToAdd }
}
}
alias AddInfo.info_cb {
}
dialog infoline {
title "Info Line [WiseScript]"
size -1 -1 454 250
option pixels
button "", 12, -1 -1 1 1, ok
}
on *:dialog:infoline:*:*: {
if ($devent == init) {
dcx Mark $dname InfoLine_cb
xdialog -c $dname 1 listview 8 29 110 146 report grid showsel singlesel
xdialog -c $dname 2 listview 128 29 308 146 report grid noheader showsel singlesel
xdid -t $dname 1 +c 0 60 Nick/host $chr(9) +c 0 47 type
xdid -t $dname 2 +c 0 304 Info Lines
xdialog -c $dname 3 button 8 176 46 20
xdid -t $dname 3 Add
xdialog -c $dname 4 button 60 176 46 20
xdid -t $dname 4 Delete
xdialog -c $dname 5 button 338 176 46 20
xdid -t $dname 5 Add
xdialog -c $dname 6 button 390 176 46 20
xdid -t $dname 6 Delete
xdialog -c $dname 7 text 8 12 50 16
xdid -t $dname 7 Nick/Host:
xdialog -c $dname 8 text 130 12 50 16
xdid -t $dname 8 Info Line:
xdialog -c $dname 9 text 8 202 50 16
xdid -t $dname 9 Preview:
xdialog -c $dname 10 @info.win 6 224 364 20
xdialog -c $dname 11 button 372 222 74 24
xdid -t $dname 11 Ok
info.refreshnicks
}
if ($devent = close) {
if ($dialog(AddNickHost.info)) {
dialog -x AddNickHost.info
}
if ($dialog(AddInfo.info)) {
dialog -x AddInfo.info
}
}
}
alias infoline_cb {
if ($2 == sclick) {
if ($3 == 1) {
info.refreshinfos $info.getselected
}
if ($3 == 2) {
}
if ($3 == 3) {
if ($dialog(AddNickHost.info)) {
dialog -v AddNickHost.info
}
else {
dialog -m AddNickHost.info AddNickHost.info
}
}
if ($3 == 4) {
var %x
if ($xdid(infoline,1).selnum > 0) {
remini Data\InfoLine.ws $info.getselected
info.refreshnicks
}
}
if ($3 == 5) {
set %Info.ToAdd $info.getselected
if ($dialog(AddInfo.info)) {
dialog -v AddInfo.info
}
else {
dialog -m AddInfo.info AddInfo.info
}
}
if ($3 == 6) {
remini Data\InfoLine.ws $info.getselected $ini(Data\InfoLine.ws,$info.getselected,$calc($xdid(infoline,2).sel + 1))
info.refreshinfos $info.getselected
}
if ($3 == 11) {
dialog -k infoline
}
}
}
alias info.refreshnicks {
xdid -r infoline 1
var %y 1
while ($ini(Data\InfoLine.ws,%y)) {
var %x $v1
xdid -a infoline 1 0 0 0 0 0 0 0 0 0 $replace(%x,$gettok(%x,1,127),$ini.decode($gettok(%x,1,127)),$chr(127),$tab $+ 0 0 $+ $chr(32),Full,Full Name)
inc %y
}
}
alias info.refreshinfos {
xdid -r infoline 2
var %x 2
while ($ini(Data\InfoLine.ws,$1,%x)) {
xdid -a infoline 2 0 0 0 0 0 0 0 0 0 $readini(Data\InfoLine.ws,$1,$v1)
inc %x
}
unset %1
}
alias info.getselected {
return $+($ini.encode($xdid(infoline,1,0).seltext),$chr(127),$replace($xdid(infoline,1,1).seltext,Full Name,Full))
}
alias info.design {
return Random InfoLine for $+(,$left($1,1),,$right($1,-1))
}
on *:join:#: {
var %info.nick $ini.encode($nick)
var %info.ident $ini.encode($ident($nick))
var %info.host $ini.encode($address($nick,5))
if ($ini(Data\InfoLine.ws,$+(%info.nick,$chr(127),nick),0) > 1) {
set %x $rand(2,$v1)
msg $chan $info.design $+ $nick $+($([),$calc(%x - 1),/,$calc($v1 - 1),$(])) : $readini(Data\InfoLine.ws,$+(%info.nick,$chr(127),nick),$ini(Data\InfoLine.ws,$+(%info.nick,$chr(127),nick),%x))
unset %x
}
elseif ($ini(Data\InfoLine.ws,$+(%info.ident,$chr(127),ident),0) > 1) {
set %x $rand(2,$v1)
msg $chan $info.design $+ $nick $+($([),$calc(%x - 1),/,$calc($v1 - 1),$(])) : $readini(Data\InfoLine.ws,$+(%info.ident,$chr(127),ident),$ini(Data\InfoLine.ws,$+(%info.ident,$chr(127),ident),%x))
unset %x
}
else {
var %x 1
while ($ini(Data\InfoLine.ws,%x)) {
set %z $v1
if ($gettok($v1,2,127) == host) {
set %y $deltok(%z,2,127)
echo %y
echo %info.host
if (%y iswm %info.host) {
if ($ini(Data\InfoLine.ws,$+(%y,$chr(127),host),0) > 1) {
set %a $rand(2,$v1)
msg $chan $info.design $+ $nick $+($([),$calc(%a - 1),/,$calc($v1 - 1),$(])) : $readini(Data\InfoLine.ws,$+(%y,$chr(127),host,$ini(Data\InfoLine.ws,$+(%y,$chr(127),host),host)),$ini(Data\InfoLine.ws,$+(%y,$chr(127),host,$ini(Data\InfoLine.ws,$+(%y,$chr(127),host),host)),%a))
unset %a
}
}
unset %y
}
inc %x
}
unset %z
}
}