/**
  * Constructor.
  * 
  * Initializes availableLanguages and numLanguages.
  */
 function LanguageManager()
 {
     require_once AC_INCLUDE_PATH . 'classes/DAO/LanguagesDAO.class.php';
     $languagesDAO = new LanguagesDAO();
     // initialize available lanuguages. Available languages are the ones with status "enabled"
     $rows = $languagesDAO->getAllEnabled();
     // if there's no enabled language, set to default language and default charset
     if (!is_array($rows)) {
         $rows = array($languagesDAO->getByLangCodeAndCharset(DEFAULT_LANGUAGE_CODE, DEFAULT_CHARSET));
     }
     foreach ($rows as $i => $row) {
         $this->availableLanguages[$row['language_code']][$row['charset']] = new Language($row);
     }
     $this->numEnabledLanguages = count($this->availableLanguages);
     // initialize available lanuguages. Available languages are the ones with status "enabled"
     $rows = $languagesDAO->getAll();
     foreach ($rows as $i => $row) {
         $this->allLanguages[$row['language_code']][$row['charset']] = new Language($row);
     }
 }