Trim whitespace from term before searching
[quanweb.git] / js / src / SearchController.js
index a02d27bae05f905187ce3306fb9c928e627c72fe..94c24d3bd703ae8be4e7175cea47242c84df4d69 100644 (file)
@@ -5,7 +5,8 @@ var SearchController = (function () {
     var my = {},
         booksModel = undefined;
 
-    const terms = ['aut', 'lan', 'lst', 'ser', 'tit'];
+    const textFields = ['aut', 'lan', 'ser', 'tit'];
+    const terms = textFields.concat(['lst', 'srt']);
 
     // ==============
     // Public methods
@@ -13,8 +14,8 @@ var SearchController = (function () {
     my.init = function(linkedBooksModel) {
         booksModel = linkedBooksModel;
         
-        for (var idx in terms) {
-            addEnterListener(terms[idx]);
+        for (var idx in textFields) {
+            addEnterListener(textFields[idx]);
         }
     };
     
@@ -71,7 +72,7 @@ var SearchController = (function () {
                 continue;
             }
 
-            var value = elem.value;
+            var value = elem.value.trim();
             if (value.length > 0) {
                 if (firstTime) {
                     url += '?';
@@ -80,11 +81,11 @@ var SearchController = (function () {
                 else {
                     url += '&';
                 }
-                if (term === 'lst') {
-                  url += term + '=' + encodeURIComponent('' + value);
+                if (textFields.includes(term)) {
+                  url += term + '=' + encodeURIComponent('%' + value + '%');
                 }
                 else {
-                  url += term + '=' + encodeURIComponent('%' + value + '%');
+                  url += term + '=' + encodeURIComponent('' + value);
                 }
             }
         }