Built motion from commit 44b1f254.|2.6.26
[motion2.git] / server / components / parsers / advancedSearch.js
index e6bbe3f..dd961f7 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x9b64=['[$or]','and','replace','[$and]','split','forEach','match','filter','indexOf','map','conditions','push','buildExpression','DATE','$eq','operator','$between','value','includes','$gt','add','days','format','castTo','text','field','\x20AS\x20','$notIn','\x20OR\x20','\x20IS\x20NULL)','$in','NOT\x20IN\x20?','=\x20?','<>\x20?','$substring','$startsWith','$endsWith','<\x20?','$lte','<=\x20?','$gte','>=\x20?','BETWEEN\x20?\x20AND\x20?','start','shift','pop','utcOffset','hours','seconds','moment','sqlOperator'];(function(_0x484e36,_0x4482d8){var _0xafc85d=function(_0xaba9c8){while(--_0xaba9c8){_0x484e36['push'](_0x484e36['shift']());}};_0xafc85d(++_0x4482d8);}(_0x9b64,0x163));var _0x49b6=function(_0x2be8c2,_0x14a4b5){_0x2be8c2=_0x2be8c2-0x0;var _0x97f531=_0x9b64[_0x2be8c2];return _0x97f531;};'use strict';var _=require('lodash');var moment=require(_0x49b6('0x0'));exports['parseSearch']=function(_0x341af5){var _0xcac456={'conditions':[]};_0xcac456[_0x49b6('0x1')]=_['startsWith'](_0x341af5,_0x49b6('0x2'))?'or':_0x49b6('0x3');var _0x29af35=_0x341af5[_0x49b6('0x4')](_0x49b6('0x5'),'')[_0x49b6('0x4')](_0x49b6('0x2'),'')[_0x49b6('0x6')]('||');for(var _0x209502=0x0;_0x209502<_0x29af35['length'];_0x209502++){var _0x5d0657=_0x29af35[_0x209502]['split'](':=');var _0x347620=_0x5d0657[0x0];var _0x598aba=_0x5d0657['slice'](0x1);_0x598aba[_0x49b6('0x7')](function(_0x4d14e2){var _0x243a8a=_0x4d14e2[_0x49b6('0x6')]('[')['shift']();var _0xbd3cba=_0x4d14e2[_0x49b6('0x8')](/\[(.*?)\]/g);_0xbd3cba['forEach'](function(_0x275b99){var _0xb79832=_0x275b99[_0x49b6('0x6')]('[')[_0x49b6('0x9')](function(_0x452dc8){return _0x452dc8[_0x49b6('0xa')](']')>-0x1;})[_0x49b6('0xb')](function(_0x37a960){return _0x37a960[_0x49b6('0x6')](']')[0x0];})[0x0];_0xcac456[_0x49b6('0xc')][_0x49b6('0xd')]({'field':_0x347620,'operator':_0x243a8a,'value':_0xb79832});});});}return _0xcac456;};exports[_0x49b6('0xe')]=function(_0x1c52b5,_0x171944,_0x5a4ff0){var _0x28b7ed={};if(_0x171944===_0x49b6('0xf')){if(_0x5a4ff0['operator']===_0x49b6('0x10')){_0x5a4ff0[_0x49b6('0x11')]=_0x49b6('0x12');_0x5a4ff0['value']+=','+_0x5a4ff0[_0x49b6('0x13')];}else if(_[_0x49b6('0x14')]([_0x49b6('0x15'),'$lte'],_0x5a4ff0['operator'])){_0x5a4ff0[_0x49b6('0x13')]=moment(_0x5a4ff0[_0x49b6('0x13')])[_0x49b6('0x16')](0x1,_0x49b6('0x17'))[_0x49b6('0x18')]('YYYY-MM-DD');}}if(_0x5a4ff0[_0x49b6('0x19')]){_0x171944=_0x5a4ff0[_0x49b6('0x19')];_0x28b7ed[_0x49b6('0x1a')]='CAST('+_0x1c52b5+'.'+_0x5a4ff0[_0x49b6('0x1b')]+_0x49b6('0x1c')+_0x5a4ff0[_0x49b6('0x19')]+')\x20'+parseOperator(_0x5a4ff0[_0x49b6('0x11')]);}else{_0x28b7ed[_0x49b6('0x1a')]=_0x1c52b5+'.'+_0x5a4ff0[_0x49b6('0x1b')]+'\x20'+parseOperator(_0x5a4ff0[_0x49b6('0x11')]);}if(_[_0x49b6('0x14')](['$ne',_0x49b6('0x1d')],_0x5a4ff0[_0x49b6('0x11')]))_0x28b7ed[_0x49b6('0x1a')]='('+_0x28b7ed[_0x49b6('0x1a')]+_0x49b6('0x1e')+_0x1c52b5+'.'+_0x5a4ff0[_0x49b6('0x1b')]+_0x49b6('0x1f');_0x28b7ed['value']=parseValue(_0x171944,_0x5a4ff0['operator'],_0x5a4ff0[_0x49b6('0x13')]);return _0x28b7ed;};function parseOperator(_0x18eae7){var _0x18fc48;switch(_0x18eae7){case _0x49b6('0x20'):_0x18fc48='IN\x20?';break;case _0x49b6('0x1d'):_0x18fc48=_0x49b6('0x21');break;case _0x49b6('0x10'):_0x18fc48=_0x49b6('0x22');break;case'$ne':_0x18fc48=_0x49b6('0x23');break;case _0x49b6('0x24'):case _0x49b6('0x25'):case _0x49b6('0x26'):_0x18fc48='LIKE\x20?';break;case'$lt':_0x18fc48=_0x49b6('0x27');break;case'$gt':_0x18fc48='>\x20?';break;case _0x49b6('0x28'):_0x18fc48=_0x49b6('0x29');break;case _0x49b6('0x2a'):_0x18fc48=_0x49b6('0x2b');break;case _0x49b6('0x12'):_0x18fc48=_0x49b6('0x2c');break;}return _0x18fc48;}function parseValue(_0x5a7535,_0x1aca2c,_0xf0a8fb){var _0x447797={'start':undefined,'end':undefined};switch(_0x1aca2c){case _0x49b6('0x20'):case _0x49b6('0x1d'):_0x447797[_0x49b6('0x2d')]=_0xf0a8fb[_0x49b6('0x6')](',');break;case _0x49b6('0x24'):_0x447797[_0x49b6('0x2d')]='%'+_0xf0a8fb+'%';break;case _0x49b6('0x25'):_0x447797[_0x49b6('0x2d')]=_0xf0a8fb+'%';break;case'$endsWith':_0x447797['start']='%'+_0xf0a8fb;break;case _0x49b6('0x12'):var _0x4eb992=_0xf0a8fb[_0x49b6('0x6')](',');var _0xf0a8fb=_0x4eb992[_0x49b6('0x2e')]();var _0x3183ec=_0x4eb992[_0x49b6('0x2f')]();if(_0x5a7535===_0x49b6('0xf')){_0xf0a8fb=moment(_0xf0a8fb)[_0x49b6('0x30')](0x0,!![])['format']();_0x3183ec=moment(_0x3183ec)[_0x49b6('0x30')](0x0,!![])['add'](0x17,_0x49b6('0x31'))[_0x49b6('0x16')](0x3b,'minutes')[_0x49b6('0x16')](0x3b,_0x49b6('0x32'))[_0x49b6('0x18')]();}_0x447797={'start':_0xf0a8fb,'end':_0x3183ec};break;default:_0x447797['start']=_0xf0a8fb;break;}return _0x447797;}
\ No newline at end of file
+var _0xe23f=['<>\x20?','$substring','$endsWith','LIKE\x20?','$lt','<\x20?','$gt','>\x20?','$gte','>=\x20?','$between','BETWEEN\x20?\x20AND\x20?','start','$startsWith','utcOffset','add','hours','moment','parseSearch','sqlOperator','startsWith','[$or]','replace','[$and]','split','forEach','shift','match','filter','indexOf','conditions','push','DATE','operator','value','includes','$lte','days','format','YYYY-MM-DD','castTo','text','CAST(','field','\x20AS\x20','\x20OR\x20','\x20IS\x20NULL)','$in','$notIn','NOT\x20IN\x20?','$eq','=\x20?','$ne'];(function(_0x3a1d87,_0x503488){var _0x5973d2=function(_0x1bcdd7){while(--_0x1bcdd7){_0x3a1d87['push'](_0x3a1d87['shift']());}};_0x5973d2(++_0x503488);}(_0xe23f,0x11a));var _0xfe23=function(_0x46698a,_0x8de1e4){_0x46698a=_0x46698a-0x0;var _0x356db0=_0xe23f[_0x46698a];return _0x356db0;};'use strict';var _=require('lodash');var moment=require(_0xfe23('0x0'));exports[_0xfe23('0x1')]=function(_0xe0e72a){var _0x4172f7={'conditions':[]};_0x4172f7[_0xfe23('0x2')]=_[_0xfe23('0x3')](_0xe0e72a,_0xfe23('0x4'))?'or':'and';var _0x1d2eab=_0xe0e72a[_0xfe23('0x5')](_0xfe23('0x6'),'')['replace'](_0xfe23('0x4'),'')[_0xfe23('0x7')]('||');for(var _0x27fb85=0x0;_0x27fb85<_0x1d2eab['length'];_0x27fb85++){var _0x285150=_0x1d2eab[_0x27fb85][_0xfe23('0x7')](':=');var _0x586992=_0x285150[0x0];var _0x143b83=_0x285150['slice'](0x1);_0x143b83[_0xfe23('0x8')](function(_0x4a7347){var _0x464db3=_0x4a7347['split']('[')[_0xfe23('0x9')]();var _0x537f7a=_0x4a7347[_0xfe23('0xa')](/\[(.*?)\]/g);_0x537f7a['forEach'](function(_0x48d3ee){var _0x20282a=_0x48d3ee[_0xfe23('0x7')]('[')[_0xfe23('0xb')](function(_0x92c447){return _0x92c447[_0xfe23('0xc')](']')>-0x1;})['map'](function(_0x2d9998){return _0x2d9998['split'](']')[0x0];})[0x0];_0x4172f7[_0xfe23('0xd')][_0xfe23('0xe')]({'field':_0x586992,'operator':_0x464db3,'value':_0x20282a});});});}return _0x4172f7;};exports['buildExpression']=function(_0x14caff,_0x18ab63,_0x14bee9){var _0x3834cb={};if(_0x18ab63===_0xfe23('0xf')){if(_0x14bee9[_0xfe23('0x10')]==='$eq'){_0x14bee9[_0xfe23('0x10')]='$between';_0x14bee9[_0xfe23('0x11')]+=','+_0x14bee9[_0xfe23('0x11')];}else if(_[_0xfe23('0x12')](['$gt',_0xfe23('0x13')],_0x14bee9[_0xfe23('0x10')])){_0x14bee9[_0xfe23('0x11')]=moment(_0x14bee9['value'])['add'](0x1,_0xfe23('0x14'))[_0xfe23('0x15')](_0xfe23('0x16'));}}if(_0x14bee9[_0xfe23('0x17')]){_0x18ab63=_0x14bee9['castTo'];_0x3834cb[_0xfe23('0x18')]=_0xfe23('0x19')+_0x14caff+'.'+_0x14bee9[_0xfe23('0x1a')]+_0xfe23('0x1b')+_0x14bee9[_0xfe23('0x17')]+')\x20'+parseOperator(_0x14bee9[_0xfe23('0x10')]);}else{_0x3834cb[_0xfe23('0x18')]=_0x14caff+'.'+_0x14bee9['field']+'\x20'+parseOperator(_0x14bee9[_0xfe23('0x10')]);}if(_['includes'](['$ne','$notIn'],_0x14bee9[_0xfe23('0x10')]))_0x3834cb[_0xfe23('0x18')]='('+_0x3834cb['text']+_0xfe23('0x1c')+_0x14caff+'.'+_0x14bee9[_0xfe23('0x1a')]+_0xfe23('0x1d');_0x3834cb[_0xfe23('0x11')]=parseValue(_0x18ab63,_0x14bee9[_0xfe23('0x10')],_0x14bee9['value']);return _0x3834cb;};function parseOperator(_0x333326){var _0x32a020;switch(_0x333326){case _0xfe23('0x1e'):_0x32a020='IN\x20?';break;case _0xfe23('0x1f'):_0x32a020=_0xfe23('0x20');break;case _0xfe23('0x21'):_0x32a020=_0xfe23('0x22');break;case _0xfe23('0x23'):_0x32a020=_0xfe23('0x24');break;case _0xfe23('0x25'):case'$startsWith':case _0xfe23('0x26'):_0x32a020=_0xfe23('0x27');break;case _0xfe23('0x28'):_0x32a020=_0xfe23('0x29');break;case _0xfe23('0x2a'):_0x32a020=_0xfe23('0x2b');break;case _0xfe23('0x13'):_0x32a020='<=\x20?';break;case _0xfe23('0x2c'):_0x32a020=_0xfe23('0x2d');break;case _0xfe23('0x2e'):_0x32a020=_0xfe23('0x2f');break;}return _0x32a020;}function parseValue(_0x10fec4,_0x54a75a,_0x49a640){var _0x431d41={'start':undefined,'end':undefined};switch(_0x54a75a){case _0xfe23('0x1e'):case _0xfe23('0x1f'):_0x431d41[_0xfe23('0x30')]=_0x49a640[_0xfe23('0x7')](',');break;case _0xfe23('0x25'):_0x431d41[_0xfe23('0x30')]='%'+_0x49a640+'%';break;case _0xfe23('0x31'):_0x431d41[_0xfe23('0x30')]=_0x49a640+'%';break;case _0xfe23('0x26'):_0x431d41['start']='%'+_0x49a640;break;case _0xfe23('0x2e'):var _0xf87740=_0x49a640[_0xfe23('0x7')](',');var _0x49a640=_0xf87740[_0xfe23('0x9')]();var _0x21c629=_0xf87740['pop']();if(_0x10fec4===_0xfe23('0xf')){_0x49a640=moment(_0x49a640)[_0xfe23('0x32')](0x0,!![])[_0xfe23('0x15')]();_0x21c629=moment(_0x21c629)[_0xfe23('0x32')](0x0,!![])[_0xfe23('0x33')](0x17,_0xfe23('0x34'))['add'](0x3b,'minutes')[_0xfe23('0x33')](0x3b,'seconds')[_0xfe23('0x15')]();}_0x431d41={'start':_0x49a640,'end':_0x21c629};break;default:_0x431d41[_0xfe23('0x30')]=_0x49a640;break;}return _0x431d41;}
\ No newline at end of file