liuyg
2021-07-02 25ce610f6ecca7325e7a743dc032c4a76559c63d
1
2
3
4
5
6
//>>built
define("dojo/_base/declare dojo/_base/lang dojo/data/ItemFileReadStore dojo/data/util/filter dojo/_base/array dojo/_base/json".split(" "),function(x,e,z,y,A,u){return x("dojox.data.AndOrReadStore",[z],{_containsValue:function(m,t,u,k){return A.some(this.getValues(m,t),function(c){if(e.isString(k))return eval(k);if(null!==c&&!e.isObject(c)&&k){if(c.toString().match(k))return!0}else return u===c?!0:!1})},filter:function(m,t,x){var k=[];if(m.query){var c=u.fromJson(u.toJson(m.query));if("object"==typeof c){var a=
0,f;for(f in c)a++;if(1<a&&c.complexQuery){var a=c.complexQuery,n=!1;for(f in c)if("complexQuery"!==f){n||(a="( "+a+" )",n=!0);var l=m.query[f];e.isString(l)&&(l="'"+l+"'");a+=" AND "+f+":"+l;delete c[f]}c.complexQuery=a}}f=m.queryOptions?m.queryOptions.ignoreCase:!1;"string"!=typeof c&&(c=u.toJson(c),c=c.replace(/\\\\/g,"\\"));var c=c.replace(/\\"/g,'"'),a=e.trim(c.replace(/{|}/g,"")),b;if(a.match(/"? *complexQuery *"?:/)){for(var a=e.trim(a.replace(/"?\s*complexQuery\s*"?:/,"")),n=["'",'"'],r,p=
!1,c=0;c<n.length;c++)if(l=a.indexOf(n[c]),b=a.indexOf(n[c],1),r=a.indexOf(":",1),0===l&&-1!=b&&r<b){p=!0;break}p&&(a=a.replace(/^\"|^\'|\"$|\'$/g,""))}n=a;l=/^>=|^<=|^<|^>|^,|^NOT |^AND |^OR |^\(|^\)|^!|^&&|^\|\|/i;b=r="";var g=-1,p=!1,w="",d="";b="";b=-1;for(c=0;c<t.length;++c){var h=!0,v=t[c];if(null===v)h=!1;else{a=n;for(r="";0<a.length&&!p;){for(b=a.match(l);b&&!p;)a=e.trim(a.replace(b[0],"")),b=e.trim(b[0]).toUpperCase(),b="NOT"==b?"!":"AND"==b||","==b?"\x26\x26":"OR"==b?"||":b,b=" "+b+" ",
r+=b,b=a.match(l);if(0<a.length)if(h=(b=a.match(/:|>=|<=|>|</g))&&b.shift(),g=a.indexOf(h),-1==g){p=!0;break}else{w=e.trim(a.substring(0,g).replace(/\"|\'/g,""));a=e.trim(a.substring(g+h.length));if(b=a.match(/^\'|^\"/)){b=b[0];g=a.indexOf(b);b=a.indexOf(b,g+1);if(-1==b){p=!0;break}d=a.substring(g+h.length,b);a=b==a.length-1?"":e.trim(a.substring(b+1));b=":"!=h?this.getValue(v,w)+h+d:y.patternToRegExp(d,f)}else{if(b=a.match(/\s|\)|,/)){for(var d=Array(b.length),q=0;q<b.length;q++)d[q]=a.indexOf(b[q]);
g=d[0];if(1<d.length)for(q=1;q<d.length;q++)g=Math.min(g,d[q]);d=e.trim(a.substring(0,g));a=e.trim(a.substring(g))}else d=e.trim(a),a="";":"!=h?b=this.getValue(v,w)+h+d:(b=y.patternToRegExp(d,f),console.log("regex value: ",d," regex pattern: ",b))}r+=this._containsValue(v,w,d,b)}}h=eval(r)}h&&k.push(v)}p&&(k=[],console.log("The store's _fetchItems failed, probably due to a syntax error in query."))}else for(c=0;c<t.length;++c)f=t[c],null!==f&&k.push(f);x(k,m)}})});