All pastes #812725 Raw Edit

Stuff

public text v1 · immutable
·published 2007-12-11 23:52 UTC
rendered paste body
menu * { 
  Gudhak Blacklist by Xklark:/blist 
} 
dialog blist { 
  title "Gudhak Blacklist v0.2 BETA - by Xklark" 
  size -1 -1 285 142 
  option dbu 
  list 1, 181 4 102 114, size 
  button "Delete", 2, 183 122 61 12 
  button "Clear All", 3, 246 122 37 12 
  edit "", 4, 35 14 139 11 
  box "Add to Blacklist", 5, 8 3 170 50 
  text "Host:", 6, 11 15 22 9, right 
  edit "", 7, 35 26 139 11 
  text "Reason:", 8, 11 27 22 8, right 
  button "Add", 9, 35 38 137 12 
  box "Global Ban", 10, 8 55 171 43 
  edit "", 12, 34 66 141 11 
  text "Host:", 11, 11 67 22 9, right 
  button "Ban in all channels", 13, 35 79 138 12 
  text "Kick Counter:", 14, 3 133 35 10 
  edit "", 15, 35 132 29 10, disable 
} 

alias blist { 
  /dialog -m blist blist 
} 
on *:dialog:blist:init:0: { 
  set %b 1 
  while (%b <= $ini(blist.ini,Blacklist,0)) { 
    did -a $dname 1 $ini(blist.ini,Blacklist,%b) 
    inc %b 1 
  } 
  unset %b 
  did -a $dname 15 %kick.count 
} 
on *:dialog:blist:sclick:9: { 
  if ($did($dname,4) == $null) { 
    echo 4 $active [Blacklist] Please enter a host! 
    halt 
  } 
  else { 
    ;writeini -n blist.ini Hosts $calc($ini(blist.ini,Hosts,0)+1) $did($dname,4) 
    writeini -n blist.ini Blacklist $did($dname,4) $iif($did($dname,7) == $null,No Reason,$did($dname,7)) 
    did -a $dname 1 $did($dname,4) 
    did -r $dname 7 
    did -r $dname 4 
  } 
} 
on *:dialog:blist:sclick:2: { 
  if ($did($dname,1).seltext == $null) { 
    echo 4 $active [Blacklist] Please select a blacklist entry to remove! 
    halt 
  } 
  else { 
    ;remini blist.ini Hosts $did($dname,1).sel 
    remini blist.ini Blacklist $did($dname,1).seltext 
    did -d $dname 1 $did($dname,1).sel 
  } 
} 
on *:dialog:blist:sclick:3: { 
  if ($input(Are you sure you want to clear the blacklist?,y,Confirm) == $true) { 
    set %c 1 
    while (%c <= $did($dname,1).lines) { 
      remini blist.ini Blacklist $did($dname,1,%c) 
      inc %c 
    } 
    did -r $dname 1 %c 
  } 
  else { 
    halt 
  } 
} 
alias blistcheck { 
  if ($readini(blist.ini,Blacklist,$address($1,1)) != $null) || ($readini(blist.ini,Blacklist,$address($1,2)) != $null) || ($readini(blist.ini,Blacklist,$address($1,3)) != $null) { 
    return $true 
  } 
  else { 
    return $null 
  } 
} 
on *:join:#: { 
  if ($blistcheck($nick) == $true) { 
    if ($readini(blist.ini,Blacklist,$address($nick,1)) != $null) { 
      echo 4 -a [Blacklist] User: $nick joined and banned for reason: $readini(blist.ini,Blacklist,$address($nick,1)) 
      /mode $chan +b $address($nick,1) 
      /kick $chan $nick [Blacklisted] $readini(blist.ini,Blacklist,$address($nick,1)) • %kick.count • 

    } 
    elseif ($readini(blist.ini,Blacklist,$address($nick,2)) != $null) { 
      echo 4 -a [Blacklist] User: $nick joined and banned for reason: $readini(blist.ini,Blacklist,$address($nick,2)) 
      /mode $chan +b $address($nick,2) 
      /kick $chan $nick [Blacklisted] $readini(blist.ini,Blacklist,$address($nick,2)) • %kick.count • 
    } 
    elseif ($readini(blist.ini,Blacklist,$address($nick,3)) != $null) { 
      echo 4 -a [Blacklist] User: $nick joined $chan and banned for reason: $readini(blist.ini,Blacklist,$address($nick,3)) 
      /mode $chan +b $address($nick,3) 
      /kick $chan $nick [Blacklisted] $readini(blist.ini,Blacklist,$address($nick,3)) • %kick.count •    
    } 
  } 
} 
on *:dialog:blist:sclick:13: { 
  if ($did($dname,12) == $null) { 
    echo 4 -a [Blacklist] Please enter a host! 
    halt 
  } 
  else { 
    set %g 1 
    while (%g <= $chan(0)) { 
      if ($me isop $chan(%g)) || ($me ishop $chan(%g)) { 
        mode $chan(%g) +b $did($dname,12) 
      } 
      inc %g 1 
    } 
    unset %g 
    /did -r blist 12 
  } 
} 
on *:kick:#: { 
  if ($nick == $me) { 
    inc %kick.count 1 
  } 
}