Built motion from commit (unavailable).|2.5.2
[motion2.git] / server / api / intFreshdeskConfiguration / intFreshdeskConfiguration.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 _0x7024=['FreshdeskConfiguration,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','FreshdeskConfiguration,\x20%s,\x20%s','message','result','catch','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','reject','save','then','destroy','stack','send','FreshdeskConfiguration','rawAttributes','fieldName','type','key','model','query','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','where','filters','pick','filter','VIRTUAL','name','merge','options','includeAll','include','findAll','rows','show','keys','find','create','body','params','findOne','FreshdeskField','map','getFields','order','getSubjects','getDescriptions','getTags','Tag','setTags','ids','html-pdf','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','path','sox','ejs','lodash','squel','crypto','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/logger','api','../../config/environment','client','Sequelize','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'];(function(_0x14c0d0,_0x55970d){var _0x1829ea=function(_0x16ffe4){while(--_0x16ffe4){_0x14c0d0['push'](_0x14c0d0['shift']());}};_0x1829ea(++_0x55970d);}(_0x7024,0xa1));var _0x4702=function(_0x438fd0,_0x18f073){_0x438fd0=_0x438fd0-0x0;var _0x1ffd57=_0x7024[_0x438fd0];return _0x1ffd57;};'use strict';var pdf=require(_0x4702('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x4702('0x1'));var zipdir=require(_0x4702('0x2'));var jsonpatch=require(_0x4702('0x3'));var rp=require(_0x4702('0x4'));var moment=require(_0x4702('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x4702('0x6'));var util=require('util');var path=require(_0x4702('0x7'));var sox=require(_0x4702('0x8'));var csv=require('to-csv');var ejs=require(_0x4702('0x9'));var fs=require('fs');var _=require(_0x4702('0xa'));var squel=require(_0x4702('0xb'));var crypto=require(_0x4702('0xc'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0x4702('0xd'));var Papa=require(_0x4702('0xe'));var Redis=require(_0x4702('0xf'));var authService=require(_0x4702('0x10'));var qs=require('../../components/parsers/qs');var as=require(_0x4702('0x11'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x4702('0x12'))(_0x4702('0x13'));var utils=require('../../config/utils');var config=require(_0x4702('0x14'));var db=require('../../mysqldb')['db'];var jayson=require('jayson/promise');var client=jayson[_0x4702('0x15')]['http']({'port':0x232a});function checkPasswordPattern(_0x35dfbd,_0x101d99,_0x4b7095){if(_0x4b7095){var _0x11fe31=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x11fe31['test'](_0x101d99)){return _0x35dfbd;}else{throw new db[(_0x4702('0x16'))][(_0x4702('0x17'))](_0x4702('0x18'));}}else{return _0x35dfbd;}}function respondWithRpcPromise(_0x163f37,_0x3b528e,_0x42e388,_0xff60b0){return new BPromise(function(_0x3b679b,_0x3e5f32){var _0x28f50b=_0xff60b0||client;return _0x28f50b[_0x4702('0x19')](_0x163f37,_0x42e388)['then'](function(_0x5a94ea){logger[_0x4702('0x1a')]('FreshdeskConfiguration,\x20%s,\x20%s',_0x3b528e,'request\x20sent');logger['debug'](_0x4702('0x1b'),_0x3b528e,_0x4702('0x1c'),JSON[_0x4702('0x1d')](_0x5a94ea));if(_0x5a94ea[_0x4702('0x1e')]){if(_0x5a94ea[_0x4702('0x1e')]['code']===0x1f4){logger['error'](_0x4702('0x1f'),_0x3b528e,_0x5a94ea[_0x4702('0x1e')][_0x4702('0x20')]);return _0x3e5f32(_0x5a94ea['error'][_0x4702('0x20')]);}logger[_0x4702('0x1e')](_0x4702('0x1f'),_0x3b528e,_0x5a94ea[_0x4702('0x1e')][_0x4702('0x20')]);return _0x3b679b(_0x5a94ea[_0x4702('0x1e')][_0x4702('0x20')]);}else{logger[_0x4702('0x1a')](_0x4702('0x1f'),_0x3b528e,_0x4702('0x1c'));_0x3b679b(_0x5a94ea[_0x4702('0x21')][_0x4702('0x20')]);}})[_0x4702('0x22')](function(_0x36f5d4){logger[_0x4702('0x1e')]('FreshdeskConfiguration,\x20%s,\x20%s',_0x3b528e,_0x36f5d4);_0x3e5f32(_0x36f5d4);});});}function respondWithStatusCode(_0x5401b8,_0x3ddf64){_0x3ddf64=_0x3ddf64||0xcc;return function(_0x59be2d){if(_0x59be2d){return _0x5401b8[_0x4702('0x23')](_0x3ddf64);}return _0x5401b8[_0x4702('0x24')](_0x3ddf64)[_0x4702('0x25')]();};}function respondWithResult(_0xaa8067,_0x14b04e){_0x14b04e=_0x14b04e||0xc8;return function(_0x470ded){if(_0x470ded){return _0xaa8067[_0x4702('0x24')](_0x14b04e)[_0x4702('0x26')](_0x470ded);}};}function respondWithFilteredResult(_0x3262bc,_0x5704b3){return function(_0x1837c9){if(_0x1837c9){var _0x250db1=_0x1837c9[_0x4702('0x27')],_0x38f0ed=_0x5704b3[_0x4702('0x28')],_0x44e08d=_0x5704b3[_0x4702('0x28')]+_0x5704b3[_0x4702('0x29')],_0xb8e9a6;if(_0x44e08d>=_0x250db1){_0x44e08d=_0x250db1;_0xb8e9a6=0xc8;}else{_0xb8e9a6=0xce;}_0x3262bc[_0x4702('0x24')](_0xb8e9a6);return _0x3262bc[_0x4702('0x2a')](_0x4702('0x2b'),_0x38f0ed+'-'+_0x44e08d+'/'+_0x250db1)['json'](_0x1837c9);}return null;};}function patchUpdates(_0x5e6e19){return function(_0x28bdc7){try{jsonpatch[_0x4702('0x2c')](_0x28bdc7,_0x5e6e19,!![]);}catch(_0x2cf80e){return BPromise[_0x4702('0x2d')](_0x2cf80e);}return _0x28bdc7[_0x4702('0x2e')]();};}function saveUpdates(_0x197f56,_0x31b15e){return function(_0x4bd2c9){if(_0x4bd2c9){return _0x4bd2c9['update'](_0x197f56)[_0x4702('0x2f')](function(_0xab92f5){return _0xab92f5;});}return null;};}function removeEntity(_0x37aa4b,_0x25cbe7){return function(_0x4b69f9){if(_0x4b69f9){return _0x4b69f9[_0x4702('0x30')]()[_0x4702('0x2f')](function(){_0x37aa4b[_0x4702('0x24')](0xcc)[_0x4702('0x25')]();});}};}function handleEntityNotFound(_0x4c69aa,_0x225dc1){return function(_0x3fd937){if(!_0x3fd937){_0x4c69aa[_0x4702('0x23')](0x194);}return _0x3fd937;};}function handleError(_0xfd5819,_0x182424){_0x182424=_0x182424||0x1f4;return function(_0x4556aa){logger[_0x4702('0x1e')](_0x4556aa[_0x4702('0x31')]);if(_0x4556aa['name']){delete _0x4556aa['name'];}_0xfd5819[_0x4702('0x24')](_0x182424)[_0x4702('0x32')](_0x4556aa);};}exports['index']=function(_0x269081,_0x3bbc26){var _0x4c1a58={},_0x49138c={},_0x271076={'count':0x0,'rows':[]};var _0x48a678=_['map'](db[_0x4702('0x33')][_0x4702('0x34')],function(_0x53f2ff){return{'name':_0x53f2ff[_0x4702('0x35')],'type':_0x53f2ff[_0x4702('0x36')][_0x4702('0x37')]};});_0x49138c[_0x4702('0x38')]=_['map'](_0x48a678,'name');_0x49138c[_0x4702('0x39')]=_['keys'](_0x269081['query']);_0x49138c['filters']=_[_0x4702('0x3a')](_0x49138c[_0x4702('0x38')],_0x49138c[_0x4702('0x39')]);_0x4c1a58[_0x4702('0x3b')]=_['intersection'](_0x49138c[_0x4702('0x38')],qs[_0x4702('0x3c')](_0x269081[_0x4702('0x39')]['fields']));_0x4c1a58[_0x4702('0x3b')]=_0x4c1a58[_0x4702('0x3b')][_0x4702('0x3d')]?_0x4c1a58[_0x4702('0x3b')]:_0x49138c['model'];if(!_0x269081[_0x4702('0x39')][_0x4702('0x3e')](_0x4702('0x3f'))){_0x4c1a58['limit']=qs[_0x4702('0x29')](_0x269081[_0x4702('0x39')][_0x4702('0x29')]);_0x4c1a58[_0x4702('0x28')]=qs[_0x4702('0x28')](_0x269081[_0x4702('0x39')][_0x4702('0x28')]);}_0x4c1a58['order']=qs[_0x4702('0x40')](_0x269081['query']['sort']);_0x4c1a58[_0x4702('0x41')]=qs[_0x4702('0x42')](_[_0x4702('0x43')](_0x269081['query'],_0x49138c[_0x4702('0x42')]),_0x48a678);if(_0x269081[_0x4702('0x39')][_0x4702('0x44')]){_0x4c1a58[_0x4702('0x41')]=_['merge'](_0x4c1a58[_0x4702('0x41')],{'$or':_['map'](_0x48a678,function(_0x4c3d9e){if(_0x4c3d9e[_0x4702('0x36')]!==_0x4702('0x45')){var _0x3f7d0a={};_0x3f7d0a[_0x4c3d9e[_0x4702('0x46')]]={'$like':'%'+_0x269081[_0x4702('0x39')][_0x4702('0x44')]+'%'};return _0x3f7d0a;}})});}_0x4c1a58=_[_0x4702('0x47')]({},_0x4c1a58,_0x269081[_0x4702('0x48')]);var _0x5b0085={'where':_0x4c1a58[_0x4702('0x41')]};return db['FreshdeskConfiguration'][_0x4702('0x27')](_0x5b0085)[_0x4702('0x2f')](function(_0x12c375){_0x271076[_0x4702('0x27')]=_0x12c375;if(_0x269081[_0x4702('0x39')][_0x4702('0x49')]){_0x4c1a58[_0x4702('0x4a')]=[{'all':!![]}];}return db[_0x4702('0x33')][_0x4702('0x4b')](_0x4c1a58);})[_0x4702('0x2f')](function(_0x12a173){_0x271076[_0x4702('0x4c')]=_0x12a173;return _0x271076;})['then'](respondWithFilteredResult(_0x3bbc26,_0x4c1a58))[_0x4702('0x22')](handleError(_0x3bbc26,null));};exports[_0x4702('0x4d')]=function(_0xee0a60,_0x98224e){var _0x459202={'raw':![],'where':{'id':_0xee0a60['params']['id']}},_0x468671={};_0x468671[_0x4702('0x38')]=_[_0x4702('0x4e')](db['FreshdeskConfiguration']['rawAttributes']);_0x468671[_0x4702('0x39')]=_[_0x4702('0x4e')](_0xee0a60[_0x4702('0x39')]);_0x468671['filters']=_[_0x4702('0x3a')](_0x468671['model'],_0x468671[_0x4702('0x39')]);_0x459202[_0x4702('0x3b')]=_['intersection'](_0x468671[_0x4702('0x38')],qs[_0x4702('0x3c')](_0xee0a60[_0x4702('0x39')][_0x4702('0x3c')]));_0x459202[_0x4702('0x3b')]=_0x459202[_0x4702('0x3b')]['length']?_0x459202['attributes']:_0x468671[_0x4702('0x38')];if(_0xee0a60[_0x4702('0x39')][_0x4702('0x49')]){_0x459202['include']=[{'all':!![]}];}_0x459202=_[_0x4702('0x47')]({},_0x459202,_0xee0a60[_0x4702('0x48')]);return db[_0x4702('0x33')][_0x4702('0x4f')](_0x459202)[_0x4702('0x2f')](handleEntityNotFound(_0x98224e,null))['then'](respondWithResult(_0x98224e,null))['catch'](handleError(_0x98224e,null));};exports['create']=function(_0x52aa83,_0x7f5da7){return db['FreshdeskConfiguration'][_0x4702('0x50')](_0x52aa83[_0x4702('0x51')],{})[_0x4702('0x2f')](respondWithResult(_0x7f5da7,0xc9))[_0x4702('0x22')](handleError(_0x7f5da7,null));};exports['update']=function(_0x4deb71,_0x3f4e87){if(_0x4deb71[_0x4702('0x51')]['id']){delete _0x4deb71[_0x4702('0x51')]['id'];}return db[_0x4702('0x33')][_0x4702('0x4f')]({'where':{'id':_0x4deb71[_0x4702('0x52')]['id']}})['then'](handleEntityNotFound(_0x3f4e87,null))[_0x4702('0x2f')](saveUpdates(_0x4deb71['body'],null))['then'](respondWithResult(_0x3f4e87,null))['catch'](handleError(_0x3f4e87,null));};exports['destroy']=function(_0x1add0c,_0x822703){return db['FreshdeskConfiguration']['find']({'where':{'id':_0x1add0c[_0x4702('0x52')]['id']}})['then'](handleEntityNotFound(_0x822703,null))['then'](removeEntity(_0x822703,null))[_0x4702('0x22')](handleError(_0x822703,null));};exports['getFields']=function(_0x496da2,_0x23f271,_0x46291f){var _0x186841={};var _0x11c5ce={};var _0x51a28c;var _0x3c791d;return db[_0x4702('0x33')][_0x4702('0x53')]({'where':{'id':_0x496da2[_0x4702('0x52')]['id']}})[_0x4702('0x2f')](handleEntityNotFound(_0x23f271,null))[_0x4702('0x2f')](function(_0x186844){if(_0x186844){_0x51a28c=_0x186844;_0x11c5ce[_0x4702('0x38')]=_['keys'](db[_0x4702('0x54')][_0x4702('0x34')]);_0x11c5ce[_0x4702('0x39')]=_[_0x4702('0x4e')](_0x496da2['query']);_0x11c5ce[_0x4702('0x42')]=_[_0x4702('0x3a')](_0x11c5ce[_0x4702('0x38')],_0x11c5ce[_0x4702('0x39')]);_0x186841[_0x4702('0x3b')]=_[_0x4702('0x3a')](_0x11c5ce[_0x4702('0x38')],qs[_0x4702('0x3c')](_0x496da2['query'][_0x4702('0x3c')]));_0x186841[_0x4702('0x3b')]=_0x186841[_0x4702('0x3b')][_0x4702('0x3d')]?_0x186841[_0x4702('0x3b')]:_0x11c5ce[_0x4702('0x38')];_0x186841['order']=qs['sort'](_0x496da2[_0x4702('0x39')][_0x4702('0x40')]);_0x186841[_0x4702('0x41')]=qs[_0x4702('0x42')](_[_0x4702('0x43')](_0x496da2['query'],_0x11c5ce['filters']));if(_0x496da2[_0x4702('0x39')][_0x4702('0x44')]){_0x186841[_0x4702('0x41')]=_['merge'](_0x186841[_0x4702('0x41')],{'$or':_[_0x4702('0x55')](_0x186841[_0x4702('0x3b')],function(_0x466032){var _0x225502={};_0x225502[_0x466032]={'$like':'%'+_0x496da2[_0x4702('0x39')][_0x4702('0x44')]+'%'};return _0x225502;})});}_0x186841=_[_0x4702('0x47')]({},_0x186841,_0x496da2[_0x4702('0x48')]);return _0x51a28c[_0x4702('0x56')](_0x186841);}})['then'](function(_0x3c2496){if(_0x3c2496){_0x3c791d=_0x3c2496[_0x4702('0x3d')];if(!_0x496da2[_0x4702('0x39')][_0x4702('0x3e')](_0x4702('0x3f'))){_0x186841[_0x4702('0x29')]=qs[_0x4702('0x29')](_0x496da2[_0x4702('0x39')]['limit']);_0x186841[_0x4702('0x28')]=qs[_0x4702('0x28')](_0x496da2[_0x4702('0x39')]['offset']);}return _0x51a28c['getFields'](_0x186841);}})['then'](function(_0xf50570){if(_0xf50570){return _0xf50570?{'count':_0x3c791d,'rows':_0xf50570}:null;}})[_0x4702('0x2f')](respondWithResult(_0x23f271,null))[_0x4702('0x22')](handleError(_0x23f271,null));};exports['getSubjects']=function(_0x263ce4,_0x4b6921,_0x99722b){var _0xf29cad={};var _0x5dee86={};var _0x2e3085;var _0x412554;return db[_0x4702('0x33')]['findOne']({'where':{'id':_0x263ce4['params']['id']}})[_0x4702('0x2f')](handleEntityNotFound(_0x4b6921,null))[_0x4702('0x2f')](function(_0x5bb9f9){if(_0x5bb9f9){_0x2e3085=_0x5bb9f9;_0x5dee86[_0x4702('0x38')]=_[_0x4702('0x4e')](db[_0x4702('0x54')][_0x4702('0x34')]);_0x5dee86['query']=_[_0x4702('0x4e')](_0x263ce4[_0x4702('0x39')]);_0x5dee86['filters']=_[_0x4702('0x3a')](_0x5dee86[_0x4702('0x38')],_0x5dee86['query']);_0xf29cad[_0x4702('0x3b')]=_['intersection'](_0x5dee86[_0x4702('0x38')],qs[_0x4702('0x3c')](_0x263ce4[_0x4702('0x39')][_0x4702('0x3c')]));_0xf29cad[_0x4702('0x3b')]=_0xf29cad[_0x4702('0x3b')][_0x4702('0x3d')]?_0xf29cad[_0x4702('0x3b')]:_0x5dee86['model'];_0xf29cad[_0x4702('0x57')]=qs[_0x4702('0x40')](_0x263ce4[_0x4702('0x39')]['sort']);_0xf29cad[_0x4702('0x41')]=qs[_0x4702('0x42')](_[_0x4702('0x43')](_0x263ce4[_0x4702('0x39')],_0x5dee86[_0x4702('0x42')]));if(_0x263ce4[_0x4702('0x39')][_0x4702('0x44')]){_0xf29cad['where']=_[_0x4702('0x47')](_0xf29cad[_0x4702('0x41')],{'$or':_[_0x4702('0x55')](_0xf29cad[_0x4702('0x3b')],function(_0x5eb71b){var _0x7e9408={};_0x7e9408[_0x5eb71b]={'$like':'%'+_0x263ce4[_0x4702('0x39')][_0x4702('0x44')]+'%'};return _0x7e9408;})});}_0xf29cad=_['merge']({},_0xf29cad,_0x263ce4[_0x4702('0x48')]);return _0x2e3085['getSubjects'](_0xf29cad);}})[_0x4702('0x2f')](function(_0x2ecc47){if(_0x2ecc47){_0x412554=_0x2ecc47[_0x4702('0x3d')];if(!_0x263ce4[_0x4702('0x39')]['hasOwnProperty'](_0x4702('0x3f'))){_0xf29cad[_0x4702('0x29')]=qs[_0x4702('0x29')](_0x263ce4[_0x4702('0x39')][_0x4702('0x29')]);_0xf29cad['offset']=qs[_0x4702('0x28')](_0x263ce4[_0x4702('0x39')][_0x4702('0x28')]);}return _0x2e3085[_0x4702('0x58')](_0xf29cad);}})['then'](function(_0x34d689){if(_0x34d689){return _0x34d689?{'count':_0x412554,'rows':_0x34d689}:null;}})['then'](respondWithResult(_0x4b6921,null))[_0x4702('0x22')](handleError(_0x4b6921,null));};exports[_0x4702('0x59')]=function(_0x503340,_0x5a2219,_0x40a1d5){var _0x406a9b={};var _0x3f2df9={};var _0x257239;var _0xcd7467;return db['FreshdeskConfiguration'][_0x4702('0x53')]({'where':{'id':_0x503340[_0x4702('0x52')]['id']}})[_0x4702('0x2f')](handleEntityNotFound(_0x5a2219,null))[_0x4702('0x2f')](function(_0xc47a95){if(_0xc47a95){_0x257239=_0xc47a95;_0x3f2df9['model']=_[_0x4702('0x4e')](db[_0x4702('0x54')][_0x4702('0x34')]);_0x3f2df9[_0x4702('0x39')]=_[_0x4702('0x4e')](_0x503340['query']);_0x3f2df9[_0x4702('0x42')]=_[_0x4702('0x3a')](_0x3f2df9[_0x4702('0x38')],_0x3f2df9[_0x4702('0x39')]);_0x406a9b[_0x4702('0x3b')]=_[_0x4702('0x3a')](_0x3f2df9[_0x4702('0x38')],qs[_0x4702('0x3c')](_0x503340[_0x4702('0x39')]['fields']));_0x406a9b[_0x4702('0x3b')]=_0x406a9b[_0x4702('0x3b')]['length']?_0x406a9b[_0x4702('0x3b')]:_0x3f2df9['model'];_0x406a9b['order']=qs[_0x4702('0x40')](_0x503340['query'][_0x4702('0x40')]);_0x406a9b[_0x4702('0x41')]=qs['filters'](_[_0x4702('0x43')](_0x503340[_0x4702('0x39')],_0x3f2df9[_0x4702('0x42')]));if(_0x503340[_0x4702('0x39')][_0x4702('0x44')]){_0x406a9b[_0x4702('0x41')]=_[_0x4702('0x47')](_0x406a9b[_0x4702('0x41')],{'$or':_[_0x4702('0x55')](_0x406a9b[_0x4702('0x3b')],function(_0x26b68d){var _0x3677c4={};_0x3677c4[_0x26b68d]={'$like':'%'+_0x503340[_0x4702('0x39')][_0x4702('0x44')]+'%'};return _0x3677c4;})});}_0x406a9b=_['merge']({},_0x406a9b,_0x503340['options']);return _0x257239['getDescriptions'](_0x406a9b);}})[_0x4702('0x2f')](function(_0x5c9a5e){if(_0x5c9a5e){_0xcd7467=_0x5c9a5e[_0x4702('0x3d')];if(!_0x503340[_0x4702('0x39')][_0x4702('0x3e')](_0x4702('0x3f'))){_0x406a9b[_0x4702('0x29')]=qs[_0x4702('0x29')](_0x503340[_0x4702('0x39')][_0x4702('0x29')]);_0x406a9b['offset']=qs[_0x4702('0x28')](_0x503340['query'][_0x4702('0x28')]);}return _0x257239[_0x4702('0x59')](_0x406a9b);}})['then'](function(_0x5555f1){if(_0x5555f1){return _0x5555f1?{'count':_0xcd7467,'rows':_0x5555f1}:null;}})['then'](respondWithResult(_0x5a2219,null))[_0x4702('0x22')](handleError(_0x5a2219,null));};exports[_0x4702('0x5a')]=function(_0x245ea4,_0x1496a8,_0x3651dc){var _0x3c358d={};var _0x339746={};var _0xa8507;var _0x22339f;return db['FreshdeskConfiguration'][_0x4702('0x53')]({'where':{'id':_0x245ea4[_0x4702('0x52')]['id']}})[_0x4702('0x2f')](handleEntityNotFound(_0x1496a8,null))[_0x4702('0x2f')](function(_0x931711){if(_0x931711){_0xa8507=_0x931711;_0x339746[_0x4702('0x38')]=_[_0x4702('0x4e')](db[_0x4702('0x5b')][_0x4702('0x34')]);_0x339746[_0x4702('0x39')]=_[_0x4702('0x4e')](_0x245ea4[_0x4702('0x39')]);_0x339746['filters']=_[_0x4702('0x3a')](_0x339746[_0x4702('0x38')],_0x339746[_0x4702('0x39')]);_0x3c358d[_0x4702('0x3b')]=_[_0x4702('0x3a')](_0x339746[_0x4702('0x38')],qs[_0x4702('0x3c')](_0x245ea4['query']['fields']));_0x3c358d[_0x4702('0x3b')]=_0x3c358d['attributes'][_0x4702('0x3d')]?_0x3c358d['attributes']:_0x339746[_0x4702('0x38')];_0x3c358d[_0x4702('0x57')]=qs[_0x4702('0x40')](_0x245ea4[_0x4702('0x39')]['sort']);_0x3c358d[_0x4702('0x41')]=qs['filters'](_['pick'](_0x245ea4['query'],_0x339746[_0x4702('0x42')]));if(_0x245ea4['query'][_0x4702('0x44')]){_0x3c358d[_0x4702('0x41')]=_[_0x4702('0x47')](_0x3c358d[_0x4702('0x41')],{'$or':_['map'](_0x3c358d[_0x4702('0x3b')],function(_0x303f84){var _0x2f984c={};_0x2f984c[_0x303f84]={'$like':'%'+_0x245ea4['query']['filter']+'%'};return _0x2f984c;})});}_0x3c358d=_[_0x4702('0x47')]({},_0x3c358d,_0x245ea4['options']);return _0xa8507['getTags'](_0x3c358d);}})['then'](function(_0xb42210){if(_0xb42210){_0x22339f=_0xb42210[_0x4702('0x3d')];if(!_0x245ea4[_0x4702('0x39')][_0x4702('0x3e')]('nolimit')){_0x3c358d[_0x4702('0x29')]=qs[_0x4702('0x29')](_0x245ea4['query']['limit']);_0x3c358d[_0x4702('0x28')]=qs[_0x4702('0x28')](_0x245ea4[_0x4702('0x39')][_0x4702('0x28')]);}return _0xa8507[_0x4702('0x5a')](_0x3c358d);}})['then'](function(_0x4fc831){if(_0x4fc831){return _0x4fc831?{'count':_0x22339f,'rows':_0x4fc831}:null;}})[_0x4702('0x2f')](respondWithResult(_0x1496a8,null))[_0x4702('0x22')](handleError(_0x1496a8,null));};exports[_0x4702('0x5c')]=function(_0x378340,_0x207076,_0x3392cf){if(_0x378340[_0x4702('0x51')]['id']){delete _0x378340[_0x4702('0x51')]['id'];}return db['FreshdeskConfiguration']['findOne']({'where':{'id':_0x378340[_0x4702('0x52')]['id']}})[_0x4702('0x2f')](handleEntityNotFound(_0x207076,null))['then'](function(_0x1e0aa6){if(_0x1e0aa6){return _0x1e0aa6[_0x4702('0x5c')](_0x378340[_0x4702('0x51')][_0x4702('0x5d')]||[]);}return null;})[_0x4702('0x2f')](respondWithResult(_0x207076,null))['catch'](handleError(_0x207076,null));};