All pastes #752997 Raw Edit

Miscellany

public text v1 · immutable
#752997 ·published 2007-10-28 21:45 UTC
rendered paste body

bind pub - !xaccess pub:xaccess
proc pub:xaccess {nick uhost hand chan rest} {
  catch {
    if {$rest == ""} {set rest "$chan *"}
    putquick "PRIVMSG x :access $rest"
    putlog "xaccess : Asking X for access on $target for $chan "
    set ::xaccessnick $nick
    set ::xaccesschan $chan
    return 0
   } foo
 if {$foo != 0} {putlog "Error in pub:xaccess! ($foo)"}
}

bind pub - !xcommands pub:xshowcommands
proc pub:xshowcommands {nick uhost hand chan rest} {
 catch {
  if {$rest == ""} {set target $chan} else {set target [lindex $rest 0]}
  putquick "PRIVMSG x :showcommands $target"
  putlog "xcommands : Asking X for commands on $target for $nick ($hand)"
  set ::xshowcommandschan $chan
  set ::xshowcommandsnick $nick
  return 0
 } foo
 if {$foo != 0} {putlog "Error in pub:xcommands! ($foo)"}
}

bind raw - NOTICE rawnotice:xaccess
proc rawnotice:xaccess {from key rest} {
  if {[info exists ::xaccessnick]} { 
    set nick $::xaccessnick}
    catch {
      if {$from == "X!cservice@undernet.org"} {
        putlog "Notice from $from key($key) rest($rest)"
        #if {[lindex $rest 1] == ":Channel"} {set ::xaccesschan [lindex $rest 2]; putlog "xaccess chan [lindex $rest 2]"}
        if {[lindex [split $rest " "] 3] == "ACCESS:"} {
          puthelp "NOTICE $nick :\0035- X - [lindex [split $rest " "] 2] - [join [lrange [split $rest " "] 3 end]]"
        }
        if {[string first {doesn't appear to be registered} $rest] != -1} {
          puthelp "NOTICE $nick :\0035[lindex $rest 3] isn't registered with X"
        }
        if {[string first {insufficient access} $rest] != -1} {
          putserv "NOTICE $nick :\0035I dont have X access to that channel"
        }
      }
    } foo
    if {$foo != 0} {
       putlog "Error in notice:xaccess! ($foo)"
       puthelp "NOTICE $nick :Error in notice:xaccess! ($foo)"
    }
  }
  if {[info exists ::xshowcommandsnick]} {
    set nick $::xshowcommandsnick
    set rest [split $rest " "]
    catch {
     if {$from == "X!cservice@undernet.org"} {
       putlog "xcommands : Notice from $from key($key) rest($rest)"
       if {[lindex $rest 0] == "Level"} {
         puthelp "NOTICE $nick :\0035 X [join $rest]"
       }
       if {[string first {doesn't appear to be registered} [join $rest]] != -1} {
         puthelp "NOTICE $::nick :\0035[lindex $rest 1] isn't registered with X"
       }
       if {[string first {insufficient access} [join $rest]] != -1} {
         puthelp "NOTICE $::nick :\0035I dont have X access to that channel"
       }
     }
    } foo
    if {$foo != 0} {putlog "Error in notice:xshowcommands! ($foo)"}
  }
}