Revision 4364
Added by ben leinfelder over 15 years ago
search.js | ||
---|---|---|
272 | 272 |
return tempQuery; |
273 | 273 |
} |
274 | 274 |
|
275 |
function generateSearchString(searchString, searchAssessments, searchAssessmentItems) { |
|
275 |
/** |
|
276 |
* @param searchTerms - and object (hashtable) with, pay attention now: |
|
277 |
keys are search values |
|
278 |
* values are pathexprs |
|
279 |
**/ |
|
280 |
function generateSearchString(searchTerms, operator, searchAssessments, searchAssessmentItems) { |
|
276 | 281 |
var queryString = |
277 | 282 |
"<pathquery version=\"1.2\">" |
278 | 283 |
+"<querytitle>Web-Search</querytitle>"; |
... | ... | |
315 | 320 |
+"<returnfield>response_label/@ident</returnfield>" |
316 | 321 |
+"<returnfield>response_label/material/mattext</returnfield>"; |
317 | 322 |
} |
318 |
|
|
323 |
|
|
324 |
queryString += |
|
325 |
"<querygroup operator=\"" + operator + "\">"; |
|
326 |
|
|
327 |
for (var i in searchTerms) { |
|
328 |
var key = i; |
|
329 |
var value = searchTerms[i]; |
|
330 |
queryString += |
|
331 |
"<queryterm searchmode=\"contains\" casesensitive=\"false\">"; |
|
332 |
if (key != "anyValue") { |
|
333 |
queryString += "<pathexpr>" + key + "</pathexpr>"; |
|
334 |
} |
|
335 |
queryString += "<value>" + value + "</value>"; |
|
336 |
queryString +="</queryterm>"; |
|
337 |
} |
|
338 |
|
|
319 | 339 |
queryString += |
320 |
"<querygroup operator=\"UNION\">" |
|
321 |
+"<queryterm searchmode=\"contains\" casesensitive=\"false\">" |
|
322 |
+"<value>" + searchString + "</value>" |
|
323 |
+"</queryterm>" |
|
324 |
+"</querygroup>" |
|
340 |
"</querygroup>" |
|
325 | 341 |
+"</pathquery>"; |
326 | 342 |
|
327 | 343 |
return queryString; |
Also available in: Unified diff
search within specific fields - with option for matching any vs. all