function i18n_block_form_block_admin_configure_submit in Internationalization 7
Form submit handler for block configuration form.
See also
i18n_block_form_block_admin_configure_alter()
1 string reference to 'i18n_block_form_block_admin_configure_submit'
- i18n_block_form_block_admin_configure_alter in i18n_block/
i18n_block.module - Implements block hook_form_FORM_ID_alter().
File
- i18n_block/
i18n_block.module, line 261 - Internationalization (i18n) submodule: Multilingual meta-blocks
Code
function i18n_block_form_block_admin_configure_submit(&$form, &$form_state) {
$module = $form_state['values']['module'];
$delta = $form_state['values']['delta'];
// Update block languages
db_delete('i18n_block_language')
->condition('module', $module)
->condition('delta', $delta)
->execute();
$query = db_insert('i18n_block_language')
->fields(array(
'language',
'module',
'delta',
));
foreach (array_filter($form_state['values']['languages']) as $language) {
$query
->values(array(
'language' => $language,
'module' => $module,
'delta' => $delta,
));
}
$query
->execute();
// Update block translation options and strings
if (isset($form_state['values']['i18n_mode'])) {
db_update('block')
->fields(array(
'i18n_mode' => $form_state['values']['i18n_mode'],
))
->condition('module', $module)
->condition('delta', $delta)
->execute();
i18n_block_update_strings($form_state['values'], $form_state['values']['i18n_mode']);
// If the save and translate button was clicked, redirect to the translate
// tab instead of the block overview.
if ($form_state['triggering_element']['#name'] == 'save_translate') {
$form_state['redirect'] = 'admin/structure/block/manage/' . $module . '/' . $delta . '/translate';
}
}
}