X-Cart: shopping cart software

X-Cart forums (https://forum.x-cart.com/index.php)
-   Changing design (https://forum.x-cart.com/forumdisplay.php?f=51)
-   -   set minimum number of characters in search string. HOW PLS? (https://forum.x-cart.com/showthread.php?t=20781)

donavichi 03-28-2006 10:32 AM

set minimum number of characters in search string. HOW PLS?
 
By default, in x-cart if you hit 'Submit' in the search field with no search query in the search field, x-cart returns all products listed in the database.

This is not desirable for a number of reasons and I was wondering if you could help me change this to actually set a minimum number of characters required before a search result is returned to the user, thus reducing the number of items displayed.

Or if there is a better solution which is implementable could you suggest what one might do to avoid the aforementioned scenario?

Thanks a heap

Lionel 03-28-2006 10:34 AM

I am also anxious for a solution. The closest I found so far involves adding a validator plugin into smarty.

Lionel 04-03-2006 06:56 AM

I was able to find something to prevent the blank searches and minimum characters. Set the var minLength to desired character length.

here is the capture section in search.tpl

Code:

{capture name=search}
<TABLE border="0" cellpadding="0" cellspacing="0"> 
<FORM method="POST" action="search.php" name="productsearchform"  OnSubmit="return submitSearchFrm();">
<INPUT type="hidden" name="simple_search" value="Y">
<INPUT type="hidden" name="mode" value="search">
<INPUT type="hidden" name="posted_data[substring]" value="" id="search_substring">
<INPUT type="hidden" name="posted_data[by_title]" value="Y">
<INPUT type="hidden" name="posted_data[by_shortdescr]" value="Y">
<INPUT type="hidden" name="posted_data[by_fulldescr]" value="Y">
<TR>
 <TD align="right" valign="middle">
{literal}
<SCRIPT language="JavaScript">
function submitSearchFrm() {
          var minLength = 3;
          var frm = document.productsearchform;
        if (frm.search_for.value == "" || frm.search_for.value.length < minLength) {
                alert ("Please enter a minimum of 3 characters");
                return false;
        }
        var search_substring = document.getElementById("search_substring");
        search_substring.value = frm.search_for.value;
        return true;
}
</SCRIPT>
{/literal}
 
  <INPUT style="border:1px inset  #C0C0C0; color:#000000; background:#F4F4F4; height:17px; width:110px;"

type="text" name="search_for" size="20" value="{$search_prefilled.substring|escape}">

 </TD>
 <TD align="left" valign="middle">
 <A href="javascript: if (submitSearchFrm()) document.productsearchform.submit();void(0);">{include

file="buttons/search_head.tpl"}</A></TD></TR><TR>
 <TD align="center" colspan="2">
{$lng.lbl_advanced_search}</TD>
</TR>
</FORM>
</TABLE>
{/capture}



All times are GMT -8. The time now is 07:07 AM.

Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.