Built motion from commit 092f8824.|2.5.49
[motion2.git] / server / api / intZendeskConfiguration / intZendeskConfiguration.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 _0xa531=['intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','pick','merge','where','map','VIRTUAL','options','includeAll','include','findAll','catch','show','params','create','update','body','find','filter','getFields','ZendeskField','getSubjects','getDescriptions','getTags','findOne','Tag','setTags','ids','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','path','sox','to-csv','fs-extra','squel','crypto','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','api','../../config/utils','../../config/license/util','../../mysqldb','status','end','json','offset','undefined','count','limit','Content-Range','apply','reject','save','then','error','stack','name','send','ZendeskConfiguration','rawAttributes','fieldName','type','model','query','keys','filters'];(function(_0x47d42a,_0x582563){var _0x39eaac=function(_0x563dff){while(--_0x563dff){_0x47d42a['push'](_0x47d42a['shift']());}};_0x39eaac(++_0x582563);}(_0xa531,0x74));var _0x1a53=function(_0x1bb822,_0x541a92){_0x1bb822=_0x1bb822-0x0;var _0x465272=_0xa531[_0x1bb822];return _0x465272;};'use strict';var emlformat=require(_0x1a53('0x0'));var rimraf=require(_0x1a53('0x1'));var zipdir=require(_0x1a53('0x2'));var jsonpatch=require(_0x1a53('0x3'));var rp=require(_0x1a53('0x4'));var moment=require(_0x1a53('0x5'));var BPromise=require(_0x1a53('0x6'));var Mustache=require('mustache');var util=require('util');var path=require(_0x1a53('0x7'));var sox=require(_0x1a53('0x8'));var csv=require(_0x1a53('0x9'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x1a53('0xa'));var _=require('lodash');var squel=require(_0x1a53('0xb'));var crypto=require(_0x1a53('0xc'));var jsforce=require(_0x1a53('0xd'));var deskjs=require(_0x1a53('0xe'));var toCsv=require(_0x1a53('0x9'));var querystring=require(_0x1a53('0xf'));var Papa=require(_0x1a53('0x10'));var Redis=require('ioredis');var authService=require(_0x1a53('0x11'));var qs=require(_0x1a53('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x1a53('0x13'));var logger=require('../../config/logger')(_0x1a53('0x14'));var utils=require(_0x1a53('0x15'));var config=require('../../config/environment');var licenseUtil=require(_0x1a53('0x16'));var db=require(_0x1a53('0x17'))['db'];function respondWithStatusCode(_0x1bbbb9,_0x3b461a){_0x3b461a=_0x3b461a||0xcc;return function(_0x16554c){if(_0x16554c){return _0x1bbbb9['sendStatus'](_0x3b461a);}return _0x1bbbb9[_0x1a53('0x18')](_0x3b461a)[_0x1a53('0x19')]();};}function respondWithResult(_0x572780,_0x174b5f){_0x174b5f=_0x174b5f||0xc8;return function(_0x52ae1a){if(_0x52ae1a){return _0x572780[_0x1a53('0x18')](_0x174b5f)[_0x1a53('0x1a')](_0x52ae1a);}};}function respondWithFilteredResult(_0x2422d9,_0x399c59){return function(_0x481b08){if(_0x481b08){var _0x50288d=typeof _0x399c59[_0x1a53('0x1b')]===_0x1a53('0x1c')&&typeof _0x399c59['limit']==='undefined';var _0x117982=_0x481b08[_0x1a53('0x1d')];var _0x3c119d=_0x50288d?0x0:_0x399c59['offset'];var _0x2432e5=_0x50288d?_0x481b08[_0x1a53('0x1d')]:_0x399c59[_0x1a53('0x1b')]+_0x399c59[_0x1a53('0x1e')];var _0x10cee6;if(_0x2432e5>=_0x117982){_0x2432e5=_0x117982;_0x10cee6=0xc8;}else{_0x10cee6=0xce;}_0x2422d9[_0x1a53('0x18')](_0x10cee6);return _0x2422d9['set'](_0x1a53('0x1f'),_0x3c119d+'-'+_0x2432e5+'/'+_0x117982)[_0x1a53('0x1a')](_0x481b08);}return null;};}function patchUpdates(_0xe5271b){return function(_0x3c8893){try{jsonpatch[_0x1a53('0x20')](_0x3c8893,_0xe5271b,!![]);}catch(_0xc1d5ef){return BPromise[_0x1a53('0x21')](_0xc1d5ef);}return _0x3c8893[_0x1a53('0x22')]();};}function saveUpdates(_0x3a20de,_0xf41110){return function(_0x2d5ca9){if(_0x2d5ca9){return _0x2d5ca9['update'](_0x3a20de)['then'](function(_0x3fb223){return _0x3fb223;});}return null;};}function removeEntity(_0x4a7fc,_0x1ff8e9){return function(_0x3f5089){if(_0x3f5089){return _0x3f5089['destroy']()[_0x1a53('0x23')](function(){_0x4a7fc[_0x1a53('0x18')](0xcc)['end']();});}};}function handleEntityNotFound(_0x10c260,_0x58ca8c){return function(_0x271dc2){if(!_0x271dc2){_0x10c260['sendStatus'](0x194);}return _0x271dc2;};}function handleError(_0x324ee0,_0x90f8fa){_0x90f8fa=_0x90f8fa||0x1f4;return function(_0x1449dd){logger[_0x1a53('0x24')](_0x1449dd[_0x1a53('0x25')]);if(_0x1449dd['name']){delete _0x1449dd[_0x1a53('0x26')];}_0x324ee0[_0x1a53('0x18')](_0x90f8fa)[_0x1a53('0x27')](_0x1449dd);};}exports['index']=function(_0x4be324,_0x324c04){var _0x4c1184={},_0x4510d3={},_0x2943a4={'count':0x0,'rows':[]};var _0xef5746=_['map'](db[_0x1a53('0x28')][_0x1a53('0x29')],function(_0x2e0153){return{'name':_0x2e0153[_0x1a53('0x2a')],'type':_0x2e0153[_0x1a53('0x2b')]['key']};});_0x4510d3[_0x1a53('0x2c')]=_['map'](_0xef5746,_0x1a53('0x26'));_0x4510d3[_0x1a53('0x2d')]=_[_0x1a53('0x2e')](_0x4be324[_0x1a53('0x2d')]);_0x4510d3[_0x1a53('0x2f')]=_[_0x1a53('0x30')](_0x4510d3[_0x1a53('0x2c')],_0x4510d3[_0x1a53('0x2d')]);_0x4c1184[_0x1a53('0x31')]=_[_0x1a53('0x30')](_0x4510d3[_0x1a53('0x2c')],qs[_0x1a53('0x32')](_0x4be324[_0x1a53('0x2d')][_0x1a53('0x32')]));_0x4c1184[_0x1a53('0x31')]=_0x4c1184[_0x1a53('0x31')][_0x1a53('0x33')]?_0x4c1184[_0x1a53('0x31')]:_0x4510d3[_0x1a53('0x2c')];if(!_0x4be324['query'][_0x1a53('0x34')](_0x1a53('0x35'))){_0x4c1184[_0x1a53('0x1e')]=qs[_0x1a53('0x1e')](_0x4be324[_0x1a53('0x2d')][_0x1a53('0x1e')]);_0x4c1184['offset']=qs[_0x1a53('0x1b')](_0x4be324[_0x1a53('0x2d')]['offset']);}_0x4c1184[_0x1a53('0x36')]=qs[_0x1a53('0x37')](_0x4be324[_0x1a53('0x2d')][_0x1a53('0x37')]);_0x4c1184['where']=qs[_0x1a53('0x2f')](_[_0x1a53('0x38')](_0x4be324[_0x1a53('0x2d')],_0x4510d3[_0x1a53('0x2f')]),_0xef5746);if(_0x4be324[_0x1a53('0x2d')]['filter']){_0x4c1184['where']=_[_0x1a53('0x39')](_0x4c1184[_0x1a53('0x3a')],{'$or':_[_0x1a53('0x3b')](_0xef5746,function(_0x3f110e){if(_0x3f110e['type']!==_0x1a53('0x3c')){var _0x3e5931={};_0x3e5931[_0x3f110e[_0x1a53('0x26')]]={'$like':'%'+_0x4be324[_0x1a53('0x2d')]['filter']+'%'};return _0x3e5931;}})});}_0x4c1184=_[_0x1a53('0x39')]({},_0x4c1184,_0x4be324[_0x1a53('0x3d')]);var _0x4e00ca={'where':_0x4c1184[_0x1a53('0x3a')]};return db[_0x1a53('0x28')][_0x1a53('0x1d')](_0x4e00ca)[_0x1a53('0x23')](function(_0x39feb3){_0x2943a4[_0x1a53('0x1d')]=_0x39feb3;if(_0x4be324[_0x1a53('0x2d')][_0x1a53('0x3e')]){_0x4c1184[_0x1a53('0x3f')]=[{'all':!![]}];}return db[_0x1a53('0x28')][_0x1a53('0x40')](_0x4c1184);})[_0x1a53('0x23')](function(_0x1b742c){_0x2943a4['rows']=_0x1b742c;return _0x2943a4;})[_0x1a53('0x23')](respondWithFilteredResult(_0x324c04,_0x4c1184))[_0x1a53('0x41')](handleError(_0x324c04,null));};exports[_0x1a53('0x42')]=function(_0x5dabc3,_0x475617){var _0x2b63a9={'raw':![],'where':{'id':_0x5dabc3[_0x1a53('0x43')]['id']}},_0x4b6fbc={};_0x4b6fbc[_0x1a53('0x2c')]=_[_0x1a53('0x2e')](db['ZendeskConfiguration'][_0x1a53('0x29')]);_0x4b6fbc[_0x1a53('0x2d')]=_[_0x1a53('0x2e')](_0x5dabc3[_0x1a53('0x2d')]);_0x4b6fbc[_0x1a53('0x2f')]=_[_0x1a53('0x30')](_0x4b6fbc[_0x1a53('0x2c')],_0x4b6fbc[_0x1a53('0x2d')]);_0x2b63a9['attributes']=_[_0x1a53('0x30')](_0x4b6fbc['model'],qs[_0x1a53('0x32')](_0x5dabc3[_0x1a53('0x2d')][_0x1a53('0x32')]));_0x2b63a9[_0x1a53('0x31')]=_0x2b63a9[_0x1a53('0x31')][_0x1a53('0x33')]?_0x2b63a9['attributes']:_0x4b6fbc[_0x1a53('0x2c')];if(_0x5dabc3[_0x1a53('0x2d')][_0x1a53('0x3e')]){_0x2b63a9[_0x1a53('0x3f')]=[{'all':!![]}];}_0x2b63a9=_[_0x1a53('0x39')]({},_0x2b63a9,_0x5dabc3[_0x1a53('0x3d')]);return db[_0x1a53('0x28')]['find'](_0x2b63a9)[_0x1a53('0x23')](handleEntityNotFound(_0x475617,null))[_0x1a53('0x23')](respondWithResult(_0x475617,null))[_0x1a53('0x41')](handleError(_0x475617,null));};exports[_0x1a53('0x44')]=function(_0xdff04e,_0x5095d2){return db[_0x1a53('0x28')][_0x1a53('0x44')](_0xdff04e['body'],{})[_0x1a53('0x23')](respondWithResult(_0x5095d2,0xc9))[_0x1a53('0x41')](handleError(_0x5095d2,null));};exports[_0x1a53('0x45')]=function(_0x35fb41,_0x5efec5){if(_0x35fb41['body']['id']){delete _0x35fb41[_0x1a53('0x46')]['id'];}return db[_0x1a53('0x28')][_0x1a53('0x47')]({'where':{'id':_0x35fb41[_0x1a53('0x43')]['id']}})[_0x1a53('0x23')](handleEntityNotFound(_0x5efec5,null))['then'](saveUpdates(_0x35fb41[_0x1a53('0x46')],null))[_0x1a53('0x23')](respondWithResult(_0x5efec5,null))[_0x1a53('0x41')](handleError(_0x5efec5,null));};exports['destroy']=function(_0x550a36,_0x3c12d2){return db[_0x1a53('0x28')]['find']({'where':{'id':_0x550a36[_0x1a53('0x43')]['id']}})[_0x1a53('0x23')](handleEntityNotFound(_0x3c12d2,null))[_0x1a53('0x23')](removeEntity(_0x3c12d2,null))[_0x1a53('0x41')](handleError(_0x3c12d2,null));};exports['getFields']=function(_0x52f1a8,_0x185245,_0x3d581e){var _0x309e66={};var _0xf764ce={};var _0x210cb6;var _0x52699e;return db[_0x1a53('0x28')]['findOne']({'where':{'id':_0x52f1a8['params']['id']}})[_0x1a53('0x23')](handleEntityNotFound(_0x185245,null))[_0x1a53('0x23')](function(_0x2353bf){if(_0x2353bf){_0x210cb6=_0x2353bf;_0xf764ce[_0x1a53('0x2c')]=_[_0x1a53('0x2e')](db['ZendeskField'][_0x1a53('0x29')]);_0xf764ce[_0x1a53('0x2d')]=_[_0x1a53('0x2e')](_0x52f1a8[_0x1a53('0x2d')]);_0xf764ce[_0x1a53('0x2f')]=_[_0x1a53('0x30')](_0xf764ce[_0x1a53('0x2c')],_0xf764ce[_0x1a53('0x2d')]);_0x309e66['attributes']=_[_0x1a53('0x30')](_0xf764ce[_0x1a53('0x2c')],qs[_0x1a53('0x32')](_0x52f1a8[_0x1a53('0x2d')]['fields']));_0x309e66['attributes']=_0x309e66[_0x1a53('0x31')][_0x1a53('0x33')]?_0x309e66['attributes']:_0xf764ce[_0x1a53('0x2c')];_0x309e66['order']=qs[_0x1a53('0x37')](_0x52f1a8['query'][_0x1a53('0x37')]);_0x309e66['where']=qs[_0x1a53('0x2f')](_[_0x1a53('0x38')](_0x52f1a8[_0x1a53('0x2d')],_0xf764ce[_0x1a53('0x2f')]));if(_0x52f1a8['query'][_0x1a53('0x48')]){_0x309e66['where']=_['merge'](_0x309e66[_0x1a53('0x3a')],{'$or':_['map'](_0x309e66[_0x1a53('0x31')],function(_0x4056b5){var _0x4de3b3={};_0x4de3b3[_0x4056b5]={'$like':'%'+_0x52f1a8[_0x1a53('0x2d')][_0x1a53('0x48')]+'%'};return _0x4de3b3;})});}_0x309e66=_[_0x1a53('0x39')]({},_0x309e66,_0x52f1a8[_0x1a53('0x3d')]);return _0x210cb6[_0x1a53('0x49')](_0x309e66);}})[_0x1a53('0x23')](function(_0x44e675){if(_0x44e675){_0x52699e=_0x44e675[_0x1a53('0x33')];if(!_0x52f1a8[_0x1a53('0x2d')]['hasOwnProperty'](_0x1a53('0x35'))){_0x309e66[_0x1a53('0x1e')]=qs[_0x1a53('0x1e')](_0x52f1a8[_0x1a53('0x2d')]['limit']);_0x309e66['offset']=qs[_0x1a53('0x1b')](_0x52f1a8[_0x1a53('0x2d')][_0x1a53('0x1b')]);}return _0x210cb6['getFields'](_0x309e66);}})[_0x1a53('0x23')](function(_0x98d007){if(_0x98d007){return _0x98d007?{'count':_0x52699e,'rows':_0x98d007}:null;}})['then'](respondWithResult(_0x185245,null))[_0x1a53('0x41')](handleError(_0x185245,null));};exports['getSubjects']=function(_0x5eeb0f,_0x1acca7,_0xcfc4fa){var _0x914277={};var _0x1014a5={};var _0x5193d2;var _0x20bb4d;return db['ZendeskConfiguration']['findOne']({'where':{'id':_0x5eeb0f['params']['id']}})[_0x1a53('0x23')](handleEntityNotFound(_0x1acca7,null))[_0x1a53('0x23')](function(_0x33b3fc){if(_0x33b3fc){_0x5193d2=_0x33b3fc;_0x1014a5[_0x1a53('0x2c')]=_[_0x1a53('0x2e')](db[_0x1a53('0x4a')][_0x1a53('0x29')]);_0x1014a5[_0x1a53('0x2d')]=_[_0x1a53('0x2e')](_0x5eeb0f[_0x1a53('0x2d')]);_0x1014a5[_0x1a53('0x2f')]=_[_0x1a53('0x30')](_0x1014a5[_0x1a53('0x2c')],_0x1014a5[_0x1a53('0x2d')]);_0x914277['attributes']=_[_0x1a53('0x30')](_0x1014a5['model'],qs['fields'](_0x5eeb0f[_0x1a53('0x2d')][_0x1a53('0x32')]));_0x914277[_0x1a53('0x31')]=_0x914277[_0x1a53('0x31')][_0x1a53('0x33')]?_0x914277[_0x1a53('0x31')]:_0x1014a5[_0x1a53('0x2c')];_0x914277['order']=qs['sort'](_0x5eeb0f['query'][_0x1a53('0x37')]);_0x914277[_0x1a53('0x3a')]=qs[_0x1a53('0x2f')](_[_0x1a53('0x38')](_0x5eeb0f[_0x1a53('0x2d')],_0x1014a5[_0x1a53('0x2f')]));if(_0x5eeb0f['query']['filter']){_0x914277[_0x1a53('0x3a')]=_[_0x1a53('0x39')](_0x914277[_0x1a53('0x3a')],{'$or':_['map'](_0x914277[_0x1a53('0x31')],function(_0x48de40){var _0x4378ed={};_0x4378ed[_0x48de40]={'$like':'%'+_0x5eeb0f[_0x1a53('0x2d')][_0x1a53('0x48')]+'%'};return _0x4378ed;})});}_0x914277=_['merge']({},_0x914277,_0x5eeb0f[_0x1a53('0x3d')]);return _0x5193d2[_0x1a53('0x4b')](_0x914277);}})[_0x1a53('0x23')](function(_0x2e1e28){if(_0x2e1e28){_0x20bb4d=_0x2e1e28[_0x1a53('0x33')];if(!_0x5eeb0f[_0x1a53('0x2d')][_0x1a53('0x34')](_0x1a53('0x35'))){_0x914277[_0x1a53('0x1e')]=qs[_0x1a53('0x1e')](_0x5eeb0f[_0x1a53('0x2d')]['limit']);_0x914277[_0x1a53('0x1b')]=qs['offset'](_0x5eeb0f[_0x1a53('0x2d')][_0x1a53('0x1b')]);}return _0x5193d2[_0x1a53('0x4b')](_0x914277);}})['then'](function(_0x36c65a){if(_0x36c65a){return _0x36c65a?{'count':_0x20bb4d,'rows':_0x36c65a}:null;}})[_0x1a53('0x23')](respondWithResult(_0x1acca7,null))[_0x1a53('0x41')](handleError(_0x1acca7,null));};exports['getDescriptions']=function(_0x6d8f01,_0x1a140d,_0x3cdc5f){var _0x1a1013={};var _0xab3fe={};var _0xecab5c;var _0x25b708;return db[_0x1a53('0x28')]['findOne']({'where':{'id':_0x6d8f01['params']['id']}})[_0x1a53('0x23')](handleEntityNotFound(_0x1a140d,null))['then'](function(_0x2f7706){if(_0x2f7706){_0xecab5c=_0x2f7706;_0xab3fe[_0x1a53('0x2c')]=_[_0x1a53('0x2e')](db[_0x1a53('0x4a')][_0x1a53('0x29')]);_0xab3fe['query']=_[_0x1a53('0x2e')](_0x6d8f01['query']);_0xab3fe[_0x1a53('0x2f')]=_[_0x1a53('0x30')](_0xab3fe[_0x1a53('0x2c')],_0xab3fe[_0x1a53('0x2d')]);_0x1a1013[_0x1a53('0x31')]=_[_0x1a53('0x30')](_0xab3fe[_0x1a53('0x2c')],qs[_0x1a53('0x32')](_0x6d8f01[_0x1a53('0x2d')][_0x1a53('0x32')]));_0x1a1013[_0x1a53('0x31')]=_0x1a1013['attributes'][_0x1a53('0x33')]?_0x1a1013[_0x1a53('0x31')]:_0xab3fe[_0x1a53('0x2c')];_0x1a1013[_0x1a53('0x36')]=qs[_0x1a53('0x37')](_0x6d8f01[_0x1a53('0x2d')][_0x1a53('0x37')]);_0x1a1013['where']=qs['filters'](_[_0x1a53('0x38')](_0x6d8f01[_0x1a53('0x2d')],_0xab3fe[_0x1a53('0x2f')]));if(_0x6d8f01[_0x1a53('0x2d')]['filter']){_0x1a1013['where']=_['merge'](_0x1a1013['where'],{'$or':_[_0x1a53('0x3b')](_0x1a1013[_0x1a53('0x31')],function(_0x43fbf2){var _0x2e19b1={};_0x2e19b1[_0x43fbf2]={'$like':'%'+_0x6d8f01[_0x1a53('0x2d')][_0x1a53('0x48')]+'%'};return _0x2e19b1;})});}_0x1a1013=_[_0x1a53('0x39')]({},_0x1a1013,_0x6d8f01[_0x1a53('0x3d')]);return _0xecab5c['getDescriptions'](_0x1a1013);}})[_0x1a53('0x23')](function(_0x410ed2){if(_0x410ed2){_0x25b708=_0x410ed2['length'];if(!_0x6d8f01[_0x1a53('0x2d')][_0x1a53('0x34')](_0x1a53('0x35'))){_0x1a1013[_0x1a53('0x1e')]=qs['limit'](_0x6d8f01[_0x1a53('0x2d')][_0x1a53('0x1e')]);_0x1a1013[_0x1a53('0x1b')]=qs[_0x1a53('0x1b')](_0x6d8f01[_0x1a53('0x2d')][_0x1a53('0x1b')]);}return _0xecab5c[_0x1a53('0x4c')](_0x1a1013);}})['then'](function(_0x5d1a40){if(_0x5d1a40){return _0x5d1a40?{'count':_0x25b708,'rows':_0x5d1a40}:null;}})[_0x1a53('0x23')](respondWithResult(_0x1a140d,null))[_0x1a53('0x41')](handleError(_0x1a140d,null));};exports[_0x1a53('0x4d')]=function(_0x4bea1a,_0x363c4c,_0x47244c){var _0x14b871={};var _0x381543={};var _0x26e4b8;var _0x4c9707;return db[_0x1a53('0x28')][_0x1a53('0x4e')]({'where':{'id':_0x4bea1a['params']['id']}})[_0x1a53('0x23')](handleEntityNotFound(_0x363c4c,null))[_0x1a53('0x23')](function(_0xb1e99c){if(_0xb1e99c){_0x26e4b8=_0xb1e99c;_0x381543[_0x1a53('0x2c')]=_[_0x1a53('0x2e')](db[_0x1a53('0x4f')]['rawAttributes']);_0x381543[_0x1a53('0x2d')]=_[_0x1a53('0x2e')](_0x4bea1a[_0x1a53('0x2d')]);_0x381543[_0x1a53('0x2f')]=_[_0x1a53('0x30')](_0x381543[_0x1a53('0x2c')],_0x381543['query']);_0x14b871[_0x1a53('0x31')]=_[_0x1a53('0x30')](_0x381543[_0x1a53('0x2c')],qs['fields'](_0x4bea1a[_0x1a53('0x2d')][_0x1a53('0x32')]));_0x14b871[_0x1a53('0x31')]=_0x14b871[_0x1a53('0x31')]['length']?_0x14b871['attributes']:_0x381543['model'];_0x14b871[_0x1a53('0x36')]=qs['sort'](_0x4bea1a['query'][_0x1a53('0x37')]);_0x14b871[_0x1a53('0x3a')]=qs[_0x1a53('0x2f')](_[_0x1a53('0x38')](_0x4bea1a[_0x1a53('0x2d')],_0x381543['filters']));if(_0x4bea1a[_0x1a53('0x2d')][_0x1a53('0x48')]){_0x14b871[_0x1a53('0x3a')]=_[_0x1a53('0x39')](_0x14b871[_0x1a53('0x3a')],{'$or':_[_0x1a53('0x3b')](_0x14b871[_0x1a53('0x31')],function(_0x525553){var _0x3df169={};_0x3df169[_0x525553]={'$like':'%'+_0x4bea1a[_0x1a53('0x2d')][_0x1a53('0x48')]+'%'};return _0x3df169;})});}_0x14b871=_[_0x1a53('0x39')]({},_0x14b871,_0x4bea1a[_0x1a53('0x3d')]);return _0x26e4b8[_0x1a53('0x4d')](_0x14b871);}})['then'](function(_0x7ddce1){if(_0x7ddce1){_0x4c9707=_0x7ddce1['length'];if(!_0x4bea1a['query'][_0x1a53('0x34')]('nolimit')){_0x14b871['limit']=qs[_0x1a53('0x1e')](_0x4bea1a[_0x1a53('0x2d')][_0x1a53('0x1e')]);_0x14b871['offset']=qs[_0x1a53('0x1b')](_0x4bea1a[_0x1a53('0x2d')]['offset']);}return _0x26e4b8['getTags'](_0x14b871);}})[_0x1a53('0x23')](function(_0x23e550){if(_0x23e550){return _0x23e550?{'count':_0x4c9707,'rows':_0x23e550}:null;}})[_0x1a53('0x23')](respondWithResult(_0x363c4c,null))['catch'](handleError(_0x363c4c,null));};exports[_0x1a53('0x50')]=function(_0x429a7a,_0x4cf957,_0x44dfbe){if(_0x429a7a[_0x1a53('0x46')]['id']){delete _0x429a7a[_0x1a53('0x46')]['id'];}return db[_0x1a53('0x28')][_0x1a53('0x4e')]({'where':{'id':_0x429a7a[_0x1a53('0x43')]['id']}})[_0x1a53('0x23')](handleEntityNotFound(_0x4cf957,null))['then'](function(_0x41f830){if(_0x41f830){return _0x41f830[_0x1a53('0x50')](_0x429a7a[_0x1a53('0x46')][_0x1a53('0x51')]||[]);}return null;})[_0x1a53('0x23')](respondWithResult(_0x4cf957,null))[_0x1a53('0x41')](handleError(_0x4cf957,null));};