function menu_block_update_5200 in Menu Block 6.2
Same name and namespace in other branches
- 5.2 menu_block.install \menu_block_update_5200()
- 7.3 menu_block.install \menu_block_update_5200()
- 7.2 menu_block.install \menu_block_update_5200()
Converts enabled blocks list to ID list and deletes un-enabled blocks.
File
- ./
menu_block.install, line 73 - Provides install, upgrade and un-install functions for menu_block.
Code
function menu_block_update_5200() {
$block_ids = array();
foreach (variable_get('menu_block_enabled_blocks', array()) as $delta => $enabled) {
if ($enabled) {
$block_ids[] = $delta;
// Build new $menu_block_ids.
// Convert $menu_block_DELTA_mid to $menu_block_DELTA_menu_name.
$mid = variable_get("menu_block_{$delta}_mid", 1);
variable_set("menu_block_{$delta}_menu_name", $mid);
// If we weren't upgraded to 5.x-2.x before the Drupal 6 upgrade, the
// mid-to-menu_name conversion is not possible.
variable_set("menu_block_{$delta}_title", $mid == 2 ? 'primary-links' : 'navigation');
variable_del("menu_block_{$delta}_mid");
}
else {
// Delete un-enabled menu block.
variable_del("menu_block_{$delta}_mid");
variable_del("menu_block_{$delta}_level");
variable_del("menu_block_{$delta}_depth");
variable_del("menu_block_{$delta}_expanded");
db_query("DELETE FROM {blocks} WHERE module = 'menu_block' AND delta = %d", $delta);
}
}
// Finish conversion of $menu_block_enabled_blocks to $menu_block_ids.
sort($block_ids);
variable_set('menu_block_ids', $block_ids);
variable_del('menu_block_enabled_blocks');
cache_clear_all();
return array(
0 => array(
'success' => TRUE,
'query' => t('A 5.x-1.x version of Menu block has been detected and an attempt was made to upgrade it. Unfortunately, you should have upgraded to Menu block 5.x-2.x before your upgrade to Drupal 6. You may need to re-configure all your menu blocks. To use menu blocks in Drupal 6, find the "Add menu block" tab (or button) on the <a href="@url">administer blocks page</a>.', array(
'@url' => url('admin/build/block'),
)),
),
);
}