$language->is_new=!(bool)db_query_range('SELECT 1 FROM {languages} WHERE language = :language',0,1,array(':language'=>$language->language))->fetchField();
// Default prefix on language code if not provided otherwise.
if(!isset($language->prefix)){
$language->prefix=$language->language;
}
// If name was not set, we add a predefined language.
drupal_set_message(t('The language %language has been created and can now be used. More information is available on the <a href="@locale-help">help screen</a>.',array('%language'=>t($form_state['values']['name']),'@locale-help'=>url('admin/help/locale'))));
}
else{
// Predefined language selection.
include_onceDRUPAL_ROOT.'/includes/standard.inc';
$predefined=standard_language_list();
locale_add_language($langcode);
$language=(object)array(
'language'=>$langcode,
);
locale_language_save($language);
drupal_set_message(t('The language %language has been created and can now be used. More information is available on the <a href="@locale-help">help screen</a>.',array('%language'=>t($predefined[$langcode][0]),'@locale-help'=>url('admin/help/locale'))));
}
...
...
@@ -404,28 +390,17 @@ function locale_languages_edit_form_validate($form, &$form_state) {
$this->assertIdentical($links,array('active'=>array('en'),'inactive'=>array('fr')),t('Only the current language list item is marked as active on the language switcher block.'));
...
...
@@ -1795,13 +1801,13 @@ class LocaleUILanguageNegotiationTest extends DrupalWebTestCase {
functiontestUILanguageNegotiation(){
// A few languages to switch to.
// This one is unknown, should get the default lang version.
$language_unknown='blah-blah';
$langcode_unknown='blah-blah';
// For testing browser lang preference.
$language_browser_fallback='vi';
$langcode_browser_fallback='vi';
// For testing path prefix.
$language='zh-hans';
$langcode='zh-hans';
// For setting browser language preference to 'vi'.