Esempio n. 1
0
 function locale($locale_string = '')
 {
     $this->http_locale_code = '';
     $this->week_days = array(0, 1, 2, 3, 4, 5, 6);
     $this->months = array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11);
     $locale = locale::get_locale_information($locale_string);
     $this->country_code = $locale['country'];
     $this->country_variation = $locale['country-variation'];
     $this->language_code = $locale['language'];
     $this->locale_code = $locale['locale'];
     $this->charset = $locale['charset'];
     $this->override_charset = $locale['charset'];
     // Figure out if we use one locale file or separate country/language file.
     $locale_ini =& $this->get_locale_ini();
     $country_ini =& $locale_ini;
     $language_ini =& $locale_ini;
     if ($locale_ini === null) {
         $country_ini =& $this->get_country_ini();
         $language_ini =& $this->get_language_ini();
     }
     $this->_reset();
     $this->is_valid = true;
     if ($country_ini !== null) {
         $this->_init_country_settings($country_ini);
     } else {
         $this->is_valid = false;
         debug::write_error('Could not load country settings for ' . $this->country_code, __FILE__ . ' : ' . __LINE__ . ' : ' . __FUNCTION__);
     }
     if ($language_ini !== null) {
         $this->_init_language_settings($language_ini);
     } else {
         $this->is_valid = false;
         debug::write_error('Could not load language settings for ' . $this->language_code, __FILE__ . ' : ' . __LINE__ . ' : ' . __FUNCTION__);
     }
     // load variation if any
     $locale_variation_ini =& $this->get_locale_ini(true);
     $country_variation_ini =& $locale_variation_ini;
     $language_variation_ini =& $locale_variation_ini;
     if ($locale_variation_ini === null) {
         $country_variation_ini =& $this->get_country_ini(true);
         $language_variation_ini =& $this->get_language_ini(true);
     }
     if ($country_variation_ini !== null && $country_variation_ini->get_original_file() != $country_ini->get_original_file()) {
         $this->_init_country_settings($country_variation_ini);
     }
     if ($language_variation_ini !== null && $language_variation_ini->get_original_file() != $language_ini->get_original_file()) {
         $this->_init_language_settings($language_variation_ini);
     }
 }