Built motion from commit a61a4a20.|2.5.46
[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 _0xa6a6=['../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','offset','undefined','count','limit','set','Content-Range','reject','save','update','then','destroy','end','error','stack','name','send','index','map','ZendeskConfiguration','rawAttributes','fieldName','type','key','model','keys','query','filters','attributes','fields','hasOwnProperty','nolimit','sort','where','pick','filter','include','findAll','rows','catch','show','params','intersection','includeAll','options','create','body','find','getFields','findOne','ZendeskField','length','merge','getSubjects','order','getDescriptions','getTags','Tag','setTags','ids','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','to-csv','ejs','fs-extra','squel','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','api'];(function(_0x86bf72,_0x3bb497){var _0x4e8131=function(_0x3f4cfe){while(--_0x3f4cfe){_0x86bf72['push'](_0x86bf72['shift']());}};_0x4e8131(++_0x3bb497);}(_0xa6a6,0xee));var _0x6a6a=function(_0x8de54f,_0x271987){_0x8de54f=_0x8de54f-0x0;var _0x14cba4=_0xa6a6[_0x8de54f];return _0x14cba4;};'use strict';var emlformat=require(_0x6a6a('0x0'));var rimraf=require(_0x6a6a('0x1'));var zipdir=require(_0x6a6a('0x2'));var jsonpatch=require(_0x6a6a('0x3'));var rp=require(_0x6a6a('0x4'));var moment=require(_0x6a6a('0x5'));var BPromise=require(_0x6a6a('0x6'));var Mustache=require(_0x6a6a('0x7'));var util=require(_0x6a6a('0x8'));var path=require('path');var sox=require(_0x6a6a('0x9'));var csv=require(_0x6a6a('0xa'));var ejs=require(_0x6a6a('0xb'));var fs=require('fs');var fs_extra=require(_0x6a6a('0xc'));var _=require('lodash');var squel=require(_0x6a6a('0xd'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x6a6a('0xa'));var querystring=require(_0x6a6a('0xe'));var Papa=require(_0x6a6a('0xf'));var Redis=require('ioredis');var authService=require(_0x6a6a('0x10'));var qs=require(_0x6a6a('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x6a6a('0x12'));var logger=require('../../config/logger')(_0x6a6a('0x13'));var utils=require(_0x6a6a('0x14'));var config=require(_0x6a6a('0x15'));var licenseUtil=require(_0x6a6a('0x16'));var db=require(_0x6a6a('0x17'))['db'];function respondWithStatusCode(_0x1064d6,_0x15f122){_0x15f122=_0x15f122||0xcc;return function(_0x1523ce){if(_0x1523ce){return _0x1064d6[_0x6a6a('0x18')](_0x15f122);}return _0x1064d6[_0x6a6a('0x19')](_0x15f122)['end']();};}function respondWithResult(_0x30f30d,_0x5f4f8c){_0x5f4f8c=_0x5f4f8c||0xc8;return function(_0x50e56c){if(_0x50e56c){return _0x30f30d['status'](_0x5f4f8c)[_0x6a6a('0x1a')](_0x50e56c);}};}function respondWithFilteredResult(_0x20c0b8,_0x2ad95a){return function(_0x17d311){if(_0x17d311){var _0x538955=typeof _0x2ad95a[_0x6a6a('0x1b')]===_0x6a6a('0x1c')&&typeof _0x2ad95a['limit']===_0x6a6a('0x1c');var _0x1e834b=_0x17d311[_0x6a6a('0x1d')];var _0x4a658a=_0x538955?0x0:_0x2ad95a[_0x6a6a('0x1b')];var _0x4b5004=_0x538955?_0x17d311[_0x6a6a('0x1d')]:_0x2ad95a[_0x6a6a('0x1b')]+_0x2ad95a[_0x6a6a('0x1e')];var _0x36f4d4;if(_0x4b5004>=_0x1e834b){_0x4b5004=_0x1e834b;_0x36f4d4=0xc8;}else{_0x36f4d4=0xce;}_0x20c0b8['status'](_0x36f4d4);return _0x20c0b8[_0x6a6a('0x1f')](_0x6a6a('0x20'),_0x4a658a+'-'+_0x4b5004+'/'+_0x1e834b)[_0x6a6a('0x1a')](_0x17d311);}return null;};}function patchUpdates(_0x64afd0){return function(_0x3a6171){try{jsonpatch['apply'](_0x3a6171,_0x64afd0,!![]);}catch(_0x24d484){return BPromise[_0x6a6a('0x21')](_0x24d484);}return _0x3a6171[_0x6a6a('0x22')]();};}function saveUpdates(_0x8700d6,_0x4256cd){return function(_0x975f21){if(_0x975f21){return _0x975f21[_0x6a6a('0x23')](_0x8700d6)[_0x6a6a('0x24')](function(_0x4c6bdf){return _0x4c6bdf;});}return null;};}function removeEntity(_0x5cc7e4,_0x3b95d6){return function(_0x32f74b){if(_0x32f74b){return _0x32f74b[_0x6a6a('0x25')]()['then'](function(){_0x5cc7e4[_0x6a6a('0x19')](0xcc)[_0x6a6a('0x26')]();});}};}function handleEntityNotFound(_0x36716c,_0x42af71){return function(_0x6dcc61){if(!_0x6dcc61){_0x36716c[_0x6a6a('0x18')](0x194);}return _0x6dcc61;};}function handleError(_0xba9e85,_0x5386a8){_0x5386a8=_0x5386a8||0x1f4;return function(_0x28850b){logger[_0x6a6a('0x27')](_0x28850b[_0x6a6a('0x28')]);if(_0x28850b['name']){delete _0x28850b[_0x6a6a('0x29')];}_0xba9e85[_0x6a6a('0x19')](_0x5386a8)[_0x6a6a('0x2a')](_0x28850b);};}exports[_0x6a6a('0x2b')]=function(_0x1686c3,_0x3f5724){var _0x315769={},_0xae19de={},_0x2635a7={'count':0x0,'rows':[]};var _0x2e934e=_[_0x6a6a('0x2c')](db[_0x6a6a('0x2d')][_0x6a6a('0x2e')],function(_0x5a7be0){return{'name':_0x5a7be0[_0x6a6a('0x2f')],'type':_0x5a7be0[_0x6a6a('0x30')][_0x6a6a('0x31')]};});_0xae19de[_0x6a6a('0x32')]=_[_0x6a6a('0x2c')](_0x2e934e,_0x6a6a('0x29'));_0xae19de['query']=_[_0x6a6a('0x33')](_0x1686c3[_0x6a6a('0x34')]);_0xae19de[_0x6a6a('0x35')]=_['intersection'](_0xae19de[_0x6a6a('0x32')],_0xae19de[_0x6a6a('0x34')]);_0x315769[_0x6a6a('0x36')]=_['intersection'](_0xae19de[_0x6a6a('0x32')],qs[_0x6a6a('0x37')](_0x1686c3[_0x6a6a('0x34')][_0x6a6a('0x37')]));_0x315769[_0x6a6a('0x36')]=_0x315769[_0x6a6a('0x36')]['length']?_0x315769[_0x6a6a('0x36')]:_0xae19de[_0x6a6a('0x32')];if(!_0x1686c3['query'][_0x6a6a('0x38')](_0x6a6a('0x39'))){_0x315769[_0x6a6a('0x1e')]=qs[_0x6a6a('0x1e')](_0x1686c3['query']['limit']);_0x315769[_0x6a6a('0x1b')]=qs['offset'](_0x1686c3['query'][_0x6a6a('0x1b')]);}_0x315769['order']=qs['sort'](_0x1686c3['query'][_0x6a6a('0x3a')]);_0x315769[_0x6a6a('0x3b')]=qs[_0x6a6a('0x35')](_[_0x6a6a('0x3c')](_0x1686c3[_0x6a6a('0x34')],_0xae19de[_0x6a6a('0x35')]),_0x2e934e);if(_0x1686c3[_0x6a6a('0x34')]['filter']){_0x315769[_0x6a6a('0x3b')]=_['merge'](_0x315769[_0x6a6a('0x3b')],{'$or':_['map'](_0x2e934e,function(_0x3f5238){if(_0x3f5238[_0x6a6a('0x30')]!=='VIRTUAL'){var _0xd275c7={};_0xd275c7[_0x3f5238[_0x6a6a('0x29')]]={'$like':'%'+_0x1686c3['query'][_0x6a6a('0x3d')]+'%'};return _0xd275c7;}})});}_0x315769=_['merge']({},_0x315769,_0x1686c3['options']);var _0x13e8a5={'where':_0x315769['where']};return db[_0x6a6a('0x2d')]['count'](_0x13e8a5)[_0x6a6a('0x24')](function(_0x510280){_0x2635a7[_0x6a6a('0x1d')]=_0x510280;if(_0x1686c3['query']['includeAll']){_0x315769[_0x6a6a('0x3e')]=[{'all':!![]}];}return db['ZendeskConfiguration'][_0x6a6a('0x3f')](_0x315769);})[_0x6a6a('0x24')](function(_0x273e67){_0x2635a7[_0x6a6a('0x40')]=_0x273e67;return _0x2635a7;})[_0x6a6a('0x24')](respondWithFilteredResult(_0x3f5724,_0x315769))[_0x6a6a('0x41')](handleError(_0x3f5724,null));};exports[_0x6a6a('0x42')]=function(_0x3594ca,_0xe6b818){var _0x3a1531={'raw':![],'where':{'id':_0x3594ca[_0x6a6a('0x43')]['id']}},_0x5a6411={};_0x5a6411[_0x6a6a('0x32')]=_['keys'](db[_0x6a6a('0x2d')][_0x6a6a('0x2e')]);_0x5a6411[_0x6a6a('0x34')]=_[_0x6a6a('0x33')](_0x3594ca[_0x6a6a('0x34')]);_0x5a6411[_0x6a6a('0x35')]=_[_0x6a6a('0x44')](_0x5a6411[_0x6a6a('0x32')],_0x5a6411[_0x6a6a('0x34')]);_0x3a1531['attributes']=_['intersection'](_0x5a6411[_0x6a6a('0x32')],qs['fields'](_0x3594ca['query']['fields']));_0x3a1531['attributes']=_0x3a1531[_0x6a6a('0x36')]['length']?_0x3a1531[_0x6a6a('0x36')]:_0x5a6411[_0x6a6a('0x32')];if(_0x3594ca[_0x6a6a('0x34')][_0x6a6a('0x45')]){_0x3a1531[_0x6a6a('0x3e')]=[{'all':!![]}];}_0x3a1531=_['merge']({},_0x3a1531,_0x3594ca[_0x6a6a('0x46')]);return db[_0x6a6a('0x2d')]['find'](_0x3a1531)[_0x6a6a('0x24')](handleEntityNotFound(_0xe6b818,null))[_0x6a6a('0x24')](respondWithResult(_0xe6b818,null))[_0x6a6a('0x41')](handleError(_0xe6b818,null));};exports[_0x6a6a('0x47')]=function(_0x3c94df,_0x391b59){return db['ZendeskConfiguration'][_0x6a6a('0x47')](_0x3c94df['body'],{})[_0x6a6a('0x24')](respondWithResult(_0x391b59,0xc9))[_0x6a6a('0x41')](handleError(_0x391b59,null));};exports[_0x6a6a('0x23')]=function(_0xc00931,_0x352dcd){if(_0xc00931['body']['id']){delete _0xc00931[_0x6a6a('0x48')]['id'];}return db['ZendeskConfiguration']['find']({'where':{'id':_0xc00931[_0x6a6a('0x43')]['id']}})[_0x6a6a('0x24')](handleEntityNotFound(_0x352dcd,null))['then'](saveUpdates(_0xc00931[_0x6a6a('0x48')],null))['then'](respondWithResult(_0x352dcd,null))[_0x6a6a('0x41')](handleError(_0x352dcd,null));};exports['destroy']=function(_0x592dcf,_0x5c4c0a){return db[_0x6a6a('0x2d')][_0x6a6a('0x49')]({'where':{'id':_0x592dcf['params']['id']}})[_0x6a6a('0x24')](handleEntityNotFound(_0x5c4c0a,null))[_0x6a6a('0x24')](removeEntity(_0x5c4c0a,null))[_0x6a6a('0x41')](handleError(_0x5c4c0a,null));};exports[_0x6a6a('0x4a')]=function(_0x20656d,_0x35f647,_0x10e6c1){var _0x5be7a1={};var _0x1a714f={};var _0x7e08b8;var _0x285e0d;return db[_0x6a6a('0x2d')][_0x6a6a('0x4b')]({'where':{'id':_0x20656d[_0x6a6a('0x43')]['id']}})[_0x6a6a('0x24')](handleEntityNotFound(_0x35f647,null))[_0x6a6a('0x24')](function(_0x5c331e){if(_0x5c331e){_0x7e08b8=_0x5c331e;_0x1a714f[_0x6a6a('0x32')]=_[_0x6a6a('0x33')](db[_0x6a6a('0x4c')]['rawAttributes']);_0x1a714f[_0x6a6a('0x34')]=_[_0x6a6a('0x33')](_0x20656d[_0x6a6a('0x34')]);_0x1a714f[_0x6a6a('0x35')]=_[_0x6a6a('0x44')](_0x1a714f[_0x6a6a('0x32')],_0x1a714f[_0x6a6a('0x34')]);_0x5be7a1[_0x6a6a('0x36')]=_[_0x6a6a('0x44')](_0x1a714f['model'],qs['fields'](_0x20656d[_0x6a6a('0x34')][_0x6a6a('0x37')]));_0x5be7a1[_0x6a6a('0x36')]=_0x5be7a1[_0x6a6a('0x36')][_0x6a6a('0x4d')]?_0x5be7a1[_0x6a6a('0x36')]:_0x1a714f[_0x6a6a('0x32')];_0x5be7a1['order']=qs[_0x6a6a('0x3a')](_0x20656d[_0x6a6a('0x34')][_0x6a6a('0x3a')]);_0x5be7a1[_0x6a6a('0x3b')]=qs['filters'](_[_0x6a6a('0x3c')](_0x20656d[_0x6a6a('0x34')],_0x1a714f['filters']));if(_0x20656d[_0x6a6a('0x34')][_0x6a6a('0x3d')]){_0x5be7a1[_0x6a6a('0x3b')]=_[_0x6a6a('0x4e')](_0x5be7a1[_0x6a6a('0x3b')],{'$or':_[_0x6a6a('0x2c')](_0x5be7a1[_0x6a6a('0x36')],function(_0x504345){var _0x1942ce={};_0x1942ce[_0x504345]={'$like':'%'+_0x20656d[_0x6a6a('0x34')]['filter']+'%'};return _0x1942ce;})});}_0x5be7a1=_['merge']({},_0x5be7a1,_0x20656d['options']);return _0x7e08b8[_0x6a6a('0x4a')](_0x5be7a1);}})[_0x6a6a('0x24')](function(_0xeacc0a){if(_0xeacc0a){_0x285e0d=_0xeacc0a[_0x6a6a('0x4d')];if(!_0x20656d['query'][_0x6a6a('0x38')]('nolimit')){_0x5be7a1[_0x6a6a('0x1e')]=qs[_0x6a6a('0x1e')](_0x20656d['query']['limit']);_0x5be7a1[_0x6a6a('0x1b')]=qs[_0x6a6a('0x1b')](_0x20656d[_0x6a6a('0x34')][_0x6a6a('0x1b')]);}return _0x7e08b8[_0x6a6a('0x4a')](_0x5be7a1);}})[_0x6a6a('0x24')](function(_0x44403a){if(_0x44403a){return _0x44403a?{'count':_0x285e0d,'rows':_0x44403a}:null;}})['then'](respondWithResult(_0x35f647,null))['catch'](handleError(_0x35f647,null));};exports[_0x6a6a('0x4f')]=function(_0x246884,_0x4cacff,_0x3c5603){var _0xfc41bf={};var _0x309978={};var _0x254f4f;var _0x35acd2;return db[_0x6a6a('0x2d')][_0x6a6a('0x4b')]({'where':{'id':_0x246884[_0x6a6a('0x43')]['id']}})[_0x6a6a('0x24')](handleEntityNotFound(_0x4cacff,null))[_0x6a6a('0x24')](function(_0x228ff0){if(_0x228ff0){_0x254f4f=_0x228ff0;_0x309978[_0x6a6a('0x32')]=_['keys'](db[_0x6a6a('0x4c')][_0x6a6a('0x2e')]);_0x309978['query']=_['keys'](_0x246884[_0x6a6a('0x34')]);_0x309978['filters']=_['intersection'](_0x309978[_0x6a6a('0x32')],_0x309978['query']);_0xfc41bf['attributes']=_[_0x6a6a('0x44')](_0x309978[_0x6a6a('0x32')],qs[_0x6a6a('0x37')](_0x246884[_0x6a6a('0x34')]['fields']));_0xfc41bf['attributes']=_0xfc41bf['attributes']['length']?_0xfc41bf[_0x6a6a('0x36')]:_0x309978[_0x6a6a('0x32')];_0xfc41bf[_0x6a6a('0x50')]=qs[_0x6a6a('0x3a')](_0x246884['query']['sort']);_0xfc41bf[_0x6a6a('0x3b')]=qs[_0x6a6a('0x35')](_[_0x6a6a('0x3c')](_0x246884['query'],_0x309978[_0x6a6a('0x35')]));if(_0x246884[_0x6a6a('0x34')]['filter']){_0xfc41bf['where']=_[_0x6a6a('0x4e')](_0xfc41bf['where'],{'$or':_[_0x6a6a('0x2c')](_0xfc41bf['attributes'],function(_0x55ea55){var _0x7f774f={};_0x7f774f[_0x55ea55]={'$like':'%'+_0x246884['query'][_0x6a6a('0x3d')]+'%'};return _0x7f774f;})});}_0xfc41bf=_[_0x6a6a('0x4e')]({},_0xfc41bf,_0x246884[_0x6a6a('0x46')]);return _0x254f4f[_0x6a6a('0x4f')](_0xfc41bf);}})[_0x6a6a('0x24')](function(_0x9bb8ca){if(_0x9bb8ca){_0x35acd2=_0x9bb8ca[_0x6a6a('0x4d')];if(!_0x246884[_0x6a6a('0x34')]['hasOwnProperty'](_0x6a6a('0x39'))){_0xfc41bf[_0x6a6a('0x1e')]=qs['limit'](_0x246884[_0x6a6a('0x34')][_0x6a6a('0x1e')]);_0xfc41bf[_0x6a6a('0x1b')]=qs[_0x6a6a('0x1b')](_0x246884['query']['offset']);}return _0x254f4f[_0x6a6a('0x4f')](_0xfc41bf);}})['then'](function(_0x4b4fd4){if(_0x4b4fd4){return _0x4b4fd4?{'count':_0x35acd2,'rows':_0x4b4fd4}:null;}})[_0x6a6a('0x24')](respondWithResult(_0x4cacff,null))['catch'](handleError(_0x4cacff,null));};exports['getDescriptions']=function(_0x145630,_0x4fbfbe,_0x3ea1e4){var _0x91b65f={};var _0x4d9491={};var _0x4fceb8;var _0x145245;return db[_0x6a6a('0x2d')]['findOne']({'where':{'id':_0x145630[_0x6a6a('0x43')]['id']}})[_0x6a6a('0x24')](handleEntityNotFound(_0x4fbfbe,null))['then'](function(_0x169ad3){if(_0x169ad3){_0x4fceb8=_0x169ad3;_0x4d9491[_0x6a6a('0x32')]=_['keys'](db[_0x6a6a('0x4c')][_0x6a6a('0x2e')]);_0x4d9491['query']=_['keys'](_0x145630[_0x6a6a('0x34')]);_0x4d9491[_0x6a6a('0x35')]=_[_0x6a6a('0x44')](_0x4d9491[_0x6a6a('0x32')],_0x4d9491[_0x6a6a('0x34')]);_0x91b65f['attributes']=_['intersection'](_0x4d9491[_0x6a6a('0x32')],qs[_0x6a6a('0x37')](_0x145630['query'][_0x6a6a('0x37')]));_0x91b65f[_0x6a6a('0x36')]=_0x91b65f[_0x6a6a('0x36')][_0x6a6a('0x4d')]?_0x91b65f[_0x6a6a('0x36')]:_0x4d9491[_0x6a6a('0x32')];_0x91b65f[_0x6a6a('0x50')]=qs[_0x6a6a('0x3a')](_0x145630[_0x6a6a('0x34')]['sort']);_0x91b65f['where']=qs[_0x6a6a('0x35')](_['pick'](_0x145630[_0x6a6a('0x34')],_0x4d9491[_0x6a6a('0x35')]));if(_0x145630[_0x6a6a('0x34')][_0x6a6a('0x3d')]){_0x91b65f[_0x6a6a('0x3b')]=_[_0x6a6a('0x4e')](_0x91b65f[_0x6a6a('0x3b')],{'$or':_[_0x6a6a('0x2c')](_0x91b65f[_0x6a6a('0x36')],function(_0x52a507){var _0xb85796={};_0xb85796[_0x52a507]={'$like':'%'+_0x145630[_0x6a6a('0x34')][_0x6a6a('0x3d')]+'%'};return _0xb85796;})});}_0x91b65f=_[_0x6a6a('0x4e')]({},_0x91b65f,_0x145630[_0x6a6a('0x46')]);return _0x4fceb8[_0x6a6a('0x51')](_0x91b65f);}})['then'](function(_0x32853a){if(_0x32853a){_0x145245=_0x32853a[_0x6a6a('0x4d')];if(!_0x145630[_0x6a6a('0x34')][_0x6a6a('0x38')](_0x6a6a('0x39'))){_0x91b65f['limit']=qs['limit'](_0x145630[_0x6a6a('0x34')][_0x6a6a('0x1e')]);_0x91b65f[_0x6a6a('0x1b')]=qs[_0x6a6a('0x1b')](_0x145630['query'][_0x6a6a('0x1b')]);}return _0x4fceb8[_0x6a6a('0x51')](_0x91b65f);}})[_0x6a6a('0x24')](function(_0x5e6935){if(_0x5e6935){return _0x5e6935?{'count':_0x145245,'rows':_0x5e6935}:null;}})[_0x6a6a('0x24')](respondWithResult(_0x4fbfbe,null))[_0x6a6a('0x41')](handleError(_0x4fbfbe,null));};exports[_0x6a6a('0x52')]=function(_0x34c332,_0x232878,_0x59a9d2){var _0x4afdfc={};var _0x44403b={};var _0x5bb9cd;var _0x360fd7;return db['ZendeskConfiguration'][_0x6a6a('0x4b')]({'where':{'id':_0x34c332[_0x6a6a('0x43')]['id']}})[_0x6a6a('0x24')](handleEntityNotFound(_0x232878,null))['then'](function(_0x3ddf9c){if(_0x3ddf9c){_0x5bb9cd=_0x3ddf9c;_0x44403b['model']=_[_0x6a6a('0x33')](db[_0x6a6a('0x53')][_0x6a6a('0x2e')]);_0x44403b[_0x6a6a('0x34')]=_[_0x6a6a('0x33')](_0x34c332[_0x6a6a('0x34')]);_0x44403b['filters']=_[_0x6a6a('0x44')](_0x44403b[_0x6a6a('0x32')],_0x44403b[_0x6a6a('0x34')]);_0x4afdfc[_0x6a6a('0x36')]=_[_0x6a6a('0x44')](_0x44403b[_0x6a6a('0x32')],qs[_0x6a6a('0x37')](_0x34c332[_0x6a6a('0x34')][_0x6a6a('0x37')]));_0x4afdfc['attributes']=_0x4afdfc[_0x6a6a('0x36')][_0x6a6a('0x4d')]?_0x4afdfc[_0x6a6a('0x36')]:_0x44403b[_0x6a6a('0x32')];_0x4afdfc[_0x6a6a('0x50')]=qs[_0x6a6a('0x3a')](_0x34c332[_0x6a6a('0x34')]['sort']);_0x4afdfc[_0x6a6a('0x3b')]=qs['filters'](_[_0x6a6a('0x3c')](_0x34c332[_0x6a6a('0x34')],_0x44403b[_0x6a6a('0x35')]));if(_0x34c332['query'][_0x6a6a('0x3d')]){_0x4afdfc[_0x6a6a('0x3b')]=_['merge'](_0x4afdfc[_0x6a6a('0x3b')],{'$or':_['map'](_0x4afdfc[_0x6a6a('0x36')],function(_0x201ed5){var _0x1572b0={};_0x1572b0[_0x201ed5]={'$like':'%'+_0x34c332[_0x6a6a('0x34')]['filter']+'%'};return _0x1572b0;})});}_0x4afdfc=_[_0x6a6a('0x4e')]({},_0x4afdfc,_0x34c332[_0x6a6a('0x46')]);return _0x5bb9cd[_0x6a6a('0x52')](_0x4afdfc);}})[_0x6a6a('0x24')](function(_0x388bf2){if(_0x388bf2){_0x360fd7=_0x388bf2[_0x6a6a('0x4d')];if(!_0x34c332[_0x6a6a('0x34')][_0x6a6a('0x38')]('nolimit')){_0x4afdfc[_0x6a6a('0x1e')]=qs['limit'](_0x34c332['query'][_0x6a6a('0x1e')]);_0x4afdfc['offset']=qs[_0x6a6a('0x1b')](_0x34c332[_0x6a6a('0x34')][_0x6a6a('0x1b')]);}return _0x5bb9cd['getTags'](_0x4afdfc);}})[_0x6a6a('0x24')](function(_0x4c318e){if(_0x4c318e){return _0x4c318e?{'count':_0x360fd7,'rows':_0x4c318e}:null;}})[_0x6a6a('0x24')](respondWithResult(_0x232878,null))['catch'](handleError(_0x232878,null));};exports[_0x6a6a('0x54')]=function(_0x5d3193,_0x519e3f,_0x591c1c){if(_0x5d3193[_0x6a6a('0x48')]['id']){delete _0x5d3193[_0x6a6a('0x48')]['id'];}return db[_0x6a6a('0x2d')][_0x6a6a('0x4b')]({'where':{'id':_0x5d3193['params']['id']}})[_0x6a6a('0x24')](handleEntityNotFound(_0x519e3f,null))[_0x6a6a('0x24')](function(_0x343773){if(_0x343773){return _0x343773[_0x6a6a('0x54')](_0x5d3193['body'][_0x6a6a('0x55')]||[]);}return null;})[_0x6a6a('0x24')](respondWithResult(_0x519e3f,null))['catch'](handleError(_0x519e3f,null));};