From: <ge...@us...> - 2010-09-28 18:28:03
|
Revision: 2287 http://nocc.svn.sourceforge.net/nocc/?rev=2287&view=rev Author: gerundt Date: 2010-09-28 18:27:57 +0000 (Tue, 28 Sep 2010) Log Message: ----------- Web: Update SimpleTranslate class Modified Paths: -------------- trunk/htdocs/engine/simpletranslate.inc Modified: trunk/htdocs/engine/simpletranslate.inc =================================================================== --- trunk/htdocs/engine/simpletranslate.inc 2010-09-16 23:09:01 UTC (rev 2286) +++ trunk/htdocs/engine/simpletranslate.inc 2010-09-28 18:27:57 UTC (rev 2287) @@ -13,11 +13,41 @@ * ... */ class SimpleTranslate { + /** + * URL parameter + * @var string + * @access private + */ var $_urlparameter; + /** + * Force URL parameter? + * @var bool + * @access private + */ var $_forceurlparameter; + /** + * Languages + * @var array + * @access private + */ var $_languages; + /** + * ... + * @var string + * @access private + */ var $_baselanguageid; + /** + * ... + * @var string + * @access private + */ var $_activelanguageid; + /** + * Translations + * @var array + * @access private + */ var $_translations; /** @@ -34,6 +64,7 @@ /** * get the URL parameter... + * @return string URL parameter */ function getUrlParameter() { return $this->_urlparameter; @@ -41,6 +72,7 @@ /** * set the URL parameter... + * @param string $urlparameter URL parameter */ function setUrlParameter($urlparameter) { $this->_urlparameter = $urlparameter; @@ -48,6 +80,10 @@ /** * append URL parameter to link... + * @param string $link Link + * @param string $urlparameter URL parameter + * @param string $id Language ID + * @return string Link with URL parameter */ function appendUrlParameter($link, $urlparameter, $id = '') { $urlparts = parse_url($link); @@ -110,6 +146,7 @@ /** * get forcing of the URL parameter... + * @return bool Force URL parameter? */ function getForceUrlParameter() { return $this->_forceurlparameter; @@ -117,6 +154,7 @@ /** * set forcing of the URL parameter... + * @param bool $force Force URL parameter? */ function setForceUrlParameter($force) { $this->_forceurlparameter = $force; @@ -124,6 +162,9 @@ /** * add a language... + * @param string $id Language ID + * @param string $name Language name + * @param string $pofile PO file */ function addLanguage($id, $name, $pofile = '') { $id = strtolower($id); @@ -139,11 +180,22 @@ } /** + * exists the language? + * @param string $id Language ID (in lower case) + * @return bool Exists? + */ + function existsLanguage($id) { + return array_key_exists($id, $this->_languages); + } + + /** * get the language... + * @param string $id Language ID + * @return object Language */ function getLanguage($id) { $id = strtolower($id); - if (array_key_exists($id, $this->_languages)) { //if the language exists... + if ($this->existsLanguage($id)) { //if the language exists... return $this->_languages[$id]; } return null; @@ -151,6 +203,7 @@ /** * get the languages... + * @return array Languages */ function getLanguages() { return $this->_languages; @@ -158,6 +211,7 @@ /** * get the languages count... + * @return int Languages count */ function getLanguagesCount() { return count($this->_languages); @@ -165,6 +219,7 @@ /** * get the base language ID... + * @return string Base language ID */ function getBaseLanguageId() { return $this->_baselanguageid; @@ -172,6 +227,7 @@ /** * get the base language... + * @return object Base language */ function getBaseLanguage() { return $this->_languages[$this->_baselanguageid]; @@ -179,6 +235,8 @@ /** * check if the language is the base language... + * @param object $language Language + * @return bool Is base language? */ function isBaseLanguage($language = null) { if (isset($language)) { //if language committed... @@ -196,6 +254,7 @@ /** * get the active language ID... + * @return string Active language ID */ function getActiveLanguageId() { if ($this->_activelanguageid != '') { @@ -206,6 +265,7 @@ /** * get the active language... + * @return object Active language */ function getActiveLanguage() { if ($this->_activelanguageid != '') { @@ -216,12 +276,14 @@ /** * set the active language... + * @param string $id Language ID + * @return bool Successful? */ - function setActiveLanguage($activelanguage) { - $activelanguage = strtolower($activelanguage); - if (array_key_exists($activelanguage, $this->_languages)) { //if the language exists... - $this->_activelanguageid = $activelanguage; - $language = $this->_languages[$activelanguage]; + function setActiveLanguage($id) { + $id = strtolower($id); + if ($this->existsLanguage($id)) { //if the language exists... + $this->_activelanguageid = $id; + $language = $this->_languages[$id]; $this->_translations = $language->getTranslations(); return true; } @@ -230,6 +292,8 @@ /** * check if the language is the active language... + * @param object $language Language + * @return bool Is active language? */ function isActiveLanguage($language) { if ($language == $this->getActiveLanguage()) { //if active language... @@ -239,7 +303,28 @@ } /** + * check if the language ID is valid... + * @param string $id Language ID + * @return bool Is valid language ID? + */ + function isValidLanguageId($id = null) { + if (isset($id)) { //if language ID committed... + if (!empty($id)) { //if language ID NOT empty... + return $this->existsLanguage(strtolower($id)); + } + return false; + } + else { //if language ID NOT committed... + if (isset($_GET[$this->_urlparameter])) { + return $this->existsLanguage(strtolower($_GET[$this->_urlparameter])); + } + return true; + } + } + + /** * detect the language from the url... + * @return bool Detected? */ function detectLanguageFromUrl() { if (isset($_GET[$this->_urlparameter])) { @@ -250,6 +335,7 @@ /** * detect the language from the browser... + * @return bool Detected? */ function detectLanguageFromBrowser() { $acceptLanguageHeader = $_SERVER['HTTP_ACCEPT_LANGUAGE']; @@ -280,6 +366,8 @@ /** * prepare link... + * @param string $link Link + * @return string Prepared link */ function prepareLink($link) { $activelanguage = $this->getActiveLanguage(); @@ -293,6 +381,9 @@ /** * get the language link... + * @param object $language Language + * @param bool $forceurlparameter Force URL parameter? + * @return string Language link */ function getLink($language = null, $forceurlparameter = null) { $phpself = str_replace('index.php', '', $_SERVER['PHP_SELF']); @@ -310,6 +401,8 @@ /** * translate a text... + * @param string $text Untranslated text + * @return string Translated text */ function translate($text) { $text = str_replace("\r", '', $text); @@ -328,12 +421,30 @@ * ... */ class SimpleTranslateLanguage { + /** + * ID + * @var string + * @access private + */ var $_id; + /** + * Name + * @var string + * @access private + */ var $_name; + /** + * PO file + * @var string + * @access private + */ var $_pofile; /** * Constructor + * @param string $id ID + * @param string $name Name + * @param string $pofile PO file */ function SimpleTranslateLanguage($id, $name, $pofile) { $this->_id = $id; @@ -343,6 +454,7 @@ /** * get the language id... + * @return string ID */ function getId() { return $this->_id; @@ -350,6 +462,7 @@ /** * get the language name... + * @return string Name */ function getName() { return $this->_name; @@ -357,6 +470,7 @@ /** * get the language PO file... + * @return string PO file */ function getPoFile() { return $this->_pofile; @@ -364,6 +478,7 @@ /** * get the translations array... + * @return array Translations */ function getTranslations() { $translations = array(); @@ -403,6 +518,10 @@ $msgstarted = 0; } + if ($i == ($linescount - 1)) { //if last line... + $msgstarted = 0; + } + if ($msgstarted == 0) { //if NOT inside a translation... if ($msgid != '') { $msgid = str_replace('\"', '"', $msgid); @@ -425,6 +544,8 @@ /** * Constructor + * @param string $id ID + * @param string $name Name */ function SimpleTranslateBaseLanguage($id, $name) { $this->_id = $id; @@ -434,6 +555,7 @@ /** * get the translations array... + * @return array Translations */ function getTranslations() { return array(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |