9449067991ef229625ea792e80a9f8d685e995b2
[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 _0x0dbf=['then','destroy','error','stack','name','map','FreshdeskConfiguration','rawAttributes','fieldName','type','key','model','query','keys','intersection','fields','attributes','length','hasOwnProperty','order','sort','where','pick','filters','filter','merge','VIRTUAL','options','includeAll','include','show','params','create','catch','find','getFields','findOne','FreshdeskField','nolimit','getSubjects','getDescriptions','getTags','setTags','body','ids','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined','count','limit','set','Content-Range','apply','reject'];(function(_0x46b56d,_0x5edaf8){var _0x370bd8=function(_0x4d7df0){while(--_0x4d7df0){_0x46b56d['push'](_0x46b56d['shift']());}};_0x370bd8(++_0x5edaf8);}(_0x0dbf,0xd7));var _0xf0db=function(_0x4afac5,_0x1ab4ed){_0x4afac5=_0x4afac5-0x0;var _0x2404b3=_0x0dbf[_0x4afac5];return _0x2404b3;};'use strict';var emlformat=require(_0xf0db('0x0'));var rimraf=require(_0xf0db('0x1'));var zipdir=require(_0xf0db('0x2'));var jsonpatch=require(_0xf0db('0x3'));var rp=require(_0xf0db('0x4'));var moment=require(_0xf0db('0x5'));var BPromise=require(_0xf0db('0x6'));var Mustache=require(_0xf0db('0x7'));var util=require(_0xf0db('0x8'));var path=require(_0xf0db('0x9'));var sox=require(_0xf0db('0xa'));var csv=require('to-csv');var ejs=require(_0xf0db('0xb'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xf0db('0xc'));var squel=require(_0xf0db('0xd'));var crypto=require(_0xf0db('0xe'));var jsforce=require(_0xf0db('0xf'));var deskjs=require(_0xf0db('0x10'));var toCsv=require('to-csv');var querystring=require(_0xf0db('0x11'));var Papa=require(_0xf0db('0x12'));var Redis=require(_0xf0db('0x13'));var authService=require(_0xf0db('0x14'));var qs=require(_0xf0db('0x15'));var as=require(_0xf0db('0x16'));var hardwareService=require(_0xf0db('0x17'));var logger=require(_0xf0db('0x18'))(_0xf0db('0x19'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0xf0db('0x1a'));var db=require(_0xf0db('0x1b'))['db'];function respondWithStatusCode(_0x42e6a5,_0x375bf6){_0x375bf6=_0x375bf6||0xcc;return function(_0x27873b){if(_0x27873b){return _0x42e6a5[_0xf0db('0x1c')](_0x375bf6);}return _0x42e6a5[_0xf0db('0x1d')](_0x375bf6)[_0xf0db('0x1e')]();};}function respondWithResult(_0x2ba129,_0x5292b0){_0x5292b0=_0x5292b0||0xc8;return function(_0x2d1689){if(_0x2d1689){return _0x2ba129[_0xf0db('0x1d')](_0x5292b0)[_0xf0db('0x1f')](_0x2d1689);}};}function respondWithFilteredResult(_0x1d80e7,_0x104a24){return function(_0x3b567b){if(_0x3b567b){var _0x1802f6=typeof _0x104a24[_0xf0db('0x20')]===_0xf0db('0x21')&&typeof _0x104a24['limit']==='undefined';var _0x5a3d91=_0x3b567b[_0xf0db('0x22')];var _0x581773=_0x1802f6?0x0:_0x104a24[_0xf0db('0x20')];var _0x320da0=_0x1802f6?_0x3b567b[_0xf0db('0x22')]:_0x104a24[_0xf0db('0x20')]+_0x104a24[_0xf0db('0x23')];var _0x4a45c5;if(_0x320da0>=_0x5a3d91){_0x320da0=_0x5a3d91;_0x4a45c5=0xc8;}else{_0x4a45c5=0xce;}_0x1d80e7[_0xf0db('0x1d')](_0x4a45c5);return _0x1d80e7[_0xf0db('0x24')](_0xf0db('0x25'),_0x581773+'-'+_0x320da0+'/'+_0x5a3d91)[_0xf0db('0x1f')](_0x3b567b);}return null;};}function patchUpdates(_0x5d5614){return function(_0x48b740){try{jsonpatch[_0xf0db('0x26')](_0x48b740,_0x5d5614,!![]);}catch(_0x549ab9){return BPromise[_0xf0db('0x27')](_0x549ab9);}return _0x48b740['save']();};}function saveUpdates(_0x5cfdb6,_0x4213ce){return function(_0x3cf70a){if(_0x3cf70a){return _0x3cf70a['update'](_0x5cfdb6)[_0xf0db('0x28')](function(_0x588a97){return _0x588a97;});}return null;};}function removeEntity(_0x28c287,_0x299999){return function(_0x401c96){if(_0x401c96){return _0x401c96[_0xf0db('0x29')]()[_0xf0db('0x28')](function(){_0x28c287['status'](0xcc)[_0xf0db('0x1e')]();});}};}function handleEntityNotFound(_0x2c767a,_0x1f77f7){return function(_0x16642c){if(!_0x16642c){_0x2c767a[_0xf0db('0x1c')](0x194);}return _0x16642c;};}function handleError(_0x11cfd6,_0x1788b6){_0x1788b6=_0x1788b6||0x1f4;return function(_0x404d2a){logger[_0xf0db('0x2a')](_0x404d2a[_0xf0db('0x2b')]);if(_0x404d2a['name']){delete _0x404d2a[_0xf0db('0x2c')];}_0x11cfd6[_0xf0db('0x1d')](_0x1788b6)['send'](_0x404d2a);};}exports['index']=function(_0x5b7d8c,_0x1c59d0){var _0x306903={},_0x2cfb73={},_0x5d6178={'count':0x0,'rows':[]};var _0x195536=_[_0xf0db('0x2d')](db[_0xf0db('0x2e')][_0xf0db('0x2f')],function(_0x2bb3e8){return{'name':_0x2bb3e8[_0xf0db('0x30')],'type':_0x2bb3e8[_0xf0db('0x31')][_0xf0db('0x32')]};});_0x2cfb73[_0xf0db('0x33')]=_['map'](_0x195536,_0xf0db('0x2c'));_0x2cfb73[_0xf0db('0x34')]=_[_0xf0db('0x35')](_0x5b7d8c['query']);_0x2cfb73['filters']=_[_0xf0db('0x36')](_0x2cfb73[_0xf0db('0x33')],_0x2cfb73[_0xf0db('0x34')]);_0x306903['attributes']=_['intersection'](_0x2cfb73[_0xf0db('0x33')],qs[_0xf0db('0x37')](_0x5b7d8c[_0xf0db('0x34')][_0xf0db('0x37')]));_0x306903[_0xf0db('0x38')]=_0x306903['attributes'][_0xf0db('0x39')]?_0x306903[_0xf0db('0x38')]:_0x2cfb73[_0xf0db('0x33')];if(!_0x5b7d8c['query'][_0xf0db('0x3a')]('nolimit')){_0x306903['limit']=qs[_0xf0db('0x23')](_0x5b7d8c[_0xf0db('0x34')]['limit']);_0x306903[_0xf0db('0x20')]=qs[_0xf0db('0x20')](_0x5b7d8c[_0xf0db('0x34')]['offset']);}_0x306903[_0xf0db('0x3b')]=qs[_0xf0db('0x3c')](_0x5b7d8c[_0xf0db('0x34')][_0xf0db('0x3c')]);_0x306903[_0xf0db('0x3d')]=qs['filters'](_[_0xf0db('0x3e')](_0x5b7d8c[_0xf0db('0x34')],_0x2cfb73[_0xf0db('0x3f')]),_0x195536);if(_0x5b7d8c[_0xf0db('0x34')][_0xf0db('0x40')]){_0x306903[_0xf0db('0x3d')]=_[_0xf0db('0x41')](_0x306903[_0xf0db('0x3d')],{'$or':_[_0xf0db('0x2d')](_0x195536,function(_0x231647){if(_0x231647[_0xf0db('0x31')]!==_0xf0db('0x42')){var _0x264ab9={};_0x264ab9[_0x231647['name']]={'$like':'%'+_0x5b7d8c['query']['filter']+'%'};return _0x264ab9;}})});}_0x306903=_[_0xf0db('0x41')]({},_0x306903,_0x5b7d8c[_0xf0db('0x43')]);var _0x557ac7={'where':_0x306903['where']};return db['FreshdeskConfiguration'][_0xf0db('0x22')](_0x557ac7)[_0xf0db('0x28')](function(_0x193e7d){_0x5d6178['count']=_0x193e7d;if(_0x5b7d8c[_0xf0db('0x34')][_0xf0db('0x44')]){_0x306903[_0xf0db('0x45')]=[{'all':!![]}];}return db[_0xf0db('0x2e')]['findAll'](_0x306903);})[_0xf0db('0x28')](function(_0x134a5a){_0x5d6178['rows']=_0x134a5a;return _0x5d6178;})[_0xf0db('0x28')](respondWithFilteredResult(_0x1c59d0,_0x306903))['catch'](handleError(_0x1c59d0,null));};exports[_0xf0db('0x46')]=function(_0x3df0f6,_0x5c53d4){var _0x366067={'raw':![],'where':{'id':_0x3df0f6[_0xf0db('0x47')]['id']}},_0x2d1446={};_0x2d1446['model']=_[_0xf0db('0x35')](db['FreshdeskConfiguration'][_0xf0db('0x2f')]);_0x2d1446[_0xf0db('0x34')]=_['keys'](_0x3df0f6[_0xf0db('0x34')]);_0x2d1446[_0xf0db('0x3f')]=_[_0xf0db('0x36')](_0x2d1446['model'],_0x2d1446[_0xf0db('0x34')]);_0x366067[_0xf0db('0x38')]=_[_0xf0db('0x36')](_0x2d1446['model'],qs[_0xf0db('0x37')](_0x3df0f6[_0xf0db('0x34')][_0xf0db('0x37')]));_0x366067['attributes']=_0x366067['attributes'][_0xf0db('0x39')]?_0x366067[_0xf0db('0x38')]:_0x2d1446[_0xf0db('0x33')];if(_0x3df0f6[_0xf0db('0x34')][_0xf0db('0x44')]){_0x366067[_0xf0db('0x45')]=[{'all':!![]}];}_0x366067=_[_0xf0db('0x41')]({},_0x366067,_0x3df0f6['options']);return db['FreshdeskConfiguration']['find'](_0x366067)[_0xf0db('0x28')](handleEntityNotFound(_0x5c53d4,null))[_0xf0db('0x28')](respondWithResult(_0x5c53d4,null))['catch'](handleError(_0x5c53d4,null));};exports[_0xf0db('0x48')]=function(_0xb8888d,_0x6d0892){return db[_0xf0db('0x2e')][_0xf0db('0x48')](_0xb8888d['body'],{})[_0xf0db('0x28')](respondWithResult(_0x6d0892,0xc9))[_0xf0db('0x49')](handleError(_0x6d0892,null));};exports['update']=function(_0x585f65,_0x5192ab){if(_0x585f65['body']['id']){delete _0x585f65['body']['id'];}return db['FreshdeskConfiguration'][_0xf0db('0x4a')]({'where':{'id':_0x585f65[_0xf0db('0x47')]['id']}})[_0xf0db('0x28')](handleEntityNotFound(_0x5192ab,null))[_0xf0db('0x28')](saveUpdates(_0x585f65['body'],null))[_0xf0db('0x28')](respondWithResult(_0x5192ab,null))[_0xf0db('0x49')](handleError(_0x5192ab,null));};exports[_0xf0db('0x29')]=function(_0x35a1f9,_0x5914d6){return db['FreshdeskConfiguration'][_0xf0db('0x4a')]({'where':{'id':_0x35a1f9[_0xf0db('0x47')]['id']}})['then'](handleEntityNotFound(_0x5914d6,null))[_0xf0db('0x28')](removeEntity(_0x5914d6,null))[_0xf0db('0x49')](handleError(_0x5914d6,null));};exports[_0xf0db('0x4b')]=function(_0x2fd009,_0x24f9b5,_0x4ec603){var _0x24cfce={};var _0xe0b86a={};var _0x40569b;var _0x2a21f2;return db[_0xf0db('0x2e')][_0xf0db('0x4c')]({'where':{'id':_0x2fd009[_0xf0db('0x47')]['id']}})['then'](handleEntityNotFound(_0x24f9b5,null))['then'](function(_0x9e4af2){if(_0x9e4af2){_0x40569b=_0x9e4af2;_0xe0b86a[_0xf0db('0x33')]=_[_0xf0db('0x35')](db[_0xf0db('0x4d')][_0xf0db('0x2f')]);_0xe0b86a['query']=_[_0xf0db('0x35')](_0x2fd009[_0xf0db('0x34')]);_0xe0b86a[_0xf0db('0x3f')]=_[_0xf0db('0x36')](_0xe0b86a['model'],_0xe0b86a['query']);_0x24cfce[_0xf0db('0x38')]=_[_0xf0db('0x36')](_0xe0b86a[_0xf0db('0x33')],qs[_0xf0db('0x37')](_0x2fd009['query'][_0xf0db('0x37')]));_0x24cfce[_0xf0db('0x38')]=_0x24cfce['attributes'][_0xf0db('0x39')]?_0x24cfce[_0xf0db('0x38')]:_0xe0b86a[_0xf0db('0x33')];_0x24cfce[_0xf0db('0x3b')]=qs[_0xf0db('0x3c')](_0x2fd009['query'][_0xf0db('0x3c')]);_0x24cfce[_0xf0db('0x3d')]=qs[_0xf0db('0x3f')](_[_0xf0db('0x3e')](_0x2fd009['query'],_0xe0b86a['filters']));if(_0x2fd009[_0xf0db('0x34')][_0xf0db('0x40')]){_0x24cfce['where']=_['merge'](_0x24cfce[_0xf0db('0x3d')],{'$or':_['map'](_0x24cfce[_0xf0db('0x38')],function(_0x29fa6c){var _0x439deb={};_0x439deb[_0x29fa6c]={'$like':'%'+_0x2fd009[_0xf0db('0x34')]['filter']+'%'};return _0x439deb;})});}_0x24cfce=_[_0xf0db('0x41')]({},_0x24cfce,_0x2fd009[_0xf0db('0x43')]);return _0x40569b[_0xf0db('0x4b')](_0x24cfce);}})['then'](function(_0x5554b4){if(_0x5554b4){_0x2a21f2=_0x5554b4['length'];if(!_0x2fd009[_0xf0db('0x34')][_0xf0db('0x3a')](_0xf0db('0x4e'))){_0x24cfce[_0xf0db('0x23')]=qs[_0xf0db('0x23')](_0x2fd009[_0xf0db('0x34')]['limit']);_0x24cfce[_0xf0db('0x20')]=qs['offset'](_0x2fd009[_0xf0db('0x34')][_0xf0db('0x20')]);}return _0x40569b[_0xf0db('0x4b')](_0x24cfce);}})[_0xf0db('0x28')](function(_0x739cdf){if(_0x739cdf){return _0x739cdf?{'count':_0x2a21f2,'rows':_0x739cdf}:null;}})['then'](respondWithResult(_0x24f9b5,null))['catch'](handleError(_0x24f9b5,null));};exports[_0xf0db('0x4f')]=function(_0x95c79a,_0x245e9d,_0x4e7e30){var _0x2a3691={};var _0x347504={};var _0x9ff7f7;var _0x315cd8;return db['FreshdeskConfiguration'][_0xf0db('0x4c')]({'where':{'id':_0x95c79a[_0xf0db('0x47')]['id']}})[_0xf0db('0x28')](handleEntityNotFound(_0x245e9d,null))[_0xf0db('0x28')](function(_0x198d65){if(_0x198d65){_0x9ff7f7=_0x198d65;_0x347504[_0xf0db('0x33')]=_['keys'](db[_0xf0db('0x4d')][_0xf0db('0x2f')]);_0x347504[_0xf0db('0x34')]=_[_0xf0db('0x35')](_0x95c79a[_0xf0db('0x34')]);_0x347504[_0xf0db('0x3f')]=_['intersection'](_0x347504[_0xf0db('0x33')],_0x347504[_0xf0db('0x34')]);_0x2a3691[_0xf0db('0x38')]=_[_0xf0db('0x36')](_0x347504[_0xf0db('0x33')],qs[_0xf0db('0x37')](_0x95c79a['query'][_0xf0db('0x37')]));_0x2a3691[_0xf0db('0x38')]=_0x2a3691[_0xf0db('0x38')][_0xf0db('0x39')]?_0x2a3691[_0xf0db('0x38')]:_0x347504[_0xf0db('0x33')];_0x2a3691['order']=qs[_0xf0db('0x3c')](_0x95c79a[_0xf0db('0x34')][_0xf0db('0x3c')]);_0x2a3691['where']=qs[_0xf0db('0x3f')](_[_0xf0db('0x3e')](_0x95c79a[_0xf0db('0x34')],_0x347504[_0xf0db('0x3f')]));if(_0x95c79a[_0xf0db('0x34')][_0xf0db('0x40')]){_0x2a3691[_0xf0db('0x3d')]=_[_0xf0db('0x41')](_0x2a3691['where'],{'$or':_['map'](_0x2a3691[_0xf0db('0x38')],function(_0x5249e3){var _0x2865d1={};_0x2865d1[_0x5249e3]={'$like':'%'+_0x95c79a[_0xf0db('0x34')][_0xf0db('0x40')]+'%'};return _0x2865d1;})});}_0x2a3691=_[_0xf0db('0x41')]({},_0x2a3691,_0x95c79a[_0xf0db('0x43')]);return _0x9ff7f7[_0xf0db('0x4f')](_0x2a3691);}})[_0xf0db('0x28')](function(_0x575683){if(_0x575683){_0x315cd8=_0x575683[_0xf0db('0x39')];if(!_0x95c79a[_0xf0db('0x34')][_0xf0db('0x3a')](_0xf0db('0x4e'))){_0x2a3691['limit']=qs[_0xf0db('0x23')](_0x95c79a[_0xf0db('0x34')]['limit']);_0x2a3691[_0xf0db('0x20')]=qs['offset'](_0x95c79a['query']['offset']);}return _0x9ff7f7['getSubjects'](_0x2a3691);}})['then'](function(_0x2abf46){if(_0x2abf46){return _0x2abf46?{'count':_0x315cd8,'rows':_0x2abf46}:null;}})[_0xf0db('0x28')](respondWithResult(_0x245e9d,null))[_0xf0db('0x49')](handleError(_0x245e9d,null));};exports[_0xf0db('0x50')]=function(_0x1a93ab,_0x537a1c,_0x3fa25a){var _0x564534={};var _0x15c6ef={};var _0x4733ac;var _0x296631;return db[_0xf0db('0x2e')][_0xf0db('0x4c')]({'where':{'id':_0x1a93ab[_0xf0db('0x47')]['id']}})[_0xf0db('0x28')](handleEntityNotFound(_0x537a1c,null))['then'](function(_0xa667c1){if(_0xa667c1){_0x4733ac=_0xa667c1;_0x15c6ef[_0xf0db('0x33')]=_[_0xf0db('0x35')](db[_0xf0db('0x4d')]['rawAttributes']);_0x15c6ef['query']=_['keys'](_0x1a93ab[_0xf0db('0x34')]);_0x15c6ef['filters']=_['intersection'](_0x15c6ef['model'],_0x15c6ef[_0xf0db('0x34')]);_0x564534[_0xf0db('0x38')]=_[_0xf0db('0x36')](_0x15c6ef['model'],qs[_0xf0db('0x37')](_0x1a93ab[_0xf0db('0x34')][_0xf0db('0x37')]));_0x564534[_0xf0db('0x38')]=_0x564534['attributes']['length']?_0x564534[_0xf0db('0x38')]:_0x15c6ef[_0xf0db('0x33')];_0x564534[_0xf0db('0x3b')]=qs['sort'](_0x1a93ab[_0xf0db('0x34')][_0xf0db('0x3c')]);_0x564534[_0xf0db('0x3d')]=qs[_0xf0db('0x3f')](_[_0xf0db('0x3e')](_0x1a93ab['query'],_0x15c6ef[_0xf0db('0x3f')]));if(_0x1a93ab[_0xf0db('0x34')][_0xf0db('0x40')]){_0x564534[_0xf0db('0x3d')]=_[_0xf0db('0x41')](_0x564534[_0xf0db('0x3d')],{'$or':_[_0xf0db('0x2d')](_0x564534[_0xf0db('0x38')],function(_0x274ce0){var _0x329621={};_0x329621[_0x274ce0]={'$like':'%'+_0x1a93ab['query'][_0xf0db('0x40')]+'%'};return _0x329621;})});}_0x564534=_[_0xf0db('0x41')]({},_0x564534,_0x1a93ab[_0xf0db('0x43')]);return _0x4733ac[_0xf0db('0x50')](_0x564534);}})[_0xf0db('0x28')](function(_0x123084){if(_0x123084){_0x296631=_0x123084[_0xf0db('0x39')];if(!_0x1a93ab[_0xf0db('0x34')][_0xf0db('0x3a')](_0xf0db('0x4e'))){_0x564534['limit']=qs[_0xf0db('0x23')](_0x1a93ab[_0xf0db('0x34')]['limit']);_0x564534[_0xf0db('0x20')]=qs[_0xf0db('0x20')](_0x1a93ab[_0xf0db('0x34')][_0xf0db('0x20')]);}return _0x4733ac[_0xf0db('0x50')](_0x564534);}})['then'](function(_0x48d9b9){if(_0x48d9b9){return _0x48d9b9?{'count':_0x296631,'rows':_0x48d9b9}:null;}})[_0xf0db('0x28')](respondWithResult(_0x537a1c,null))['catch'](handleError(_0x537a1c,null));};exports[_0xf0db('0x51')]=function(_0x3febf6,_0x65ee84,_0xc18a9f){var _0x446336={};var _0x2ee954={};var _0x3c8167;var _0x2b19df;return db[_0xf0db('0x2e')][_0xf0db('0x4c')]({'where':{'id':_0x3febf6['params']['id']}})[_0xf0db('0x28')](handleEntityNotFound(_0x65ee84,null))[_0xf0db('0x28')](function(_0x214193){if(_0x214193){_0x3c8167=_0x214193;_0x2ee954['model']=_[_0xf0db('0x35')](db['Tag'][_0xf0db('0x2f')]);_0x2ee954[_0xf0db('0x34')]=_['keys'](_0x3febf6[_0xf0db('0x34')]);_0x2ee954[_0xf0db('0x3f')]=_[_0xf0db('0x36')](_0x2ee954['model'],_0x2ee954[_0xf0db('0x34')]);_0x446336[_0xf0db('0x38')]=_[_0xf0db('0x36')](_0x2ee954[_0xf0db('0x33')],qs['fields'](_0x3febf6['query'][_0xf0db('0x37')]));_0x446336['attributes']=_0x446336[_0xf0db('0x38')][_0xf0db('0x39')]?_0x446336[_0xf0db('0x38')]:_0x2ee954[_0xf0db('0x33')];_0x446336[_0xf0db('0x3b')]=qs[_0xf0db('0x3c')](_0x3febf6[_0xf0db('0x34')][_0xf0db('0x3c')]);_0x446336[_0xf0db('0x3d')]=qs[_0xf0db('0x3f')](_[_0xf0db('0x3e')](_0x3febf6[_0xf0db('0x34')],_0x2ee954[_0xf0db('0x3f')]));if(_0x3febf6[_0xf0db('0x34')][_0xf0db('0x40')]){_0x446336[_0xf0db('0x3d')]=_[_0xf0db('0x41')](_0x446336[_0xf0db('0x3d')],{'$or':_[_0xf0db('0x2d')](_0x446336[_0xf0db('0x38')],function(_0xb9316a){var _0x2605c4={};_0x2605c4[_0xb9316a]={'$like':'%'+_0x3febf6[_0xf0db('0x34')]['filter']+'%'};return _0x2605c4;})});}_0x446336=_[_0xf0db('0x41')]({},_0x446336,_0x3febf6[_0xf0db('0x43')]);return _0x3c8167['getTags'](_0x446336);}})['then'](function(_0x55ad77){if(_0x55ad77){_0x2b19df=_0x55ad77[_0xf0db('0x39')];if(!_0x3febf6[_0xf0db('0x34')][_0xf0db('0x3a')](_0xf0db('0x4e'))){_0x446336['limit']=qs[_0xf0db('0x23')](_0x3febf6['query']['limit']);_0x446336[_0xf0db('0x20')]=qs[_0xf0db('0x20')](_0x3febf6[_0xf0db('0x34')]['offset']);}return _0x3c8167[_0xf0db('0x51')](_0x446336);}})[_0xf0db('0x28')](function(_0x435bfb){if(_0x435bfb){return _0x435bfb?{'count':_0x2b19df,'rows':_0x435bfb}:null;}})[_0xf0db('0x28')](respondWithResult(_0x65ee84,null))[_0xf0db('0x49')](handleError(_0x65ee84,null));};exports[_0xf0db('0x52')]=function(_0x508a75,_0x4133f2,_0x22ef3d){if(_0x508a75[_0xf0db('0x53')]['id']){delete _0x508a75[_0xf0db('0x53')]['id'];}return db[_0xf0db('0x2e')][_0xf0db('0x4c')]({'where':{'id':_0x508a75[_0xf0db('0x47')]['id']}})[_0xf0db('0x28')](handleEntityNotFound(_0x4133f2,null))[_0xf0db('0x28')](function(_0x2e0eee){if(_0x2e0eee){return _0x2e0eee[_0xf0db('0x52')](_0x508a75['body'][_0xf0db('0x54')]||[]);}return null;})[_0xf0db('0x28')](respondWithResult(_0x4133f2,null))[_0xf0db('0x49')](handleError(_0x4133f2,null));};