Built motion from commit (unavailable).|2.5.3
[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 _0xae22=['query','filters','attributes','intersection','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','name','includeAll','include','findAll','show','params','rawAttributes','keys','find','create','update','body','describe','user','toInteger','ids','omit','findOne','User','options','getMembers','removeMembers','addMessage','ChatInternalMessage','getMessages','$gte','split','YYYY-MM-DD\x20HH:mm:ss','eml-format','rimraf','zip-dir','moment','bluebird','mustache','util','path','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./chatGroup.socket','jayson/promise','client','http','test','Sequelize','ValidationError','request','info','ChatGroup,\x20%s,\x20%s','request\x20sent','debug','ChatGroup,\x20%s,\x20%s,\x20%s','stringify','error','message','result','catch','sendStatus','status','json','count','offset','limit','set','Content-Range','apply','reject','save','destroy','then','end','stack','send','index','map','ChatGroup','fieldName','type','key','model'];(function(_0x199572,_0x33e667){var _0x13cfa3=function(_0x53c075){while(--_0x53c075){_0x199572['push'](_0x199572['shift']());}};_0x13cfa3(++_0x33e667);}(_0xae22,0x10d));var _0x2ae2=function(_0x4d8ed9,_0x2ae284){_0x4d8ed9=_0x4d8ed9-0x0;var _0x1e2140=_0xae22[_0x4d8ed9];return _0x1e2140;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x2ae2('0x0'));var rimraf=require(_0x2ae2('0x1'));var zipdir=require(_0x2ae2('0x2'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x2ae2('0x3'));var BPromise=require(_0x2ae2('0x4'));var Mustache=require(_0x2ae2('0x5'));var util=require(_0x2ae2('0x6'));var path=require(_0x2ae2('0x7'));var sox=require('sox');var csv=require(_0x2ae2('0x8'));var ejs=require(_0x2ae2('0x9'));var fs=require('fs');var _=require(_0x2ae2('0xa'));var squel=require(_0x2ae2('0xb'));var crypto=require(_0x2ae2('0xc'));var jsforce=require(_0x2ae2('0xd'));var deskjs=require(_0x2ae2('0xe'));var toCsv=require(_0x2ae2('0x8'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x2ae2('0xf'));var authService=require(_0x2ae2('0x10'));var qs=require(_0x2ae2('0x11'));var as=require(_0x2ae2('0x12'));var hardwareService=require(_0x2ae2('0x13'));var logger=require(_0x2ae2('0x14'))(_0x2ae2('0x15'));var utils=require(_0x2ae2('0x16'));var config=require(_0x2ae2('0x17'));var db=require(_0x2ae2('0x18'))['db'];config[_0x2ae2('0x19')]=_[_0x2ae2('0x1a')](config['redis'],{'host':_0x2ae2('0x1b'),'port':0x18eb});var socket=require(_0x2ae2('0x1c'))(new Redis(config['redis']));require(_0x2ae2('0x1d'))['register'](socket);var jayson=require(_0x2ae2('0x1e'));var client=jayson[_0x2ae2('0x1f')][_0x2ae2('0x20')]({'port':0x232a});function checkPasswordPattern(_0x42d3d3,_0x2e9b7a,_0x40f737){if(_0x40f737){var _0x4734ac=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x4734ac[_0x2ae2('0x21')](_0x2e9b7a)){return _0x42d3d3;}else{throw new db[(_0x2ae2('0x22'))][(_0x2ae2('0x23'))]('The\x20password\x20must\x20be\x20at\x20least\x208\x20characters\x20long\x20and\x20have\x201\x20lowercase\x20character,\x201\x20uppercase\x20character,\x201\x20number\x20and\x201\x20special\x20character\x20~!@#$%^&-_=+[{]}.');}}else{return _0x42d3d3;}}function respondWithRpcPromise(_0x42f974,_0x4dfad8,_0x1853fe,_0x342c48){return new BPromise(function(_0x745184,_0x487acb){var _0x41b7e6=_0x342c48||client;return _0x41b7e6[_0x2ae2('0x24')](_0x42f974,_0x1853fe)['then'](function(_0x21237c){logger[_0x2ae2('0x25')](_0x2ae2('0x26'),_0x4dfad8,_0x2ae2('0x27'));logger[_0x2ae2('0x28')](_0x2ae2('0x29'),_0x4dfad8,_0x2ae2('0x27'),JSON[_0x2ae2('0x2a')](_0x21237c));if(_0x21237c['error']){if(_0x21237c['error']['code']===0x1f4){logger[_0x2ae2('0x2b')]('ChatGroup,\x20%s,\x20%s',_0x4dfad8,_0x21237c[_0x2ae2('0x2b')][_0x2ae2('0x2c')]);return _0x487acb(_0x21237c['error']['message']);}logger[_0x2ae2('0x2b')](_0x2ae2('0x26'),_0x4dfad8,_0x21237c['error'][_0x2ae2('0x2c')]);return _0x745184(_0x21237c[_0x2ae2('0x2b')]['message']);}else{logger[_0x2ae2('0x25')](_0x2ae2('0x26'),_0x4dfad8,'request\x20sent');_0x745184(_0x21237c[_0x2ae2('0x2d')]['message']);}})[_0x2ae2('0x2e')](function(_0x10218b){logger[_0x2ae2('0x2b')]('ChatGroup,\x20%s,\x20%s',_0x4dfad8,_0x10218b);_0x487acb(_0x10218b);});});}function respondWithStatusCode(_0x515b58,_0x56c114){_0x56c114=_0x56c114||0xcc;return function(_0x5a5055){if(_0x5a5055){return _0x515b58[_0x2ae2('0x2f')](_0x56c114);}return _0x515b58[_0x2ae2('0x30')](_0x56c114)['end']();};}function respondWithResult(_0x400751,_0x2f8c50){_0x2f8c50=_0x2f8c50||0xc8;return function(_0x285238){if(_0x285238){return _0x400751[_0x2ae2('0x30')](_0x2f8c50)[_0x2ae2('0x31')](_0x285238);}};}function respondWithFilteredResult(_0x389783,_0x1a7e9f){return function(_0x7e464a){if(_0x7e464a){var _0x14d1c6=_0x7e464a[_0x2ae2('0x32')],_0x2888dd=_0x1a7e9f[_0x2ae2('0x33')],_0x525cce=_0x1a7e9f[_0x2ae2('0x33')]+_0x1a7e9f[_0x2ae2('0x34')],_0x14cf0f;if(_0x525cce>=_0x14d1c6){_0x525cce=_0x14d1c6;_0x14cf0f=0xc8;}else{_0x14cf0f=0xce;}_0x389783['status'](_0x14cf0f);return _0x389783[_0x2ae2('0x35')](_0x2ae2('0x36'),_0x2888dd+'-'+_0x525cce+'/'+_0x14d1c6)[_0x2ae2('0x31')](_0x7e464a);}return null;};}function patchUpdates(_0x1f16ae){return function(_0x456d91){try{jsonpatch[_0x2ae2('0x37')](_0x456d91,_0x1f16ae,!![]);}catch(_0x1510c3){return BPromise[_0x2ae2('0x38')](_0x1510c3);}return _0x456d91[_0x2ae2('0x39')]();};}function saveUpdates(_0x2d848e,_0x2d5654){return function(_0x50e7f8){if(_0x50e7f8){return _0x50e7f8['update'](_0x2d848e)['then'](function(_0xc9500b){return _0xc9500b;});}return null;};}function removeEntity(_0x26152d,_0x167b15){return function(_0xbf89e2){if(_0xbf89e2){return _0xbf89e2[_0x2ae2('0x3a')]()[_0x2ae2('0x3b')](function(){_0x26152d[_0x2ae2('0x30')](0xcc)[_0x2ae2('0x3c')]();});}};}function handleEntityNotFound(_0x25c126,_0x5346d8){return function(_0xeac33c){if(!_0xeac33c){_0x25c126[_0x2ae2('0x2f')](0x194);}return _0xeac33c;};}function handleError(_0x4e4340,_0x565e8d){_0x565e8d=_0x565e8d||0x1f4;return function(_0x5c5a22){logger[_0x2ae2('0x2b')](_0x5c5a22[_0x2ae2('0x3d')]);if(_0x5c5a22['name']){delete _0x5c5a22['name'];}_0x4e4340[_0x2ae2('0x30')](_0x565e8d)[_0x2ae2('0x3e')](_0x5c5a22);};}exports[_0x2ae2('0x3f')]=function(_0x13ef22,_0x4a8ee7){var _0x1a0fa3={},_0x4e2649={},_0x9391db={'count':0x0,'rows':[]};var _0x5b3f47=_[_0x2ae2('0x40')](db[_0x2ae2('0x41')]['rawAttributes'],function(_0x11b8ad){return{'name':_0x11b8ad[_0x2ae2('0x42')],'type':_0x11b8ad[_0x2ae2('0x43')][_0x2ae2('0x44')]};});_0x4e2649[_0x2ae2('0x45')]=_[_0x2ae2('0x40')](_0x5b3f47,'name');_0x4e2649[_0x2ae2('0x46')]=_['keys'](_0x13ef22[_0x2ae2('0x46')]);_0x4e2649[_0x2ae2('0x47')]=_['intersection'](_0x4e2649[_0x2ae2('0x45')],_0x4e2649[_0x2ae2('0x46')]);_0x1a0fa3[_0x2ae2('0x48')]=_[_0x2ae2('0x49')](_0x4e2649[_0x2ae2('0x45')],qs[_0x2ae2('0x4a')](_0x13ef22[_0x2ae2('0x46')][_0x2ae2('0x4a')]));_0x1a0fa3[_0x2ae2('0x48')]=_0x1a0fa3[_0x2ae2('0x48')][_0x2ae2('0x4b')]?_0x1a0fa3[_0x2ae2('0x48')]:_0x4e2649[_0x2ae2('0x45')];if(!_0x13ef22[_0x2ae2('0x46')][_0x2ae2('0x4c')](_0x2ae2('0x4d'))){_0x1a0fa3[_0x2ae2('0x34')]=qs[_0x2ae2('0x34')](_0x13ef22[_0x2ae2('0x46')][_0x2ae2('0x34')]);_0x1a0fa3['offset']=qs[_0x2ae2('0x33')](_0x13ef22[_0x2ae2('0x46')]['offset']);}_0x1a0fa3[_0x2ae2('0x4e')]=qs[_0x2ae2('0x4f')](_0x13ef22[_0x2ae2('0x46')][_0x2ae2('0x4f')]);_0x1a0fa3[_0x2ae2('0x50')]=qs[_0x2ae2('0x47')](_[_0x2ae2('0x51')](_0x13ef22[_0x2ae2('0x46')],_0x4e2649[_0x2ae2('0x47')]),_0x5b3f47);if(_0x13ef22['query'][_0x2ae2('0x52')]){_0x1a0fa3[_0x2ae2('0x50')]=_[_0x2ae2('0x53')](_0x1a0fa3[_0x2ae2('0x50')],{'$or':_[_0x2ae2('0x40')](_0x5b3f47,function(_0xfa6d82){if(_0xfa6d82[_0x2ae2('0x43')]!==_0x2ae2('0x54')){var _0x39ae9c={};_0x39ae9c[_0xfa6d82[_0x2ae2('0x55')]]={'$like':'%'+_0x13ef22['query'][_0x2ae2('0x52')]+'%'};return _0x39ae9c;}})});}_0x1a0fa3=_[_0x2ae2('0x53')]({},_0x1a0fa3,_0x13ef22['options']);var _0xb0a1e6={'where':_0x1a0fa3[_0x2ae2('0x50')]};return db['ChatGroup']['count'](_0xb0a1e6)['then'](function(_0x2d51c2){_0x9391db[_0x2ae2('0x32')]=_0x2d51c2;if(_0x13ef22[_0x2ae2('0x46')][_0x2ae2('0x56')]){_0x1a0fa3[_0x2ae2('0x57')]=[{'all':!![]}];}return db[_0x2ae2('0x41')][_0x2ae2('0x58')](_0x1a0fa3);})[_0x2ae2('0x3b')](function(_0x28c164){_0x9391db['rows']=_0x28c164;return _0x9391db;})[_0x2ae2('0x3b')](respondWithFilteredResult(_0x4a8ee7,_0x1a0fa3))['catch'](handleError(_0x4a8ee7,null));};exports[_0x2ae2('0x59')]=function(_0xd42137,_0x90aad6){var _0x1736e4={'raw':!![],'where':{'id':_0xd42137[_0x2ae2('0x5a')]['id']}},_0x24284d={};_0x24284d[_0x2ae2('0x45')]=_['keys'](db[_0x2ae2('0x41')][_0x2ae2('0x5b')]);_0x24284d['query']=_[_0x2ae2('0x5c')](_0xd42137[_0x2ae2('0x46')]);_0x24284d[_0x2ae2('0x47')]=_['intersection'](_0x24284d[_0x2ae2('0x45')],_0x24284d[_0x2ae2('0x46')]);_0x1736e4['attributes']=_['intersection'](_0x24284d['model'],qs['fields'](_0xd42137[_0x2ae2('0x46')][_0x2ae2('0x4a')]));_0x1736e4[_0x2ae2('0x48')]=_0x1736e4[_0x2ae2('0x48')][_0x2ae2('0x4b')]?_0x1736e4[_0x2ae2('0x48')]:_0x24284d[_0x2ae2('0x45')];if(_0xd42137[_0x2ae2('0x46')][_0x2ae2('0x56')]){_0x1736e4[_0x2ae2('0x57')]=[{'all':!![]}];}_0x1736e4=_[_0x2ae2('0x53')]({},_0x1736e4,_0xd42137['options']);return db[_0x2ae2('0x41')][_0x2ae2('0x5d')](_0x1736e4)[_0x2ae2('0x3b')](handleEntityNotFound(_0x90aad6,null))[_0x2ae2('0x3b')](respondWithResult(_0x90aad6,null))['catch'](handleError(_0x90aad6,null));};exports[_0x2ae2('0x5e')]=function(_0x23ecad,_0x166dc2){return db[_0x2ae2('0x41')][_0x2ae2('0x5e')](_0x23ecad['body'],{})[_0x2ae2('0x3b')](respondWithResult(_0x166dc2,0xc9))[_0x2ae2('0x2e')](handleError(_0x166dc2,null));};exports[_0x2ae2('0x5f')]=function(_0x2e4259,_0xc90c5f){if(_0x2e4259[_0x2ae2('0x60')]['id']){delete _0x2e4259['body']['id'];}return db[_0x2ae2('0x41')][_0x2ae2('0x5d')]({'where':{'id':_0x2e4259['params']['id']}})['then'](handleEntityNotFound(_0xc90c5f,null))[_0x2ae2('0x3b')](saveUpdates(_0x2e4259[_0x2ae2('0x60')],null))[_0x2ae2('0x3b')](respondWithResult(_0xc90c5f,null))[_0x2ae2('0x2e')](handleError(_0xc90c5f,null));};exports[_0x2ae2('0x3a')]=function(_0x46ec97,_0x70067a){return db[_0x2ae2('0x41')][_0x2ae2('0x5d')]({'where':{'id':_0x46ec97['params']['id']}})[_0x2ae2('0x3b')](handleEntityNotFound(_0x70067a,null))[_0x2ae2('0x3b')](removeEntity(_0x70067a,null))[_0x2ae2('0x2e')](handleError(_0x70067a,null));};exports[_0x2ae2('0x61')]=function(_0x39f1cf,_0x350733){return db[_0x2ae2('0x41')]['describe']()['then'](respondWithResult(_0x350733,null))[_0x2ae2('0x2e')](handleError(_0x350733,null));};exports['getUnread']=function(_0xea47aa,_0x127381,_0x48a6d5){return db['ChatInternalMessage'][_0x2ae2('0x32')]({'where':{'ChatGroupId':_0xea47aa['params']['id'],'ToId':_0xea47aa[_0x2ae2('0x62')]['id'],'read':![]}})[_0x2ae2('0x3b')](function(_0x3ff5f7){return{'id':_[_0x2ae2('0x63')](_0xea47aa['params']['id']),'count':_0x3ff5f7};})['then'](respondWithResult(_0x127381,null))[_0x2ae2('0x2e')](handleError(_0x127381,null));};exports['addMembers']=function(_0x1b7c19,_0xbb7f29,_0xb33bf0){return db[_0x2ae2('0x41')]['find']({'where':{'id':_0x1b7c19[_0x2ae2('0x5a')]['id']}})[_0x2ae2('0x3b')](handleEntityNotFound(_0xbb7f29,null))[_0x2ae2('0x3b')](function(_0x1ce737){if(_0x1ce737){return _0x1ce737['addMembers'](_0x1b7c19['body'][_0x2ae2('0x64')],_[_0x2ae2('0x65')](_0x1b7c19[_0x2ae2('0x60')],[_0x2ae2('0x64'),'id'])||{});}})[_0x2ae2('0x3b')](respondWithResult(_0xbb7f29,null))[_0x2ae2('0x2e')](handleError(_0xbb7f29,null));};exports['getMembers']=function(_0x98f584,_0x22ab28,_0x572541){var _0x236e54={};var _0x40bbf0={};var _0x573c96;var _0x1cddc9;return db[_0x2ae2('0x41')][_0x2ae2('0x66')]({'where':{'id':_0x98f584['params']['id']}})[_0x2ae2('0x3b')](handleEntityNotFound(_0x22ab28,null))[_0x2ae2('0x3b')](function(_0x314343){if(_0x314343){_0x573c96=_0x314343;_0x40bbf0[_0x2ae2('0x45')]=_[_0x2ae2('0x5c')](db[_0x2ae2('0x67')]['rawAttributes']);_0x40bbf0[_0x2ae2('0x46')]=_[_0x2ae2('0x5c')](_0x98f584[_0x2ae2('0x46')]);_0x40bbf0[_0x2ae2('0x47')]=_[_0x2ae2('0x49')](_0x40bbf0[_0x2ae2('0x45')],_0x40bbf0[_0x2ae2('0x46')]);_0x236e54['attributes']=_[_0x2ae2('0x49')](_0x40bbf0[_0x2ae2('0x45')],qs['fields'](_0x98f584['query'][_0x2ae2('0x4a')]));_0x236e54[_0x2ae2('0x48')]=_0x236e54[_0x2ae2('0x48')][_0x2ae2('0x4b')]?_0x236e54[_0x2ae2('0x48')]:_0x40bbf0[_0x2ae2('0x45')];_0x236e54[_0x2ae2('0x4e')]=qs['sort'](_0x98f584[_0x2ae2('0x46')]['sort']);_0x236e54[_0x2ae2('0x50')]=qs[_0x2ae2('0x47')](_['pick'](_0x98f584[_0x2ae2('0x46')],_0x40bbf0[_0x2ae2('0x47')]));if(_0x98f584[_0x2ae2('0x46')][_0x2ae2('0x52')]){_0x236e54[_0x2ae2('0x50')]=_[_0x2ae2('0x53')](_0x236e54[_0x2ae2('0x50')],{'$or':_[_0x2ae2('0x40')](_0x236e54[_0x2ae2('0x48')],function(_0x166669){var _0x491ced={};_0x491ced[_0x166669]={'$like':'%'+_0x98f584[_0x2ae2('0x46')][_0x2ae2('0x52')]+'%'};return _0x491ced;})});}_0x236e54=_[_0x2ae2('0x53')]({},_0x236e54,_0x98f584[_0x2ae2('0x68')]);return _0x573c96[_0x2ae2('0x69')](_0x236e54);}})[_0x2ae2('0x3b')](function(_0x47684a){if(_0x47684a){_0x1cddc9=_0x47684a[_0x2ae2('0x4b')];if(!_0x98f584['query'][_0x2ae2('0x4c')](_0x2ae2('0x4d'))){_0x236e54[_0x2ae2('0x34')]=qs[_0x2ae2('0x34')](_0x98f584[_0x2ae2('0x46')][_0x2ae2('0x34')]);_0x236e54['offset']=qs[_0x2ae2('0x33')](_0x98f584[_0x2ae2('0x46')][_0x2ae2('0x33')]);}return _0x573c96['getMembers'](_0x236e54);}})[_0x2ae2('0x3b')](function(_0x556925){if(_0x556925){return _0x556925?{'count':_0x1cddc9,'rows':_0x556925}:null;}})['then'](respondWithResult(_0x22ab28,null))[_0x2ae2('0x2e')](handleError(_0x22ab28,null));};exports[_0x2ae2('0x6a')]=function(_0x486849,_0x458620,_0x170628){return db[_0x2ae2('0x41')][_0x2ae2('0x5d')]({'where':{'id':_0x486849[_0x2ae2('0x5a')]['id']}})['then'](handleEntityNotFound(_0x458620,null))[_0x2ae2('0x3b')](function(_0x509fe6){if(_0x509fe6){return _0x509fe6[_0x2ae2('0x6a')](_0x486849[_0x2ae2('0x46')]['ids']);}})[_0x2ae2('0x3b')](respondWithStatusCode(_0x458620,null))[_0x2ae2('0x2e')](handleError(_0x458620,null));};exports[_0x2ae2('0x6b')]=function(_0x55d064,_0x127f90,_0x41d5a8){if(_0x55d064[_0x2ae2('0x60')]['id']){delete _0x55d064[_0x2ae2('0x60')]['id'];}return db[_0x2ae2('0x41')][_0x2ae2('0x5d')]({'where':{'id':_0x55d064[_0x2ae2('0x5a')]['id']}})[_0x2ae2('0x3b')](handleEntityNotFound(_0x127f90,null))[_0x2ae2('0x3b')](function(_0x11b0ba){if(_0x11b0ba){_0x55d064[_0x2ae2('0x60')]['ChatGroupId']=_0x11b0ba['id'];return db[_0x2ae2('0x6c')][_0x2ae2('0x5e')](_0x55d064[_0x2ae2('0x60')]);}})[_0x2ae2('0x3b')](respondWithResult(_0x127f90,null))[_0x2ae2('0x2e')](handleError(_0x127f90,null));};exports[_0x2ae2('0x6d')]=function(_0x1a786e,_0x1a830a,_0xd071b){var _0x29331e={};var _0x2795a2={};var _0x3e51d5;var _0x233826;return db[_0x2ae2('0x41')]['findOne']({'where':{'id':_0x1a786e[_0x2ae2('0x5a')]['id']}})[_0x2ae2('0x3b')](handleEntityNotFound(_0x1a830a,null))[_0x2ae2('0x3b')](function(_0x1d4dfe){if(_0x1d4dfe){_0x3e51d5=_0x1d4dfe;_0x2795a2['model']=_['keys'](db[_0x2ae2('0x6c')][_0x2ae2('0x5b')]);_0x2795a2['query']=_[_0x2ae2('0x5c')](_0x1a786e[_0x2ae2('0x46')]);_0x2795a2[_0x2ae2('0x47')]=_[_0x2ae2('0x49')](_0x2795a2[_0x2ae2('0x45')],_0x2795a2[_0x2ae2('0x46')]);_0x29331e['attributes']=_[_0x2ae2('0x49')](_0x2795a2[_0x2ae2('0x45')],qs['fields'](_0x1a786e['query'][_0x2ae2('0x4a')]));_0x29331e[_0x2ae2('0x48')]=_0x29331e['attributes'][_0x2ae2('0x4b')]?_0x29331e[_0x2ae2('0x48')]:_0x2795a2['model'];_0x29331e[_0x2ae2('0x4e')]=qs[_0x2ae2('0x4f')](_0x1a786e[_0x2ae2('0x46')]['sort']);_0x29331e[_0x2ae2('0x50')]=qs['filters'](_[_0x2ae2('0x51')](_0x1a786e[_0x2ae2('0x46')],_0x2795a2['filters']));if(_0x1a786e[_0x2ae2('0x46')][_0x2ae2('0x52')]){_0x29331e['where']=_['merge'](_0x29331e['where'],{'$or':_[_0x2ae2('0x40')](_0x29331e['attributes'],function(_0x50e67){var _0x57e505={};_0x57e505[_0x50e67]={'$like':'%'+_0x1a786e['query'][_0x2ae2('0x52')]+'%'};return _0x57e505;})});}if(_0x1a786e[_0x2ae2('0x46')][_0x2ae2('0x6e')]){var _0x4135f9=_0x1a786e[_0x2ae2('0x46')][_0x2ae2('0x6e')][_0x2ae2('0x6f')](',');var _0x3cce52={};_0x3cce52[_0x4135f9[0x0]]={'$gte':moment(_0x4135f9[0x1])['format'](_0x2ae2('0x70'))};_0x29331e[_0x2ae2('0x50')]=_[_0x2ae2('0x53')](_0x29331e[_0x2ae2('0x50')],_0x3cce52);}_0x29331e=_['merge']({},_0x29331e,_0x1a786e['options']);return _0x3e51d5[_0x2ae2('0x6d')](_0x29331e);}})['then'](function(_0x20ada3){if(_0x20ada3){_0x233826=_0x20ada3[_0x2ae2('0x4b')];if(!_0x1a786e[_0x2ae2('0x46')][_0x2ae2('0x4c')](_0x2ae2('0x4d'))){_0x29331e[_0x2ae2('0x34')]=qs[_0x2ae2('0x34')](_0x1a786e[_0x2ae2('0x46')]['limit']);_0x29331e[_0x2ae2('0x33')]=qs[_0x2ae2('0x33')](_0x1a786e[_0x2ae2('0x46')][_0x2ae2('0x33')]);}return _0x3e51d5[_0x2ae2('0x6d')](_0x29331e);}})['then'](function(_0x4504c1){if(_0x4504c1){return _0x4504c1?{'count':_0x233826,'rows':_0x4504c1}:null;}})['then'](respondWithResult(_0x1a830a,null))[_0x2ae2('0x2e')](handleError(_0x1a830a,null));};