Built motion from commit efa66e19.|2.6.22
[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 _0xdb8a=['set','Content-Range','json','reject','update','then','destroy','error','stack','name','send','index','map','FreshdeskConfiguration','fieldName','type','key','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','VIRTUAL','options','includeAll','include','rows','show','params','keys','rawAttributes','merge','find','catch','create','body','findOne','FreshdeskField','getFields','getSubjects','getDescriptions','getTags','Tag','setTags','ids','eml-format','rimraf','zip-dir','request-promise','moment','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','offset','undefined','limit','count'];(function(_0x51b1bd,_0x47495d){var _0x491aba=function(_0x5ad179){while(--_0x5ad179){_0x51b1bd['push'](_0x51b1bd['shift']());}};_0x491aba(++_0x47495d);}(_0xdb8a,0x18a));var _0xadb8=function(_0x4af3c6,_0x5e72ff){_0x4af3c6=_0x4af3c6-0x0;var _0x2c8a73=_0xdb8a[_0x4af3c6];return _0x2c8a73;};'use strict';var emlformat=require(_0xadb8('0x0'));var rimraf=require(_0xadb8('0x1'));var zipdir=require(_0xadb8('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0xadb8('0x3'));var moment=require(_0xadb8('0x4'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0xadb8('0x5'));var path=require(_0xadb8('0x6'));var sox=require(_0xadb8('0x7'));var csv=require(_0xadb8('0x8'));var ejs=require(_0xadb8('0x9'));var fs=require('fs');var fs_extra=require(_0xadb8('0xa'));var _=require(_0xadb8('0xb'));var squel=require(_0xadb8('0xc'));var crypto=require(_0xadb8('0xd'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0xadb8('0xe'));var Redis=require(_0xadb8('0xf'));var authService=require(_0xadb8('0x10'));var qs=require(_0xadb8('0x11'));var as=require(_0xadb8('0x12'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xadb8('0x13'))(_0xadb8('0x14'));var utils=require(_0xadb8('0x15'));var config=require(_0xadb8('0x16'));var licenseUtil=require('../../config/license/util');var db=require(_0xadb8('0x17'))['db'];function respondWithStatusCode(_0x445ecd,_0x11869c){_0x11869c=_0x11869c||0xcc;return function(_0x30da6c){if(_0x30da6c){return _0x445ecd[_0xadb8('0x18')](_0x11869c);}return _0x445ecd[_0xadb8('0x19')](_0x11869c)[_0xadb8('0x1a')]();};}function respondWithResult(_0x2b1510,_0x2b9c44){_0x2b9c44=_0x2b9c44||0xc8;return function(_0x19ffab){if(_0x19ffab){return _0x2b1510[_0xadb8('0x19')](_0x2b9c44)['json'](_0x19ffab);}};}function respondWithFilteredResult(_0x40e0cd,_0x122e8b){return function(_0x2bbe60){if(_0x2bbe60){var _0x3e0c51=typeof _0x122e8b[_0xadb8('0x1b')]===_0xadb8('0x1c')&&typeof _0x122e8b[_0xadb8('0x1d')]===_0xadb8('0x1c');var _0x27d166=_0x2bbe60[_0xadb8('0x1e')];var _0xe98f03=_0x3e0c51?0x0:_0x122e8b[_0xadb8('0x1b')];var _0x27ae6c=_0x3e0c51?_0x2bbe60[_0xadb8('0x1e')]:_0x122e8b[_0xadb8('0x1b')]+_0x122e8b['limit'];var _0x892d7e;if(_0x27ae6c>=_0x27d166){_0x27ae6c=_0x27d166;_0x892d7e=0xc8;}else{_0x892d7e=0xce;}_0x40e0cd[_0xadb8('0x19')](_0x892d7e);return _0x40e0cd[_0xadb8('0x1f')](_0xadb8('0x20'),_0xe98f03+'-'+_0x27ae6c+'/'+_0x27d166)[_0xadb8('0x21')](_0x2bbe60);}return null;};}function patchUpdates(_0x178c44){return function(_0x3fc65b){try{jsonpatch['apply'](_0x3fc65b,_0x178c44,!![]);}catch(_0x3dbdaf){return BPromise[_0xadb8('0x22')](_0x3dbdaf);}return _0x3fc65b['save']();};}function saveUpdates(_0x9d1340,_0x3e9654){return function(_0x2e4acd){if(_0x2e4acd){return _0x2e4acd[_0xadb8('0x23')](_0x9d1340)[_0xadb8('0x24')](function(_0x5881e5){return _0x5881e5;});}return null;};}function removeEntity(_0x425ab3,_0x554df4){return function(_0xa7c4f8){if(_0xa7c4f8){return _0xa7c4f8[_0xadb8('0x25')]()[_0xadb8('0x24')](function(){_0x425ab3[_0xadb8('0x19')](0xcc)['end']();});}};}function handleEntityNotFound(_0x42d19b,_0x19d75f){return function(_0x42fa4a){if(!_0x42fa4a){_0x42d19b[_0xadb8('0x18')](0x194);}return _0x42fa4a;};}function handleError(_0x4cfa91,_0x1c89a6){_0x1c89a6=_0x1c89a6||0x1f4;return function(_0x4e91b3){logger[_0xadb8('0x26')](_0x4e91b3[_0xadb8('0x27')]);if(_0x4e91b3[_0xadb8('0x28')]){delete _0x4e91b3[_0xadb8('0x28')];}_0x4cfa91['status'](_0x1c89a6)[_0xadb8('0x29')](_0x4e91b3);};}exports[_0xadb8('0x2a')]=function(_0x37a16f,_0x3a8ca3){var _0x5795b3={},_0x2c620b={},_0xede5af={'count':0x0,'rows':[]};var _0xeb6dbc=_[_0xadb8('0x2b')](db[_0xadb8('0x2c')]['rawAttributes'],function(_0x7409eb){return{'name':_0x7409eb[_0xadb8('0x2d')],'type':_0x7409eb[_0xadb8('0x2e')][_0xadb8('0x2f')]};});_0x2c620b[_0xadb8('0x30')]=_['map'](_0xeb6dbc,_0xadb8('0x28'));_0x2c620b[_0xadb8('0x31')]=_['keys'](_0x37a16f[_0xadb8('0x31')]);_0x2c620b[_0xadb8('0x32')]=_[_0xadb8('0x33')](_0x2c620b[_0xadb8('0x30')],_0x2c620b[_0xadb8('0x31')]);_0x5795b3[_0xadb8('0x34')]=_['intersection'](_0x2c620b[_0xadb8('0x30')],qs[_0xadb8('0x35')](_0x37a16f[_0xadb8('0x31')][_0xadb8('0x35')]));_0x5795b3[_0xadb8('0x34')]=_0x5795b3[_0xadb8('0x34')][_0xadb8('0x36')]?_0x5795b3[_0xadb8('0x34')]:_0x2c620b['model'];if(!_0x37a16f[_0xadb8('0x31')][_0xadb8('0x37')](_0xadb8('0x38'))){_0x5795b3[_0xadb8('0x1d')]=qs[_0xadb8('0x1d')](_0x37a16f[_0xadb8('0x31')][_0xadb8('0x1d')]);_0x5795b3[_0xadb8('0x1b')]=qs[_0xadb8('0x1b')](_0x37a16f['query']['offset']);}_0x5795b3[_0xadb8('0x39')]=qs['sort'](_0x37a16f[_0xadb8('0x31')][_0xadb8('0x3a')]);_0x5795b3[_0xadb8('0x3b')]=qs[_0xadb8('0x32')](_[_0xadb8('0x3c')](_0x37a16f[_0xadb8('0x31')],_0x2c620b[_0xadb8('0x32')]),_0xeb6dbc);if(_0x37a16f[_0xadb8('0x31')][_0xadb8('0x3d')]){_0x5795b3['where']=_['merge'](_0x5795b3['where'],{'$or':_[_0xadb8('0x2b')](_0xeb6dbc,function(_0xb5af66){if(_0xb5af66['type']!==_0xadb8('0x3e')){var _0x3b4e77={};_0x3b4e77[_0xb5af66[_0xadb8('0x28')]]={'$like':'%'+_0x37a16f[_0xadb8('0x31')][_0xadb8('0x3d')]+'%'};return _0x3b4e77;}})});}_0x5795b3=_['merge']({},_0x5795b3,_0x37a16f[_0xadb8('0x3f')]);var _0x294b47={'where':_0x5795b3[_0xadb8('0x3b')]};return db[_0xadb8('0x2c')][_0xadb8('0x1e')](_0x294b47)['then'](function(_0x53993f){_0xede5af[_0xadb8('0x1e')]=_0x53993f;if(_0x37a16f['query'][_0xadb8('0x40')]){_0x5795b3[_0xadb8('0x41')]=[{'all':!![]}];}return db[_0xadb8('0x2c')]['findAll'](_0x5795b3);})['then'](function(_0x228ca2){_0xede5af[_0xadb8('0x42')]=_0x228ca2;return _0xede5af;})['then'](respondWithFilteredResult(_0x3a8ca3,_0x5795b3))['catch'](handleError(_0x3a8ca3,null));};exports[_0xadb8('0x43')]=function(_0x2db238,_0x1782da){var _0x3334f1={'raw':![],'where':{'id':_0x2db238[_0xadb8('0x44')]['id']}},_0x1394f5={};_0x1394f5['model']=_[_0xadb8('0x45')](db[_0xadb8('0x2c')][_0xadb8('0x46')]);_0x1394f5[_0xadb8('0x31')]=_[_0xadb8('0x45')](_0x2db238['query']);_0x1394f5[_0xadb8('0x32')]=_[_0xadb8('0x33')](_0x1394f5[_0xadb8('0x30')],_0x1394f5[_0xadb8('0x31')]);_0x3334f1['attributes']=_[_0xadb8('0x33')](_0x1394f5[_0xadb8('0x30')],qs['fields'](_0x2db238[_0xadb8('0x31')][_0xadb8('0x35')]));_0x3334f1[_0xadb8('0x34')]=_0x3334f1[_0xadb8('0x34')][_0xadb8('0x36')]?_0x3334f1[_0xadb8('0x34')]:_0x1394f5['model'];if(_0x2db238[_0xadb8('0x31')]['includeAll']){_0x3334f1[_0xadb8('0x41')]=[{'all':!![]}];}_0x3334f1=_[_0xadb8('0x47')]({},_0x3334f1,_0x2db238[_0xadb8('0x3f')]);return db[_0xadb8('0x2c')][_0xadb8('0x48')](_0x3334f1)[_0xadb8('0x24')](handleEntityNotFound(_0x1782da,null))[_0xadb8('0x24')](respondWithResult(_0x1782da,null))[_0xadb8('0x49')](handleError(_0x1782da,null));};exports[_0xadb8('0x4a')]=function(_0x34d621,_0x4535ea){return db['FreshdeskConfiguration'][_0xadb8('0x4a')](_0x34d621[_0xadb8('0x4b')],{})['then'](respondWithResult(_0x4535ea,0xc9))[_0xadb8('0x49')](handleError(_0x4535ea,null));};exports[_0xadb8('0x23')]=function(_0x2397de,_0x3e90a0){if(_0x2397de[_0xadb8('0x4b')]['id']){delete _0x2397de[_0xadb8('0x4b')]['id'];}return db[_0xadb8('0x2c')][_0xadb8('0x48')]({'where':{'id':_0x2397de[_0xadb8('0x44')]['id']}})['then'](handleEntityNotFound(_0x3e90a0,null))['then'](saveUpdates(_0x2397de['body'],null))['then'](respondWithResult(_0x3e90a0,null))[_0xadb8('0x49')](handleError(_0x3e90a0,null));};exports['destroy']=function(_0x1bf768,_0x1986ed){return db[_0xadb8('0x2c')][_0xadb8('0x48')]({'where':{'id':_0x1bf768[_0xadb8('0x44')]['id']}})['then'](handleEntityNotFound(_0x1986ed,null))[_0xadb8('0x24')](removeEntity(_0x1986ed,null))['catch'](handleError(_0x1986ed,null));};exports['getFields']=function(_0x2e5fed,_0x2dd91c,_0x559ec4){var _0x325c0c={};var _0x372100={};var _0x26ff0f;var _0x48e653;return db[_0xadb8('0x2c')][_0xadb8('0x4c')]({'where':{'id':_0x2e5fed[_0xadb8('0x44')]['id']}})[_0xadb8('0x24')](handleEntityNotFound(_0x2dd91c,null))[_0xadb8('0x24')](function(_0x102a40){if(_0x102a40){_0x26ff0f=_0x102a40;_0x372100[_0xadb8('0x30')]=_[_0xadb8('0x45')](db[_0xadb8('0x4d')][_0xadb8('0x46')]);_0x372100[_0xadb8('0x31')]=_[_0xadb8('0x45')](_0x2e5fed[_0xadb8('0x31')]);_0x372100[_0xadb8('0x32')]=_[_0xadb8('0x33')](_0x372100[_0xadb8('0x30')],_0x372100[_0xadb8('0x31')]);_0x325c0c[_0xadb8('0x34')]=_[_0xadb8('0x33')](_0x372100['model'],qs['fields'](_0x2e5fed[_0xadb8('0x31')][_0xadb8('0x35')]));_0x325c0c[_0xadb8('0x34')]=_0x325c0c[_0xadb8('0x34')][_0xadb8('0x36')]?_0x325c0c['attributes']:_0x372100['model'];_0x325c0c[_0xadb8('0x39')]=qs[_0xadb8('0x3a')](_0x2e5fed['query'][_0xadb8('0x3a')]);_0x325c0c[_0xadb8('0x3b')]=qs[_0xadb8('0x32')](_[_0xadb8('0x3c')](_0x2e5fed[_0xadb8('0x31')],_0x372100['filters']));if(_0x2e5fed['query']['filter']){_0x325c0c[_0xadb8('0x3b')]=_[_0xadb8('0x47')](_0x325c0c[_0xadb8('0x3b')],{'$or':_[_0xadb8('0x2b')](_0x325c0c[_0xadb8('0x34')],function(_0x3b55f9){var _0x5e87d0={};_0x5e87d0[_0x3b55f9]={'$like':'%'+_0x2e5fed[_0xadb8('0x31')][_0xadb8('0x3d')]+'%'};return _0x5e87d0;})});}_0x325c0c=_[_0xadb8('0x47')]({},_0x325c0c,_0x2e5fed['options']);return _0x26ff0f['getFields'](_0x325c0c);}})[_0xadb8('0x24')](function(_0x80b686){if(_0x80b686){_0x48e653=_0x80b686[_0xadb8('0x36')];if(!_0x2e5fed['query'][_0xadb8('0x37')](_0xadb8('0x38'))){_0x325c0c[_0xadb8('0x1d')]=qs[_0xadb8('0x1d')](_0x2e5fed[_0xadb8('0x31')][_0xadb8('0x1d')]);_0x325c0c[_0xadb8('0x1b')]=qs['offset'](_0x2e5fed[_0xadb8('0x31')]['offset']);}return _0x26ff0f[_0xadb8('0x4e')](_0x325c0c);}})[_0xadb8('0x24')](function(_0x87a8da){if(_0x87a8da){return _0x87a8da?{'count':_0x48e653,'rows':_0x87a8da}:null;}})[_0xadb8('0x24')](respondWithResult(_0x2dd91c,null))[_0xadb8('0x49')](handleError(_0x2dd91c,null));};exports[_0xadb8('0x4f')]=function(_0xc1dff4,_0x1facb4,_0x518e98){var _0x137983={};var _0x2c75b6={};var _0x57d7da;var _0xcbb833;return db[_0xadb8('0x2c')][_0xadb8('0x4c')]({'where':{'id':_0xc1dff4['params']['id']}})[_0xadb8('0x24')](handleEntityNotFound(_0x1facb4,null))[_0xadb8('0x24')](function(_0x3923c7){if(_0x3923c7){_0x57d7da=_0x3923c7;_0x2c75b6[_0xadb8('0x30')]=_[_0xadb8('0x45')](db[_0xadb8('0x4d')][_0xadb8('0x46')]);_0x2c75b6[_0xadb8('0x31')]=_[_0xadb8('0x45')](_0xc1dff4['query']);_0x2c75b6['filters']=_[_0xadb8('0x33')](_0x2c75b6[_0xadb8('0x30')],_0x2c75b6[_0xadb8('0x31')]);_0x137983[_0xadb8('0x34')]=_[_0xadb8('0x33')](_0x2c75b6[_0xadb8('0x30')],qs['fields'](_0xc1dff4[_0xadb8('0x31')][_0xadb8('0x35')]));_0x137983[_0xadb8('0x34')]=_0x137983[_0xadb8('0x34')][_0xadb8('0x36')]?_0x137983[_0xadb8('0x34')]:_0x2c75b6[_0xadb8('0x30')];_0x137983[_0xadb8('0x39')]=qs[_0xadb8('0x3a')](_0xc1dff4[_0xadb8('0x31')][_0xadb8('0x3a')]);_0x137983['where']=qs['filters'](_[_0xadb8('0x3c')](_0xc1dff4[_0xadb8('0x31')],_0x2c75b6['filters']));if(_0xc1dff4[_0xadb8('0x31')][_0xadb8('0x3d')]){_0x137983[_0xadb8('0x3b')]=_[_0xadb8('0x47')](_0x137983[_0xadb8('0x3b')],{'$or':_[_0xadb8('0x2b')](_0x137983[_0xadb8('0x34')],function(_0x2b9b08){var _0x1d4858={};_0x1d4858[_0x2b9b08]={'$like':'%'+_0xc1dff4['query'][_0xadb8('0x3d')]+'%'};return _0x1d4858;})});}_0x137983=_[_0xadb8('0x47')]({},_0x137983,_0xc1dff4[_0xadb8('0x3f')]);return _0x57d7da[_0xadb8('0x4f')](_0x137983);}})[_0xadb8('0x24')](function(_0x349c72){if(_0x349c72){_0xcbb833=_0x349c72[_0xadb8('0x36')];if(!_0xc1dff4[_0xadb8('0x31')][_0xadb8('0x37')](_0xadb8('0x38'))){_0x137983[_0xadb8('0x1d')]=qs['limit'](_0xc1dff4[_0xadb8('0x31')][_0xadb8('0x1d')]);_0x137983[_0xadb8('0x1b')]=qs[_0xadb8('0x1b')](_0xc1dff4[_0xadb8('0x31')][_0xadb8('0x1b')]);}return _0x57d7da[_0xadb8('0x4f')](_0x137983);}})[_0xadb8('0x24')](function(_0x34ee58){if(_0x34ee58){return _0x34ee58?{'count':_0xcbb833,'rows':_0x34ee58}:null;}})[_0xadb8('0x24')](respondWithResult(_0x1facb4,null))[_0xadb8('0x49')](handleError(_0x1facb4,null));};exports[_0xadb8('0x50')]=function(_0x5845b6,_0x1c90d0,_0x1faa3c){var _0x5ec0e0={};var _0x9aae94={};var _0x117d7e;var _0x127a55;return db['FreshdeskConfiguration'][_0xadb8('0x4c')]({'where':{'id':_0x5845b6['params']['id']}})['then'](handleEntityNotFound(_0x1c90d0,null))[_0xadb8('0x24')](function(_0x2a27bd){if(_0x2a27bd){_0x117d7e=_0x2a27bd;_0x9aae94[_0xadb8('0x30')]=_[_0xadb8('0x45')](db[_0xadb8('0x4d')][_0xadb8('0x46')]);_0x9aae94[_0xadb8('0x31')]=_[_0xadb8('0x45')](_0x5845b6['query']);_0x9aae94[_0xadb8('0x32')]=_[_0xadb8('0x33')](_0x9aae94[_0xadb8('0x30')],_0x9aae94[_0xadb8('0x31')]);_0x5ec0e0[_0xadb8('0x34')]=_[_0xadb8('0x33')](_0x9aae94[_0xadb8('0x30')],qs[_0xadb8('0x35')](_0x5845b6[_0xadb8('0x31')]['fields']));_0x5ec0e0['attributes']=_0x5ec0e0[_0xadb8('0x34')]['length']?_0x5ec0e0[_0xadb8('0x34')]:_0x9aae94[_0xadb8('0x30')];_0x5ec0e0['order']=qs[_0xadb8('0x3a')](_0x5845b6['query'][_0xadb8('0x3a')]);_0x5ec0e0[_0xadb8('0x3b')]=qs['filters'](_['pick'](_0x5845b6[_0xadb8('0x31')],_0x9aae94['filters']));if(_0x5845b6[_0xadb8('0x31')][_0xadb8('0x3d')]){_0x5ec0e0[_0xadb8('0x3b')]=_[_0xadb8('0x47')](_0x5ec0e0[_0xadb8('0x3b')],{'$or':_[_0xadb8('0x2b')](_0x5ec0e0[_0xadb8('0x34')],function(_0x2367b1){var _0x564901={};_0x564901[_0x2367b1]={'$like':'%'+_0x5845b6[_0xadb8('0x31')][_0xadb8('0x3d')]+'%'};return _0x564901;})});}_0x5ec0e0=_[_0xadb8('0x47')]({},_0x5ec0e0,_0x5845b6[_0xadb8('0x3f')]);return _0x117d7e['getDescriptions'](_0x5ec0e0);}})[_0xadb8('0x24')](function(_0x237d2a){if(_0x237d2a){_0x127a55=_0x237d2a[_0xadb8('0x36')];if(!_0x5845b6['query'][_0xadb8('0x37')]('nolimit')){_0x5ec0e0[_0xadb8('0x1d')]=qs[_0xadb8('0x1d')](_0x5845b6['query'][_0xadb8('0x1d')]);_0x5ec0e0[_0xadb8('0x1b')]=qs[_0xadb8('0x1b')](_0x5845b6['query'][_0xadb8('0x1b')]);}return _0x117d7e[_0xadb8('0x50')](_0x5ec0e0);}})[_0xadb8('0x24')](function(_0x57a2de){if(_0x57a2de){return _0x57a2de?{'count':_0x127a55,'rows':_0x57a2de}:null;}})[_0xadb8('0x24')](respondWithResult(_0x1c90d0,null))[_0xadb8('0x49')](handleError(_0x1c90d0,null));};exports[_0xadb8('0x51')]=function(_0x498115,_0x3988c1,_0x58a85e){var _0x521029={};var _0x41b429={};var _0x1e4b1c;var _0x11192d;return db[_0xadb8('0x2c')][_0xadb8('0x4c')]({'where':{'id':_0x498115['params']['id']}})[_0xadb8('0x24')](handleEntityNotFound(_0x3988c1,null))['then'](function(_0x470b80){if(_0x470b80){_0x1e4b1c=_0x470b80;_0x41b429[_0xadb8('0x30')]=_[_0xadb8('0x45')](db[_0xadb8('0x52')]['rawAttributes']);_0x41b429[_0xadb8('0x31')]=_[_0xadb8('0x45')](_0x498115[_0xadb8('0x31')]);_0x41b429[_0xadb8('0x32')]=_[_0xadb8('0x33')](_0x41b429[_0xadb8('0x30')],_0x41b429['query']);_0x521029[_0xadb8('0x34')]=_[_0xadb8('0x33')](_0x41b429[_0xadb8('0x30')],qs['fields'](_0x498115[_0xadb8('0x31')][_0xadb8('0x35')]));_0x521029['attributes']=_0x521029[_0xadb8('0x34')][_0xadb8('0x36')]?_0x521029['attributes']:_0x41b429[_0xadb8('0x30')];_0x521029['order']=qs['sort'](_0x498115[_0xadb8('0x31')][_0xadb8('0x3a')]);_0x521029[_0xadb8('0x3b')]=qs['filters'](_['pick'](_0x498115[_0xadb8('0x31')],_0x41b429[_0xadb8('0x32')]));if(_0x498115[_0xadb8('0x31')][_0xadb8('0x3d')]){_0x521029[_0xadb8('0x3b')]=_[_0xadb8('0x47')](_0x521029[_0xadb8('0x3b')],{'$or':_[_0xadb8('0x2b')](_0x521029[_0xadb8('0x34')],function(_0x21868a){var _0x4a8407={};_0x4a8407[_0x21868a]={'$like':'%'+_0x498115[_0xadb8('0x31')]['filter']+'%'};return _0x4a8407;})});}_0x521029=_[_0xadb8('0x47')]({},_0x521029,_0x498115[_0xadb8('0x3f')]);return _0x1e4b1c[_0xadb8('0x51')](_0x521029);}})[_0xadb8('0x24')](function(_0x5e7180){if(_0x5e7180){_0x11192d=_0x5e7180['length'];if(!_0x498115['query'][_0xadb8('0x37')]('nolimit')){_0x521029[_0xadb8('0x1d')]=qs[_0xadb8('0x1d')](_0x498115['query'][_0xadb8('0x1d')]);_0x521029['offset']=qs[_0xadb8('0x1b')](_0x498115[_0xadb8('0x31')]['offset']);}return _0x1e4b1c[_0xadb8('0x51')](_0x521029);}})[_0xadb8('0x24')](function(_0x2a010e){if(_0x2a010e){return _0x2a010e?{'count':_0x11192d,'rows':_0x2a010e}:null;}})[_0xadb8('0x24')](respondWithResult(_0x3988c1,null))['catch'](handleError(_0x3988c1,null));};exports[_0xadb8('0x53')]=function(_0x34104e,_0x4e50d6,_0x1ee58e){if(_0x34104e['body']['id']){delete _0x34104e['body']['id'];}return db[_0xadb8('0x2c')]['findOne']({'where':{'id':_0x34104e[_0xadb8('0x44')]['id']}})[_0xadb8('0x24')](handleEntityNotFound(_0x4e50d6,null))[_0xadb8('0x24')](function(_0x1e686e){if(_0x1e686e){return _0x1e686e[_0xadb8('0x53')](_0x34104e[_0xadb8('0x4b')][_0xadb8('0x54')]||[]);}return null;})['then'](respondWithResult(_0x4e50d6,null))[_0xadb8('0x49')](handleError(_0x4e50d6,null));};