(function() { var sideMenuContainer = jQuery('
') var sideMenuOpener = jQuery('') var sideMenu = jQuery('
') var body = jQuery('body') var html = jQuery('html') var isTouchDevice = window.matchMedia("(pointer: coarse)").matches sideMenu.attr('data-bigmenu', '1') sideMenuContainer.attr('data-forcelighticon', '1') sideMenuContainer.attr('data-targetblankapps', '') var targetBlankApps = ; body.on('side-menu.apps', function(e, apps) { sideMenu = jQuery('#side-menu') if (apps.length === 0) { sideMenu.removeClass('open') sideMenu.addClass('hide') sideMenuOpener.addClass('hide') } else { sideMenu.removeClass('hide') sideMenuOpener.removeClass('hide') } if (apps.length === 0) { html.removeClass('side-menu-always-displayed'); } else { html.addClass('side-menu-always-displayed'); } if (apps.length === 0) { html.removeClass('side-menu-always-displayed'); } else { html.addClass('side-menu-always-displayed'); } }) body.on('side-menu.ready', function() { sideMenu = jQuery('#side-menu') var headerMenuOpener = jQuery('#header .side-menu-opener') var sideMenuOpener = jQuery('#side-menu .side-menu-opener') sideMenuFocus = function() { var a = sideMenu.find('.side-menu-app.active a') if (a.length === 0) { a = sideMenu.find('.side-menu-app:first-child a') } if (a.length > 0) { a.focus() } } var sideMenuMouseLeave = function() { sideMenu .removeClass('open') .off('mouseleave', sideMenuMouseLeave) } var sideMenuMouseEnter = function() { sideMenu.on('mouseleave', sideMenuMouseLeave) } var sideMenuOpenerMouseEnter = function() { sideMenu .addClass('open') .on('mouseenter', sideMenuMouseEnter) sideMenuFocus() } if (!isTouchDevice) { headerMenuOpener.on('mouseenter', sideMenuOpenerMouseEnter) sideMenu.addClass('hide-opener') } headerMenuOpener.on('click', function() { sideMenu.addClass('open') sideMenu.find('.side-menu-app.active a').focus() }) sideMenuOpener.on('click', function() { sideMenu.toggleClass('open') }) sideMenuOpener.on('click', function() { sideMenu.removeClass('open') }) jQuery(document).keydown(function(e) { var key = e.key || e.keyCode if ((key === 'o' || key === 79) && e.ctrlKey === true) { e.preventDefault() sideMenu.toggleClass('open') sideMenuFocus() } }) }) body.append(sideMenuContainer) sideMenuContainer.append(sideMenu) sideMenuOpener.insertBefore('#nextcloud') sideMenuOpener.insertAfter('#nextcloud') var topMenuApps = ; })();