ALIAS F8 { /dialog -m awaymain awaymain } menu * { Away dialog:/dialog -m awaymain awaymain } dialog awaymain { title "Away Dialog" size -1 -1 152 81 option dbu button "Away (no reason)", 2, 8 6 67 12 button "Away", 3, 9 25 37 12 button "Set Active Nick", 4, 101 8 43 12 button "Back!", 5, 9 45 37 12 button "Set inactive nick", 6, 101 46 43 12 edit "", 7, 50 26 50 10 text "Reason ^^^^", 1, 51 36 49 8 button "Credits", 8, 9 64 37 12 text "Created by [-God-]", 9, 96 70 46 8 button "Close", 10, 55 65 37 12 } dialog credits { title "Credits" size -1 -1 138 47 option dbu text "Credits", 1, 58 3 25 8 text "Created by [-God-]", 2, 10 15 61 8 button "Back", 3, 90 12 37 12 button "#[-God-]", 4, 90 27 37 12 } dialog setactive { title "Set active Nick!" size -1 -1 127 49 option dbu text "Set active nick!", 1, 47 3 44 8 edit "", 2, 14 17 50 10 button "Set", 3, 71 16 37 12 button "Back", 4, 71 30 37 12 } dialog setinactive { title "Set inactive Nick!" size -1 -1 127 49 option dbu text "Set inactive nick!", 1, 47 3 44 8 edit "", 2, 14 17 50 10 button "Set", 3, 71 16 37 12 button "Back", 4, 71 30 37 12 } dialog erroractive { title "ERROR" size -1 -1 126 41 option dbu text "SET ACTIVE NICK ERROR - NO NICK ENTERED", 1, 5 4 120 8 button "Retry", 2, 20 18 37 12 button "Cancel", 3, 69 18 37 12 } dialog errorinactive { title "ERROR" size -1 -1 126 41 option dbu text "SET INACTIVE NICK ERROR - NO NICK ENTERED", 1, 5 4 120 8 button "Retry", 2, 20 18 37 12 button "Cancel", 3, 69 18 37 12 } dialog noinactive { title "ERROR" size -1 -1 126 41 option dbu text "ERROR NO INACTIVE NICK SET", 1, 21 4 80 8 button "Set one", 2, 20 18 37 12 button "Cancel", 3, 69 18 37 12 } dialog noactive { title "ERROR" size -1 -1 126 41 option dbu text "ERROR NO ACTIVE NICK SET", 1, 21 4 80 8 button "Set one", 2, 20 18 37 12 button "Cancel", 3, 69 18 37 12 } dialog noreason { title "ERROR: No reason detected" size -1 -1 128 38 option dbu text "Please input a reason: or select Away (no reason)", 1, 12 4 112 16 button "Ok", 2, 43 21 37 12 } ALIAS F7 { /dialog -m multi multi } dialog multi { title "Multi Function Dialog" size -1 -1 246 142 option dbu menu "File", 1 item "Away System", 2, 1 item "Close", 3, 1 } on *:dialog:multi:sclick:2: { /dialog -x multi multi /dialog -m awaymain awaymain } on *:dialog:errorinactive:sclick:3: { /dialog -x errorinactive errorinactive /dialog -m awaymain awaymain } on *:dialog:noreason:sclick:2: { /dialog -x noreason noreason /dialog -m awaymain awaymain } on *:dialog:noactive:sclick:2: { /dialog -x noactive noactive /dialog -m setactive setactive } on *:dialog:noactive:sclick:3: { /dialog -x noactive noactive /dialog -m awaymain awaymain } on *:dialog:noinactive:sclick:2: { /dialog -x noinactive noinactive /dialog -m setinactive setinactive } on *:dialog:noinactive:sclick:3: { /dialog -x noinactive noinactive /dialog -m awaymain awaymain } on *:dialog:erroractive:sclick:3: { /dialog -x erroractive erroractive /dialog -m awaymain awaymain } on *:dialog:errorinactive:sclick:2: { /dialog -x errorinactive errorinactive /dialog -m setinactive setinactive } on *:dialog:awaymain:sclick:2: { if (!%inactive.nick) { /dialog -x awaymain awaymain /dialog -m noinactive noinactive } else { /set %away YES /set %away.time $ctime /nick %inactive.nick var %x = 1 while (%x <= $chan(0)) { timer 1 2 /describe $chan(%x) is now AFK Reason: none ; Left at: $time inc %x } } } on *:dialog:awaymain:sclick:5: { if (!%active.nick) { /dialog -x awaymain awaymain /dialog -m noactive noactive } else { set %timeaway $duration($calc($ctime - %away.time)) /nick %active.nick var %x = 1 while (%x <= $chan(0)) { timer 1 2 /describe $chan(%x) is now back! Away time: %timeaway ; Back at: $time inc %x } | { /unset %away.time /unset %timeaway /unset %away /unset %areason } } } on *:dialog:awaymain:sclick:6: { /dialog -x awaymain awaymain /dialog -m setinactive setinactive } on *:dialog:setactive:sclick:4: { /dialog -x setactive setactive /dialog -m awaymain awaymain } on *:dialog:setinactive:sclick:4: { /dialog -x setinactive setinactive /dialog -m awaymain awaymain } on *:dialog:awaymain:sclick:4: { /dialog -x awaymain awaymain /dialog -m setactive setactive } on *:dialog:setactive:sclick:4: { /dialog -x awaymain awaymain /dialog -m setactive setactive } on *:dialog:awaymain:sclick:10: { /away.die } on *:dialog:credits:sclick:3: { /dialog -x credits credits /dialog -m awaymain awaymain } on *:dialog:credits:sclick:4: { /join #[-God-] } on *:dialog:awaymain:sclick:8: { /dialog -x awaymain awaymain /dialog -m credits credits } on *:dialog:setactive:sclick:3: { if ($did(2) == $null) { /dialog -x setactive setactive /dialog -m erroractive erroractive } else { set %active.nick $did(2) /dialog -x setactive setactive /dialog -m awaymain awaymain } } on *:dialog:setinactive:sclick:3: { if ($did(2) == $null) { /dialog -x setinactive setinactive /dialog -m errorinactive errorinactive } else { set %inactive.nick $did(2) /dialog -x setinactive setinactive /dialog -m awaymain awaymain } } on *:dialog:awaymain:sclick:3: { if ($did(7) == $null) && (%inactive.nick) { /dialog -x awaymain awaymain /dialog -m noreason noreason } if (!%inactive.nick) && ($did(7) == $null) { /dialog -x awaymain awaymain /dialog -m errorinactive errorinactive } if (!%inactive.nick) && ($did(7)) { /dialog -x awaymain awaymain /dialog -m errorinactive errorinactive } elseif (%inactive.nick) && ($did(7)) { /set %away.time $ctime /set %away YES /set %areason $did(7) var %x = 1 while (%x <= $chan(0)) { timer 1 2 /describe $chan(%x) is now AFK Reason: %areason ; Left at: $time inc %x /nick %inactive.nick } } } alias away.die { var %i 152 while (%i >= 0) { dialog -srb awaymain -1 -1 %i %i var %t 1 while (%t <= 81) inc %t dec %i } dialog -c awaymain }