aeea12ac5775ec16db454d89395bab2dedbd7b71
[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 _0x8b47=['lodash','squel','crypto','jsforce','desk.js','papaparse','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','status','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','then','destroy','error','stack','name','send','index','map','FreshdeskConfiguration','rawAttributes','fieldName','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','where','pick','merge','type','VIRTUAL','filter','options','includeAll','include','findAll','show','params','catch','create','body','find','getFields','FreshdeskField','order','findOne','getSubjects','getDescriptions','getTags','Tag','setTags','ids','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra'];(function(_0x36f5b7,_0x26c652){var _0x4b2b3b=function(_0x1561e1){while(--_0x1561e1){_0x36f5b7['push'](_0x36f5b7['shift']());}};_0x4b2b3b(++_0x26c652);}(_0x8b47,0xa0));var _0x78b4=function(_0x397c6e,_0x4ffd47){_0x397c6e=_0x397c6e-0x0;var _0x1ceb2a=_0x8b47[_0x397c6e];return _0x1ceb2a;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x78b4('0x0'));var zipdir=require(_0x78b4('0x1'));var jsonpatch=require(_0x78b4('0x2'));var rp=require(_0x78b4('0x3'));var moment=require('moment');var BPromise=require(_0x78b4('0x4'));var Mustache=require(_0x78b4('0x5'));var util=require(_0x78b4('0x6'));var path=require(_0x78b4('0x7'));var sox=require(_0x78b4('0x8'));var csv=require(_0x78b4('0x9'));var ejs=require(_0x78b4('0xa'));var fs=require('fs');var fs_extra=require(_0x78b4('0xb'));var _=require(_0x78b4('0xc'));var squel=require(_0x78b4('0xd'));var crypto=require(_0x78b4('0xe'));var jsforce=require(_0x78b4('0xf'));var deskjs=require(_0x78b4('0x10'));var toCsv=require(_0x78b4('0x9'));var querystring=require('querystring');var Papa=require(_0x78b4('0x11'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0x78b4('0x12'));var as=require(_0x78b4('0x13'));var hardwareService=require(_0x78b4('0x14'));var logger=require(_0x78b4('0x15'))('api');var utils=require(_0x78b4('0x16'));var config=require('../../config/environment');var licenseUtil=require(_0x78b4('0x17'));var db=require(_0x78b4('0x18'))['db'];function respondWithStatusCode(_0x1eb92d,_0x278b1e){_0x278b1e=_0x278b1e||0xcc;return function(_0xb01a6d){if(_0xb01a6d){return _0x1eb92d[_0x78b4('0x19')](_0x278b1e);}return _0x1eb92d[_0x78b4('0x1a')](_0x278b1e)['end']();};}function respondWithResult(_0x128241,_0x16f9bb){_0x16f9bb=_0x16f9bb||0xc8;return function(_0x2fc9fb){if(_0x2fc9fb){return _0x128241[_0x78b4('0x1a')](_0x16f9bb)[_0x78b4('0x1b')](_0x2fc9fb);}};}function respondWithFilteredResult(_0x15a7cf,_0x27aef1){return function(_0x4f5075){if(_0x4f5075){var _0x5cf9a9=typeof _0x27aef1[_0x78b4('0x1c')]===_0x78b4('0x1d')&&typeof _0x27aef1[_0x78b4('0x1e')]===_0x78b4('0x1d');var _0x1d1d3b=_0x4f5075[_0x78b4('0x1f')];var _0x5be72d=_0x5cf9a9?0x0:_0x27aef1['offset'];var _0x52bb82=_0x5cf9a9?_0x4f5075[_0x78b4('0x1f')]:_0x27aef1[_0x78b4('0x1c')]+_0x27aef1[_0x78b4('0x1e')];var _0x51bbd1;if(_0x52bb82>=_0x1d1d3b){_0x52bb82=_0x1d1d3b;_0x51bbd1=0xc8;}else{_0x51bbd1=0xce;}_0x15a7cf[_0x78b4('0x1a')](_0x51bbd1);return _0x15a7cf[_0x78b4('0x20')](_0x78b4('0x21'),_0x5be72d+'-'+_0x52bb82+'/'+_0x1d1d3b)[_0x78b4('0x1b')](_0x4f5075);}return null;};}function patchUpdates(_0x3425b5){return function(_0x218992){try{jsonpatch[_0x78b4('0x22')](_0x218992,_0x3425b5,!![]);}catch(_0x48da98){return BPromise[_0x78b4('0x23')](_0x48da98);}return _0x218992[_0x78b4('0x24')]();};}function saveUpdates(_0x4ca117,_0x112189){return function(_0x2a1b81){if(_0x2a1b81){return _0x2a1b81[_0x78b4('0x25')](_0x4ca117)[_0x78b4('0x26')](function(_0x2ac1b4){return _0x2ac1b4;});}return null;};}function removeEntity(_0x286d98,_0x3cf2fe){return function(_0x4d3b59){if(_0x4d3b59){return _0x4d3b59[_0x78b4('0x27')]()[_0x78b4('0x26')](function(){_0x286d98['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x4e3166,_0x2f47bb){return function(_0xbe6090){if(!_0xbe6090){_0x4e3166['sendStatus'](0x194);}return _0xbe6090;};}function handleError(_0x4d906f,_0x5d0a57){_0x5d0a57=_0x5d0a57||0x1f4;return function(_0x299bc1){logger[_0x78b4('0x28')](_0x299bc1[_0x78b4('0x29')]);if(_0x299bc1[_0x78b4('0x2a')]){delete _0x299bc1[_0x78b4('0x2a')];}_0x4d906f[_0x78b4('0x1a')](_0x5d0a57)[_0x78b4('0x2b')](_0x299bc1);};}exports[_0x78b4('0x2c')]=function(_0x29e719,_0x4e4568){var _0x2067da={},_0x2f16e1={},_0x4192bc={'count':0x0,'rows':[]};var _0x11295f=_[_0x78b4('0x2d')](db[_0x78b4('0x2e')][_0x78b4('0x2f')],function(_0x3ff77f){return{'name':_0x3ff77f[_0x78b4('0x30')],'type':_0x3ff77f['type']['key']};});_0x2f16e1[_0x78b4('0x31')]=_['map'](_0x11295f,'name');_0x2f16e1[_0x78b4('0x32')]=_[_0x78b4('0x33')](_0x29e719[_0x78b4('0x32')]);_0x2f16e1[_0x78b4('0x34')]=_[_0x78b4('0x35')](_0x2f16e1[_0x78b4('0x31')],_0x2f16e1[_0x78b4('0x32')]);_0x2067da[_0x78b4('0x36')]=_[_0x78b4('0x35')](_0x2f16e1[_0x78b4('0x31')],qs['fields'](_0x29e719[_0x78b4('0x32')][_0x78b4('0x37')]));_0x2067da[_0x78b4('0x36')]=_0x2067da[_0x78b4('0x36')][_0x78b4('0x38')]?_0x2067da['attributes']:_0x2f16e1[_0x78b4('0x31')];if(!_0x29e719[_0x78b4('0x32')][_0x78b4('0x39')](_0x78b4('0x3a'))){_0x2067da[_0x78b4('0x1e')]=qs[_0x78b4('0x1e')](_0x29e719[_0x78b4('0x32')][_0x78b4('0x1e')]);_0x2067da[_0x78b4('0x1c')]=qs[_0x78b4('0x1c')](_0x29e719[_0x78b4('0x32')][_0x78b4('0x1c')]);}_0x2067da['order']=qs[_0x78b4('0x3b')](_0x29e719['query']['sort']);_0x2067da[_0x78b4('0x3c')]=qs[_0x78b4('0x34')](_[_0x78b4('0x3d')](_0x29e719[_0x78b4('0x32')],_0x2f16e1[_0x78b4('0x34')]),_0x11295f);if(_0x29e719[_0x78b4('0x32')]['filter']){_0x2067da['where']=_[_0x78b4('0x3e')](_0x2067da[_0x78b4('0x3c')],{'$or':_[_0x78b4('0x2d')](_0x11295f,function(_0x1f7379){if(_0x1f7379[_0x78b4('0x3f')]!==_0x78b4('0x40')){var _0x53cb11={};_0x53cb11[_0x1f7379[_0x78b4('0x2a')]]={'$like':'%'+_0x29e719[_0x78b4('0x32')][_0x78b4('0x41')]+'%'};return _0x53cb11;}})});}_0x2067da=_[_0x78b4('0x3e')]({},_0x2067da,_0x29e719[_0x78b4('0x42')]);var _0x1f87da={'where':_0x2067da[_0x78b4('0x3c')]};return db['FreshdeskConfiguration'][_0x78b4('0x1f')](_0x1f87da)[_0x78b4('0x26')](function(_0x535954){_0x4192bc['count']=_0x535954;if(_0x29e719[_0x78b4('0x32')][_0x78b4('0x43')]){_0x2067da[_0x78b4('0x44')]=[{'all':!![]}];}return db['FreshdeskConfiguration'][_0x78b4('0x45')](_0x2067da);})[_0x78b4('0x26')](function(_0x3245bb){_0x4192bc['rows']=_0x3245bb;return _0x4192bc;})[_0x78b4('0x26')](respondWithFilteredResult(_0x4e4568,_0x2067da))['catch'](handleError(_0x4e4568,null));};exports[_0x78b4('0x46')]=function(_0x173548,_0x30d939){var _0x50bd69={'raw':![],'where':{'id':_0x173548[_0x78b4('0x47')]['id']}},_0x8eb689={};_0x8eb689[_0x78b4('0x31')]=_[_0x78b4('0x33')](db[_0x78b4('0x2e')][_0x78b4('0x2f')]);_0x8eb689[_0x78b4('0x32')]=_[_0x78b4('0x33')](_0x173548[_0x78b4('0x32')]);_0x8eb689['filters']=_[_0x78b4('0x35')](_0x8eb689['model'],_0x8eb689['query']);_0x50bd69[_0x78b4('0x36')]=_[_0x78b4('0x35')](_0x8eb689[_0x78b4('0x31')],qs[_0x78b4('0x37')](_0x173548['query'][_0x78b4('0x37')]));_0x50bd69[_0x78b4('0x36')]=_0x50bd69[_0x78b4('0x36')]['length']?_0x50bd69['attributes']:_0x8eb689['model'];if(_0x173548['query'][_0x78b4('0x43')]){_0x50bd69[_0x78b4('0x44')]=[{'all':!![]}];}_0x50bd69=_['merge']({},_0x50bd69,_0x173548[_0x78b4('0x42')]);return db['FreshdeskConfiguration']['find'](_0x50bd69)[_0x78b4('0x26')](handleEntityNotFound(_0x30d939,null))[_0x78b4('0x26')](respondWithResult(_0x30d939,null))[_0x78b4('0x48')](handleError(_0x30d939,null));};exports[_0x78b4('0x49')]=function(_0x21b0fa,_0x229cd9){return db[_0x78b4('0x2e')][_0x78b4('0x49')](_0x21b0fa['body'],{})['then'](respondWithResult(_0x229cd9,0xc9))[_0x78b4('0x48')](handleError(_0x229cd9,null));};exports[_0x78b4('0x25')]=function(_0x524b73,_0x55da66){if(_0x524b73[_0x78b4('0x4a')]['id']){delete _0x524b73[_0x78b4('0x4a')]['id'];}return db['FreshdeskConfiguration'][_0x78b4('0x4b')]({'where':{'id':_0x524b73[_0x78b4('0x47')]['id']}})[_0x78b4('0x26')](handleEntityNotFound(_0x55da66,null))[_0x78b4('0x26')](saveUpdates(_0x524b73[_0x78b4('0x4a')],null))['then'](respondWithResult(_0x55da66,null))[_0x78b4('0x48')](handleError(_0x55da66,null));};exports['destroy']=function(_0x85b18e,_0x37139e){return db[_0x78b4('0x2e')][_0x78b4('0x4b')]({'where':{'id':_0x85b18e['params']['id']}})[_0x78b4('0x26')](handleEntityNotFound(_0x37139e,null))[_0x78b4('0x26')](removeEntity(_0x37139e,null))[_0x78b4('0x48')](handleError(_0x37139e,null));};exports[_0x78b4('0x4c')]=function(_0x1285cc,_0x595d8a,_0x36d33d){var _0x15dec5={};var _0x17b3ab={};var _0xe7ba7;var _0x19dc2e;return db[_0x78b4('0x2e')]['findOne']({'where':{'id':_0x1285cc[_0x78b4('0x47')]['id']}})[_0x78b4('0x26')](handleEntityNotFound(_0x595d8a,null))[_0x78b4('0x26')](function(_0x521b93){if(_0x521b93){_0xe7ba7=_0x521b93;_0x17b3ab[_0x78b4('0x31')]=_[_0x78b4('0x33')](db[_0x78b4('0x4d')][_0x78b4('0x2f')]);_0x17b3ab[_0x78b4('0x32')]=_['keys'](_0x1285cc[_0x78b4('0x32')]);_0x17b3ab[_0x78b4('0x34')]=_[_0x78b4('0x35')](_0x17b3ab['model'],_0x17b3ab['query']);_0x15dec5[_0x78b4('0x36')]=_[_0x78b4('0x35')](_0x17b3ab[_0x78b4('0x31')],qs[_0x78b4('0x37')](_0x1285cc[_0x78b4('0x32')][_0x78b4('0x37')]));_0x15dec5[_0x78b4('0x36')]=_0x15dec5[_0x78b4('0x36')]['length']?_0x15dec5['attributes']:_0x17b3ab[_0x78b4('0x31')];_0x15dec5[_0x78b4('0x4e')]=qs['sort'](_0x1285cc[_0x78b4('0x32')][_0x78b4('0x3b')]);_0x15dec5[_0x78b4('0x3c')]=qs['filters'](_['pick'](_0x1285cc[_0x78b4('0x32')],_0x17b3ab[_0x78b4('0x34')]));if(_0x1285cc[_0x78b4('0x32')][_0x78b4('0x41')]){_0x15dec5['where']=_[_0x78b4('0x3e')](_0x15dec5[_0x78b4('0x3c')],{'$or':_[_0x78b4('0x2d')](_0x15dec5[_0x78b4('0x36')],function(_0x455e10){var _0x4052c3={};_0x4052c3[_0x455e10]={'$like':'%'+_0x1285cc[_0x78b4('0x32')][_0x78b4('0x41')]+'%'};return _0x4052c3;})});}_0x15dec5=_['merge']({},_0x15dec5,_0x1285cc[_0x78b4('0x42')]);return _0xe7ba7[_0x78b4('0x4c')](_0x15dec5);}})[_0x78b4('0x26')](function(_0x51adcc){if(_0x51adcc){_0x19dc2e=_0x51adcc['length'];if(!_0x1285cc['query']['hasOwnProperty'](_0x78b4('0x3a'))){_0x15dec5[_0x78b4('0x1e')]=qs[_0x78b4('0x1e')](_0x1285cc[_0x78b4('0x32')]['limit']);_0x15dec5[_0x78b4('0x1c')]=qs[_0x78b4('0x1c')](_0x1285cc[_0x78b4('0x32')][_0x78b4('0x1c')]);}return _0xe7ba7[_0x78b4('0x4c')](_0x15dec5);}})[_0x78b4('0x26')](function(_0x32ef86){if(_0x32ef86){return _0x32ef86?{'count':_0x19dc2e,'rows':_0x32ef86}:null;}})['then'](respondWithResult(_0x595d8a,null))['catch'](handleError(_0x595d8a,null));};exports['getSubjects']=function(_0x4db502,_0x2d9cff,_0x511197){var _0x2fe75b={};var _0x57888b={};var _0x25b931;var _0x252460;return db[_0x78b4('0x2e')][_0x78b4('0x4f')]({'where':{'id':_0x4db502['params']['id']}})['then'](handleEntityNotFound(_0x2d9cff,null))[_0x78b4('0x26')](function(_0x21dc74){if(_0x21dc74){_0x25b931=_0x21dc74;_0x57888b[_0x78b4('0x31')]=_['keys'](db[_0x78b4('0x4d')][_0x78b4('0x2f')]);_0x57888b['query']=_['keys'](_0x4db502[_0x78b4('0x32')]);_0x57888b[_0x78b4('0x34')]=_['intersection'](_0x57888b['model'],_0x57888b[_0x78b4('0x32')]);_0x2fe75b[_0x78b4('0x36')]=_[_0x78b4('0x35')](_0x57888b[_0x78b4('0x31')],qs['fields'](_0x4db502[_0x78b4('0x32')][_0x78b4('0x37')]));_0x2fe75b[_0x78b4('0x36')]=_0x2fe75b[_0x78b4('0x36')][_0x78b4('0x38')]?_0x2fe75b[_0x78b4('0x36')]:_0x57888b[_0x78b4('0x31')];_0x2fe75b['order']=qs[_0x78b4('0x3b')](_0x4db502[_0x78b4('0x32')][_0x78b4('0x3b')]);_0x2fe75b['where']=qs[_0x78b4('0x34')](_['pick'](_0x4db502[_0x78b4('0x32')],_0x57888b[_0x78b4('0x34')]));if(_0x4db502['query'][_0x78b4('0x41')]){_0x2fe75b[_0x78b4('0x3c')]=_[_0x78b4('0x3e')](_0x2fe75b[_0x78b4('0x3c')],{'$or':_[_0x78b4('0x2d')](_0x2fe75b['attributes'],function(_0x153529){var _0x3f80a5={};_0x3f80a5[_0x153529]={'$like':'%'+_0x4db502[_0x78b4('0x32')][_0x78b4('0x41')]+'%'};return _0x3f80a5;})});}_0x2fe75b=_[_0x78b4('0x3e')]({},_0x2fe75b,_0x4db502['options']);return _0x25b931[_0x78b4('0x50')](_0x2fe75b);}})['then'](function(_0x3544e3){if(_0x3544e3){_0x252460=_0x3544e3[_0x78b4('0x38')];if(!_0x4db502['query'][_0x78b4('0x39')](_0x78b4('0x3a'))){_0x2fe75b[_0x78b4('0x1e')]=qs[_0x78b4('0x1e')](_0x4db502[_0x78b4('0x32')][_0x78b4('0x1e')]);_0x2fe75b[_0x78b4('0x1c')]=qs[_0x78b4('0x1c')](_0x4db502[_0x78b4('0x32')][_0x78b4('0x1c')]);}return _0x25b931[_0x78b4('0x50')](_0x2fe75b);}})[_0x78b4('0x26')](function(_0x2a7e4e){if(_0x2a7e4e){return _0x2a7e4e?{'count':_0x252460,'rows':_0x2a7e4e}:null;}})['then'](respondWithResult(_0x2d9cff,null))[_0x78b4('0x48')](handleError(_0x2d9cff,null));};exports['getDescriptions']=function(_0x3e7768,_0x1670bc,_0x3e47b1){var _0x452576={};var _0x5e1541={};var _0x36976e;var _0x223d80;return db[_0x78b4('0x2e')][_0x78b4('0x4f')]({'where':{'id':_0x3e7768[_0x78b4('0x47')]['id']}})[_0x78b4('0x26')](handleEntityNotFound(_0x1670bc,null))['then'](function(_0x27074c){if(_0x27074c){_0x36976e=_0x27074c;_0x5e1541[_0x78b4('0x31')]=_['keys'](db[_0x78b4('0x4d')][_0x78b4('0x2f')]);_0x5e1541[_0x78b4('0x32')]=_['keys'](_0x3e7768[_0x78b4('0x32')]);_0x5e1541['filters']=_[_0x78b4('0x35')](_0x5e1541[_0x78b4('0x31')],_0x5e1541[_0x78b4('0x32')]);_0x452576[_0x78b4('0x36')]=_[_0x78b4('0x35')](_0x5e1541['model'],qs[_0x78b4('0x37')](_0x3e7768[_0x78b4('0x32')][_0x78b4('0x37')]));_0x452576[_0x78b4('0x36')]=_0x452576[_0x78b4('0x36')][_0x78b4('0x38')]?_0x452576['attributes']:_0x5e1541[_0x78b4('0x31')];_0x452576[_0x78b4('0x4e')]=qs[_0x78b4('0x3b')](_0x3e7768[_0x78b4('0x32')][_0x78b4('0x3b')]);_0x452576[_0x78b4('0x3c')]=qs[_0x78b4('0x34')](_['pick'](_0x3e7768['query'],_0x5e1541[_0x78b4('0x34')]));if(_0x3e7768[_0x78b4('0x32')][_0x78b4('0x41')]){_0x452576['where']=_['merge'](_0x452576['where'],{'$or':_[_0x78b4('0x2d')](_0x452576[_0x78b4('0x36')],function(_0x1e7f29){var _0x57e6e0={};_0x57e6e0[_0x1e7f29]={'$like':'%'+_0x3e7768['query'][_0x78b4('0x41')]+'%'};return _0x57e6e0;})});}_0x452576=_[_0x78b4('0x3e')]({},_0x452576,_0x3e7768['options']);return _0x36976e[_0x78b4('0x51')](_0x452576);}})[_0x78b4('0x26')](function(_0x3dadf6){if(_0x3dadf6){_0x223d80=_0x3dadf6['length'];if(!_0x3e7768[_0x78b4('0x32')]['hasOwnProperty'](_0x78b4('0x3a'))){_0x452576[_0x78b4('0x1e')]=qs[_0x78b4('0x1e')](_0x3e7768['query'][_0x78b4('0x1e')]);_0x452576[_0x78b4('0x1c')]=qs[_0x78b4('0x1c')](_0x3e7768[_0x78b4('0x32')][_0x78b4('0x1c')]);}return _0x36976e['getDescriptions'](_0x452576);}})['then'](function(_0x48a304){if(_0x48a304){return _0x48a304?{'count':_0x223d80,'rows':_0x48a304}:null;}})[_0x78b4('0x26')](respondWithResult(_0x1670bc,null))[_0x78b4('0x48')](handleError(_0x1670bc,null));};exports[_0x78b4('0x52')]=function(_0x52aac0,_0x24d88d,_0xf75e31){var _0x5a1a35={};var _0x4c3b76={};var _0x4f8026;var _0x2d283f;return db[_0x78b4('0x2e')][_0x78b4('0x4f')]({'where':{'id':_0x52aac0[_0x78b4('0x47')]['id']}})['then'](handleEntityNotFound(_0x24d88d,null))[_0x78b4('0x26')](function(_0x84efc0){if(_0x84efc0){_0x4f8026=_0x84efc0;_0x4c3b76[_0x78b4('0x31')]=_[_0x78b4('0x33')](db[_0x78b4('0x53')][_0x78b4('0x2f')]);_0x4c3b76['query']=_[_0x78b4('0x33')](_0x52aac0[_0x78b4('0x32')]);_0x4c3b76['filters']=_[_0x78b4('0x35')](_0x4c3b76['model'],_0x4c3b76[_0x78b4('0x32')]);_0x5a1a35[_0x78b4('0x36')]=_[_0x78b4('0x35')](_0x4c3b76[_0x78b4('0x31')],qs[_0x78b4('0x37')](_0x52aac0['query'][_0x78b4('0x37')]));_0x5a1a35[_0x78b4('0x36')]=_0x5a1a35[_0x78b4('0x36')][_0x78b4('0x38')]?_0x5a1a35[_0x78b4('0x36')]:_0x4c3b76[_0x78b4('0x31')];_0x5a1a35[_0x78b4('0x4e')]=qs[_0x78b4('0x3b')](_0x52aac0[_0x78b4('0x32')][_0x78b4('0x3b')]);_0x5a1a35[_0x78b4('0x3c')]=qs[_0x78b4('0x34')](_[_0x78b4('0x3d')](_0x52aac0[_0x78b4('0x32')],_0x4c3b76[_0x78b4('0x34')]));if(_0x52aac0[_0x78b4('0x32')]['filter']){_0x5a1a35['where']=_[_0x78b4('0x3e')](_0x5a1a35['where'],{'$or':_[_0x78b4('0x2d')](_0x5a1a35[_0x78b4('0x36')],function(_0x2cd908){var _0x2108a7={};_0x2108a7[_0x2cd908]={'$like':'%'+_0x52aac0[_0x78b4('0x32')][_0x78b4('0x41')]+'%'};return _0x2108a7;})});}_0x5a1a35=_[_0x78b4('0x3e')]({},_0x5a1a35,_0x52aac0[_0x78b4('0x42')]);return _0x4f8026[_0x78b4('0x52')](_0x5a1a35);}})[_0x78b4('0x26')](function(_0x300441){if(_0x300441){_0x2d283f=_0x300441[_0x78b4('0x38')];if(!_0x52aac0['query'][_0x78b4('0x39')]('nolimit')){_0x5a1a35[_0x78b4('0x1e')]=qs[_0x78b4('0x1e')](_0x52aac0[_0x78b4('0x32')][_0x78b4('0x1e')]);_0x5a1a35[_0x78b4('0x1c')]=qs[_0x78b4('0x1c')](_0x52aac0['query'][_0x78b4('0x1c')]);}return _0x4f8026[_0x78b4('0x52')](_0x5a1a35);}})[_0x78b4('0x26')](function(_0x1f883b){if(_0x1f883b){return _0x1f883b?{'count':_0x2d283f,'rows':_0x1f883b}:null;}})[_0x78b4('0x26')](respondWithResult(_0x24d88d,null))[_0x78b4('0x48')](handleError(_0x24d88d,null));};exports['setTags']=function(_0x238ea4,_0x56cf72,_0x445d5f){if(_0x238ea4['body']['id']){delete _0x238ea4[_0x78b4('0x4a')]['id'];}return db[_0x78b4('0x2e')][_0x78b4('0x4f')]({'where':{'id':_0x238ea4[_0x78b4('0x47')]['id']}})[_0x78b4('0x26')](handleEntityNotFound(_0x56cf72,null))['then'](function(_0x586ae2){if(_0x586ae2){return _0x586ae2[_0x78b4('0x54')](_0x238ea4[_0x78b4('0x4a')][_0x78b4('0x55')]||[]);}return null;})[_0x78b4('0x26')](respondWithResult(_0x56cf72,null))['catch'](handleError(_0x56cf72,null));};