The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
Live Search 1.0 (AJAX) Details »» | |||||||||||||||||||||||||
About the hack
============== The hack adds a quick live search form to your forum's at any place you want it, results are to be shown exactly under the search field as you type (by ajax) Supported browsers ============== IE6, IE7, FF2, Opera 9 Demo ==================== http://www.montadaphp.net right under the logo How to Install ============== 1- Add the following code to the end of ur "headinclude" template: Code:
<script type="text/javascript"> /*********************************************** * Drop Down/ Overlapping Content- ? Dynamic Drive (www.dynamicdrive.com) * This notice must stay intact for legal use. * Visit http://www.dynamicdrive.com/ for full source code ***********************************************/ function getposOffset(overlay, offsettype){ var totaloffset=(offsettype=="left")? overlay.offsetLeft : overlay.offsetTop; var parentEl=overlay.offsetParent; while (parentEl!=null){ totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop; parentEl=parentEl.offsetParent; } return totaloffset; } function overlay(curobj, subobjstr, opt_position){ if (document.getElementById){ var subobj=document.getElementById(subobjstr) subobj.style.display="block" var xpos=getposOffset(curobj, "left")+((typeof opt_position!="undefined" && opt_position.indexOf("right")!=-1)? -(subobj.offsetWidth-curobj.offsetWidth) : 0) var ypos=getposOffset(curobj, "top")+((typeof opt_position!="undefined" && opt_position.indexOf("bottom")!=-1)? curobj.offsetHeight : 0) subobj.style.left=xpos+"px" subobj.style.top=ypos+"px" return false } else return true } function overlayclose(subobj){ document.getElementById(subobj).style.display="none" } var xmlHttp3 function showHint(word) { document.getElementById('search_results').innerHTML = '<p></p><p></p><p align="center" class="smallfont"><img src="images/progress.gif" />Searching..</p>'; xmlHttp3=GetXmlHttpObject3() if (xmlHttp3==null) { alert ("Browser does not support HTTP Request") return } var url="ajax_search.php" url=url+"?query="+word xmlHttp3.onreadystatechange=stateChanged3 xmlHttp3.open("GET",url,true) xmlHttp3.send(null) } function stateChanged3() { if (xmlHttp3.readyState==4 || xmlHttp3.readyState=="complete") { document.getElementById("search_results"). innerHTML='<div align="left"><a href="#" onClick="overlayclose(\'search_results\'); return false">x</a></div>'+xmlHttp3.responseText; return overlay(this, 'search_results') } } function GetXmlHttpObject3() { var objXMLHttp3=null if (window.XMLHttpRequest) { objXMLHttp3=new XMLHttpRequest() } else if (window.ActiveXObject) { objXMLHttp3=new ActiveXObject("Microsoft.XMLHTTP") } return objXMLHttp3 } </script> Code:
<form action="search.php?do=process" method="post"> <input type="hidden" name="do" value="process" /> <input type="hidden" name="quicksearch" value="1" /> <input type="hidden" name="childforums" value="1" /> <input type="hidden" name="exactname" value="1" /> <input type="hidden" name="s" value="$session[sessionhash]" /> Live search <input type="text" name="query" size="25" class="header_search_field" onkeyup="showHint(this.value)" /> </form> <div id="search_results" class="smallfont" style="position:absolute; border: 2px solid orange; color:blue; background-color: white; width: 300px; padding: 8px; display:none;overflow:auto; height:200px"> <div align="left"><a href="#" onClick="overlayclose('search_results'); return false">x</a></div> </div> and u r done If u like the hack please dont forget to click INSTALL Show Your Support
|
Comments |
#52
|
||||
|
||||
Seeing as how the script grabs info from the server in order to insert the links I would say it's safe to assume that each keystroke causes one query.
|
#53
|
||||
|
||||
Quote:
Please try to upload the file again... and tell me if the problem presists thanx Quote:
again i tested on medium forum (mine) and it didnt show any problems till now i didnt test on large forums if it appear to be a problem on large forums we could add a time limit then but i dont like to do so now cause it no longer be LIVE SEARCH Quote:
Quote:
|
#54
|
||||
|
||||
Quote:
also template edit updated.. please install the updated ones |
#55
|
||||
|
||||
Quote:
infact i didnt test it in the DHTML menu but only in the header portion of the page, outside the DHTML menu |
#56
|
||||
|
||||
Quote:
I wonder if there is something to add to either the DHTML or this mod to make it work correctly in IE within the stock search dropdown. BTW, My Internet Explorer version is 7.0.5730.11 |
#57
|
|||
|
|||
Very nice mod. Installed.
In my search, there is a radio button to select Post or Thread, can you modify the code so it can search post as supposed to search Thread by default now. You can look at the site on my signature to see my search box |
#58
|
|||
|
|||
not sure if this is a bug
On FF, the search result displayed on the ajax box is left aligned while in Opera 9.22, it's right aligned Also, i have a wiki on my site at www.quantnet.org/wiki but the search box is no longer working there. The default select radio button is disappear on the wiki site. Thread is selected by default on the forum site but as soon as i go to my wiki site, the select disappear so i can't search anymore |
#59
|
|||
|
|||
Here is the code of the search box that i have in my navbar template
Code:
<!-- search --> <if condition="$show['searchbuttons']"> <td align="right" nowrap="nowrap" valign="top"> <if condition="$show['member']"> <form action="search.php?do=process" method="post"> <else /> <form action="search.php$session[sessionurl_q]" method="post"> </if> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td style="font-size:10px" title="nohilite"> <input type="hidden" name="do" value="process" /> <input type="hidden" name="quicksearch" value="1" /> <input type="hidden" name="childforums" value="1" /> <input type="hidden" name="exactname" value="1" /> <input type="hidden" name="s" value="$session[sessionhash]" /> Live search <input type="text" name="query" size="25" class="header_search_field" onkeyup="showHint(this.value)" /> </form> <div id="search_results" class="smallfont" style="position:absolute; border: 2px solid orange; color:blue; background-color: white; width: 300px; padding: 8px; display:none;overflow:auto; height:200px"> <div align="left"><a href="#" onClick="overlayclose('search_results'); return false">x</a></div> </div> </td> <td nowrap="nowrap" id="navbar_search" class="smallfont"> <a href="search.php$session[sessionurl_q]">Options</a> <script type="text/javascript"> vbmenu_register("navbar_search"); </script></td> </tr> <tr> <td colspan="2" style="font-size:10px" title="nohilite" nowrap="nowrap"> Show: <label for="rb_nb_sp0"><input type="radio" name="showposts" value="0" id="rb_nb_sp0" tabindex="1002" checked="checked" />threads</label> <label for="rb_nb_sp1"><input type="radio" name="showposts" value="1" id="rb_nb_sp1" tabindex="1003" />posts</label> </td> </tr> </table> </form> <!-- / search --> |
#60
|
|||
|
|||
Found another error:
I have this error when i search while I'm on the home page (i have vbAdvanced as homepage) http://www.mysite.com/ 68.198.xxx.xxx /ajax_search.php?query=ds www.mysite.com Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6 404 Please contact admin@xxx.org if you can not find the content you are looking for. |
#61
|
||||
|
||||
Quote:
so u should better install this mod directly in the header portion of the page or any place outside the drop down menu |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|