/** * Set the type name for the given language. A new entry in * the database will be created if the language did not exist. * * @param int $p_languageId * @param string $p_value * * @return boolean */ public function setName($p_languageId, $p_value) { global $g_ado_db; if (!is_numeric($p_languageId)) { return false; } // if the string is empty, nuke it if (!is_string($p_value) || $p_value == '') { if ($phrase_id = $this->translationExists($p_languageId)) { $trans = new Translation($p_languageId, $phrase_id); $trans->delete(); $changed = true; } else { $changed = false; } } else { $description = new Translation($p_languageId, $this->getProperty('fk_phrase_id')); if ($description->exists()) { $changed = $description->setText($p_value); } else { $changed = $description->create($p_value); if ($changed && is_null($this->getProperty('fk_phrase_id'))) { $this->setProperty('fk_phrase_id', $description->getPhraseId()); } } } return $changed; }
/** * Enter description here... * * @param int $p_phraseId * @param int $p_languageId * @param string $p_text */ public static function SetPhrase($p_languageId, $p_phraseId, $p_text) { if (!is_numeric($p_languageId) || !is_numeric($p_phraseId) || !is_string($p_text)) { return false; } $translation = new Translation($p_languageId, $p_phraseId); if ($translation->exists()) { return $translation->setText($p_text); } else { return $translation->create($p_text); } }
/** * Set the type name for the given language. A new entry in * the database will be created if the language did not exist. * * @param int $p_languageId * @param string $p_value * * @return boolean */ public function setName($p_languageId, $p_value) { global $g_ado_db; if (!is_numeric($p_languageId)) { return false; } // if the string is empty, nuke it if (!is_string($p_value) || $p_value == '') { if ($phrase_id = $this->translationExists($p_languageId)) { $trans = new Translation($p_languageId, $phrase_id); $trans->delete(); $changed = true; } else { $changed = false; } } else { $description = new Translation($p_languageId, $this->getProperty('fk_phrase_id')); if ($description->exists()) { $changed = $description->setText($p_value); } else { $changed = $description->create($p_value); if ($changed && is_null($this->getProperty('fk_phrase_id'))) { $this->setProperty('fk_phrase_id', $description->getPhraseId()); } } } if ($changed) { if (function_exists("camp_load_translation_strings")) { camp_load_translation_strings("api"); } $logtext = getGS('Field "$1" updated', $this->m_data['field_name']); Log::Message($logtext, null, 143); } return $changed; } // fn setName
/** * A quick lookup to see if the current language was already translated * for this article type: used by delete and update in setName. * Returns 0 if no translation or the phrase_id if there is one. * * @param int p_languageId * * @return 0 or phrase_id **/ public function translationExists($p_languageId) { if ($this->m_metadata->getPhraseId() != -1) { $translation = new Translation($p_languageId, $this->m_metadata->getPhraseId()); if ($translation->exists()) { return $translation->getPhraseId(); } } return 0; }