array('model'=>'Email_Template','foreign_key'=>'email_template_id'), ); protected $_has_one = array( 'language'=>array('foreign_key'=>'id'), ); protected $_save_message = TRUE; public function complete($data,$column) { $output = $this->display($column); foreach ($this->variables($column) as $k => $v) $output = str_replace('$'.$v.'$',$data[$v],$output); return $output; } public function variables($field) { $results = array(); $matches = array(); preg_match_all('/\$([A-Z0-9_]+)\$/U',$this->$field,$matches,PREG_OFFSET_CAPTURE); foreach ($matches[1] as $k => $v) $results[$v[1]] = $v[0]; $results = array_unique($results); asort($results); return $results; } } ?>