New module 'Administration menu'
This commit is contained in:
parent
e666049d60
commit
89b4aad0f8
17 changed files with 2067 additions and 0 deletions
52
modules/admin_menu/admin_menu.js
Normal file
52
modules/admin_menu/admin_menu.js
Normal file
|
@ -0,0 +1,52 @@
|
|||
|
||||
$(document).ready(function() {
|
||||
if (!$('#admin-menu').length) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Apply margin-top if enabled; directly applying marginTop doesn't work in IE.
|
||||
if (Drupal && Drupal.settings && Drupal.settings.admin_menu) {
|
||||
if (Drupal.settings.admin_menu.margin_top) {
|
||||
$('body').addClass('admin-menu');
|
||||
}
|
||||
if (Drupal.settings.admin_menu.position_fixed) {
|
||||
$('#admin-menu').css('position', 'fixed');
|
||||
}
|
||||
// Move page tabs into administration menu.
|
||||
if (Drupal.settings.admin_menu.tweak_tabs) {
|
||||
$('ul.tabs.primary li').each(function() {
|
||||
$(this).addClass('admin-menu-tab').appendTo('#admin-menu > ul');
|
||||
});
|
||||
$('ul.tabs.secondary').appendTo('#admin-menu > ul > li.admin-menu-tab.active').removeClass('secondary');
|
||||
}
|
||||
// Collapse fieldsets on Modules page. For why multiple selectors see #111719.
|
||||
if (Drupal.settings.admin_menu.tweak_modules) {
|
||||
$('#system-modules fieldset:not(.collapsed), #system-modules-1 fieldset:not(.collapsed)').addClass('collapsed');
|
||||
}
|
||||
}
|
||||
|
||||
// Hover emulation for IE 6.
|
||||
if ($.browser.msie && parseInt(jQuery.browser.version) == 6) {
|
||||
$('#admin-menu li').hover(function() {
|
||||
$(this).addClass('iehover');
|
||||
}, function() {
|
||||
$(this).removeClass('iehover');
|
||||
});
|
||||
}
|
||||
|
||||
// Delayed mouseout.
|
||||
$('#admin-menu li').hover(function() {
|
||||
// Stop the timer.
|
||||
clearTimeout(this.sfTimer);
|
||||
// Display child lists.
|
||||
$('> ul', this).css({left: 'auto', display: 'block'})
|
||||
// Immediately hide nephew lists.
|
||||
.parent().siblings('li').children('ul').css({left: '-999em', display: 'none'});
|
||||
}, function() {
|
||||
// Start the timer.
|
||||
var uls = $('> ul', this);
|
||||
this.sfTimer = setTimeout(function() {
|
||||
uls.css({left: '-999em', display: 'none'});
|
||||
}, 400);
|
||||
});
|
||||
});
|
Reference in a new issue