getTranslate(); } /** * Retrieve translate object * * @return Zend_Translate */ public function getTranslate() { if (null === $this->_translate) { $options = $this->getOptions(); if (!isset($options['data'])) { throw new Zend_Application_Resource_Exception('No translation source data provided.'); } $adapter = isset($options['adapter']) ? $options['adapter'] : Zend_Translate::AN_ARRAY; $locale = isset($options['locale']) ? $options['locale'] : null; $translateOptions = isset($options['options']) ? $options['options'] : array(); $this->_translate = new Zend_Translate( $adapter, $options['data'], $locale, $translateOptions ); $key = (isset($options['registry_key']) && !is_numeric($options['registry_key'])) ? $options['registry_key'] : self::DEFAULT_REGISTRY_KEY; Zend_Registry::set($key, $this->_translate); } return $this->_translate; } }