function Language($language_row) { if (is_array($language_row)) { $this->code = $language_row['language_code']; $this->characterSet = $language_row['charset']; $this->regularExpression = $language_row['reg_exp']; $this->nativeName = $language_row['native_name']; $this->englishName = $language_row['english_name']; $this->status = $language_row['status']; $this->transformable_version = isset($language_row['version']) ? $language_row['version'] : VERSION; $langCodesDAO = new LangCodesDAO(); $row_langCodes = $langCodesDAO->GetLangCodeBy3LetterCode($this->getParentCode($language_row['language_code'])); $this->direction = $row_langCodes['direction']; } else { if (is_object($language_row)) { $this->cloneThis($language_row); } } }
/** * check if value in the given attribute is a valid language code * return true if valid, otherwise, return false */ public static function isValidLangCode($code) { // The allowed characters in a valid language code are letters, numbers or dash(-). if (!preg_match("/^[a-zA-Z0-9-]+\$/", $code)) { return false; } $code = BasicChecks::cutOutLangCode($code); $langCodesDAO = new LangCodesDAO(); if (strlen($code) == 2) { $rows = $langCodesDAO->GetLangCodeBy2LetterCode($code); } else { if (strlen($code) == 3) { $rows = $langCodesDAO->GetLangCodeBy3LetterCode($code); } else { return false; } } return is_array($rows); }
/** * check if value in the given attribute is a valid language code * return true if valid, otherwise, return false */ public static function isValidLangCode($code) { require_once TR_INCLUDE_PATH . 'classes/DAO/LangCodesDAO.class.php'; $langCodesDAO = new LangCodesDAO(); if (strlen($code) == 2) { $rows = $langCodesDAO->GetLangCodeBy2LetterCode($code); } else { if (strlen($code) == 3) { $rows = $langCodesDAO->GetLangCodeBy3LetterCode($code); } else { return false; } } return is_array($rows); }
/** * private * send uri to 3rd party and return its response */ function validate_uri($uri) { $sys_command = $this->local_validator_command . $this->local_validator_path . $this->local_validator_option; exec($sys_command . $uri, $retval); if (sizeof($retval) == 0) { // If output from the internal validiator is not found, use the external validator include_once AC_INCLUDE_PATH . 'classes/DAO/LangCodesDAO.class.php'; $langCodesDAO = new LangCodesDAO(); $lang_code_2letters = $langCodesDAO->GetLangCodeBy3LetterCode($_SESSION['lang']); // needed, a way to switch profiles, here defaulting to css3 (1, 2, 2.1, 3) $content = @file_get_contents($this->validator_url . "?uri=" . $uri . "&warning=0&profile=css3&lang=" . $lang_code_2letters["code_2letters"]); } else { //echo "validatore interno"; $content = implode($retval); } if ($content != null) { return $content; } return false; }
/** * private * returns 2 letters code of currennt language */ private function getLangCode() { $lang_code = new LangCodesDAO(); $code_2_letters = $lang_code->GetLangCodeBy3LetterCode($_SESSION['lang']); return $code_2_letters['code_2letters']; }