diff --git a/i18n_block/i18n_block.module b/i18n_block/i18n_block.module index e0b9df6..a26a4fd 100644 --- a/i18n_block/i18n_block.module +++ b/i18n_block/i18n_block.module @@ -114,6 +114,22 @@ function i18n_block_block_view_alter(&$data, $block) { } /** + * Implements hook_context_block_info_alter(). + */ +function i18n_block_context_block_info_alter(&$block_info) { + $theme_key = variable_get('theme_default', 'garland'); + $result = db_select('block') + ->fields('block', array('module', 'delta', 'i18n_mode')) + ->condition('theme', $theme_key) + ->execute(); + foreach ($result as $row) { + if (isset($block_info["{$row->module}-{$row->delta}"])) { + $block_info["{$row->module}-{$row->delta}"]->i18n_mode = $row->i18n_mode; + } + } +} + +/** * Implements hook_help(). */ function i18n_block_help($path, $arg) {