Built motion from commit (unavailable).|2.4.18
[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 _0xab60=['test','ValidationError','The\x20password\x20must\x20be\x20at\x20least\x208\x20characters\x20long\x20and\x20have\x201\x20lowercase\x20character,\x201\x20uppercase\x20character,\x201\x20number\x20and\x201\x20special\x20character\x20~!@#$%^&-_=+[{]}.','request','info','DeskConfiguration,\x20%s,\x20%s','request\x20sent','debug','DeskConfiguration,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','sendStatus','status','end','json','count','offset','limit','set','apply','reject','save','then','destroy','stack','name','send','index','map','DeskConfiguration','fieldName','type','key','model','query','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','pick','where','merge','VIRTUAL','filter','options','includeAll','findAll','rows','params','keys','rawAttributes','include','find','create','body','update','getFields','findOne','DeskField','getSubjects','getTags','setTags','ids','eml-format','rimraf','zip-dir','bluebird','mustache','util','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','jayson/promise','http'];(function(_0x282ccc,_0x5d66a1){var _0x27c2dd=function(_0x58431a){while(--_0x58431a){_0x282ccc['push'](_0x282ccc['shift']());}};_0x27c2dd(++_0x5d66a1);}(_0xab60,0x1d0));var _0x0ab6=function(_0x4584ed,_0x30292b){_0x4584ed=_0x4584ed-0x0;var _0x3d0859=_0xab60[_0x4584ed];return _0x3d0859;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x0ab6('0x0'));var rimraf=require(_0x0ab6('0x1'));var zipdir=require(_0x0ab6('0x2'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0x0ab6('0x3'));var Mustache=require(_0x0ab6('0x4'));var util=require(_0x0ab6('0x5'));var path=require('path');var sox=require(_0x0ab6('0x6'));var csv=require(_0x0ab6('0x7'));var ejs=require(_0x0ab6('0x8'));var fs=require('fs');var _=require(_0x0ab6('0x9'));var squel=require(_0x0ab6('0xa'));var crypto=require(_0x0ab6('0xb'));var jsforce=require(_0x0ab6('0xc'));var deskjs=require(_0x0ab6('0xd'));var toCsv=require(_0x0ab6('0x7'));var querystring=require('querystring');var Papa=require(_0x0ab6('0xe'));var Redis=require(_0x0ab6('0xf'));var authService=require(_0x0ab6('0x10'));var qs=require(_0x0ab6('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x0ab6('0x12'));var logger=require(_0x0ab6('0x13'))(_0x0ab6('0x14'));var utils=require(_0x0ab6('0x15'));var config=require(_0x0ab6('0x16'));var db=require(_0x0ab6('0x17'))['db'];var jayson=require(_0x0ab6('0x18'));var client=jayson['client'][_0x0ab6('0x19')]({'port':0x232a});function checkPasswordPattern(_0x50c41c,_0x2ab4ef,_0x2ed4e4){if(_0x2ed4e4){var _0x506c18=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x506c18[_0x0ab6('0x1a')](_0x2ab4ef)){return _0x50c41c;}else{throw new db['Sequelize'][(_0x0ab6('0x1b'))](_0x0ab6('0x1c'));}}else{return _0x50c41c;}}function respondWithRpcPromise(_0x4a63b9,_0x5dc513,_0x3b1d7a,_0x889204){return new BPromise(function(_0x5559e7,_0x20e16a){var _0x1b6964=_0x889204||client;return _0x1b6964[_0x0ab6('0x1d')](_0x4a63b9,_0x3b1d7a)['then'](function(_0x3ffd08){logger[_0x0ab6('0x1e')](_0x0ab6('0x1f'),_0x5dc513,_0x0ab6('0x20'));logger[_0x0ab6('0x21')](_0x0ab6('0x22'),_0x5dc513,_0x0ab6('0x20'),JSON[_0x0ab6('0x23')](_0x3ffd08));if(_0x3ffd08['error']){if(_0x3ffd08[_0x0ab6('0x24')][_0x0ab6('0x25')]===0x1f4){logger['error'](_0x0ab6('0x1f'),_0x5dc513,_0x3ffd08[_0x0ab6('0x24')]['message']);return _0x20e16a(_0x3ffd08[_0x0ab6('0x24')][_0x0ab6('0x26')]);}logger[_0x0ab6('0x24')](_0x0ab6('0x1f'),_0x5dc513,_0x3ffd08[_0x0ab6('0x24')]['message']);return _0x5559e7(_0x3ffd08[_0x0ab6('0x24')][_0x0ab6('0x26')]);}else{logger[_0x0ab6('0x1e')](_0x0ab6('0x1f'),_0x5dc513,_0x0ab6('0x20'));_0x5559e7(_0x3ffd08[_0x0ab6('0x27')]['message']);}})[_0x0ab6('0x28')](function(_0x2a1d4c){logger[_0x0ab6('0x24')](_0x0ab6('0x1f'),_0x5dc513,_0x2a1d4c);_0x20e16a(_0x2a1d4c);});});}function respondWithStatusCode(_0x436cbf,_0x1250ba){_0x1250ba=_0x1250ba||0xcc;return function(_0x407c10){if(_0x407c10){return _0x436cbf[_0x0ab6('0x29')](_0x1250ba);}return _0x436cbf[_0x0ab6('0x2a')](_0x1250ba)[_0x0ab6('0x2b')]();};}function respondWithResult(_0x305ab5,_0x3becd0){_0x3becd0=_0x3becd0||0xc8;return function(_0x3190fe){if(_0x3190fe){return _0x305ab5[_0x0ab6('0x2a')](_0x3becd0)[_0x0ab6('0x2c')](_0x3190fe);}};}function respondWithFilteredResult(_0x1d9878,_0x251bca){return function(_0x4c8a4b){if(_0x4c8a4b){var _0x5924c2=_0x4c8a4b[_0x0ab6('0x2d')],_0x1c21d4=_0x251bca[_0x0ab6('0x2e')],_0x543fc7=_0x251bca[_0x0ab6('0x2e')]+_0x251bca[_0x0ab6('0x2f')],_0x2ef54e;if(_0x543fc7>=_0x5924c2){_0x543fc7=_0x5924c2;_0x2ef54e=0xc8;}else{_0x2ef54e=0xce;}_0x1d9878[_0x0ab6('0x2a')](_0x2ef54e);return _0x1d9878[_0x0ab6('0x30')]('Content-Range',_0x1c21d4+'-'+_0x543fc7+'/'+_0x5924c2)[_0x0ab6('0x2c')](_0x4c8a4b);}return null;};}function patchUpdates(_0xd577b0){return function(_0x7a6b9d){try{jsonpatch[_0x0ab6('0x31')](_0x7a6b9d,_0xd577b0,!![]);}catch(_0x55067f){return BPromise[_0x0ab6('0x32')](_0x55067f);}return _0x7a6b9d[_0x0ab6('0x33')]();};}function saveUpdates(_0x47eb03,_0x26ce20){return function(_0x168261){if(_0x168261){return _0x168261['update'](_0x47eb03)[_0x0ab6('0x34')](function(_0x9cb52c){return _0x9cb52c;});}return null;};}function removeEntity(_0x190276,_0x19ac0d){return function(_0x47ace7){if(_0x47ace7){return _0x47ace7[_0x0ab6('0x35')]()[_0x0ab6('0x34')](function(){_0x190276[_0x0ab6('0x2a')](0xcc)['end']();});}};}function handleEntityNotFound(_0x44b36d,_0x4b7948){return function(_0xf82759){if(!_0xf82759){_0x44b36d['sendStatus'](0x194);}return _0xf82759;};}function handleError(_0x25a8a9,_0x3e158c){_0x3e158c=_0x3e158c||0x1f4;return function(_0x2b7de4){logger['error'](_0x2b7de4[_0x0ab6('0x36')]);if(_0x2b7de4[_0x0ab6('0x37')]){delete _0x2b7de4['name'];}_0x25a8a9[_0x0ab6('0x2a')](_0x3e158c)[_0x0ab6('0x38')](_0x2b7de4);};}exports[_0x0ab6('0x39')]=function(_0x30fa7c,_0x320f07){var _0x6ae9c7={},_0x529ca0={},_0x4c6fe5={'count':0x0,'rows':[]};var _0x2ca84f=_[_0x0ab6('0x3a')](db[_0x0ab6('0x3b')]['rawAttributes'],function(_0x1894ec){return{'name':_0x1894ec[_0x0ab6('0x3c')],'type':_0x1894ec[_0x0ab6('0x3d')][_0x0ab6('0x3e')]};});_0x529ca0[_0x0ab6('0x3f')]=_[_0x0ab6('0x3a')](_0x2ca84f,_0x0ab6('0x37'));_0x529ca0[_0x0ab6('0x40')]=_['keys'](_0x30fa7c[_0x0ab6('0x40')]);_0x529ca0[_0x0ab6('0x41')]=_[_0x0ab6('0x42')](_0x529ca0[_0x0ab6('0x3f')],_0x529ca0[_0x0ab6('0x40')]);_0x6ae9c7['attributes']=_[_0x0ab6('0x42')](_0x529ca0[_0x0ab6('0x3f')],qs['fields'](_0x30fa7c['query'][_0x0ab6('0x43')]));_0x6ae9c7['attributes']=_0x6ae9c7[_0x0ab6('0x44')][_0x0ab6('0x45')]?_0x6ae9c7[_0x0ab6('0x44')]:_0x529ca0[_0x0ab6('0x3f')];if(!_0x30fa7c['query'][_0x0ab6('0x46')](_0x0ab6('0x47'))){_0x6ae9c7[_0x0ab6('0x2f')]=qs[_0x0ab6('0x2f')](_0x30fa7c[_0x0ab6('0x40')][_0x0ab6('0x2f')]);_0x6ae9c7[_0x0ab6('0x2e')]=qs[_0x0ab6('0x2e')](_0x30fa7c[_0x0ab6('0x40')]['offset']);}_0x6ae9c7[_0x0ab6('0x48')]=qs[_0x0ab6('0x49')](_0x30fa7c[_0x0ab6('0x40')]['sort']);_0x6ae9c7['where']=qs[_0x0ab6('0x41')](_[_0x0ab6('0x4a')](_0x30fa7c['query'],_0x529ca0['filters']));if(_0x30fa7c[_0x0ab6('0x40')]['filter']){_0x6ae9c7[_0x0ab6('0x4b')]=_[_0x0ab6('0x4c')](_0x6ae9c7[_0x0ab6('0x4b')],{'$or':_[_0x0ab6('0x3a')](_0x2ca84f,function(_0x2cbfcb){if(_0x2cbfcb[_0x0ab6('0x3d')]!==_0x0ab6('0x4d')){var _0x26e8f9={};_0x26e8f9[_0x2cbfcb[_0x0ab6('0x37')]]={'$like':'%'+_0x30fa7c['query'][_0x0ab6('0x4e')]+'%'};return _0x26e8f9;}})});}_0x6ae9c7=_[_0x0ab6('0x4c')]({},_0x6ae9c7,_0x30fa7c[_0x0ab6('0x4f')]);var _0x2af4b1={'where':_0x6ae9c7[_0x0ab6('0x4b')]};return db[_0x0ab6('0x3b')][_0x0ab6('0x2d')](_0x2af4b1)[_0x0ab6('0x34')](function(_0x503f27){_0x4c6fe5[_0x0ab6('0x2d')]=_0x503f27;if(_0x30fa7c['query'][_0x0ab6('0x50')]){_0x6ae9c7['include']=[{'all':!![]}];}return db[_0x0ab6('0x3b')][_0x0ab6('0x51')](_0x6ae9c7);})[_0x0ab6('0x34')](function(_0x152c7e){_0x4c6fe5[_0x0ab6('0x52')]=_0x152c7e;return _0x4c6fe5;})[_0x0ab6('0x34')](respondWithFilteredResult(_0x320f07,_0x6ae9c7))[_0x0ab6('0x28')](handleError(_0x320f07,null));};exports['show']=function(_0x50722e,_0x5107eb){var _0x37ca48={'raw':![],'where':{'id':_0x50722e[_0x0ab6('0x53')]['id']}},_0x43e0b7={};_0x43e0b7[_0x0ab6('0x3f')]=_[_0x0ab6('0x54')](db['DeskConfiguration'][_0x0ab6('0x55')]);_0x43e0b7[_0x0ab6('0x40')]=_['keys'](_0x50722e['query']);_0x43e0b7[_0x0ab6('0x41')]=_[_0x0ab6('0x42')](_0x43e0b7[_0x0ab6('0x3f')],_0x43e0b7[_0x0ab6('0x40')]);_0x37ca48[_0x0ab6('0x44')]=_[_0x0ab6('0x42')](_0x43e0b7['model'],qs['fields'](_0x50722e[_0x0ab6('0x40')][_0x0ab6('0x43')]));_0x37ca48[_0x0ab6('0x44')]=_0x37ca48[_0x0ab6('0x44')]['length']?_0x37ca48[_0x0ab6('0x44')]:_0x43e0b7[_0x0ab6('0x3f')];if(_0x50722e[_0x0ab6('0x40')][_0x0ab6('0x50')]){_0x37ca48[_0x0ab6('0x56')]=[{'all':!![]}];}_0x37ca48=_[_0x0ab6('0x4c')]({},_0x37ca48,_0x50722e[_0x0ab6('0x4f')]);return db['DeskConfiguration'][_0x0ab6('0x57')](_0x37ca48)[_0x0ab6('0x34')](handleEntityNotFound(_0x5107eb,null))['then'](respondWithResult(_0x5107eb,null))[_0x0ab6('0x28')](handleError(_0x5107eb,null));};exports[_0x0ab6('0x58')]=function(_0x12d046,_0x12e5b5){return db[_0x0ab6('0x3b')]['create'](_0x12d046[_0x0ab6('0x59')],{})[_0x0ab6('0x34')](respondWithResult(_0x12e5b5,0xc9))[_0x0ab6('0x28')](handleError(_0x12e5b5,null));};exports[_0x0ab6('0x5a')]=function(_0x3b376c,_0x3b0e1a){if(_0x3b376c[_0x0ab6('0x59')]['id']){delete _0x3b376c[_0x0ab6('0x59')]['id'];}return db[_0x0ab6('0x3b')][_0x0ab6('0x57')]({'where':{'id':_0x3b376c[_0x0ab6('0x53')]['id']}})[_0x0ab6('0x34')](handleEntityNotFound(_0x3b0e1a,null))[_0x0ab6('0x34')](saveUpdates(_0x3b376c[_0x0ab6('0x59')],null))[_0x0ab6('0x34')](respondWithResult(_0x3b0e1a,null))[_0x0ab6('0x28')](handleError(_0x3b0e1a,null));};exports[_0x0ab6('0x35')]=function(_0xa5c87c,_0xc4adfe){return db[_0x0ab6('0x3b')]['find']({'where':{'id':_0xa5c87c['params']['id']}})['then'](handleEntityNotFound(_0xc4adfe,null))[_0x0ab6('0x34')](removeEntity(_0xc4adfe,null))[_0x0ab6('0x28')](handleError(_0xc4adfe,null));};exports[_0x0ab6('0x5b')]=function(_0x2234f3,_0x5a4551,_0x4fc785){var _0x2df64d={};var _0x16f5bf={};var _0xbb80ce;var _0x18865d;return db['DeskConfiguration'][_0x0ab6('0x5c')]({'where':{'id':_0x2234f3[_0x0ab6('0x53')]['id']}})['then'](handleEntityNotFound(_0x5a4551,null))[_0x0ab6('0x34')](function(_0x3f9dac){if(_0x3f9dac){_0xbb80ce=_0x3f9dac;_0x16f5bf[_0x0ab6('0x3f')]=_['keys'](db[_0x0ab6('0x5d')]['rawAttributes']);_0x16f5bf[_0x0ab6('0x40')]=_[_0x0ab6('0x54')](_0x2234f3[_0x0ab6('0x40')]);_0x16f5bf[_0x0ab6('0x41')]=_[_0x0ab6('0x42')](_0x16f5bf[_0x0ab6('0x3f')],_0x16f5bf[_0x0ab6('0x40')]);_0x2df64d[_0x0ab6('0x44')]=_[_0x0ab6('0x42')](_0x16f5bf['model'],qs[_0x0ab6('0x43')](_0x2234f3[_0x0ab6('0x40')][_0x0ab6('0x43')]));_0x2df64d[_0x0ab6('0x44')]=_0x2df64d[_0x0ab6('0x44')][_0x0ab6('0x45')]?_0x2df64d[_0x0ab6('0x44')]:_0x16f5bf[_0x0ab6('0x3f')];_0x2df64d[_0x0ab6('0x48')]=qs[_0x0ab6('0x49')](_0x2234f3[_0x0ab6('0x40')][_0x0ab6('0x49')]);_0x2df64d[_0x0ab6('0x4b')]=qs[_0x0ab6('0x41')](_[_0x0ab6('0x4a')](_0x2234f3['query'],_0x16f5bf[_0x0ab6('0x41')]));if(_0x2234f3['query'][_0x0ab6('0x4e')]){_0x2df64d[_0x0ab6('0x4b')]=_[_0x0ab6('0x4c')](_0x2df64d['where'],{'$or':_[_0x0ab6('0x3a')](_0x2df64d['attributes'],function(_0x102ece){var _0x383c06={};_0x383c06[_0x102ece]={'$like':'%'+_0x2234f3[_0x0ab6('0x40')][_0x0ab6('0x4e')]+'%'};return _0x383c06;})});}_0x2df64d=_[_0x0ab6('0x4c')]({},_0x2df64d,_0x2234f3['options']);return _0xbb80ce[_0x0ab6('0x5b')](_0x2df64d);}})['then'](function(_0x4b2543){if(_0x4b2543){_0x18865d=_0x4b2543[_0x0ab6('0x45')];if(!_0x2234f3[_0x0ab6('0x40')][_0x0ab6('0x46')](_0x0ab6('0x47'))){_0x2df64d[_0x0ab6('0x2f')]=qs[_0x0ab6('0x2f')](_0x2234f3['query']['limit']);_0x2df64d[_0x0ab6('0x2e')]=qs['offset'](_0x2234f3['query'][_0x0ab6('0x2e')]);}return _0xbb80ce['getFields'](_0x2df64d);}})[_0x0ab6('0x34')](function(_0x242388){if(_0x242388){return _0x242388?{'count':_0x18865d,'rows':_0x242388}:null;}})[_0x0ab6('0x34')](respondWithResult(_0x5a4551,null))[_0x0ab6('0x28')](handleError(_0x5a4551,null));};exports['getSubjects']=function(_0x3d88bf,_0x2f51b4,_0xb959e9){var _0x3d732d={};var _0x3e2212={};var _0xc031c1;var _0x234fa0;return db['DeskConfiguration'][_0x0ab6('0x5c')]({'where':{'id':_0x3d88bf[_0x0ab6('0x53')]['id']}})[_0x0ab6('0x34')](handleEntityNotFound(_0x2f51b4,null))['then'](function(_0x5da6c8){if(_0x5da6c8){_0xc031c1=_0x5da6c8;_0x3e2212[_0x0ab6('0x3f')]=_['keys'](db[_0x0ab6('0x5d')][_0x0ab6('0x55')]);_0x3e2212[_0x0ab6('0x40')]=_[_0x0ab6('0x54')](_0x3d88bf[_0x0ab6('0x40')]);_0x3e2212[_0x0ab6('0x41')]=_[_0x0ab6('0x42')](_0x3e2212[_0x0ab6('0x3f')],_0x3e2212[_0x0ab6('0x40')]);_0x3d732d[_0x0ab6('0x44')]=_[_0x0ab6('0x42')](_0x3e2212[_0x0ab6('0x3f')],qs[_0x0ab6('0x43')](_0x3d88bf['query'][_0x0ab6('0x43')]));_0x3d732d[_0x0ab6('0x44')]=_0x3d732d[_0x0ab6('0x44')][_0x0ab6('0x45')]?_0x3d732d[_0x0ab6('0x44')]:_0x3e2212[_0x0ab6('0x3f')];_0x3d732d[_0x0ab6('0x48')]=qs['sort'](_0x3d88bf[_0x0ab6('0x40')][_0x0ab6('0x49')]);_0x3d732d['where']=qs['filters'](_[_0x0ab6('0x4a')](_0x3d88bf[_0x0ab6('0x40')],_0x3e2212[_0x0ab6('0x41')]));if(_0x3d88bf[_0x0ab6('0x40')]['filter']){_0x3d732d['where']=_[_0x0ab6('0x4c')](_0x3d732d[_0x0ab6('0x4b')],{'$or':_[_0x0ab6('0x3a')](_0x3d732d[_0x0ab6('0x44')],function(_0x2d8730){var _0xd2d62a={};_0xd2d62a[_0x2d8730]={'$like':'%'+_0x3d88bf[_0x0ab6('0x40')][_0x0ab6('0x4e')]+'%'};return _0xd2d62a;})});}_0x3d732d=_['merge']({},_0x3d732d,_0x3d88bf['options']);return _0xc031c1[_0x0ab6('0x5e')](_0x3d732d);}})['then'](function(_0x3f5a7f){if(_0x3f5a7f){_0x234fa0=_0x3f5a7f[_0x0ab6('0x45')];if(!_0x3d88bf['query'][_0x0ab6('0x46')](_0x0ab6('0x47'))){_0x3d732d['limit']=qs[_0x0ab6('0x2f')](_0x3d88bf[_0x0ab6('0x40')]['limit']);_0x3d732d[_0x0ab6('0x2e')]=qs[_0x0ab6('0x2e')](_0x3d88bf[_0x0ab6('0x40')][_0x0ab6('0x2e')]);}return _0xc031c1['getSubjects'](_0x3d732d);}})[_0x0ab6('0x34')](function(_0x96fc29){if(_0x96fc29){return _0x96fc29?{'count':_0x234fa0,'rows':_0x96fc29}:null;}})[_0x0ab6('0x34')](respondWithResult(_0x2f51b4,null))[_0x0ab6('0x28')](handleError(_0x2f51b4,null));};exports['getDescriptions']=function(_0xaf8a7e,_0x4a0323,_0x3a0c29){var _0x59a52c={};var _0x189d43={};var _0x1da80f;var _0xc4c40f;return db[_0x0ab6('0x3b')][_0x0ab6('0x5c')]({'where':{'id':_0xaf8a7e['params']['id']}})[_0x0ab6('0x34')](handleEntityNotFound(_0x4a0323,null))[_0x0ab6('0x34')](function(_0x45a3da){if(_0x45a3da){_0x1da80f=_0x45a3da;_0x189d43[_0x0ab6('0x3f')]=_[_0x0ab6('0x54')](db[_0x0ab6('0x5d')][_0x0ab6('0x55')]);_0x189d43[_0x0ab6('0x40')]=_['keys'](_0xaf8a7e[_0x0ab6('0x40')]);_0x189d43[_0x0ab6('0x41')]=_[_0x0ab6('0x42')](_0x189d43[_0x0ab6('0x3f')],_0x189d43[_0x0ab6('0x40')]);_0x59a52c[_0x0ab6('0x44')]=_[_0x0ab6('0x42')](_0x189d43[_0x0ab6('0x3f')],qs['fields'](_0xaf8a7e[_0x0ab6('0x40')][_0x0ab6('0x43')]));_0x59a52c[_0x0ab6('0x44')]=_0x59a52c[_0x0ab6('0x44')][_0x0ab6('0x45')]?_0x59a52c[_0x0ab6('0x44')]:_0x189d43[_0x0ab6('0x3f')];_0x59a52c[_0x0ab6('0x48')]=qs[_0x0ab6('0x49')](_0xaf8a7e[_0x0ab6('0x40')]['sort']);_0x59a52c[_0x0ab6('0x4b')]=qs[_0x0ab6('0x41')](_[_0x0ab6('0x4a')](_0xaf8a7e[_0x0ab6('0x40')],_0x189d43['filters']));if(_0xaf8a7e[_0x0ab6('0x40')][_0x0ab6('0x4e')]){_0x59a52c[_0x0ab6('0x4b')]=_[_0x0ab6('0x4c')](_0x59a52c[_0x0ab6('0x4b')],{'$or':_['map'](_0x59a52c[_0x0ab6('0x44')],function(_0x293ea3){var _0x4b7475={};_0x4b7475[_0x293ea3]={'$like':'%'+_0xaf8a7e[_0x0ab6('0x40')][_0x0ab6('0x4e')]+'%'};return _0x4b7475;})});}_0x59a52c=_[_0x0ab6('0x4c')]({},_0x59a52c,_0xaf8a7e[_0x0ab6('0x4f')]);return _0x1da80f['getDescriptions'](_0x59a52c);}})['then'](function(_0x250595){if(_0x250595){_0xc4c40f=_0x250595[_0x0ab6('0x45')];if(!_0xaf8a7e[_0x0ab6('0x40')][_0x0ab6('0x46')](_0x0ab6('0x47'))){_0x59a52c['limit']=qs[_0x0ab6('0x2f')](_0xaf8a7e[_0x0ab6('0x40')]['limit']);_0x59a52c[_0x0ab6('0x2e')]=qs[_0x0ab6('0x2e')](_0xaf8a7e['query']['offset']);}return _0x1da80f['getDescriptions'](_0x59a52c);}})[_0x0ab6('0x34')](function(_0xba48ae){if(_0xba48ae){return _0xba48ae?{'count':_0xc4c40f,'rows':_0xba48ae}:null;}})[_0x0ab6('0x34')](respondWithResult(_0x4a0323,null))['catch'](handleError(_0x4a0323,null));};exports['getTags']=function(_0x5aec80,_0x45fd37,_0x2de3b2){var _0x5459c6={};var _0x10f989={};var _0xc615e5;var _0x32f897;return db[_0x0ab6('0x3b')][_0x0ab6('0x5c')]({'where':{'id':_0x5aec80[_0x0ab6('0x53')]['id']}})[_0x0ab6('0x34')](handleEntityNotFound(_0x45fd37,null))[_0x0ab6('0x34')](function(_0x2d1ae1){if(_0x2d1ae1){_0xc615e5=_0x2d1ae1;_0x10f989[_0x0ab6('0x3f')]=_[_0x0ab6('0x54')](db['Tag'][_0x0ab6('0x55')]);_0x10f989['query']=_[_0x0ab6('0x54')](_0x5aec80[_0x0ab6('0x40')]);_0x10f989[_0x0ab6('0x41')]=_[_0x0ab6('0x42')](_0x10f989[_0x0ab6('0x3f')],_0x10f989[_0x0ab6('0x40')]);_0x5459c6[_0x0ab6('0x44')]=_[_0x0ab6('0x42')](_0x10f989['model'],qs[_0x0ab6('0x43')](_0x5aec80['query']['fields']));_0x5459c6[_0x0ab6('0x44')]=_0x5459c6['attributes']['length']?_0x5459c6[_0x0ab6('0x44')]:_0x10f989[_0x0ab6('0x3f')];_0x5459c6[_0x0ab6('0x48')]=qs['sort'](_0x5aec80[_0x0ab6('0x40')][_0x0ab6('0x49')]);_0x5459c6[_0x0ab6('0x4b')]=qs[_0x0ab6('0x41')](_['pick'](_0x5aec80[_0x0ab6('0x40')],_0x10f989[_0x0ab6('0x41')]));if(_0x5aec80['query']['filter']){_0x5459c6[_0x0ab6('0x4b')]=_[_0x0ab6('0x4c')](_0x5459c6[_0x0ab6('0x4b')],{'$or':_[_0x0ab6('0x3a')](_0x5459c6[_0x0ab6('0x44')],function(_0x20d50b){var _0x55ebca={};_0x55ebca[_0x20d50b]={'$like':'%'+_0x5aec80[_0x0ab6('0x40')][_0x0ab6('0x4e')]+'%'};return _0x55ebca;})});}_0x5459c6=_[_0x0ab6('0x4c')]({},_0x5459c6,_0x5aec80[_0x0ab6('0x4f')]);return _0xc615e5[_0x0ab6('0x5f')](_0x5459c6);}})[_0x0ab6('0x34')](function(_0x43e3ee){if(_0x43e3ee){_0x32f897=_0x43e3ee[_0x0ab6('0x45')];if(!_0x5aec80['query'][_0x0ab6('0x46')]('nolimit')){_0x5459c6[_0x0ab6('0x2f')]=qs[_0x0ab6('0x2f')](_0x5aec80[_0x0ab6('0x40')][_0x0ab6('0x2f')]);_0x5459c6['offset']=qs[_0x0ab6('0x2e')](_0x5aec80[_0x0ab6('0x40')]['offset']);}return _0xc615e5[_0x0ab6('0x5f')](_0x5459c6);}})[_0x0ab6('0x34')](function(_0x5718d0){if(_0x5718d0){return _0x5718d0?{'count':_0x32f897,'rows':_0x5718d0}:null;}})['then'](respondWithResult(_0x45fd37,null))[_0x0ab6('0x28')](handleError(_0x45fd37,null));};exports[_0x0ab6('0x60')]=function(_0x37b191,_0xcd445c,_0x43b527){if(_0x37b191[_0x0ab6('0x59')]['id']){delete _0x37b191[_0x0ab6('0x59')]['id'];}return db[_0x0ab6('0x3b')][_0x0ab6('0x5c')]({'where':{'id':_0x37b191['params']['id']}})[_0x0ab6('0x34')](handleEntityNotFound(_0xcd445c,null))['then'](function(_0x280ba4){if(_0x280ba4){return _0x280ba4[_0x0ab6('0x60')](_0x37b191['body'][_0x0ab6('0x61')]||[]);}return null;})['then'](respondWithResult(_0xcd445c,null))['catch'](handleError(_0xcd445c,null));};