function lang_dropdown_form_submit in Language Switcher Dropdown 7.2
Same name and namespace in other branches
- 6 lang_dropdown.module \lang_dropdown_form_submit()
- 7 lang_dropdown.module \lang_dropdown_form_submit()
Handles graceful degrade when JS is disabled.
File
- ./
lang_dropdown.module, line 798 - Language dropdown select module main file.
Code
function lang_dropdown_form_submit($form, &$form_state) {
$language_code = check_plain($form_state['values']['lang_dropdown_select']);
$type = $form_state['values']['lang_dropdown_type'];
$tohome = $form_state['values']['lang_dropdown_tohome'];
$language_codes = locale_language_list('language');
if (!in_array($language_code, $language_codes)) {
return;
}
$types = language_types_configurable(FALSE);
if (!in_array($type, $types)) {
$type = 'language';
}
$path = drupal_is_front_page() ? '<front>' : $_GET['q'];
$languages = language_negotiation_get_switch_links($type, $path);
$language = $languages->links[$language_code];
$newpath = isset($language['href']) && $tohome == 0 ? $language['href'] : '<front>';
if (!isset($language['query'])) {
$language['query'] = drupal_get_query_parameters();
}
$form_state['redirect'] = array(
$newpath,
$language,
);
}