From a60d9a7f86653cbb4c37a424e5fcc55c2318deda Mon Sep 17 00:00:00 2001 From: Suhaib Khan Date: Mon, 10 Mar 2014 19:06:42 +0530 Subject: [PATCH] [ticket/10737] Adding delayed keyup and removing target_blank. PHPBB3-10737 --- phpBB/assets/javascript/core.js | 63 +++++++++++-------- .../prosilver/template/memberlist_search.html | 2 +- .../template/memberlist_search.html | 2 +- 3 files changed, 39 insertions(+), 28 deletions(-) diff --git a/phpBB/assets/javascript/core.js b/phpBB/assets/javascript/core.js index e5f4bd824d..6034f81a6e 100644 --- a/phpBB/assets/javascript/core.js +++ b/phpBB/assets/javascript/core.js @@ -513,37 +513,48 @@ phpbb.timezonePreselectSelect = function(forceSelector) { }; // Listen live search box events +var delay = (function(){ + var timer = 0; + return function(callback, ms){ + clearTimeout (timer); + timer = setTimeout(callback, ms); + }; +})(); + $('.live-search-input').keyup(function() { var str = this.value; - if (str.length < 3) { - return; - } - var link, name; - var clone = $("#user-search-row-tpl").clone(); - $("#livesearch").html(""); - clone.appendTo("#livesearch"); - $.ajax({ - url:'memberlist.php?mode=livesearch&'+"&q="+str, - success:function(result) { - $.each(result, function(idx, elem) { - link = "memberlist.php?mode=viewprofile&u=" + elem.id; - name = elem.name; - clone = $("#user-search-row-tpl").clone(); - clone.find(".user-search-link").attr("href", link); - clone.find(".user-search-name").html(name); - clone.attr("style", ""); - clone.appendTo("#livesearch"); - }); + delay(function(){ + if (str.length < 3) { + return; } - }); + var link, name; + var clone = $("#user-search-row-tpl").clone(); + $("#livesearch").html(""); + clone.appendTo("#livesearch"); + $.ajax({ + url:'memberlist.php?mode=livesearch&'+"&q="+str, + success:function(result) { + $.each(result, function(idx, elem) { + link = "memberlist.php?mode=viewprofile&u=" + elem.id; + name = elem.name; + clone = $("#user-search-row-tpl").clone(); + clone.find(".user-search-link").attr("href", link); + clone.find(".user-search-name").html(name); + clone.attr("style", ""); + clone.appendTo("#livesearch"); + }); + } + }); + }, 2000 ); }); -$('.live-search-input').blur(function() { - setTimeout(function () { - var clone = $("#user-search-row-tpl").clone(); - $("#livesearch").html(""); - clone.appendTo("#livesearch"); - }, 500); +$(document).click(function(event) { + var target = $( event.target ); + if(!target.is("#livesearch, #livesearch *, .live-search-input")) { + var clone = $("#user-search-row-tpl").clone(); + $("#livesearch").html(""); + clone.appendTo("#livesearch"); + } }); // Toggle notification list diff --git a/phpBB/styles/prosilver/template/memberlist_search.html b/phpBB/styles/prosilver/template/memberlist_search.html index a63e38b184..0efa91cc95 100644 --- a/phpBB/styles/prosilver/template/memberlist_search.html +++ b/phpBB/styles/prosilver/template/memberlist_search.html @@ -12,7 +12,7 @@
- +
diff --git a/phpBB/styles/subsilver2/template/memberlist_search.html b/phpBB/styles/subsilver2/template/memberlist_search.html index bdb5422b55..ea0b562b41 100644 --- a/phpBB/styles/subsilver2/template/memberlist_search.html +++ b/phpBB/styles/subsilver2/template/memberlist_search.html @@ -79,7 +79,7 @@ - +