public function translate($sourceLabel, $translateLabel, $elementId, $elementField = '') { if (!$this->isTranslationToBeUpdated()) { return $translateLabel; } else { // Update $translation $tranlation = new TranslationData(); $tranlation->save($translateLabel, $this, Sydney_Tools_Localization::getCurrentContentLanguage(), $elementId, $elementField); return empty($sourceLabel) ? $translateLabel : $sourceLabel; } }
protected function _loadTranslationData($tableName, $locale, array $options = array()) { $this->_data = array(); $locale = empty($locale) ? new Zend_Locale() : $locale; //$options = $options + $this->_options; // On récupère les données $tranlation = new TranslationData(); $tranlationDatas = $tranlation->getByTableName(array($tableName), $locale); foreach ($tranlationDatas as $data) { if (!isset($data->label)) { continue; } $this->_data[$locale][$data->tbl_id . '_' . $data->tbl_name . (empty($data->tbl_field) ? '' : '_' . $data->tbl_field)] = $data->label; } return $this->_data; }
function &getTranslation($phrase_id, $domain_id, $lang_id) { $translation = $this->gettext($phrase_id, $domain_id, $lang_id); $translationData = TranslationData::create(); $translationData->setPhraseID($phrase_id); $translationData->setDomainID($domain_id); $translationData->setLanguageID($lang_id); $translationData->setTranslation($translation); return $translationData; }
public static function createPhraseDataFromClient($phrase_data) { $phraseData = new PhraseData(); $phraseData->setID($phrase_data['phrase']); $phraseData->setDomainID($phrase_data['domain']); $translationsData = array(); foreach ($phrase_data['translations'] as $lang_id => $translation) { $translationData = TranslationData::create(); $translationData->setPhraseID($phrase_data['phrase']); $translationData->setDomainID($phrase_data['domain']); $translationData->setLanguageID($lang_id); $translationData->setTranslation($translation); $translationsData[] = $translationData; } $phraseData->setTranslations($translationsData); return $phraseData; }