rendered paste bodydialog away {
title "Away System by Unborn"
size -1 -1 165 49
option dbu
button "Away", 1, 128 1 37 12
button "Back", 2, 128 14 37 12
edit "", 3, 28 2 98 10, autohs
edit "", 4, 28 15 98 10, autohs
text "Away Text", 5, 1 3 26 8
text "Back Text", 6, 1 16 26 8
check "Silent", 7, 1 28 25 10
check "Log Messages", 8, 37 28 44 10
button "Done", 10, 134 38 30 10, ok
check "Use /AME", 12, 89 28 36 10
button "Help", 13, 136 27 26 10
check "Change Nick to:", 11, 1 38 50 10
edit "", 14, 51 38 81 10
}
menu status,channel {
Away Dialog:/dialog -m away away
}
on *:DIALOG:away:init:0:{
did -a away 3 $iif($ini(away.ini,Text,Away),$readini(away.ini,Text,Away),Im Now Away - <r> - <p> - <c> - <t>)
did -a away 4 $iif($ini(away.ini,Text,Back),$readini(away.ini,Text,Back),Im Now Back - <r> - <g>)
did -a away 14 $iif($ini(away.ini,Option,Nick),$readini(away.ini,Option,Nick),$me $+ [Away])
if ($ini(away.ini,Option,Silent)) { did -c away 7 }
if ($ini(away.ini,Option,Plog)) { did -c away 8 }
if ($ini(away.ini,Option,AME)) { did -c away 12 }
if ($ini(away.ini,Option,ChgNick)) { did -c away 11 }
if ($ini(away.ini,Away,Away)) {
did -b away 1,3-8,11-14
did -e away 2
}
else {
did -e away 1,3-8,11-14
did -b away 2
}
}
on *:DIALOG:away:edit:*:{
if ($did == 3) {
if ($did(away,3).text != $null) { writeini away.ini Text Away $did(away,3).text }
else { remini away.ini Text Away }
}
if ($did == 4) {
if ($did(away,4).text != $null) { writeini away.ini Text Back $did(away,4).text }
else { remini away.ini Text Back }
}
if ($did == 14) {
if ($did(away,14).text != $null) { writeini away.ini Option Nick $did(away,14).text }
else { remini away.ini Option Nick }
}
}
on *:DIALOG:away:sclick:7-9,11-12:{
if ($did == 7) {
if ($did(away,7).state == 1) { writeini away.ini Option Silent True }
else { remini away.ini Option Silent }
}
if ($did == 8) {
if ($did(away,8).state == 1) { writeini away.ini Option Plog True }
else { remini away.ini Option Plog }
}
if ($did == 12) {
if ($did(away,12).state == 1) { writeini away.ini Option AME True }
else { remini away.ini Option AME }
}
if ($did == 11) {
if ($did(away,11).state == 1) { writeini away.ini Option ChgNick True }
else { remini away.ini Option ChgNick }
}
}
on *:DIALOG:away:sclick:13:{ /awayhelp }
on *:DIALOG:away:sclick:1,2:{
if ($did == 1) {
if ($ini(away.ini,Away,Away)) { HALT }
if ($ini(away.ini,Option,Silent)) {
var %awayreason = $iif($?="Away Reason:",$v1,Not Specified)
var %awaytext = $replace($did(away,3).text,<r>,%awayreason,<p>,$iif($ini(away.ini,Option,Plog),On,Off),<t>,$time)
away %awaytext
echo -a $iif($ini(away.ini,Option,AME),* $me,< $+ $me $+ >) %awaytext
writeini away.ini Away Away True
writeini away.ini Away Reason %awayreason
writeini away.ini Away Time $ctime
if ($ini(away.ini,Option,ChgNick) && $did(away,14).text) {
writeini away.ini Away Nick $nick
nick $did(away,14).text
}
}
else {
if ($did(away,3).text) {
var %awayreason = $iif($?="Away Reason:",$v1,Not Specified)
var %awaytext = $replace($did(away,3).text,<r>,%awayreason,<p>,$iif($ini(away.ini,Option,Plog),On,Off),<c>,$iif($ini(away.ini,Option,Clog),On,Off),<t>,$time)
away %awaytext
$iif($ini(away.ini,Option,AME),ame,amsg) %awaytext
writeini away.ini Away Away True
writeini away.ini Away Reason %awayreason
writeini away.ini Away Time $ctime
if ($ini(away.ini,Option,ChgNick) && $did(away,14).text) {
writeini away.ini Away Nick $nick
nick $did(away,14).text
}
}
}
did -b away 1,3-8,11-14
did -e away 2
}
if ($did == 2) {
if (!$ini(away.ini,Away,Away)) { HALT }
if ($ini(away.ini,Option,Silent)) {
var %backtext = $replace($did(away,4).text,<r>,$readini(away.ini,Away,Reason),<g>,$duration($calc($ctime - $readini(away.ini,Away,Time)),1))
away
if ($ini(away.ini,Away,Nick)) { nick $readini(away.ini,Away,Nick) }
echo -a $iif($ini(away.ini,Option,AME),* $me,< $+ $me $+ >) %backtext
remini away.ini Away
}
else {
if ($did(away,4).text) {
var %backtext = $replace($did(away,4).text,<r>,$readini(away.ini,Away,Reason),<g>,$duration($calc($ctime - $readini(away.ini,Away,Time)),1))
away
if ($ini(away.ini,Away,Nick)) { nick $readini(away.ini,Away,Nick) }
$iif($ini(away.ini,Option,AME),ame,amsg) %backtext
remini away.ini Away
}
}
did -e away 1,3-8,11-14
did -b away 2
if ($ini(away.ini,Option,Plog)) {
if ($$?!="Display Logs?" == $true) {
window -ak0 @Logs
var %i = 1, %x = $lines(plog.txt)
echo @Logs ########
echo @Logs # Logs #
echo @Logs ########
echo @Logs
while (%i <= %x) {
echo @Logs $read(plog.txt,%i)
inc %i
}
}
.remove plog.txt
}
}
}
on *:TEXT:*:*:{
if ($ini(away.ini,Away,Away)) {
if ($chan) {
if (* $+ $me $+ * iswm $1-) {
notice $nick Away - $readini(away.ini,Away,Reason) - Gone for $duration($calc($ctime - $readini(away.ini,Away,Time)),1)
if ($ini(away.ini,Option,Plog)) { write -i plog.txt $+([,$chan,]) $timestamp - $nick($chan,$nick).pnick - $1- }
}
}
else {
notice $nick Away - $readini(away.ini,Away,Reason) - Gone for $duration($calc($ctime - $readini(away.ini,Away,Time)),1)
if ($ini(away.ini,Option,Plog)) { write -i plog.txt [QUERY] $timestamp - $nick - $1- }
}
}
}
on *:NOTICE:*:*:{
if ($ini(away.ini,Away,Away)) {
if ($chan) {
if (* $+ $me $+ * iswm $1-) {
notice $nick Away - $readini(away.ini,Away,Reason) - Gone for $duration($calc($ctime - $readini(away.ini,Away,Time)),1)
if ($ini(away.ini,Option,Plog)) { write -i plog.txt $+([,NOTICE - $chan,]) $timestamp - $nick($chan,$nick).pnick - $1- }
}
}
else {
notice $nick Away - $readini(away.ini,Away,Reason) - Gone for $duration($calc($ctime - $readini(away.ini,Away,Time)),1)
if ($ini(away.ini,Option,Plog)) { write -i plog.txt [NOTICE] $timestamp - $nick - $1- }
}
}
}
on *:ACTION:*:*:{
if ($ini(away.ini,Away,Away)) {
if ($chan) {
if (* $+ $me $+ * iswm $1-) {
notice $nick Away - $readini(away.ini,Away,Reason) - Gone for $duration($calc($ctime - $readini(away.ini,Away,Time)),1)
if ($ini(away.ini,Option,Plog)) { write -i plog.txt $+([,$chan,]) $timestamp - * $nick $1- }
}
}
else {
notice $nick Away - $readini(away.ini,Away,Reason) - Gone for $duration($calc($ctime - $readini(away.ini,Away,Time)),1)
if ($ini(away.ini,Option,Plog)) { write -i plog.txt [QUERY] $timestamp - * $nick $1- }
}
}
}
alias -l awayhelp {
window -ak0 @Away-Help
aline @Away-Help Help For Unborn's Away Dialog:
aline @Away-Help
aline @Away-Help Buttons:
aline @Away-Help "Away" Button - Sets you as away, using all the settings provided.
aline @Away-Help "Back" Button - Sets you as back from Being Away.
aline @Away-Help
aline @Away-Help EditBoxes:
aline @Away-Help "Change Nick to" Editbox - Sets the nick you will use when set to Away.
aline @Away-Help "Away Text" Editbox - Sets the text you want to be displayed when Being set as Away.
aline @Away-Help "Back Text" Editbox - Sets the text you want to be displayed when Being set as Back.
aline @Away-Help
aline @Away-Help Key for Away/Back Text Editboxes:
aline @Away-Help <r> - Your Away Reason. Can be used for both Away and Back.
aline @Away-Help <p> - Your Private Log Status (On/Off). Used for Away Only.
aline @Away-Help <t> - The Time you left at. Used for Away Only.
aline @Away-Help <g> - The Time you were gone for. Used for Back only.
aline @Away-Help
aline @Away-Help Example for Away Editbox: I am now Away. Reason: <r> - Private Log: <p> - Left at: <t>
aline @Away-Help Example for Back Editbox: I am now back from: <r> - I was gone for <g>
aline @Away-Help
aline @Away-Help CheckBoxes:
aline @Away-Help "Silent" Checkbox - Indicated Whether to Send Away Messages or Not.
aline @Away-Help "Private Log" Checkbox - Indicates Whether to Log Private Messages (Notices/Ctcps/Querys) or not.
aline @Away-Help "Channel Logs" Checkbox - Indicates Whether to Log Channel Messages or not.
aline @Away-Help "/AME" Checkbox - Indicates Whether to use /AME or /AMSG. Checked Means /AME.
aline @Away-Help "Change Nick To:" Checkbox - Indicates Whether to change Nickname when you set Away or not.
}