Built motion from commit ddca4d0d.|2.5.47
[motion2.git] / server / api / intDeskConfiguration / intDeskConfiguration.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 _0x9445=['destroy','sendStatus','name','send','index','DeskConfiguration','rawAttributes','fieldName','type','key','model','map','keys','query','filters','intersection','attributes','fields','length','hasOwnProperty','order','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','include','findAll','catch','show','params','create','body','update','find','getFields','DeskField','findOne','getSubjects','nolimit','getDescriptions','Tag','getTags','setTags','ids','eml-format','rimraf','moment','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../mysqldb','status','end','json','offset','undefined','limit','count','Content-Range','reject','save','then'];(function(_0x4a6f43,_0x4ddc7a){var _0x30789b=function(_0x5847b){while(--_0x5847b){_0x4a6f43['push'](_0x4a6f43['shift']());}};_0x30789b(++_0x4ddc7a);}(_0x9445,0xd8));var _0x5944=function(_0x57b54c,_0x54ce0d){_0x57b54c=_0x57b54c-0x0;var _0x59cc19=_0x9445[_0x57b54c];return _0x59cc19;};'use strict';var emlformat=require(_0x5944('0x0'));var rimraf=require(_0x5944('0x1'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x5944('0x2'));var BPromise=require('bluebird');var Mustache=require(_0x5944('0x3'));var util=require(_0x5944('0x4'));var path=require(_0x5944('0x5'));var sox=require(_0x5944('0x6'));var csv=require(_0x5944('0x7'));var ejs=require(_0x5944('0x8'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x5944('0x9'));var squel=require(_0x5944('0xa'));var crypto=require(_0x5944('0xb'));var jsforce=require(_0x5944('0xc'));var deskjs=require(_0x5944('0xd'));var toCsv=require(_0x5944('0x7'));var querystring=require(_0x5944('0xe'));var Papa=require(_0x5944('0xf'));var Redis=require(_0x5944('0x10'));var authService=require(_0x5944('0x11'));var qs=require(_0x5944('0x12'));var as=require(_0x5944('0x13'));var hardwareService=require(_0x5944('0x14'));var logger=require(_0x5944('0x15'))(_0x5944('0x16'));var utils=require(_0x5944('0x17'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0x5944('0x18'))['db'];function respondWithStatusCode(_0x334c17,_0x17935d){_0x17935d=_0x17935d||0xcc;return function(_0x48bb61){if(_0x48bb61){return _0x334c17['sendStatus'](_0x17935d);}return _0x334c17[_0x5944('0x19')](_0x17935d)[_0x5944('0x1a')]();};}function respondWithResult(_0x2be962,_0x73b40b){_0x73b40b=_0x73b40b||0xc8;return function(_0x9acf1f){if(_0x9acf1f){return _0x2be962[_0x5944('0x19')](_0x73b40b)[_0x5944('0x1b')](_0x9acf1f);}};}function respondWithFilteredResult(_0x5ea4f1,_0x1eba3d){return function(_0x410ab6){if(_0x410ab6){var _0x4432e0=typeof _0x1eba3d[_0x5944('0x1c')]===_0x5944('0x1d')&&typeof _0x1eba3d[_0x5944('0x1e')]===_0x5944('0x1d');var _0x29d25c=_0x410ab6[_0x5944('0x1f')];var _0x5b8200=_0x4432e0?0x0:_0x1eba3d[_0x5944('0x1c')];var _0x4051b2=_0x4432e0?_0x410ab6[_0x5944('0x1f')]:_0x1eba3d[_0x5944('0x1c')]+_0x1eba3d['limit'];var _0x3b2f04;if(_0x4051b2>=_0x29d25c){_0x4051b2=_0x29d25c;_0x3b2f04=0xc8;}else{_0x3b2f04=0xce;}_0x5ea4f1[_0x5944('0x19')](_0x3b2f04);return _0x5ea4f1['set'](_0x5944('0x20'),_0x5b8200+'-'+_0x4051b2+'/'+_0x29d25c)[_0x5944('0x1b')](_0x410ab6);}return null;};}function patchUpdates(_0x2cd565){return function(_0x2cfade){try{jsonpatch['apply'](_0x2cfade,_0x2cd565,!![]);}catch(_0xe7c823){return BPromise[_0x5944('0x21')](_0xe7c823);}return _0x2cfade[_0x5944('0x22')]();};}function saveUpdates(_0x5e05de,_0x305bc2){return function(_0x1d2841){if(_0x1d2841){return _0x1d2841['update'](_0x5e05de)[_0x5944('0x23')](function(_0x32ee10){return _0x32ee10;});}return null;};}function removeEntity(_0x2be9ba,_0x253bc0){return function(_0x432e9c){if(_0x432e9c){return _0x432e9c[_0x5944('0x24')]()[_0x5944('0x23')](function(){_0x2be9ba[_0x5944('0x19')](0xcc)[_0x5944('0x1a')]();});}};}function handleEntityNotFound(_0x1322ff,_0x444809){return function(_0x2b18dd){if(!_0x2b18dd){_0x1322ff[_0x5944('0x25')](0x194);}return _0x2b18dd;};}function handleError(_0x231e5a,_0x322f30){_0x322f30=_0x322f30||0x1f4;return function(_0x4669e9){logger['error'](_0x4669e9['stack']);if(_0x4669e9[_0x5944('0x26')]){delete _0x4669e9[_0x5944('0x26')];}_0x231e5a[_0x5944('0x19')](_0x322f30)[_0x5944('0x27')](_0x4669e9);};}exports[_0x5944('0x28')]=function(_0x5fc3e0,_0x354904){var _0x3cc264={},_0x1db02d={},_0x2a149a={'count':0x0,'rows':[]};var _0x29afb8=_['map'](db[_0x5944('0x29')][_0x5944('0x2a')],function(_0x1ce30a){return{'name':_0x1ce30a[_0x5944('0x2b')],'type':_0x1ce30a[_0x5944('0x2c')][_0x5944('0x2d')]};});_0x1db02d[_0x5944('0x2e')]=_[_0x5944('0x2f')](_0x29afb8,'name');_0x1db02d['query']=_[_0x5944('0x30')](_0x5fc3e0[_0x5944('0x31')]);_0x1db02d[_0x5944('0x32')]=_[_0x5944('0x33')](_0x1db02d[_0x5944('0x2e')],_0x1db02d[_0x5944('0x31')]);_0x3cc264[_0x5944('0x34')]=_[_0x5944('0x33')](_0x1db02d[_0x5944('0x2e')],qs[_0x5944('0x35')](_0x5fc3e0[_0x5944('0x31')][_0x5944('0x35')]));_0x3cc264[_0x5944('0x34')]=_0x3cc264['attributes'][_0x5944('0x36')]?_0x3cc264[_0x5944('0x34')]:_0x1db02d[_0x5944('0x2e')];if(!_0x5fc3e0[_0x5944('0x31')][_0x5944('0x37')]('nolimit')){_0x3cc264[_0x5944('0x1e')]=qs[_0x5944('0x1e')](_0x5fc3e0[_0x5944('0x31')][_0x5944('0x1e')]);_0x3cc264['offset']=qs[_0x5944('0x1c')](_0x5fc3e0[_0x5944('0x31')][_0x5944('0x1c')]);}_0x3cc264[_0x5944('0x38')]=qs[_0x5944('0x39')](_0x5fc3e0[_0x5944('0x31')]['sort']);_0x3cc264[_0x5944('0x3a')]=qs['filters'](_[_0x5944('0x3b')](_0x5fc3e0[_0x5944('0x31')],_0x1db02d[_0x5944('0x32')]),_0x29afb8);if(_0x5fc3e0['query'][_0x5944('0x3c')]){_0x3cc264[_0x5944('0x3a')]=_[_0x5944('0x3d')](_0x3cc264[_0x5944('0x3a')],{'$or':_[_0x5944('0x2f')](_0x29afb8,function(_0x4dcc84){if(_0x4dcc84['type']!==_0x5944('0x3e')){var _0x2d26ab={};_0x2d26ab[_0x4dcc84[_0x5944('0x26')]]={'$like':'%'+_0x5fc3e0[_0x5944('0x31')]['filter']+'%'};return _0x2d26ab;}})});}_0x3cc264=_[_0x5944('0x3d')]({},_0x3cc264,_0x5fc3e0[_0x5944('0x3f')]);var _0x387376={'where':_0x3cc264['where']};return db[_0x5944('0x29')]['count'](_0x387376)['then'](function(_0xd5c395){_0x2a149a['count']=_0xd5c395;if(_0x5fc3e0['query'][_0x5944('0x40')]){_0x3cc264[_0x5944('0x41')]=[{'all':!![]}];}return db['DeskConfiguration'][_0x5944('0x42')](_0x3cc264);})[_0x5944('0x23')](function(_0x3dd6a1){_0x2a149a['rows']=_0x3dd6a1;return _0x2a149a;})[_0x5944('0x23')](respondWithFilteredResult(_0x354904,_0x3cc264))[_0x5944('0x43')](handleError(_0x354904,null));};exports[_0x5944('0x44')]=function(_0x4d1330,_0x3caf01){var _0x54fd7d={'raw':![],'where':{'id':_0x4d1330[_0x5944('0x45')]['id']}},_0x3ab557={};_0x3ab557[_0x5944('0x2e')]=_[_0x5944('0x30')](db[_0x5944('0x29')][_0x5944('0x2a')]);_0x3ab557['query']=_[_0x5944('0x30')](_0x4d1330[_0x5944('0x31')]);_0x3ab557[_0x5944('0x32')]=_[_0x5944('0x33')](_0x3ab557['model'],_0x3ab557['query']);_0x54fd7d[_0x5944('0x34')]=_[_0x5944('0x33')](_0x3ab557['model'],qs['fields'](_0x4d1330[_0x5944('0x31')][_0x5944('0x35')]));_0x54fd7d[_0x5944('0x34')]=_0x54fd7d[_0x5944('0x34')][_0x5944('0x36')]?_0x54fd7d[_0x5944('0x34')]:_0x3ab557['model'];if(_0x4d1330['query'][_0x5944('0x40')]){_0x54fd7d[_0x5944('0x41')]=[{'all':!![]}];}_0x54fd7d=_['merge']({},_0x54fd7d,_0x4d1330[_0x5944('0x3f')]);return db['DeskConfiguration']['find'](_0x54fd7d)[_0x5944('0x23')](handleEntityNotFound(_0x3caf01,null))[_0x5944('0x23')](respondWithResult(_0x3caf01,null))['catch'](handleError(_0x3caf01,null));};exports[_0x5944('0x46')]=function(_0x338c8c,_0x366b75){return db['DeskConfiguration'][_0x5944('0x46')](_0x338c8c[_0x5944('0x47')],{})[_0x5944('0x23')](respondWithResult(_0x366b75,0xc9))[_0x5944('0x43')](handleError(_0x366b75,null));};exports[_0x5944('0x48')]=function(_0x4b04d3,_0x4f3bdd){if(_0x4b04d3[_0x5944('0x47')]['id']){delete _0x4b04d3[_0x5944('0x47')]['id'];}return db[_0x5944('0x29')][_0x5944('0x49')]({'where':{'id':_0x4b04d3[_0x5944('0x45')]['id']}})['then'](handleEntityNotFound(_0x4f3bdd,null))[_0x5944('0x23')](saveUpdates(_0x4b04d3[_0x5944('0x47')],null))[_0x5944('0x23')](respondWithResult(_0x4f3bdd,null))[_0x5944('0x43')](handleError(_0x4f3bdd,null));};exports[_0x5944('0x24')]=function(_0x2b1746,_0x4cc8db){return db[_0x5944('0x29')][_0x5944('0x49')]({'where':{'id':_0x2b1746[_0x5944('0x45')]['id']}})[_0x5944('0x23')](handleEntityNotFound(_0x4cc8db,null))[_0x5944('0x23')](removeEntity(_0x4cc8db,null))[_0x5944('0x43')](handleError(_0x4cc8db,null));};exports[_0x5944('0x4a')]=function(_0x3362f8,_0x22873a,_0x4a68dd){var _0x3cfce3={};var _0x43c6f7={};var _0x4af764;var _0x2c8f2a;return db[_0x5944('0x29')]['findOne']({'where':{'id':_0x3362f8[_0x5944('0x45')]['id']}})[_0x5944('0x23')](handleEntityNotFound(_0x22873a,null))['then'](function(_0x251d84){if(_0x251d84){_0x4af764=_0x251d84;_0x43c6f7['model']=_[_0x5944('0x30')](db[_0x5944('0x4b')][_0x5944('0x2a')]);_0x43c6f7[_0x5944('0x31')]=_[_0x5944('0x30')](_0x3362f8[_0x5944('0x31')]);_0x43c6f7['filters']=_['intersection'](_0x43c6f7[_0x5944('0x2e')],_0x43c6f7[_0x5944('0x31')]);_0x3cfce3[_0x5944('0x34')]=_[_0x5944('0x33')](_0x43c6f7[_0x5944('0x2e')],qs[_0x5944('0x35')](_0x3362f8[_0x5944('0x31')][_0x5944('0x35')]));_0x3cfce3[_0x5944('0x34')]=_0x3cfce3[_0x5944('0x34')][_0x5944('0x36')]?_0x3cfce3['attributes']:_0x43c6f7[_0x5944('0x2e')];_0x3cfce3[_0x5944('0x38')]=qs[_0x5944('0x39')](_0x3362f8[_0x5944('0x31')]['sort']);_0x3cfce3[_0x5944('0x3a')]=qs['filters'](_['pick'](_0x3362f8[_0x5944('0x31')],_0x43c6f7['filters']));if(_0x3362f8[_0x5944('0x31')][_0x5944('0x3c')]){_0x3cfce3[_0x5944('0x3a')]=_[_0x5944('0x3d')](_0x3cfce3[_0x5944('0x3a')],{'$or':_[_0x5944('0x2f')](_0x3cfce3[_0x5944('0x34')],function(_0x3cb7a1){var _0x33b3f6={};_0x33b3f6[_0x3cb7a1]={'$like':'%'+_0x3362f8['query'][_0x5944('0x3c')]+'%'};return _0x33b3f6;})});}_0x3cfce3=_['merge']({},_0x3cfce3,_0x3362f8[_0x5944('0x3f')]);return _0x4af764[_0x5944('0x4a')](_0x3cfce3);}})[_0x5944('0x23')](function(_0x55c3f3){if(_0x55c3f3){_0x2c8f2a=_0x55c3f3[_0x5944('0x36')];if(!_0x3362f8[_0x5944('0x31')][_0x5944('0x37')]('nolimit')){_0x3cfce3[_0x5944('0x1e')]=qs[_0x5944('0x1e')](_0x3362f8[_0x5944('0x31')]['limit']);_0x3cfce3['offset']=qs[_0x5944('0x1c')](_0x3362f8[_0x5944('0x31')][_0x5944('0x1c')]);}return _0x4af764[_0x5944('0x4a')](_0x3cfce3);}})[_0x5944('0x23')](function(_0x434b5a){if(_0x434b5a){return _0x434b5a?{'count':_0x2c8f2a,'rows':_0x434b5a}:null;}})['then'](respondWithResult(_0x22873a,null))[_0x5944('0x43')](handleError(_0x22873a,null));};exports['getSubjects']=function(_0x426bb0,_0x5d6f53,_0x5a6224){var _0xa1e4bd={};var _0x59ef47={};var _0x5911f4;var _0x5066ea;return db[_0x5944('0x29')][_0x5944('0x4c')]({'where':{'id':_0x426bb0[_0x5944('0x45')]['id']}})[_0x5944('0x23')](handleEntityNotFound(_0x5d6f53,null))['then'](function(_0x31a218){if(_0x31a218){_0x5911f4=_0x31a218;_0x59ef47[_0x5944('0x2e')]=_[_0x5944('0x30')](db[_0x5944('0x4b')][_0x5944('0x2a')]);_0x59ef47['query']=_[_0x5944('0x30')](_0x426bb0[_0x5944('0x31')]);_0x59ef47[_0x5944('0x32')]=_[_0x5944('0x33')](_0x59ef47[_0x5944('0x2e')],_0x59ef47[_0x5944('0x31')]);_0xa1e4bd[_0x5944('0x34')]=_[_0x5944('0x33')](_0x59ef47[_0x5944('0x2e')],qs[_0x5944('0x35')](_0x426bb0[_0x5944('0x31')]['fields']));_0xa1e4bd[_0x5944('0x34')]=_0xa1e4bd[_0x5944('0x34')]['length']?_0xa1e4bd['attributes']:_0x59ef47[_0x5944('0x2e')];_0xa1e4bd['order']=qs[_0x5944('0x39')](_0x426bb0[_0x5944('0x31')][_0x5944('0x39')]);_0xa1e4bd[_0x5944('0x3a')]=qs[_0x5944('0x32')](_[_0x5944('0x3b')](_0x426bb0['query'],_0x59ef47[_0x5944('0x32')]));if(_0x426bb0[_0x5944('0x31')]['filter']){_0xa1e4bd[_0x5944('0x3a')]=_['merge'](_0xa1e4bd[_0x5944('0x3a')],{'$or':_[_0x5944('0x2f')](_0xa1e4bd[_0x5944('0x34')],function(_0x5a4c5e){var _0x5f2f68={};_0x5f2f68[_0x5a4c5e]={'$like':'%'+_0x426bb0['query'][_0x5944('0x3c')]+'%'};return _0x5f2f68;})});}_0xa1e4bd=_[_0x5944('0x3d')]({},_0xa1e4bd,_0x426bb0[_0x5944('0x3f')]);return _0x5911f4[_0x5944('0x4d')](_0xa1e4bd);}})[_0x5944('0x23')](function(_0x282fd3){if(_0x282fd3){_0x5066ea=_0x282fd3['length'];if(!_0x426bb0[_0x5944('0x31')][_0x5944('0x37')](_0x5944('0x4e'))){_0xa1e4bd[_0x5944('0x1e')]=qs['limit'](_0x426bb0[_0x5944('0x31')]['limit']);_0xa1e4bd[_0x5944('0x1c')]=qs[_0x5944('0x1c')](_0x426bb0[_0x5944('0x31')][_0x5944('0x1c')]);}return _0x5911f4['getSubjects'](_0xa1e4bd);}})[_0x5944('0x23')](function(_0x44c825){if(_0x44c825){return _0x44c825?{'count':_0x5066ea,'rows':_0x44c825}:null;}})[_0x5944('0x23')](respondWithResult(_0x5d6f53,null))['catch'](handleError(_0x5d6f53,null));};exports[_0x5944('0x4f')]=function(_0x36019f,_0x423bc5,_0x3ca0bc){var _0x333f0d={};var _0x360630={};var _0x35eaaa;var _0xb7abbe;return db[_0x5944('0x29')]['findOne']({'where':{'id':_0x36019f[_0x5944('0x45')]['id']}})[_0x5944('0x23')](handleEntityNotFound(_0x423bc5,null))['then'](function(_0x250458){if(_0x250458){_0x35eaaa=_0x250458;_0x360630[_0x5944('0x2e')]=_['keys'](db['DeskField'][_0x5944('0x2a')]);_0x360630[_0x5944('0x31')]=_[_0x5944('0x30')](_0x36019f[_0x5944('0x31')]);_0x360630['filters']=_[_0x5944('0x33')](_0x360630[_0x5944('0x2e')],_0x360630[_0x5944('0x31')]);_0x333f0d[_0x5944('0x34')]=_['intersection'](_0x360630['model'],qs['fields'](_0x36019f[_0x5944('0x31')][_0x5944('0x35')]));_0x333f0d[_0x5944('0x34')]=_0x333f0d[_0x5944('0x34')]['length']?_0x333f0d[_0x5944('0x34')]:_0x360630[_0x5944('0x2e')];_0x333f0d[_0x5944('0x38')]=qs[_0x5944('0x39')](_0x36019f['query']['sort']);_0x333f0d[_0x5944('0x3a')]=qs[_0x5944('0x32')](_[_0x5944('0x3b')](_0x36019f['query'],_0x360630[_0x5944('0x32')]));if(_0x36019f['query'][_0x5944('0x3c')]){_0x333f0d[_0x5944('0x3a')]=_[_0x5944('0x3d')](_0x333f0d['where'],{'$or':_[_0x5944('0x2f')](_0x333f0d[_0x5944('0x34')],function(_0x31a2f8){var _0x404bc1={};_0x404bc1[_0x31a2f8]={'$like':'%'+_0x36019f['query'][_0x5944('0x3c')]+'%'};return _0x404bc1;})});}_0x333f0d=_['merge']({},_0x333f0d,_0x36019f[_0x5944('0x3f')]);return _0x35eaaa['getDescriptions'](_0x333f0d);}})[_0x5944('0x23')](function(_0x118b71){if(_0x118b71){_0xb7abbe=_0x118b71['length'];if(!_0x36019f[_0x5944('0x31')][_0x5944('0x37')](_0x5944('0x4e'))){_0x333f0d[_0x5944('0x1e')]=qs['limit'](_0x36019f[_0x5944('0x31')][_0x5944('0x1e')]);_0x333f0d[_0x5944('0x1c')]=qs[_0x5944('0x1c')](_0x36019f[_0x5944('0x31')]['offset']);}return _0x35eaaa[_0x5944('0x4f')](_0x333f0d);}})[_0x5944('0x23')](function(_0x6f9e32){if(_0x6f9e32){return _0x6f9e32?{'count':_0xb7abbe,'rows':_0x6f9e32}:null;}})[_0x5944('0x23')](respondWithResult(_0x423bc5,null))[_0x5944('0x43')](handleError(_0x423bc5,null));};exports['getTags']=function(_0x5dab7d,_0x1c86c0,_0xcec093){var _0x1a98b0={};var _0x1fa5c8={};var _0x522941;var _0x44bb48;return db[_0x5944('0x29')][_0x5944('0x4c')]({'where':{'id':_0x5dab7d[_0x5944('0x45')]['id']}})[_0x5944('0x23')](handleEntityNotFound(_0x1c86c0,null))[_0x5944('0x23')](function(_0x4b9ab2){if(_0x4b9ab2){_0x522941=_0x4b9ab2;_0x1fa5c8[_0x5944('0x2e')]=_[_0x5944('0x30')](db[_0x5944('0x50')]['rawAttributes']);_0x1fa5c8[_0x5944('0x31')]=_['keys'](_0x5dab7d['query']);_0x1fa5c8['filters']=_[_0x5944('0x33')](_0x1fa5c8['model'],_0x1fa5c8[_0x5944('0x31')]);_0x1a98b0[_0x5944('0x34')]=_['intersection'](_0x1fa5c8[_0x5944('0x2e')],qs['fields'](_0x5dab7d[_0x5944('0x31')][_0x5944('0x35')]));_0x1a98b0[_0x5944('0x34')]=_0x1a98b0['attributes']['length']?_0x1a98b0[_0x5944('0x34')]:_0x1fa5c8[_0x5944('0x2e')];_0x1a98b0[_0x5944('0x38')]=qs[_0x5944('0x39')](_0x5dab7d['query'][_0x5944('0x39')]);_0x1a98b0[_0x5944('0x3a')]=qs['filters'](_[_0x5944('0x3b')](_0x5dab7d[_0x5944('0x31')],_0x1fa5c8[_0x5944('0x32')]));if(_0x5dab7d[_0x5944('0x31')][_0x5944('0x3c')]){_0x1a98b0[_0x5944('0x3a')]=_[_0x5944('0x3d')](_0x1a98b0[_0x5944('0x3a')],{'$or':_[_0x5944('0x2f')](_0x1a98b0[_0x5944('0x34')],function(_0x49ac4d){var _0x2a0940={};_0x2a0940[_0x49ac4d]={'$like':'%'+_0x5dab7d[_0x5944('0x31')][_0x5944('0x3c')]+'%'};return _0x2a0940;})});}_0x1a98b0=_[_0x5944('0x3d')]({},_0x1a98b0,_0x5dab7d['options']);return _0x522941[_0x5944('0x51')](_0x1a98b0);}})['then'](function(_0x3b8677){if(_0x3b8677){_0x44bb48=_0x3b8677[_0x5944('0x36')];if(!_0x5dab7d['query']['hasOwnProperty']('nolimit')){_0x1a98b0['limit']=qs[_0x5944('0x1e')](_0x5dab7d['query'][_0x5944('0x1e')]);_0x1a98b0[_0x5944('0x1c')]=qs[_0x5944('0x1c')](_0x5dab7d['query'][_0x5944('0x1c')]);}return _0x522941[_0x5944('0x51')](_0x1a98b0);}})[_0x5944('0x23')](function(_0x1e2d3e){if(_0x1e2d3e){return _0x1e2d3e?{'count':_0x44bb48,'rows':_0x1e2d3e}:null;}})[_0x5944('0x23')](respondWithResult(_0x1c86c0,null))[_0x5944('0x43')](handleError(_0x1c86c0,null));};exports[_0x5944('0x52')]=function(_0x3f7eec,_0x4655cd,_0x1adb6b){if(_0x3f7eec[_0x5944('0x47')]['id']){delete _0x3f7eec['body']['id'];}return db[_0x5944('0x29')][_0x5944('0x4c')]({'where':{'id':_0x3f7eec[_0x5944('0x45')]['id']}})[_0x5944('0x23')](handleEntityNotFound(_0x4655cd,null))[_0x5944('0x23')](function(_0x3c9a99){if(_0x3c9a99){return _0x3c9a99[_0x5944('0x52')](_0x3f7eec['body'][_0x5944('0x53')]||[]);}return null;})['then'](respondWithResult(_0x4655cd,null))[_0x5944('0x43')](handleError(_0x4655cd,null));};