rendered paste bodyon *:CONNECT: {
if (%awaynow == On) { if ($left(%awayreason,4) == Auto) { .timer 1 20 /idle } | else { .timer 1 10 /away %awayreason | .timer 1 12 set %gone %gone } }
else { set %awaynow Off | unset %gone | unset %awayreason }
}
on *:text:*:?:{
if (%awaynow == On && $nick != $null) {
if (%away. [ $+ [ $nick ] ] == $null) {
if (@Find !isin $1 && File Server Search !isin $gettok($1-,1-3,32)) {
var %tmp.ad = $+(%col1,$chr(91),%col2,Away,%col1,$chr(93)) $+(Reason:,$chr(91),%col2,%awayreason,%col1,$chr(93)) $+(Gone for:,$chr(91),%col2,$duration(%gone),%col1,$chr(93))
if (%Pager != On) { /msg $nick %tmp.ad $+(Pager:,$chr(91),%col2,OFF,%col1,$chr(93)) }
else { /msg $nick %tmp.ad $+(Pager:,$chr(91),%col2,/ctcp) $me page $+(*message*,%col1,$chr(93)) - SysRes $+ et %ver }
}
.set %away. $+ $nick 1
}
.timer $+ $nick 1 $calc($rand(10,60) + 90) /unset %away. $+ $tnick($nick)
}
}
dialog Away_Manager {
title "Away Manager"
size -1 -1 158 173
option pixels
text "Auto Away Time(min):", 25, 11 16 107 16
edit "", 1, 116 13 32 22
radio "Enabled", 2, 11 92 64 15, group
radio "Disabled", 3, 76 92 64 15
text "Change Nickname on away:", 31, 12 39 135 13
edit "No Change", 5, 12 53 133 22
button "Cancel", 150, 80 150 75 20, cancel
button "&OK", 200, 3 150 75 20, default ok
box "", 4, 3 0 152 144
box "Pager", 6, 3 76 152 68
box "Auto Away", 32, 3 106 152 38
radio "Enabled", 10, 11 122 64 15, group
radio "Disabled", 11, 76 122 64 15
}
on *:dialog:Away_Manager:*:*:{
if ($devent == init) {
if (%pager == On) { did -c $dname 2 } | else { did -c $dname 3 }
did -ra $dname 1 $int($calc(%idle / 60))
if (%awayname != $null) did -ra $dname 5 %awayname
if (%idle == 0) { did -c $dname 11 } | else { did -c $dname 10 }
}
if ($devent == sclick) {
if ($did == 200) {
if ($did(5).text == $null || $chr(32) isin $did(5).text) { unset %awayname } | else { set %awayname $did(5).text }
if ($did(10).state == 1) { set %idle $calc($did(1).text * 60) } | else { set %idle 0 }
if (%idle <= 0) { set %idle 0 }
if ($did(2).state == 1) { set %pager On } | else { set %pager Off }
.timer200 OFF
if (%idle > 30) { .timer200 0 10 if ($idle >= %idle $+ ) /idle }
}
}
if ($devent == init || ($devent == sclick && ($did == 10 || $did == 11))) {
if ($did(10).state == 1) { did -e $dname 1,2,3,5 } | else { did -b $dname 1,2,3,5 }
}
}