url = $values; else { foreach ( $obj AS $key => $value ) { $this->$key = $value; } } } } function data( $details ) { $data = $this->save( $details ); if ( count( $data ) == 1 && !is_array( current( $data ) ) ) $data = current( $data ); else $data = serialize( $data ); return $data; } function save( $details ) { return array(); } function name() { return ''; } function show() { } function wants_it() { return true; } function get_target( $url, $matched_url, $regex ) { return $false; } function create( $name, $data = '' ) { $avail = Red_Match::available(); if ( isset( $avail[strtolower( $name )] ) ) { $classname = $name.'_match'; if ( !class_exists( strtolower( $classname ) ) ) include( dirname( __FILE__ ).'/../matches/'.$avail[strtolower( $name )] ); return new $classname( $data ); } return false; } function all() { $data = array(); $avail = Red_Match::available(); foreach ( $avail AS $name => $file ) { $obj = Red_Match::create( $name ); $data[$name] = $obj->name(); } return $data; } function available() { return array ( 'url' => 'url.php', 'referrer' => 'referrer.php', 'agent' => 'user_agent.php', 'login' => 'login.php', ); } function match_name() { return ''; } }