adminimal_admin_menu.js 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. (function ($) {
  2. Drupal.admin = Drupal.admin || {};
  3. Drupal.admin.behaviors = Drupal.admin.behaviors || {};
  4. /**
  5. * @ingroup admin_behaviors
  6. * @{
  7. */
  8. /**
  9. * Apply active trail highlighting based on current path.
  10. *
  11. * @todo Not limited to toolbar; move into core?
  12. */
  13. Drupal.admin.behaviors.toolbarActiveTrail = function (context, settings, $adminMenu) {
  14. if (settings.admin_menu.toolbar && settings.admin_menu.toolbar.activeTrail) {
  15. $adminMenu.find('> div > ul > li > a[href="' + settings.admin_menu.toolbar.activeTrail + '"]').addClass('active-trail');
  16. }
  17. };
  18. Drupal.admin.behaviors.shorcutcollapsed = function (context, settings, $adminMenu) {
  19. // Create the dropdown base
  20. $('<li class="label"><a>' + Drupal.t('Shortcuts') + '</a></li>').prependTo("body.menu-render-collapsed #toolbar div.toolbar-shortcuts ul");
  21. };
  22. Drupal.admin.behaviors.shorcutselect = function (context, settings, $adminMenu) {
  23. // Create the dropdown base
  24. $('<select id="shortcut-menu"/>').appendTo("body.menu-render-dropdown #toolbar div.toolbar-shortcuts");
  25. // Create default option "Select"
  26. $("<option />", {
  27. "selected": "selected",
  28. "value": "",
  29. "text": Drupal.t('Shortcuts')
  30. }).appendTo("body.menu-render-dropdown #toolbar div.toolbar-shortcuts select");
  31. // Populate dropdown with menu items
  32. $("body.menu-render-dropdown #toolbar div.toolbar-shortcuts a").each(function () {
  33. var el = $(this);
  34. $("<option />", {
  35. "value": el.attr("href"),
  36. "text": el.text()
  37. }).appendTo("body.menu-render-dropdown #toolbar div.toolbar-shortcuts select");
  38. });
  39. $("body.menu-render-dropdown #toolbar div.toolbar-shortcuts select").change(function () {
  40. window.location = $(this).find("option:selected").val();
  41. });
  42. $('body.menu-render-dropdown #toolbar div.toolbar-shortcuts ul').remove();
  43. };
  44. // Ovveride front link if changed by another module for the mobile menu.
  45. Drupal.admin.behaviors.mobile_front_link = function (context, settings, $adminMenu) {
  46. $("ul.slicknav_nav li.admin-menu-toolbar-home-menu a>a").attr("href", $("#admin-menu-icon > li > a").attr('href'));
  47. };
  48. })(jQuery);