rendered paste bodyalias -l MAX_URBAN_SENDS return 4
on *:TEXT:'urban *:#:{
urbandic $nick $2-
}
alias urbandic {
var %sock = $+(urbandic,$1)
if ($sock(%sock)) return
sockopen %sock www.urbandictionary.com 80
sockmark %sock 1 $1 $urlencode($2-)
}
on *:SOCKOPEN:urbandic*:{
var %a = sockwrite -n $sockname
%a GET $+(/define.php?term=,$getmark($sockname,3-)) HTTP/1.1
%a Host: www.urbandictionary.com
%a Connection: close
%a $crlf
}
on *:SOCKREAD:urbandic*:{
var %temp
sockread %temp
if ($regex(%temp,<h1><b>(.+)</b> is undefined\.</h1>)) $&
msg $getmark($sockname,2) $+(",$regml(1),") is undefined
if ($regex(%temp,<p>(.+))) {
if ($getmark($sockname,1) <= $MAX_URBAN_SENDS) $&
msg $getmark($sockname,2) No. $getmark($sockname,1) : $+($htmlfree($regml(1)),$iif(*</p> !iswm $regml(1),...))
sockmark $sockname $calc($getmark($sockname,1) + 1) $getmark($sockname,2-)
}
}
alias -l getmark return $gettok($sock($1).mark,$$2,32)
alias -l urlencode {
var %a = $regsubex($$1,/([^\w\s])/Sg,$+(%,$base($asc(\t),10,16,2)))
return $replace(%a,$chr(32),$chr(43))
}
alias -l htmlfree {
var %x, %i = $regsub($1-,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,$null,%x), %x = $remove(%x,&,$chr(9))
return %x
}