Built motion from commit 3e059bc2.|2.5.32
[motion2.git] / server / api / trigger / trigger.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 _0x4a55=['path','to-csv','ejs','fs-extra','lodash','crypto','jsforce','desk.js','querystring','ioredis','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','end','status','json','offset','undefined','count','set','Content-Range','apply','reject','save','update','then','destroy','get','Triggers','UserProfileResource','error','stack','name','send','index','map','rawAttributes','fieldName','type','key','model','query','keys','filters','attributes','fields','length','hasOwnProperty','limit','order','sort','pick','filter','where','merge','options','Trigger','includeAll','findAll','rows','catch','show','params','intersection','include','create','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','find','userProfileId','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','TriggerAllId','Condition','addAnyCondition','findOne','getAllConditions','nolimit','getAnyConditions','addAction','TriggerId','Action','getActions','eml-format','rimraf','fast-json-patch','moment','bluebird','mustache','util'];(function(_0x172818,_0x104932){var _0x4eb39c=function(_0x2a2095){while(--_0x2a2095){_0x172818['push'](_0x172818['shift']());}};_0x4eb39c(++_0x104932);}(_0x4a55,0x179));var _0x54a5=function(_0x4a3898,_0x4c9853){_0x4a3898=_0x4a3898-0x0;var _0x25ceb0=_0x4a55[_0x4a3898];return _0x25ceb0;};'use strict';var emlformat=require(_0x54a5('0x0'));var rimraf=require(_0x54a5('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x54a5('0x2'));var rp=require('request-promise');var moment=require(_0x54a5('0x3'));var BPromise=require(_0x54a5('0x4'));var Mustache=require(_0x54a5('0x5'));var util=require(_0x54a5('0x6'));var path=require(_0x54a5('0x7'));var sox=require('sox');var csv=require(_0x54a5('0x8'));var ejs=require(_0x54a5('0x9'));var fs=require('fs');var fs_extra=require(_0x54a5('0xa'));var _=require(_0x54a5('0xb'));var squel=require('squel');var crypto=require(_0x54a5('0xc'));var jsforce=require(_0x54a5('0xd'));var deskjs=require(_0x54a5('0xe'));var toCsv=require(_0x54a5('0x8'));var querystring=require(_0x54a5('0xf'));var Papa=require('papaparse');var Redis=require(_0x54a5('0x10'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0x54a5('0x11'));var hardwareService=require(_0x54a5('0x12'));var logger=require(_0x54a5('0x13'))(_0x54a5('0x14'));var utils=require(_0x54a5('0x15'));var config=require('../../config/environment');var licenseUtil=require(_0x54a5('0x16'));var db=require(_0x54a5('0x17'))['db'];function respondWithStatusCode(_0x17fc69,_0x1c57ff){_0x1c57ff=_0x1c57ff||0xcc;return function(_0x45e4ba){if(_0x45e4ba){return _0x17fc69[_0x54a5('0x18')](_0x1c57ff);}return _0x17fc69['status'](_0x1c57ff)[_0x54a5('0x19')]();};}function respondWithResult(_0x17d78d,_0x2fea7b){_0x2fea7b=_0x2fea7b||0xc8;return function(_0xd311d4){if(_0xd311d4){return _0x17d78d[_0x54a5('0x1a')](_0x2fea7b)[_0x54a5('0x1b')](_0xd311d4);}};}function respondWithFilteredResult(_0x36342c,_0x2d1fce){return function(_0x533317){if(_0x533317){var _0x4d3916=typeof _0x2d1fce[_0x54a5('0x1c')]==='undefined'&&typeof _0x2d1fce['limit']===_0x54a5('0x1d');var _0x498742=_0x533317[_0x54a5('0x1e')];var _0x5dcd77=_0x4d3916?0x0:_0x2d1fce[_0x54a5('0x1c')];var _0x42de1c=_0x4d3916?_0x533317['count']:_0x2d1fce[_0x54a5('0x1c')]+_0x2d1fce['limit'];var _0x168c6c;if(_0x42de1c>=_0x498742){_0x42de1c=_0x498742;_0x168c6c=0xc8;}else{_0x168c6c=0xce;}_0x36342c[_0x54a5('0x1a')](_0x168c6c);return _0x36342c[_0x54a5('0x1f')](_0x54a5('0x20'),_0x5dcd77+'-'+_0x42de1c+'/'+_0x498742)['json'](_0x533317);}return null;};}function patchUpdates(_0xe0eab0){return function(_0x5f3e79){try{jsonpatch[_0x54a5('0x21')](_0x5f3e79,_0xe0eab0,!![]);}catch(_0x3eb809){return BPromise[_0x54a5('0x22')](_0x3eb809);}return _0x5f3e79[_0x54a5('0x23')]();};}function saveUpdates(_0x24dc64,_0x58c4f9){return function(_0x4c0752){if(_0x4c0752){return _0x4c0752[_0x54a5('0x24')](_0x24dc64)[_0x54a5('0x25')](function(_0x309313){return _0x309313;});}return null;};}function removeEntity(_0x4e9938,_0x5f11f4){return function(_0x10f7ba){if(_0x10f7ba){return _0x10f7ba[_0x54a5('0x26')]()[_0x54a5('0x25')](function(){var _0x356f59=_0x10f7ba[_0x54a5('0x27')]({'plain':!![]});var _0x130079=_0x54a5('0x28');return db[_0x54a5('0x29')][_0x54a5('0x26')]({'where':{'type':_0x130079,'resourceId':_0x356f59['id']}})[_0x54a5('0x25')](function(){return _0x10f7ba;});})[_0x54a5('0x25')](function(){_0x4e9938['status'](0xcc)[_0x54a5('0x19')]();});}};}function handleEntityNotFound(_0xe55358,_0x4255e0){return function(_0x2e532e){if(!_0x2e532e){_0xe55358[_0x54a5('0x18')](0x194);}return _0x2e532e;};}function handleError(_0x39cc4c,_0x136f86){_0x136f86=_0x136f86||0x1f4;return function(_0x50169c){logger[_0x54a5('0x2a')](_0x50169c[_0x54a5('0x2b')]);if(_0x50169c[_0x54a5('0x2c')]){delete _0x50169c[_0x54a5('0x2c')];}_0x39cc4c[_0x54a5('0x1a')](_0x136f86)[_0x54a5('0x2d')](_0x50169c);};}exports[_0x54a5('0x2e')]=function(_0x5f23ab,_0x25261f){var _0x55252f={},_0x2f166f={},_0x3ad538={'count':0x0,'rows':[]};var _0x2577bb=_[_0x54a5('0x2f')](db['Trigger'][_0x54a5('0x30')],function(_0x64c8b8){return{'name':_0x64c8b8[_0x54a5('0x31')],'type':_0x64c8b8[_0x54a5('0x32')][_0x54a5('0x33')]};});_0x2f166f[_0x54a5('0x34')]=_[_0x54a5('0x2f')](_0x2577bb,'name');_0x2f166f[_0x54a5('0x35')]=_[_0x54a5('0x36')](_0x5f23ab[_0x54a5('0x35')]);_0x2f166f[_0x54a5('0x37')]=_['intersection'](_0x2f166f[_0x54a5('0x34')],_0x2f166f[_0x54a5('0x35')]);_0x55252f[_0x54a5('0x38')]=_['intersection'](_0x2f166f[_0x54a5('0x34')],qs[_0x54a5('0x39')](_0x5f23ab[_0x54a5('0x35')][_0x54a5('0x39')]));_0x55252f[_0x54a5('0x38')]=_0x55252f[_0x54a5('0x38')][_0x54a5('0x3a')]?_0x55252f['attributes']:_0x2f166f[_0x54a5('0x34')];if(!_0x5f23ab[_0x54a5('0x35')][_0x54a5('0x3b')]('nolimit')){_0x55252f[_0x54a5('0x3c')]=qs[_0x54a5('0x3c')](_0x5f23ab[_0x54a5('0x35')][_0x54a5('0x3c')]);_0x55252f['offset']=qs[_0x54a5('0x1c')](_0x5f23ab[_0x54a5('0x35')][_0x54a5('0x1c')]);}_0x55252f[_0x54a5('0x3d')]=qs[_0x54a5('0x3e')](_0x5f23ab['query']['sort']);_0x55252f['where']=qs[_0x54a5('0x37')](_[_0x54a5('0x3f')](_0x5f23ab[_0x54a5('0x35')],_0x2f166f[_0x54a5('0x37')]),_0x2577bb);if(_0x5f23ab[_0x54a5('0x35')][_0x54a5('0x40')]){_0x55252f[_0x54a5('0x41')]=_[_0x54a5('0x42')](_0x55252f['where'],{'$or':_[_0x54a5('0x2f')](_0x2577bb,function(_0x2951f1){if(_0x2951f1[_0x54a5('0x32')]!=='VIRTUAL'){var _0x1a07aa={};_0x1a07aa[_0x2951f1[_0x54a5('0x2c')]]={'$like':'%'+_0x5f23ab[_0x54a5('0x35')][_0x54a5('0x40')]+'%'};return _0x1a07aa;}})});}_0x55252f=_[_0x54a5('0x42')]({},_0x55252f,_0x5f23ab[_0x54a5('0x43')]);var _0x4638b8={'where':_0x55252f[_0x54a5('0x41')]};return db[_0x54a5('0x44')]['count'](_0x4638b8)[_0x54a5('0x25')](function(_0x456b97){_0x3ad538['count']=_0x456b97;if(_0x5f23ab[_0x54a5('0x35')][_0x54a5('0x45')]){_0x55252f['include']=[{'all':!![]}];}return db[_0x54a5('0x44')][_0x54a5('0x46')](_0x55252f);})[_0x54a5('0x25')](function(_0x4e5c22){_0x3ad538[_0x54a5('0x47')]=_0x4e5c22;return _0x3ad538;})[_0x54a5('0x25')](respondWithFilteredResult(_0x25261f,_0x55252f))[_0x54a5('0x48')](handleError(_0x25261f,null));};exports[_0x54a5('0x49')]=function(_0x3a2d3e,_0x4711f7){var _0x3d30b0={'raw':![],'where':{'id':_0x3a2d3e[_0x54a5('0x4a')]['id']}},_0x4e1bc6={};_0x4e1bc6[_0x54a5('0x34')]=_[_0x54a5('0x36')](db[_0x54a5('0x44')][_0x54a5('0x30')]);_0x4e1bc6[_0x54a5('0x35')]=_[_0x54a5('0x36')](_0x3a2d3e['query']);_0x4e1bc6[_0x54a5('0x37')]=_[_0x54a5('0x4b')](_0x4e1bc6[_0x54a5('0x34')],_0x4e1bc6['query']);_0x3d30b0[_0x54a5('0x38')]=_[_0x54a5('0x4b')](_0x4e1bc6[_0x54a5('0x34')],qs[_0x54a5('0x39')](_0x3a2d3e[_0x54a5('0x35')][_0x54a5('0x39')]));_0x3d30b0['attributes']=_0x3d30b0[_0x54a5('0x38')][_0x54a5('0x3a')]?_0x3d30b0[_0x54a5('0x38')]:_0x4e1bc6[_0x54a5('0x34')];if(_0x3a2d3e[_0x54a5('0x35')]['includeAll']){_0x3d30b0[_0x54a5('0x4c')]=[{'all':!![]}];}_0x3d30b0=_[_0x54a5('0x42')]({},_0x3d30b0,_0x3a2d3e[_0x54a5('0x43')]);return db['Trigger']['find'](_0x3d30b0)['then'](handleEntityNotFound(_0x4711f7,null))[_0x54a5('0x25')](respondWithResult(_0x4711f7,null))[_0x54a5('0x48')](handleError(_0x4711f7,null));};exports[_0x54a5('0x4d')]=function(_0x4d3040,_0x5ea393){return db[_0x54a5('0x44')][_0x54a5('0x4d')](_0x4d3040['body'],{})['then'](function(_0x470367){var _0x18530b=_0x4d3040['user'][_0x54a5('0x27')]({'plain':!![]});if(!_0x18530b)throw new Error(_0x54a5('0x4e'));if(_0x18530b[_0x54a5('0x4f')]==='user'){var _0x96bf65=_0x470367[_0x54a5('0x27')]({'plain':!![]});var _0x25a42c=_0x54a5('0x28');return db[_0x54a5('0x50')][_0x54a5('0x51')]({'where':{'name':_0x25a42c,'userProfileId':_0x18530b[_0x54a5('0x52')]},'raw':!![]})['then'](function(_0x4bd81e){if(_0x4bd81e&&_0x4bd81e['autoAssociation']===0x0){return db[_0x54a5('0x29')][_0x54a5('0x4d')]({'name':_0x96bf65[_0x54a5('0x2c')],'resourceId':_0x96bf65['id'],'type':_0x4bd81e[_0x54a5('0x2c')],'sectionId':_0x4bd81e['id']},{})[_0x54a5('0x25')](function(){return _0x470367;});}else{return _0x470367;}})[_0x54a5('0x48')](function(_0x320fdb){logger[_0x54a5('0x2a')](_0x54a5('0x53'),_0x320fdb);throw _0x320fdb;});}return _0x470367;})['then'](respondWithResult(_0x5ea393,0xc9))[_0x54a5('0x48')](handleError(_0x5ea393,null));};exports['update']=function(_0x108f15,_0xb0d00f){if(_0x108f15[_0x54a5('0x54')]['id']){delete _0x108f15[_0x54a5('0x54')]['id'];}return db[_0x54a5('0x44')][_0x54a5('0x51')]({'where':{'id':_0x108f15[_0x54a5('0x4a')]['id']}})[_0x54a5('0x25')](handleEntityNotFound(_0xb0d00f,null))[_0x54a5('0x25')](saveUpdates(_0x108f15['body'],null))[_0x54a5('0x25')](respondWithResult(_0xb0d00f,null))[_0x54a5('0x48')](handleError(_0xb0d00f,null));};exports[_0x54a5('0x26')]=function(_0x5056b6,_0x4f810f){return db['Trigger'][_0x54a5('0x51')]({'where':{'id':_0x5056b6['params']['id']}})['then'](handleEntityNotFound(_0x4f810f,null))[_0x54a5('0x25')](removeEntity(_0x4f810f,null))[_0x54a5('0x48')](handleError(_0x4f810f,null));};exports['addAllCondition']=function(_0x38ea2f,_0x4de42b,_0x60a16){if(_0x38ea2f[_0x54a5('0x54')]['id']){delete _0x38ea2f[_0x54a5('0x54')]['id'];}return db['Trigger'][_0x54a5('0x51')]({'where':{'id':_0x38ea2f[_0x54a5('0x4a')]['id']}})[_0x54a5('0x25')](handleEntityNotFound(_0x4de42b,null))[_0x54a5('0x25')](function(_0x38d963){if(_0x38d963){_0x38ea2f[_0x54a5('0x54')][_0x54a5('0x55')]=_0x38d963['id'];return db[_0x54a5('0x56')][_0x54a5('0x4d')](_0x38ea2f[_0x54a5('0x54')]);}})['then'](respondWithResult(_0x4de42b,null))[_0x54a5('0x48')](handleError(_0x4de42b,null));};exports[_0x54a5('0x57')]=function(_0x5dd949,_0x1453f7,_0x4b6b0f){if(_0x5dd949[_0x54a5('0x54')]['id']){delete _0x5dd949[_0x54a5('0x54')]['id'];}return db[_0x54a5('0x44')][_0x54a5('0x51')]({'where':{'id':_0x5dd949[_0x54a5('0x4a')]['id']}})[_0x54a5('0x25')](handleEntityNotFound(_0x1453f7,null))['then'](function(_0x55d4c2){if(_0x55d4c2){_0x5dd949[_0x54a5('0x54')]['TriggerAnyId']=_0x55d4c2['id'];return db[_0x54a5('0x56')][_0x54a5('0x4d')](_0x5dd949[_0x54a5('0x54')]);}})['then'](respondWithResult(_0x1453f7,null))['catch'](handleError(_0x1453f7,null));};exports['getAllConditions']=function(_0x60d775,_0x43f4a2,_0x3b9c68){var _0x4f9d96={};var _0x1a6414={};var _0x516ab0;var _0x4bfcd0;return db['Trigger'][_0x54a5('0x58')]({'where':{'id':_0x60d775['params']['id']}})[_0x54a5('0x25')](handleEntityNotFound(_0x43f4a2,null))[_0x54a5('0x25')](function(_0x1cde90){if(_0x1cde90){_0x516ab0=_0x1cde90;_0x1a6414[_0x54a5('0x34')]=_[_0x54a5('0x36')](db[_0x54a5('0x56')][_0x54a5('0x30')]);_0x1a6414['query']=_['keys'](_0x60d775[_0x54a5('0x35')]);_0x1a6414['filters']=_[_0x54a5('0x4b')](_0x1a6414[_0x54a5('0x34')],_0x1a6414[_0x54a5('0x35')]);_0x4f9d96[_0x54a5('0x38')]=_[_0x54a5('0x4b')](_0x1a6414['model'],qs['fields'](_0x60d775['query'][_0x54a5('0x39')]));_0x4f9d96[_0x54a5('0x38')]=_0x4f9d96[_0x54a5('0x38')][_0x54a5('0x3a')]?_0x4f9d96['attributes']:_0x1a6414['model'];_0x4f9d96[_0x54a5('0x3d')]=qs[_0x54a5('0x3e')](_0x60d775[_0x54a5('0x35')][_0x54a5('0x3e')]);_0x4f9d96[_0x54a5('0x41')]=qs[_0x54a5('0x37')](_['pick'](_0x60d775[_0x54a5('0x35')],_0x1a6414['filters']));if(_0x60d775[_0x54a5('0x35')][_0x54a5('0x40')]){_0x4f9d96[_0x54a5('0x41')]=_[_0x54a5('0x42')](_0x4f9d96['where'],{'$or':_['map'](_0x4f9d96['attributes'],function(_0x4fe959){var _0x17cfb9={};_0x17cfb9[_0x4fe959]={'$like':'%'+_0x60d775[_0x54a5('0x35')][_0x54a5('0x40')]+'%'};return _0x17cfb9;})});}_0x4f9d96=_[_0x54a5('0x42')]({},_0x4f9d96,_0x60d775[_0x54a5('0x43')]);return _0x516ab0[_0x54a5('0x59')](_0x4f9d96);}})['then'](function(_0x2f1f62){if(_0x2f1f62){_0x4bfcd0=_0x2f1f62[_0x54a5('0x3a')];if(!_0x60d775[_0x54a5('0x35')][_0x54a5('0x3b')](_0x54a5('0x5a'))){_0x4f9d96[_0x54a5('0x3c')]=qs[_0x54a5('0x3c')](_0x60d775['query'][_0x54a5('0x3c')]);_0x4f9d96[_0x54a5('0x1c')]=qs[_0x54a5('0x1c')](_0x60d775['query'][_0x54a5('0x1c')]);}return _0x516ab0[_0x54a5('0x59')](_0x4f9d96);}})[_0x54a5('0x25')](function(_0x28a4b9){if(_0x28a4b9){return _0x28a4b9?{'count':_0x4bfcd0,'rows':_0x28a4b9}:null;}})[_0x54a5('0x25')](respondWithResult(_0x43f4a2,null))[_0x54a5('0x48')](handleError(_0x43f4a2,null));};exports[_0x54a5('0x5b')]=function(_0x2914cb,_0x279f2f,_0x591fa7){var _0x308557={};var _0x28ba28={};var _0x2d323c;var _0x16fd35;return db[_0x54a5('0x44')][_0x54a5('0x58')]({'where':{'id':_0x2914cb['params']['id']}})[_0x54a5('0x25')](handleEntityNotFound(_0x279f2f,null))['then'](function(_0x28c32f){if(_0x28c32f){_0x2d323c=_0x28c32f;_0x28ba28[_0x54a5('0x34')]=_['keys'](db[_0x54a5('0x56')][_0x54a5('0x30')]);_0x28ba28[_0x54a5('0x35')]=_[_0x54a5('0x36')](_0x2914cb['query']);_0x28ba28['filters']=_[_0x54a5('0x4b')](_0x28ba28[_0x54a5('0x34')],_0x28ba28[_0x54a5('0x35')]);_0x308557[_0x54a5('0x38')]=_[_0x54a5('0x4b')](_0x28ba28['model'],qs[_0x54a5('0x39')](_0x2914cb[_0x54a5('0x35')][_0x54a5('0x39')]));_0x308557[_0x54a5('0x38')]=_0x308557[_0x54a5('0x38')]['length']?_0x308557[_0x54a5('0x38')]:_0x28ba28['model'];_0x308557[_0x54a5('0x3d')]=qs['sort'](_0x2914cb[_0x54a5('0x35')][_0x54a5('0x3e')]);_0x308557['where']=qs[_0x54a5('0x37')](_[_0x54a5('0x3f')](_0x2914cb[_0x54a5('0x35')],_0x28ba28[_0x54a5('0x37')]));if(_0x2914cb[_0x54a5('0x35')][_0x54a5('0x40')]){_0x308557[_0x54a5('0x41')]=_[_0x54a5('0x42')](_0x308557[_0x54a5('0x41')],{'$or':_['map'](_0x308557['attributes'],function(_0x599ec6){var _0x567862={};_0x567862[_0x599ec6]={'$like':'%'+_0x2914cb[_0x54a5('0x35')]['filter']+'%'};return _0x567862;})});}_0x308557=_['merge']({},_0x308557,_0x2914cb['options']);return _0x2d323c[_0x54a5('0x5b')](_0x308557);}})[_0x54a5('0x25')](function(_0x27a10f){if(_0x27a10f){_0x16fd35=_0x27a10f[_0x54a5('0x3a')];if(!_0x2914cb[_0x54a5('0x35')]['hasOwnProperty'](_0x54a5('0x5a'))){_0x308557[_0x54a5('0x3c')]=qs[_0x54a5('0x3c')](_0x2914cb[_0x54a5('0x35')][_0x54a5('0x3c')]);_0x308557[_0x54a5('0x1c')]=qs[_0x54a5('0x1c')](_0x2914cb[_0x54a5('0x35')]['offset']);}return _0x2d323c['getAnyConditions'](_0x308557);}})['then'](function(_0x553625){if(_0x553625){return _0x553625?{'count':_0x16fd35,'rows':_0x553625}:null;}})[_0x54a5('0x25')](respondWithResult(_0x279f2f,null))[_0x54a5('0x48')](handleError(_0x279f2f,null));};exports[_0x54a5('0x5c')]=function(_0x12ed15,_0xa573e6,_0x190bb3){if(_0x12ed15[_0x54a5('0x54')]['id']){delete _0x12ed15[_0x54a5('0x54')]['id'];}return db[_0x54a5('0x44')][_0x54a5('0x51')]({'where':{'id':_0x12ed15['params']['id']}})['then'](handleEntityNotFound(_0xa573e6,null))[_0x54a5('0x25')](function(_0x324899){if(_0x324899){_0x12ed15[_0x54a5('0x54')][_0x54a5('0x5d')]=_0x324899['id'];return db['Action'][_0x54a5('0x4d')](_0x12ed15[_0x54a5('0x54')]);}})[_0x54a5('0x25')](respondWithResult(_0xa573e6,null))[_0x54a5('0x48')](handleError(_0xa573e6,null));};exports['getActions']=function(_0xf4aaa3,_0x2aad8c,_0xec8340){var _0x5bab49={};var _0x319268={};var _0x3719fe;var _0x4d3194;return db[_0x54a5('0x44')]['findOne']({'where':{'id':_0xf4aaa3[_0x54a5('0x4a')]['id']}})[_0x54a5('0x25')](handleEntityNotFound(_0x2aad8c,null))[_0x54a5('0x25')](function(_0x501836){if(_0x501836){_0x3719fe=_0x501836;_0x319268[_0x54a5('0x34')]=_['keys'](db[_0x54a5('0x5e')][_0x54a5('0x30')]);_0x319268[_0x54a5('0x35')]=_[_0x54a5('0x36')](_0xf4aaa3[_0x54a5('0x35')]);_0x319268[_0x54a5('0x37')]=_[_0x54a5('0x4b')](_0x319268[_0x54a5('0x34')],_0x319268[_0x54a5('0x35')]);_0x5bab49[_0x54a5('0x38')]=_[_0x54a5('0x4b')](_0x319268[_0x54a5('0x34')],qs['fields'](_0xf4aaa3['query'][_0x54a5('0x39')]));_0x5bab49[_0x54a5('0x38')]=_0x5bab49[_0x54a5('0x38')]['length']?_0x5bab49['attributes']:_0x319268['model'];_0x5bab49[_0x54a5('0x3d')]=qs[_0x54a5('0x3e')](_0xf4aaa3[_0x54a5('0x35')][_0x54a5('0x3e')]);_0x5bab49['where']=qs[_0x54a5('0x37')](_[_0x54a5('0x3f')](_0xf4aaa3[_0x54a5('0x35')],_0x319268['filters']));if(_0xf4aaa3[_0x54a5('0x35')]['filter']){_0x5bab49[_0x54a5('0x41')]=_[_0x54a5('0x42')](_0x5bab49[_0x54a5('0x41')],{'$or':_[_0x54a5('0x2f')](_0x5bab49[_0x54a5('0x38')],function(_0x3232a8){var _0x2f0a91={};_0x2f0a91[_0x3232a8]={'$like':'%'+_0xf4aaa3[_0x54a5('0x35')][_0x54a5('0x40')]+'%'};return _0x2f0a91;})});}_0x5bab49=_['merge']({},_0x5bab49,_0xf4aaa3[_0x54a5('0x43')]);return _0x3719fe[_0x54a5('0x5f')](_0x5bab49);}})[_0x54a5('0x25')](function(_0x276186){if(_0x276186){_0x4d3194=_0x276186['length'];if(!_0xf4aaa3[_0x54a5('0x35')]['hasOwnProperty'](_0x54a5('0x5a'))){_0x5bab49[_0x54a5('0x3c')]=qs[_0x54a5('0x3c')](_0xf4aaa3[_0x54a5('0x35')][_0x54a5('0x3c')]);_0x5bab49[_0x54a5('0x1c')]=qs[_0x54a5('0x1c')](_0xf4aaa3[_0x54a5('0x35')][_0x54a5('0x1c')]);}return _0x3719fe[_0x54a5('0x5f')](_0x5bab49);}})['then'](function(_0x90941c){if(_0x90941c){return _0x90941c?{'count':_0x4d3194,'rows':_0x90941c}:null;}})[_0x54a5('0x25')](respondWithResult(_0x2aad8c,null))[_0x54a5('0x48')](handleError(_0x2aad8c,null));};