. * * * ************************************************************************ * * ModCMD/Binding.class.php * * a single Binding... * */ class Binding { private $bot; private $method; private $filter; public function __construct($bot, $method, $filter) { $this->bot = $bot; $this->method = $method; $this->filter = $filter; } public function trigger($params) { call_user_func_array(array($this->bot, $this->method), $params); } public function match($bot, $method, $filter) { return ($bot === $this->bot && (!$method || strtolower($this->method) == strtolower($method)) && (!$filter || $this->match_filter($filter, false))); } public function match_filter($filter, $preg = true) { if(!$this->filter) return true; if(is_object($filter) || is_object($this->filter)) { return $filter === $this->filter; } else if($preg && is_string($filter && is_string($this->filter))) { return preg_match($this->filter, $filter); } else return $filter == $this->filter; } } ?>