904f586df890c33fb930f368fa3b08dfefe35d5e
[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 _0x0109=['ioredis','../../components/auth/service','../../components/parsers/qs','../../config/utils','../../config/environment','../../mysqldb','jayson/promise','client','http','test','Sequelize','ValidationError','info','ZendeskConfiguration,\x20%s,\x20%s','request\x20sent','debug','ZendeskConfiguration,\x20%s,\x20%s,\x20%s','stringify','code','error','message','result','catch','end','status','count','offset','limit','set','json','apply','reject','save','then','destroy','sendStatus','stack','name','send','index','ZendeskConfiguration','fieldName','type','key','model','map','query','filters','intersection','attributes','fields','hasOwnProperty','nolimit','sort','where','pick','filter','merge','VIRTUAL','includeAll','findAll','rows','show','rawAttributes','keys','length','include','options','find','create','update','body','params','findOne','ZendeskField','getFields','getSubjects','order','getDescriptions','getTags','Tag','setTags','ids','html-pdf','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','papaparse'];(function(_0x20a584,_0xe384a5){var _0x4b41a8=function(_0x2127c6){while(--_0x2127c6){_0x20a584['push'](_0x20a584['shift']());}};_0x4b41a8(++_0xe384a5);}(_0x0109,0x1e3));var _0x9010=function(_0xbca1b1,_0x33f0ce){_0xbca1b1=_0xbca1b1-0x0;var _0x4e1686=_0x0109[_0xbca1b1];return _0x4e1686;};'use strict';var pdf=require(_0x9010('0x0'));var emlformat=require(_0x9010('0x1'));var rimraf=require(_0x9010('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0x9010('0x3'));var rp=require(_0x9010('0x4'));var moment=require(_0x9010('0x5'));var BPromise=require(_0x9010('0x6'));var Mustache=require(_0x9010('0x7'));var util=require(_0x9010('0x8'));var path=require('path');var sox=require('sox');var csv=require(_0x9010('0x9'));var ejs=require(_0x9010('0xa'));var fs=require('fs');var _=require(_0x9010('0xb'));var squel=require(_0x9010('0xc'));var crypto=require(_0x9010('0xd'));var jsforce=require(_0x9010('0xe'));var deskjs=require(_0x9010('0xf'));var toCsv=require(_0x9010('0x9'));var querystring=require('querystring');var Papa=require(_0x9010('0x10'));var Redis=require(_0x9010('0x11'));var authService=require(_0x9010('0x12'));var qs=require(_0x9010('0x13'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')('api');var utils=require(_0x9010('0x14'));var config=require(_0x9010('0x15'));var db=require(_0x9010('0x16'))['db'];var jayson=require(_0x9010('0x17'));var client=jayson[_0x9010('0x18')][_0x9010('0x19')]({'port':0x232a});function checkPasswordPattern(_0xdba540,_0x3011ad,_0x4d206c){if(_0x4d206c){var _0x529cdf=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x529cdf[_0x9010('0x1a')](_0x3011ad)){return _0xdba540;}else{throw new db[(_0x9010('0x1b'))][(_0x9010('0x1c'))]('The\x20password\x20must\x20be\x20at\x20least\x208\x20characters\x20long\x20and\x20have\x201\x20lowercase\x20character,\x201\x20uppercase\x20character,\x201\x20number\x20and\x201\x20special\x20character\x20~!@#$%^&-_=+[{]}.');}}else{return _0xdba540;}}function respondWithRpcPromise(_0x1a0ea8,_0x12d3ad,_0x195e5f,_0x493325){return new BPromise(function(_0x3ccce5,_0x55f30f){var _0x44c966=_0x493325||client;return _0x44c966['request'](_0x1a0ea8,_0x195e5f)['then'](function(_0x4af92f){logger[_0x9010('0x1d')](_0x9010('0x1e'),_0x12d3ad,_0x9010('0x1f'));logger[_0x9010('0x20')](_0x9010('0x21'),_0x12d3ad,_0x9010('0x1f'),JSON[_0x9010('0x22')](_0x4af92f));if(_0x4af92f['error']){if(_0x4af92f['error'][_0x9010('0x23')]===0x1f4){logger[_0x9010('0x24')]('ZendeskConfiguration,\x20%s,\x20%s',_0x12d3ad,_0x4af92f[_0x9010('0x24')][_0x9010('0x25')]);return _0x55f30f(_0x4af92f[_0x9010('0x24')][_0x9010('0x25')]);}logger[_0x9010('0x24')](_0x9010('0x1e'),_0x12d3ad,_0x4af92f[_0x9010('0x24')]['message']);return _0x3ccce5(_0x4af92f['error'][_0x9010('0x25')]);}else{logger['info']('ZendeskConfiguration,\x20%s,\x20%s',_0x12d3ad,_0x9010('0x1f'));_0x3ccce5(_0x4af92f[_0x9010('0x26')][_0x9010('0x25')]);}})[_0x9010('0x27')](function(_0x24fadc){logger[_0x9010('0x24')](_0x9010('0x1e'),_0x12d3ad,_0x24fadc);_0x55f30f(_0x24fadc);});});}function respondWithStatusCode(_0x53ec8e,_0x5e9c79){_0x5e9c79=_0x5e9c79||0xcc;return function(_0x2408ba){if(_0x2408ba){return _0x53ec8e['sendStatus'](_0x5e9c79);}return _0x53ec8e['status'](_0x5e9c79)[_0x9010('0x28')]();};}function respondWithResult(_0x4fcff0,_0x49add2){_0x49add2=_0x49add2||0xc8;return function(_0x2d232f){if(_0x2d232f){return _0x4fcff0[_0x9010('0x29')](_0x49add2)['json'](_0x2d232f);}};}function respondWithFilteredResult(_0x575b56,_0x2b1fc1){return function(_0x32a826){if(_0x32a826){var _0x2f566b=_0x32a826[_0x9010('0x2a')],_0x4becac=_0x2b1fc1['offset'],_0x9b38e0=_0x2b1fc1[_0x9010('0x2b')]+_0x2b1fc1[_0x9010('0x2c')],_0x5b518c;if(_0x9b38e0>=_0x2f566b){_0x9b38e0=_0x2f566b;_0x5b518c=0xc8;}else{_0x5b518c=0xce;}_0x575b56[_0x9010('0x29')](_0x5b518c);return _0x575b56[_0x9010('0x2d')]('Content-Range',_0x4becac+'-'+_0x9b38e0+'/'+_0x2f566b)[_0x9010('0x2e')](_0x32a826);}return null;};}function patchUpdates(_0x348781){return function(_0x578629){try{jsonpatch[_0x9010('0x2f')](_0x578629,_0x348781,!![]);}catch(_0xec7f31){return BPromise[_0x9010('0x30')](_0xec7f31);}return _0x578629[_0x9010('0x31')]();};}function saveUpdates(_0x5a7691,_0x3f9e70){return function(_0xca2fc7){if(_0xca2fc7){return _0xca2fc7['update'](_0x5a7691)[_0x9010('0x32')](function(_0x4f1433){return _0x4f1433;});}return null;};}function removeEntity(_0x5401dd,_0x48c43b){return function(_0x5b49de){if(_0x5b49de){return _0x5b49de[_0x9010('0x33')]()[_0x9010('0x32')](function(){_0x5401dd['status'](0xcc)[_0x9010('0x28')]();});}};}function handleEntityNotFound(_0xc1c97f,_0x12630c){return function(_0x4cea27){if(!_0x4cea27){_0xc1c97f[_0x9010('0x34')](0x194);}return _0x4cea27;};}function handleError(_0x2ed7a6,_0x49174a){_0x49174a=_0x49174a||0x1f4;return function(_0x38193f){logger['error'](_0x38193f[_0x9010('0x35')]);if(_0x38193f[_0x9010('0x36')]){delete _0x38193f[_0x9010('0x36')];}_0x2ed7a6[_0x9010('0x29')](_0x49174a)[_0x9010('0x37')](_0x38193f);};}exports[_0x9010('0x38')]=function(_0x16c248,_0x16a8bb){var _0xc08ac={},_0x15bac6={},_0x1372d8={'count':0x0,'rows':[]};var _0x52a60b=_['map'](db[_0x9010('0x39')]['rawAttributes'],function(_0x3ee6d8){return{'name':_0x3ee6d8[_0x9010('0x3a')],'type':_0x3ee6d8[_0x9010('0x3b')][_0x9010('0x3c')]};});_0x15bac6[_0x9010('0x3d')]=_[_0x9010('0x3e')](_0x52a60b,_0x9010('0x36'));_0x15bac6[_0x9010('0x3f')]=_['keys'](_0x16c248['query']);_0x15bac6[_0x9010('0x40')]=_[_0x9010('0x41')](_0x15bac6[_0x9010('0x3d')],_0x15bac6['query']);_0xc08ac[_0x9010('0x42')]=_[_0x9010('0x41')](_0x15bac6['model'],qs['fields'](_0x16c248[_0x9010('0x3f')][_0x9010('0x43')]));_0xc08ac[_0x9010('0x42')]=_0xc08ac[_0x9010('0x42')]['length']?_0xc08ac['attributes']:_0x15bac6[_0x9010('0x3d')];if(!_0x16c248['query'][_0x9010('0x44')](_0x9010('0x45'))){_0xc08ac[_0x9010('0x2c')]=qs[_0x9010('0x2c')](_0x16c248['query'][_0x9010('0x2c')]);_0xc08ac['offset']=qs[_0x9010('0x2b')](_0x16c248[_0x9010('0x3f')][_0x9010('0x2b')]);}_0xc08ac['order']=qs['sort'](_0x16c248[_0x9010('0x3f')][_0x9010('0x46')]);_0xc08ac[_0x9010('0x47')]=qs[_0x9010('0x40')](_[_0x9010('0x48')](_0x16c248[_0x9010('0x3f')],_0x15bac6[_0x9010('0x40')]),_0x52a60b);if(_0x16c248[_0x9010('0x3f')][_0x9010('0x49')]){_0xc08ac[_0x9010('0x47')]=_[_0x9010('0x4a')](_0xc08ac[_0x9010('0x47')],{'$or':_[_0x9010('0x3e')](_0x52a60b,function(_0x4cf67e){if(_0x4cf67e[_0x9010('0x3b')]!==_0x9010('0x4b')){var _0x18875f={};_0x18875f[_0x4cf67e[_0x9010('0x36')]]={'$like':'%'+_0x16c248[_0x9010('0x3f')][_0x9010('0x49')]+'%'};return _0x18875f;}})});}_0xc08ac=_[_0x9010('0x4a')]({},_0xc08ac,_0x16c248['options']);var _0x2f9b0b={'where':_0xc08ac['where']};return db[_0x9010('0x39')][_0x9010('0x2a')](_0x2f9b0b)[_0x9010('0x32')](function(_0x1634ea){_0x1372d8[_0x9010('0x2a')]=_0x1634ea;if(_0x16c248[_0x9010('0x3f')][_0x9010('0x4c')]){_0xc08ac['include']=[{'all':!![]}];}return db[_0x9010('0x39')][_0x9010('0x4d')](_0xc08ac);})[_0x9010('0x32')](function(_0x27086f){_0x1372d8[_0x9010('0x4e')]=_0x27086f;return _0x1372d8;})['then'](respondWithFilteredResult(_0x16a8bb,_0xc08ac))[_0x9010('0x27')](handleError(_0x16a8bb,null));};exports[_0x9010('0x4f')]=function(_0x2613d4,_0x48ca70){var _0x492977={'raw':![],'where':{'id':_0x2613d4['params']['id']}},_0xedd2c8={};_0xedd2c8[_0x9010('0x3d')]=_['keys'](db['ZendeskConfiguration'][_0x9010('0x50')]);_0xedd2c8['query']=_[_0x9010('0x51')](_0x2613d4['query']);_0xedd2c8['filters']=_[_0x9010('0x41')](_0xedd2c8['model'],_0xedd2c8[_0x9010('0x3f')]);_0x492977[_0x9010('0x42')]=_['intersection'](_0xedd2c8['model'],qs['fields'](_0x2613d4['query'][_0x9010('0x43')]));_0x492977[_0x9010('0x42')]=_0x492977[_0x9010('0x42')][_0x9010('0x52')]?_0x492977[_0x9010('0x42')]:_0xedd2c8[_0x9010('0x3d')];if(_0x2613d4['query'][_0x9010('0x4c')]){_0x492977[_0x9010('0x53')]=[{'all':!![]}];}_0x492977=_[_0x9010('0x4a')]({},_0x492977,_0x2613d4[_0x9010('0x54')]);return db[_0x9010('0x39')][_0x9010('0x55')](_0x492977)[_0x9010('0x32')](handleEntityNotFound(_0x48ca70,null))[_0x9010('0x32')](respondWithResult(_0x48ca70,null))[_0x9010('0x27')](handleError(_0x48ca70,null));};exports[_0x9010('0x56')]=function(_0x2e0c4f,_0x42904c){return db['ZendeskConfiguration'][_0x9010('0x56')](_0x2e0c4f['body'],{})['then'](respondWithResult(_0x42904c,0xc9))[_0x9010('0x27')](handleError(_0x42904c,null));};exports[_0x9010('0x57')]=function(_0xc7adde,_0x12cffd){if(_0xc7adde[_0x9010('0x58')]['id']){delete _0xc7adde[_0x9010('0x58')]['id'];}return db[_0x9010('0x39')][_0x9010('0x55')]({'where':{'id':_0xc7adde[_0x9010('0x59')]['id']}})[_0x9010('0x32')](handleEntityNotFound(_0x12cffd,null))[_0x9010('0x32')](saveUpdates(_0xc7adde[_0x9010('0x58')],null))['then'](respondWithResult(_0x12cffd,null))[_0x9010('0x27')](handleError(_0x12cffd,null));};exports['destroy']=function(_0x455ef0,_0x2dcace){return db[_0x9010('0x39')]['find']({'where':{'id':_0x455ef0['params']['id']}})['then'](handleEntityNotFound(_0x2dcace,null))[_0x9010('0x32')](removeEntity(_0x2dcace,null))['catch'](handleError(_0x2dcace,null));};exports['getFields']=function(_0x37a894,_0x1a0d58,_0x304de7){var _0x1e1575={};var _0x24934b={};var _0x10d977;var _0x58a0f3;return db[_0x9010('0x39')][_0x9010('0x5a')]({'where':{'id':_0x37a894[_0x9010('0x59')]['id']}})[_0x9010('0x32')](handleEntityNotFound(_0x1a0d58,null))[_0x9010('0x32')](function(_0x274740){if(_0x274740){_0x10d977=_0x274740;_0x24934b['model']=_[_0x9010('0x51')](db[_0x9010('0x5b')][_0x9010('0x50')]);_0x24934b['query']=_[_0x9010('0x51')](_0x37a894['query']);_0x24934b[_0x9010('0x40')]=_[_0x9010('0x41')](_0x24934b['model'],_0x24934b[_0x9010('0x3f')]);_0x1e1575['attributes']=_[_0x9010('0x41')](_0x24934b[_0x9010('0x3d')],qs[_0x9010('0x43')](_0x37a894[_0x9010('0x3f')][_0x9010('0x43')]));_0x1e1575[_0x9010('0x42')]=_0x1e1575[_0x9010('0x42')][_0x9010('0x52')]?_0x1e1575['attributes']:_0x24934b[_0x9010('0x3d')];_0x1e1575['order']=qs['sort'](_0x37a894['query'][_0x9010('0x46')]);_0x1e1575[_0x9010('0x47')]=qs[_0x9010('0x40')](_[_0x9010('0x48')](_0x37a894[_0x9010('0x3f')],_0x24934b[_0x9010('0x40')]));if(_0x37a894['query'][_0x9010('0x49')]){_0x1e1575[_0x9010('0x47')]=_[_0x9010('0x4a')](_0x1e1575[_0x9010('0x47')],{'$or':_[_0x9010('0x3e')](_0x1e1575[_0x9010('0x42')],function(_0x4e9ab7){var _0xe42433={};_0xe42433[_0x4e9ab7]={'$like':'%'+_0x37a894[_0x9010('0x3f')][_0x9010('0x49')]+'%'};return _0xe42433;})});}_0x1e1575=_[_0x9010('0x4a')]({},_0x1e1575,_0x37a894[_0x9010('0x54')]);return _0x10d977[_0x9010('0x5c')](_0x1e1575);}})['then'](function(_0x352ead){if(_0x352ead){_0x58a0f3=_0x352ead[_0x9010('0x52')];if(!_0x37a894[_0x9010('0x3f')][_0x9010('0x44')]('nolimit')){_0x1e1575[_0x9010('0x2c')]=qs[_0x9010('0x2c')](_0x37a894[_0x9010('0x3f')][_0x9010('0x2c')]);_0x1e1575[_0x9010('0x2b')]=qs[_0x9010('0x2b')](_0x37a894[_0x9010('0x3f')][_0x9010('0x2b')]);}return _0x10d977[_0x9010('0x5c')](_0x1e1575);}})['then'](function(_0x2c3e4b){if(_0x2c3e4b){return _0x2c3e4b?{'count':_0x58a0f3,'rows':_0x2c3e4b}:null;}})['then'](respondWithResult(_0x1a0d58,null))[_0x9010('0x27')](handleError(_0x1a0d58,null));};exports[_0x9010('0x5d')]=function(_0x1742fb,_0x65fe85,_0x2fc97d){var _0x1c2d56={};var _0x4a1675={};var _0x2a5211;var _0xe137d2;return db['ZendeskConfiguration'][_0x9010('0x5a')]({'where':{'id':_0x1742fb['params']['id']}})['then'](handleEntityNotFound(_0x65fe85,null))['then'](function(_0x44da86){if(_0x44da86){_0x2a5211=_0x44da86;_0x4a1675[_0x9010('0x3d')]=_[_0x9010('0x51')](db['ZendeskField'][_0x9010('0x50')]);_0x4a1675[_0x9010('0x3f')]=_['keys'](_0x1742fb[_0x9010('0x3f')]);_0x4a1675['filters']=_[_0x9010('0x41')](_0x4a1675[_0x9010('0x3d')],_0x4a1675[_0x9010('0x3f')]);_0x1c2d56[_0x9010('0x42')]=_[_0x9010('0x41')](_0x4a1675['model'],qs[_0x9010('0x43')](_0x1742fb[_0x9010('0x3f')][_0x9010('0x43')]));_0x1c2d56[_0x9010('0x42')]=_0x1c2d56[_0x9010('0x42')]['length']?_0x1c2d56['attributes']:_0x4a1675[_0x9010('0x3d')];_0x1c2d56[_0x9010('0x5e')]=qs[_0x9010('0x46')](_0x1742fb[_0x9010('0x3f')]['sort']);_0x1c2d56['where']=qs[_0x9010('0x40')](_[_0x9010('0x48')](_0x1742fb[_0x9010('0x3f')],_0x4a1675[_0x9010('0x40')]));if(_0x1742fb[_0x9010('0x3f')]['filter']){_0x1c2d56['where']=_[_0x9010('0x4a')](_0x1c2d56[_0x9010('0x47')],{'$or':_[_0x9010('0x3e')](_0x1c2d56[_0x9010('0x42')],function(_0x4e4896){var _0x2a9365={};_0x2a9365[_0x4e4896]={'$like':'%'+_0x1742fb[_0x9010('0x3f')][_0x9010('0x49')]+'%'};return _0x2a9365;})});}_0x1c2d56=_[_0x9010('0x4a')]({},_0x1c2d56,_0x1742fb[_0x9010('0x54')]);return _0x2a5211[_0x9010('0x5d')](_0x1c2d56);}})[_0x9010('0x32')](function(_0x25afbf){if(_0x25afbf){_0xe137d2=_0x25afbf[_0x9010('0x52')];if(!_0x1742fb['query'][_0x9010('0x44')]('nolimit')){_0x1c2d56[_0x9010('0x2c')]=qs[_0x9010('0x2c')](_0x1742fb[_0x9010('0x3f')]['limit']);_0x1c2d56[_0x9010('0x2b')]=qs['offset'](_0x1742fb[_0x9010('0x3f')]['offset']);}return _0x2a5211[_0x9010('0x5d')](_0x1c2d56);}})[_0x9010('0x32')](function(_0x149c58){if(_0x149c58){return _0x149c58?{'count':_0xe137d2,'rows':_0x149c58}:null;}})[_0x9010('0x32')](respondWithResult(_0x65fe85,null))[_0x9010('0x27')](handleError(_0x65fe85,null));};exports['getDescriptions']=function(_0x2c7ee1,_0x4502ca,_0x2fe84e){var _0x4c8daf={};var _0x50dc40={};var _0x10c362;var _0x746879;return db[_0x9010('0x39')][_0x9010('0x5a')]({'where':{'id':_0x2c7ee1['params']['id']}})[_0x9010('0x32')](handleEntityNotFound(_0x4502ca,null))[_0x9010('0x32')](function(_0x176887){if(_0x176887){_0x10c362=_0x176887;_0x50dc40[_0x9010('0x3d')]=_[_0x9010('0x51')](db[_0x9010('0x5b')][_0x9010('0x50')]);_0x50dc40[_0x9010('0x3f')]=_[_0x9010('0x51')](_0x2c7ee1[_0x9010('0x3f')]);_0x50dc40['filters']=_[_0x9010('0x41')](_0x50dc40['model'],_0x50dc40[_0x9010('0x3f')]);_0x4c8daf[_0x9010('0x42')]=_['intersection'](_0x50dc40['model'],qs[_0x9010('0x43')](_0x2c7ee1[_0x9010('0x3f')][_0x9010('0x43')]));_0x4c8daf[_0x9010('0x42')]=_0x4c8daf[_0x9010('0x42')][_0x9010('0x52')]?_0x4c8daf['attributes']:_0x50dc40[_0x9010('0x3d')];_0x4c8daf[_0x9010('0x5e')]=qs[_0x9010('0x46')](_0x2c7ee1[_0x9010('0x3f')][_0x9010('0x46')]);_0x4c8daf[_0x9010('0x47')]=qs[_0x9010('0x40')](_[_0x9010('0x48')](_0x2c7ee1[_0x9010('0x3f')],_0x50dc40['filters']));if(_0x2c7ee1['query'][_0x9010('0x49')]){_0x4c8daf[_0x9010('0x47')]=_[_0x9010('0x4a')](_0x4c8daf[_0x9010('0x47')],{'$or':_[_0x9010('0x3e')](_0x4c8daf[_0x9010('0x42')],function(_0x52ce8d){var _0x2778e4={};_0x2778e4[_0x52ce8d]={'$like':'%'+_0x2c7ee1[_0x9010('0x3f')][_0x9010('0x49')]+'%'};return _0x2778e4;})});}_0x4c8daf=_[_0x9010('0x4a')]({},_0x4c8daf,_0x2c7ee1[_0x9010('0x54')]);return _0x10c362[_0x9010('0x5f')](_0x4c8daf);}})[_0x9010('0x32')](function(_0x46ece3){if(_0x46ece3){_0x746879=_0x46ece3[_0x9010('0x52')];if(!_0x2c7ee1[_0x9010('0x3f')][_0x9010('0x44')](_0x9010('0x45'))){_0x4c8daf['limit']=qs[_0x9010('0x2c')](_0x2c7ee1[_0x9010('0x3f')][_0x9010('0x2c')]);_0x4c8daf[_0x9010('0x2b')]=qs[_0x9010('0x2b')](_0x2c7ee1['query'][_0x9010('0x2b')]);}return _0x10c362[_0x9010('0x5f')](_0x4c8daf);}})[_0x9010('0x32')](function(_0x42015f){if(_0x42015f){return _0x42015f?{'count':_0x746879,'rows':_0x42015f}:null;}})[_0x9010('0x32')](respondWithResult(_0x4502ca,null))[_0x9010('0x27')](handleError(_0x4502ca,null));};exports[_0x9010('0x60')]=function(_0x38e765,_0x10b7a5,_0x21fd51){var _0x59bd76={};var _0x400812={};var _0x32f4a9;var _0x3cb4aa;return db[_0x9010('0x39')][_0x9010('0x5a')]({'where':{'id':_0x38e765['params']['id']}})['then'](handleEntityNotFound(_0x10b7a5,null))[_0x9010('0x32')](function(_0x5c1f7f){if(_0x5c1f7f){_0x32f4a9=_0x5c1f7f;_0x400812[_0x9010('0x3d')]=_[_0x9010('0x51')](db[_0x9010('0x61')][_0x9010('0x50')]);_0x400812[_0x9010('0x3f')]=_['keys'](_0x38e765[_0x9010('0x3f')]);_0x400812['filters']=_[_0x9010('0x41')](_0x400812[_0x9010('0x3d')],_0x400812[_0x9010('0x3f')]);_0x59bd76[_0x9010('0x42')]=_['intersection'](_0x400812[_0x9010('0x3d')],qs[_0x9010('0x43')](_0x38e765[_0x9010('0x3f')][_0x9010('0x43')]));_0x59bd76[_0x9010('0x42')]=_0x59bd76[_0x9010('0x42')][_0x9010('0x52')]?_0x59bd76[_0x9010('0x42')]:_0x400812['model'];_0x59bd76[_0x9010('0x5e')]=qs[_0x9010('0x46')](_0x38e765[_0x9010('0x3f')]['sort']);_0x59bd76[_0x9010('0x47')]=qs['filters'](_[_0x9010('0x48')](_0x38e765[_0x9010('0x3f')],_0x400812[_0x9010('0x40')]));if(_0x38e765[_0x9010('0x3f')][_0x9010('0x49')]){_0x59bd76[_0x9010('0x47')]=_[_0x9010('0x4a')](_0x59bd76[_0x9010('0x47')],{'$or':_[_0x9010('0x3e')](_0x59bd76[_0x9010('0x42')],function(_0x5387f6){var _0x7c0e42={};_0x7c0e42[_0x5387f6]={'$like':'%'+_0x38e765[_0x9010('0x3f')][_0x9010('0x49')]+'%'};return _0x7c0e42;})});}_0x59bd76=_[_0x9010('0x4a')]({},_0x59bd76,_0x38e765['options']);return _0x32f4a9[_0x9010('0x60')](_0x59bd76);}})['then'](function(_0x59f677){if(_0x59f677){_0x3cb4aa=_0x59f677[_0x9010('0x52')];if(!_0x38e765[_0x9010('0x3f')]['hasOwnProperty']('nolimit')){_0x59bd76['limit']=qs[_0x9010('0x2c')](_0x38e765[_0x9010('0x3f')][_0x9010('0x2c')]);_0x59bd76['offset']=qs['offset'](_0x38e765[_0x9010('0x3f')]['offset']);}return _0x32f4a9[_0x9010('0x60')](_0x59bd76);}})['then'](function(_0x4548ad){if(_0x4548ad){return _0x4548ad?{'count':_0x3cb4aa,'rows':_0x4548ad}:null;}})[_0x9010('0x32')](respondWithResult(_0x10b7a5,null))[_0x9010('0x27')](handleError(_0x10b7a5,null));};exports[_0x9010('0x62')]=function(_0x13d62b,_0x191d1c,_0x5b312d){if(_0x13d62b[_0x9010('0x58')]['id']){delete _0x13d62b['body']['id'];}return db['ZendeskConfiguration'][_0x9010('0x5a')]({'where':{'id':_0x13d62b[_0x9010('0x59')]['id']}})['then'](handleEntityNotFound(_0x191d1c,null))[_0x9010('0x32')](function(_0x25236c){if(_0x25236c){return _0x25236c[_0x9010('0x62')](_0x13d62b[_0x9010('0x58')][_0x9010('0x63')]||[]);}return null;})[_0x9010('0x32')](respondWithResult(_0x191d1c,null))[_0x9010('0x27')](handleError(_0x191d1c,null));};