Built motion from commit (unavailable).|2.5.28
[motion2.git] / server / api / intDeskConfiguration / intDeskConfiguration.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 _0x4e81=['crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','jayson/promise','http','request','then','info','request\x20sent','debug','DeskConfiguration,\x20%s,\x20%s,\x20%s','stringify','error','code','DeskConfiguration,\x20%s,\x20%s','message','result','catch','end','status','offset','limit','json','apply','reject','save','update','destroy','sendStatus','stack','name','send','map','DeskConfiguration','rawAttributes','type','model','query','keys','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','where','pick','filters','filter','merge','options','count','include','rows','show','params','includeAll','find','create','body','getFields','findOne','DeskField','sort','getSubjects','getDescriptions','getTags','setTags','eml-format','rimraf','zip-dir','bluebird','mustache','util','path','sox','to-csv','lodash','squel'];(function(_0x59f633,_0x577e8e){var _0xaa2853=function(_0x377fde){while(--_0x377fde){_0x59f633['push'](_0x59f633['shift']());}};_0xaa2853(++_0x577e8e);}(_0x4e81,0x1bc));var _0x14e8=function(_0x725b8e,_0xc22b48){_0x725b8e=_0x725b8e-0x0;var _0x43ac45=_0x4e81[_0x725b8e];return _0x43ac45;};'use strict';var emlformat=require(_0x14e8('0x0'));var rimraf=require(_0x14e8('0x1'));var zipdir=require(_0x14e8('0x2'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0x14e8('0x3'));var Mustache=require(_0x14e8('0x4'));var util=require(_0x14e8('0x5'));var path=require(_0x14e8('0x6'));var sox=require(_0x14e8('0x7'));var csv=require(_0x14e8('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x14e8('0x9'));var squel=require(_0x14e8('0xa'));var crypto=require(_0x14e8('0xb'));var jsforce=require(_0x14e8('0xc'));var deskjs=require(_0x14e8('0xd'));var toCsv=require(_0x14e8('0x8'));var querystring=require(_0x14e8('0xe'));var Papa=require(_0x14e8('0xf'));var Redis=require(_0x14e8('0x10'));var authService=require('../../components/auth/service');var qs=require(_0x14e8('0x11'));var as=require(_0x14e8('0x12'));var hardwareService=require(_0x14e8('0x13'));var logger=require(_0x14e8('0x14'))(_0x14e8('0x15'));var utils=require(_0x14e8('0x16'));var config=require(_0x14e8('0x17'));var licenseUtil=require(_0x14e8('0x18'));var db=require('../../mysqldb')['db'];var jayson=require(_0x14e8('0x19'));var client=jayson['client'][_0x14e8('0x1a')]({'port':0x232a});function respondWithRpcPromise(_0x341d40,_0x32a01d,_0x5a95b7,_0x22fa86){return new BPromise(function(_0x4e1064,_0x458e4a){var _0x58d26e=_0x22fa86||client;return _0x58d26e[_0x14e8('0x1b')](_0x341d40,_0x5a95b7)[_0x14e8('0x1c')](function(_0xc6101f){logger[_0x14e8('0x1d')]('DeskConfiguration,\x20%s,\x20%s',_0x32a01d,_0x14e8('0x1e'));logger[_0x14e8('0x1f')](_0x14e8('0x20'),_0x32a01d,_0x14e8('0x1e'),JSON[_0x14e8('0x21')](_0xc6101f));if(_0xc6101f[_0x14e8('0x22')]){if(_0xc6101f[_0x14e8('0x22')][_0x14e8('0x23')]===0x1f4){logger['error'](_0x14e8('0x24'),_0x32a01d,_0xc6101f[_0x14e8('0x22')][_0x14e8('0x25')]);return _0x458e4a(_0xc6101f[_0x14e8('0x22')][_0x14e8('0x25')]);}logger['error'](_0x14e8('0x24'),_0x32a01d,_0xc6101f[_0x14e8('0x22')][_0x14e8('0x25')]);return _0x4e1064(_0xc6101f['error'][_0x14e8('0x25')]);}else{logger['info'](_0x14e8('0x24'),_0x32a01d,_0x14e8('0x1e'));_0x4e1064(_0xc6101f[_0x14e8('0x26')][_0x14e8('0x25')]);}})[_0x14e8('0x27')](function(_0x4ad25d){logger[_0x14e8('0x22')]('DeskConfiguration,\x20%s,\x20%s',_0x32a01d,_0x4ad25d);_0x458e4a(_0x4ad25d);});});}function respondWithStatusCode(_0x31bdd3,_0x185a0e){_0x185a0e=_0x185a0e||0xcc;return function(_0x4ffc8b){if(_0x4ffc8b){return _0x31bdd3['sendStatus'](_0x185a0e);}return _0x31bdd3['status'](_0x185a0e)[_0x14e8('0x28')]();};}function respondWithResult(_0x271e5d,_0x3eae0b){_0x3eae0b=_0x3eae0b||0xc8;return function(_0x20bfe8){if(_0x20bfe8){return _0x271e5d[_0x14e8('0x29')](_0x3eae0b)['json'](_0x20bfe8);}};}function respondWithFilteredResult(_0x23a9dc,_0x3fd96d){return function(_0x3c09cb){if(_0x3c09cb){var _0x2f5818=_0x3c09cb['count'],_0x28035a=_0x3fd96d[_0x14e8('0x2a')],_0xfc0545=_0x3fd96d[_0x14e8('0x2a')]+_0x3fd96d[_0x14e8('0x2b')],_0x2813ae;if(_0xfc0545>=_0x2f5818){_0xfc0545=_0x2f5818;_0x2813ae=0xc8;}else{_0x2813ae=0xce;}_0x23a9dc['status'](_0x2813ae);return _0x23a9dc['set']('Content-Range',_0x28035a+'-'+_0xfc0545+'/'+_0x2f5818)[_0x14e8('0x2c')](_0x3c09cb);}return null;};}function patchUpdates(_0x2a408d){return function(_0x567385){try{jsonpatch[_0x14e8('0x2d')](_0x567385,_0x2a408d,!![]);}catch(_0x1d71ca){return BPromise[_0x14e8('0x2e')](_0x1d71ca);}return _0x567385[_0x14e8('0x2f')]();};}function saveUpdates(_0x5c2635,_0x1f1259){return function(_0x260d51){if(_0x260d51){return _0x260d51[_0x14e8('0x30')](_0x5c2635)[_0x14e8('0x1c')](function(_0x2d0246){return _0x2d0246;});}return null;};}function removeEntity(_0x54068d,_0x2f83c3){return function(_0x29ee7a){if(_0x29ee7a){return _0x29ee7a[_0x14e8('0x31')]()[_0x14e8('0x1c')](function(){_0x54068d['status'](0xcc)[_0x14e8('0x28')]();});}};}function handleEntityNotFound(_0x4fe501,_0x14a038){return function(_0x44c6fb){if(!_0x44c6fb){_0x4fe501[_0x14e8('0x32')](0x194);}return _0x44c6fb;};}function handleError(_0x34a7c8,_0x17fc40){_0x17fc40=_0x17fc40||0x1f4;return function(_0x3de0f0){logger[_0x14e8('0x22')](_0x3de0f0[_0x14e8('0x33')]);if(_0x3de0f0[_0x14e8('0x34')]){delete _0x3de0f0[_0x14e8('0x34')];}_0x34a7c8[_0x14e8('0x29')](_0x17fc40)[_0x14e8('0x35')](_0x3de0f0);};}exports['index']=function(_0x54ff6d,_0x4dac15){var _0x16ff09={},_0x4da5f4={},_0x2f6fad={'count':0x0,'rows':[]};var _0x5bdf42=_[_0x14e8('0x36')](db[_0x14e8('0x37')][_0x14e8('0x38')],function(_0x2fc030){return{'name':_0x2fc030['fieldName'],'type':_0x2fc030[_0x14e8('0x39')]['key']};});_0x4da5f4[_0x14e8('0x3a')]=_[_0x14e8('0x36')](_0x5bdf42,_0x14e8('0x34'));_0x4da5f4[_0x14e8('0x3b')]=_[_0x14e8('0x3c')](_0x54ff6d[_0x14e8('0x3b')]);_0x4da5f4['filters']=_[_0x14e8('0x3d')](_0x4da5f4['model'],_0x4da5f4[_0x14e8('0x3b')]);_0x16ff09[_0x14e8('0x3e')]=_[_0x14e8('0x3d')](_0x4da5f4['model'],qs[_0x14e8('0x3f')](_0x54ff6d[_0x14e8('0x3b')]['fields']));_0x16ff09[_0x14e8('0x3e')]=_0x16ff09[_0x14e8('0x3e')][_0x14e8('0x40')]?_0x16ff09[_0x14e8('0x3e')]:_0x4da5f4[_0x14e8('0x3a')];if(!_0x54ff6d[_0x14e8('0x3b')][_0x14e8('0x41')](_0x14e8('0x42'))){_0x16ff09[_0x14e8('0x2b')]=qs[_0x14e8('0x2b')](_0x54ff6d[_0x14e8('0x3b')][_0x14e8('0x2b')]);_0x16ff09[_0x14e8('0x2a')]=qs[_0x14e8('0x2a')](_0x54ff6d[_0x14e8('0x3b')]['offset']);}_0x16ff09[_0x14e8('0x43')]=qs['sort'](_0x54ff6d['query']['sort']);_0x16ff09[_0x14e8('0x44')]=qs['filters'](_[_0x14e8('0x45')](_0x54ff6d[_0x14e8('0x3b')],_0x4da5f4[_0x14e8('0x46')]),_0x5bdf42);if(_0x54ff6d[_0x14e8('0x3b')][_0x14e8('0x47')]){_0x16ff09[_0x14e8('0x44')]=_[_0x14e8('0x48')](_0x16ff09[_0x14e8('0x44')],{'$or':_[_0x14e8('0x36')](_0x5bdf42,function(_0x3f9da0){if(_0x3f9da0[_0x14e8('0x39')]!=='VIRTUAL'){var _0x1c08e0={};_0x1c08e0[_0x3f9da0[_0x14e8('0x34')]]={'$like':'%'+_0x54ff6d[_0x14e8('0x3b')][_0x14e8('0x47')]+'%'};return _0x1c08e0;}})});}_0x16ff09=_['merge']({},_0x16ff09,_0x54ff6d[_0x14e8('0x49')]);var _0x3b3b66={'where':_0x16ff09['where']};return db['DeskConfiguration'][_0x14e8('0x4a')](_0x3b3b66)['then'](function(_0x58b609){_0x2f6fad[_0x14e8('0x4a')]=_0x58b609;if(_0x54ff6d[_0x14e8('0x3b')]['includeAll']){_0x16ff09[_0x14e8('0x4b')]=[{'all':!![]}];}return db[_0x14e8('0x37')]['findAll'](_0x16ff09);})[_0x14e8('0x1c')](function(_0x1994fb){_0x2f6fad[_0x14e8('0x4c')]=_0x1994fb;return _0x2f6fad;})[_0x14e8('0x1c')](respondWithFilteredResult(_0x4dac15,_0x16ff09))[_0x14e8('0x27')](handleError(_0x4dac15,null));};exports[_0x14e8('0x4d')]=function(_0x343529,_0x2541ad){var _0x146e2c={'raw':![],'where':{'id':_0x343529[_0x14e8('0x4e')]['id']}},_0x42180d={};_0x42180d[_0x14e8('0x3a')]=_[_0x14e8('0x3c')](db[_0x14e8('0x37')][_0x14e8('0x38')]);_0x42180d[_0x14e8('0x3b')]=_['keys'](_0x343529[_0x14e8('0x3b')]);_0x42180d['filters']=_[_0x14e8('0x3d')](_0x42180d[_0x14e8('0x3a')],_0x42180d[_0x14e8('0x3b')]);_0x146e2c[_0x14e8('0x3e')]=_['intersection'](_0x42180d['model'],qs['fields'](_0x343529[_0x14e8('0x3b')]['fields']));_0x146e2c['attributes']=_0x146e2c[_0x14e8('0x3e')][_0x14e8('0x40')]?_0x146e2c['attributes']:_0x42180d[_0x14e8('0x3a')];if(_0x343529[_0x14e8('0x3b')][_0x14e8('0x4f')]){_0x146e2c[_0x14e8('0x4b')]=[{'all':!![]}];}_0x146e2c=_['merge']({},_0x146e2c,_0x343529['options']);return db[_0x14e8('0x37')][_0x14e8('0x50')](_0x146e2c)[_0x14e8('0x1c')](handleEntityNotFound(_0x2541ad,null))[_0x14e8('0x1c')](respondWithResult(_0x2541ad,null))[_0x14e8('0x27')](handleError(_0x2541ad,null));};exports[_0x14e8('0x51')]=function(_0x5686f6,_0xff7f40){return db[_0x14e8('0x37')][_0x14e8('0x51')](_0x5686f6[_0x14e8('0x52')],{})['then'](respondWithResult(_0xff7f40,0xc9))[_0x14e8('0x27')](handleError(_0xff7f40,null));};exports[_0x14e8('0x30')]=function(_0xf30215,_0x1a892f){if(_0xf30215['body']['id']){delete _0xf30215[_0x14e8('0x52')]['id'];}return db[_0x14e8('0x37')][_0x14e8('0x50')]({'where':{'id':_0xf30215[_0x14e8('0x4e')]['id']}})[_0x14e8('0x1c')](handleEntityNotFound(_0x1a892f,null))[_0x14e8('0x1c')](saveUpdates(_0xf30215[_0x14e8('0x52')],null))[_0x14e8('0x1c')](respondWithResult(_0x1a892f,null))['catch'](handleError(_0x1a892f,null));};exports['destroy']=function(_0x2fcc63,_0x238469){return db[_0x14e8('0x37')][_0x14e8('0x50')]({'where':{'id':_0x2fcc63[_0x14e8('0x4e')]['id']}})['then'](handleEntityNotFound(_0x238469,null))['then'](removeEntity(_0x238469,null))['catch'](handleError(_0x238469,null));};exports[_0x14e8('0x53')]=function(_0x182a9c,_0x323360,_0x58e2a4){var _0x8c9182={};var _0xbd38ae={};var _0x1d6683;var _0x54e164;return db[_0x14e8('0x37')][_0x14e8('0x54')]({'where':{'id':_0x182a9c[_0x14e8('0x4e')]['id']}})[_0x14e8('0x1c')](handleEntityNotFound(_0x323360,null))[_0x14e8('0x1c')](function(_0x12ec12){if(_0x12ec12){_0x1d6683=_0x12ec12;_0xbd38ae[_0x14e8('0x3a')]=_[_0x14e8('0x3c')](db[_0x14e8('0x55')][_0x14e8('0x38')]);_0xbd38ae[_0x14e8('0x3b')]=_['keys'](_0x182a9c[_0x14e8('0x3b')]);_0xbd38ae[_0x14e8('0x46')]=_[_0x14e8('0x3d')](_0xbd38ae[_0x14e8('0x3a')],_0xbd38ae[_0x14e8('0x3b')]);_0x8c9182[_0x14e8('0x3e')]=_[_0x14e8('0x3d')](_0xbd38ae[_0x14e8('0x3a')],qs[_0x14e8('0x3f')](_0x182a9c[_0x14e8('0x3b')][_0x14e8('0x3f')]));_0x8c9182[_0x14e8('0x3e')]=_0x8c9182['attributes'][_0x14e8('0x40')]?_0x8c9182[_0x14e8('0x3e')]:_0xbd38ae['model'];_0x8c9182[_0x14e8('0x43')]=qs[_0x14e8('0x56')](_0x182a9c[_0x14e8('0x3b')][_0x14e8('0x56')]);_0x8c9182[_0x14e8('0x44')]=qs[_0x14e8('0x46')](_[_0x14e8('0x45')](_0x182a9c['query'],_0xbd38ae['filters']));if(_0x182a9c['query'][_0x14e8('0x47')]){_0x8c9182[_0x14e8('0x44')]=_[_0x14e8('0x48')](_0x8c9182[_0x14e8('0x44')],{'$or':_[_0x14e8('0x36')](_0x8c9182[_0x14e8('0x3e')],function(_0x402956){var _0x4c34d7={};_0x4c34d7[_0x402956]={'$like':'%'+_0x182a9c[_0x14e8('0x3b')][_0x14e8('0x47')]+'%'};return _0x4c34d7;})});}_0x8c9182=_['merge']({},_0x8c9182,_0x182a9c[_0x14e8('0x49')]);return _0x1d6683[_0x14e8('0x53')](_0x8c9182);}})['then'](function(_0x58fa2e){if(_0x58fa2e){_0x54e164=_0x58fa2e['length'];if(!_0x182a9c[_0x14e8('0x3b')][_0x14e8('0x41')](_0x14e8('0x42'))){_0x8c9182[_0x14e8('0x2b')]=qs['limit'](_0x182a9c[_0x14e8('0x3b')][_0x14e8('0x2b')]);_0x8c9182[_0x14e8('0x2a')]=qs[_0x14e8('0x2a')](_0x182a9c[_0x14e8('0x3b')][_0x14e8('0x2a')]);}return _0x1d6683['getFields'](_0x8c9182);}})[_0x14e8('0x1c')](function(_0x10cdb9){if(_0x10cdb9){return _0x10cdb9?{'count':_0x54e164,'rows':_0x10cdb9}:null;}})[_0x14e8('0x1c')](respondWithResult(_0x323360,null))['catch'](handleError(_0x323360,null));};exports['getSubjects']=function(_0x20a598,_0x53d0c8,_0x25f63c){var _0x5cbce8={};var _0x13ebe6={};var _0x54b023;var _0x28aac4;return db[_0x14e8('0x37')]['findOne']({'where':{'id':_0x20a598[_0x14e8('0x4e')]['id']}})[_0x14e8('0x1c')](handleEntityNotFound(_0x53d0c8,null))[_0x14e8('0x1c')](function(_0xd1cd5e){if(_0xd1cd5e){_0x54b023=_0xd1cd5e;_0x13ebe6[_0x14e8('0x3a')]=_[_0x14e8('0x3c')](db[_0x14e8('0x55')][_0x14e8('0x38')]);_0x13ebe6[_0x14e8('0x3b')]=_[_0x14e8('0x3c')](_0x20a598[_0x14e8('0x3b')]);_0x13ebe6[_0x14e8('0x46')]=_[_0x14e8('0x3d')](_0x13ebe6['model'],_0x13ebe6['query']);_0x5cbce8['attributes']=_[_0x14e8('0x3d')](_0x13ebe6[_0x14e8('0x3a')],qs[_0x14e8('0x3f')](_0x20a598['query'][_0x14e8('0x3f')]));_0x5cbce8['attributes']=_0x5cbce8['attributes']['length']?_0x5cbce8[_0x14e8('0x3e')]:_0x13ebe6[_0x14e8('0x3a')];_0x5cbce8[_0x14e8('0x43')]=qs['sort'](_0x20a598[_0x14e8('0x3b')]['sort']);_0x5cbce8[_0x14e8('0x44')]=qs[_0x14e8('0x46')](_[_0x14e8('0x45')](_0x20a598[_0x14e8('0x3b')],_0x13ebe6[_0x14e8('0x46')]));if(_0x20a598[_0x14e8('0x3b')][_0x14e8('0x47')]){_0x5cbce8[_0x14e8('0x44')]=_[_0x14e8('0x48')](_0x5cbce8['where'],{'$or':_[_0x14e8('0x36')](_0x5cbce8['attributes'],function(_0x355395){var _0x9021e8={};_0x9021e8[_0x355395]={'$like':'%'+_0x20a598[_0x14e8('0x3b')][_0x14e8('0x47')]+'%'};return _0x9021e8;})});}_0x5cbce8=_[_0x14e8('0x48')]({},_0x5cbce8,_0x20a598[_0x14e8('0x49')]);return _0x54b023[_0x14e8('0x57')](_0x5cbce8);}})[_0x14e8('0x1c')](function(_0x1b3f84){if(_0x1b3f84){_0x28aac4=_0x1b3f84['length'];if(!_0x20a598[_0x14e8('0x3b')][_0x14e8('0x41')](_0x14e8('0x42'))){_0x5cbce8[_0x14e8('0x2b')]=qs['limit'](_0x20a598[_0x14e8('0x3b')][_0x14e8('0x2b')]);_0x5cbce8[_0x14e8('0x2a')]=qs[_0x14e8('0x2a')](_0x20a598['query'][_0x14e8('0x2a')]);}return _0x54b023['getSubjects'](_0x5cbce8);}})[_0x14e8('0x1c')](function(_0x4bbfe3){if(_0x4bbfe3){return _0x4bbfe3?{'count':_0x28aac4,'rows':_0x4bbfe3}:null;}})['then'](respondWithResult(_0x53d0c8,null))[_0x14e8('0x27')](handleError(_0x53d0c8,null));};exports[_0x14e8('0x58')]=function(_0x392bd1,_0x11b496,_0xe8425f){var _0xfa52f={};var _0x22fbb9={};var _0x343ff5;var _0x14d4b7;return db[_0x14e8('0x37')][_0x14e8('0x54')]({'where':{'id':_0x392bd1['params']['id']}})[_0x14e8('0x1c')](handleEntityNotFound(_0x11b496,null))[_0x14e8('0x1c')](function(_0xf2304c){if(_0xf2304c){_0x343ff5=_0xf2304c;_0x22fbb9['model']=_['keys'](db[_0x14e8('0x55')][_0x14e8('0x38')]);_0x22fbb9[_0x14e8('0x3b')]=_[_0x14e8('0x3c')](_0x392bd1[_0x14e8('0x3b')]);_0x22fbb9[_0x14e8('0x46')]=_[_0x14e8('0x3d')](_0x22fbb9[_0x14e8('0x3a')],_0x22fbb9[_0x14e8('0x3b')]);_0xfa52f[_0x14e8('0x3e')]=_[_0x14e8('0x3d')](_0x22fbb9[_0x14e8('0x3a')],qs[_0x14e8('0x3f')](_0x392bd1[_0x14e8('0x3b')]['fields']));_0xfa52f[_0x14e8('0x3e')]=_0xfa52f['attributes'][_0x14e8('0x40')]?_0xfa52f[_0x14e8('0x3e')]:_0x22fbb9[_0x14e8('0x3a')];_0xfa52f[_0x14e8('0x43')]=qs[_0x14e8('0x56')](_0x392bd1[_0x14e8('0x3b')]['sort']);_0xfa52f[_0x14e8('0x44')]=qs[_0x14e8('0x46')](_['pick'](_0x392bd1[_0x14e8('0x3b')],_0x22fbb9[_0x14e8('0x46')]));if(_0x392bd1[_0x14e8('0x3b')]['filter']){_0xfa52f[_0x14e8('0x44')]=_[_0x14e8('0x48')](_0xfa52f[_0x14e8('0x44')],{'$or':_[_0x14e8('0x36')](_0xfa52f[_0x14e8('0x3e')],function(_0x45a22f){var _0x1e4002={};_0x1e4002[_0x45a22f]={'$like':'%'+_0x392bd1[_0x14e8('0x3b')][_0x14e8('0x47')]+'%'};return _0x1e4002;})});}_0xfa52f=_[_0x14e8('0x48')]({},_0xfa52f,_0x392bd1[_0x14e8('0x49')]);return _0x343ff5[_0x14e8('0x58')](_0xfa52f);}})['then'](function(_0x1eb0aa){if(_0x1eb0aa){_0x14d4b7=_0x1eb0aa['length'];if(!_0x392bd1['query'][_0x14e8('0x41')]('nolimit')){_0xfa52f[_0x14e8('0x2b')]=qs[_0x14e8('0x2b')](_0x392bd1[_0x14e8('0x3b')][_0x14e8('0x2b')]);_0xfa52f['offset']=qs[_0x14e8('0x2a')](_0x392bd1[_0x14e8('0x3b')][_0x14e8('0x2a')]);}return _0x343ff5['getDescriptions'](_0xfa52f);}})['then'](function(_0xd4ea92){if(_0xd4ea92){return _0xd4ea92?{'count':_0x14d4b7,'rows':_0xd4ea92}:null;}})[_0x14e8('0x1c')](respondWithResult(_0x11b496,null))[_0x14e8('0x27')](handleError(_0x11b496,null));};exports['getTags']=function(_0x337c91,_0x865b2b,_0x4e57c6){var _0x2c7c45={};var _0x87cb75={};var _0x18624f;var _0x4a05b3;return db[_0x14e8('0x37')][_0x14e8('0x54')]({'where':{'id':_0x337c91[_0x14e8('0x4e')]['id']}})[_0x14e8('0x1c')](handleEntityNotFound(_0x865b2b,null))[_0x14e8('0x1c')](function(_0x214dcf){if(_0x214dcf){_0x18624f=_0x214dcf;_0x87cb75['model']=_[_0x14e8('0x3c')](db['Tag'][_0x14e8('0x38')]);_0x87cb75[_0x14e8('0x3b')]=_[_0x14e8('0x3c')](_0x337c91['query']);_0x87cb75['filters']=_[_0x14e8('0x3d')](_0x87cb75[_0x14e8('0x3a')],_0x87cb75[_0x14e8('0x3b')]);_0x2c7c45[_0x14e8('0x3e')]=_[_0x14e8('0x3d')](_0x87cb75[_0x14e8('0x3a')],qs['fields'](_0x337c91[_0x14e8('0x3b')]['fields']));_0x2c7c45[_0x14e8('0x3e')]=_0x2c7c45[_0x14e8('0x3e')][_0x14e8('0x40')]?_0x2c7c45['attributes']:_0x87cb75[_0x14e8('0x3a')];_0x2c7c45[_0x14e8('0x43')]=qs[_0x14e8('0x56')](_0x337c91[_0x14e8('0x3b')][_0x14e8('0x56')]);_0x2c7c45['where']=qs[_0x14e8('0x46')](_[_0x14e8('0x45')](_0x337c91['query'],_0x87cb75['filters']));if(_0x337c91['query'][_0x14e8('0x47')]){_0x2c7c45['where']=_[_0x14e8('0x48')](_0x2c7c45[_0x14e8('0x44')],{'$or':_[_0x14e8('0x36')](_0x2c7c45[_0x14e8('0x3e')],function(_0x3a1ed7){var _0x2b554f={};_0x2b554f[_0x3a1ed7]={'$like':'%'+_0x337c91[_0x14e8('0x3b')][_0x14e8('0x47')]+'%'};return _0x2b554f;})});}_0x2c7c45=_[_0x14e8('0x48')]({},_0x2c7c45,_0x337c91['options']);return _0x18624f[_0x14e8('0x59')](_0x2c7c45);}})['then'](function(_0x351dd6){if(_0x351dd6){_0x4a05b3=_0x351dd6[_0x14e8('0x40')];if(!_0x337c91['query'][_0x14e8('0x41')]('nolimit')){_0x2c7c45[_0x14e8('0x2b')]=qs[_0x14e8('0x2b')](_0x337c91[_0x14e8('0x3b')]['limit']);_0x2c7c45[_0x14e8('0x2a')]=qs['offset'](_0x337c91[_0x14e8('0x3b')]['offset']);}return _0x18624f['getTags'](_0x2c7c45);}})['then'](function(_0x2f03b1){if(_0x2f03b1){return _0x2f03b1?{'count':_0x4a05b3,'rows':_0x2f03b1}:null;}})[_0x14e8('0x1c')](respondWithResult(_0x865b2b,null))[_0x14e8('0x27')](handleError(_0x865b2b,null));};exports[_0x14e8('0x5a')]=function(_0x59f340,_0x5682e8,_0x47238f){if(_0x59f340['body']['id']){delete _0x59f340[_0x14e8('0x52')]['id'];}return db[_0x14e8('0x37')]['findOne']({'where':{'id':_0x59f340['params']['id']}})[_0x14e8('0x1c')](handleEntityNotFound(_0x5682e8,null))[_0x14e8('0x1c')](function(_0x21ab5b){if(_0x21ab5b){return _0x21ab5b['setTags'](_0x59f340[_0x14e8('0x52')]['ids']||[]);}return null;})[_0x14e8('0x1c')](respondWithResult(_0x5682e8,null))[_0x14e8('0x27')](handleError(_0x5682e8,null));};