rendered paste bodyn *:SOCKOPEN:udc: {
if ($sockerr) {
if (!$window(@errors)) { .window @errors }
echo -t @errors SockOpen Error when checking for updates: $sock(udc).wsmsg
return
}
.sockwrite -n udc GET /update.txt HTTP/1.1
.sockwrite -n udc Host: thefreebot.com $+ $crlf $+ $crlf
}
on *:SOCKREAD:udc: {
if ($sockerr) {
if (!$window(@errors)) { .window @errrors }
echo -t @errors SockRead Error when checking for updates: $sock(udc).wsmsg
return
}
.sockread %udc
if ($+(*.*,$chr(124),*) !iswm %udc) { halt }
if (($readini(Settings.ini,versions,$gettok(%udc,1,124)) < $gettok(%udc,2,124)) || (!$readini(Settings.ini,versions,$gettok(%udc,1,124)))) { .sockclose udc | .updatefile %udc }
}
on *:SOCKCLOSE:udc: {
echo -ts [FreeBot Updater] Updates Compelted, all files up to date!
}
alias updatefile {
.tokenize 124 $1-
.set %udf $1
.set %udv $2
.set %udn $3
.set %uds $4
.set %udi $5
.set %udl $6
if ($script($1) || $alias($1)) {
if ($readini(Settings.ini,update,inform) && $server) { $($readini(Settings.ini,update,it),2) [FreeBot Updater] Updating $3 from $+([,$readini(Settings.ini,versions,$1),]) to $+([,$2,]) - Update: $5 - Feature disabled during update. }
echo -ts [FreeBot Updater] Updating $3 from $+([,$readini(Settings.ini,versions,$1),]) to $+([,$2,]) - Update: $5
.unload $iif(%uds == remote,-rs,-a) $1
}
else {
if ($readini(Settings.ini,update,inform) && $server) { $($readini(Settings.ini,update,it),2) [FreeBot Updater] Adding $3 to FreeBot - Addition: $5 }
echo -ts [FreeBot Updater] Adding $3 to FreeBot - Addition: $5
}
if ($exists($shortfn($+($mircdir,$6)))) { .remove $+(",$mircdir,$6,") }
.sockopen fbud thefreebot.com 80
}
on *:SOCKOPEN:fbud: {
if ($sockerr) {
if (!$window(@errors)) { .window @errors }
echo -t @errors SockOpen Error when checking for updates: $sock(fbud).wsmsg
return
}
.set %fbud_read $false
.sockwrite -n fbud GET /files/ $+ %udf HTTP/1.1
.sockwrite -n fbud Host: thefreebot.com $+ $crlf $+ $crlf
}
on *:SOCKREAD:fbud: {
if ($sockerr) {
if (!$window(@errors)) { .window @errors }
echo -t @errors SockOpen Error when checking for updates: $sock(fbud).wsmsg
return
}
.sockread %fbud
if (!%fbud) { halt }
if (!%fbud_read) { noop }
else { .write $+(",$mircdir,%udl,") %fbud }
if (%fbud == Content-Type: text/plain) { .set %fbud_read $true }
}
on *:SOCKCLOSE:fbud: {
if (%uds != ext) { .load $iif(%uds == remote,-rs,-a) %udf }
.writeini -n Settings.ini versions %udf %udv
if ($readini(Settigns.ini,update,inform) && $server) { $($readini(Settings.ini,update,it),2) [FreeBot Updater] Update of %udn completed, commands re-enabled. }
echo -ts [FreeBot Updater] Update of %udn to $+([,%udv,]) completed!
.sockopen udc thefreebot.com 80
}
on *:START: {
echo -ts [FreeBot Updater] Running Updater on Startup...