564a6f54bd38e0a092a49a01b4341abcb4e36949
[motion2.git] / server / api / chatGroup / chatGroup.controller.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 _0x1a4d=['reject','save','end','stack','name','send','map','ChatGroup','rawAttributes','fieldName','model','query','keys','filters','intersection','attributes','fields','sort','filter','where','merge','options','includeAll','rows','show','length','find','create','body','params','destroy','describe','getUnread','ChatInternalMessage','toInteger','addMembers','ids','omit','getMembers','User','order','pick','hasOwnProperty','nolimit','removeMembers','findOne','$gte','YYYY-MM-DD\x20HH:mm:ss','getMessages','html-pdf','zip-dir','fast-json-patch','request-promise','moment','squel','crypto','jsforce','desk.js','to-csv','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/utils','../../config/environment','../../mysqldb','redis','defaults','localhost','./chatGroup.socket','register','jayson/promise','client','http','test','Sequelize','ValidationError','The\x20password\x20must\x20be\x20at\x20least\x208\x20characters\x20long\x20and\x20have\x201\x20lowercase\x20character,\x201\x20uppercase\x20character,\x201\x20number\x20and\x201\x20special\x20character\x20~!@#$%^&-_=+[{]}.','request','then','info','ChatGroup,\x20%s,\x20%s','request\x20sent','ChatGroup,\x20%s,\x20%s,\x20%s','stringify','error','code','message','catch','sendStatus','status','json','count','offset','limit','set','Content-Range','apply'];(function(_0x77b2b3,_0x13f220){var _0x323778=function(_0x4345ea){while(--_0x4345ea){_0x77b2b3['push'](_0x77b2b3['shift']());}};_0x323778(++_0x13f220);}(_0x1a4d,0x1c1));var _0xd1a4=function(_0x316d84,_0x32e8fd){_0x316d84=_0x316d84-0x0;var _0xbeaa8a=_0x1a4d[_0x316d84];return _0xbeaa8a;};'use strict';var pdf=require(_0xd1a4('0x0'));var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0xd1a4('0x1'));var jsonpatch=require(_0xd1a4('0x2'));var rp=require(_0xd1a4('0x3'));var moment=require(_0xd1a4('0x4'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require('util');var path=require('path');var sox=require('sox');var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var _=require('lodash');var squel=require(_0xd1a4('0x5'));var crypto=require(_0xd1a4('0x6'));var jsforce=require(_0xd1a4('0x7'));var deskjs=require(_0xd1a4('0x8'));var toCsv=require(_0xd1a4('0x9'));var querystring=require(_0xd1a4('0xa'));var Papa=require(_0xd1a4('0xb'));var Redis=require('ioredis');var authService=require(_0xd1a4('0xc'));var qs=require(_0xd1a4('0xd'));var as=require(_0xd1a4('0xe'));var hardwareService=require(_0xd1a4('0xf'));var logger=require('../../config/logger')('api');var utils=require(_0xd1a4('0x10'));var config=require(_0xd1a4('0x11'));var db=require(_0xd1a4('0x12'))['db'];config[_0xd1a4('0x13')]=_[_0xd1a4('0x14')](config[_0xd1a4('0x13')],{'host':_0xd1a4('0x15'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xd1a4('0x13')]));require(_0xd1a4('0x16'))[_0xd1a4('0x17')](socket);var jayson=require(_0xd1a4('0x18'));var client=jayson[_0xd1a4('0x19')][_0xd1a4('0x1a')]({'port':0x232a});function checkPasswordPattern(_0x4eb303,_0x29c995,_0x4f309f){if(_0x4f309f){var _0x3f9de7=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x3f9de7[_0xd1a4('0x1b')](_0x29c995)){return _0x4eb303;}else{throw new db[(_0xd1a4('0x1c'))][(_0xd1a4('0x1d'))](_0xd1a4('0x1e'));}}else{return _0x4eb303;}}function respondWithRpcPromise(_0x57c1c0,_0x41625f,_0x5cf636,_0x34b429){return new BPromise(function(_0x19f7ae,_0x5ebf4b){var _0x4c9b10=_0x34b429||client;return _0x4c9b10[_0xd1a4('0x1f')](_0x57c1c0,_0x5cf636)[_0xd1a4('0x20')](function(_0x261126){logger[_0xd1a4('0x21')](_0xd1a4('0x22'),_0x41625f,_0xd1a4('0x23'));logger['debug'](_0xd1a4('0x24'),_0x41625f,_0xd1a4('0x23'),JSON[_0xd1a4('0x25')](_0x261126));if(_0x261126[_0xd1a4('0x26')]){if(_0x261126[_0xd1a4('0x26')][_0xd1a4('0x27')]===0x1f4){logger[_0xd1a4('0x26')](_0xd1a4('0x22'),_0x41625f,_0x261126['error'][_0xd1a4('0x28')]);return _0x5ebf4b(_0x261126['error'][_0xd1a4('0x28')]);}logger[_0xd1a4('0x26')](_0xd1a4('0x22'),_0x41625f,_0x261126[_0xd1a4('0x26')]['message']);return _0x19f7ae(_0x261126['error']['message']);}else{logger[_0xd1a4('0x21')]('ChatGroup,\x20%s,\x20%s',_0x41625f,_0xd1a4('0x23'));_0x19f7ae(_0x261126['result'][_0xd1a4('0x28')]);}})[_0xd1a4('0x29')](function(_0x7adfa3){logger['error']('ChatGroup,\x20%s,\x20%s',_0x41625f,_0x7adfa3);_0x5ebf4b(_0x7adfa3);});});}function respondWithStatusCode(_0xe0eefa,_0x520d61){_0x520d61=_0x520d61||0xcc;return function(_0x23d357){if(_0x23d357){return _0xe0eefa[_0xd1a4('0x2a')](_0x520d61);}return _0xe0eefa[_0xd1a4('0x2b')](_0x520d61)['end']();};}function respondWithResult(_0x5553d9,_0x2cc589){_0x2cc589=_0x2cc589||0xc8;return function(_0x4a8327){if(_0x4a8327){return _0x5553d9['status'](_0x2cc589)[_0xd1a4('0x2c')](_0x4a8327);}};}function respondWithFilteredResult(_0x24ea8f,_0xcdf4fc){return function(_0x4e8638){if(_0x4e8638){var _0xcc1799=_0x4e8638[_0xd1a4('0x2d')],_0x505950=_0xcdf4fc[_0xd1a4('0x2e')],_0x5c1b07=_0xcdf4fc[_0xd1a4('0x2e')]+_0xcdf4fc[_0xd1a4('0x2f')],_0x20a608;if(_0x5c1b07>=_0xcc1799){_0x5c1b07=_0xcc1799;_0x20a608=0xc8;}else{_0x20a608=0xce;}_0x24ea8f[_0xd1a4('0x2b')](_0x20a608);return _0x24ea8f[_0xd1a4('0x30')](_0xd1a4('0x31'),_0x505950+'-'+_0x5c1b07+'/'+_0xcc1799)[_0xd1a4('0x2c')](_0x4e8638);}return null;};}function patchUpdates(_0x3d40f2){return function(_0x13b690){try{jsonpatch[_0xd1a4('0x32')](_0x13b690,_0x3d40f2,!![]);}catch(_0x3232f4){return BPromise[_0xd1a4('0x33')](_0x3232f4);}return _0x13b690[_0xd1a4('0x34')]();};}function saveUpdates(_0x2b85e2,_0x84b74a){return function(_0x100479){if(_0x100479){return _0x100479['update'](_0x2b85e2)[_0xd1a4('0x20')](function(_0x3295cd){return _0x3295cd;});}return null;};}function removeEntity(_0x5c7ae3,_0x28afe7){return function(_0x4fb303){if(_0x4fb303){return _0x4fb303['destroy']()[_0xd1a4('0x20')](function(){_0x5c7ae3['status'](0xcc)[_0xd1a4('0x35')]();});}};}function handleEntityNotFound(_0x3ef871,_0x16d810){return function(_0x51865d){if(!_0x51865d){_0x3ef871[_0xd1a4('0x2a')](0x194);}return _0x51865d;};}function handleError(_0x21dcc0,_0x134739){_0x134739=_0x134739||0x1f4;return function(_0x52e6ad){logger[_0xd1a4('0x26')](_0x52e6ad[_0xd1a4('0x36')]);if(_0x52e6ad[_0xd1a4('0x37')]){delete _0x52e6ad[_0xd1a4('0x37')];}_0x21dcc0[_0xd1a4('0x2b')](_0x134739)[_0xd1a4('0x38')](_0x52e6ad);};}exports['index']=function(_0x5d4d2e,_0x238b92){var _0x56d953={},_0x3dbf0d={},_0x246649={'count':0x0,'rows':[]};var _0x54e0ab=_[_0xd1a4('0x39')](db[_0xd1a4('0x3a')][_0xd1a4('0x3b')],function(_0x5e605d){return{'name':_0x5e605d[_0xd1a4('0x3c')],'type':_0x5e605d['type']['key']};});_0x3dbf0d[_0xd1a4('0x3d')]=_[_0xd1a4('0x39')](_0x54e0ab,'name');_0x3dbf0d[_0xd1a4('0x3e')]=_[_0xd1a4('0x3f')](_0x5d4d2e[_0xd1a4('0x3e')]);_0x3dbf0d[_0xd1a4('0x40')]=_[_0xd1a4('0x41')](_0x3dbf0d[_0xd1a4('0x3d')],_0x3dbf0d[_0xd1a4('0x3e')]);_0x56d953[_0xd1a4('0x42')]=_[_0xd1a4('0x41')](_0x3dbf0d[_0xd1a4('0x3d')],qs[_0xd1a4('0x43')](_0x5d4d2e[_0xd1a4('0x3e')]['fields']));_0x56d953[_0xd1a4('0x42')]=_0x56d953[_0xd1a4('0x42')]['length']?_0x56d953[_0xd1a4('0x42')]:_0x3dbf0d[_0xd1a4('0x3d')];if(!_0x5d4d2e[_0xd1a4('0x3e')]['hasOwnProperty']('nolimit')){_0x56d953[_0xd1a4('0x2f')]=qs['limit'](_0x5d4d2e['query'][_0xd1a4('0x2f')]);_0x56d953[_0xd1a4('0x2e')]=qs[_0xd1a4('0x2e')](_0x5d4d2e['query'][_0xd1a4('0x2e')]);}_0x56d953['order']=qs[_0xd1a4('0x44')](_0x5d4d2e[_0xd1a4('0x3e')]['sort']);_0x56d953['where']=qs[_0xd1a4('0x40')](_['pick'](_0x5d4d2e[_0xd1a4('0x3e')],_0x3dbf0d[_0xd1a4('0x40')]));if(_0x5d4d2e[_0xd1a4('0x3e')][_0xd1a4('0x45')]){_0x56d953[_0xd1a4('0x46')]=_[_0xd1a4('0x47')](_0x56d953[_0xd1a4('0x46')],{'$or':_['map'](_0x54e0ab,function(_0x1b1c6e){if(_0x1b1c6e['type']!=='VIRTUAL'){var _0x61d299={};_0x61d299[_0x1b1c6e[_0xd1a4('0x37')]]={'$like':'%'+_0x5d4d2e[_0xd1a4('0x3e')][_0xd1a4('0x45')]+'%'};return _0x61d299;}})});}_0x56d953=_[_0xd1a4('0x47')]({},_0x56d953,_0x5d4d2e[_0xd1a4('0x48')]);var _0x2da28d={'where':_0x56d953['where']};return db['ChatGroup'][_0xd1a4('0x2d')](_0x2da28d)[_0xd1a4('0x20')](function(_0x337685){_0x246649[_0xd1a4('0x2d')]=_0x337685;if(_0x5d4d2e[_0xd1a4('0x3e')][_0xd1a4('0x49')]){_0x56d953['include']=[{'all':!![]}];}return db[_0xd1a4('0x3a')]['findAll'](_0x56d953);})[_0xd1a4('0x20')](function(_0x57bd73){_0x246649[_0xd1a4('0x4a')]=_0x57bd73;return _0x246649;})[_0xd1a4('0x20')](respondWithFilteredResult(_0x238b92,_0x56d953))[_0xd1a4('0x29')](handleError(_0x238b92,null));};exports[_0xd1a4('0x4b')]=function(_0x4655b8,_0x5c731f){var _0x2906e1={'raw':!![],'where':{'id':_0x4655b8['params']['id']}},_0x1eb543={};_0x1eb543['model']=_['keys'](db[_0xd1a4('0x3a')]['rawAttributes']);_0x1eb543[_0xd1a4('0x3e')]=_['keys'](_0x4655b8[_0xd1a4('0x3e')]);_0x1eb543[_0xd1a4('0x40')]=_['intersection'](_0x1eb543[_0xd1a4('0x3d')],_0x1eb543[_0xd1a4('0x3e')]);_0x2906e1[_0xd1a4('0x42')]=_[_0xd1a4('0x41')](_0x1eb543[_0xd1a4('0x3d')],qs[_0xd1a4('0x43')](_0x4655b8[_0xd1a4('0x3e')]['fields']));_0x2906e1['attributes']=_0x2906e1[_0xd1a4('0x42')][_0xd1a4('0x4c')]?_0x2906e1[_0xd1a4('0x42')]:_0x1eb543[_0xd1a4('0x3d')];if(_0x4655b8[_0xd1a4('0x3e')][_0xd1a4('0x49')]){_0x2906e1['include']=[{'all':!![]}];}_0x2906e1=_[_0xd1a4('0x47')]({},_0x2906e1,_0x4655b8[_0xd1a4('0x48')]);return db[_0xd1a4('0x3a')][_0xd1a4('0x4d')](_0x2906e1)['then'](handleEntityNotFound(_0x5c731f,null))['then'](respondWithResult(_0x5c731f,null))['catch'](handleError(_0x5c731f,null));};exports[_0xd1a4('0x4e')]=function(_0x30cfd9,_0x4a0dff){return db[_0xd1a4('0x3a')][_0xd1a4('0x4e')](_0x30cfd9[_0xd1a4('0x4f')],{})['then'](respondWithResult(_0x4a0dff,0xc9))[_0xd1a4('0x29')](handleError(_0x4a0dff,null));};exports['update']=function(_0xdb82d2,_0x300ad2){if(_0xdb82d2['body']['id']){delete _0xdb82d2['body']['id'];}return db[_0xd1a4('0x3a')][_0xd1a4('0x4d')]({'where':{'id':_0xdb82d2[_0xd1a4('0x50')]['id']}})[_0xd1a4('0x20')](handleEntityNotFound(_0x300ad2,null))['then'](saveUpdates(_0xdb82d2[_0xd1a4('0x4f')],null))['then'](respondWithResult(_0x300ad2,null))[_0xd1a4('0x29')](handleError(_0x300ad2,null));};exports[_0xd1a4('0x51')]=function(_0x1017b1,_0x223349){return db[_0xd1a4('0x3a')][_0xd1a4('0x4d')]({'where':{'id':_0x1017b1['params']['id']}})['then'](handleEntityNotFound(_0x223349,null))['then'](removeEntity(_0x223349,null))[_0xd1a4('0x29')](handleError(_0x223349,null));};exports[_0xd1a4('0x52')]=function(_0x3e9c71,_0x33d434){return db[_0xd1a4('0x3a')][_0xd1a4('0x52')]()[_0xd1a4('0x20')](respondWithResult(_0x33d434,null))[_0xd1a4('0x29')](handleError(_0x33d434,null));};exports[_0xd1a4('0x53')]=function(_0x39ea46,_0x4f948f,_0x1b0e3c){return db[_0xd1a4('0x54')][_0xd1a4('0x2d')]({'where':{'ChatGroupId':_0x39ea46['params']['id'],'ToId':_0x39ea46['user']['id'],'read':![]}})[_0xd1a4('0x20')](function(_0x5ce3e7){return{'id':_[_0xd1a4('0x55')](_0x39ea46['params']['id']),'count':_0x5ce3e7};})[_0xd1a4('0x20')](respondWithResult(_0x4f948f,null))[_0xd1a4('0x29')](handleError(_0x4f948f,null));};exports[_0xd1a4('0x56')]=function(_0x1539ec,_0x149ec3,_0x491a5e){return db[_0xd1a4('0x3a')]['find']({'where':{'id':_0x1539ec[_0xd1a4('0x50')]['id']}})[_0xd1a4('0x20')](handleEntityNotFound(_0x149ec3,null))['then'](function(_0x4f7190){if(_0x4f7190){return _0x4f7190[_0xd1a4('0x56')](_0x1539ec[_0xd1a4('0x4f')][_0xd1a4('0x57')],_[_0xd1a4('0x58')](_0x1539ec[_0xd1a4('0x4f')],[_0xd1a4('0x57'),'id'])||{});}})['then'](respondWithResult(_0x149ec3,null))[_0xd1a4('0x29')](handleError(_0x149ec3,null));};exports[_0xd1a4('0x59')]=function(_0xb2d3b2,_0x25b8dc,_0x3cb9b8){var _0xd30aa8={};var _0x396c32={};var _0x5724ec;var _0x14fa5f;return db[_0xd1a4('0x3a')]['findOne']({'where':{'id':_0xb2d3b2['params']['id']}})[_0xd1a4('0x20')](handleEntityNotFound(_0x25b8dc,null))[_0xd1a4('0x20')](function(_0x550dc0){if(_0x550dc0){_0x5724ec=_0x550dc0;_0x396c32[_0xd1a4('0x3d')]=_[_0xd1a4('0x3f')](db[_0xd1a4('0x5a')][_0xd1a4('0x3b')]);_0x396c32[_0xd1a4('0x3e')]=_[_0xd1a4('0x3f')](_0xb2d3b2[_0xd1a4('0x3e')]);_0x396c32['filters']=_[_0xd1a4('0x41')](_0x396c32[_0xd1a4('0x3d')],_0x396c32[_0xd1a4('0x3e')]);_0xd30aa8[_0xd1a4('0x42')]=_[_0xd1a4('0x41')](_0x396c32[_0xd1a4('0x3d')],qs[_0xd1a4('0x43')](_0xb2d3b2[_0xd1a4('0x3e')]['fields']));_0xd30aa8[_0xd1a4('0x42')]=_0xd30aa8['attributes']['length']?_0xd30aa8['attributes']:_0x396c32['model'];_0xd30aa8[_0xd1a4('0x5b')]=qs[_0xd1a4('0x44')](_0xb2d3b2[_0xd1a4('0x3e')][_0xd1a4('0x44')]);_0xd30aa8[_0xd1a4('0x46')]=qs[_0xd1a4('0x40')](_[_0xd1a4('0x5c')](_0xb2d3b2['query'],_0x396c32[_0xd1a4('0x40')]));if(_0xb2d3b2['query'][_0xd1a4('0x45')]){_0xd30aa8[_0xd1a4('0x46')]=_[_0xd1a4('0x47')](_0xd30aa8['where'],{'$or':_[_0xd1a4('0x39')](_0xd30aa8['attributes'],function(_0x178021){var _0x13aa7d={};_0x13aa7d[_0x178021]={'$like':'%'+_0xb2d3b2[_0xd1a4('0x3e')][_0xd1a4('0x45')]+'%'};return _0x13aa7d;})});}_0xd30aa8=_[_0xd1a4('0x47')]({},_0xd30aa8,_0xb2d3b2[_0xd1a4('0x48')]);return _0x5724ec[_0xd1a4('0x59')](_0xd30aa8);}})[_0xd1a4('0x20')](function(_0x36b919){if(_0x36b919){_0x14fa5f=_0x36b919[_0xd1a4('0x4c')];if(!_0xb2d3b2[_0xd1a4('0x3e')][_0xd1a4('0x5d')](_0xd1a4('0x5e'))){_0xd30aa8['limit']=qs[_0xd1a4('0x2f')](_0xb2d3b2[_0xd1a4('0x3e')][_0xd1a4('0x2f')]);_0xd30aa8['offset']=qs[_0xd1a4('0x2e')](_0xb2d3b2[_0xd1a4('0x3e')][_0xd1a4('0x2e')]);}return _0x5724ec['getMembers'](_0xd30aa8);}})[_0xd1a4('0x20')](function(_0x17f81c){if(_0x17f81c){return _0x17f81c?{'count':_0x14fa5f,'rows':_0x17f81c}:null;}})[_0xd1a4('0x20')](respondWithResult(_0x25b8dc,null))['catch'](handleError(_0x25b8dc,null));};exports[_0xd1a4('0x5f')]=function(_0x4b3026,_0x56e5d2,_0x90212f){return db[_0xd1a4('0x3a')][_0xd1a4('0x4d')]({'where':{'id':_0x4b3026[_0xd1a4('0x50')]['id']}})[_0xd1a4('0x20')](handleEntityNotFound(_0x56e5d2,null))[_0xd1a4('0x20')](function(_0x387944){if(_0x387944){return _0x387944['removeMembers'](_0x4b3026[_0xd1a4('0x3e')][_0xd1a4('0x57')]);}})[_0xd1a4('0x20')](respondWithStatusCode(_0x56e5d2,null))['catch'](handleError(_0x56e5d2,null));};exports['addMessage']=function(_0x288e35,_0x1702e9,_0x160a43){if(_0x288e35[_0xd1a4('0x4f')]['id']){delete _0x288e35[_0xd1a4('0x4f')]['id'];}return db[_0xd1a4('0x3a')][_0xd1a4('0x4d')]({'where':{'id':_0x288e35[_0xd1a4('0x50')]['id']}})[_0xd1a4('0x20')](handleEntityNotFound(_0x1702e9,null))[_0xd1a4('0x20')](function(_0xc049db){if(_0xc049db){_0x288e35[_0xd1a4('0x4f')]['ChatGroupId']=_0xc049db['id'];return db[_0xd1a4('0x54')][_0xd1a4('0x4e')](_0x288e35[_0xd1a4('0x4f')]);}})[_0xd1a4('0x20')](respondWithResult(_0x1702e9,null))[_0xd1a4('0x29')](handleError(_0x1702e9,null));};exports['getMessages']=function(_0x1fdeb8,_0x5c322a,_0x412d37){var _0x9430b8={};var _0x15954b={};var _0x32152f;var _0x496d09;return db[_0xd1a4('0x3a')][_0xd1a4('0x60')]({'where':{'id':_0x1fdeb8[_0xd1a4('0x50')]['id']}})[_0xd1a4('0x20')](handleEntityNotFound(_0x5c322a,null))['then'](function(_0x252624){if(_0x252624){_0x32152f=_0x252624;_0x15954b[_0xd1a4('0x3d')]=_['keys'](db[_0xd1a4('0x54')][_0xd1a4('0x3b')]);_0x15954b[_0xd1a4('0x3e')]=_[_0xd1a4('0x3f')](_0x1fdeb8[_0xd1a4('0x3e')]);_0x15954b[_0xd1a4('0x40')]=_[_0xd1a4('0x41')](_0x15954b[_0xd1a4('0x3d')],_0x15954b[_0xd1a4('0x3e')]);_0x9430b8[_0xd1a4('0x42')]=_[_0xd1a4('0x41')](_0x15954b['model'],qs[_0xd1a4('0x43')](_0x1fdeb8['query'][_0xd1a4('0x43')]));_0x9430b8['attributes']=_0x9430b8['attributes'][_0xd1a4('0x4c')]?_0x9430b8[_0xd1a4('0x42')]:_0x15954b[_0xd1a4('0x3d')];_0x9430b8[_0xd1a4('0x5b')]=qs['sort'](_0x1fdeb8['query'][_0xd1a4('0x44')]);_0x9430b8[_0xd1a4('0x46')]=qs[_0xd1a4('0x40')](_[_0xd1a4('0x5c')](_0x1fdeb8[_0xd1a4('0x3e')],_0x15954b[_0xd1a4('0x40')]));if(_0x1fdeb8[_0xd1a4('0x3e')]['filter']){_0x9430b8[_0xd1a4('0x46')]=_[_0xd1a4('0x47')](_0x9430b8[_0xd1a4('0x46')],{'$or':_['map'](_0x9430b8['attributes'],function(_0x20da32){var _0x19bae2={};_0x19bae2[_0x20da32]={'$like':'%'+_0x1fdeb8['query'][_0xd1a4('0x45')]+'%'};return _0x19bae2;})});}if(_0x1fdeb8[_0xd1a4('0x3e')][_0xd1a4('0x61')]){var _0x5b1e74=_0x1fdeb8[_0xd1a4('0x3e')][_0xd1a4('0x61')]['split'](',');var _0x458539={};_0x458539[_0x5b1e74[0x0]]={'$gte':moment(_0x5b1e74[0x1])['format'](_0xd1a4('0x62'))};_0x9430b8['where']=_[_0xd1a4('0x47')](_0x9430b8[_0xd1a4('0x46')],_0x458539);}_0x9430b8=_['merge']({},_0x9430b8,_0x1fdeb8[_0xd1a4('0x48')]);return _0x32152f[_0xd1a4('0x63')](_0x9430b8);}})[_0xd1a4('0x20')](function(_0xd45b){if(_0xd45b){_0x496d09=_0xd45b[_0xd1a4('0x4c')];if(!_0x1fdeb8[_0xd1a4('0x3e')][_0xd1a4('0x5d')](_0xd1a4('0x5e'))){_0x9430b8[_0xd1a4('0x2f')]=qs['limit'](_0x1fdeb8['query'][_0xd1a4('0x2f')]);_0x9430b8[_0xd1a4('0x2e')]=qs[_0xd1a4('0x2e')](_0x1fdeb8[_0xd1a4('0x3e')][_0xd1a4('0x2e')]);}return _0x32152f[_0xd1a4('0x63')](_0x9430b8);}})[_0xd1a4('0x20')](function(_0x4bfa90){if(_0x4bfa90){return _0x4bfa90?{'count':_0x496d09,'rows':_0x4bfa90}:null;}})[_0xd1a4('0x20')](respondWithResult(_0x5c322a,null))['catch'](handleError(_0x5c322a,null));};