menu status,channel,query {
$iif(($status == connected),&Simple Away $iif($away,[you're away]))
.$iif(($away && %awaywithtime.msg),Turn Back $+([gone $awaywithtime.duration,]),Go Away) : {
$iif(($away && %awaywithtime.msg),awaywithtime.back,awaywithtime.away)
}
.$iif(($away && %awaywithtime.msg),Turn Back $+([gone $awaywithtime.duration,]),Go Away) Silently : {
$iif(($away && %awaywithtime.msg),awaywithtime.back,awaywithtime.away) silent
}
.-
.$iif(($away && %awaywithtime.msg),Change Away Reason $+([,%awaywithtime.msg,])) : {
awaywithtime.change
}
}
raw 305:*: { awaywithtime.unset }
on *:disconnect: { awaywithtime.unset }
; go away
alias -l awaywithtime.away {
away $$input(Enter away reason:,qeg,$iif(($1 == silent),Silent) Set Away)
if ($1 == silent) { echo -agc info * You're now away $+([,$!,]) }
else { ame ladies and gentlemen! have to go now... see you soon $+([,$!,]) }
set -e %awaywithtime.msg $!
set -e %awaywithtime.time $ctime
.timer.awaywithtime 0 60 away $(%awaywithtime.msg,0) - duration: $!awaywithtime.duration
}
; go back
alias -l awaywithtime.back {
if ($1 == silent) { echo -agc info * You're now back form away $+([,$awaymsg,]) }
else { ame is back from away $+([,$awaymsg,]) }
away
awaywithtime.unset
}
; change away reason
alias -l awaywithtime.change {
set -e %awaywithtime.msg $$input(Enter new away reason:,qeg,Change Away Reason)
away %awaywithtime.msg - duration: $awaywithtime.duration
}
; return away time (not resetting if reason is changed via script)
alias -l awaywithtime.duration { return $duration($calc($ctime - %awaywithtime.time),2) }
; stop updating and unset stored data (manual back/script back/disconnect)
alias -l awaywithtime.unset { .timer.awaywithtime off | unset %awaywithtime.* }