Built motion from commit 5b761a7b.|2.5.36
[motion2.git] / server / components / parsers / qs.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x951b=['isEmail','forEach','replace','push','join','getOptions','query','$id','model','map','intersection','attributes','fields','hasOwnProperty','nolimit','where','filter','VIRTUAL','lower','lodash','sequelize','moment','parse','includes','keys','split','filters','isEmpty','find','isPlainObject','$gte','format','YYYY-MM-DD','utc','$lte','name','uniqueid','isArray','limit','offset','sort','priority','cast','substr','DESC','col','unsigned','ASC','omit','length','isString','unset','isNumeric','match','^[+]?[0-9]*$'];(function(_0x19f5c8,_0x17e1f5){var _0x90d69=function(_0x1fa097){while(--_0x1fa097){_0x19f5c8['push'](_0x19f5c8['shift']());}};_0x90d69(++_0x17e1f5);}(_0x951b,0x15d));var _0xb951=function(_0x3d93a2,_0x19aeea){_0x3d93a2=_0x3d93a2-0x0;var _0x4549fa=_0x951b[_0x3d93a2];return _0x4549fa;};'use strict';var _=require(_0xb951('0x0'));var sequelize=require(_0xb951('0x1'));var moment=require(_0xb951('0x2'));var LIMIT_VALUE=0xfa;function hasSequelizeOperator(_0x475cb4){var _0x153193=['ne'];try{var _0x95931=JSON[_0xb951('0x3')](_0x475cb4);var _0x405e9f=Object['keys'](_0x95931)[0x0];return _0x153193[_0xb951('0x4')](_0x405e9f);}catch(_0x572792){return![];}}function getOperatorValue(_0x519e9f){var _0x110d30=JSON['parse'](_0x519e9f);var _0x372029=Object[_0xb951('0x5')](_0x110d30)[0x0];var _0x6a7061=_0x110d30[_0x372029];return{['$'+_0x372029]:_0x6a7061};}exports['fields']=function(_0x4292b4){var _0x2d8f9e=null;if(_0x4292b4){_0x2d8f9e=_0x4292b4[_0xb951('0x6')](',');}return _0x2d8f9e;};exports[_0xb951('0x7')]=function(_0x10890a,_0x2424e9){var _0x1a7f1d={};if(!_[_0xb951('0x8')](_0x10890a)){_['forOwn'](_0x10890a,function(_0x4d1a9d,_0xaec67a){try{if(_0x2424e9){var _0x355c96=_[_0xb951('0x9')](_0x2424e9,{'name':_0xaec67a})||{};if(hasSequelizeOperator(_0x4d1a9d)){_0x1a7f1d[_0xaec67a]=getOperatorValue(_0x4d1a9d);}else if(_0x355c96['type']==='DATE'&&_[_0xb951('0xa')](_0x4d1a9d)){var _0x454ee2=JSON['parse'](_0x4d1a9d);var _0x3d154e={'$gte':moment(moment(_0x454ee2[_0xb951('0xb')])[_0xb951('0xc')](_0xb951('0xd')))[_0xb951('0xe')]()[_0xb951('0xc')](),'$lte':moment(moment(_0x454ee2[_0xb951('0xf')])[_0xb951('0xc')]('YYYY-MM-DD'))[_0xb951('0xe')]()['subtract'](0x1,'s')['format']()};_0x1a7f1d[_0xaec67a]=_0x3d154e;}else if(_0x355c96[_0xb951('0x10')]===_0xb951('0x11')){_0x1a7f1d[_0xaec67a]=_0x4d1a9d;}else{_0x1a7f1d[_0xaec67a]=_[_0xb951('0x12')](_0x4d1a9d)?_0x4d1a9d:JSON['parse'](_0x4d1a9d);}}else{_0x1a7f1d[_0xaec67a]=_[_0xb951('0x12')](_0x4d1a9d)?_0x4d1a9d:JSON[_0xb951('0x3')](_0x4d1a9d);}}catch(_0x2e6195){_0x1a7f1d[_0xaec67a]=_0x4d1a9d[_0xb951('0x6')](',');}});}return _0x1a7f1d;};exports[_0xb951('0x13')]=function(_0x42180c){_0x42180c=parseInt(_0x42180c,0xa);if(!_0x42180c||_0x42180c<0x0){_0x42180c=LIMIT_VALUE;}return _0x42180c;};exports[_0xb951('0x14')]=function(_0xf074dd){_0xf074dd=parseInt(_0xf074dd,0xa);if(!_0xf074dd||_0xf074dd<0x0){_0xf074dd=0x0;}return _0xf074dd;};exports[_0xb951('0x15')]=function(_0x186fbc){var _0x777ddb,_0x359525=null;if(_0x186fbc){_0x777ddb=_0x186fbc['split'](',');_0x359525=_['map'](_0x777ddb,function(_0x46efb1){if(_0x46efb1['indexOf']('-')===0x0){return[_0x46efb1===_0xb951('0x16')?sequelize[_0xb951('0x17')](sequelize['col'](_0xb951('0x16')),'unsigned'):_0x46efb1[_0xb951('0x18')](0x1),_0xb951('0x19')];}else{return[_0x46efb1===_0xb951('0x16')?sequelize[_0xb951('0x17')](sequelize[_0xb951('0x1a')](_0xb951('0x16')),_0xb951('0x1b')):_0x46efb1,_0xb951('0x1c')];}});}return _0x359525;};exports[_0xb951('0x1d')]=function(_0xac6840,_0x5a7846){if(_[_0xb951('0x8')](_0xac6840)){return _0xac6840;}if(_[_0xb951('0x12')](_0xac6840)){for(var _0x3d917a=0x0;_0x3d917a<_0xac6840[_0xb951('0x1e')];_0x3d917a+=0x1){_0xac6840[_0x3d917a]=this['omit'](_0xac6840[_0x3d917a],_0x5a7846);}return _0xac6840;}if(!_['isObject'](_0xac6840)){return _0xac6840;}if(_[_0xb951('0x1f')](_0x5a7846)){_0x5a7846=[_0x5a7846];}if(!_[_0xb951('0x12')](_0x5a7846)){return _0xac6840;}for(var _0x431877=0x0;_0x431877<_0x5a7846[_0xb951('0x1e')];_0x431877+=0x1){_[_0xb951('0x20')](_0xac6840,_0x5a7846[_0x431877]);}for(var _0x536ac3 in _0xac6840){if(_0xac6840['hasOwnProperty'](_0x536ac3)){_0xac6840[_0x536ac3]=this[_0xb951('0x1d')](_0xac6840[_0x536ac3],_0x5a7846);}}return _0xac6840;};exports[_0xb951('0x21')]=function(_0x521a23){return _0x521a23[_0xb951('0x22')](RegExp(_0xb951('0x23')))?!![]:![];};exports[_0xb951('0x24')]=function(_0x4b6599){return _0x4b6599['match'](/^\S+@\S+$/)?!![]:![];};exports['getFullTextValue']=function(_0x1dc02f){var _0x28f591=[];_0x1dc02f[_0xb951('0x6')](/[ ,]+/)[_0xb951('0x25')](function(_0x551e19){_0x551e19=_0x551e19[_0xb951('0x26')](/([^:]")"+/g,'$1');_0x551e19='+'+_0x551e19+'*';if(_0x551e19[_0xb951('0x4')]('@'))_0x551e19='\x22'+_0x551e19+'\x22';_0x28f591[_0xb951('0x27')](_0x551e19);});return _0x28f591[_0xb951('0x28')]('\x20');};exports[_0xb951('0x29')]=function(_0x3076e6,_0x283b13,_0x550683){var _0x4d45da={},_0x2371d3={};if(_0x283b13[_0xb951('0x2a')][_0xb951('0x2b')]){_0x283b13[_0xb951('0x2a')]['id']=_0x283b13[_0xb951('0x2a')][_0xb951('0x2b')];delete _0x283b13[_0xb951('0x2a')]['$id'];}_0x4d45da[_0xb951('0x2c')]=_[_0xb951('0x2d')](_0x3076e6,'name');_0x4d45da[_0xb951('0x2a')]=_[_0xb951('0x5')](_0x283b13['query']);_0x4d45da[_0xb951('0x7')]=_[_0xb951('0x2e')](_0x4d45da['model'],_0x4d45da[_0xb951('0x2a')]);_0x2371d3[_0xb951('0x2f')]=_['intersection'](_0x4d45da['model'],this['fields'](_0x283b13[_0xb951('0x2a')][_0xb951('0x30')]));_0x2371d3[_0xb951('0x2f')]=_0x2371d3[_0xb951('0x2f')][_0xb951('0x1e')]?_0x2371d3[_0xb951('0x2f')]:_0x4d45da[_0xb951('0x2c')];if(!_0x283b13[_0xb951('0x2a')][_0xb951('0x31')](_0xb951('0x32'))){_0x2371d3['limit']=this[_0xb951('0x13')](_0x283b13[_0xb951('0x2a')][_0xb951('0x13')]);_0x2371d3[_0xb951('0x14')]=this['offset'](_0x283b13[_0xb951('0x2a')][_0xb951('0x14')]);}_0x2371d3['order']=this[_0xb951('0x15')](_0x283b13['query'][_0xb951('0x15')]);_0x2371d3[_0xb951('0x33')]=this[_0xb951('0x7')](_['pick'](_0x283b13['query'],_0x4d45da['filters']),_0x3076e6);if(_0x283b13[_0xb951('0x2a')][_0xb951('0x34')]){_0x2371d3['where']=_['merge'](_0x2371d3[_0xb951('0x33')],{'$or':_[_0xb951('0x2d')](_0x3076e6,function(_0x4255eb){if(_0x4255eb['type']!==_0xb951('0x35')){if(_0x550683){return sequelize[_0xb951('0x33')](sequelize['fn'](_0xb951('0x36'),sequelize[_0xb951('0x1a')](_0x4255eb[_0xb951('0x10')])),{'$like':sequelize['fn'](_0xb951('0x36'),'%'+_0x283b13[_0xb951('0x2a')][_0xb951('0x34')]+'%')});}else{var _0x1d01eb={};_0x1d01eb[_0x4255eb[_0xb951('0x10')]]={'$like':'%'+_0x283b13[_0xb951('0x2a')][_0xb951('0x34')]+'%'};return _0x1d01eb;}}})});}_0x2371d3=_['merge']({},_0x2371d3,_0x283b13['options']);return _0x2371d3;};