Advertisement
KAKAN

mIRC pastebin script

Sep 25th, 2015
214
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
mIRC 6.19 KB | None | 0 0
  1. ;You have to paste it on remotes
  2.  
  3. alias -l ht2chr {
  4.   if (#x* iswm $1) return $chr($base($mid($1, 3), 16, 10))
  5.   elseif (#* iswm $1) return $chr($mid($1, 2))
  6.   else return $ht2as($1)
  7. }
  8. alias -l ht2as {
  9.   var %A quot amp lt gt nbsp iexcl cent pound curren yen brvbar sect uml copy ordf $&
  10.     laquo not shy reg macr deg plusmn sup2 sup3 acute micro para middot cedil sup1 $&
  11.     ordm raquo frac14 frac12 frac34 iquest Agrave Aacute Acirc Atilde Auml Aring AElig $&
  12.     Ccedil Egrave Eacute Ecirc Euml Igrave Iacute Icirc Iuml ETH Ntilde Ograve Oacute $&
  13.     Ocirc Otilde Ouml times Oslash Ugrave Uacute Ucirc Uuml Yacute THORN szlig agrave $&
  14.     aacute acirc atilde auml aring aelig ccedil egrave eacute ecirc euml igrave iacute $&
  15.     icirc iuml eth ntilde ograve oacute ocirc otilde ouml divide oslash ugrave uacute $&
  16.     ucirc uuml yacute thorn yuml
  17.   var %B 34 38 60 62 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 $&
  18.     177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 $&
  19.     199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 $&
  20.     221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 $&
  21.     243 244 245 246 247 248 249 250 251 252 253 254 255
  22.   return $chr($gettok(%B, $findtokcs(%A, $1, 32), 32))
  23. }
  24. alias html2ascii { return $regsubex($1-,/&(.{2,6});/Ug, $ht2chr(\t)) }
  25.  
  26. alias pastebin {
  27.   if ($regex($strip($2-), /^(?:.*?\s)?(?:https?:\/\/)?(?:www\.)?pastebin.com(?:\/(u))?\/(\w+)\/?(?:\s.*)?$/i)) {
  28.     if (!%pastebinTimeout. [ $+ [ $nick ] ]) {
  29.       sockopen pastebin. [ $+ [ $nick ] ] pastebin.com 80
  30.       if ($regml(0) == 2) {
  31.         sockmark pastebin. [ $+ [ $nick ] ] $+($1,:,$regml(2),:,$regml(1))
  32.       }
  33.       else {
  34.         sockmark pastebin. [ $+ [ $nick ] ] $+($1,:,$regml(1))
  35.       }
  36.     }
  37.   }
  38. }
  39.  
  40. on *:TEXT:*:*: { pastebin $iif($left($target,1) == $chr(35), #, $nick) $1- }
  41. on *:INPUT:*: { pastebin $target $1- }
  42.  
  43. on *:SOCKOPEN:pastebin.*: {
  44.   var %id = $gettok($sock($sockname).mark,2,58)
  45.   sockwrite -nt $sockname GET / $+ $iif($numtok($sock($sockname).mark,58) == 3,u/ $+ %id,%id) HTTP/1.0
  46.   sockwrite -nt $sockname Host: pastebin.com
  47.   sockwrite $sockname $crlf
  48. }
  49.  
  50. on *:SOCKREAD:pastebin.*: {
  51.   if (!$sockerr) {
  52.     var %sockreader
  53.     sockread %sockreader
  54.  
  55.     if ($gettok($sock($sockname).mark,3,58) != u) {
  56.       if ($regex(%sockreader, <div class="content_title">(This paste has been removed!)</div>)) {
  57.         msg $gettok($sock($sockname).mark,1,58) 12 $+ $regml(1)
  58.         sockclose $sockname
  59.       }
  60.  
  61.       if ($regex(%sockreader, <div class="paste_box_line1" title="(.*)">)) { sockmark $sockname $+($sock($sockname).mark,:,$regml(1)) }
  62.  
  63.       if ($regex(%sockreader, <div class="paste_box_line2">(.*)<\/div>)) {
  64.         var %data = $regml(1), %title = $gettok($sock($sockname).mark,3,58)
  65.  
  66.         if ($regex(%data, <a href="\/pro" title="(.*?)">)) { var %proUser = $regml(1) }
  67.  
  68.         if ($regex(%data, /<a href="\/(?:u|archive)\/.*?">(.*?)<\/a>/g)) {
  69.           if ($regml(0) == 2) { var %by = $+($regml(1),$iif(%proUser, 10[ $+ $v1 $+ ])), %syntax = $regml(2) }
  70.           else { var %by = A GUEST, %syntax = $regml(1) }
  71.         }        
  72.  
  73.         if ($regex(%data, /(?:size|expires):\s\b([a-z0-9. ]+)\b/gi)) { var %size = $regml(1), %expires = $regml(2) }  
  74.  
  75.         if ($regex(%data, /<span .*?>(.*?)<\/span>/g)) {
  76.           var %on = $regml(1), %edited = $iif($regml(0) == 3, $regml(2)), %views = $iif($regml(0) == 3, $regml(3), $regml(2))
  77.           msg $gettok($sock($sockname).mark,1,58) 12Title: 04 $+ $html2ascii(%title) 1 $+ $chr(124) 12By: 04 $+ %by 1 $+ $chr(124) 12On: 04 $+ %on $iif(%edited,10( $+ $v1 $+ ) ) 1 $+ $chr(124) 12Syntax: 04 $+ %syntax 1 $+ $chr(124) 12Size: 04 $+ %size 1 $+ $chr(124) 12Views: 04 $+ %views 1 $+ $chr(124) 12Expires: 04 $+ %expires
  78.           sockclose $sockname    
  79.         }  
  80.       }
  81.     }
  82.     else {
  83.       if ($regex(%sockreader, (?:<div class="content_title">|Moved Temporarily))) {
  84.         msg $gettok($sock($sockname).mark,1,58) 12The user does not exist!
  85.         sockclose $sockname
  86.       }
  87.       if ($regex(%sockreader, <div class="paste_box_line1">(.*)<\/div>)) {
  88.         var %data = $regml(1)
  89.         if ($regex(%data, <a href="/pro" title="(.*?)">)) {
  90.           var %proUser = $regml(1)
  91.         }
  92.         if ($regex(%data, <h1>(.*)<\/h1>)) {
  93.           var %pastebin = $+($regml(1),$iif(%proUser, 10[ $+ $v1 $+ ]))
  94.         }
  95.         sockmark $sockname $+($sock($sockname).mark,:,%pastebin)
  96.       }
  97.  
  98.       if ($regex(%sockreader, <div class="paste_box_line2">(.*)<\/div>)) {
  99.         var %data = $regml(1)
  100.         if ($regex(%data, /(?:Total Pastes|Pastebin Hits|Total Pastes Hits):\s\b([a-z0-9., ]+)\b/gi)) {
  101.           sockmark $sockname $+($sock($sockname).mark,:,$regml(1),:,$regml(2),:,$regml(3))
  102.         }
  103.         if ($regex(%data, <span .*>(.*)<\/span>)) {
  104.           sockmark $sockname $+($sock($sockname).mark,:,$regml(1))
  105.         }
  106.       }
  107.  
  108.       if ($regex(%sockreader, <div class="paste_box_line3">(.*)<\/div>)) {
  109.         var %data = $regml(1)
  110.         if ($regex(%data, <img src=".*" class="i_loc" .*?>\s(.*?)&)) {
  111.           var %location = $regml(1)
  112.         }
  113.         if ($regex(%data, <a href="(.*?)")) {
  114.           var %website = $regml(1)
  115.         }
  116.         var %pastebin = $gettok($sock($sockname).mark,4,58), %totalPastes = $gettok($sock($sockname).mark,5,58), %totalPastesHits = $gettok($sock($sockname).mark,7,58), %totalData = $numtok($sock($sockname).mark, 58)
  117.         var %pastebinHits = $gettok($sock($sockname).mark,$iif(%totalData > 6,6,5),58)
  118.         var %joined = $gettok($sock($sockname).mark,$iif(%totalData > 6,8,6),58)
  119.  
  120.         msg $gettok($sock($sockname).mark,1,58) 4 $+ %pastebin $iif(%totalData > 6,1 $+ $chr(124) 12Total Pastes: 04 $+ %totalPastes,) 1 $+ $chr(124) 12Pastebin Hits: 04 $+ %pastebinHits $iif(%totalData > 6,1 $+ $chr(124) 12Total Pastes Hits: 04 $+ %totalPastesHits,) 1 $+ $chr(124) 12Joined: 04 $+ %joined ago $iif(%location, 1 $+ $chr(124) 12Location: 04 $+ $v1,) $iif(%website, 1 $+ $chr(124) 12Website: 04 $+ $v1,)
  121.         sockclose $sockname
  122.       }
  123.     }
  124.   }
  125. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement