on *:LOAD:dialog -m Settings Settings -4
on *:UNLOAD:unset %TV_*
menu Menubar,Channel,Query {
-
TV Rage
.Settings:dialog -m Settings Settings -4
.Self Search:dialog -m SelfSearch SelfSearch -4
.Status < $+ $iif(%TV_Rage = 1,Enabled,Disabled) $+ >:$iif(%TV_Rage = 0,%TV_Rage = 1,%TV_Rage = 0) | echo -a TV Rage Has Been $iif(%TV_Rage = 1,Enabled.,Disabled.)
-
}
On *:Text:!ep*:*: {
if (%TV_Rage = 0) { Halt }
var %Num = $trnum
if ($2 = Schedule) { set %TVRage_Target. [ $+ [ %num ] ] $iif(%TV_Where2 = 1,$Nick,$Chan) }
elseif ($Target !ischan) { set %TVRage_Target. [ $+ [ %num ] ] $Nick | set %TVRage_Query. [ $+ [ %num ] ] 1 }
else { set %TVRage_Target. [ $+ [ %num ] ] $iif(%TV_Where = 1,$Chan,$Nick) }
set %TVRage_Nick. [ $+ [ %num ] ] $Nick
set %TVRage_Chan. [ $+ [ %num ] ] $Chan
TVRage.Load %num $2-
}
alias -l TVRage.Load {
var %num = $1
if ($Mid($2,4,10) = triggers) {
.msg %TVRage_Target. [ $+ [ %num ] ] TVRage Commands:
.msg %TVRage_Target. [ $+ [ %num ] ] - !ep <Show> (Season and Episode) EX: !ep House 2x05
.msg %TVRage_Target. [ $+ [ %num ] ] - !ep Schedule <Day Of Week> EX: !ep Schedule Fri
.msg %TVRage_Target. [ $+ [ %num ] ] - !ep Schedule <Day Of Week> (Time) EX: !ep Schedule Fri 10
.msg %TVRage_Target. [ $+ [ %num ] ] - !ep Schedule <Day Of Week> (Time) (Country:US,GB,UK,AU) (US By Default) EX: !ep Schedule Fri 10 GB
.msg %TVRage_Target. [ $+ [ %num ] ] - Option in ( ) are Optional. Options in < > are Required.
.unset %TVRage*
halt
}
if ($2 = Schedule) {
var %temp $GetTok($2-,$numtok($2-,32),32)
set %TVRage_Type. [ $+ [ %num ] ] Schedule
if ((%Temp = GB) || (%Temp = UK) || (%Temp = US) || (%Temp = AU)) { set %TVRage_Type. [ $+ [ %num ] ] Country | set %TVRage_Country. [ $+ [ %num ] ] %Temp }
set %TVRage_Time_Schedule. [ $+ [ %num ] ] $iif($4 !isnum,$null,$Int($4))
set %TVRage_Date. [ $+ [ %num ] ] $FullDate($3)
if (%TVRage_Date. [ $+ [ %num ] ] = $null) {
.msg %TVRage_Target. [ $+ [ %num ] ] You need to pick a day of the week $iif(!%TVRage_Country. [ $+ [ %num ] ],or Country).
.unset %TVRage_*. [ $+ [ %num ] ]
.unset %Check_*. [ $+ [ %num ] ]
halt
}
TVRage %Num Schedule
}
else {
$iif($CheckEP(%num,$2-) = 1,set %TVRage_Type. [ $+ [ %num ] ] EpSpec, set %TVRage_Type. [ $+ [ %num ] ] Ep)
TVRage %num $2-
}
}
alias -l TVRage {
if ((%TVRage_Type. [ $+ [ $1 ] ] != Schedule) && (!$2)) {
.msg %TVRage_Target. [ $+ [ $1 ] ] You actually need to search for a TV-show you know!
.unset %TVRage_*. [ $+ [ $1 ] ]
return
}
if (%TVRage_Type. [ $+ [ $1 ] ] = EpSpec) { %tvshow. [ $+ [ $1 ] ] = $replace($GetTok($2-,1- [ $Calc($numtok($2-,32)-1) ] ,32),$chr(32),% $+ 20) $+ &ep= $+ %Check_Season. [ $+ [ $1 ] ] $+ x $+ %Check_ep. [ $+ [ $1 ] ] }
else { %TVShow. [ $+ [ $1 ] ] = $replace($2-,$chr(32),% $+ 20) }
sockopen TVRage. [ $+ [ $1 ] ] http://www.TVRage.com 80
}
on *:sockopen:TVRage.*: {
var %num = $Mid($sockname,$calc($Pos($sockName,.,1) + 1))
Check.Settings Sch %Num
if (%TVRage_Type. [ $+ [ %num ] ] = Schedule) {
.msg %TVRage_Target. [ $+ [ %num ] ] -- Gathering Information --
sockwrite $SockName GET $+(http://www.TVRage.com/quickschedule.php,$crlf) HTTP/1.1
}
elseif (%TVRage_Type. [ $+ [ %num ] ] = Country) {
.msg %TVRage_Target. [ $+ [ %num ] ] -- Gathering Information --
sockwrite $SockName GET $+(http://www.TVRage.com/quickschedule.php?country= $+ %TVRage_Country. [ $+ [ %num ] ],$crlf) HTTP/1.1
}
elseif ((%TVRage_Type. [ $+ [ %num ] ] = Ep) || (%TVRage_Type. [ $+ [ %num ] ] = EpSpec)) { sockwrite $SockName GET $+(http://www.TVRage.com/quickinfo.php?show=, %tvshow. [ $+ [ %num ] ],$crlf) HTTP/1.1 }
sockwrite -n $SockName host: $+(www.TVRage.com,$crlf,$crlf)
set %TVRage_Day. [ $+ [ %num ] ] 0
}
on *:sockread:TVRage.*:{
var %num = $Mid($sockname,$calc($Pos($sockName,.,1) + 1))
if ($sockerr) { return }
var %tvdata
sockread %tvdata
if ($mid(%Tvdata,1,5) = [DAY]) {
if ($Fopen(%TVRage_Day. [ $+ [ %num ] ])) {
.fclose %TVRage_Day. [ $+ [ %num ] ]
}
set %TVRage_Day. [ $+ [ %num ] ] $GetTok($Mid(%Tvdata,6,$Calc($pos(%Tvdata,[/,1) - 6)),1,44)
if (%TVRage_Day. [ $+ [ %num ] ] = %TVRage_Date. [ $+ [ %num ] ]) {
.fopen -no %TVRage_Day. [ $+ [ %num ] ] [ %TVRage_Day. [ $+ [ %num ] ] ] [ $+ [ %num ] ] $+ .txt
.fwrite -n %TVRage_Day. [ $+ [ %num ] ] $Mid(%Tvdata,6,$Calc($pos(%Tvdata,[/,1) - 6))
}
}
if ($mid(%TvData,1,6) = [TIME]) {
if (%TVRage_Day. [ $+ [ %num ] ] = %TVRage_Date. [ $+ [ %num ] ]) {
set %TVRage_Time. [ $+ [ %num ] ] $Mid(%Tvdata,7,$Calc($pos(%tvdata,[/,1) - 7))
}
}
if ($Mid(%TVData,1,6) = [SHOW]) {
if (%TVRage_Day. [ $+ [ %num ] ] = %TVRage_Date. [ $+ [ %num ] ]) {
set %TVRage_Show_Temp. [ $+ [ %num ] ] $Mid(%TvData,7,$Calc($pos(%Tvdata,^,3) - 7))
.fwrite -n %TVRage_Day. [ $+ [ %num ] ] %TVRage_Time. [ $+ [ %num ] ] $+ ^ $+ %TVRage_Show_Temp. [ $+ [ %num ] ]
}
}
if (!$sockbr) return
if (show name isin %tvdata) { set %show_name. [ $+ [ %num ] ] $gettok(%tvdata,2,64) }
if (country isin %tvdata) { set %show_country. [ $+ [ %num ] ] $gettok(%tvdata,2,64) }
if (Latest Episode isin %tvdata) {
set %show_latest_temp. [ $+ [ %num ] ] $gettok(%tvdata,2,64)
set %show_latest_Ep. [ $+ [ %num ] ] $gettok(%show_latest_Temp. [ $+ [ %num ] ],1,94)
set %show_latest_Title. [ $+ [ %num ] ] $gettok(%show_latest_temp. [ $+ [ %num ] ],2,94)
set %show_latest_airdate. [ $+ [ %num ] ] $gettok(%Show_latest_Temp. [ $+ [ %num ] ],3,94)
}
if (Next Episode isin %tvdata) {
set %show_next_temp. [ $+ [ %num ] ] $gettok(%tvdata,2,64)
set %show_next_Ep. [ $+ [ %num ] ] $gettok(%show_next_Temp. [ $+ [ %num ] ],1,94)
set %show_next_Title. [ $+ [ %num ] ] $gettok(%show_next_temp. [ $+ [ %num ] ],2,94)
set %show_next_airdate. [ $+ [ %num ] ] $gettok(%Show_Next_Temp. [ $+ [ %num ] ],3,94)
}
if (Episode URL isin %tvdata) { set %Show_URL. [ $+ [ %num ] ] $gettok(%tvdata,2,64) }
if (Episode Info isin %tvdata) {
set %Show_Spec_Temp. [ $+ [ %num ] ] $Gettok(%tvdata,2,64)
set %show_Spec_Ep. [ $+ [ %num ] ] $gettok(%show_spec_Temp. [ $+ [ %num ] ],1,94)
set %show_Spec_Title. [ $+ [ %num ] ] $gettok(%show_spec_temp. [ $+ [ %num ] ],2,94)
set %show_Spec_airdate. [ $+ [ %num ] ] $gettok(%Show_spec_Temp. [ $+ [ %num ] ],3,94)
}
if (Status isin %Tvdata) { set %Show_Status. [ $+ [ %num ] ] $Gettok(%Tvdata,2,64) }
if (airtime isin %Tvdata) { Set %Show_Airtime. [ $+ [ %num ] ] $gettok(%tvdata,2,64) }
if (network isin %Tvdata) { set %Show_network. [ $+ [ %num ] ] $gettok(%tvdata,2,64) }
}
on *:sockclose:TVRage.*:{
var %num = $Mid($sockname,$calc($Pos($sockName,.,1) + 1))
if ((%TVRage_Type. [ $+ [ %num ] ] = Ep) || (%TVRage_Type. [ $+ [ %num ] ] = EpSpec)) {
Check.Settings Ep %Num
set %Show_Ep. [ $+ [ %num ] ] s $+ $replace(%Show_ep. [ $+ [ %num ] ],x,e)
if (%show_name. [ $+ [ %num ] ] = $null) { .msg %TVRage_Target. [ $+ [ %num ] ] No Such Show, Check your spelling and try again. }
else {
.msg %TVRage_Target. [ $+ [ %num ] ] %show_name. [ $+ [ %num ] ] -- %Show_Airtime. [ $+ [ %num ] ] %Show_network. [ $+ [ %num ] ] ( $+ %Show_Status. [ $+ [ %num ] ] $+ ) ( $+ %show_country. [ $+ [ %num ] ] $+ )
if (%Show_Url. [ $+ [ %num ] ] != $Null) { .msg %TVRage_Target. [ $+ [ %num ] ] Episode URL: %Show_URL. [ $+ [ %num ] ] }
if (%show_Spec_temp. [ $+ [ %num ] ] != $null) { .msg %TVRage_Target. [ $+ [ %num ] ] Episode %Show_spec_airdate. [ $+ [ %num ] ] %Show_spec_Ep. [ $+ [ %num ] ] %Show_spec_Title. [ $+ [ %num ] ] }
.msg %TVRage_Target. [ $+ [ %num ] ] Latest Episode %Show_Latest_airdate. [ $+ [ %num ] ] %Show_Latest_Ep. [ $+ [ %num ] ] %show_latest_Title. [ $+ [ %num ] ]
if (%show_next_temp. [ $+ [ %num ] ] != $null) { .msg %TVRage_Target. [ $+ [ %num ] ] Next Episode %Show_next_airdate. [ $+ [ %num ] ] %Show_Next_Ep. [ $+ [ %num ] ] %Show_Next_Title. [ $+ [ %num ] ] }
}
}
elseif ((%TVRage_Type. [ $+ [ %num ] ] = Schedule) || (%TVRage_Type. [ $+ [ %num ] ] = Country)) {
Check.Settings Sch %Num
if (%TVRage_Date. [ $+ [ %num ] ] != $Null) {
.fopen %TVRage_Date. [ $+ [ %num ] ] [ %TVRage_Date. [ $+ [ %num ] ] ] [ $+ [ %num ] ] $+ .txt
.msg %TVRage_Target. [ $+ [ %num ] ] Schedule for $fread(%TVRage_Date. [ $+ [ %num ] ]) $iif(%TVRage_Time_Schedule. [ $+ [ %num ] ] != $null, at %TVRage_Time_Schedule. [ $+ [ %num ] ] $+ :00 $iif(%TVRage_Time_Schedule. [ $+ [ %num ] ] < 12,pm,am))
set %TVRage_Time_Count. [ $+ [ %num ] ] 0
while ($Feof != 1) {
set %TVRage_Tmp. [ $+ [ %num ] ] $Fread(%TVRage_Date. [ $+ [ %num ] ])
set %TVRage_Time_Temp. [ $+ [ %num ] ] $GetTok(%TVRage_Tmp. [ $+ [ %num ] ],1,94)
set %TVRage_Show_NetWork. [ $+ [ %num ] ] $GetTok(%TVRage_Tmp. [ $+ [ %num ] ],2,94)
set %TVRage_Show_Show. [ $+ [ %num ] ] $gettok(%TVRage_Tmp. [ $+ [ %num ] ],3,94)
set %TVRage_Show_Ep. [ $+ [ %num ] ] s $+ $replace($getTok(%TVRage_Tmp. [ $+ [ %num ] ],4,94),x,e)
if (%TVRage_Time_Schedule. [ $+ [ %num ] ] != $Null) {
if ($int($mid(%TVRage_Time_Temp. [ $+ [ %num ] ],1,2)) = $int($mid(%TVRage_Time_Schedule. [ $+ [ %num ] ],1,2))) {
inc %TVRage_Time_Count. [ $+ [ %num ] ] 1
if (%TVRage_Time_Temp2. [ $+ [ %num ] ] = %TVRage_Time_Temp. [ $+ [ %num ] ]) { goto Next_Time }
.msg %TVRage_Target. [ $+ [ %num ] ] Time: ( $+ %TVRage_Time_Temp. [ $+ [ %num ] ] $+ )
:Next_Time
.msg %TVRage_Target. [ $+ [ %num ] ] --- ( $+ %TVRage_show_Network. [ $+ [ %num ] ] $+ ) %TVRage_Show_Show. [ $+ [ %num ] ] - %TVRage_Show_Ep. [ $+ [ %num ] ]
Set %TVRage_Time_Temp2. [ $+ [ %num ] ] %TVRage_Time_Temp. [ $+ [ %num ] ]
}
}
if (%TVRage_Time_Schedule. [ $+ [ %num ] ] != $Null) && (%TVRage_Time_Count. [ $+ [ %num ] ] = 0)) { .msg %TVRage_Target. [ $+ [ %num ] ] There are no new TV Shows Scheduled for %TVRage_Time_Schedule. [ $+ [ %num ] ] $+ :00 $iif(%TVRage_Time_Schedule. [ $+ [ %num ] ] < 12,pm,am) }
elseif (%TVRage_Time_Schedule. [ $+ [ %num ] ] = $Null) {
if (%TVRage_Time_Temp2. [ $+ [ %num ] ] = %TVRage_Time_Temp. [ $+ [ %num ] ]) { goto Next_Time2 }
.msg %TVRage_Target. [ $+ [ %num ] ] Time: ( $+ %TVRage_Time_Temp. [ $+ [ %num ] ] $+ )
:Next_Time2
.msg %TVRage_Target. [ $+ [ %num ] ] --- ( $+ %TVRage_show_Network. [ $+ [ %num ] ] $+ ) %TVRage_Show_Show. [ $+ [ %num ] ] - %TVRage_Show_Ep. [ $+ [ %num ] ]
Set %TVRage_Time_Temp2. [ $+ [ %num ] ] %TVRage_Time_Temp. [ $+ [ %num ] ]
}
}
}
.fclose %TVRage_Date. [ $+ [ %num ] ]
.remove [ %TVRage_Date. [ $+ [ %num ] ] ] [ $+ [ %num ] ] $+ .txt
}
.unset %tvshow. [ $+ [ %num ] ]
.unset %show_*. [ $+ [ %num ] ]
.unset %TVRage_*. [ $+ [ %num ] ]
.unset %Check*. [ $+ [ %num ] ]
}
Alias -l FullDate {
if ($Mid($1,1,3) = Sat) { Return Saturday }
elseif ($Mid($1,1,3) = Sun) { return Sunday }
elseif ($Mid($1,1,3) = Mon) { Return Monday }
elseif ($Mid($1,1,3) = Tue) { Return Tuesday }
elseif ($Mid($1,1,3) = Wed) { Return Wednesday }
elseif ($Mid($1,1,3) = Thu) { Return Thursday }
elseif ($Mid($1,1,3) = Fri) { Return Friday }
else { Return $null }
}
alias -l CheckEP {
var %temp $GetTok($2-,$numtok($2-,32),32)
$iif(e isin %Temp,%Temp = $replace(%Temp,e,x))
set %Check_Season. [ $+ [ $1 ] ] $Mid(%Temp,1,$Calc($pos(%Temp,x)-1))
set %Check_Ep. [ $+ [ $1 ] ] $Mid(%Temp,$Calc($pos(%Temp,x)+1))
if ($mid(%Check_Season. [ $+ [ $1 ] ],1,1) = s) { Set %Check_Season. [ $+ [ $1 ] ] $Mid(%Check_Season. [ $+ [ $1 ] ],2) }
if ((%Check_season. [ $+ [ $1 ] ] isnum) && (%Check_Ep. [ $+ [ $1 ] ] isnum)) { Return 1 }
else { Return 0 }
}
dialog -l Settings {
title "TVRage Settings"
size -1 -1 264 175
option pixels
box "", 1, 8 8 249 60
box "", 2, 8 67 249 60
box "", 3, 8 126 249 43
text "Select where you want the Schedule Displayed", 4, 16 21 225 17
radio "Channel", 5, 32 45 65 13, group
radio "Private Message", 6, 128 45 105 13,
text "Select where you want the Replys Displayed", 7, 16 80 225 17
radio "Channel", 8, 32 104 65 13, group
radio "Private Message", 9, 128 104 105 13,
check "Enable TVRage", 10, 32 145 113 13
button "&Save Settings", 11, 144 139 89 25, ok
}
on *:dialog:Settings:*:*:{
if ($Devent == init) {
if (%TV_Where = 1) { did -c $dname 8 }
else { did -c $dname 9 }
if (%TV_Where2 = 1) { did -c $dname 5 }
else { did -c $dname 6 }
if (%TV_Rage = 1) { did -c $dname 10 }
else { did -u $dname 10 }
}
elseif ($devent == sclick) {
if ($Did = 11) {
set %TV_Where $iif($Did($Dname,8).state = 1,1,0)
set %TV_Where2 $iif($Did($Dname,5).state = 1,1,0)
set %TV_Rage $iif($Did($Dname,10).state = 1,1,0)
}
}
elseif ($devent == Close) {
set %TV_Where $iif($Did($Dname,8).state = 1,1,0)
set %TV_Where2 $iif($Did($Dname,5).state = 1,1,0)
set %TV_Rage $iif($Did($Dname,10).state = 1,1,0)
echo -a TV Rage Settings have been saved.
}
}
dialog -l SelfSearch {
title "TVRage Search"
size -1 -1 500 202
option pixels
box "", 1, 8 8 486 145
box "", 2, 8 152 486 43
text "Search Options:", 3, 16 16 462 17
text "<Show> (Season and Episode) EX: House 2x05", 4, 30 33 462 17
text "Schedule <Day Of Week> EX: Schedule Fri", 5, 30 50 462 17
text "Schedule <Day Of Week> (Time) EX: Schedule Wed 10", 6, 30 67 462 17
text "Schedule <Day Of Week> (Time) (Country:US,GB,UK,AU) EX: Schedule Saturday 10 GB", 7, 30 84 462 17
text "Option in ( ) are Optional. Options in < > are Required.", 8, 30 101 462 17
edit "", 9, 16 125 462 17, autohs
button "Search", 10, 335 165 65 25
button "Cancel", 11, 414 165 65 25, cancel
}
on *:dialog:SelfSearch:sclick:*:{
if ($Did = 10) {
if ($Did(9) = $null) {
if ($dialog(error,error,-4)) { did -f $Dname 9 }
}
else {
var %Num = $trnum
set %TVRage_Target. [ $+ [ %num ] ] $me
set %TVRage_Nick. [ $+ [ %num ] ] $me
TVRage.Load %num $did(9).text
echo -a Check you Private Message for the infomation that you requested.
dialog -x $dname
}
}
}
dialog -l error {
title "Error"
size -1 -1 228 90
option pixels
box "", 2, 8 8 214 33
box "", 3, 8 40 214 43
button "&Ok", 4, 160 52 50 25, ok
text "You must type something to search for!", 5, 20 20 190 17
}
alias -l Check.Settings {
if ($1 = Ep) {
if (%TV_Where = $Null) { Set %TV_Where 0 }
if (%TV_Where = 1) { set %TVRage_Target. [ $+ [ $2 ] ] %TVRage_Chan. [ $+ [ $2 ] ] }
elseif (%TV_Where = 0) { set %TVRage_Target. [ $+ [ $2 ] ] %TVRage_Nick. [ $+ [ $2 ] ] }
if (%TVRage_Query. [ $+ [ $2 ] ] = 1) { set %TVRage_Target. [ $+ [ $2 ] ] %TVRage_Nick. [ $+ [ $2 ] ] }
}
elseif ($1 = Sch) {
if (%TV_Where2 = $Null) { Set %TV_Where2 0 }
if (%TV_Where2 = 1) { set %TVRage_Target. [ $+ [ $2 ] ] %TVRage_Chan. [ $+ [ $2 ] ] }
elseif (%TV_Where2 = 0) { set %TVRage_Target. [ $+ [ $2 ] ] %TVRage_Nick. [ $+ [ $2 ] ] }
if (%TVRage_Query. [ $+ [ $2 ] ] = 1) { set %TVRage_Target. [ $+ [ $2 ] ] %TVRage_Nick. [ $+ [ $2 ] ] }
}
if (%TVRage_Nick. [ $+ [ $2 ] ] = $me) {
set %TVRage_Target. [ $+ [ $2 ] ] $me
}
}
alias -l trnum {
set %trnum $base($calc($base(%trnum,36,10) +1),10,36)
return %trnum
}