SMF Script 8 — File Browser
SMFScript8v8.13 / SMFScript8v8.13 / system / scuts.mrc
scuts.mrc — 5.33 KB — Download this file
on *:connect: if ($server != %sc.1) && ($server != %sc.2) && ($server != %sc.3) && ($server != %sc.4) && ($server != %sc.5) { if (%sc.2) set %sc.1 %sc.2 | if (%sc.3) set %sc.2 %sc.3 | if (%sc.4) set %sc.3 %sc.4 | if (%sc.5) set %sc.4 %sc.5 | set %sc.5 $server }
alias servs.dat if ($chr(32) isin $scriptdirservers.dat) return " $+ $scriptdirservers.dat $+ " | return $scriptdirservers.dat
alias server if (%sc) || ($isfile($remove($servs.dat,")) != $true) { server $1- | return } | if ($1 = $null) return | set -u0 %s.t.t $read -s $+ $1 $servs.dat | if (%s.t.t) { if ($gettok(%s.t.t,2,32)) server %s.t.t | else server %s.t.t $2- } | else server $1-
alias s.t if ($dialog(Servers)) return | dialog -mn Servers Servers | if ($lof($scriptdirservers.dat) < 0) goto end | :loop | inc %s.t.dat | set %s.t.tmp $read -l $+ %s.t.dat $servs.dat | if (%s.t.tmp) { did -a servers 3 %s.t.tmp | goto loop } | :end | unset %s.t.* | prevserv | did -a servers 9 Disable | if (%sc) { did -b servers 2,3,4,5,6,7,8,10,11 | did -a servers 9 Enable } | did -h servers 12
dialog servers {
title "SMF Server cuts v1.3"
size -1 -1 311 298
text "Server Name",2,11 5 62 12
list 3,9 45 236 248,sort,extsel,size
edit "",5,9 19 69 23,autohs
combo 6,82 20 162 120,edit,drop
text "Server Address",8,85 5 160 12,center
edit "",14,248 19 56 23,autohs
text "Port",15,248 5 56 12,center
button "Add",7,249 46 54 26,
button "Edit",10,249 77 54 26
button "Delete",4,249 108 54 26
button "Clear",13,249 139 54 26
button "Import..",11,249 175 54 26
button "",9,249 206 54 26
button "Close",1,249 237 54 26,cancel
edit "",12,248 268 56 23,read
}
on 1:dialog:servers:dclick:3: server $gettok($did(3,$did(3).sel),1,32)
on 1:dialog:servers:sclick:*:{
if ($did = 4) { if ($did(3,0).sel = 1) { did -d servers 3 $did(3).sel | s.t.save } | if ($did(3,0).sel > 1) { set %sc.inc $calc($did(3,0).sel + 1) | :loop | dec -u0 %sc.inc | if (%sc.inc = 0) goto end | did -d servers 3 $did(3,%sc.inc).sel | goto loop | :end | s.t.save } }
if ($did = 10) { if ($did(3,$did(3).sel)) { if ($did(5)) && ($did(6)) { if ($lb.chk($gettok($did(5),1,32))) goto next | did -a servers 3 $gettok($did(5),1,32) $gettok($did(6),1,32) $gettok($did(14),1,32) | did -r servers 5,6,14 | s.t.save | prevserv } | :next | did -r servers 5,6 | did -a servers 5 $gettok($did(3,$did(3).sel),1,32) | did -ac servers 6 $gettok($did(3,$did(3).sel),2,32) | if ($gettok($did(3,$did(3).sel),3,32)) did -a servers 14 $gettok($did(3,$did(3).sel),3,32) | prevserv | did -d servers 3 $did(3).sel } }
if ($did = 7) { if ($did(5)) && ($did(6)) { if ($lb.chk($gettok($did(5),1,32))) return | did -a servers 3 $gettok($did(5),1,32) $gettok($did(6),1,32) $gettok($did(14),1,32) | did -r servers 5,6,14 | s.t.save | prevserv } }
if ($did = 9 ) { if (%sc) { did -e servers 2,3,4,5,6,7,8,10,11,13,14,15 | unset %sc | did -a servers 9 Disable } | else { did -b servers 2,3,4,5,6,7,8,10,11,13,14,15 | set %sc - | did -a servers 9 Enable } }
if ($did = 11) { dialog -mn sc.ask sc.ask | if ($server = $null) did -b sc.ask 3 }
if ($did = 13) { .remove $servs.dat | did -r servers 3 }
}
dialog sc.ask {
title "Input Request"
size -1 -1 266 95
text "Import From..",1,50 20 146 13,center
button "Servers.ini",2,14 60 75 24
button "Network",3,95 60 75 24
button "Cancel",4,176 60 75 24,cancel
}
on *:dialog:sc.ask:sclick:*: if ($did = 2) { .timer 1 0 sc.get.ini | dialog -x sc.ask } | if ($did = 3) { set %sc.link - | links | dialog -x sc.ask }
raw 364:*:if (%sc.link) { if ($lb.chk($gettok($2,1,46)) != $true) { did -a servers 3 $gettok($2,1,46) $2 } | halt }
raw 365:*:if (%sc.link) { unset %sc.link | s.t.save | halt }
alias sc.get.ini {
did -v servers 12 | set %s.t.file $mircdirservers.ini | if ($isfile(%s.t.file)) goto next | set %s.t.file $$dir="Servers.ini" $mircdir*.ini | :next | if ($chr(32) isin %s.t.file) set %s.t.file " $+ %s.t.file $+ " | set %s.t.1 1 | :loop | inc %s.t.1 | set %s.t.2 $read -l $+ %s.t.1 %s.t.file | if (%s.t.2) { set %s.t.2 $gettok(%s.t.2,2-,61) | unset %s.t.3 | :loop2 | inc %s.t.3 | set %s.t.srv $gettok(%s.t.2,$calc($numtok(%s.t.2,58) - %s.t.3),58) | if ($chr(46) !isin %s.t.srv) { if (%s.t.srv != $gettok(%s.t.2,0,58)) goto loop2 | else goto loop } | set %s.t.ttl $gettok(%s.t.srv,1,46)
if (%s.t.ttl) && (%s.t.srv) { if ($lb.chk(%s.t.ttl) != $true) did -a servers 3 %s.t.ttl %s.t.srv | else { set %s.t.ttl $gettok($removecs($gettok(%s.t.2,1,58),SERVER),1,32) | if ($lb.chk(%s.t.ttl) != $true) did -a servers 3 %s.t.ttl %s.t.srv } } | unset %s.t.ttl %s.t.srv | did -ra servers 12 $round($calc(%s.t.1 / $lines($remove(%s.t.file,")) * 100),2) $+ % | goto loop } | elseif ($lines($remove(%s.t.file,")) > %s.t.1) goto loop | unset %s.t.* | s.t.save | did -h servers 12
}
alias lb.chk set -u0 %s.t.l 0 | :loop | inc -u0 %s.t.l | set -u0 %s.t.l2 $did(servers,3,%s.t.l) | set %s.t.l2 $gettok(%s.t.l2,1,32) | if (%s.t.l2) && (%s.t.l2 != $1) goto loop | if (%s.t.l2 = $1) return $true | if (%s.t.l2 = $null) return $false
alias prevserv if (%sc.1) did -a servers 6 %sc.1 | if (%sc.2) did -a servers 6 %sc.2 | if (%sc.3) did -a servers 6 %sc.3 | if (%sc.4) did -a servers 6 %sc.4 | if (%sc.5) did -a servers 6 %sc.5
alias s.t.save if ($lof($scriptdirservers.dat)) .remove $servs.dat | set %s.t.l 0 | :loop | inc %s.t.l | set %s.t.l2 $did(servers,3,%s.t.l) | if (%s.t.l2) { write $servs.dat %s.t.l2 | goto loop } | unset %s.t.*