Built motion from commit 5b761a7b.|2.5.36
[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 _0x0fc2=['save','update','destroy','then','end','sendStatus','error','stack','name','send','index','map','ZendeskConfiguration','rawAttributes','fieldName','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','limit','order','sort','where','pick','filter','merge','type','VIRTUAL','includeAll','findAll','rows','catch','params','find','create','body','getFields','ZendeskField','options','getSubjects','findOne','getDescriptions','getTags','Tag','setTags','ids','eml-format','rimraf','zip-dir','request-promise','bluebird','mustache','util','path','sox','ejs','lodash','squel','crypto','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','offset','undefined','count','set','json','apply','reject'];(function(_0x24588b,_0x476aa4){var _0x175178=function(_0x3455d1){while(--_0x3455d1){_0x24588b['push'](_0x24588b['shift']());}};_0x175178(++_0x476aa4);}(_0x0fc2,0x133));var _0x20fc=function(_0xb807c3,_0x350d96){_0xb807c3=_0xb807c3-0x0;var _0x3139d6=_0x0fc2[_0xb807c3];return _0x3139d6;};'use strict';var emlformat=require(_0x20fc('0x0'));var rimraf=require(_0x20fc('0x1'));var zipdir=require(_0x20fc('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x20fc('0x3'));var moment=require('moment');var BPromise=require(_0x20fc('0x4'));var Mustache=require(_0x20fc('0x5'));var util=require(_0x20fc('0x6'));var path=require(_0x20fc('0x7'));var sox=require(_0x20fc('0x8'));var csv=require('to-csv');var ejs=require(_0x20fc('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x20fc('0xa'));var squel=require(_0x20fc('0xb'));var crypto=require(_0x20fc('0xc'));var jsforce=require('jsforce');var deskjs=require(_0x20fc('0xd'));var toCsv=require('to-csv');var querystring=require(_0x20fc('0xe'));var Papa=require(_0x20fc('0xf'));var Redis=require('ioredis');var authService=require(_0x20fc('0x10'));var qs=require(_0x20fc('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x20fc('0x12'));var logger=require(_0x20fc('0x13'))(_0x20fc('0x14'));var utils=require(_0x20fc('0x15'));var config=require(_0x20fc('0x16'));var licenseUtil=require(_0x20fc('0x17'));var db=require(_0x20fc('0x18'))['db'];function respondWithStatusCode(_0x4e7329,_0x13aa68){_0x13aa68=_0x13aa68||0xcc;return function(_0x3a269f){if(_0x3a269f){return _0x4e7329['sendStatus'](_0x13aa68);}return _0x4e7329[_0x20fc('0x19')](_0x13aa68)['end']();};}function respondWithResult(_0x91f6ab,_0x30a84b){_0x30a84b=_0x30a84b||0xc8;return function(_0x6610e3){if(_0x6610e3){return _0x91f6ab[_0x20fc('0x19')](_0x30a84b)['json'](_0x6610e3);}};}function respondWithFilteredResult(_0x590331,_0x495721){return function(_0x239405){if(_0x239405){var _0x5e730c=typeof _0x495721[_0x20fc('0x1a')]===_0x20fc('0x1b')&&typeof _0x495721['limit']===_0x20fc('0x1b');var _0x11ddc5=_0x239405[_0x20fc('0x1c')];var _0x3e1d33=_0x5e730c?0x0:_0x495721[_0x20fc('0x1a')];var _0x11b57c=_0x5e730c?_0x239405[_0x20fc('0x1c')]:_0x495721[_0x20fc('0x1a')]+_0x495721['limit'];var _0x4ed2b7;if(_0x11b57c>=_0x11ddc5){_0x11b57c=_0x11ddc5;_0x4ed2b7=0xc8;}else{_0x4ed2b7=0xce;}_0x590331['status'](_0x4ed2b7);return _0x590331[_0x20fc('0x1d')]('Content-Range',_0x3e1d33+'-'+_0x11b57c+'/'+_0x11ddc5)[_0x20fc('0x1e')](_0x239405);}return null;};}function patchUpdates(_0x652d53){return function(_0x2fcb21){try{jsonpatch[_0x20fc('0x1f')](_0x2fcb21,_0x652d53,!![]);}catch(_0x5ab897){return BPromise[_0x20fc('0x20')](_0x5ab897);}return _0x2fcb21[_0x20fc('0x21')]();};}function saveUpdates(_0x1f700e,_0xbcd7b0){return function(_0xf42a0f){if(_0xf42a0f){return _0xf42a0f[_0x20fc('0x22')](_0x1f700e)['then'](function(_0x18c198){return _0x18c198;});}return null;};}function removeEntity(_0x174810,_0x2dbe78){return function(_0x729d43){if(_0x729d43){return _0x729d43[_0x20fc('0x23')]()[_0x20fc('0x24')](function(){_0x174810[_0x20fc('0x19')](0xcc)[_0x20fc('0x25')]();});}};}function handleEntityNotFound(_0x581d91,_0x19c93a){return function(_0x5b68e7){if(!_0x5b68e7){_0x581d91[_0x20fc('0x26')](0x194);}return _0x5b68e7;};}function handleError(_0xac6452,_0x2347f4){_0x2347f4=_0x2347f4||0x1f4;return function(_0x1b36ac){logger[_0x20fc('0x27')](_0x1b36ac[_0x20fc('0x28')]);if(_0x1b36ac[_0x20fc('0x29')]){delete _0x1b36ac['name'];}_0xac6452['status'](_0x2347f4)[_0x20fc('0x2a')](_0x1b36ac);};}exports[_0x20fc('0x2b')]=function(_0x296f18,_0x7d0ed9){var _0x395952={},_0x39c746={},_0x3a0346={'count':0x0,'rows':[]};var _0xad27a=_[_0x20fc('0x2c')](db[_0x20fc('0x2d')][_0x20fc('0x2e')],function(_0x5e843a){return{'name':_0x5e843a[_0x20fc('0x2f')],'type':_0x5e843a['type']['key']};});_0x39c746[_0x20fc('0x30')]=_['map'](_0xad27a,_0x20fc('0x29'));_0x39c746[_0x20fc('0x31')]=_[_0x20fc('0x32')](_0x296f18[_0x20fc('0x31')]);_0x39c746[_0x20fc('0x33')]=_[_0x20fc('0x34')](_0x39c746['model'],_0x39c746[_0x20fc('0x31')]);_0x395952[_0x20fc('0x35')]=_[_0x20fc('0x34')](_0x39c746['model'],qs[_0x20fc('0x36')](_0x296f18['query'][_0x20fc('0x36')]));_0x395952[_0x20fc('0x35')]=_0x395952['attributes'][_0x20fc('0x37')]?_0x395952['attributes']:_0x39c746[_0x20fc('0x30')];if(!_0x296f18['query'][_0x20fc('0x38')](_0x20fc('0x39'))){_0x395952[_0x20fc('0x3a')]=qs[_0x20fc('0x3a')](_0x296f18['query'][_0x20fc('0x3a')]);_0x395952[_0x20fc('0x1a')]=qs[_0x20fc('0x1a')](_0x296f18[_0x20fc('0x31')][_0x20fc('0x1a')]);}_0x395952[_0x20fc('0x3b')]=qs[_0x20fc('0x3c')](_0x296f18['query'][_0x20fc('0x3c')]);_0x395952[_0x20fc('0x3d')]=qs[_0x20fc('0x33')](_[_0x20fc('0x3e')](_0x296f18['query'],_0x39c746['filters']),_0xad27a);if(_0x296f18['query'][_0x20fc('0x3f')]){_0x395952[_0x20fc('0x3d')]=_[_0x20fc('0x40')](_0x395952[_0x20fc('0x3d')],{'$or':_['map'](_0xad27a,function(_0x4d46d7){if(_0x4d46d7[_0x20fc('0x41')]!==_0x20fc('0x42')){var _0x36f302={};_0x36f302[_0x4d46d7[_0x20fc('0x29')]]={'$like':'%'+_0x296f18[_0x20fc('0x31')][_0x20fc('0x3f')]+'%'};return _0x36f302;}})});}_0x395952=_['merge']({},_0x395952,_0x296f18['options']);var _0x1b2505={'where':_0x395952[_0x20fc('0x3d')]};return db[_0x20fc('0x2d')]['count'](_0x1b2505)[_0x20fc('0x24')](function(_0x138abf){_0x3a0346[_0x20fc('0x1c')]=_0x138abf;if(_0x296f18['query'][_0x20fc('0x43')]){_0x395952['include']=[{'all':!![]}];}return db[_0x20fc('0x2d')][_0x20fc('0x44')](_0x395952);})['then'](function(_0xcda39d){_0x3a0346[_0x20fc('0x45')]=_0xcda39d;return _0x3a0346;})[_0x20fc('0x24')](respondWithFilteredResult(_0x7d0ed9,_0x395952))[_0x20fc('0x46')](handleError(_0x7d0ed9,null));};exports['show']=function(_0x24a9a6,_0x38db52){var _0x1e7890={'raw':![],'where':{'id':_0x24a9a6[_0x20fc('0x47')]['id']}},_0x5be93d={};_0x5be93d[_0x20fc('0x30')]=_['keys'](db[_0x20fc('0x2d')]['rawAttributes']);_0x5be93d[_0x20fc('0x31')]=_[_0x20fc('0x32')](_0x24a9a6[_0x20fc('0x31')]);_0x5be93d[_0x20fc('0x33')]=_['intersection'](_0x5be93d[_0x20fc('0x30')],_0x5be93d[_0x20fc('0x31')]);_0x1e7890['attributes']=_[_0x20fc('0x34')](_0x5be93d[_0x20fc('0x30')],qs[_0x20fc('0x36')](_0x24a9a6[_0x20fc('0x31')][_0x20fc('0x36')]));_0x1e7890[_0x20fc('0x35')]=_0x1e7890[_0x20fc('0x35')]['length']?_0x1e7890[_0x20fc('0x35')]:_0x5be93d['model'];if(_0x24a9a6[_0x20fc('0x31')][_0x20fc('0x43')]){_0x1e7890['include']=[{'all':!![]}];}_0x1e7890=_[_0x20fc('0x40')]({},_0x1e7890,_0x24a9a6['options']);return db[_0x20fc('0x2d')][_0x20fc('0x48')](_0x1e7890)[_0x20fc('0x24')](handleEntityNotFound(_0x38db52,null))[_0x20fc('0x24')](respondWithResult(_0x38db52,null))[_0x20fc('0x46')](handleError(_0x38db52,null));};exports[_0x20fc('0x49')]=function(_0x55f2ab,_0x710954){return db[_0x20fc('0x2d')]['create'](_0x55f2ab['body'],{})[_0x20fc('0x24')](respondWithResult(_0x710954,0xc9))['catch'](handleError(_0x710954,null));};exports[_0x20fc('0x22')]=function(_0x4f3d4d,_0x2ad9ed){if(_0x4f3d4d[_0x20fc('0x4a')]['id']){delete _0x4f3d4d[_0x20fc('0x4a')]['id'];}return db['ZendeskConfiguration'][_0x20fc('0x48')]({'where':{'id':_0x4f3d4d[_0x20fc('0x47')]['id']}})[_0x20fc('0x24')](handleEntityNotFound(_0x2ad9ed,null))[_0x20fc('0x24')](saveUpdates(_0x4f3d4d[_0x20fc('0x4a')],null))['then'](respondWithResult(_0x2ad9ed,null))[_0x20fc('0x46')](handleError(_0x2ad9ed,null));};exports[_0x20fc('0x23')]=function(_0xe2cfab,_0x210276){return db[_0x20fc('0x2d')][_0x20fc('0x48')]({'where':{'id':_0xe2cfab[_0x20fc('0x47')]['id']}})[_0x20fc('0x24')](handleEntityNotFound(_0x210276,null))[_0x20fc('0x24')](removeEntity(_0x210276,null))['catch'](handleError(_0x210276,null));};exports[_0x20fc('0x4b')]=function(_0x287d29,_0x5383d6,_0x1a1455){var _0x124530={};var _0x54bcb6={};var _0x138fe5;var _0x5a07a6;return db[_0x20fc('0x2d')]['findOne']({'where':{'id':_0x287d29[_0x20fc('0x47')]['id']}})[_0x20fc('0x24')](handleEntityNotFound(_0x5383d6,null))[_0x20fc('0x24')](function(_0x4211b4){if(_0x4211b4){_0x138fe5=_0x4211b4;_0x54bcb6['model']=_['keys'](db[_0x20fc('0x4c')][_0x20fc('0x2e')]);_0x54bcb6[_0x20fc('0x31')]=_[_0x20fc('0x32')](_0x287d29[_0x20fc('0x31')]);_0x54bcb6['filters']=_[_0x20fc('0x34')](_0x54bcb6[_0x20fc('0x30')],_0x54bcb6['query']);_0x124530[_0x20fc('0x35')]=_[_0x20fc('0x34')](_0x54bcb6[_0x20fc('0x30')],qs[_0x20fc('0x36')](_0x287d29[_0x20fc('0x31')][_0x20fc('0x36')]));_0x124530[_0x20fc('0x35')]=_0x124530[_0x20fc('0x35')][_0x20fc('0x37')]?_0x124530[_0x20fc('0x35')]:_0x54bcb6[_0x20fc('0x30')];_0x124530['order']=qs[_0x20fc('0x3c')](_0x287d29[_0x20fc('0x31')]['sort']);_0x124530['where']=qs[_0x20fc('0x33')](_['pick'](_0x287d29[_0x20fc('0x31')],_0x54bcb6[_0x20fc('0x33')]));if(_0x287d29['query']['filter']){_0x124530[_0x20fc('0x3d')]=_[_0x20fc('0x40')](_0x124530[_0x20fc('0x3d')],{'$or':_[_0x20fc('0x2c')](_0x124530[_0x20fc('0x35')],function(_0x93302){var _0x5d8c02={};_0x5d8c02[_0x93302]={'$like':'%'+_0x287d29[_0x20fc('0x31')][_0x20fc('0x3f')]+'%'};return _0x5d8c02;})});}_0x124530=_[_0x20fc('0x40')]({},_0x124530,_0x287d29[_0x20fc('0x4d')]);return _0x138fe5[_0x20fc('0x4b')](_0x124530);}})[_0x20fc('0x24')](function(_0x5e339b){if(_0x5e339b){_0x5a07a6=_0x5e339b[_0x20fc('0x37')];if(!_0x287d29[_0x20fc('0x31')][_0x20fc('0x38')](_0x20fc('0x39'))){_0x124530[_0x20fc('0x3a')]=qs[_0x20fc('0x3a')](_0x287d29[_0x20fc('0x31')][_0x20fc('0x3a')]);_0x124530[_0x20fc('0x1a')]=qs[_0x20fc('0x1a')](_0x287d29['query'][_0x20fc('0x1a')]);}return _0x138fe5['getFields'](_0x124530);}})[_0x20fc('0x24')](function(_0xba4654){if(_0xba4654){return _0xba4654?{'count':_0x5a07a6,'rows':_0xba4654}:null;}})['then'](respondWithResult(_0x5383d6,null))['catch'](handleError(_0x5383d6,null));};exports[_0x20fc('0x4e')]=function(_0x1495f6,_0x5ce969,_0x521531){var _0xf43e9c={};var _0x13f17c={};var _0x17925f;var _0x5eac18;return db[_0x20fc('0x2d')]['findOne']({'where':{'id':_0x1495f6[_0x20fc('0x47')]['id']}})[_0x20fc('0x24')](handleEntityNotFound(_0x5ce969,null))[_0x20fc('0x24')](function(_0x5ec4b5){if(_0x5ec4b5){_0x17925f=_0x5ec4b5;_0x13f17c[_0x20fc('0x30')]=_[_0x20fc('0x32')](db[_0x20fc('0x4c')][_0x20fc('0x2e')]);_0x13f17c[_0x20fc('0x31')]=_[_0x20fc('0x32')](_0x1495f6[_0x20fc('0x31')]);_0x13f17c['filters']=_[_0x20fc('0x34')](_0x13f17c[_0x20fc('0x30')],_0x13f17c['query']);_0xf43e9c['attributes']=_[_0x20fc('0x34')](_0x13f17c[_0x20fc('0x30')],qs[_0x20fc('0x36')](_0x1495f6[_0x20fc('0x31')][_0x20fc('0x36')]));_0xf43e9c['attributes']=_0xf43e9c['attributes'][_0x20fc('0x37')]?_0xf43e9c[_0x20fc('0x35')]:_0x13f17c[_0x20fc('0x30')];_0xf43e9c['order']=qs[_0x20fc('0x3c')](_0x1495f6[_0x20fc('0x31')][_0x20fc('0x3c')]);_0xf43e9c['where']=qs['filters'](_['pick'](_0x1495f6[_0x20fc('0x31')],_0x13f17c['filters']));if(_0x1495f6[_0x20fc('0x31')]['filter']){_0xf43e9c['where']=_[_0x20fc('0x40')](_0xf43e9c[_0x20fc('0x3d')],{'$or':_[_0x20fc('0x2c')](_0xf43e9c['attributes'],function(_0x310ae1){var _0x439e22={};_0x439e22[_0x310ae1]={'$like':'%'+_0x1495f6[_0x20fc('0x31')][_0x20fc('0x3f')]+'%'};return _0x439e22;})});}_0xf43e9c=_[_0x20fc('0x40')]({},_0xf43e9c,_0x1495f6[_0x20fc('0x4d')]);return _0x17925f[_0x20fc('0x4e')](_0xf43e9c);}})[_0x20fc('0x24')](function(_0xa9c60b){if(_0xa9c60b){_0x5eac18=_0xa9c60b[_0x20fc('0x37')];if(!_0x1495f6['query'][_0x20fc('0x38')](_0x20fc('0x39'))){_0xf43e9c[_0x20fc('0x3a')]=qs['limit'](_0x1495f6['query'][_0x20fc('0x3a')]);_0xf43e9c['offset']=qs[_0x20fc('0x1a')](_0x1495f6[_0x20fc('0x31')][_0x20fc('0x1a')]);}return _0x17925f[_0x20fc('0x4e')](_0xf43e9c);}})['then'](function(_0x2e309f){if(_0x2e309f){return _0x2e309f?{'count':_0x5eac18,'rows':_0x2e309f}:null;}})[_0x20fc('0x24')](respondWithResult(_0x5ce969,null))[_0x20fc('0x46')](handleError(_0x5ce969,null));};exports['getDescriptions']=function(_0x38ac8d,_0x422ae0,_0x13bae0){var _0x4ac273={};var _0x22c827={};var _0x117332;var _0x47a40f;return db[_0x20fc('0x2d')][_0x20fc('0x4f')]({'where':{'id':_0x38ac8d[_0x20fc('0x47')]['id']}})[_0x20fc('0x24')](handleEntityNotFound(_0x422ae0,null))[_0x20fc('0x24')](function(_0x1f8f58){if(_0x1f8f58){_0x117332=_0x1f8f58;_0x22c827[_0x20fc('0x30')]=_[_0x20fc('0x32')](db[_0x20fc('0x4c')][_0x20fc('0x2e')]);_0x22c827[_0x20fc('0x31')]=_[_0x20fc('0x32')](_0x38ac8d[_0x20fc('0x31')]);_0x22c827['filters']=_[_0x20fc('0x34')](_0x22c827[_0x20fc('0x30')],_0x22c827['query']);_0x4ac273['attributes']=_['intersection'](_0x22c827[_0x20fc('0x30')],qs[_0x20fc('0x36')](_0x38ac8d['query'][_0x20fc('0x36')]));_0x4ac273['attributes']=_0x4ac273[_0x20fc('0x35')]['length']?_0x4ac273[_0x20fc('0x35')]:_0x22c827[_0x20fc('0x30')];_0x4ac273[_0x20fc('0x3b')]=qs[_0x20fc('0x3c')](_0x38ac8d['query'][_0x20fc('0x3c')]);_0x4ac273[_0x20fc('0x3d')]=qs[_0x20fc('0x33')](_[_0x20fc('0x3e')](_0x38ac8d[_0x20fc('0x31')],_0x22c827[_0x20fc('0x33')]));if(_0x38ac8d[_0x20fc('0x31')]['filter']){_0x4ac273[_0x20fc('0x3d')]=_[_0x20fc('0x40')](_0x4ac273[_0x20fc('0x3d')],{'$or':_[_0x20fc('0x2c')](_0x4ac273[_0x20fc('0x35')],function(_0x51ee7d){var _0x55cbd1={};_0x55cbd1[_0x51ee7d]={'$like':'%'+_0x38ac8d[_0x20fc('0x31')]['filter']+'%'};return _0x55cbd1;})});}_0x4ac273=_['merge']({},_0x4ac273,_0x38ac8d[_0x20fc('0x4d')]);return _0x117332[_0x20fc('0x50')](_0x4ac273);}})[_0x20fc('0x24')](function(_0x303ec6){if(_0x303ec6){_0x47a40f=_0x303ec6[_0x20fc('0x37')];if(!_0x38ac8d[_0x20fc('0x31')][_0x20fc('0x38')](_0x20fc('0x39'))){_0x4ac273['limit']=qs['limit'](_0x38ac8d[_0x20fc('0x31')][_0x20fc('0x3a')]);_0x4ac273['offset']=qs[_0x20fc('0x1a')](_0x38ac8d['query'][_0x20fc('0x1a')]);}return _0x117332[_0x20fc('0x50')](_0x4ac273);}})[_0x20fc('0x24')](function(_0x44f471){if(_0x44f471){return _0x44f471?{'count':_0x47a40f,'rows':_0x44f471}:null;}})[_0x20fc('0x24')](respondWithResult(_0x422ae0,null))[_0x20fc('0x46')](handleError(_0x422ae0,null));};exports[_0x20fc('0x51')]=function(_0x18cad1,_0xcc39b0,_0x8b02d9){var _0x4c3e9d={};var _0x366367={};var _0x3be80a;var _0x58f7b6;return db[_0x20fc('0x2d')]['findOne']({'where':{'id':_0x18cad1['params']['id']}})[_0x20fc('0x24')](handleEntityNotFound(_0xcc39b0,null))[_0x20fc('0x24')](function(_0x5b3b21){if(_0x5b3b21){_0x3be80a=_0x5b3b21;_0x366367[_0x20fc('0x30')]=_['keys'](db[_0x20fc('0x52')][_0x20fc('0x2e')]);_0x366367[_0x20fc('0x31')]=_[_0x20fc('0x32')](_0x18cad1[_0x20fc('0x31')]);_0x366367[_0x20fc('0x33')]=_[_0x20fc('0x34')](_0x366367[_0x20fc('0x30')],_0x366367[_0x20fc('0x31')]);_0x4c3e9d[_0x20fc('0x35')]=_[_0x20fc('0x34')](_0x366367[_0x20fc('0x30')],qs['fields'](_0x18cad1[_0x20fc('0x31')][_0x20fc('0x36')]));_0x4c3e9d[_0x20fc('0x35')]=_0x4c3e9d[_0x20fc('0x35')][_0x20fc('0x37')]?_0x4c3e9d[_0x20fc('0x35')]:_0x366367['model'];_0x4c3e9d[_0x20fc('0x3b')]=qs[_0x20fc('0x3c')](_0x18cad1[_0x20fc('0x31')][_0x20fc('0x3c')]);_0x4c3e9d[_0x20fc('0x3d')]=qs['filters'](_['pick'](_0x18cad1[_0x20fc('0x31')],_0x366367['filters']));if(_0x18cad1[_0x20fc('0x31')][_0x20fc('0x3f')]){_0x4c3e9d[_0x20fc('0x3d')]=_['merge'](_0x4c3e9d[_0x20fc('0x3d')],{'$or':_[_0x20fc('0x2c')](_0x4c3e9d['attributes'],function(_0x28d292){var _0x5aefa7={};_0x5aefa7[_0x28d292]={'$like':'%'+_0x18cad1[_0x20fc('0x31')][_0x20fc('0x3f')]+'%'};return _0x5aefa7;})});}_0x4c3e9d=_[_0x20fc('0x40')]({},_0x4c3e9d,_0x18cad1[_0x20fc('0x4d')]);return _0x3be80a['getTags'](_0x4c3e9d);}})[_0x20fc('0x24')](function(_0x28ddad){if(_0x28ddad){_0x58f7b6=_0x28ddad[_0x20fc('0x37')];if(!_0x18cad1[_0x20fc('0x31')][_0x20fc('0x38')]('nolimit')){_0x4c3e9d[_0x20fc('0x3a')]=qs[_0x20fc('0x3a')](_0x18cad1[_0x20fc('0x31')][_0x20fc('0x3a')]);_0x4c3e9d[_0x20fc('0x1a')]=qs[_0x20fc('0x1a')](_0x18cad1[_0x20fc('0x31')][_0x20fc('0x1a')]);}return _0x3be80a[_0x20fc('0x51')](_0x4c3e9d);}})['then'](function(_0x288cf1){if(_0x288cf1){return _0x288cf1?{'count':_0x58f7b6,'rows':_0x288cf1}:null;}})[_0x20fc('0x24')](respondWithResult(_0xcc39b0,null))[_0x20fc('0x46')](handleError(_0xcc39b0,null));};exports['setTags']=function(_0x4b1008,_0x555366,_0x298fa1){if(_0x4b1008[_0x20fc('0x4a')]['id']){delete _0x4b1008['body']['id'];}return db[_0x20fc('0x2d')][_0x20fc('0x4f')]({'where':{'id':_0x4b1008[_0x20fc('0x47')]['id']}})[_0x20fc('0x24')](handleEntityNotFound(_0x555366,null))[_0x20fc('0x24')](function(_0x26b580){if(_0x26b580){return _0x26b580[_0x20fc('0x53')](_0x4b1008[_0x20fc('0x4a')][_0x20fc('0x54')]||[]);}return null;})[_0x20fc('0x24')](respondWithResult(_0x555366,null))[_0x20fc('0x46')](handleError(_0x555366,null));};