diff --git a/typo3/sysext/backend/Resources/Private/TypeScript/LiveSearch.ts b/typo3/sysext/backend/Resources/Private/TypeScript/LiveSearch.ts index 12acc505b891..e71b8b1c7f93 100644 --- a/typo3/sysext/backend/Resources/Private/TypeScript/LiveSearch.ts +++ b/typo3/sysext/backend/Resources/Private/TypeScript/LiveSearch.ts @@ -173,7 +173,6 @@ class LiveSearch { private registerEvents(): void { const $searchField = $(Identifiers.searchFieldSelector); - const $autocompleteContainer = $('.' + $searchField.autocomplete().options.containerClass); $(Identifiers.containerSelector).on('click', '.t3js-live-search-show-all', (evt: JQueryEventObject): void => { evt.preventDefault(); @@ -182,6 +181,7 @@ class LiveSearch { $searchField.val('').trigger('change'); }); if ($searchField.length) { + const $autocompleteContainer = $('.' + $searchField.autocomplete().options.containerClass); $autocompleteContainer.on('click.autocomplete', '.dropdown-list-link', (evt: JQueryEventObject): void => { evt.preventDefault(); diff --git a/typo3/sysext/backend/Resources/Public/JavaScript/LiveSearch.js b/typo3/sysext/backend/Resources/Public/JavaScript/LiveSearch.js index c02a5ea9f6f0..1b74d9852279 100644 --- a/typo3/sysext/backend/Resources/Public/JavaScript/LiveSearch.js +++ b/typo3/sysext/backend/Resources/Public/JavaScript/LiveSearch.js @@ -10,4 +10,4 @@ * * The TYPO3 project - inspiring people to share! */ -define(["require","exports","jquery","./Viewport","./Icons","jquery/autocomplete","TYPO3/CMS/Backend/jquery.clearable"],function(e,t,o,a,r){"use strict";var n,l;return(l=n||(n={})).containerSelector="#typo3-cms-backend-backend-toolbaritems-livesearchtoolbaritem",l.toolbarItem=".t3js-toolbar-item-search",l.dropdownToggle=".t3js-toolbar-search-dropdowntoggle",l.searchFieldSelector=".t3js-topbar-navigation-search-field",l.formSelector=".t3js-topbar-navigation-search",new(function(){function e(){var e=this;this.url=TYPO3.settings.ajaxUrls.livesearch,a.Topbar.Toolbar.registerEvent(function(){e.registerAutocomplete(),e.registerEvents(),o(n.toolbarItem).removeAttr("style"),o(n.searchFieldSelector).clearable({onClear:function(){o(n.toolbarItem).hasClass("open")&&o(n.dropdownToggle).dropdown("toggle")}})})}return e.prototype.registerAutocomplete=function(){o(n.searchFieldSelector).autocomplete({serviceUrl:this.url,paramName:"q",dataType:"json",minChars:2,width:"100%",groupBy:"typeLabel",containerClass:n.toolbarItem.substr(1,n.toolbarItem.length),appendTo:n.containerSelector+" .dropdown-menu",forceFixPosition:!1,preserveInput:!0,showNoSuggestionNotice:!0,triggerSelectOnValidInput:!1,preventBadQueries:!1,noSuggestionNotice:'

"+TYPO3.lang.liveSearch_helpTitle+"


"+TYPO3.lang.liveSearch_helpDescription+"
"+TYPO3.lang.liveSearch_helpDescriptionPages+"

",transformResult:function(e){return{suggestions:o.map(e,function(e){return{value:e.title,data:e}})}},formatGroup:function(e,t,o){var a="";return o>0&&(a="
"),a+'"},formatResult:function(e){return'"},onSearchStart:function(){var e=o(n.toolbarItem);e.hasClass("loading")||(e.addClass("loading"),r.getIcon("spinner-circle-light",r.sizes.small,"",r.states.default,r.markupIdentifiers.inline).done(function(t){e.find(".icon-apps-toolbar-menu-search").replaceWith(t)}))},onSearchComplete:function(){var e=o(n.toolbarItem),t=o(n.searchFieldSelector);!e.hasClass("open")&&t.val().length>1&&(o(n.dropdownToggle).dropdown("toggle"),t.focus()),e.hasClass("loading")&&(e.removeClass("loading"),r.getIcon("apps-toolbar-menu-search",r.sizes.small,"",r.states.default,r.markupIdentifiers.inline).done(function(t){e.find(".icon-spinner-circle-light").replaceWith(t)}))},beforeRender:function(e){e.append('
'+TYPO3.lang.liveSearch_showAllResults+"
"),o(n.toolbarItem).hasClass("open")||(o(n.dropdownToggle).dropdown("toggle"),o(n.searchFieldSelector).focus())},onHide:function(){o(n.toolbarItem).hasClass("open")&&o(n.dropdownToggle).dropdown("toggle")}})},e.prototype.registerEvents=function(){var e=o(n.searchFieldSelector),t=o("."+e.autocomplete().options.containerClass);o(n.containerSelector).on("click",".t3js-live-search-show-all",function(t){t.preventDefault(),TYPO3.ModuleMenu.App.showModule("web_list","id=0&search_levels=-1&search_field="+encodeURIComponent(e.val())),e.val("").trigger("change")}),e.length&&t.on("click.autocomplete",".dropdown-list-link",function(t){t.preventDefault();var a=o(t.currentTarget);top.jump(a.data("target"),"web_list","web",a.data("pageid")),e.val("").trigger("change")}),o(n.formSelector).on("submit",function(e){e.preventDefault()})},e}())}); \ No newline at end of file +define(["require","exports","jquery","./Viewport","./Icons","jquery/autocomplete","TYPO3/CMS/Backend/jquery.clearable"],function(e,t,o,a,r){"use strict";var n,l;return(l=n||(n={})).containerSelector="#typo3-cms-backend-backend-toolbaritems-livesearchtoolbaritem",l.toolbarItem=".t3js-toolbar-item-search",l.dropdownToggle=".t3js-toolbar-search-dropdowntoggle",l.searchFieldSelector=".t3js-topbar-navigation-search-field",l.formSelector=".t3js-topbar-navigation-search",new(function(){function e(){var e=this;this.url=TYPO3.settings.ajaxUrls.livesearch,a.Topbar.Toolbar.registerEvent(function(){e.registerAutocomplete(),e.registerEvents(),o(n.toolbarItem).removeAttr("style"),o(n.searchFieldSelector).clearable({onClear:function(){o(n.toolbarItem).hasClass("open")&&o(n.dropdownToggle).dropdown("toggle")}})})}return e.prototype.registerAutocomplete=function(){o(n.searchFieldSelector).autocomplete({serviceUrl:this.url,paramName:"q",dataType:"json",minChars:2,width:"100%",groupBy:"typeLabel",containerClass:n.toolbarItem.substr(1,n.toolbarItem.length),appendTo:n.containerSelector+" .dropdown-menu",forceFixPosition:!1,preserveInput:!0,showNoSuggestionNotice:!0,triggerSelectOnValidInput:!1,preventBadQueries:!1,noSuggestionNotice:'

"+TYPO3.lang.liveSearch_helpTitle+"


"+TYPO3.lang.liveSearch_helpDescription+"
"+TYPO3.lang.liveSearch_helpDescriptionPages+"

",transformResult:function(e){return{suggestions:o.map(e,function(e){return{value:e.title,data:e}})}},formatGroup:function(e,t,o){var a="";return o>0&&(a="
"),a+'"},formatResult:function(e){return'"},onSearchStart:function(){var e=o(n.toolbarItem);e.hasClass("loading")||(e.addClass("loading"),r.getIcon("spinner-circle-light",r.sizes.small,"",r.states.default,r.markupIdentifiers.inline).done(function(t){e.find(".icon-apps-toolbar-menu-search").replaceWith(t)}))},onSearchComplete:function(){var e=o(n.toolbarItem),t=o(n.searchFieldSelector);!e.hasClass("open")&&t.val().length>1&&(o(n.dropdownToggle).dropdown("toggle"),t.focus()),e.hasClass("loading")&&(e.removeClass("loading"),r.getIcon("apps-toolbar-menu-search",r.sizes.small,"",r.states.default,r.markupIdentifiers.inline).done(function(t){e.find(".icon-spinner-circle-light").replaceWith(t)}))},beforeRender:function(e){e.append('
'+TYPO3.lang.liveSearch_showAllResults+"
"),o(n.toolbarItem).hasClass("open")||(o(n.dropdownToggle).dropdown("toggle"),o(n.searchFieldSelector).focus())},onHide:function(){o(n.toolbarItem).hasClass("open")&&o(n.dropdownToggle).dropdown("toggle")}})},e.prototype.registerEvents=function(){var e=o(n.searchFieldSelector);(o(n.containerSelector).on("click",".t3js-live-search-show-all",function(t){t.preventDefault(),TYPO3.ModuleMenu.App.showModule("web_list","id=0&search_levels=-1&search_field="+encodeURIComponent(e.val())),e.val("").trigger("change")}),e.length)&&o("."+e.autocomplete().options.containerClass).on("click.autocomplete",".dropdown-list-link",function(t){t.preventDefault();var a=o(t.currentTarget);top.jump(a.data("target"),"web_list","web",a.data("pageid")),e.val("").trigger("change")});o(n.formSelector).on("submit",function(e){e.preventDefault()})},e}())}); \ No newline at end of file