MDL-22015 improved country lists

This commit is contained in:
Petr Skoda
2010-04-14 12:42:48 +00:00
parent 0bd028292d
commit adea0621fa
2 changed files with 39 additions and 12 deletions
+1 -1
View File
@@ -111,7 +111,7 @@ $string['componentinstalled'] = 'Component Installed';
$string['computedfromlogs'] = 'Computed from logs since {$a}.';
$string['condifmodeditdefaults'] = 'The values you set here define the default values that are used in the activity settings form when you create a new activity. You can also configure which activity settings are considered advanced.';
$string['confeditorhidebuttons'] = 'Select the buttons that should be hidden in the HTML editor.';
$string['configallcountrycodes'] = 'This is the list of countries that may be selected in various places, for example in a user\'s profile. If blank (the default) the list in countries.php in the standard English language pack is used. That is the list from ISO 3166-1. Otherwise, you can specify a comma-separated list of codes, for example \'GB,FR,ES\'. If you add new, non-standard codes here, you will need to add them to countries.php in your language pack.';
$string['configallcountrycodes'] = 'This is the list of countries that may be selected in various places, for example in a user\'s profile. If blank (the default) the list in countries.php in the standard English language pack is used. That is the list from ISO 3166-1. Otherwise, you can specify a comma-separated list of codes, for example \'GB,FR,ES\'. If you add new, non-standard codes here, you will need to add them to countries.php in \'en\' and your language pack.';
$string['configallowassign'] = 'You can allow people who have the roles on the left side to assign some of the column roles to other people';
$string['configallowblockstodock'] = 'If enabled and supported by the selected theme users can choose to move blocks to a special dock.';
$string['configallowcategorythemes'] = 'If you enable this, then themes can be set at the category level. This will affect all child categories and courses unless they have specifically set their own theme. WARNING: Enabling category themes may affect performance.';
+38 -11
View File
@@ -5716,10 +5716,12 @@ interface string_manager {
public function string_exists($identifier, $component);
/**
* Returns a localised list of all country names
* Returns a localised list of all country names, sorted by country keys.
* @param bool $returnall return all or just enabled
* @param string $lang moodle translation language, NULL means use current
* @return array two-letter country code => translated name.
*/
public function get_list_of_countries();
public function get_list_of_countries($returnall = false, $lang = NULL);
/**
* Returns a localised list of languages, sorted by code keys.
@@ -5997,12 +5999,34 @@ class core_string_manager implements string_manager {
}
/**
* Returns a localised list of all country names
* Returns a localised list of all country names, sorted by country keys.
*
* @param bool $returnall return all or just enabled
* @param string $lang moodle translation language, NULL means use current
* @return array two-letter country code => translated name.
*/
public function get_list_of_countries() {
$lang = current_language();
return $this->load_component_strings('countries', $lang);
public function get_list_of_countries($returnall = false, $lang = NULL) {
global $CFG;
if ($lang === NULL) {
$lang = current_language();
}
$countries = $this->load_component_strings('core_countries', $lang);
ksort($countries);
if (!$returnall and !empty($CFG->allcountrycodes)) {
$enabled = explode(',', $CFG->allcountrycodes);
$return = array();
foreach ($enabled as $c) {
if (isset($countries[$c])) {
$return[$c] = $countries[$c];
}
}
return $return;
}
return $countries;
}
/**
@@ -6019,7 +6043,7 @@ class core_string_manager implements string_manager {
}
if ($standard === 'iso6392') {
$langs = $this->load_component_strings('core_iso6392', $lang);
$lang = ksort($langs);
ksort($langs);
return $langs;
} else {
debugging('Unsupported $standard parameter in get_list_of_languages() method: '.$standard);
@@ -6214,10 +6238,13 @@ class install_string_manager implements string_manager {
}
/**
* Returns a localised list of all country names
* Returns a localised list of all country names, sorted by country keys.
*
* @param bool $returnall return all or just enabled
* @param string $lang moodle translation language, NULL means use current
* @return array two-letter country code => translated name.
*/
public function get_list_of_countries() {
public function get_list_of_countries($returnall = false, $lang = NULL) {
//not used in installer
return array();
}
@@ -6415,11 +6442,11 @@ function get_list_of_charsets() {
}
/**
* Returns a list of country names in the current language
* Returns a list of all enabled country names in the current translation
* @return array two-letter country code => translated name.
*/
function get_list_of_countries() {
return get_string_manager()->get_list_of_countries();
return get_string_manager()->get_list_of_countries(false);
}
/**