Built motion from commit (unavailable).|2.5.10
[motion2.git] / server / api / intDeskAccount / intDeskAccount.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 _0xa54a=['Subjects','getSubjects','channel','Descriptions','getDescriptions','DeskField','getFields','priority','remoteUri','username','password','consumerKey','consumerSecret','token','tokenSecret','slice','substring','lastIndexOf','GET','application/json','authType','basic','Basic\x20%s','format','toString','base64','concat','entries','active','label','Wrong\x20credentials','statusCode','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','squel','crypto','querystring','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../mysqldb','../../components/integrations/configuration','jayson/promise','client','http','request','then','info','DeskAccount,\x20%s,\x20%s','request\x20sent','debug','DeskAccount,\x20%s,\x20%s,\x20%s','stringify','error','message','result','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','reject','save','destroy','stack','name','send','index','DeskAccount','rawAttributes','fieldName','type','key','model','map','query','keys','intersection','fields','attributes','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','VIRTUAL','merge','options','includeAll','include','findAll','rows','catch','find','create','body','update','params','findOne','DeskConfiguration','getConfigurations','length','addConfiguration','AccountId'];(function(_0x49d41c,_0x2bdc35){var _0xb64c5f=function(_0x28f535){while(--_0x28f535){_0x49d41c['push'](_0x49d41c['shift']());}};_0xb64c5f(++_0x2bdc35);}(_0xa54a,0x11c));var _0xaa54=function(_0x101edf,_0x1967f9){_0x101edf=_0x101edf-0x0;var _0x4ad8da=_0xa54a[_0x101edf];return _0x4ad8da;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0xaa54('0x0'));var rimraf=require(_0xaa54('0x1'));var zipdir=require(_0xaa54('0x2'));var jsonpatch=require(_0xaa54('0x3'));var rp=require(_0xaa54('0x4'));var moment=require(_0xaa54('0x5'));var BPromise=require(_0xaa54('0x6'));var Mustache=require(_0xaa54('0x7'));var util=require(_0xaa54('0x8'));var path=require(_0xaa54('0x9'));var sox=require(_0xaa54('0xa'));var csv=require(_0xaa54('0xb'));var ejs=require(_0xaa54('0xc'));var fs=require('fs');var _=require('lodash');var squel=require(_0xaa54('0xd'));var crypto=require(_0xaa54('0xe'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0xaa54('0xb'));var querystring=require(_0xaa54('0xf'));var Papa=require('papaparse');var Redis=require(_0xaa54('0x10'));var authService=require(_0xaa54('0x11'));var qs=require('../../components/parsers/qs');var as=require(_0xaa54('0x12'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xaa54('0x13'))(_0xaa54('0x14'));var utils=require(_0xaa54('0x15'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0xaa54('0x16'))['db'];var integrations=require(_0xaa54('0x17'));var jayson=require(_0xaa54('0x18'));var client=jayson[_0xaa54('0x19')][_0xaa54('0x1a')]({'port':0x232a});function respondWithRpcPromise(_0x3cfbb9,_0x1cf617,_0x29796f,_0xca05d4){return new BPromise(function(_0x4d5993,_0x446d5a){var _0x16e5bf=_0xca05d4||client;return _0x16e5bf[_0xaa54('0x1b')](_0x3cfbb9,_0x29796f)[_0xaa54('0x1c')](function(_0x15ee88){logger[_0xaa54('0x1d')](_0xaa54('0x1e'),_0x1cf617,_0xaa54('0x1f'));logger[_0xaa54('0x20')](_0xaa54('0x21'),_0x1cf617,_0xaa54('0x1f'),JSON[_0xaa54('0x22')](_0x15ee88));if(_0x15ee88['error']){if(_0x15ee88[_0xaa54('0x23')]['code']===0x1f4){logger[_0xaa54('0x23')](_0xaa54('0x1e'),_0x1cf617,_0x15ee88[_0xaa54('0x23')][_0xaa54('0x24')]);return _0x446d5a(_0x15ee88[_0xaa54('0x23')]['message']);}logger[_0xaa54('0x23')](_0xaa54('0x1e'),_0x1cf617,_0x15ee88[_0xaa54('0x23')][_0xaa54('0x24')]);return _0x4d5993(_0x15ee88['error']['message']);}else{logger[_0xaa54('0x1d')](_0xaa54('0x1e'),_0x1cf617,_0xaa54('0x1f'));_0x4d5993(_0x15ee88[_0xaa54('0x25')][_0xaa54('0x24')]);}})['catch'](function(_0x350ff3){logger['error'](_0xaa54('0x1e'),_0x1cf617,_0x350ff3);_0x446d5a(_0x350ff3);});});}function respondWithStatusCode(_0x55635a,_0x315988){_0x315988=_0x315988||0xcc;return function(_0x308fda){if(_0x308fda){return _0x55635a[_0xaa54('0x26')](_0x315988);}return _0x55635a[_0xaa54('0x27')](_0x315988)[_0xaa54('0x28')]();};}function respondWithResult(_0x22cce6,_0x2b97a0){_0x2b97a0=_0x2b97a0||0xc8;return function(_0x985b8a){if(_0x985b8a){return _0x22cce6['status'](_0x2b97a0)[_0xaa54('0x29')](_0x985b8a);}};}function respondWithFilteredResult(_0x34f0f7,_0x25389e){return function(_0x3a7323){if(_0x3a7323){var _0x5e9eb9=_0x3a7323[_0xaa54('0x2a')],_0x516053=_0x25389e[_0xaa54('0x2b')],_0x2d7cfc=_0x25389e[_0xaa54('0x2b')]+_0x25389e[_0xaa54('0x2c')],_0x4a1caf;if(_0x2d7cfc>=_0x5e9eb9){_0x2d7cfc=_0x5e9eb9;_0x4a1caf=0xc8;}else{_0x4a1caf=0xce;}_0x34f0f7[_0xaa54('0x27')](_0x4a1caf);return _0x34f0f7[_0xaa54('0x2d')](_0xaa54('0x2e'),_0x516053+'-'+_0x2d7cfc+'/'+_0x5e9eb9)[_0xaa54('0x29')](_0x3a7323);}return null;};}function patchUpdates(_0x219cfb){return function(_0x35b6e1){try{jsonpatch[_0xaa54('0x2f')](_0x35b6e1,_0x219cfb,!![]);}catch(_0x1ca402){return BPromise[_0xaa54('0x30')](_0x1ca402);}return _0x35b6e1[_0xaa54('0x31')]();};}function saveUpdates(_0x352418,_0x529d7f){return function(_0x522b5f){if(_0x522b5f){return _0x522b5f['update'](_0x352418)[_0xaa54('0x1c')](function(_0x171cdb){return _0x171cdb;});}return null;};}function removeEntity(_0x123985,_0x427de9){return function(_0x1dd79c){if(_0x1dd79c){return _0x1dd79c[_0xaa54('0x32')]()['then'](function(){_0x123985[_0xaa54('0x27')](0xcc)[_0xaa54('0x28')]();});}};}function handleEntityNotFound(_0x8e19ac,_0x115cb1){return function(_0x409dba){if(!_0x409dba){_0x8e19ac['sendStatus'](0x194);}return _0x409dba;};}function handleError(_0xa5129d,_0xd085b){_0xd085b=_0xd085b||0x1f4;return function(_0x20175a){logger[_0xaa54('0x23')](_0x20175a[_0xaa54('0x33')]);if(_0x20175a[_0xaa54('0x34')]){delete _0x20175a[_0xaa54('0x34')];}_0xa5129d[_0xaa54('0x27')](_0xd085b)[_0xaa54('0x35')](_0x20175a);};}exports[_0xaa54('0x36')]=function(_0x4190ad,_0x5dd9ad){var _0x4181ab={},_0x212e33={},_0x23c61b={'count':0x0,'rows':[]};var _0x1f6b43=_['map'](db[_0xaa54('0x37')][_0xaa54('0x38')],function(_0x4a2f5c){return{'name':_0x4a2f5c[_0xaa54('0x39')],'type':_0x4a2f5c[_0xaa54('0x3a')][_0xaa54('0x3b')]};});_0x212e33[_0xaa54('0x3c')]=_[_0xaa54('0x3d')](_0x1f6b43,_0xaa54('0x34'));_0x212e33[_0xaa54('0x3e')]=_[_0xaa54('0x3f')](_0x4190ad['query']);_0x212e33['filters']=_[_0xaa54('0x40')](_0x212e33['model'],_0x212e33[_0xaa54('0x3e')]);_0x4181ab['attributes']=_[_0xaa54('0x40')](_0x212e33['model'],qs[_0xaa54('0x41')](_0x4190ad[_0xaa54('0x3e')][_0xaa54('0x41')]));_0x4181ab[_0xaa54('0x42')]=_0x4181ab[_0xaa54('0x42')]['length']?_0x4181ab[_0xaa54('0x42')]:_0x212e33[_0xaa54('0x3c')];if(!_0x4190ad['query'][_0xaa54('0x43')](_0xaa54('0x44'))){_0x4181ab[_0xaa54('0x2c')]=qs[_0xaa54('0x2c')](_0x4190ad['query'][_0xaa54('0x2c')]);_0x4181ab[_0xaa54('0x2b')]=qs[_0xaa54('0x2b')](_0x4190ad['query'][_0xaa54('0x2b')]);}_0x4181ab[_0xaa54('0x45')]=qs[_0xaa54('0x46')](_0x4190ad['query']['sort']);_0x4181ab[_0xaa54('0x47')]=qs[_0xaa54('0x48')](_[_0xaa54('0x49')](_0x4190ad['query'],_0x212e33[_0xaa54('0x48')]),_0x1f6b43);if(_0x4190ad['query'][_0xaa54('0x4a')]){_0x4181ab['where']=_['merge'](_0x4181ab['where'],{'$or':_[_0xaa54('0x3d')](_0x1f6b43,function(_0x2fd3b7){if(_0x2fd3b7['type']!==_0xaa54('0x4b')){var _0x166e65={};_0x166e65[_0x2fd3b7[_0xaa54('0x34')]]={'$like':'%'+_0x4190ad['query'][_0xaa54('0x4a')]+'%'};return _0x166e65;}})});}_0x4181ab=_[_0xaa54('0x4c')]({},_0x4181ab,_0x4190ad[_0xaa54('0x4d')]);var _0x4b477f={'where':_0x4181ab[_0xaa54('0x47')]};return db[_0xaa54('0x37')][_0xaa54('0x2a')](_0x4b477f)[_0xaa54('0x1c')](function(_0x42f392){_0x23c61b[_0xaa54('0x2a')]=_0x42f392;if(_0x4190ad[_0xaa54('0x3e')][_0xaa54('0x4e')]){_0x4181ab[_0xaa54('0x4f')]=[{'all':!![]}];}return db[_0xaa54('0x37')][_0xaa54('0x50')](_0x4181ab);})[_0xaa54('0x1c')](function(_0x3c13c9){_0x23c61b[_0xaa54('0x51')]=_0x3c13c9;return _0x23c61b;})[_0xaa54('0x1c')](respondWithFilteredResult(_0x5dd9ad,_0x4181ab))[_0xaa54('0x52')](handleError(_0x5dd9ad,null));};exports['show']=function(_0x4ad39c,_0x100146){var _0x40ba5c={'raw':![],'where':{'id':_0x4ad39c['params']['id']}},_0x1cfc9a={};_0x1cfc9a[_0xaa54('0x3c')]=_[_0xaa54('0x3f')](db[_0xaa54('0x37')][_0xaa54('0x38')]);_0x1cfc9a['query']=_[_0xaa54('0x3f')](_0x4ad39c[_0xaa54('0x3e')]);_0x1cfc9a['filters']=_[_0xaa54('0x40')](_0x1cfc9a['model'],_0x1cfc9a['query']);_0x40ba5c[_0xaa54('0x42')]=_[_0xaa54('0x40')](_0x1cfc9a[_0xaa54('0x3c')],qs[_0xaa54('0x41')](_0x4ad39c[_0xaa54('0x3e')][_0xaa54('0x41')]));_0x40ba5c[_0xaa54('0x42')]=_0x40ba5c[_0xaa54('0x42')]['length']?_0x40ba5c[_0xaa54('0x42')]:_0x1cfc9a[_0xaa54('0x3c')];if(_0x4ad39c['query'][_0xaa54('0x4e')]){_0x40ba5c['include']=[{'all':!![]}];}_0x40ba5c=_['merge']({},_0x40ba5c,_0x4ad39c[_0xaa54('0x4d')]);return db['DeskAccount'][_0xaa54('0x53')](_0x40ba5c)[_0xaa54('0x1c')](handleEntityNotFound(_0x100146,null))['then'](respondWithResult(_0x100146,null))[_0xaa54('0x52')](handleError(_0x100146,null));};exports[_0xaa54('0x54')]=function(_0x210eab,_0x5aa610){return db[_0xaa54('0x37')][_0xaa54('0x54')](_0x210eab[_0xaa54('0x55')],{})[_0xaa54('0x1c')](respondWithResult(_0x5aa610,0xc9))['catch'](handleError(_0x5aa610,null));};exports[_0xaa54('0x56')]=function(_0x3c19d7,_0x35dbd5){if(_0x3c19d7[_0xaa54('0x55')]['id']){delete _0x3c19d7[_0xaa54('0x55')]['id'];}return db[_0xaa54('0x37')][_0xaa54('0x53')]({'where':{'id':_0x3c19d7[_0xaa54('0x57')]['id']}})['then'](handleEntityNotFound(_0x35dbd5,null))['then'](saveUpdates(_0x3c19d7['body'],null))[_0xaa54('0x1c')](respondWithResult(_0x35dbd5,null))[_0xaa54('0x52')](handleError(_0x35dbd5,null));};exports['destroy']=function(_0x1eb9d4,_0x48f60a){return db[_0xaa54('0x37')][_0xaa54('0x53')]({'where':{'id':_0x1eb9d4[_0xaa54('0x57')]['id']}})[_0xaa54('0x1c')](handleEntityNotFound(_0x48f60a,null))[_0xaa54('0x1c')](removeEntity(_0x48f60a,null))[_0xaa54('0x52')](handleError(_0x48f60a,null));};exports['getConfigurations']=function(_0x15099d,_0x329458,_0x4853fa){var _0x4bb671={};var _0x4ef5b4={};var _0x5ab913;var _0x24e044;return db[_0xaa54('0x37')][_0xaa54('0x58')]({'where':{'id':_0x15099d[_0xaa54('0x57')]['id']}})[_0xaa54('0x1c')](handleEntityNotFound(_0x329458,null))[_0xaa54('0x1c')](function(_0x4c7dad){if(_0x4c7dad){_0x5ab913=_0x4c7dad;_0x4ef5b4[_0xaa54('0x3c')]=_[_0xaa54('0x3f')](db[_0xaa54('0x59')][_0xaa54('0x38')]);_0x4ef5b4[_0xaa54('0x3e')]=_[_0xaa54('0x3f')](_0x15099d[_0xaa54('0x3e')]);_0x4ef5b4['filters']=_[_0xaa54('0x40')](_0x4ef5b4['model'],_0x4ef5b4['query']);_0x4bb671[_0xaa54('0x42')]=_[_0xaa54('0x40')](_0x4ef5b4[_0xaa54('0x3c')],qs[_0xaa54('0x41')](_0x15099d[_0xaa54('0x3e')][_0xaa54('0x41')]));_0x4bb671['attributes']=_0x4bb671[_0xaa54('0x42')]['length']?_0x4bb671['attributes']:_0x4ef5b4[_0xaa54('0x3c')];_0x4bb671['order']=qs['sort'](_0x15099d[_0xaa54('0x3e')]['sort']);_0x4bb671[_0xaa54('0x47')]=qs['filters'](_[_0xaa54('0x49')](_0x15099d[_0xaa54('0x3e')],_0x4ef5b4[_0xaa54('0x48')]));if(_0x15099d[_0xaa54('0x3e')][_0xaa54('0x4a')]){_0x4bb671[_0xaa54('0x47')]=_['merge'](_0x4bb671[_0xaa54('0x47')],{'$or':_['map'](_0x4bb671['attributes'],function(_0x27b9f0){var _0x2a1d91={};_0x2a1d91[_0x27b9f0]={'$like':'%'+_0x15099d[_0xaa54('0x3e')]['filter']+'%'};return _0x2a1d91;})});}_0x4bb671=_[_0xaa54('0x4c')]({},_0x4bb671,_0x15099d[_0xaa54('0x4d')]);return _0x5ab913[_0xaa54('0x5a')](_0x4bb671);}})[_0xaa54('0x1c')](function(_0xb721bc){if(_0xb721bc){_0x24e044=_0xb721bc[_0xaa54('0x5b')];if(!_0x15099d[_0xaa54('0x3e')]['hasOwnProperty'](_0xaa54('0x44'))){_0x4bb671[_0xaa54('0x2c')]=qs[_0xaa54('0x2c')](_0x15099d[_0xaa54('0x3e')][_0xaa54('0x2c')]);_0x4bb671['offset']=qs[_0xaa54('0x2b')](_0x15099d[_0xaa54('0x3e')]['offset']);}return _0x5ab913[_0xaa54('0x5a')](_0x4bb671);}})[_0xaa54('0x1c')](function(_0x23f130){if(_0x23f130){return _0x23f130?{'count':_0x24e044,'rows':_0x23f130}:null;}})[_0xaa54('0x1c')](respondWithResult(_0x329458,null))[_0xaa54('0x52')](handleError(_0x329458,null));};exports[_0xaa54('0x5c')]=function(_0x5dc3eb,_0x581612,_0x170e56){if(_0x5dc3eb[_0xaa54('0x55')]['id']){delete _0x5dc3eb[_0xaa54('0x55')]['id'];}return db[_0xaa54('0x37')][_0xaa54('0x58')]({'where':{'id':_0x5dc3eb[_0xaa54('0x57')]['id']}})[_0xaa54('0x1c')](handleEntityNotFound(_0x581612,null))[_0xaa54('0x1c')](function(_0x58ff70){if(_0x58ff70){_0x5dc3eb[_0xaa54('0x55')][_0xaa54('0x5d')]=_0x58ff70['id'];_0x5dc3eb[_0xaa54('0x55')][_0xaa54('0x5e')]=integrations[_0xaa54('0x5f')](_0x5dc3eb['body'][_0xaa54('0x60')],_0x5dc3eb['body']['type']);_0x5dc3eb[_0xaa54('0x55')][_0xaa54('0x61')]=integrations[_0xaa54('0x62')](_0x5dc3eb[_0xaa54('0x55')][_0xaa54('0x60')],_0x5dc3eb[_0xaa54('0x55')]['type']);return db['DeskConfiguration'][_0xaa54('0x54')](_0x5dc3eb[_0xaa54('0x55')],{'include':[{'model':db[_0xaa54('0x63')],'as':_0xaa54('0x5e')},{'model':db[_0xaa54('0x63')],'as':_0xaa54('0x61')}]});}return null;})[_0xaa54('0x1c')](respondWithResult(_0x581612,null))[_0xaa54('0x52')](handleError(_0x581612,null));};exports[_0xaa54('0x64')]=function(_0xe6056c,_0x4bd54f,_0x597141){var _0x1f0062=[{'name':_0xaa54('0x65'),'label':'priority','custom':![],'options':[{'name':0x1,'value':0x1},{'name':0x2,'value':0x2},{'name':0x3,'value':0x3},{'name':0x4,'value':0x4},{'name':0x5,'value':0x5},{'name':0x6,'value':0x6},{'name':0x7,'value':0x7},{'name':0x8,'value':0x8},{'name':0x9,'value':0x9},{'name':0xa,'value':0xa}]}];var _0x33ffac='';return db[_0xaa54('0x37')]['findOne']({'where':{'id':_0xe6056c[_0xaa54('0x57')]['id']},'attributes':['id',_0xaa54('0x66'),'authType',_0xaa54('0x67'),_0xaa54('0x68'),_0xaa54('0x69'),_0xaa54('0x6a'),_0xaa54('0x6b'),_0xaa54('0x6c')]})[_0xaa54('0x1c')](handleEntityNotFound(_0x4bd54f,null))[_0xaa54('0x1c')](function(_0x4e04bb){if(_0x4e04bb){_0x33ffac=_0x4e04bb[_0xaa54('0x66')];var _0x4eeaf4=_0x33ffac[_0xaa54('0x6d')](-0x1);if(_0x4eeaf4==='/'){_0x33ffac=_0x33ffac[_0xaa54('0x6e')](0x0,_0x33ffac[_0xaa54('0x6f')](_0x4eeaf4));}var _0x116bb6={'method':_0xaa54('0x70'),'uri':util['format']('%s/custom_fields',_0x33ffac),'headers':{'Content-Type':_0xaa54('0x71'),'Accept':_0xaa54('0x71')},'json':!![]};if(_0x4e04bb[_0xaa54('0x72')]===_0xaa54('0x73')){_0x116bb6['headers']['Authorization']=util['format'](_0xaa54('0x74'),new Buffer(util[_0xaa54('0x75')]('%s:%s',_0x4e04bb[_0xaa54('0x67')],_0x4e04bb[_0xaa54('0x68')]))[_0xaa54('0x76')](_0xaa54('0x77')));}return rp(_0x116bb6)[_0xaa54('0x1c')](function(_0x58bd77){return _0x1f0062[_0xaa54('0x78')](_[_0xaa54('0x3d')](_0x58bd77['_embedded'][_0xaa54('0x79')],function(_0xc8e737){return{'id':_0xc8e737[_0xaa54('0x34')],'name':_0xc8e737[_0xaa54('0x34')],'type':_0xc8e737[_0xaa54('0x3a')],'active':_0xc8e737[_0xaa54('0x7a')],'label':_0xc8e737[_0xaa54('0x7b')],'custom':!![]};}));});}})[_0xaa54('0x1c')](function(_0x22fe98){return{'count':_0x22fe98[_0xaa54('0x5b')],'rows':_0x22fe98};})[_0xaa54('0x1c')](respondWithResult(_0x4bd54f,null))['catch'](function(_0x1393b6){var _0x37b35d=_0xe6056c[_0xaa54('0x3e')]['test']?0x1f4:_0x1393b6['statusCode']||0x1f4;logger[_0xaa54('0x23')]('getFields,\x20%s,\x20%s,\x20%s',_0xaa54('0x64'),_0x37b35d,JSON['stringify'](_0x1393b6));delete _0x1393b6[_0xaa54('0x34')];if(_0x37b35d===0x191){_0x37b35d=0x190;}_0x4bd54f[_0xaa54('0x27')](_0x37b35d)[_0xaa54('0x35')](_0xe6056c[_0xaa54('0x3e')]['test']?{'message':_0xaa54('0x7c'),'statusCode':_0x1393b6[_0xaa54('0x7d')]}:_0x1393b6);});};