rendered paste bodyalias -l urlencode {
if (!$1) return
var %a = $regsubex($$1,/([^\w\s])/Sg,$+(%,$base($asc(\t),10,16,2)))
return $replace(%a,$chr(32),$chr(43))
}
alias -l v_title {
if (!$1) return
var %y 1, %t $regsubex($1,/(\A *$| mp3)/g,$null)
while ($didreg(music_main,7,/^ $+ %t $+ $iif(%y > 1,$chr(32) $+ $base(%y,10,10,2)) $+ {1}$/i)) {
inc %y
}
return $titlecase(%t) $+ $iif(%y > 1,$chr(32) $+ $base(%y,10,10,2))
}
on *:dialog:music_main:close:0:{
.timerinf off
sockclose get_*
sockclose get2_*
sockclose dload‡*
}
on *:dialog:music_main:sclick:36:{
sockclose dload‡*
did -r music_main 17
if ($hget(inf_music)) hfree inf_music
.timerinf off
did -b music_main 1,9-10,12-21,32-33,36-39
did -r music_main 1,18-21,32
did -ar music_main 14 0MB / 0MB Received
}
on *:dialog:music_main:sclick:38:{
if ($exists($qt($did(18)))) run $qt($did(18))
else {
.timer 1 1 noop $!input(File does not exist.,owua,Music Searcher: Error)
.timer $+ $ltimer -e
}
}
on *:dialog:music_main:sclick:39:{
if ($exists($qt($nofile($did(18))))) run $qt($nofile($did(18)))
else {
.timer 1 1 noop $!input(Directory does not exist.,owua,Music Searcher: Error)
.timer $+ $ltimer -e
}
}
on *:dialog:music_main:sclick:37:{
var %y $hget(inf_music,DL_ $+ $replace($did(music_main,17).seltext,$chr(32),†))
sockclose $+(dload,‡,$gettok($hget(inf_music,%y),1,135))
.timerinf off
hdel inf_music %y
.remove $qt($gettok(%y,3,135))
}
on *:dialog:music_main:sclick:17:{
var %m music_main, %y DL_ $+ $replace($did(music_main,17).seltext,$chr(32),†)
if ($numtok($hget(inf_music,%y),135) > 4) {
tokenize 135 $hget(inf_music,%y)
did -ar %m 18 $3
did -ar %m 19 $bytes($2,3).suf
did -ar %m 20 $5
did -ar %m 21 0secs
did -ar %m 32 $6
did -ar %m 14 $bytes($2,3).suf / $bytes($2,3).suf Received
did -ar %m 1 $str(|,19) Completed $str(|,19)
did -b %m 37
}
else {
did -e %m 37
d_info
.timerinf -mo 0 500 d_info
}
}
alias -l d_info {
var %y DL_ $+ $replace($did(music_main,17).seltext,$chr(32),†)
tokenize 135 $hget(inf_music,%y)
var %m music_main, %s $+(dload,‡,$1)
if (!$sock(%s)) {
.timerinf off
if ($len($did(%m,1)) == 50) {
did -ar %m 21 0secs
did -ar %m 14 $bytes($2,3).suf / $bytes($2,3).suf Received
did -ar %m 1 $str(|,19) Completed $str(|,19)
did -b %m 37
hadd inf_music %y $+($hget(inf_music,%y),‡,$did(%m,20),‡,$did(%m,32))
}
halt
}
did -ar %m 18 $3
did -ar %m 19 $bytes($2).suf
did -ar %m 32 $duration($sock(%s).to)
did -ar %m 14 $bytes($sock(%s).rcvd,3).suf / $bytes($2,3).suf Received
did -ar %m 1 $str(|,$ceil($calc($sock(%s).rcvd / $2 * 50)))
did -ar %m 20 $round($calc(($sock(%s).rcvd - $4) * 2 / 1024),2) kb/s
did -ar %m 21 $duration($round($calc($2 / $sock(%s).rcvd / ($sock(%s).to) * 1024),2))
hadd inf_music DL_ $+ $replace($did(%m,17).seltext,$chr(32),†) $puttok($hget(inf_music,DL_ $+ $replace($did(%m,17).seltext,$chr(32),†)),$sock(%s).rcvd,4,135)
}
alias -l titlecase {
var %x = $regsubex($lower($1-),/(\b)([a-z])/g,$upper(\1\2))
return $upper($left(%x,1)) $+ $right(%x,-1)
}
menu status,query,nicklist,channel,menubar {
Music Search:{
if ($dialog(music_main)) dialog -x music_main
dialog -mad music_main music_main
}
}
dialog music_main {
title "Music Searcher"
size -1 -1 221 307
option dbu
edit "", 2, 32 13 123 10, autohs
text "Artist:", 3, 13 14 18 8
button "Search", 4, 167 10 37 15
box "Search", 5, 7 4 209 35
box "Results", 6, 7 42 208 164, disable
list 7, 15 54 192 106, disable sort size vsbar
button "Download", 8, 171 169 37 12, disable
button "Play", 11, 171 185 37 12, disable
text "Time Remaining:", 15, 75 265 41 8, disable
text "Transfer Rate:", 13, 75 255 37 8, disable
text "File Size:", 12, 75 245 23 8, disable
text "0MB / 0MB Received", 14, 102 235 106 8, disable center
edit "", 1, 102 224 106 10, disable read
text "Progress:", 9, 75 225 25 8, disable
text "Filename:", 16, 75 215 23 8, disable
box "Current Downloads", 10, 7 208 208 92, disable
list 17, 11 216 56 69, disable size
text "", 18, 100 215 109 7, disable right
text "", 19, 100 245 107 8, disable right
text "", 20, 113 255 94 8, disable right
text "", 21, 117 265 90 8, disable right
edit "", 23, 32 25 123 10, autohs
text "Song:", 24, 13 26 18 8
text "Song Details:", 25, 16 161 33 8, disable
text "Name:", 26, 12 173 16 8, disable
edit "", 27, 29 172 137 10, disable read autohs
text "Provider:", 28, 12 185 23 8, disable
edit "", 29, 36 184 82 10, disable read autohs
text "Size:", 30, 121 185 13 8, disable
edit "", 31, 134 184 32 10, disable read
text "", 32, 117 275 90 8, disable right
text "Connection Time:", 33, 75 275 42 8, disable
text "Total results: ", 34, 158 47 47 7, disable right
button "Stop All", 36, 24 286 31 11, disable
button "Stop download", 37, 165 286 40 10, disable
button "Open file", 38, 75 286 40 10, disable
button "Open directory", 39, 118 286 44 10, disable
button "Stop Search", 22, 167 27 37 9
}
on *:dialog:music_main:sclick:22:sockclose get_*
on *:dialog:music_main:sclick:4:{
if ($did(2) || $did(23)) {
did -ar $dname 34 Total results:
did -er $dname 7
did -e $dname 6,25-31,34
if ($hget(sto_music)) hfree sto_music
hmake sto_music 100
.sockclose get_*
sockopen get_fmd free-music-downloads.ws 80
sockmark get_fmd 0
sockopen get_seeka www.seekasong.com 80
sockmark get_seeka 1
sockopen get_airmp3 www.airmp3.net 80
sockopen get_sideload www.sideload.com 80
sockmark get_sideload 1 0
sockopen get_xakep www.xakep.ru 80
sockopen get_mp3int www.mp3int.com 80
sockmark get_mp3int 0
}
}
on *:dialog:music_main:sclick:7:{
did -ar $dname 27 $did($did).seltext
did -ar $dname 29 $gettok($hget(sto_music,$replace($did(27),$chr(32),$chr(134))),4,135)
did -ar $dname 31 $gettok($hget(sto_music,$replace($did(27),$chr(32),$chr(134))),3,135)
did -e $dname 8,11
}
on *:dialog:music_main:sclick:8,11:{
var %y $hget(sto_music,$replace($did(7).seltext,$chr(32),$chr(134)))
tokenize 47 $remove($gettok(%y,2,135),http://,ftp://)
var %h $1, %p / $+ $replace($2-,$chr(32),/)
sockclose $+(get2_,$gettok(%y,1,135))
sockopen $+(get2_,$gettok(%y,1,135)) %h 80
sockmark $+(get2_,$gettok(%y,1,135)) $+(%h,‡,%p,‡,$did($did),‡,$did(7).seltext)
}
alias -l download {
var %1 = $1, %3 = $replace($3,$chr(134),$chr(32)), %t = $ticks
set %f.f.2 $replace($2,$chr(134),$chr(32))
set %f.f.x $true
tokenize 47 $remove($1,http://,ftp://)
set %f.f.type $iif($istok(.mp3 .ogg .wav .aif .mpa .wma,$mid(%1,$pos(%1,.,$count(%1,.))),32),$mid(%1,$pos(%1,.,$count(%1,.))),.mp3)
set %f.f.host $1
set %f.f.path / $+ $replace($2-,$chr(32),/)
if (!%3) {
.timer 1 1 set %f.f.dir $!sdir($mircdir,Save music file in)
.timer $+ $ltimer -e
.timer 1 1 set %f.f.name $!input(What would you like to call this file?,qeo,File name,$(%f.f.2))
.timer $+ $ltimer $iif(%f.f.dir,-e,off)
if ($exists($qt(%f.f.dir $+ %f.f.name $+ %f.f.type)) && %f.f.dir && %f.f.name) {
timer 1 1 set %f.f.x $!input(Are you sure you want to overwrite the existing $(%f.f.name $+ %f.f.type,0) $+ ?,yw,File Exists)
timer $+ $ltimer -e
}
}
if ((!%3 && %f.f.dir && %f.f.name && %f.f.x) || (%3)) {
sockopen $+(dload‡,%t) %f.f.host 80
sockmark $+(dload‡,%t) $+(0,‡,%f.f.host,‡,%f.f.path,‡,$qt($iif(%3,%3,%f.f.dir $+ %f.f.name $+ %f.f.type)),‡,%f.f.2,‡,0)
}
unset %f.f.*
}
on *:sockopen:dload‡*:{
sockwrite -n $sockname GET $gettok($sock($sockname).mark,3,135) HTTP/1.0
sockwrite -n $sockname Host: $gettok($sock($sockname).mark,2,135)
sockwrite -n $sockname Content-Type: application/octet-stream
sockwrite -n $sockname Accept: */*
sockwrite -n $sockname Accept-Language: *
sockwrite -n $sockname Accept-Charset: *
sockwrite -n $sockname Accept-Encoding: *
sockwrite -n $sockname User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3
sockwrite -n $sockname Connection: close
sockwrite -n $sockname $crlf
}
on *:sockread:dload‡*:{
if ($sockerr) {
.timer 1 1 noop $!input(Socket Error. Try again.,owua,Music Searcher: Error)
.timer $+ $ltimer -e
}
else {
if ($gettok($sock($sockname).mark,1,135) == 0) {
var %ht
sockread %ht
hinc -m inf_music $sockname $len(%ht)
if ($regex(%ht,/HTTP\/1\.[01] (\d+) (.*)/)) {
if ($regml(1) == 302) {
while (!$regex(%ht,/Location: (.*)/) && %ht) { sockread %ht }
if ($regml(1) && $istok(.mp3‡.ogg‡.wav,$mid($regml(1),$pos($regml(1),.,$count($regml(1),.))),135)) {
var %y $sock($sockname).mark
sockclose $sockname
download $regml(1) $replace($gettok(%y,5,135),$chr(32),$chr(134)) $replace($gettok(%y,4,135),$chr(32),$chr(134))
}
else {
sockclose $sockname
.timer 1 1 noop $!input(This file has moved to:.,oewua,Music Searcher: Error,$regml(1))
.timer $+ $ltimer -e
}
halt
}
elseif ($regml(1) != 200) {
.timer 1 1 noop $!input(Server Error - Code: $regml(1) Desc: $regml(2) $+ .,owua,Music Searcher: Error)
.timer $+ $ltimer -e
sockclose $sockname
halt
}
}
if ($regex(%ht,/Content-Length: (\d+)$/)) {
hadd inf_music CL_ $+ $sockname $regml(1)
if ($exists($qt($gettok($sock($sockname).mark,4,135)))) .remove $qt($gettok($sock($sockname).mark,4,135))
}
if (!%ht && !$sockbr && $sock($sockname).rq) {
sockmark $sockname $puttok($sock($sockname).mark,1,1,135)
var %m music_main, %p $calc($hget(inf_music,CL_ $+ $sockname) - $hget(inf_music,$sockname))
hdel -w inf_music * $+ $gettok($sockname,2,135)
did -e %m 1,9-10,12-21,32-33,36-39
did -ar %m 22 %p
did -ac %m 17 $gettok($sock($sockname).mark,5,135)
did -a %m 18 $noqt($gettok($sock($sockname).mark,4,135))
hadd -m inf_music DL_ $+ $replace($gettok($sock($sockname).mark,5,135),$chr(32),$chr(134)) $+($gettok($sockname,2,135),‡,%p,‡,$noqt($gettok($sock($sockname).mark,4,135)),‡,0)
timerinf -mo 0 500 d_info
}
}
while ($sock($sockname).rq && $gettok($sock($sockname).mark,1,135) == 1) {
sockread &source
bwrite $gettok($sock($sockname).mark,4,135) -1 -1 &source
}
}
}
on *:sockopen:get2_*:{
sockwrite -n $sockname GET $gettok($sock($sockname).mark,2,135) HTTP/1.0
sockwrite -n $sockname Host: $gettok($sock($sockname).mark,1,135)
sockwrite -n $sockname $crlf
}
on *:sockopen:get_seeka:{
sockwrite -n $sockname GET $+(/search.php?artist=,$urlencode($did(music_main,2)),&title=,$urlencode($did(music_main,23)),&page=,$sock($sockname).mark) HTTP/1.0
sockwrite -n $sockname Host: www.seekasong.com
sockwrite -n $sockname $crlf
}
on *:sockread:get_seeka:{
if ($sockerr) halt
var %sr
sockread %sr
if ($regex(%sr,/^<a href="(download\.php\?id=.*)">(.*)<\/a><br>/)) {
var %z www.seekasong.com/ $+ $regml(1), %t $v_title($regml(2))
sockread %sr
noop $regex(%sr,/<a href="click\.php\?link=provider" target="_blank">(.*?)</a>/)
var %w $regml(1)
sockread %sr
noop $regex(%sr,/<td width="10%" .* nowrap valign="middle">(.*?)<br>/)
hadd sto_music $replace(%t,$chr(32),$chr(134)) $+($gettok($sockname,2,95),‡,%z,‡,$regml(1),‡,%w)
did -a music_main 7 %t
did -ar music_main 34 Total results: $did(music_main,7).lines
}
if (*<a href="search.php?title=*&artist=*&page= $+ $calc($sock($sockname).mark + 1) $+ "> $+ $calc($sock($sockname).mark + 1) $+ </a>* iswm %sr) {
var %y $sockname, %z $calc($sock($sockname).mark + 1)
sockclose $sockname
sockopen %y www.seekasong.com 80
sockmark %y %z
}
if (*Sorry, no results were found in this search.* iswm %sr || </body> iswm %sr) {
sockclose $sockname
}
}
on *:sockread:get2_seeka:{
if ($sockerr) {
.timer 1 1 noop $!input(There was an error obtaining the file link. Error: $sockerr $+ .,owua, Music Searcher: Error)
.timer $+ $ltimer -e
halt
}
while ($sock($sockname).rq) {
sockread &sr
bwrite seekatemp -1 -1 &sr
}
bunset &sr
bread seekatemp 0 $file(seekatemp).size &sr
if ($bfind(&sr,0,</html>)) {
.remove seekatemp
if ($bfind(&sr,0,Report broken link</a></div></td></tr></table></td>)) {
var %x $calc($bfind(&sr,0,<a class=help href=) + 20), %url = $bvar(&sr,%x,$calc($bfind(&sr,0,>Download This File) - 2 - %x)).text
if ($regex(%url,/.*\.(?:mp3|ogg|wav|wma|aif|mpa)$/)) {
if ($gettok($sock($sockname).mark,3,135) == Download) { var %y $sock($sockname).mark | sockclose $sockname | download %url $replace($gettok(%y,4,135),$chr(32),$chr(134)) }
elseif ($gettok($sock($sockname).mark,3,135) == Play) { sockclose $sockname | run %url }
}
else {
var %q $sockname
.timer 1 1 noop $!input(There was an error obtaining the file link.,owua,Music Searcher: Error)
.timer $+ $ltimer -e
sockclose %q
}
}
else {
var %q $sockname
.timer 1 1 noop $!input(There was an error obtaining the file link.,owua,Music Searcher: Error)
.timer $+ $ltimer -e
sockclose %q
}
}
}
on *:sockopen:get_xakep:{
sockwrite -n $sockname GET $+(/local/search/result.asp?scope=+%22%2Fxpost%22%2C+%22%2Fmagazine%2Fxa%22%2C+%22%2Fmagazine%2Fxs%22%2C+% $+ 22%2Fmagazine%2Fxh%22+&orderby=rank&tosearch=,$urlencode($iif($did(music_main,2),$iif($did(music_main,23),$did(music_main,2) $v1,$did(music_main,2)),$did(music_main,23))),&x=0&y=0) HTTP/1.0
sockwrite -n $sockname Host: www.xakep.ru
sockwrite -n $sockname $crlf
}
on *:sockread:get_xakep:{
if ($sockerr) halt
var %sr
sockread %sr
if ($regex(%sr,/ <a href="\Q../../local/redirect.asp?\Eurl=(.*?)"><b>/)) {
var %u www.xakep.ru/ $+ $regml(1)
sockread %sr
if ($len(%sr) < 3) sockread %sr
if ($regex(%sr,/(?: ){9}((?:\w|\s)+?)\. Íàçâàíèå: \1 Ãðóïïà:\. ((?:\w|\s)+?)\. Àëüáîì:\. .*?\. Ðàçìåð:\. (\d+)\./)) {
var %y 1, %s $bytes($calc($regml(3)*1024),3).suf, %t $v_title($regml(2) - $regml(1))
hadd sto_music $replace(%t,$chr(32),$chr(134)) $+($gettok($sockname,2,95),‡,%u,‡,%s,‡,Xakep Online)
did -a music_main 7 %t
did -ar music_main 34 Total results: $did(music_main,7).lines
}
}
if ($regex(%sr,/^ *\(íåò äàííûõ\)/)) sockclose $sockname
}
on *:sockread:get2_xakep:{
if ($sockerr) {
.timer 1 1 noop $!input(There was an error obtaining the file link. Error: $sockerr $+ .,owua, Music Searcher: Error)
.timer $+ $ltimer -e
halt
}
var %sr
sockread %sr
if ($regex(%sr,/<!-- fnamepostbegin -->(.*?\.(?:mp3|wma|ogg))<!-- fnamepostend --> /)) {
var %url $+($gettok($sock($sockname).mark,1,135),$remove($gettok($sock($sockname).mark,2,135),default.asp),$regml(1))
if ($gettok($sock($sockname).mark,3,135) == Download) { var %y $sock($sockname).mark | sockclose $sockname | download %url $replace($gettok(%y,4,135),$chr(32),$chr(134)) }
elseif ($gettok($sock($sockname).mark,3,135) == Play) { sockclose $sockname | run %url }
}
if ($len(%sr) < 400 && *<table width = "100%" class="textBody">* iswm %sr) {
.timer 1 1 noop $!input(There was an error obtaining the file link.,owua,Music Searcher: Error)
.timer $+ $ltimer -e
sockclose $sockname
}
}
on *:sockopen:get_fmd: {
sockwrite -nt $sockname GET $+(/en/search/,$iif($did(music_main,2),$urlencode($v1),_),/,$iif($did(music_main,23),$urlencode($v1),_),/mp3/,$sock($sockname).mark,/) HTTP/1.0
sockwrite -nt $sockname Host: free-music-downloads.ws
sockwrite -nt $sockname $crlf
}
on *:sockread:get_fmd:{
if ($sockerr) halt
else {
var %sr
sockread %sr
if ($regex(%sr,/ {20}<a href="\/en\/search\/(.*?)(?:">)+(.*?)<\/a>/)) {
var %y 1, %u http://free-music-downloads.ws/en/search/ $+ $regml(1), %t $v_title($regml(2))
sockread %sr | sockread %sr
if ($regex(%sr,/<td><b>Size<\/b>: *(.*?)<\/td>/)) {
var %s $upper($remove($regml(1),$chr(32)))
if ($regml(1) == N/A) var %t na
}
if (%t != na) {
hadd sto_music $replace(%t,$chr(32),$chr(134)) $+($gettok($sockname,2,95),‡,%u,‡,$iif(%s,%s,Unknown),‡,Free Music Downloads)
did -a music_main 7 %t
did -ar music_main 34 Total results: $did(music_main,7).lines
}
}
if (*<li><a href="/en/search/*/ $+ $calc($sock($sockname).mark + 1) $+ /"><b>* mp3* page $calc($sock($sockname).mark + 2) results</b></a></li> iswm %sr) {
var %y $sockname, %z $calc($gettok($sock(%y).mark,1,32) + 1)
sockclose $sockname
sockopen %y free-music-downloads.ws 80
sockmark %y %z
}
if (*<td>No results found. Try another search. iswm %sr || </body> iswm %sr) {
sockclose $sockname
}
}
}
on *:sockread:get2_fmd:{
if ($sockerr) {
.timer 1 1 noop $!input(There was an error obtaining the file link. Error: $sockerr $+ .,owua, Music Searcher: Error)
.timer $+ $ltimer -e
halt
}
var %sr
sockread %sr
if ($regex(%sr,/<b><a href="(.*?)">.*?<\/a><\/b><br \/><br \/>/)) {
var %url http://free-music-downloads.ws/ $+ $regml(1))
if ($gettok($sock($sockname).mark,3,135) == Download) { var %y $sock($sockname).mark | sockclose $sockname | download %url $replace($gettok(%y,4,135),$chr(32),$chr(134)) }
elseif ($gettok($sock($sockname).mark,3,135) == Play) { sockclose $sockname | run %url }
}
if (Sorry. Page not found. iswm %sr || *To download the song, simply right click on it then select* iswm %sr) {
var %q $sockname
.timer 1 1 noop $!input(There was an error obtaining the file link.,owua,Music Searcher: Error)
.timer $+ $ltimer -e
sockclose %q
}
}
on *:sockopen:get_mp3int:{
sockwrite -n $sockname GET $+(/mp3_search.php?k=,$iif($did(music_main,2),$urlencode($v1),$urlencode($did(music_main,23))),&p=,$sock($sockname).mark) HTTP/1.0
sockwrite -n $sockname Host: www.mp3int.com
sockwrite -n $sockname $crlf
}
on *:sockread:get_mp3int:{
if ($sockerr) halt
var %sr
sockread %sr
if ($regex(%sr,/<td width="80%"><span class="g0"><a href="(.*?)" title=".*?"><b>(.*?)<\/b>.*<\/a><\/span><\/td>/)) {
var %d $regml(1)
var %t $v_title($regml(2))
sockmark $sockname $+($gettok($sock($sockname).mark,1,135),‡,1,‡,www.mp3int.com $+ %d,‡,%t)
}
if ($regex(%sr,/<td width="80%"><font class="f8">(?:.*?)\.(\w+)<\/font><\/td>/) && !$regex($regml(1),/(mp3|wma|ogg)/i)) { sockmark $sockname $+($puttok($sock($sockname).mark,0,2,135),‡,$regml(1)) }
if ($gettok($sock($sockname).mark,2,135) == 1 && $regex(%sr,/<td class="f2" width="16%" nowrap>(.*?)<\/td>/)) { sockmark $sockname $+($sock($sockname).mark,‡,$remove($regml(1),$chr(32))) }
if ($gettok($sock($sockname).mark,2,135) == 1 && $regex(%sr,/ *<td class="f2" nowrap>Last rep\.<\/td>/)) {
sockread %sr | sockread %sr
if (Not a full song isin %sr) sockmark $sockname $puttok($sock($sockname).mark,0,2,135)
}
if ($gettok($sock($sockname).mark,2,135) == 1 && Most rep. isin %sr) {
sockread %sr | sockread %sr
if (Not a full song !isin %sr) {
hadd sto_music $replace($gettok($sock($sockname).mark,4,135),$chr(32),$chr(134)) $+($gettok($sockname,2,95),‡,$gettok($sock($sockname).mark,3,135),‡,$gettok($sock($sockname).mark,5,135),‡,mp3INT)
did -a music_main 7 $gettok($sock($sockname).mark,4,135)
}
}
if (<td><div align=right class=f4><a href="/mp3_search.php?k=*&p= $+ $calc($gettok($sock($sockname).mark,1,135) + 1) $+ ">Next* iswm %sr) {
var %y $sockname, %z $calc($gettok($sock(%y).mark,1,135) + 1)
sockclose $sockname
sockopen %y www.mp3int.com 80
sockmark %y %z
}
if (*<span class="f4"><font color="#000000">Top Referrers</font></span></td> isin %sr) sockclose $sockname
}
on *:sockread:get2_mp3int:{
if ($sockerr) {
.timer 1 1 noop $!input(There was an error obtaining the file link. Error: $sockerr $+ .,owua, Music Searcher: Error)
.timer $+ $ltimer -e
halt
}
var %sr
sockread %sr
if (*<td class="f2" width="10%"><b>File URL:</b></td> iswm %sr) {
sockread %sr
noop $regex(%sr,/<td class="f2" width="90%">(.*\.(?:mp3|ogg|wav|wma|aif|mpa))<\/td>/)
var %url $regml(1)
if ($gettok($sock($sockname).mark,3,135) == Download) { var %y $sock($sockname).mark | sockclose $sockname | download %url $replace($gettok(%y,4,135),$chr(32),$chr(134)) }
elseif ($gettok($sock($sockname).mark,3,135) == Play) { sockclose $sockname | run %url }
}
if (*<b>Latest Check Report:</b>* iswm %sr) {
var %q $sockname
.timer 1 1 noop $!input(There was an error obtaining the file link.,owua,Music Searcher: Error)
.timer $+ $ltimer -e
sockclose %q
}
}
on *:sockopen:get_sideload:{
sockwrite -n $sockname GET $+(/cb/search/?keywords=,$urlencode($iif($did(music_main,2),$iif($did(music_main,23),$did(music_main,2) $v1,$did(music_main,2)),$did(music_main,23))),&pg=,$gettok($sock($sockname).mark,1,32)) HTTP/1.0
sockwrite -n $sockname Host: www.sideload.com
sockwrite -n $sockname $crlf
}
on *:sockread:get_sideload:{
if ($sockerr) halt
var %sr
sockread %sr
if ($regex(%sr,/^<td valign="top" style="padding:1px;"><a href="(\Qhttp://www.sideload.com/cb/track/?id=\E\d+)">(.*?)<\/a><\/td>$/)) {
var %u $regml(1), %t $regml(2)
sockread %sr | sockread %sr | sockread %sr
if ($regex(w,%sr,/<a href=".*?">(.*?)<\/a>/)) {
var %y 1, %t $iif($regsubex(%t,/(?:http:\/\/)?(?:www\.).*?\.(?:com|org|co\.uk|net|de)(?:\/[^/]+)*\b/,$null),$v1 - $+ $chr(32))) $+ $regml(w,1), %t $v_title(%t)
hadd sto_music $replace(%t,$chr(32),$chr(134)) $+($gettok($sockname,2,95),‡,%u,‡,Unknown,‡,Sideload)
did -a music_main 7 %t
did -ar music_main 34 Total results: $did(music_main,7).lines
}
}
if ((*No sideload tracks found.</h4></td> iswm %sr) || (<div id="footer"> iswm %sr)) {
sockclose $sockname
}
if (*<td><a href="http://www.sideload.com/cb/search/?keywords=*&pg= $+ $calc($gettok($sock($sockname).mark,1,32) + 1) $+ " title="Next Page">* iswm %sr) {
if ($gettok($sock($sockname).mark,2,32) != 1) {
sockmark $sockname $puttok($sock($sockname).mark,1,2,32)
}
else {
var %y $sockname, %z $calc($gettok($sock(%y).mark,1,32) + 1)
sockclose $sockname
sockopen %y www.sideload.com 80
sockmark %y %z 0
}
}
}
on *:sockread:get2_sideload:{
if ($sockerr) {
.timer 1 1 noop $!input(There was an error obtaining the file link. Error: $sockerr $+ .,owua, Music Searcher: Error)
.timer $+ $ltimer -e
halt
}
var %sr
sockread %sr
if ($regex(%sr,/^<a href="(.*\.(?:mp3|ogg|wav|wma|aif|mpa))" onmouseover=".*?">Download this track<\/a>/)) {
var %url $regml(1))
if ($gettok($sock($sockname).mark,3,135) == Download) { var %y $sock($sockname).mark | sockclose $sockname | download %url $replace($gettok(%y,4,135),$chr(32),$chr(134)) }
elseif ($gettok($sock($sockname).mark,3,135) == Play) { sockclose $sockname | run %url }
}
if (</html> iswm %sr) {
var %q $sockname
.timer 1 1 noop $!input(There was an error obtaining the file link.,owua,Music Searcher: Error)
.timer $+ $ltimer -e
sockclose %q
}
}
on *:sockopen:get_airmp3: {
sockwrite -nt $sockname GET $+(/free_mp3_search.php?artist=,$urlencode($did(music_main,2)),&title=,$urlencode($did(music_main,23)),&do=search&search=search+mp3) HTTP/1.0
sockwrite -nt $sockname Host: www.airmp3.net
sockwrite -nt $sockname $crlf
}
on *:sockread:get_airmp3:{
if ($sockerr) halt
else {
while ($sock($sockname).rq) {
sockread &sr
bwrite airtemp -1 -1 &sr
}
bread airtemp 0 $file(airtemp).size &sp
if ($bfind(&sp,$calc($file(airtemp).size - 20),</HTML>)) {
if ($bfind(&sp,0,Site is very busy. Please try again in a few minutes)) .sockclose $sockname
var %g 1, %r 1, %n 1
while (%r <= 3) {
var %x = $calc($bfind(&sp,%g,<td bgcolor="#EEEEEE"><blockquote>) + 53), %n = $bfind(&sp,%x,</blockquote></td>), %a 17
inc %n
bcopy -c &st 1 &sp %x $calc(%n - %x)
if ($bvar(&st,0) && !$bfind(&st,1,No results here)) {
while (%a) {
var %t = $v_title($remove($bvar(&st,%a,$calc($bfind(&st,%a,34) - %a)).text,$chr(32) $+ mp3)), %c = $calc($bfind(&st,%a,href) + 6), %u = http://www.airmp3.net/ $+ $bvar(&st,%c,$calc($bfind(&st,%c,") - %c)).text
if (!%t) break
if (%r == 3) var %h = $calc($bfind(&st,%a,</a>) + 5), %s = $remove($bvar(&st,%h,$calc($bfind(&st,%a,<br>) - %h)).text,$chr(32))
var %a = $iif($calc($bfind(&st,%c,<br>) + 14) > %c,$v1)
hadd sto_music $replace(%t,$chr(32),$chr(134)) $+($gettok($sockname,2,95),‡,%u,‡,$iif(%r == 3,%s,Unknown),‡,$gettok(emp3finder.MP3 Dimension.Mp3INT,%r,46))
did -a music_main 7 %t
did -ar music_main 34 Total results: $did(music_main,7).lines
}
}
var %g = %n
bunset &st
inc %r
}
.remove airtemp
}
}
}
on *:sockread:get2_airmp3:{
if ($sockerr) {
.timer 1 1 noop $!input(There was an error obtaining the file link. Error: $sockerr $+ .,owua, Music Searcher: Error)
.timer $+ $ltimer -e
halt
}
var %sr
sockread %sr
if ($regex(%sr,/^ *(?:<br>){6}<table align=center><tr><td><strong><a href="(.*\.(?:mp3|ogg|wav|wma|aif|mpa))">/)) {
var %url $replace($regml(1)),$chr(32),+)
if ($gettok($sock($sockname).mark,3,135) == Download) { var %y $sock($sockname).mark | sockclose $sockname | download %url $replace($gettok(%y,4,135),$chr(32),$chr(134)) }
elseif ($gettok($sock($sockname).mark,3,135) == Play) { sockclose $sockname | run %url }
}
if (</body></html> iswm %sr) {
var %q $sockname
.timer 1 1 noop $!input(There was an error obtaining the file link.,owua,Music Searcher: Error)
.timer $+ $ltimer -e
sockclose %q
}
}