1 | function performRefinedSearch()
|
---|
2 | {
|
---|
3 | var allCheckBoxes = $("#facetSelector input");
|
---|
4 | var counts = new Array();
|
---|
5 | for(var i = 0; i < allCheckBoxes.length; i++)
|
---|
6 | {
|
---|
7 | var current = $(allCheckBoxes[i]);
|
---|
8 | if(current.prop("checked"))
|
---|
9 | {
|
---|
10 | counts.push(current.parent().parent().attr("indexName") + ":(\"" + current.siblings("span").first().html() + "\")");
|
---|
11 | }
|
---|
12 | }
|
---|
13 |
|
---|
14 | var searchString = "";
|
---|
15 | for(var key in gs.cgiParams)
|
---|
16 | {
|
---|
17 | if (gs.cgiParams.hasOwnProperty(key))
|
---|
18 | {
|
---|
19 | searchString += key.replace(/_/g, ".") + "=" + gs.cgiParams[key] + "&";
|
---|
20 | }
|
---|
21 | }
|
---|
22 |
|
---|
23 | var countsString = "s1.facetQueries=&";
|
---|
24 | if(counts.length > 0)
|
---|
25 | {
|
---|
26 | countsString = "s1.facetQueries=[";
|
---|
27 | var countsStringBuffer = "";
|
---|
28 | for(var i = 0; i < counts.length; i++)
|
---|
29 | {
|
---|
30 | countsStringBuffer += "\"" + encodeURI(counts[i]) + "\"";
|
---|
31 | if(i < counts.length - 1)
|
---|
32 | {
|
---|
33 | countsStringBuffer += ", ";
|
---|
34 | }
|
---|
35 | }
|
---|
36 |
|
---|
37 | countsString += encodeURI(countsStringBuffer) + "]&";
|
---|
38 | }
|
---|
39 |
|
---|
40 | console.log("STRING IS " + countsString)
|
---|
41 |
|
---|
42 | $.ajax(gs.xsltParams.library_name + "/collection/" + gs.cgiParams.c + "/search/" + gs.cgiParams.s + "?" + searchString + countsString + "excerptid=resultsArea")
|
---|
43 | .done(function(response)
|
---|
44 | {
|
---|
45 | $("#resultsArea").html("");
|
---|
46 | $("#resultsArea").html(response.substring(response.indexOf(">") + 1, response.lastIndexOf("<")));
|
---|
47 | });
|
---|
48 | }
|
---|
49 |
|
---|
50 | function expandFacetList(indexName, countSize)
|
---|
51 | {
|
---|
52 | var tables = $(".facetTable");
|
---|
53 |
|
---|
54 | for(var i = 0; i < tables.length; i++)
|
---|
55 | {
|
---|
56 | var current = $(tables[i]);
|
---|
57 | if(current.attr("indexName") == indexName)
|
---|
58 | {
|
---|
59 | var items = current.children("li");
|
---|
60 |
|
---|
61 | for(var j = 0; j < items.length; j++)
|
---|
62 | {
|
---|
63 | $(items[j]).css("display", "block");
|
---|
64 | }
|
---|
65 |
|
---|
66 | break;
|
---|
67 | }
|
---|
68 | }
|
---|
69 |
|
---|
70 | var link = $(".expandCollapseFacetListLink" + indexName);
|
---|
71 | link.html("See less...");
|
---|
72 | link.attr("href", "javascript:collapseFacetList(\"" + indexName + "\", " + countSize + ");");
|
---|
73 | }
|
---|
74 |
|
---|
75 | function collapseFacetList(indexName, countSize)
|
---|
76 | {
|
---|
77 | var tables = $(".facetTable");
|
---|
78 |
|
---|
79 | for(var i = 0; i < tables.length; i++)
|
---|
80 | {
|
---|
81 | var current = $(tables[i]);
|
---|
82 | if(current.attr("indexName") == indexName)
|
---|
83 | {
|
---|
84 | var items = current.children("li");
|
---|
85 |
|
---|
86 | for(var j = 0; j < items.length; j++)
|
---|
87 | {
|
---|
88 | var regex = new RegExp("expandCollapseFacetList" + indexName, "g");
|
---|
89 | if(j > countSize && ($(items[j]).attr("class") == null || $(items[j]).attr("class").search(regex) == -1))
|
---|
90 | {
|
---|
91 | $(items[j]).css("display", "none");
|
---|
92 | }
|
---|
93 | }
|
---|
94 |
|
---|
95 | break;
|
---|
96 | }
|
---|
97 | }
|
---|
98 |
|
---|
99 | var link = $(".expandCollapseFacetListLink" + indexName);
|
---|
100 | link.html("See more...");
|
---|
101 | link.attr("href", "javascript:expandFacetList(\"" + indexName + "\", " + countSize + ");");
|
---|
102 | } |
---|