Posted to tcl by mjanssen at Thu Aug 09 18:58:09 GMT 2007view raw

  1. proc pub:join {hand chan args x mix} {
  2. global settings
  3.  
  4. if { [validchan $chan]} {a:tell $x 174 $chan ; return "FAILED: invalid chan specified ($chan)" }
  5. if { [llength [channels]] >= $settings(max_chans) } {a:tell $x 80; return "FAILED: channels limit reached" }
  6. if {![llength [lindex $args 0]]} {a:tell $x 305; return "USAGE: !join <$channel> <$manager>"}
  7. ::stats::channel -add $chan {}
  8. ::stats::channel -set $chan jointime [unixtime]
  9. ::stats::channel -set $chan joinwhom $hand
  10. a:announce -home 173 "$hand [lindex $x 0] [lindex $mix 0] $chan"
  11.  
  12. if {![onchan [lindex $args 0] $chan]} {
  13. putserv "PRIVMSG $chan :someone"
  14. return
  15. }
  16.  
  17. pub:chattr $hand $chan "[lindex $args 0] +Nnf" $x $mix
  18. a:announce -home 1735 "[lindex $args 0] $chan"
  19.  
  20. channel add $chan +secure
  21. pub:save
  22. return "$chan"
  23. }