Пример #1
0
 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);
         }
     }
 }
Пример #2
0
/* modify it under the terms of the GNU General Public License          */
/* as published by the Free Software Foundation.                        */
/************************************************************************/
// $Id$
define('AC_INCLUDE_PATH', '../include/');
include AC_INCLUDE_PATH . 'vitals.inc.php';
include_once AC_INCLUDE_PATH . 'classes/DAO/LanguagesDAO.class.php';
include_once AC_INCLUDE_PATH . 'classes/DAO/LangCodesDAO.class.php';
include_once AC_INCLUDE_PATH . 'classes/Language/LanguageUtility.class.php';
if (isset($_GET["id"])) {
    $pieces = explode('_', $_GET['id'], 2);
    $lang_code = $pieces[0];
    $charset = $pieces[1];
}
$languagesDAO = new LanguagesDAO();
$langCodesDAO = new LangCodesDAO();
// handle submits
if (isset($_POST['cancel'])) {
    $msg->addFeedback('CANCELLED');
    header('Location: index.php');
    exit;
} else {
    if (isset($_POST['save'])) {
        if (isset($_GET["id"])) {
            if ($languagesDAO->Update($lang_code, $charset, '', trim($_POST['native_name']), trim($_POST['english_name']), $_POST['status'])) {
                $msg->addFeedback('ACTION_COMPLETED_SUCCESSFULLY');
                header('Location: index.php');
                exit;
            }
        } else {
            if (isset($_POST['locale']) && $_POST['locale'] != '') {
Пример #3
0
 /**
  * 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);
 }
 /**
  * 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;
 }
Пример #5
0
 /**
  * Return a valid 3-character language code
  * 1. if input is a valid 3-character language code, return itself;
  * 2. if input is a valid 2-character language code, return according 3-character language code
  * 3. if input is an invalid language code, return default language code
  */
 public static function get3LetterLangCode($code)
 {
     require_once TR_INCLUDE_PATH . 'classes/DAO/LangCodesDAO.class.php';
     $langCodesDAO = new LangCodesDAO();
     if (!Utility::isValidLangCode($code)) {
         return $_config['default_language'];
     } else {
         if (strlen($code) == 3) {
             return $code;
         }
         if (strlen($code) == 2) {
             $rows = $langCodesDAO->GetLangCodeBy2LetterCode($code);
             return $rows[0]['code_3letters'];
         }
     }
 }
Пример #6
0
 /**
  * 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'];
 }