Public feed #601712

Stuff

public text v1 · immutable
Raw Edit
·published 2007-07-03 17:41 UTC
rendered paste body
on *:TEXT:.bash:#:{
  if ($nick !isreg $chan) || ($address($nick,2) == $address($me,2)) {
    notice $nick Random Bash.org quote (Script provided by JParker):
    var %x = 1
    while ($sock($+(bash.,%x))) inc %x
    set $+(%,bash.target.,%x) .notice $nick
    sockopen $+(bash.,%x) bash.org 80
  }
}
on *:SOCKOPEN:bash.*:{
  sockwrite -nt $sockname GET /?random HTTP/1.1
  sockwrite -nt $sockname Host: $+(bash.org,$crlf,$crlf)
}
on *:SOCKREAD:bash.*:{
  var %x = $gettok($sockname,2,46), %target = $($+(%,bash.target.,%x),2)
  if ($sockerr) {
    %target Socket error: $sock($sockname).wsmsg
    halt
  }
  else {
    var %read
    sockread %read
    if (*Permanent link to this quote.* iswm %read) {
      if (!$($+(%,bash.on.,%x),2)) {
        set $+(%,bash.on.,%x) on
        %target $gettok($replace($striptags(%read),&lt;,<,&gt;,>,&amp;,&,&quot;,",<br />,$null,&nbsp;,$null),2-,$asc(]))
      }
      else {
        cleanup %x
        sockclose $sockname
        halt
      }
    }
    elseif (*<br /> iswm %read || *</p> iswm %read) && ($($+(%,bash.on.,%x),2)) %target $replace(%read,&lt;,<,&gt;,>,&amp;,&,&quot;,",<br />,$null,</p>,$null,&nbsp;,$null)
  }
}
alias -l striptags { var %x,%y = $regsub($1-,/(<[^>]+>)/g,$null,%x) | return %x }
alias -l cleanup { unset $+(%,bash.*.,$1) }