5df04cb630a03137db0da6f13e837496d371db21
[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 _0x9dda=['Content-Range','apply','reject','update','then','destroy','error','stack','name','send','map','rawAttributes','fieldName','type','key','query','filters','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','merge','filter','FreshdeskConfiguration','findAll','catch','params','keys','includeAll','options','create','body','find','findOne','FreshdeskField','getFields','getSubjects','getDescriptions','getTags','setTags','ids','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','ejs','fs-extra','squel','crypto','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','end','status','json','offset','undefined','limit','count','set'];(function(_0x2f3bb,_0x41a7cd){var _0x4b012b=function(_0xc63b92){while(--_0xc63b92){_0x2f3bb['push'](_0x2f3bb['shift']());}};_0x4b012b(++_0x41a7cd);}(_0x9dda,0x184));var _0xa9dd=function(_0x15aae8,_0x19c24c){_0x15aae8=_0x15aae8-0x0;var _0x4a87ee=_0x9dda[_0x15aae8];return _0x4a87ee;};'use strict';var emlformat=require(_0xa9dd('0x0'));var rimraf=require(_0xa9dd('0x1'));var zipdir=require(_0xa9dd('0x2'));var jsonpatch=require(_0xa9dd('0x3'));var rp=require(_0xa9dd('0x4'));var moment=require(_0xa9dd('0x5'));var BPromise=require(_0xa9dd('0x6'));var Mustache=require(_0xa9dd('0x7'));var util=require(_0xa9dd('0x8'));var path=require(_0xa9dd('0x9'));var sox=require(_0xa9dd('0xa'));var csv=require('to-csv');var ejs=require(_0xa9dd('0xb'));var fs=require('fs');var fs_extra=require(_0xa9dd('0xc'));var _=require('lodash');var squel=require(_0xa9dd('0xd'));var crypto=require(_0xa9dd('0xe'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0xa9dd('0xf'));var querystring=require(_0xa9dd('0x10'));var Papa=require(_0xa9dd('0x11'));var Redis=require(_0xa9dd('0x12'));var authService=require(_0xa9dd('0x13'));var qs=require(_0xa9dd('0x14'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xa9dd('0x15'));var logger=require(_0xa9dd('0x16'))(_0xa9dd('0x17'));var utils=require(_0xa9dd('0x18'));var config=require(_0xa9dd('0x19'));var licenseUtil=require(_0xa9dd('0x1a'));var db=require(_0xa9dd('0x1b'))['db'];function respondWithStatusCode(_0x4e10bf,_0x218dec){_0x218dec=_0x218dec||0xcc;return function(_0x428bb0){if(_0x428bb0){return _0x4e10bf[_0xa9dd('0x1c')](_0x218dec);}return _0x4e10bf['status'](_0x218dec)[_0xa9dd('0x1d')]();};}function respondWithResult(_0x327844,_0x5ed29e){_0x5ed29e=_0x5ed29e||0xc8;return function(_0x116489){if(_0x116489){return _0x327844[_0xa9dd('0x1e')](_0x5ed29e)[_0xa9dd('0x1f')](_0x116489);}};}function respondWithFilteredResult(_0x2d74de,_0x5c740f){return function(_0x5bec59){if(_0x5bec59){var _0x38d004=typeof _0x5c740f[_0xa9dd('0x20')]===_0xa9dd('0x21')&&typeof _0x5c740f[_0xa9dd('0x22')]===_0xa9dd('0x21');var _0x292a52=_0x5bec59[_0xa9dd('0x23')];var _0x496497=_0x38d004?0x0:_0x5c740f['offset'];var _0x412fe1=_0x38d004?_0x5bec59[_0xa9dd('0x23')]:_0x5c740f[_0xa9dd('0x20')]+_0x5c740f['limit'];var _0x3cd386;if(_0x412fe1>=_0x292a52){_0x412fe1=_0x292a52;_0x3cd386=0xc8;}else{_0x3cd386=0xce;}_0x2d74de[_0xa9dd('0x1e')](_0x3cd386);return _0x2d74de[_0xa9dd('0x24')](_0xa9dd('0x25'),_0x496497+'-'+_0x412fe1+'/'+_0x292a52)[_0xa9dd('0x1f')](_0x5bec59);}return null;};}function patchUpdates(_0x368248){return function(_0x3543df){try{jsonpatch[_0xa9dd('0x26')](_0x3543df,_0x368248,!![]);}catch(_0x478052){return BPromise[_0xa9dd('0x27')](_0x478052);}return _0x3543df['save']();};}function saveUpdates(_0x2747dc,_0x3df755){return function(_0x12087d){if(_0x12087d){return _0x12087d[_0xa9dd('0x28')](_0x2747dc)[_0xa9dd('0x29')](function(_0x1e4fc8){return _0x1e4fc8;});}return null;};}function removeEntity(_0xed7f4c,_0x5ddd65){return function(_0x38156c){if(_0x38156c){return _0x38156c[_0xa9dd('0x2a')]()['then'](function(){_0xed7f4c[_0xa9dd('0x1e')](0xcc)[_0xa9dd('0x1d')]();});}};}function handleEntityNotFound(_0x1329f4,_0x4e8593){return function(_0x484930){if(!_0x484930){_0x1329f4['sendStatus'](0x194);}return _0x484930;};}function handleError(_0x31a3a8,_0x276c0d){_0x276c0d=_0x276c0d||0x1f4;return function(_0x5e2568){logger[_0xa9dd('0x2b')](_0x5e2568[_0xa9dd('0x2c')]);if(_0x5e2568[_0xa9dd('0x2d')]){delete _0x5e2568['name'];}_0x31a3a8[_0xa9dd('0x1e')](_0x276c0d)[_0xa9dd('0x2e')](_0x5e2568);};}exports['index']=function(_0x1f41d0,_0x3c371d){var _0x475543={},_0x3f30dc={},_0x5e2aca={'count':0x0,'rows':[]};var _0x190007=_[_0xa9dd('0x2f')](db['FreshdeskConfiguration'][_0xa9dd('0x30')],function(_0x17c962){return{'name':_0x17c962[_0xa9dd('0x31')],'type':_0x17c962[_0xa9dd('0x32')][_0xa9dd('0x33')]};});_0x3f30dc['model']=_[_0xa9dd('0x2f')](_0x190007,_0xa9dd('0x2d'));_0x3f30dc[_0xa9dd('0x34')]=_['keys'](_0x1f41d0[_0xa9dd('0x34')]);_0x3f30dc[_0xa9dd('0x35')]=_[_0xa9dd('0x36')](_0x3f30dc[_0xa9dd('0x37')],_0x3f30dc[_0xa9dd('0x34')]);_0x475543[_0xa9dd('0x38')]=_['intersection'](_0x3f30dc[_0xa9dd('0x37')],qs[_0xa9dd('0x39')](_0x1f41d0[_0xa9dd('0x34')][_0xa9dd('0x39')]));_0x475543[_0xa9dd('0x38')]=_0x475543[_0xa9dd('0x38')][_0xa9dd('0x3a')]?_0x475543[_0xa9dd('0x38')]:_0x3f30dc[_0xa9dd('0x37')];if(!_0x1f41d0['query'][_0xa9dd('0x3b')](_0xa9dd('0x3c'))){_0x475543[_0xa9dd('0x22')]=qs['limit'](_0x1f41d0[_0xa9dd('0x34')][_0xa9dd('0x22')]);_0x475543[_0xa9dd('0x20')]=qs[_0xa9dd('0x20')](_0x1f41d0[_0xa9dd('0x34')][_0xa9dd('0x20')]);}_0x475543[_0xa9dd('0x3d')]=qs[_0xa9dd('0x3e')](_0x1f41d0[_0xa9dd('0x34')][_0xa9dd('0x3e')]);_0x475543[_0xa9dd('0x3f')]=qs[_0xa9dd('0x35')](_[_0xa9dd('0x40')](_0x1f41d0[_0xa9dd('0x34')],_0x3f30dc[_0xa9dd('0x35')]),_0x190007);if(_0x1f41d0[_0xa9dd('0x34')]['filter']){_0x475543['where']=_[_0xa9dd('0x41')](_0x475543['where'],{'$or':_['map'](_0x190007,function(_0x8b9721){if(_0x8b9721[_0xa9dd('0x32')]!=='VIRTUAL'){var _0xf3c308={};_0xf3c308[_0x8b9721[_0xa9dd('0x2d')]]={'$like':'%'+_0x1f41d0[_0xa9dd('0x34')][_0xa9dd('0x42')]+'%'};return _0xf3c308;}})});}_0x475543=_[_0xa9dd('0x41')]({},_0x475543,_0x1f41d0['options']);var _0x2ecca5={'where':_0x475543[_0xa9dd('0x3f')]};return db[_0xa9dd('0x43')][_0xa9dd('0x23')](_0x2ecca5)[_0xa9dd('0x29')](function(_0x3e3bcf){_0x5e2aca['count']=_0x3e3bcf;if(_0x1f41d0['query']['includeAll']){_0x475543['include']=[{'all':!![]}];}return db[_0xa9dd('0x43')][_0xa9dd('0x44')](_0x475543);})[_0xa9dd('0x29')](function(_0x205fa7){_0x5e2aca['rows']=_0x205fa7;return _0x5e2aca;})['then'](respondWithFilteredResult(_0x3c371d,_0x475543))[_0xa9dd('0x45')](handleError(_0x3c371d,null));};exports['show']=function(_0x35efbc,_0x55d441){var _0x3e62e5={'raw':![],'where':{'id':_0x35efbc[_0xa9dd('0x46')]['id']}},_0x27f206={};_0x27f206[_0xa9dd('0x37')]=_[_0xa9dd('0x47')](db['FreshdeskConfiguration'][_0xa9dd('0x30')]);_0x27f206[_0xa9dd('0x34')]=_[_0xa9dd('0x47')](_0x35efbc['query']);_0x27f206['filters']=_[_0xa9dd('0x36')](_0x27f206[_0xa9dd('0x37')],_0x27f206[_0xa9dd('0x34')]);_0x3e62e5[_0xa9dd('0x38')]=_[_0xa9dd('0x36')](_0x27f206[_0xa9dd('0x37')],qs['fields'](_0x35efbc[_0xa9dd('0x34')][_0xa9dd('0x39')]));_0x3e62e5[_0xa9dd('0x38')]=_0x3e62e5[_0xa9dd('0x38')][_0xa9dd('0x3a')]?_0x3e62e5[_0xa9dd('0x38')]:_0x27f206[_0xa9dd('0x37')];if(_0x35efbc[_0xa9dd('0x34')][_0xa9dd('0x48')]){_0x3e62e5['include']=[{'all':!![]}];}_0x3e62e5=_[_0xa9dd('0x41')]({},_0x3e62e5,_0x35efbc[_0xa9dd('0x49')]);return db[_0xa9dd('0x43')]['find'](_0x3e62e5)['then'](handleEntityNotFound(_0x55d441,null))['then'](respondWithResult(_0x55d441,null))[_0xa9dd('0x45')](handleError(_0x55d441,null));};exports[_0xa9dd('0x4a')]=function(_0x5571e5,_0x4f89b1){return db[_0xa9dd('0x43')][_0xa9dd('0x4a')](_0x5571e5['body'],{})['then'](respondWithResult(_0x4f89b1,0xc9))['catch'](handleError(_0x4f89b1,null));};exports['update']=function(_0x10722b,_0x171976){if(_0x10722b[_0xa9dd('0x4b')]['id']){delete _0x10722b[_0xa9dd('0x4b')]['id'];}return db[_0xa9dd('0x43')]['find']({'where':{'id':_0x10722b['params']['id']}})[_0xa9dd('0x29')](handleEntityNotFound(_0x171976,null))[_0xa9dd('0x29')](saveUpdates(_0x10722b[_0xa9dd('0x4b')],null))[_0xa9dd('0x29')](respondWithResult(_0x171976,null))['catch'](handleError(_0x171976,null));};exports['destroy']=function(_0x567d69,_0x1e6c48){return db['FreshdeskConfiguration'][_0xa9dd('0x4c')]({'where':{'id':_0x567d69[_0xa9dd('0x46')]['id']}})[_0xa9dd('0x29')](handleEntityNotFound(_0x1e6c48,null))['then'](removeEntity(_0x1e6c48,null))[_0xa9dd('0x45')](handleError(_0x1e6c48,null));};exports['getFields']=function(_0x32c471,_0x4f8426,_0x2825be){var _0x282cc7={};var _0x47e44e={};var _0x538436;var _0x239947;return db[_0xa9dd('0x43')][_0xa9dd('0x4d')]({'where':{'id':_0x32c471[_0xa9dd('0x46')]['id']}})[_0xa9dd('0x29')](handleEntityNotFound(_0x4f8426,null))[_0xa9dd('0x29')](function(_0x3e1754){if(_0x3e1754){_0x538436=_0x3e1754;_0x47e44e[_0xa9dd('0x37')]=_[_0xa9dd('0x47')](db[_0xa9dd('0x4e')][_0xa9dd('0x30')]);_0x47e44e[_0xa9dd('0x34')]=_[_0xa9dd('0x47')](_0x32c471[_0xa9dd('0x34')]);_0x47e44e['filters']=_[_0xa9dd('0x36')](_0x47e44e[_0xa9dd('0x37')],_0x47e44e[_0xa9dd('0x34')]);_0x282cc7[_0xa9dd('0x38')]=_['intersection'](_0x47e44e[_0xa9dd('0x37')],qs[_0xa9dd('0x39')](_0x32c471[_0xa9dd('0x34')][_0xa9dd('0x39')]));_0x282cc7[_0xa9dd('0x38')]=_0x282cc7['attributes']['length']?_0x282cc7[_0xa9dd('0x38')]:_0x47e44e[_0xa9dd('0x37')];_0x282cc7[_0xa9dd('0x3d')]=qs[_0xa9dd('0x3e')](_0x32c471['query'][_0xa9dd('0x3e')]);_0x282cc7[_0xa9dd('0x3f')]=qs[_0xa9dd('0x35')](_[_0xa9dd('0x40')](_0x32c471[_0xa9dd('0x34')],_0x47e44e[_0xa9dd('0x35')]));if(_0x32c471[_0xa9dd('0x34')][_0xa9dd('0x42')]){_0x282cc7[_0xa9dd('0x3f')]=_[_0xa9dd('0x41')](_0x282cc7[_0xa9dd('0x3f')],{'$or':_['map'](_0x282cc7[_0xa9dd('0x38')],function(_0x5e05a5){var _0x37ee71={};_0x37ee71[_0x5e05a5]={'$like':'%'+_0x32c471[_0xa9dd('0x34')][_0xa9dd('0x42')]+'%'};return _0x37ee71;})});}_0x282cc7=_[_0xa9dd('0x41')]({},_0x282cc7,_0x32c471[_0xa9dd('0x49')]);return _0x538436[_0xa9dd('0x4f')](_0x282cc7);}})[_0xa9dd('0x29')](function(_0x55a669){if(_0x55a669){_0x239947=_0x55a669[_0xa9dd('0x3a')];if(!_0x32c471[_0xa9dd('0x34')][_0xa9dd('0x3b')](_0xa9dd('0x3c'))){_0x282cc7[_0xa9dd('0x22')]=qs['limit'](_0x32c471[_0xa9dd('0x34')][_0xa9dd('0x22')]);_0x282cc7[_0xa9dd('0x20')]=qs['offset'](_0x32c471[_0xa9dd('0x34')][_0xa9dd('0x20')]);}return _0x538436[_0xa9dd('0x4f')](_0x282cc7);}})[_0xa9dd('0x29')](function(_0x2ee80e){if(_0x2ee80e){return _0x2ee80e?{'count':_0x239947,'rows':_0x2ee80e}:null;}})[_0xa9dd('0x29')](respondWithResult(_0x4f8426,null))['catch'](handleError(_0x4f8426,null));};exports[_0xa9dd('0x50')]=function(_0x26fb0b,_0x394d6e,_0x455abe){var _0x98e7ff={};var _0x2b2d9c={};var _0x4af9c2;var _0x5912b8;return db[_0xa9dd('0x43')][_0xa9dd('0x4d')]({'where':{'id':_0x26fb0b[_0xa9dd('0x46')]['id']}})[_0xa9dd('0x29')](handleEntityNotFound(_0x394d6e,null))[_0xa9dd('0x29')](function(_0x5046ac){if(_0x5046ac){_0x4af9c2=_0x5046ac;_0x2b2d9c[_0xa9dd('0x37')]=_[_0xa9dd('0x47')](db[_0xa9dd('0x4e')][_0xa9dd('0x30')]);_0x2b2d9c['query']=_[_0xa9dd('0x47')](_0x26fb0b['query']);_0x2b2d9c[_0xa9dd('0x35')]=_['intersection'](_0x2b2d9c['model'],_0x2b2d9c[_0xa9dd('0x34')]);_0x98e7ff[_0xa9dd('0x38')]=_[_0xa9dd('0x36')](_0x2b2d9c[_0xa9dd('0x37')],qs[_0xa9dd('0x39')](_0x26fb0b[_0xa9dd('0x34')][_0xa9dd('0x39')]));_0x98e7ff[_0xa9dd('0x38')]=_0x98e7ff['attributes']['length']?_0x98e7ff['attributes']:_0x2b2d9c[_0xa9dd('0x37')];_0x98e7ff['order']=qs[_0xa9dd('0x3e')](_0x26fb0b[_0xa9dd('0x34')]['sort']);_0x98e7ff[_0xa9dd('0x3f')]=qs[_0xa9dd('0x35')](_[_0xa9dd('0x40')](_0x26fb0b[_0xa9dd('0x34')],_0x2b2d9c['filters']));if(_0x26fb0b[_0xa9dd('0x34')][_0xa9dd('0x42')]){_0x98e7ff[_0xa9dd('0x3f')]=_[_0xa9dd('0x41')](_0x98e7ff[_0xa9dd('0x3f')],{'$or':_['map'](_0x98e7ff[_0xa9dd('0x38')],function(_0x16dd14){var _0x49c7f3={};_0x49c7f3[_0x16dd14]={'$like':'%'+_0x26fb0b[_0xa9dd('0x34')]['filter']+'%'};return _0x49c7f3;})});}_0x98e7ff=_[_0xa9dd('0x41')]({},_0x98e7ff,_0x26fb0b[_0xa9dd('0x49')]);return _0x4af9c2[_0xa9dd('0x50')](_0x98e7ff);}})[_0xa9dd('0x29')](function(_0x54bead){if(_0x54bead){_0x5912b8=_0x54bead['length'];if(!_0x26fb0b[_0xa9dd('0x34')][_0xa9dd('0x3b')](_0xa9dd('0x3c'))){_0x98e7ff[_0xa9dd('0x22')]=qs[_0xa9dd('0x22')](_0x26fb0b[_0xa9dd('0x34')][_0xa9dd('0x22')]);_0x98e7ff[_0xa9dd('0x20')]=qs[_0xa9dd('0x20')](_0x26fb0b[_0xa9dd('0x34')][_0xa9dd('0x20')]);}return _0x4af9c2['getSubjects'](_0x98e7ff);}})['then'](function(_0x4ebb0f){if(_0x4ebb0f){return _0x4ebb0f?{'count':_0x5912b8,'rows':_0x4ebb0f}:null;}})[_0xa9dd('0x29')](respondWithResult(_0x394d6e,null))['catch'](handleError(_0x394d6e,null));};exports[_0xa9dd('0x51')]=function(_0x9cb385,_0x59f76c,_0x3099e9){var _0xc7d8cc={};var _0x37a188={};var _0x2e653f;var _0x29fbae;return db[_0xa9dd('0x43')][_0xa9dd('0x4d')]({'where':{'id':_0x9cb385[_0xa9dd('0x46')]['id']}})[_0xa9dd('0x29')](handleEntityNotFound(_0x59f76c,null))[_0xa9dd('0x29')](function(_0x24e3b0){if(_0x24e3b0){_0x2e653f=_0x24e3b0;_0x37a188['model']=_[_0xa9dd('0x47')](db[_0xa9dd('0x4e')][_0xa9dd('0x30')]);_0x37a188[_0xa9dd('0x34')]=_[_0xa9dd('0x47')](_0x9cb385[_0xa9dd('0x34')]);_0x37a188[_0xa9dd('0x35')]=_[_0xa9dd('0x36')](_0x37a188[_0xa9dd('0x37')],_0x37a188[_0xa9dd('0x34')]);_0xc7d8cc['attributes']=_[_0xa9dd('0x36')](_0x37a188[_0xa9dd('0x37')],qs[_0xa9dd('0x39')](_0x9cb385[_0xa9dd('0x34')][_0xa9dd('0x39')]));_0xc7d8cc[_0xa9dd('0x38')]=_0xc7d8cc[_0xa9dd('0x38')][_0xa9dd('0x3a')]?_0xc7d8cc[_0xa9dd('0x38')]:_0x37a188['model'];_0xc7d8cc[_0xa9dd('0x3d')]=qs['sort'](_0x9cb385['query'][_0xa9dd('0x3e')]);_0xc7d8cc[_0xa9dd('0x3f')]=qs['filters'](_[_0xa9dd('0x40')](_0x9cb385['query'],_0x37a188['filters']));if(_0x9cb385[_0xa9dd('0x34')][_0xa9dd('0x42')]){_0xc7d8cc[_0xa9dd('0x3f')]=_['merge'](_0xc7d8cc[_0xa9dd('0x3f')],{'$or':_[_0xa9dd('0x2f')](_0xc7d8cc[_0xa9dd('0x38')],function(_0x3a0342){var _0x1cabbe={};_0x1cabbe[_0x3a0342]={'$like':'%'+_0x9cb385['query'][_0xa9dd('0x42')]+'%'};return _0x1cabbe;})});}_0xc7d8cc=_[_0xa9dd('0x41')]({},_0xc7d8cc,_0x9cb385[_0xa9dd('0x49')]);return _0x2e653f[_0xa9dd('0x51')](_0xc7d8cc);}})[_0xa9dd('0x29')](function(_0x344979){if(_0x344979){_0x29fbae=_0x344979['length'];if(!_0x9cb385[_0xa9dd('0x34')][_0xa9dd('0x3b')](_0xa9dd('0x3c'))){_0xc7d8cc[_0xa9dd('0x22')]=qs['limit'](_0x9cb385['query']['limit']);_0xc7d8cc[_0xa9dd('0x20')]=qs['offset'](_0x9cb385[_0xa9dd('0x34')][_0xa9dd('0x20')]);}return _0x2e653f['getDescriptions'](_0xc7d8cc);}})['then'](function(_0x45ad11){if(_0x45ad11){return _0x45ad11?{'count':_0x29fbae,'rows':_0x45ad11}:null;}})[_0xa9dd('0x29')](respondWithResult(_0x59f76c,null))['catch'](handleError(_0x59f76c,null));};exports[_0xa9dd('0x52')]=function(_0x1d1003,_0x29e2cf,_0x2c5ad8){var _0x1f4949={};var _0x3a00e7={};var _0xffd080;var _0x2105d7;return db[_0xa9dd('0x43')][_0xa9dd('0x4d')]({'where':{'id':_0x1d1003[_0xa9dd('0x46')]['id']}})[_0xa9dd('0x29')](handleEntityNotFound(_0x29e2cf,null))[_0xa9dd('0x29')](function(_0x326365){if(_0x326365){_0xffd080=_0x326365;_0x3a00e7[_0xa9dd('0x37')]=_[_0xa9dd('0x47')](db['Tag'][_0xa9dd('0x30')]);_0x3a00e7[_0xa9dd('0x34')]=_[_0xa9dd('0x47')](_0x1d1003['query']);_0x3a00e7[_0xa9dd('0x35')]=_[_0xa9dd('0x36')](_0x3a00e7[_0xa9dd('0x37')],_0x3a00e7[_0xa9dd('0x34')]);_0x1f4949[_0xa9dd('0x38')]=_[_0xa9dd('0x36')](_0x3a00e7[_0xa9dd('0x37')],qs[_0xa9dd('0x39')](_0x1d1003[_0xa9dd('0x34')][_0xa9dd('0x39')]));_0x1f4949[_0xa9dd('0x38')]=_0x1f4949[_0xa9dd('0x38')][_0xa9dd('0x3a')]?_0x1f4949[_0xa9dd('0x38')]:_0x3a00e7[_0xa9dd('0x37')];_0x1f4949[_0xa9dd('0x3d')]=qs[_0xa9dd('0x3e')](_0x1d1003[_0xa9dd('0x34')][_0xa9dd('0x3e')]);_0x1f4949['where']=qs['filters'](_['pick'](_0x1d1003['query'],_0x3a00e7['filters']));if(_0x1d1003['query']['filter']){_0x1f4949['where']=_[_0xa9dd('0x41')](_0x1f4949[_0xa9dd('0x3f')],{'$or':_[_0xa9dd('0x2f')](_0x1f4949[_0xa9dd('0x38')],function(_0x21d677){var _0x52e4de={};_0x52e4de[_0x21d677]={'$like':'%'+_0x1d1003['query'][_0xa9dd('0x42')]+'%'};return _0x52e4de;})});}_0x1f4949=_[_0xa9dd('0x41')]({},_0x1f4949,_0x1d1003[_0xa9dd('0x49')]);return _0xffd080[_0xa9dd('0x52')](_0x1f4949);}})[_0xa9dd('0x29')](function(_0x319daf){if(_0x319daf){_0x2105d7=_0x319daf['length'];if(!_0x1d1003['query'][_0xa9dd('0x3b')]('nolimit')){_0x1f4949[_0xa9dd('0x22')]=qs[_0xa9dd('0x22')](_0x1d1003['query'][_0xa9dd('0x22')]);_0x1f4949['offset']=qs['offset'](_0x1d1003[_0xa9dd('0x34')][_0xa9dd('0x20')]);}return _0xffd080[_0xa9dd('0x52')](_0x1f4949);}})[_0xa9dd('0x29')](function(_0x24c92b){if(_0x24c92b){return _0x24c92b?{'count':_0x2105d7,'rows':_0x24c92b}:null;}})['then'](respondWithResult(_0x29e2cf,null))[_0xa9dd('0x45')](handleError(_0x29e2cf,null));};exports['setTags']=function(_0x54d47d,_0x1f321d,_0x4f88d1){if(_0x54d47d[_0xa9dd('0x4b')]['id']){delete _0x54d47d['body']['id'];}return db[_0xa9dd('0x43')][_0xa9dd('0x4d')]({'where':{'id':_0x54d47d[_0xa9dd('0x46')]['id']}})['then'](handleEntityNotFound(_0x1f321d,null))[_0xa9dd('0x29')](function(_0x44e3b7){if(_0x44e3b7){return _0x44e3b7[_0xa9dd('0x53')](_0x54d47d[_0xa9dd('0x4b')][_0xa9dd('0x54')]||[]);}return null;})['then'](respondWithResult(_0x1f321d,null))[_0xa9dd('0x45')](handleError(_0x1f321d,null));};