/**
  * 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);
 }
 /**
  * return language code that is defined in the given html
  * return language code
  */
 public static function getLangCode()
 {
     global $global_content_dom;
     // get html language
     $e_htmls = $global_content_dom->find("html");
     foreach ($e_htmls as $e_html) {
         if (isset($e_html->attr["xml:lang"])) {
             $lang = trim($e_html->attr["xml:lang"]);
             break;
         } else {
             if (isset($e_html->attr["lang"])) {
                 $lang = trim($e_html->attr["lang"]);
                 break;
             }
         }
     }
     return BasicChecks::cutOutLangCode($lang);
 }