danielebarchiesi@4: fields(array('weight' => 100)) danielebarchiesi@4: ->condition('type', 'module') danielebarchiesi@4: ->condition('name', 'admin_menu') danielebarchiesi@4: ->execute(); danielebarchiesi@4: } danielebarchiesi@4: danielebarchiesi@4: /** danielebarchiesi@4: * Implements hook_uninstall(). danielebarchiesi@4: */ danielebarchiesi@4: function admin_menu_uninstall() { danielebarchiesi@4: // Delete variables. danielebarchiesi@4: variable_del('admin_menu_components'); danielebarchiesi@4: variable_del('admin_menu_devel_modules'); danielebarchiesi@4: variable_del('admin_menu_devel_modules_enabled'); danielebarchiesi@4: variable_del('admin_menu_devel_modules_skip'); danielebarchiesi@4: variable_del('admin_menu_margin_top'); danielebarchiesi@4: variable_del('admin_menu_position_fixed'); danielebarchiesi@4: variable_del('admin_menu_tweak_modules'); danielebarchiesi@4: variable_del('admin_menu_tweak_tabs'); danielebarchiesi@4: variable_del('admin_menu_show_all'); danielebarchiesi@4: variable_del('admin_menu_display'); danielebarchiesi@4: variable_del('admin_menu_cache_server'); danielebarchiesi@4: variable_del('admin_menu_cache_client'); danielebarchiesi@4: } danielebarchiesi@4: danielebarchiesi@4: /** danielebarchiesi@4: * Ensure that admin_menu is rebuilt after upgrading to D6. danielebarchiesi@4: */ danielebarchiesi@4: function admin_menu_update_6000() { danielebarchiesi@4: // Drop the {admin_menu} table in admin_menu_update_6000() on sites that used danielebarchiesi@4: // one of the later patches in #132524. danielebarchiesi@4: if (db_table_exists('admin_menu')) { danielebarchiesi@4: db_drop_table('admin_menu'); danielebarchiesi@4: } danielebarchiesi@4: } danielebarchiesi@4: danielebarchiesi@4: /** danielebarchiesi@4: * Wipe and rebuild so we can switch the icon path to . danielebarchiesi@4: */ danielebarchiesi@4: function admin_menu_update_6001() { danielebarchiesi@4: db_delete('menu_links')->condition('module', 'admin_menu')->execute(); danielebarchiesi@4: menu_cache_clear('admin_menu'); danielebarchiesi@4: } danielebarchiesi@4: danielebarchiesi@4: /** danielebarchiesi@4: * Add {cache_admin_menu} table. danielebarchiesi@4: */ danielebarchiesi@4: function admin_menu_update_7300() { danielebarchiesi@4: if (!db_table_exists('cache_admin_menu')) { danielebarchiesi@4: $schema = drupal_get_schema_unprocessed('system', 'cache'); danielebarchiesi@4: db_create_table('cache_admin_menu', $schema); danielebarchiesi@4: } danielebarchiesi@4: } danielebarchiesi@4: danielebarchiesi@4: /** danielebarchiesi@4: * Increase the module weight. danielebarchiesi@4: * danielebarchiesi@4: * @see admin_menu_install() danielebarchiesi@4: */ danielebarchiesi@4: function admin_menu_update_7302() { danielebarchiesi@4: db_update('system') danielebarchiesi@4: ->fields(array('weight' => 100)) danielebarchiesi@4: ->condition('type', 'module') danielebarchiesi@4: ->condition('name', 'admin_menu') danielebarchiesi@4: ->execute(); danielebarchiesi@4: } danielebarchiesi@4: danielebarchiesi@4: /** danielebarchiesi@4: * Remove local tasks from {menu_links} table. danielebarchiesi@4: */ danielebarchiesi@4: function admin_menu_update_7303() { danielebarchiesi@4: db_delete('menu_router') danielebarchiesi@4: ->condition('path', 'admin/%', 'LIKE') danielebarchiesi@4: ->condition('type', MENU_IS_LOCAL_TASK, '&') danielebarchiesi@4: ->execute(); danielebarchiesi@4: } danielebarchiesi@4: danielebarchiesi@4: /** danielebarchiesi@4: * Remove obsolete 'admin_menu' menu and all orphan links in it. danielebarchiesi@4: */ danielebarchiesi@4: function admin_menu_update_7304() { danielebarchiesi@4: // Remove the custom menu used by 6.x-1.x. danielebarchiesi@4: if (db_table_exists('menu_custom')) { danielebarchiesi@4: db_delete('menu_custom')->condition('menu_name', 'admin_menu')->execute(); danielebarchiesi@4: } danielebarchiesi@4: danielebarchiesi@4: // 6.x-1.x cloned the entire link structure below the path 'admin' into a danielebarchiesi@4: // separate 'menu_name' "admin_menu" with 'module' "admin_menu". 6.x-3.x and danielebarchiesi@4: // early alpha versions of 7.x-3.x still did something similar. All of these danielebarchiesi@4: // records are obsolete. Removal of the 'module' records (without different danielebarchiesi@4: // menu_name) is particularly important, since they would otherwise appear danielebarchiesi@4: // as duplicate links. danielebarchiesi@4: db_delete('menu_links') danielebarchiesi@4: ->condition(db_or() danielebarchiesi@4: ->condition('module', 'admin_menu') danielebarchiesi@4: ->condition('menu_name', 'admin_menu') danielebarchiesi@4: ) danielebarchiesi@4: ->execute(); danielebarchiesi@4: }