42c5b29e28ead6dfc5150684432594ab904f3187
[motion2.git] / server / api / intFreshdeskConfiguration / intFreshdeskConfiguration.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 _0xe48c=['sort','filters','pick','filter','where','merge','VIRTUAL','options','includeAll','include','findAll','rows','keys','find','create','body','params','getFields','FreshdeskField','order','findOne','getSubjects','getDescriptions','Tag','getTags','setTags','ids','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','to-csv','ejs','lodash','squel','crypto','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','jayson/promise','client','request','then','info','FreshdeskConfiguration,\x20%s,\x20%s','request\x20sent','debug','stringify','error','code','message','catch','status','end','json','count','offset','limit','set','Content-Range','apply','reject','save','update','destroy','sendStatus','name','send','map','FreshdeskConfiguration','rawAttributes','fieldName','type','query','intersection','attributes','model','fields','length','hasOwnProperty','nolimit'];(function(_0x2112d4,_0x3c863c){var _0x434972=function(_0x477020){while(--_0x477020){_0x2112d4['push'](_0x2112d4['shift']());}};_0x434972(++_0x3c863c);}(_0xe48c,0x7a));var _0xce48=function(_0x4c8a46,_0x2cdb2a){_0x4c8a46=_0x4c8a46-0x0;var _0x2afc15=_0xe48c[_0x4c8a46];return _0x2afc15;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0xce48('0x0'));var rimraf=require(_0xce48('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xce48('0x2'));var rp=require(_0xce48('0x3'));var moment=require(_0xce48('0x4'));var BPromise=require(_0xce48('0x5'));var Mustache=require(_0xce48('0x6'));var util=require(_0xce48('0x7'));var path=require('path');var sox=require(_0xce48('0x8'));var csv=require(_0xce48('0x9'));var ejs=require(_0xce48('0xa'));var fs=require('fs');var _=require(_0xce48('0xb'));var squel=require(_0xce48('0xc'));var crypto=require(_0xce48('0xd'));var jsforce=require(_0xce48('0xe'));var deskjs=require('desk.js');var toCsv=require(_0xce48('0x9'));var querystring=require(_0xce48('0xf'));var Papa=require(_0xce48('0x10'));var Redis=require(_0xce48('0x11'));var authService=require(_0xce48('0x12'));var qs=require('../../components/parsers/qs');var as=require(_0xce48('0x13'));var hardwareService=require(_0xce48('0x14'));var logger=require(_0xce48('0x15'))(_0xce48('0x16'));var utils=require('../../config/utils');var config=require(_0xce48('0x17'));var licenseUtil=require(_0xce48('0x18'));var db=require(_0xce48('0x19'))['db'];var jayson=require(_0xce48('0x1a'));var client=jayson[_0xce48('0x1b')]['http']({'port':0x232a});function respondWithRpcPromise(_0x392294,_0x39921b,_0x44a2f8,_0x49cb55){return new BPromise(function(_0x15cd3b,_0x2623ce){var _0x7b9baf=_0x49cb55||client;return _0x7b9baf[_0xce48('0x1c')](_0x392294,_0x44a2f8)[_0xce48('0x1d')](function(_0x10a63e){logger[_0xce48('0x1e')](_0xce48('0x1f'),_0x39921b,_0xce48('0x20'));logger[_0xce48('0x21')]('FreshdeskConfiguration,\x20%s,\x20%s,\x20%s',_0x39921b,_0xce48('0x20'),JSON[_0xce48('0x22')](_0x10a63e));if(_0x10a63e[_0xce48('0x23')]){if(_0x10a63e[_0xce48('0x23')][_0xce48('0x24')]===0x1f4){logger['error']('FreshdeskConfiguration,\x20%s,\x20%s',_0x39921b,_0x10a63e[_0xce48('0x23')]['message']);return _0x2623ce(_0x10a63e[_0xce48('0x23')][_0xce48('0x25')]);}logger[_0xce48('0x23')](_0xce48('0x1f'),_0x39921b,_0x10a63e[_0xce48('0x23')]['message']);return _0x15cd3b(_0x10a63e[_0xce48('0x23')][_0xce48('0x25')]);}else{logger[_0xce48('0x1e')](_0xce48('0x1f'),_0x39921b,_0xce48('0x20'));_0x15cd3b(_0x10a63e['result'][_0xce48('0x25')]);}})[_0xce48('0x26')](function(_0x4e4dfd){logger[_0xce48('0x23')](_0xce48('0x1f'),_0x39921b,_0x4e4dfd);_0x2623ce(_0x4e4dfd);});});}function respondWithStatusCode(_0x48b489,_0x3bd179){_0x3bd179=_0x3bd179||0xcc;return function(_0x40f1c3){if(_0x40f1c3){return _0x48b489['sendStatus'](_0x3bd179);}return _0x48b489[_0xce48('0x27')](_0x3bd179)[_0xce48('0x28')]();};}function respondWithResult(_0x43ddf6,_0x1c1c19){_0x1c1c19=_0x1c1c19||0xc8;return function(_0x2ddbc8){if(_0x2ddbc8){return _0x43ddf6[_0xce48('0x27')](_0x1c1c19)[_0xce48('0x29')](_0x2ddbc8);}};}function respondWithFilteredResult(_0x86398,_0x4a5f78){return function(_0x1dad71){if(_0x1dad71){var _0x1afa92=_0x1dad71[_0xce48('0x2a')],_0x300280=_0x4a5f78[_0xce48('0x2b')],_0x54e265=_0x4a5f78[_0xce48('0x2b')]+_0x4a5f78[_0xce48('0x2c')],_0x47bcd0;if(_0x54e265>=_0x1afa92){_0x54e265=_0x1afa92;_0x47bcd0=0xc8;}else{_0x47bcd0=0xce;}_0x86398[_0xce48('0x27')](_0x47bcd0);return _0x86398[_0xce48('0x2d')](_0xce48('0x2e'),_0x300280+'-'+_0x54e265+'/'+_0x1afa92)['json'](_0x1dad71);}return null;};}function patchUpdates(_0x48673e){return function(_0x4553f0){try{jsonpatch[_0xce48('0x2f')](_0x4553f0,_0x48673e,!![]);}catch(_0x41ed8e){return BPromise[_0xce48('0x30')](_0x41ed8e);}return _0x4553f0[_0xce48('0x31')]();};}function saveUpdates(_0xf21ba3,_0xbc3759){return function(_0x17a4df){if(_0x17a4df){return _0x17a4df[_0xce48('0x32')](_0xf21ba3)['then'](function(_0x745e72){return _0x745e72;});}return null;};}function removeEntity(_0x2c5525,_0xe6e4c4){return function(_0x1939fb){if(_0x1939fb){return _0x1939fb[_0xce48('0x33')]()[_0xce48('0x1d')](function(){_0x2c5525[_0xce48('0x27')](0xcc)[_0xce48('0x28')]();});}};}function handleEntityNotFound(_0x24c856,_0x5d1017){return function(_0x1e327e){if(!_0x1e327e){_0x24c856[_0xce48('0x34')](0x194);}return _0x1e327e;};}function handleError(_0x365df9,_0x439dce){_0x439dce=_0x439dce||0x1f4;return function(_0x516919){logger[_0xce48('0x23')](_0x516919['stack']);if(_0x516919[_0xce48('0x35')]){delete _0x516919[_0xce48('0x35')];}_0x365df9[_0xce48('0x27')](_0x439dce)[_0xce48('0x36')](_0x516919);};}exports['index']=function(_0x4a93dd,_0x4e9ade){var _0x5f1a0d={},_0x55c3a0={},_0x432e33={'count':0x0,'rows':[]};var _0x1e714b=_[_0xce48('0x37')](db[_0xce48('0x38')][_0xce48('0x39')],function(_0x446e56){return{'name':_0x446e56[_0xce48('0x3a')],'type':_0x446e56[_0xce48('0x3b')]['key']};});_0x55c3a0['model']=_[_0xce48('0x37')](_0x1e714b,_0xce48('0x35'));_0x55c3a0[_0xce48('0x3c')]=_['keys'](_0x4a93dd['query']);_0x55c3a0['filters']=_[_0xce48('0x3d')](_0x55c3a0['model'],_0x55c3a0[_0xce48('0x3c')]);_0x5f1a0d[_0xce48('0x3e')]=_[_0xce48('0x3d')](_0x55c3a0[_0xce48('0x3f')],qs[_0xce48('0x40')](_0x4a93dd[_0xce48('0x3c')][_0xce48('0x40')]));_0x5f1a0d[_0xce48('0x3e')]=_0x5f1a0d[_0xce48('0x3e')][_0xce48('0x41')]?_0x5f1a0d['attributes']:_0x55c3a0[_0xce48('0x3f')];if(!_0x4a93dd['query'][_0xce48('0x42')](_0xce48('0x43'))){_0x5f1a0d[_0xce48('0x2c')]=qs['limit'](_0x4a93dd['query'][_0xce48('0x2c')]);_0x5f1a0d['offset']=qs[_0xce48('0x2b')](_0x4a93dd[_0xce48('0x3c')][_0xce48('0x2b')]);}_0x5f1a0d['order']=qs[_0xce48('0x44')](_0x4a93dd[_0xce48('0x3c')][_0xce48('0x44')]);_0x5f1a0d['where']=qs[_0xce48('0x45')](_[_0xce48('0x46')](_0x4a93dd[_0xce48('0x3c')],_0x55c3a0['filters']),_0x1e714b);if(_0x4a93dd[_0xce48('0x3c')][_0xce48('0x47')]){_0x5f1a0d[_0xce48('0x48')]=_[_0xce48('0x49')](_0x5f1a0d['where'],{'$or':_[_0xce48('0x37')](_0x1e714b,function(_0x3625f5){if(_0x3625f5[_0xce48('0x3b')]!==_0xce48('0x4a')){var _0x355565={};_0x355565[_0x3625f5[_0xce48('0x35')]]={'$like':'%'+_0x4a93dd[_0xce48('0x3c')][_0xce48('0x47')]+'%'};return _0x355565;}})});}_0x5f1a0d=_[_0xce48('0x49')]({},_0x5f1a0d,_0x4a93dd[_0xce48('0x4b')]);var _0x37d6c0={'where':_0x5f1a0d['where']};return db[_0xce48('0x38')]['count'](_0x37d6c0)[_0xce48('0x1d')](function(_0x4ee4bc){_0x432e33[_0xce48('0x2a')]=_0x4ee4bc;if(_0x4a93dd['query'][_0xce48('0x4c')]){_0x5f1a0d[_0xce48('0x4d')]=[{'all':!![]}];}return db[_0xce48('0x38')][_0xce48('0x4e')](_0x5f1a0d);})[_0xce48('0x1d')](function(_0x2f22d9){_0x432e33[_0xce48('0x4f')]=_0x2f22d9;return _0x432e33;})['then'](respondWithFilteredResult(_0x4e9ade,_0x5f1a0d))['catch'](handleError(_0x4e9ade,null));};exports['show']=function(_0x5affad,_0x1dac56){var _0x28fff6={'raw':![],'where':{'id':_0x5affad['params']['id']}},_0x3279ca={};_0x3279ca['model']=_[_0xce48('0x50')](db[_0xce48('0x38')][_0xce48('0x39')]);_0x3279ca[_0xce48('0x3c')]=_[_0xce48('0x50')](_0x5affad['query']);_0x3279ca['filters']=_['intersection'](_0x3279ca[_0xce48('0x3f')],_0x3279ca[_0xce48('0x3c')]);_0x28fff6[_0xce48('0x3e')]=_[_0xce48('0x3d')](_0x3279ca[_0xce48('0x3f')],qs[_0xce48('0x40')](_0x5affad[_0xce48('0x3c')][_0xce48('0x40')]));_0x28fff6['attributes']=_0x28fff6[_0xce48('0x3e')][_0xce48('0x41')]?_0x28fff6[_0xce48('0x3e')]:_0x3279ca[_0xce48('0x3f')];if(_0x5affad[_0xce48('0x3c')][_0xce48('0x4c')]){_0x28fff6[_0xce48('0x4d')]=[{'all':!![]}];}_0x28fff6=_[_0xce48('0x49')]({},_0x28fff6,_0x5affad[_0xce48('0x4b')]);return db['FreshdeskConfiguration'][_0xce48('0x51')](_0x28fff6)[_0xce48('0x1d')](handleEntityNotFound(_0x1dac56,null))['then'](respondWithResult(_0x1dac56,null))[_0xce48('0x26')](handleError(_0x1dac56,null));};exports[_0xce48('0x52')]=function(_0x4a3240,_0x364469){return db[_0xce48('0x38')]['create'](_0x4a3240[_0xce48('0x53')],{})[_0xce48('0x1d')](respondWithResult(_0x364469,0xc9))['catch'](handleError(_0x364469,null));};exports[_0xce48('0x32')]=function(_0x3477c8,_0x137c71){if(_0x3477c8[_0xce48('0x53')]['id']){delete _0x3477c8[_0xce48('0x53')]['id'];}return db[_0xce48('0x38')][_0xce48('0x51')]({'where':{'id':_0x3477c8[_0xce48('0x54')]['id']}})[_0xce48('0x1d')](handleEntityNotFound(_0x137c71,null))[_0xce48('0x1d')](saveUpdates(_0x3477c8[_0xce48('0x53')],null))[_0xce48('0x1d')](respondWithResult(_0x137c71,null))['catch'](handleError(_0x137c71,null));};exports[_0xce48('0x33')]=function(_0x34934a,_0x3da2f8){return db[_0xce48('0x38')][_0xce48('0x51')]({'where':{'id':_0x34934a[_0xce48('0x54')]['id']}})[_0xce48('0x1d')](handleEntityNotFound(_0x3da2f8,null))[_0xce48('0x1d')](removeEntity(_0x3da2f8,null))[_0xce48('0x26')](handleError(_0x3da2f8,null));};exports[_0xce48('0x55')]=function(_0x6bdf92,_0x4eae95,_0x49d0ed){var _0x3c6251={};var _0xeaf27c={};var _0x23b766;var _0x404aa4;return db[_0xce48('0x38')]['findOne']({'where':{'id':_0x6bdf92[_0xce48('0x54')]['id']}})[_0xce48('0x1d')](handleEntityNotFound(_0x4eae95,null))[_0xce48('0x1d')](function(_0x2fd479){if(_0x2fd479){_0x23b766=_0x2fd479;_0xeaf27c[_0xce48('0x3f')]=_[_0xce48('0x50')](db[_0xce48('0x56')][_0xce48('0x39')]);_0xeaf27c['query']=_[_0xce48('0x50')](_0x6bdf92[_0xce48('0x3c')]);_0xeaf27c['filters']=_[_0xce48('0x3d')](_0xeaf27c['model'],_0xeaf27c['query']);_0x3c6251['attributes']=_[_0xce48('0x3d')](_0xeaf27c['model'],qs[_0xce48('0x40')](_0x6bdf92[_0xce48('0x3c')]['fields']));_0x3c6251[_0xce48('0x3e')]=_0x3c6251[_0xce48('0x3e')][_0xce48('0x41')]?_0x3c6251[_0xce48('0x3e')]:_0xeaf27c[_0xce48('0x3f')];_0x3c6251[_0xce48('0x57')]=qs[_0xce48('0x44')](_0x6bdf92[_0xce48('0x3c')][_0xce48('0x44')]);_0x3c6251[_0xce48('0x48')]=qs[_0xce48('0x45')](_['pick'](_0x6bdf92[_0xce48('0x3c')],_0xeaf27c[_0xce48('0x45')]));if(_0x6bdf92[_0xce48('0x3c')]['filter']){_0x3c6251['where']=_[_0xce48('0x49')](_0x3c6251[_0xce48('0x48')],{'$or':_[_0xce48('0x37')](_0x3c6251[_0xce48('0x3e')],function(_0x56b298){var _0x396123={};_0x396123[_0x56b298]={'$like':'%'+_0x6bdf92[_0xce48('0x3c')][_0xce48('0x47')]+'%'};return _0x396123;})});}_0x3c6251=_['merge']({},_0x3c6251,_0x6bdf92[_0xce48('0x4b')]);return _0x23b766[_0xce48('0x55')](_0x3c6251);}})[_0xce48('0x1d')](function(_0x2136c4){if(_0x2136c4){_0x404aa4=_0x2136c4[_0xce48('0x41')];if(!_0x6bdf92[_0xce48('0x3c')]['hasOwnProperty'](_0xce48('0x43'))){_0x3c6251['limit']=qs[_0xce48('0x2c')](_0x6bdf92[_0xce48('0x3c')][_0xce48('0x2c')]);_0x3c6251[_0xce48('0x2b')]=qs[_0xce48('0x2b')](_0x6bdf92[_0xce48('0x3c')]['offset']);}return _0x23b766[_0xce48('0x55')](_0x3c6251);}})['then'](function(_0x4d4e85){if(_0x4d4e85){return _0x4d4e85?{'count':_0x404aa4,'rows':_0x4d4e85}:null;}})['then'](respondWithResult(_0x4eae95,null))[_0xce48('0x26')](handleError(_0x4eae95,null));};exports['getSubjects']=function(_0x232a29,_0x3ed7c0,_0x56cb7c){var _0x196ab9={};var _0x537c86={};var _0x2fa967;var _0x597ea6;return db[_0xce48('0x38')][_0xce48('0x58')]({'where':{'id':_0x232a29['params']['id']}})[_0xce48('0x1d')](handleEntityNotFound(_0x3ed7c0,null))[_0xce48('0x1d')](function(_0x2489ad){if(_0x2489ad){_0x2fa967=_0x2489ad;_0x537c86[_0xce48('0x3f')]=_[_0xce48('0x50')](db[_0xce48('0x56')][_0xce48('0x39')]);_0x537c86[_0xce48('0x3c')]=_[_0xce48('0x50')](_0x232a29[_0xce48('0x3c')]);_0x537c86[_0xce48('0x45')]=_[_0xce48('0x3d')](_0x537c86[_0xce48('0x3f')],_0x537c86[_0xce48('0x3c')]);_0x196ab9[_0xce48('0x3e')]=_[_0xce48('0x3d')](_0x537c86[_0xce48('0x3f')],qs[_0xce48('0x40')](_0x232a29[_0xce48('0x3c')][_0xce48('0x40')]));_0x196ab9['attributes']=_0x196ab9[_0xce48('0x3e')][_0xce48('0x41')]?_0x196ab9['attributes']:_0x537c86['model'];_0x196ab9[_0xce48('0x57')]=qs['sort'](_0x232a29[_0xce48('0x3c')][_0xce48('0x44')]);_0x196ab9[_0xce48('0x48')]=qs[_0xce48('0x45')](_[_0xce48('0x46')](_0x232a29['query'],_0x537c86['filters']));if(_0x232a29[_0xce48('0x3c')][_0xce48('0x47')]){_0x196ab9[_0xce48('0x48')]=_[_0xce48('0x49')](_0x196ab9[_0xce48('0x48')],{'$or':_['map'](_0x196ab9[_0xce48('0x3e')],function(_0x332cdf){var _0x7e7045={};_0x7e7045[_0x332cdf]={'$like':'%'+_0x232a29['query'][_0xce48('0x47')]+'%'};return _0x7e7045;})});}_0x196ab9=_[_0xce48('0x49')]({},_0x196ab9,_0x232a29[_0xce48('0x4b')]);return _0x2fa967[_0xce48('0x59')](_0x196ab9);}})[_0xce48('0x1d')](function(_0x32291b){if(_0x32291b){_0x597ea6=_0x32291b[_0xce48('0x41')];if(!_0x232a29[_0xce48('0x3c')]['hasOwnProperty'](_0xce48('0x43'))){_0x196ab9[_0xce48('0x2c')]=qs[_0xce48('0x2c')](_0x232a29[_0xce48('0x3c')]['limit']);_0x196ab9[_0xce48('0x2b')]=qs[_0xce48('0x2b')](_0x232a29['query'][_0xce48('0x2b')]);}return _0x2fa967['getSubjects'](_0x196ab9);}})[_0xce48('0x1d')](function(_0x2d2f47){if(_0x2d2f47){return _0x2d2f47?{'count':_0x597ea6,'rows':_0x2d2f47}:null;}})[_0xce48('0x1d')](respondWithResult(_0x3ed7c0,null))['catch'](handleError(_0x3ed7c0,null));};exports[_0xce48('0x5a')]=function(_0x141203,_0x4f7464,_0x4e905a){var _0x4b0ace={};var _0x1d34bc={};var _0x2ce59e;var _0x3024c9;return db['FreshdeskConfiguration']['findOne']({'where':{'id':_0x141203['params']['id']}})[_0xce48('0x1d')](handleEntityNotFound(_0x4f7464,null))[_0xce48('0x1d')](function(_0x4118ea){if(_0x4118ea){_0x2ce59e=_0x4118ea;_0x1d34bc[_0xce48('0x3f')]=_[_0xce48('0x50')](db[_0xce48('0x56')][_0xce48('0x39')]);_0x1d34bc[_0xce48('0x3c')]=_['keys'](_0x141203[_0xce48('0x3c')]);_0x1d34bc[_0xce48('0x45')]=_[_0xce48('0x3d')](_0x1d34bc[_0xce48('0x3f')],_0x1d34bc[_0xce48('0x3c')]);_0x4b0ace['attributes']=_['intersection'](_0x1d34bc['model'],qs['fields'](_0x141203['query']['fields']));_0x4b0ace['attributes']=_0x4b0ace[_0xce48('0x3e')][_0xce48('0x41')]?_0x4b0ace[_0xce48('0x3e')]:_0x1d34bc[_0xce48('0x3f')];_0x4b0ace[_0xce48('0x57')]=qs[_0xce48('0x44')](_0x141203[_0xce48('0x3c')][_0xce48('0x44')]);_0x4b0ace[_0xce48('0x48')]=qs[_0xce48('0x45')](_[_0xce48('0x46')](_0x141203[_0xce48('0x3c')],_0x1d34bc[_0xce48('0x45')]));if(_0x141203[_0xce48('0x3c')][_0xce48('0x47')]){_0x4b0ace[_0xce48('0x48')]=_['merge'](_0x4b0ace['where'],{'$or':_['map'](_0x4b0ace[_0xce48('0x3e')],function(_0x57416f){var _0x30f165={};_0x30f165[_0x57416f]={'$like':'%'+_0x141203[_0xce48('0x3c')][_0xce48('0x47')]+'%'};return _0x30f165;})});}_0x4b0ace=_[_0xce48('0x49')]({},_0x4b0ace,_0x141203[_0xce48('0x4b')]);return _0x2ce59e[_0xce48('0x5a')](_0x4b0ace);}})['then'](function(_0x5a660a){if(_0x5a660a){_0x3024c9=_0x5a660a[_0xce48('0x41')];if(!_0x141203[_0xce48('0x3c')][_0xce48('0x42')](_0xce48('0x43'))){_0x4b0ace[_0xce48('0x2c')]=qs['limit'](_0x141203[_0xce48('0x3c')][_0xce48('0x2c')]);_0x4b0ace['offset']=qs[_0xce48('0x2b')](_0x141203[_0xce48('0x3c')]['offset']);}return _0x2ce59e['getDescriptions'](_0x4b0ace);}})[_0xce48('0x1d')](function(_0x40dcd4){if(_0x40dcd4){return _0x40dcd4?{'count':_0x3024c9,'rows':_0x40dcd4}:null;}})['then'](respondWithResult(_0x4f7464,null))[_0xce48('0x26')](handleError(_0x4f7464,null));};exports['getTags']=function(_0x24ee87,_0x377b46,_0x54d82e){var _0x190c2a={};var _0x5ded4a={};var _0x530b00;var _0x1e83ad;return db[_0xce48('0x38')][_0xce48('0x58')]({'where':{'id':_0x24ee87[_0xce48('0x54')]['id']}})['then'](handleEntityNotFound(_0x377b46,null))[_0xce48('0x1d')](function(_0x14f844){if(_0x14f844){_0x530b00=_0x14f844;_0x5ded4a[_0xce48('0x3f')]=_[_0xce48('0x50')](db[_0xce48('0x5b')][_0xce48('0x39')]);_0x5ded4a[_0xce48('0x3c')]=_[_0xce48('0x50')](_0x24ee87[_0xce48('0x3c')]);_0x5ded4a['filters']=_[_0xce48('0x3d')](_0x5ded4a[_0xce48('0x3f')],_0x5ded4a[_0xce48('0x3c')]);_0x190c2a[_0xce48('0x3e')]=_[_0xce48('0x3d')](_0x5ded4a[_0xce48('0x3f')],qs['fields'](_0x24ee87[_0xce48('0x3c')][_0xce48('0x40')]));_0x190c2a['attributes']=_0x190c2a[_0xce48('0x3e')][_0xce48('0x41')]?_0x190c2a[_0xce48('0x3e')]:_0x5ded4a[_0xce48('0x3f')];_0x190c2a['order']=qs[_0xce48('0x44')](_0x24ee87[_0xce48('0x3c')][_0xce48('0x44')]);_0x190c2a[_0xce48('0x48')]=qs[_0xce48('0x45')](_[_0xce48('0x46')](_0x24ee87[_0xce48('0x3c')],_0x5ded4a[_0xce48('0x45')]));if(_0x24ee87[_0xce48('0x3c')]['filter']){_0x190c2a['where']=_['merge'](_0x190c2a[_0xce48('0x48')],{'$or':_['map'](_0x190c2a[_0xce48('0x3e')],function(_0x2df5ff){var _0x4ca00f={};_0x4ca00f[_0x2df5ff]={'$like':'%'+_0x24ee87['query'][_0xce48('0x47')]+'%'};return _0x4ca00f;})});}_0x190c2a=_[_0xce48('0x49')]({},_0x190c2a,_0x24ee87['options']);return _0x530b00['getTags'](_0x190c2a);}})[_0xce48('0x1d')](function(_0x39cba3){if(_0x39cba3){_0x1e83ad=_0x39cba3[_0xce48('0x41')];if(!_0x24ee87['query'][_0xce48('0x42')]('nolimit')){_0x190c2a[_0xce48('0x2c')]=qs['limit'](_0x24ee87[_0xce48('0x3c')]['limit']);_0x190c2a[_0xce48('0x2b')]=qs[_0xce48('0x2b')](_0x24ee87[_0xce48('0x3c')][_0xce48('0x2b')]);}return _0x530b00[_0xce48('0x5c')](_0x190c2a);}})[_0xce48('0x1d')](function(_0x310846){if(_0x310846){return _0x310846?{'count':_0x1e83ad,'rows':_0x310846}:null;}})[_0xce48('0x1d')](respondWithResult(_0x377b46,null))['catch'](handleError(_0x377b46,null));};exports[_0xce48('0x5d')]=function(_0x383c32,_0x9f0d87,_0x44d3d4){if(_0x383c32[_0xce48('0x53')]['id']){delete _0x383c32['body']['id'];}return db[_0xce48('0x38')][_0xce48('0x58')]({'where':{'id':_0x383c32[_0xce48('0x54')]['id']}})[_0xce48('0x1d')](handleEntityNotFound(_0x9f0d87,null))[_0xce48('0x1d')](function(_0x23e78a){if(_0x23e78a){return _0x23e78a[_0xce48('0x5d')](_0x383c32['body'][_0xce48('0x5e')]||[]);}return null;})[_0xce48('0x1d')](respondWithResult(_0x9f0d87,null))[_0xce48('0x26')](handleError(_0x9f0d87,null));};