Built motion from commit f25620e4.|2.6.30
[motion2.git] / server / components / parsers / advancedSearch.js
index 72dc84b..6651725 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x186d=['LIKE\x20?','>\x20?','<=\x20?','$gte','>=\x20?','BETWEEN\x20?\x20AND\x20?','pop','utcOffset','hours','minutes','start','parseSearch','startsWith','[$or]','and','[$and]','split','length','slice','forEach','shift','match','filter','push','buildExpression','DATE','$eq','operator','$between','value','includes','$gt','$lte','add','days','format','YYYY-MM-DD','castTo','text','field','$ne','$notIn','\x20OR\x20','\x20IS\x20NULL)','$in','IN\x20?','NOT\x20IN\x20?','=\x20?','$substring','$startsWith','$endsWith'];(function(_0x328bd3,_0x9cf5a5){var _0x458149=function(_0x3f60d9){while(--_0x3f60d9){_0x328bd3['push'](_0x328bd3['shift']());}};_0x458149(++_0x9cf5a5);}(_0x186d,0xa4));var _0xd186=function(_0x46ce98,_0x52d764){_0x46ce98=_0x46ce98-0x0;var _0x172f46=_0x186d[_0x46ce98];return _0x172f46;};'use strict';var _=require('lodash');var moment=require('moment');exports[_0xd186('0x0')]=function(_0xbedb81){var _0x2c9f17={'conditions':[]};_0x2c9f17['sqlOperator']=_[_0xd186('0x1')](_0xbedb81,_0xd186('0x2'))?'or':_0xd186('0x3');var _0x398e22=_0xbedb81['replace'](_0xd186('0x4'),'')['replace']('[$or]','')[_0xd186('0x5')]('||');for(var _0x5cb2e1=0x0;_0x5cb2e1<_0x398e22[_0xd186('0x6')];_0x5cb2e1++){var _0x5b9db7=_0x398e22[_0x5cb2e1][_0xd186('0x5')](':=');var _0x54e597=_0x5b9db7[0x0];var _0x4a97c3=_0x5b9db7[_0xd186('0x7')](0x1);_0x4a97c3[_0xd186('0x8')](function(_0x447b40){var _0x1c94f1=_0x447b40[_0xd186('0x5')]('[')[_0xd186('0x9')]();var _0x5428cd=_0x447b40[_0xd186('0xa')](/\[(.*?)\]/g);_0x5428cd['forEach'](function(_0x1088a0){var _0x3668c1=_0x1088a0[_0xd186('0x5')]('[')[_0xd186('0xb')](function(_0x4fcdbb){return _0x4fcdbb['indexOf'](']')>-0x1;})['map'](function(_0x484e94){return _0x484e94['split'](']')[0x0];})[0x0];_0x2c9f17['conditions'][_0xd186('0xc')]({'field':_0x54e597,'operator':_0x1c94f1,'value':_0x3668c1});});});}return _0x2c9f17;};exports[_0xd186('0xd')]=function(_0x47a454,_0x2912e9,_0x3baf48){var _0x1ed3b6={};if(_0x2912e9===_0xd186('0xe')){if(_0x3baf48['operator']===_0xd186('0xf')){_0x3baf48[_0xd186('0x10')]=_0xd186('0x11');_0x3baf48[_0xd186('0x12')]+=','+_0x3baf48[_0xd186('0x12')];}else if(_[_0xd186('0x13')]([_0xd186('0x14'),_0xd186('0x15')],_0x3baf48[_0xd186('0x10')])){_0x3baf48[_0xd186('0x12')]=moment(_0x3baf48[_0xd186('0x12')])[_0xd186('0x16')](0x1,_0xd186('0x17'))[_0xd186('0x18')](_0xd186('0x19'));}}if(_0x3baf48[_0xd186('0x1a')]){_0x2912e9=_0x3baf48[_0xd186('0x1a')];_0x1ed3b6[_0xd186('0x1b')]='CAST('+_0x47a454+'.'+_0x3baf48[_0xd186('0x1c')]+'\x20AS\x20'+_0x3baf48[_0xd186('0x1a')]+')\x20'+parseOperator(_0x3baf48[_0xd186('0x10')]);}else{_0x1ed3b6['text']=_0x47a454+'.'+_0x3baf48[_0xd186('0x1c')]+'\x20'+parseOperator(_0x3baf48['operator']);}if(_['includes']([_0xd186('0x1d'),_0xd186('0x1e')],_0x3baf48[_0xd186('0x10')]))_0x1ed3b6[_0xd186('0x1b')]='('+_0x1ed3b6[_0xd186('0x1b')]+_0xd186('0x1f')+_0x47a454+'.'+_0x3baf48[_0xd186('0x1c')]+_0xd186('0x20');_0x1ed3b6[_0xd186('0x12')]=parseValue(_0x2912e9,_0x3baf48[_0xd186('0x10')],_0x3baf48['value']);return _0x1ed3b6;};function parseOperator(_0x4d6a89){var _0x4f7a68;switch(_0x4d6a89){case _0xd186('0x21'):_0x4f7a68=_0xd186('0x22');break;case _0xd186('0x1e'):_0x4f7a68=_0xd186('0x23');break;case'$eq':_0x4f7a68=_0xd186('0x24');break;case'$ne':_0x4f7a68='<>\x20?';break;case _0xd186('0x25'):case _0xd186('0x26'):case _0xd186('0x27'):_0x4f7a68=_0xd186('0x28');break;case'$lt':_0x4f7a68='<\x20?';break;case _0xd186('0x14'):_0x4f7a68=_0xd186('0x29');break;case _0xd186('0x15'):_0x4f7a68=_0xd186('0x2a');break;case _0xd186('0x2b'):_0x4f7a68=_0xd186('0x2c');break;case _0xd186('0x11'):_0x4f7a68=_0xd186('0x2d');break;}return _0x4f7a68;}function parseValue(_0x532381,_0x336fab,_0x5ca659){var _0x343a19={'start':undefined,'end':undefined};switch(_0x336fab){case _0xd186('0x21'):case _0xd186('0x1e'):_0x343a19['start']=_0x5ca659[_0xd186('0x5')](',');break;case'$substring':_0x343a19['start']='%'+_0x5ca659+'%';break;case'$startsWith':_0x343a19['start']=_0x5ca659+'%';break;case'$endsWith':_0x343a19['start']='%'+_0x5ca659;break;case _0xd186('0x11'):var _0x3dc6a6=_0x5ca659[_0xd186('0x5')](',');var _0x5ca659=_0x3dc6a6[_0xd186('0x9')]();var _0x1632ff=_0x3dc6a6[_0xd186('0x2e')]();if(_0x532381===_0xd186('0xe')){_0x5ca659=moment(_0x5ca659)[_0xd186('0x2f')](0x0,!![])['format']();_0x1632ff=moment(_0x1632ff)['utcOffset'](0x0,!![])[_0xd186('0x16')](0x17,_0xd186('0x30'))[_0xd186('0x16')](0x3b,_0xd186('0x31'))[_0xd186('0x16')](0x3b,'seconds')[_0xd186('0x18')]();}_0x343a19={'start':_0x5ca659,'end':_0x1632ff};break;default:_0x343a19[_0xd186('0x32')]=_0x5ca659;break;}return _0x343a19;}
\ No newline at end of file
+var _0xc862=['length','shift','forEach','filter','conditions','push','buildExpression','DATE','operator','$eq','value','includes','$gt','$lte','add','days','format','YYYY-MM-DD','castTo','text','CAST(','field','$ne','$notIn','\x20OR\x20','NOT\x20IN\x20?','=\x20?','<>\x20?','$substring','$endsWith','LIKE\x20?','>\x20?','<=\x20?','$gte','$between','BETWEEN\x20?\x20AND\x20?','$in','start','$startsWith','pop','utcOffset','hours','minutes','seconds','lodash','parseSearch','sqlOperator','startsWith','replace','[$and]','[$or]','split'];(function(_0x3b2489,_0x4a1f11){var _0x142a2b=function(_0x103721){while(--_0x103721){_0x3b2489['push'](_0x3b2489['shift']());}};_0x142a2b(++_0x4a1f11);}(_0xc862,0x130));var _0x2c86=function(_0x3dcf16,_0x371872){_0x3dcf16=_0x3dcf16-0x0;var _0x35f04c=_0xc862[_0x3dcf16];return _0x35f04c;};'use strict';var _=require(_0x2c86('0x0'));var moment=require('moment');exports[_0x2c86('0x1')]=function(_0x1f2ab0){var _0x4ec502={'conditions':[]};_0x4ec502[_0x2c86('0x2')]=_[_0x2c86('0x3')](_0x1f2ab0,'[$or]')?'or':'and';var _0x4bdbad=_0x1f2ab0[_0x2c86('0x4')](_0x2c86('0x5'),'')[_0x2c86('0x4')](_0x2c86('0x6'),'')[_0x2c86('0x7')]('||');for(var _0x6cdbd7=0x0;_0x6cdbd7<_0x4bdbad[_0x2c86('0x8')];_0x6cdbd7++){var _0x14bd7b=_0x4bdbad[_0x6cdbd7][_0x2c86('0x7')](':=');var _0x5bbef6=_0x14bd7b[0x0];var _0x51554e=_0x14bd7b['slice'](0x1);_0x51554e['forEach'](function(_0x116177){var _0x352bb8=_0x116177[_0x2c86('0x7')]('[')[_0x2c86('0x9')]();var _0x47e8aa=_0x116177['match'](/\[(.*?)\]/g);_0x47e8aa[_0x2c86('0xa')](function(_0x30f6f0){var _0x11ab23=_0x30f6f0[_0x2c86('0x7')]('[')[_0x2c86('0xb')](function(_0x352b14){return _0x352b14['indexOf'](']')>-0x1;})['map'](function(_0x2ed1c7){return _0x2ed1c7[_0x2c86('0x7')](']')[0x0];})[0x0];_0x4ec502[_0x2c86('0xc')][_0x2c86('0xd')]({'field':_0x5bbef6,'operator':_0x352bb8,'value':_0x11ab23});});});}return _0x4ec502;};exports[_0x2c86('0xe')]=function(_0x507d9d,_0x49dab7,_0x3f9fb0){var _0x5e3a71={};if(_0x49dab7===_0x2c86('0xf')){if(_0x3f9fb0[_0x2c86('0x10')]===_0x2c86('0x11')){_0x3f9fb0[_0x2c86('0x10')]='$between';_0x3f9fb0['value']+=','+_0x3f9fb0[_0x2c86('0x12')];}else if(_[_0x2c86('0x13')]([_0x2c86('0x14'),_0x2c86('0x15')],_0x3f9fb0[_0x2c86('0x10')])){_0x3f9fb0[_0x2c86('0x12')]=moment(_0x3f9fb0[_0x2c86('0x12')])[_0x2c86('0x16')](0x1,_0x2c86('0x17'))[_0x2c86('0x18')](_0x2c86('0x19'));}}if(_0x3f9fb0['castTo']){_0x49dab7=_0x3f9fb0[_0x2c86('0x1a')];_0x5e3a71[_0x2c86('0x1b')]=_0x2c86('0x1c')+_0x507d9d+'.'+_0x3f9fb0[_0x2c86('0x1d')]+'\x20AS\x20'+_0x3f9fb0[_0x2c86('0x1a')]+')\x20'+parseOperator(_0x3f9fb0[_0x2c86('0x10')]);}else{_0x5e3a71['text']=_0x507d9d+'.'+_0x3f9fb0['field']+'\x20'+parseOperator(_0x3f9fb0['operator']);}if(_[_0x2c86('0x13')]([_0x2c86('0x1e'),_0x2c86('0x1f')],_0x3f9fb0['operator']))_0x5e3a71['text']='('+_0x5e3a71[_0x2c86('0x1b')]+_0x2c86('0x20')+_0x507d9d+'.'+_0x3f9fb0[_0x2c86('0x1d')]+'\x20IS\x20NULL)';_0x5e3a71[_0x2c86('0x12')]=parseValue(_0x49dab7,_0x3f9fb0[_0x2c86('0x10')],_0x3f9fb0[_0x2c86('0x12')]);return _0x5e3a71;};function parseOperator(_0x409b36){var _0x2bea9f;switch(_0x409b36){case'$in':_0x2bea9f='IN\x20?';break;case'$notIn':_0x2bea9f=_0x2c86('0x21');break;case _0x2c86('0x11'):_0x2bea9f=_0x2c86('0x22');break;case _0x2c86('0x1e'):_0x2bea9f=_0x2c86('0x23');break;case _0x2c86('0x24'):case'$startsWith':case _0x2c86('0x25'):_0x2bea9f=_0x2c86('0x26');break;case'$lt':_0x2bea9f='<\x20?';break;case'$gt':_0x2bea9f=_0x2c86('0x27');break;case'$lte':_0x2bea9f=_0x2c86('0x28');break;case _0x2c86('0x29'):_0x2bea9f='>=\x20?';break;case _0x2c86('0x2a'):_0x2bea9f=_0x2c86('0x2b');break;}return _0x2bea9f;}function parseValue(_0x2fe010,_0x19bb70,_0x11aee1){var _0x4ed448={'start':undefined,'end':undefined};switch(_0x19bb70){case _0x2c86('0x2c'):case'$notIn':_0x4ed448[_0x2c86('0x2d')]=_0x11aee1[_0x2c86('0x7')](',');break;case _0x2c86('0x24'):_0x4ed448['start']='%'+_0x11aee1+'%';break;case _0x2c86('0x2e'):_0x4ed448['start']=_0x11aee1+'%';break;case'$endsWith':_0x4ed448[_0x2c86('0x2d')]='%'+_0x11aee1;break;case'$between':var _0x4be89b=_0x11aee1[_0x2c86('0x7')](',');var _0x11aee1=_0x4be89b[_0x2c86('0x9')]();var _0x32a549=_0x4be89b[_0x2c86('0x2f')]();if(_0x2fe010===_0x2c86('0xf')){_0x11aee1=moment(_0x11aee1)[_0x2c86('0x30')](0x0,!![])[_0x2c86('0x18')]();_0x32a549=moment(_0x32a549)[_0x2c86('0x30')](0x0,!![])[_0x2c86('0x16')](0x17,_0x2c86('0x31'))['add'](0x3b,_0x2c86('0x32'))[_0x2c86('0x16')](0x3b,_0x2c86('0x33'))[_0x2c86('0x18')]();}_0x4ed448={'start':_0x11aee1,'end':_0x32a549};break;default:_0x4ed448[_0x2c86('0x2d')]=_0x11aee1;break;}return _0x4ed448;}
\ No newline at end of file