From 2c861f5efcded67bc2bc38e63518968a77dacaf8 Mon Sep 17 00:00:00 2001 From: Hector Cortez Date: Fri, 8 Mar 2013 17:02:08 -0400 Subject: [PATCH] BUG 10963 Double quotes in suggest field SOLVED - When I type double quotes in suggest field, there is an error with JSON concatenation - Validation of double quotes in suggest fields. --- gulliver/js/maborak/core/maborak.js | 2 +- .../js/widgets/suggest/bsn.AutoSuggest_2.1.3.js | 1 + gulliver/methods/genericAjax.php | 13 +++---------- 3 files changed, 5 insertions(+), 11 deletions(-) diff --git a/gulliver/js/maborak/core/maborak.js b/gulliver/js/maborak/core/maborak.js index 6038c6830..f0592542a 100644 --- a/gulliver/js/maborak/core/maborak.js +++ b/gulliver/js/maborak/core/maborak.js @@ -1486,7 +1486,7 @@ this.aSug.push({'id':results[i].getAttribute('id'),'value':results[i].childNodes this.idAs="as_"+this.fld.id;this.createList(this.aSug);};_b.AutoSuggest.prototype.createList=function(arr) {var pointer=this;_b.DOM.remE(this.idAs);this.killTimeout();if(arr.length==0&&!this.oP.shownoresults) return false;var div=_b.DOM.cE("div",{id:this.idAs,className:this.oP.className});var ul=_b.DOM.cE("ul",{id:"as_ul"});for(var i=0;(i"+val.substring(st,st+this.sInp.length)+""+val.substring(st+this.sInp.length);var span=_b.DOM.cE("span",{},output,true);if(arr[i].info!="") +{var val=arr[i].value;val=val.split('"').join('"');var st=val.toLowerCase().indexOf(this.sInp.toLowerCase());var output=val.substring(0,st)+""+val.substring(st,st+this.sInp.length)+""+val.substring(st+this.sInp.length);var span=_b.DOM.cE("span",{},output,true);if(arr[i].info!="") {var br=_b.DOM.cE("br",{});span.appendChild(br);var small=_b.DOM.cE("small",{},arr[i].info);span.appendChild(small);} var a=_b.DOM.cE("a",{href:"#"});var tl=_b.DOM.cE("span",{className:"tl"}," ");var tr=_b.DOM.cE("span",{className:"tr"}," ");a.appendChild(tl);a.appendChild(tr);a.appendChild(span);a.name=i+1;a.onclick=function(){pointer.setHighlightedValue();return false;};a.onmouseover=function(){pointer.setHighlight(this.name);};var li=_b.DOM.cE("li",{},a);ul.appendChild(li);} if(arr.length==0&&this.oP.shownoresults) diff --git a/gulliver/js/widgets/suggest/bsn.AutoSuggest_2.1.3.js b/gulliver/js/widgets/suggest/bsn.AutoSuggest_2.1.3.js index 00c819735..4763dccd5 100755 --- a/gulliver/js/widgets/suggest/bsn.AutoSuggest_2.1.3.js +++ b/gulliver/js/widgets/suggest/bsn.AutoSuggest_2.1.3.js @@ -336,6 +336,7 @@ _b.AutoSuggest.prototype.createList = function(arr) // (as HTML, not DOM) // var val = arr[i].value; + val = val.split('"').join('"'); var st = val.toLowerCase().indexOf( this.sInp.toLowerCase() ); var output = val.substring(0,st) + "" + val.substring(st, st+this.sInp.length) + "" + val.substring(st+this.sInp.length); diff --git a/gulliver/methods/genericAjax.php b/gulliver/methods/genericAjax.php index 928dd94f1..5ba996e26 100755 --- a/gulliver/methods/genericAjax.php +++ b/gulliver/methods/genericAjax.php @@ -135,16 +135,9 @@ if( isset($request) ){ header ("Pragma: no-cache"); // HTTP/1.0 if (isset($_REQUEST['json'])) { - header("Content-Type: application/json"); - echo "{\"status\":0, \"results\": ["; - $arr = array(); - $aReplace = array("(\r\n)", "(\n\r)", "(\n)", "(\r)"); - for ($i=0;$i 0, "results" => $aResults)); + } else { header("Content-Type: text/xml"); echo "";