Built motion from commit e781dc3c.|2.5.42
[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 _0x8ebc=['catch','params','keys','include','options','find','create','body','destroy','getFields','findOne','ZendeskField','hasOwnProperty','getSubjects','getDescriptions','getTags','setTags','ids','rimraf','zip-dir','request-promise','moment','mustache','path','sox','to-csv','ejs','fs-extra','lodash','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','undefined','limit','count','offset','Content-Range','json','apply','reject','save','update','then','end','error','stack','name','send','map','ZendeskConfiguration','rawAttributes','type','key','query','intersection','model','fields','attributes','length','nolimit','order','sort','where','filters','pick','filter','merge','VIRTUAL','includeAll','findAll','rows'];(function(_0x35e45e,_0x2bc0e8){var _0xcad152=function(_0x3a7643){while(--_0x3a7643){_0x35e45e['push'](_0x35e45e['shift']());}};_0xcad152(++_0x2bc0e8);}(_0x8ebc,0xb8));var _0xc8eb=function(_0x4474e2,_0x3f40c2){_0x4474e2=_0x4474e2-0x0;var _0x4ccc68=_0x8ebc[_0x4474e2];return _0x4ccc68;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xc8eb('0x0'));var zipdir=require(_0xc8eb('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0xc8eb('0x2'));var moment=require(_0xc8eb('0x3'));var BPromise=require('bluebird');var Mustache=require(_0xc8eb('0x4'));var util=require('util');var path=require(_0xc8eb('0x5'));var sox=require(_0xc8eb('0x6'));var csv=require(_0xc8eb('0x7'));var ejs=require(_0xc8eb('0x8'));var fs=require('fs');var fs_extra=require(_0xc8eb('0x9'));var _=require(_0xc8eb('0xa'));var squel=require('squel');var crypto=require(_0xc8eb('0xb'));var jsforce=require(_0xc8eb('0xc'));var deskjs=require(_0xc8eb('0xd'));var toCsv=require(_0xc8eb('0x7'));var querystring=require(_0xc8eb('0xe'));var Papa=require('papaparse');var Redis=require(_0xc8eb('0xf'));var authService=require(_0xc8eb('0x10'));var qs=require(_0xc8eb('0x11'));var as=require(_0xc8eb('0x12'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xc8eb('0x13'))(_0xc8eb('0x14'));var utils=require(_0xc8eb('0x15'));var config=require(_0xc8eb('0x16'));var licenseUtil=require('../../config/license/util');var db=require(_0xc8eb('0x17'))['db'];function respondWithStatusCode(_0x1a87a3,_0x327b2b){_0x327b2b=_0x327b2b||0xcc;return function(_0x7e990b){if(_0x7e990b){return _0x1a87a3[_0xc8eb('0x18')](_0x327b2b);}return _0x1a87a3[_0xc8eb('0x19')](_0x327b2b)['end']();};}function respondWithResult(_0x1b798b,_0x355368){_0x355368=_0x355368||0xc8;return function(_0x3ae324){if(_0x3ae324){return _0x1b798b['status'](_0x355368)['json'](_0x3ae324);}};}function respondWithFilteredResult(_0x1e174b,_0x5dc357){return function(_0x28541b){if(_0x28541b){var _0x512fb8=typeof _0x5dc357['offset']===_0xc8eb('0x1a')&&typeof _0x5dc357[_0xc8eb('0x1b')]==='undefined';var _0x54709e=_0x28541b[_0xc8eb('0x1c')];var _0x5d349d=_0x512fb8?0x0:_0x5dc357[_0xc8eb('0x1d')];var _0x761cf9=_0x512fb8?_0x28541b['count']:_0x5dc357[_0xc8eb('0x1d')]+_0x5dc357[_0xc8eb('0x1b')];var _0x1f7e15;if(_0x761cf9>=_0x54709e){_0x761cf9=_0x54709e;_0x1f7e15=0xc8;}else{_0x1f7e15=0xce;}_0x1e174b[_0xc8eb('0x19')](_0x1f7e15);return _0x1e174b['set'](_0xc8eb('0x1e'),_0x5d349d+'-'+_0x761cf9+'/'+_0x54709e)[_0xc8eb('0x1f')](_0x28541b);}return null;};}function patchUpdates(_0x262996){return function(_0x2751f3){try{jsonpatch[_0xc8eb('0x20')](_0x2751f3,_0x262996,!![]);}catch(_0x36503b){return BPromise[_0xc8eb('0x21')](_0x36503b);}return _0x2751f3[_0xc8eb('0x22')]();};}function saveUpdates(_0x1e2cc0,_0x285545){return function(_0x3f7311){if(_0x3f7311){return _0x3f7311[_0xc8eb('0x23')](_0x1e2cc0)['then'](function(_0x377313){return _0x377313;});}return null;};}function removeEntity(_0x2eb9ef,_0x36fc9d){return function(_0x37e833){if(_0x37e833){return _0x37e833['destroy']()[_0xc8eb('0x24')](function(){_0x2eb9ef[_0xc8eb('0x19')](0xcc)[_0xc8eb('0x25')]();});}};}function handleEntityNotFound(_0x3979b9,_0xa44fc3){return function(_0xe4c924){if(!_0xe4c924){_0x3979b9['sendStatus'](0x194);}return _0xe4c924;};}function handleError(_0x4d99a8,_0x116b45){_0x116b45=_0x116b45||0x1f4;return function(_0x328414){logger[_0xc8eb('0x26')](_0x328414[_0xc8eb('0x27')]);if(_0x328414[_0xc8eb('0x28')]){delete _0x328414[_0xc8eb('0x28')];}_0x4d99a8[_0xc8eb('0x19')](_0x116b45)[_0xc8eb('0x29')](_0x328414);};}exports['index']=function(_0x1b84f2,_0x3c648c){var _0x3c86b0={},_0x35d1ef={},_0x131507={'count':0x0,'rows':[]};var _0x1725a8=_[_0xc8eb('0x2a')](db[_0xc8eb('0x2b')][_0xc8eb('0x2c')],function(_0x13ffda){return{'name':_0x13ffda['fieldName'],'type':_0x13ffda[_0xc8eb('0x2d')][_0xc8eb('0x2e')]};});_0x35d1ef['model']=_[_0xc8eb('0x2a')](_0x1725a8,_0xc8eb('0x28'));_0x35d1ef[_0xc8eb('0x2f')]=_['keys'](_0x1b84f2[_0xc8eb('0x2f')]);_0x35d1ef['filters']=_[_0xc8eb('0x30')](_0x35d1ef[_0xc8eb('0x31')],_0x35d1ef[_0xc8eb('0x2f')]);_0x3c86b0['attributes']=_[_0xc8eb('0x30')](_0x35d1ef[_0xc8eb('0x31')],qs[_0xc8eb('0x32')](_0x1b84f2['query'][_0xc8eb('0x32')]));_0x3c86b0['attributes']=_0x3c86b0[_0xc8eb('0x33')][_0xc8eb('0x34')]?_0x3c86b0[_0xc8eb('0x33')]:_0x35d1ef[_0xc8eb('0x31')];if(!_0x1b84f2[_0xc8eb('0x2f')]['hasOwnProperty'](_0xc8eb('0x35'))){_0x3c86b0[_0xc8eb('0x1b')]=qs[_0xc8eb('0x1b')](_0x1b84f2[_0xc8eb('0x2f')][_0xc8eb('0x1b')]);_0x3c86b0['offset']=qs[_0xc8eb('0x1d')](_0x1b84f2[_0xc8eb('0x2f')][_0xc8eb('0x1d')]);}_0x3c86b0[_0xc8eb('0x36')]=qs['sort'](_0x1b84f2[_0xc8eb('0x2f')][_0xc8eb('0x37')]);_0x3c86b0[_0xc8eb('0x38')]=qs[_0xc8eb('0x39')](_[_0xc8eb('0x3a')](_0x1b84f2[_0xc8eb('0x2f')],_0x35d1ef[_0xc8eb('0x39')]),_0x1725a8);if(_0x1b84f2[_0xc8eb('0x2f')][_0xc8eb('0x3b')]){_0x3c86b0[_0xc8eb('0x38')]=_[_0xc8eb('0x3c')](_0x3c86b0['where'],{'$or':_[_0xc8eb('0x2a')](_0x1725a8,function(_0x309ddb){if(_0x309ddb[_0xc8eb('0x2d')]!==_0xc8eb('0x3d')){var _0x13c939={};_0x13c939[_0x309ddb[_0xc8eb('0x28')]]={'$like':'%'+_0x1b84f2[_0xc8eb('0x2f')][_0xc8eb('0x3b')]+'%'};return _0x13c939;}})});}_0x3c86b0=_[_0xc8eb('0x3c')]({},_0x3c86b0,_0x1b84f2['options']);var _0x3b6dd2={'where':_0x3c86b0[_0xc8eb('0x38')]};return db['ZendeskConfiguration'][_0xc8eb('0x1c')](_0x3b6dd2)['then'](function(_0x4bb523){_0x131507[_0xc8eb('0x1c')]=_0x4bb523;if(_0x1b84f2['query'][_0xc8eb('0x3e')]){_0x3c86b0['include']=[{'all':!![]}];}return db['ZendeskConfiguration'][_0xc8eb('0x3f')](_0x3c86b0);})['then'](function(_0x420eac){_0x131507[_0xc8eb('0x40')]=_0x420eac;return _0x131507;})[_0xc8eb('0x24')](respondWithFilteredResult(_0x3c648c,_0x3c86b0))[_0xc8eb('0x41')](handleError(_0x3c648c,null));};exports['show']=function(_0x435958,_0x573310){var _0x47d656={'raw':![],'where':{'id':_0x435958[_0xc8eb('0x42')]['id']}},_0x120f9d={};_0x120f9d[_0xc8eb('0x31')]=_[_0xc8eb('0x43')](db[_0xc8eb('0x2b')][_0xc8eb('0x2c')]);_0x120f9d[_0xc8eb('0x2f')]=_[_0xc8eb('0x43')](_0x435958[_0xc8eb('0x2f')]);_0x120f9d[_0xc8eb('0x39')]=_[_0xc8eb('0x30')](_0x120f9d[_0xc8eb('0x31')],_0x120f9d['query']);_0x47d656[_0xc8eb('0x33')]=_[_0xc8eb('0x30')](_0x120f9d[_0xc8eb('0x31')],qs['fields'](_0x435958[_0xc8eb('0x2f')][_0xc8eb('0x32')]));_0x47d656[_0xc8eb('0x33')]=_0x47d656['attributes'][_0xc8eb('0x34')]?_0x47d656[_0xc8eb('0x33')]:_0x120f9d['model'];if(_0x435958['query'][_0xc8eb('0x3e')]){_0x47d656[_0xc8eb('0x44')]=[{'all':!![]}];}_0x47d656=_[_0xc8eb('0x3c')]({},_0x47d656,_0x435958[_0xc8eb('0x45')]);return db[_0xc8eb('0x2b')][_0xc8eb('0x46')](_0x47d656)[_0xc8eb('0x24')](handleEntityNotFound(_0x573310,null))[_0xc8eb('0x24')](respondWithResult(_0x573310,null))['catch'](handleError(_0x573310,null));};exports['create']=function(_0x3854f7,_0x577d45){return db[_0xc8eb('0x2b')][_0xc8eb('0x47')](_0x3854f7[_0xc8eb('0x48')],{})[_0xc8eb('0x24')](respondWithResult(_0x577d45,0xc9))[_0xc8eb('0x41')](handleError(_0x577d45,null));};exports['update']=function(_0x8755cc,_0x49281e){if(_0x8755cc[_0xc8eb('0x48')]['id']){delete _0x8755cc['body']['id'];}return db[_0xc8eb('0x2b')][_0xc8eb('0x46')]({'where':{'id':_0x8755cc[_0xc8eb('0x42')]['id']}})[_0xc8eb('0x24')](handleEntityNotFound(_0x49281e,null))['then'](saveUpdates(_0x8755cc['body'],null))[_0xc8eb('0x24')](respondWithResult(_0x49281e,null))[_0xc8eb('0x41')](handleError(_0x49281e,null));};exports[_0xc8eb('0x49')]=function(_0x4ea8ca,_0x4a1ce6){return db[_0xc8eb('0x2b')][_0xc8eb('0x46')]({'where':{'id':_0x4ea8ca[_0xc8eb('0x42')]['id']}})[_0xc8eb('0x24')](handleEntityNotFound(_0x4a1ce6,null))[_0xc8eb('0x24')](removeEntity(_0x4a1ce6,null))[_0xc8eb('0x41')](handleError(_0x4a1ce6,null));};exports[_0xc8eb('0x4a')]=function(_0x130e18,_0x1e4f73,_0x426090){var _0x3e5f12={};var _0x4b4106={};var _0x19c585;var _0xc6dfb8;return db['ZendeskConfiguration'][_0xc8eb('0x4b')]({'where':{'id':_0x130e18[_0xc8eb('0x42')]['id']}})[_0xc8eb('0x24')](handleEntityNotFound(_0x1e4f73,null))[_0xc8eb('0x24')](function(_0x55e419){if(_0x55e419){_0x19c585=_0x55e419;_0x4b4106['model']=_['keys'](db[_0xc8eb('0x4c')][_0xc8eb('0x2c')]);_0x4b4106[_0xc8eb('0x2f')]=_[_0xc8eb('0x43')](_0x130e18[_0xc8eb('0x2f')]);_0x4b4106[_0xc8eb('0x39')]=_[_0xc8eb('0x30')](_0x4b4106['model'],_0x4b4106[_0xc8eb('0x2f')]);_0x3e5f12[_0xc8eb('0x33')]=_[_0xc8eb('0x30')](_0x4b4106[_0xc8eb('0x31')],qs[_0xc8eb('0x32')](_0x130e18[_0xc8eb('0x2f')]['fields']));_0x3e5f12[_0xc8eb('0x33')]=_0x3e5f12[_0xc8eb('0x33')][_0xc8eb('0x34')]?_0x3e5f12['attributes']:_0x4b4106[_0xc8eb('0x31')];_0x3e5f12['order']=qs['sort'](_0x130e18['query'][_0xc8eb('0x37')]);_0x3e5f12['where']=qs['filters'](_['pick'](_0x130e18[_0xc8eb('0x2f')],_0x4b4106[_0xc8eb('0x39')]));if(_0x130e18[_0xc8eb('0x2f')][_0xc8eb('0x3b')]){_0x3e5f12['where']=_[_0xc8eb('0x3c')](_0x3e5f12[_0xc8eb('0x38')],{'$or':_[_0xc8eb('0x2a')](_0x3e5f12[_0xc8eb('0x33')],function(_0x58538a){var _0x58640b={};_0x58640b[_0x58538a]={'$like':'%'+_0x130e18[_0xc8eb('0x2f')][_0xc8eb('0x3b')]+'%'};return _0x58640b;})});}_0x3e5f12=_['merge']({},_0x3e5f12,_0x130e18['options']);return _0x19c585[_0xc8eb('0x4a')](_0x3e5f12);}})['then'](function(_0x3a028c){if(_0x3a028c){_0xc6dfb8=_0x3a028c['length'];if(!_0x130e18['query'][_0xc8eb('0x4d')](_0xc8eb('0x35'))){_0x3e5f12[_0xc8eb('0x1b')]=qs[_0xc8eb('0x1b')](_0x130e18['query']['limit']);_0x3e5f12[_0xc8eb('0x1d')]=qs[_0xc8eb('0x1d')](_0x130e18['query']['offset']);}return _0x19c585[_0xc8eb('0x4a')](_0x3e5f12);}})[_0xc8eb('0x24')](function(_0x4ccfa0){if(_0x4ccfa0){return _0x4ccfa0?{'count':_0xc6dfb8,'rows':_0x4ccfa0}:null;}})['then'](respondWithResult(_0x1e4f73,null))['catch'](handleError(_0x1e4f73,null));};exports[_0xc8eb('0x4e')]=function(_0x1c1aac,_0x1e9873,_0x399c21){var _0x13a220={};var _0xecde92={};var _0x1744d2;var _0x45d5bb;return db['ZendeskConfiguration'][_0xc8eb('0x4b')]({'where':{'id':_0x1c1aac[_0xc8eb('0x42')]['id']}})['then'](handleEntityNotFound(_0x1e9873,null))['then'](function(_0x522218){if(_0x522218){_0x1744d2=_0x522218;_0xecde92[_0xc8eb('0x31')]=_[_0xc8eb('0x43')](db[_0xc8eb('0x4c')][_0xc8eb('0x2c')]);_0xecde92['query']=_[_0xc8eb('0x43')](_0x1c1aac[_0xc8eb('0x2f')]);_0xecde92[_0xc8eb('0x39')]=_[_0xc8eb('0x30')](_0xecde92['model'],_0xecde92[_0xc8eb('0x2f')]);_0x13a220[_0xc8eb('0x33')]=_['intersection'](_0xecde92[_0xc8eb('0x31')],qs['fields'](_0x1c1aac[_0xc8eb('0x2f')][_0xc8eb('0x32')]));_0x13a220[_0xc8eb('0x33')]=_0x13a220[_0xc8eb('0x33')][_0xc8eb('0x34')]?_0x13a220[_0xc8eb('0x33')]:_0xecde92[_0xc8eb('0x31')];_0x13a220['order']=qs[_0xc8eb('0x37')](_0x1c1aac[_0xc8eb('0x2f')][_0xc8eb('0x37')]);_0x13a220[_0xc8eb('0x38')]=qs[_0xc8eb('0x39')](_[_0xc8eb('0x3a')](_0x1c1aac['query'],_0xecde92[_0xc8eb('0x39')]));if(_0x1c1aac[_0xc8eb('0x2f')][_0xc8eb('0x3b')]){_0x13a220[_0xc8eb('0x38')]=_[_0xc8eb('0x3c')](_0x13a220[_0xc8eb('0x38')],{'$or':_[_0xc8eb('0x2a')](_0x13a220[_0xc8eb('0x33')],function(_0x7e1d9e){var _0x2dfe49={};_0x2dfe49[_0x7e1d9e]={'$like':'%'+_0x1c1aac[_0xc8eb('0x2f')][_0xc8eb('0x3b')]+'%'};return _0x2dfe49;})});}_0x13a220=_[_0xc8eb('0x3c')]({},_0x13a220,_0x1c1aac[_0xc8eb('0x45')]);return _0x1744d2['getSubjects'](_0x13a220);}})[_0xc8eb('0x24')](function(_0x1eda98){if(_0x1eda98){_0x45d5bb=_0x1eda98['length'];if(!_0x1c1aac[_0xc8eb('0x2f')][_0xc8eb('0x4d')](_0xc8eb('0x35'))){_0x13a220[_0xc8eb('0x1b')]=qs[_0xc8eb('0x1b')](_0x1c1aac[_0xc8eb('0x2f')][_0xc8eb('0x1b')]);_0x13a220[_0xc8eb('0x1d')]=qs[_0xc8eb('0x1d')](_0x1c1aac[_0xc8eb('0x2f')]['offset']);}return _0x1744d2[_0xc8eb('0x4e')](_0x13a220);}})[_0xc8eb('0x24')](function(_0x2aa0cd){if(_0x2aa0cd){return _0x2aa0cd?{'count':_0x45d5bb,'rows':_0x2aa0cd}:null;}})[_0xc8eb('0x24')](respondWithResult(_0x1e9873,null))[_0xc8eb('0x41')](handleError(_0x1e9873,null));};exports[_0xc8eb('0x4f')]=function(_0x493a2a,_0x5de68f,_0x9db8e0){var _0x382d46={};var _0x5e690={};var _0x5b56b4;var _0x2ba693;return db[_0xc8eb('0x2b')][_0xc8eb('0x4b')]({'where':{'id':_0x493a2a[_0xc8eb('0x42')]['id']}})['then'](handleEntityNotFound(_0x5de68f,null))[_0xc8eb('0x24')](function(_0x5ce3d5){if(_0x5ce3d5){_0x5b56b4=_0x5ce3d5;_0x5e690[_0xc8eb('0x31')]=_[_0xc8eb('0x43')](db[_0xc8eb('0x4c')][_0xc8eb('0x2c')]);_0x5e690['query']=_['keys'](_0x493a2a[_0xc8eb('0x2f')]);_0x5e690[_0xc8eb('0x39')]=_[_0xc8eb('0x30')](_0x5e690[_0xc8eb('0x31')],_0x5e690['query']);_0x382d46[_0xc8eb('0x33')]=_[_0xc8eb('0x30')](_0x5e690[_0xc8eb('0x31')],qs['fields'](_0x493a2a[_0xc8eb('0x2f')][_0xc8eb('0x32')]));_0x382d46[_0xc8eb('0x33')]=_0x382d46['attributes']['length']?_0x382d46['attributes']:_0x5e690['model'];_0x382d46['order']=qs[_0xc8eb('0x37')](_0x493a2a[_0xc8eb('0x2f')][_0xc8eb('0x37')]);_0x382d46[_0xc8eb('0x38')]=qs[_0xc8eb('0x39')](_['pick'](_0x493a2a[_0xc8eb('0x2f')],_0x5e690[_0xc8eb('0x39')]));if(_0x493a2a[_0xc8eb('0x2f')][_0xc8eb('0x3b')]){_0x382d46[_0xc8eb('0x38')]=_[_0xc8eb('0x3c')](_0x382d46[_0xc8eb('0x38')],{'$or':_[_0xc8eb('0x2a')](_0x382d46[_0xc8eb('0x33')],function(_0x4aee65){var _0x27c7c2={};_0x27c7c2[_0x4aee65]={'$like':'%'+_0x493a2a[_0xc8eb('0x2f')][_0xc8eb('0x3b')]+'%'};return _0x27c7c2;})});}_0x382d46=_[_0xc8eb('0x3c')]({},_0x382d46,_0x493a2a[_0xc8eb('0x45')]);return _0x5b56b4[_0xc8eb('0x4f')](_0x382d46);}})[_0xc8eb('0x24')](function(_0x262bef){if(_0x262bef){_0x2ba693=_0x262bef[_0xc8eb('0x34')];if(!_0x493a2a[_0xc8eb('0x2f')][_0xc8eb('0x4d')](_0xc8eb('0x35'))){_0x382d46[_0xc8eb('0x1b')]=qs[_0xc8eb('0x1b')](_0x493a2a[_0xc8eb('0x2f')][_0xc8eb('0x1b')]);_0x382d46[_0xc8eb('0x1d')]=qs[_0xc8eb('0x1d')](_0x493a2a[_0xc8eb('0x2f')][_0xc8eb('0x1d')]);}return _0x5b56b4[_0xc8eb('0x4f')](_0x382d46);}})[_0xc8eb('0x24')](function(_0x298910){if(_0x298910){return _0x298910?{'count':_0x2ba693,'rows':_0x298910}:null;}})[_0xc8eb('0x24')](respondWithResult(_0x5de68f,null))[_0xc8eb('0x41')](handleError(_0x5de68f,null));};exports['getTags']=function(_0x142946,_0x4b11b9,_0x529790){var _0x4c7cb9={};var _0x2f48ae={};var _0x5d8b72;var _0x3e2429;return db['ZendeskConfiguration']['findOne']({'where':{'id':_0x142946[_0xc8eb('0x42')]['id']}})[_0xc8eb('0x24')](handleEntityNotFound(_0x4b11b9,null))['then'](function(_0x12c919){if(_0x12c919){_0x5d8b72=_0x12c919;_0x2f48ae[_0xc8eb('0x31')]=_['keys'](db['Tag'][_0xc8eb('0x2c')]);_0x2f48ae['query']=_[_0xc8eb('0x43')](_0x142946[_0xc8eb('0x2f')]);_0x2f48ae[_0xc8eb('0x39')]=_[_0xc8eb('0x30')](_0x2f48ae[_0xc8eb('0x31')],_0x2f48ae[_0xc8eb('0x2f')]);_0x4c7cb9['attributes']=_[_0xc8eb('0x30')](_0x2f48ae[_0xc8eb('0x31')],qs[_0xc8eb('0x32')](_0x142946[_0xc8eb('0x2f')][_0xc8eb('0x32')]));_0x4c7cb9[_0xc8eb('0x33')]=_0x4c7cb9[_0xc8eb('0x33')][_0xc8eb('0x34')]?_0x4c7cb9['attributes']:_0x2f48ae[_0xc8eb('0x31')];_0x4c7cb9[_0xc8eb('0x36')]=qs[_0xc8eb('0x37')](_0x142946[_0xc8eb('0x2f')][_0xc8eb('0x37')]);_0x4c7cb9[_0xc8eb('0x38')]=qs[_0xc8eb('0x39')](_[_0xc8eb('0x3a')](_0x142946['query'],_0x2f48ae['filters']));if(_0x142946['query'][_0xc8eb('0x3b')]){_0x4c7cb9['where']=_[_0xc8eb('0x3c')](_0x4c7cb9['where'],{'$or':_['map'](_0x4c7cb9['attributes'],function(_0x45130){var _0x506456={};_0x506456[_0x45130]={'$like':'%'+_0x142946[_0xc8eb('0x2f')]['filter']+'%'};return _0x506456;})});}_0x4c7cb9=_[_0xc8eb('0x3c')]({},_0x4c7cb9,_0x142946[_0xc8eb('0x45')]);return _0x5d8b72[_0xc8eb('0x50')](_0x4c7cb9);}})[_0xc8eb('0x24')](function(_0x495592){if(_0x495592){_0x3e2429=_0x495592[_0xc8eb('0x34')];if(!_0x142946['query'][_0xc8eb('0x4d')]('nolimit')){_0x4c7cb9[_0xc8eb('0x1b')]=qs['limit'](_0x142946[_0xc8eb('0x2f')]['limit']);_0x4c7cb9['offset']=qs['offset'](_0x142946['query']['offset']);}return _0x5d8b72[_0xc8eb('0x50')](_0x4c7cb9);}})['then'](function(_0x33fe32){if(_0x33fe32){return _0x33fe32?{'count':_0x3e2429,'rows':_0x33fe32}:null;}})[_0xc8eb('0x24')](respondWithResult(_0x4b11b9,null))[_0xc8eb('0x41')](handleError(_0x4b11b9,null));};exports['setTags']=function(_0xd26935,_0x4e7d55,_0x23d0e5){if(_0xd26935[_0xc8eb('0x48')]['id']){delete _0xd26935[_0xc8eb('0x48')]['id'];}return db[_0xc8eb('0x2b')][_0xc8eb('0x4b')]({'where':{'id':_0xd26935[_0xc8eb('0x42')]['id']}})[_0xc8eb('0x24')](handleEntityNotFound(_0x4e7d55,null))[_0xc8eb('0x24')](function(_0x4ede03){if(_0x4ede03){return _0x4ede03[_0xc8eb('0x51')](_0xd26935[_0xc8eb('0x48')][_0xc8eb('0x52')]||[]);}return null;})[_0xc8eb('0x24')](respondWithResult(_0x4e7d55,null))[_0xc8eb('0x41')](handleError(_0x4e7d55,null));};