_translators[$o] = $translator; } else $this->_translators[$objectType] = $translator; } /** * Returns list of object translators * * @return array */ public function getTranslators() { return $this->_translators; } /** * This method can be used to convert an array of * view variables into an usable object-translated array * * @param array $vars * @return array */ protected function _translateVars(Array $vars) { $translated = array(); foreach($vars as $key => $value) { if(is_object($value)) { $class = get_class($value); if(isset($this->_translators[$class])) $translated[$key] = $this->_translators[$class]->translate($value); } else { $translated[$key] = $value; } } return $translated; } }