Posted to tcl by mjanssen at Thu Aug 09 19:13:25 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. # join the channel first
  13. channel add $chan +secure
  14. pub:save
  15.  
  16. if {![onchan [lindex $args 0] $chan]} {
  17. putserv "PRIVMSG $chan :someone"
  18. return
  19. }
  20.  
  21. pub:chattr $hand $chan "[lindex $args 0] +Nnf" $x $mix
  22. a:announce -home 1735 "[lindex $args 0] $chan"
  23.  
  24.  
  25. return "$chan"
  26. }