on *:sockread:movieinfo2:{
if ($sockerr) {
Halt
}
else {
var %tmptxt
sockread -f %tmptxt
if (<b class="blackcatheader"> isin %tmptxt) {
if (Directed isin %tmptxt) { set %directcatch 1 }
}
elseif (%directcatch <= 1) {
hadd $remove(%movietitle,$chr(32)) $+ .hsh Director $htmlconv(%tmptxt)
unset %directcatch
}
if (<b class="ch"> isin %tmptxt) {
if (%zinfonumber <= 8) {
if (%zinfonumber = 1) { inc %zinfonumber }
elseif (%zinfonumber = 2) {
hadd $remove(%movietitle,$chr(32)) $+ .hsh Tagline $remove($htmlconv(%tmptxt),Tagline:,(more),(view trailer))
inc %zinfonumber
}
elseif (%zinfonumber = 3) {
hadd $remove(%movietitle,$chr(32)) $+ .hsh Plot $remove($htmlconv(%tmptxt),Plot $+ $chr(32) $+ Outline:,Plot $+ $chr(32) $+ Summary:,(more),(view trailer))
inc %zinfonumber
}
elseif (%zinfonumber = 4) { inc %zinfonumber }
elseif (%zinfonumber = 5) { inc %zinfonumber }
elseif (%zinfonumber = 6) { inc %zinfonumber }
elseif (%zinfonumber = 7) { inc %zinfonumber }
elseif (%zinfonumber = 8) { replywithstuff }
}
if (Genre: isin %tmptxt) { set %genrecatch 1 }
if (Runtime: isin %tmptxt) { set %rtcatch 8 }
}
elseif (%genrecatch <= 1) {
hadd $remove(%movietitle,$chr(32)) $+ .hsh Genre $remove($htmlconv(%tmptxt),(more))
unset %genrecatch
}
elseif (%rtcatch <= 8) {
hadd $remove(%movietitle,$chr(32)) $+ .hsh runtime $remove($htmlconv(%tmptxt),runtime:)
unset %rtcatch
}
}
}
dialog my_imdb {
title "AwSuMovies IMDB Personal Search Results"
size -1 -1 243 106
option dbu
edit "", 2, 72 6 105 10
edit "", 3, 33 24 105 10
edit "", 4, 33 38 62 10
edit "", 5, 121 38 115 10
edit "", 6, 164 24 73 10
text "Search For:", 7, 40 7 28 8
text "Movie Title:", 8, 4 25 28 8
text "Genre:", 9, 103 40 17 8
text "Director:", 10, 11 40 21 7
text "Runtime:", 11, 141 25 22 8
edit "", 14, 33 53 203 10
button "Search!", 16, 180 6 37 10
text "Tag Line:", 17, 10 55 23 7
button "Done", 18, 219 6 22 10, ok
text "Movie Plot:", 15, 93 67 27 8
edit "", 1, 5 76 232 28, multi
}
on *:dialog:my_imdb:sclick:*: {
if ($did == 16) {
set %movietitle $did(2)
did -r $dname 2
if $isfile($+(imdb\,$remove(%movietitle,$chr(32)),.hsh)) {
hmake $remove(%movietitle,$chr(32)) $+ .hsh
hload $remove(%movietitle,$chr(32)) $+ .hsh $+(imdb\,$remove(%movietitle,$chr(32)),.hsh)
did -ra $dname 3 %movietitle
did -ra $dname 4 $hget($remove(%movietitle,$chr(32)) $+ .hsh,Director)
did -ra $dname 5 $hget($remove(%movietitle,$chr(32)) $+ .hsh,Genre)
did -ra $dname 7 $hget($remove(%movietitle,$chr(32)) $+ .hsh,Tagline)
did -ra $dname 1 $hget($remove(%movietitle,$chr(32)) $+ .hsh,Plot)
did -ra $dname 6 %hget($remove(%movietitle,$chr(32)) $+ .hsh,Runtime)
}
else {
hmake $remove(%movietitle,$chr(32)) $+ .hsh
movieinfo
}
}
}
alias _htmlconv {
var %x = $regsubex($1-,/(?:&#(\d*?);)/g,$chr(\t))
noop $regsub(%x,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,$null,%x)
return $remove(%x,&,$chr(9))
}
alias -l dirchck { if (!isdir(imdb)) mkdir imdb }
alias -l replywithstuff {
did -ra my_imdb 3 %movietitle
did -ra my_imdb 4 $hget($remove(%movietitle,$chr(32)) $+ .hsh,Director)
did -ra my_imdb 5 $hget($remove(%movietitle,$chr(32)) $+ .hsh,Genre)
did -ra my_imdb 14 $hget($remove(%movietitle,$chr(32)) $+ .hsh,Tagline)
did -ra my_imdb 1 $hget($remove(%movietitle,$chr(32)) $+ .hsh,Plot)
did -ra my_imdb 6 $hget($remove(%movietitle,$chr(32)) $+ .hsh,Runtime)
dirchck
hsave $+($remove(%movietitle,$chr(32)),.hsh) $+(imdb\,$remove(%movietitle,$chr(32)),.hsh)
sockclose movieinfo1 | sockclose movieinfo2
hfree $remove(%movietitle,$chr(32)) $+ .hsh
}
alias mymoviesearch { dialog -m my_imdb my_imdb }