Return-Path: Delivered-To: apmail-jakarta-lucene-dev-archive@apache.org Received: (qmail 46373 invoked from network); 3 Dec 2002 11:47:33 -0000 Received: from unknown (HELO nagoya.betaversion.org) (192.18.49.131) by daedalus.apache.org with SMTP; 3 Dec 2002 11:47:33 -0000 Received: (qmail 23048 invoked by uid 97); 3 Dec 2002 11:48:36 -0000 Delivered-To: qmlist-jakarta-archive-lucene-dev@jakarta.apache.org Received: (qmail 23016 invoked by uid 97); 3 Dec 2002 11:48:35 -0000 Mailing-List: contact lucene-dev-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Help: List-Post: List-Id: "Lucene Developers List" Reply-To: "Lucene Developers List" Delivered-To: mailing list lucene-dev@jakarta.apache.org Received: (qmail 23005 invoked by uid 97); 3 Dec 2002 11:48:34 -0000 X-Antivirus: nagoya (v4218 created Aug 14 2002) Date: 3 Dec 2002 11:47:27 -0000 Message-ID: <20021203114727.31449.qmail@icarus.apache.org> From: kelvint@apache.org To: jakarta-lucene-sandbox-cvs@apache.org Subject: cvs commit: jakarta-lucene-sandbox/contributions/javascript/queryValidator luceneQueryValidator.js X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N kelvint 2002/12/03 03:47:26 Modified: contributions/javascript/queryValidator luceneQueryValidator.js Log: Added a flag for wildcard case-insensitivity. Revision Changes Path 1.2 +16 -7 jakarta-lucene-sandbox/contributions/javascript/queryValidator/luceneQueryValidator.js Index: luceneQueryValidator.js =================================================================== RCS file: /home/cvs/jakarta-lucene-sandbox/contributions/javascript/queryValidator/luceneQueryValidator.js,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- luceneQueryValidator.js 8 May 2002 15:56:58 -0000 1.1 +++ luceneQueryValidator.js 3 Dec 2002 11:47:26 -0000 1.2 @@ -1,12 +1,13 @@ -// -// JavaScript Lucene Query Validator // Author: Kelvin Tan (kelvin@relevanz.com) -// Date: 10/04/2002 +// Date: 03/12/2002 +// JavaScript Lucene Query Validator +// Version: $Id$ // validates a lucene query. // @param Form field that contains the query function doCheckLuceneQuery(queryField) { + var wildcardCaseInsensitive = true; var query = queryField.value; if(query != null && query.length > 0) { @@ -20,7 +21,7 @@ } // check parentheses are used properly - matches = query.match(/^([^\n()]*|(\(([a-zA-Z0-9_+\-:()\" ]|\*)+\)))*$/); + matches = query.match(/^([^\n()]*|(\(([a-zA-Z0-9_+\-:()\" ]|\*)+\)))*$/); if(matches == null || matches.length == 0) { alert("Invalid search query! Parentheses must contain at least one alphabet or number. Please try again.") @@ -34,7 +35,7 @@ alert("Invalid search query! '+' and '-' modifiers must be followed by at least one alphabet or number. Please try again.") return false; } - + // check that quote marks are closed matches = query.match(/\"/g); if(matches != null) @@ -46,13 +47,21 @@ return false; } } - + // check ':' is used properly - matches = query.match(/^(([^\n:]*|([a-zA-Z0-9_]|\*)+[:]([a-zA-Z0-9_()"]|\*)+))*$/); + matches = query.match(/^(([^\n:]*|([a-zA-Z0-9_]|\*)+[:]([a-zA-Z0-9_()"]|\*)+))*$/); if(matches == null || matches.length == 0) { alert("Invalid search query! Field declarations (:) must be preceded by at least one alphabet or number and followed by at least one alphabet or number. Please try again.") return false; + } + + if(wildcardCaseInsensitive) + { + if(query.indexOf("*") != -1) + { + queryField.value = query.toLowerCase(); + } } return true; -- To unsubscribe, e-mail: For additional commands, e-mail: