All pastes #676431 Raw Edit

Mine

public text v1 · immutable
#676431 ·published 2007-08-31 01:35 UTC
rendered paste body
alias blacklist {
  if ($readini(blacklisted.ini,$address($1,2),$1) == yes) {
    echo -a $+($chr(91),Blacklist,$chr(93)) User: $1 Hostmask: $address($1,2) is already blacklisted. Reason: $iif($readini(blacklisted.ini,$address($1,2),reason),$readini(blacklisted.ini,$address($1,2),reason),-)
  }
  else {
    if (!$1) {
      echo -a Syntax: /blacklist nick [reason]
      halt
    }
    if ($address($1,2) == $null) {
      echo -a The Hostmask of $1 could not be resolved, an automatic raw user host finder has been initiated for Nick Only banning.
      /getrawuser $1
      timer 1 1 set %toban $!(*!*,$+,$noident(%host))) 
      timer 1 1.5 echo -a Rawuserhost match: $1 Userhost: $$(%toban)
      timer 1 2 writeini blacklisted.ini $1 details Nick: $1 Hosmask: $$(%toban) Time Blacklisted: $time Date blacklisted: $date 
      timer 1 5 globalban $1
    } 
    else {
      writeini blacklisted.ini $address($1,2) $1 yes
      writeini blacklisted.ini $1 details Nick: $1 Hosmask: $address($1,2) Time Blacklisted: $time Date blacklisted: $date
      writeini blacklisted.ini $address($1,2) $address($1,2) yes
      if ($2-) { 
        writeini blacklisted.ini $address($1,2) reason $2-
      }
      amsg $+(4,$chr(91),1»Blacklist,«4,$chr(93)) 4[1Nick4]1 $1 (Hostmask: $address($1,2) $+ ) $iif($2-,4[1Reason4]1 $2-)
      echo -a Global banning will now start
      var %x = 1
      while (%x <= $chan(0)) {
        mode $chan(%x) +b $address($1,2)
        ban -k $chan(%x) $1 $+(4,$chr(91),1»Blacklist,«4,$chr(93),1) $iif($2-,4B1lacklisted. 4R1eason: $2-,4B1lacklisted.) 
        inc %x
      }
    }
  }
}
alias unblacklist {
  if (!$1) {
    echo -a Syntax: /unblacklist user *!*@address.com [If you do not have the address please use /check nick]
    halt
  }
  else {
    remini blacklisted.ini $2
    remini blacklisted.ini $1
    amsg $+(4,$chr(91),1»Unblacklisting,«4,$chr(93)) 4[1Nick4]1 $1 (Hostmask: $2 $+ )
    echo -a Global unbanning will now start
    var %x = 1
    while (%x <= $chan(0)) {
      mode $chan(%x) -b $2
      inc %x
    }
  }
}
on *:JOIN:#:{
  if ($readini(blacklisted.ini,$address($nick,2),$nick) == yes) || ($readini(blacklisted.ini,$nick,details) != $null) {
    if (($me isop $chan) || ($me ishop $chan)) {
      ban -k $chan $nick $+(4,$chr(91),1»Blacklist,«4,$chr(93)) 4B1lacklisted. $iif($readini(blacklisted.ini,$address($nick,2),reason),4R1eason: $readini(blacklisted.ini,$address($nick,2),reason))
    }
    else {
      msg $chan $+(4,$chr(91),1»Blacklist,«4,$chr(93)) $nick is on my blacklist. Please KB $iif($readini(blacklisted.ini,$address($nick,2),reason),Reason: $readini(blacklisted.ini,$address($nick,2),reason),No reason found however)
    }
  }
}
alias check {
  if (!$1) { 
    echo -a Syntax: /check user 
    halt
  }
  else {
    if ($readini(blacklisted.ini,$1,details) == $null) {
      echo -a ' $+ $1 $+ ' not found in blacklist
    }
    else {
      echo -a Results for ' $+ $1 $+ ':
      echo -a $readini(blacklisted.ini,$1,details)
    }
  }
}
alias noident {
  var %x = 1
  while (%x <= $calc($len($1) + 1)) {
    if (!%atfound) && ($mid($1,%x,1) != @) {
      inc %x
    }
    if (!%atfound) && ($mid($1,%x,1) == @) {
      var %result = @
      set %atfound yes
      inc %x
    }
    if (%atfound == yes) && ($mid($1,%x,1) != @) {
      var %result = %result $+ $mid($1,%x,1)
      inc %x
    }
    elseif ($mid($1,%x,1) == $null) { 
      halt
    }
  }
  unset %host
  unset %atfound
  return %result
}
alias getrawuser {
  unset %host
  set %ipnick $1
  set %output echo -a
  userhost $1
}
alias globalban {
  var %x = 1
  while (%x <= $chan(0)) {
    mode $chan(%x) +b $$(%toban)
    ban -k $chan(%x) $1 $+(4,$chr(91),1»Blacklist,«4,$chr(93),1) 4B4lacklisted. 
    inc %x
  }
}


alias blhelp {
  echo -a Commands:
  echo -a /blacklist user [reason] - blacklists a user globally, Reason is optional
  echo -a /check user - Gives details of a users blacklist if applicable
  echo -a /unblacklist user *!*@Host.Mask [If you do not know the host mask do /check user
}

raw 302:*: { 
  if (%ipnick) {
    if ($2- == $null) {
      set %host Not online
    }
    else {
      tokenize $asc(=) $2- 
      set %host $remove($replace($2-,$chr(43),$chr(32)),$chr(32))
    }
    unset %output 
    unset %ipnick
  }
}