Built motion from commit 4ca75f1b.|2.6.28
[motion2.git] / server / api / intSalesforceAccount / intSalesforceAccount.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 _0x6012=['path','sox','to-csv','ejs','fs-extra','lodash','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','../../components/integrations/configuration','sendStatus','status','json','offset','undefined','count','set','apply','reject','update','then','destroy','error','stack','send','index','map','SalesforceAccount','rawAttributes','type','key','name','query','keys','filters','intersection','model','fields','attributes','length','nolimit','limit','order','sort','where','pick','filter','merge','VIRTUAL','options','include','rows','show','params','find','catch','create','body','getConfigurations','findOne','SalesforceConfiguration','addConfiguration','AccountId','Subjects','getSubjects','channel','SalesforceField','getFields','Task','remoteUri','clientId','clientSecret','username','password','slice','lastIndexOf','Connection','securityToken','isNil','ticketType','sobject','OwnerId','ActivityDate','IsReminderSet','int','picklist','boolean','email','phone','remove','includes','label','custom','picklistValues','value','True','true','false','test','statusCode','getFields,\x20%s,\x20%s,\x20%s','stringify','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util'];(function(_0x126558,_0x143c9a){var _0x1f6d14=function(_0x2b0eea){while(--_0x2b0eea){_0x126558['push'](_0x126558['shift']());}};_0x1f6d14(++_0x143c9a);}(_0x6012,0xeb));var _0x2601=function(_0x404957,_0x5192a4){_0x404957=_0x404957-0x0;var _0x4e0365=_0x6012[_0x404957];return _0x4e0365;};'use strict';var emlformat=require(_0x2601('0x0'));var rimraf=require(_0x2601('0x1'));var zipdir=require(_0x2601('0x2'));var jsonpatch=require(_0x2601('0x3'));var rp=require(_0x2601('0x4'));var moment=require(_0x2601('0x5'));var BPromise=require(_0x2601('0x6'));var Mustache=require(_0x2601('0x7'));var util=require(_0x2601('0x8'));var path=require(_0x2601('0x9'));var sox=require(_0x2601('0xa'));var csv=require(_0x2601('0xb'));var ejs=require(_0x2601('0xc'));var fs=require('fs');var fs_extra=require(_0x2601('0xd'));var _=require(_0x2601('0xe'));var squel=require('squel');var crypto=require(_0x2601('0xf'));var jsforce=require(_0x2601('0x10'));var deskjs=require(_0x2601('0x11'));var toCsv=require('to-csv');var querystring=require(_0x2601('0x12'));var Papa=require('papaparse');var Redis=require(_0x2601('0x13'));var authService=require(_0x2601('0x14'));var qs=require(_0x2601('0x15'));var as=require(_0x2601('0x16'));var hardwareService=require(_0x2601('0x17'));var logger=require(_0x2601('0x18'))('api');var utils=require(_0x2601('0x19'));var config=require(_0x2601('0x1a'));var licenseUtil=require(_0x2601('0x1b'));var db=require(_0x2601('0x1c'))['db'];var integrations=require(_0x2601('0x1d'));function respondWithStatusCode(_0x1b158e,_0x2a3a32){_0x2a3a32=_0x2a3a32||0xcc;return function(_0x1e266f){if(_0x1e266f){return _0x1b158e[_0x2601('0x1e')](_0x2a3a32);}return _0x1b158e[_0x2601('0x1f')](_0x2a3a32)['end']();};}function respondWithResult(_0x2f6b3a,_0x3561ff){_0x3561ff=_0x3561ff||0xc8;return function(_0x22178d){if(_0x22178d){return _0x2f6b3a[_0x2601('0x1f')](_0x3561ff)[_0x2601('0x20')](_0x22178d);}};}function respondWithFilteredResult(_0x5997cf,_0x52cf71){return function(_0x5689c6){if(_0x5689c6){var _0x2d3b9b=typeof _0x52cf71[_0x2601('0x21')]===_0x2601('0x22')&&typeof _0x52cf71['limit']===_0x2601('0x22');var _0x586fef=_0x5689c6[_0x2601('0x23')];var _0x4df394=_0x2d3b9b?0x0:_0x52cf71[_0x2601('0x21')];var _0x4cdc3a=_0x2d3b9b?_0x5689c6[_0x2601('0x23')]:_0x52cf71['offset']+_0x52cf71['limit'];var _0x411df3;if(_0x4cdc3a>=_0x586fef){_0x4cdc3a=_0x586fef;_0x411df3=0xc8;}else{_0x411df3=0xce;}_0x5997cf[_0x2601('0x1f')](_0x411df3);return _0x5997cf[_0x2601('0x24')]('Content-Range',_0x4df394+'-'+_0x4cdc3a+'/'+_0x586fef)['json'](_0x5689c6);}return null;};}function patchUpdates(_0x41a52){return function(_0x58e308){try{jsonpatch[_0x2601('0x25')](_0x58e308,_0x41a52,!![]);}catch(_0x5b6f26){return BPromise[_0x2601('0x26')](_0x5b6f26);}return _0x58e308['save']();};}function saveUpdates(_0x2f15e7,_0x36a4ce){return function(_0x1ce149){if(_0x1ce149){return _0x1ce149[_0x2601('0x27')](_0x2f15e7)[_0x2601('0x28')](function(_0x219267){return _0x219267;});}return null;};}function removeEntity(_0x21f935,_0x11e55d){return function(_0x1fecbc){if(_0x1fecbc){return _0x1fecbc[_0x2601('0x29')]()['then'](function(){_0x21f935[_0x2601('0x1f')](0xcc)['end']();});}};}function handleEntityNotFound(_0x228961,_0x2d600d){return function(_0x16f9a3){if(!_0x16f9a3){_0x228961[_0x2601('0x1e')](0x194);}return _0x16f9a3;};}function handleError(_0x5eab7d,_0x51c1e7){_0x51c1e7=_0x51c1e7||0x1f4;return function(_0x1dcb2a){logger[_0x2601('0x2a')](_0x1dcb2a[_0x2601('0x2b')]);if(_0x1dcb2a['name']){delete _0x1dcb2a['name'];}_0x5eab7d['status'](_0x51c1e7)[_0x2601('0x2c')](_0x1dcb2a);};}exports[_0x2601('0x2d')]=function(_0x18628b,_0x162975){var _0x1b9034={},_0x2ba9de={},_0x37abef={'count':0x0,'rows':[]};var _0x1c2beb=_[_0x2601('0x2e')](db[_0x2601('0x2f')][_0x2601('0x30')],function(_0xc3067b){return{'name':_0xc3067b['fieldName'],'type':_0xc3067b[_0x2601('0x31')][_0x2601('0x32')]};});_0x2ba9de['model']=_[_0x2601('0x2e')](_0x1c2beb,_0x2601('0x33'));_0x2ba9de[_0x2601('0x34')]=_[_0x2601('0x35')](_0x18628b['query']);_0x2ba9de[_0x2601('0x36')]=_[_0x2601('0x37')](_0x2ba9de[_0x2601('0x38')],_0x2ba9de[_0x2601('0x34')]);_0x1b9034['attributes']=_['intersection'](_0x2ba9de[_0x2601('0x38')],qs[_0x2601('0x39')](_0x18628b[_0x2601('0x34')]['fields']));_0x1b9034['attributes']=_0x1b9034[_0x2601('0x3a')][_0x2601('0x3b')]?_0x1b9034[_0x2601('0x3a')]:_0x2ba9de[_0x2601('0x38')];if(!_0x18628b[_0x2601('0x34')]['hasOwnProperty'](_0x2601('0x3c'))){_0x1b9034[_0x2601('0x3d')]=qs['limit'](_0x18628b['query'][_0x2601('0x3d')]);_0x1b9034['offset']=qs[_0x2601('0x21')](_0x18628b[_0x2601('0x34')][_0x2601('0x21')]);}_0x1b9034[_0x2601('0x3e')]=qs['sort'](_0x18628b[_0x2601('0x34')][_0x2601('0x3f')]);_0x1b9034[_0x2601('0x40')]=qs[_0x2601('0x36')](_[_0x2601('0x41')](_0x18628b[_0x2601('0x34')],_0x2ba9de[_0x2601('0x36')]),_0x1c2beb);if(_0x18628b['query'][_0x2601('0x42')]){_0x1b9034['where']=_[_0x2601('0x43')](_0x1b9034[_0x2601('0x40')],{'$or':_['map'](_0x1c2beb,function(_0x125f9f){if(_0x125f9f[_0x2601('0x31')]!==_0x2601('0x44')){var _0x1c04d9={};_0x1c04d9[_0x125f9f[_0x2601('0x33')]]={'$like':'%'+_0x18628b[_0x2601('0x34')][_0x2601('0x42')]+'%'};return _0x1c04d9;}})});}_0x1b9034=_['merge']({},_0x1b9034,_0x18628b[_0x2601('0x45')]);var _0x2b2084={'where':_0x1b9034[_0x2601('0x40')]};return db[_0x2601('0x2f')]['count'](_0x2b2084)['then'](function(_0x219287){_0x37abef[_0x2601('0x23')]=_0x219287;if(_0x18628b[_0x2601('0x34')]['includeAll']){_0x1b9034[_0x2601('0x46')]=[{'all':!![]}];}return db[_0x2601('0x2f')]['findAll'](_0x1b9034);})[_0x2601('0x28')](function(_0x2d4795){_0x37abef[_0x2601('0x47')]=_0x2d4795;return _0x37abef;})['then'](respondWithFilteredResult(_0x162975,_0x1b9034))['catch'](handleError(_0x162975,null));};exports[_0x2601('0x48')]=function(_0x5bf1a7,_0x1a8704){var _0x242b34={'raw':![],'where':{'id':_0x5bf1a7[_0x2601('0x49')]['id']}},_0x17e8df={};_0x17e8df[_0x2601('0x38')]=_[_0x2601('0x35')](db[_0x2601('0x2f')][_0x2601('0x30')]);_0x17e8df[_0x2601('0x34')]=_['keys'](_0x5bf1a7[_0x2601('0x34')]);_0x17e8df[_0x2601('0x36')]=_[_0x2601('0x37')](_0x17e8df['model'],_0x17e8df[_0x2601('0x34')]);_0x242b34[_0x2601('0x3a')]=_['intersection'](_0x17e8df[_0x2601('0x38')],qs[_0x2601('0x39')](_0x5bf1a7[_0x2601('0x34')][_0x2601('0x39')]));_0x242b34[_0x2601('0x3a')]=_0x242b34[_0x2601('0x3a')]['length']?_0x242b34[_0x2601('0x3a')]:_0x17e8df[_0x2601('0x38')];if(_0x5bf1a7[_0x2601('0x34')]['includeAll']){_0x242b34[_0x2601('0x46')]=[{'all':!![]}];}_0x242b34=_['merge']({},_0x242b34,_0x5bf1a7[_0x2601('0x45')]);return db[_0x2601('0x2f')][_0x2601('0x4a')](_0x242b34)[_0x2601('0x28')](handleEntityNotFound(_0x1a8704,null))[_0x2601('0x28')](respondWithResult(_0x1a8704,null))[_0x2601('0x4b')](handleError(_0x1a8704,null));};exports[_0x2601('0x4c')]=function(_0x3f50d6,_0x1f5d9b){return db[_0x2601('0x2f')][_0x2601('0x4c')](_0x3f50d6[_0x2601('0x4d')],{})[_0x2601('0x28')](respondWithResult(_0x1f5d9b,0xc9))[_0x2601('0x4b')](handleError(_0x1f5d9b,null));};exports[_0x2601('0x27')]=function(_0x43c7e5,_0x321595){if(_0x43c7e5[_0x2601('0x4d')]['id']){delete _0x43c7e5[_0x2601('0x4d')]['id'];}return db[_0x2601('0x2f')]['find']({'where':{'id':_0x43c7e5['params']['id']}})[_0x2601('0x28')](handleEntityNotFound(_0x321595,null))['then'](saveUpdates(_0x43c7e5[_0x2601('0x4d')],null))[_0x2601('0x28')](respondWithResult(_0x321595,null))[_0x2601('0x4b')](handleError(_0x321595,null));};exports['destroy']=function(_0x154c97,_0x140376){return db['SalesforceAccount']['find']({'where':{'id':_0x154c97[_0x2601('0x49')]['id']}})[_0x2601('0x28')](handleEntityNotFound(_0x140376,null))[_0x2601('0x28')](removeEntity(_0x140376,null))['catch'](handleError(_0x140376,null));};exports[_0x2601('0x4e')]=function(_0x3cdae6,_0x57d875,_0x48d566){var _0x2a1da1={};var _0x126d13={};var _0x24425b;var _0x3f38a2;return db[_0x2601('0x2f')][_0x2601('0x4f')]({'where':{'id':_0x3cdae6[_0x2601('0x49')]['id']}})[_0x2601('0x28')](handleEntityNotFound(_0x57d875,null))[_0x2601('0x28')](function(_0x34084a){if(_0x34084a){_0x24425b=_0x34084a;_0x126d13[_0x2601('0x38')]=_[_0x2601('0x35')](db[_0x2601('0x50')]['rawAttributes']);_0x126d13[_0x2601('0x34')]=_['keys'](_0x3cdae6[_0x2601('0x34')]);_0x126d13['filters']=_[_0x2601('0x37')](_0x126d13[_0x2601('0x38')],_0x126d13[_0x2601('0x34')]);_0x2a1da1[_0x2601('0x3a')]=_[_0x2601('0x37')](_0x126d13[_0x2601('0x38')],qs[_0x2601('0x39')](_0x3cdae6[_0x2601('0x34')][_0x2601('0x39')]));_0x2a1da1[_0x2601('0x3a')]=_0x2a1da1[_0x2601('0x3a')][_0x2601('0x3b')]?_0x2a1da1[_0x2601('0x3a')]:_0x126d13[_0x2601('0x38')];_0x2a1da1[_0x2601('0x3e')]=qs[_0x2601('0x3f')](_0x3cdae6[_0x2601('0x34')][_0x2601('0x3f')]);_0x2a1da1[_0x2601('0x40')]=qs[_0x2601('0x36')](_['pick'](_0x3cdae6[_0x2601('0x34')],_0x126d13['filters']));if(_0x3cdae6[_0x2601('0x34')][_0x2601('0x42')]){_0x2a1da1[_0x2601('0x40')]=_[_0x2601('0x43')](_0x2a1da1[_0x2601('0x40')],{'$or':_[_0x2601('0x2e')](_0x2a1da1[_0x2601('0x3a')],function(_0x5d3711){var _0x505b11={};_0x505b11[_0x5d3711]={'$like':'%'+_0x3cdae6[_0x2601('0x34')]['filter']+'%'};return _0x505b11;})});}_0x2a1da1=_['merge']({},_0x2a1da1,_0x3cdae6[_0x2601('0x45')]);return _0x24425b[_0x2601('0x4e')](_0x2a1da1);}})[_0x2601('0x28')](function(_0x10d7b0){if(_0x10d7b0){_0x3f38a2=_0x10d7b0[_0x2601('0x3b')];if(!_0x3cdae6[_0x2601('0x34')]['hasOwnProperty'](_0x2601('0x3c'))){_0x2a1da1[_0x2601('0x3d')]=qs[_0x2601('0x3d')](_0x3cdae6[_0x2601('0x34')][_0x2601('0x3d')]);_0x2a1da1['offset']=qs['offset'](_0x3cdae6['query'][_0x2601('0x21')]);}return _0x24425b[_0x2601('0x4e')](_0x2a1da1);}})[_0x2601('0x28')](function(_0x13f0da){if(_0x13f0da){return _0x13f0da?{'count':_0x3f38a2,'rows':_0x13f0da}:null;}})['then'](respondWithResult(_0x57d875,null))[_0x2601('0x4b')](handleError(_0x57d875,null));};exports[_0x2601('0x51')]=function(_0x238b9e,_0x53822e,_0x78bf3c){if(_0x238b9e['body']['id']){delete _0x238b9e[_0x2601('0x4d')]['id'];}return db[_0x2601('0x2f')][_0x2601('0x4f')]({'where':{'id':_0x238b9e[_0x2601('0x49')]['id']}})[_0x2601('0x28')](handleEntityNotFound(_0x53822e,null))[_0x2601('0x28')](function(_0x3ab56f){if(_0x3ab56f){_0x238b9e[_0x2601('0x4d')][_0x2601('0x52')]=_0x3ab56f['id'];_0x238b9e[_0x2601('0x4d')][_0x2601('0x53')]=integrations[_0x2601('0x54')](_0x238b9e[_0x2601('0x4d')][_0x2601('0x55')],_0x238b9e[_0x2601('0x4d')][_0x2601('0x31')]);_0x238b9e[_0x2601('0x4d')]['Descriptions']=integrations['getDescriptions'](_0x238b9e['body']['channel'],_0x238b9e[_0x2601('0x4d')][_0x2601('0x31')]);return db[_0x2601('0x50')][_0x2601('0x4c')](_0x238b9e[_0x2601('0x4d')],{'include':[{'model':db[_0x2601('0x56')],'as':_0x2601('0x53')},{'model':db[_0x2601('0x56')],'as':'Descriptions'}]});}return null;})[_0x2601('0x28')](respondWithResult(_0x53822e,null))[_0x2601('0x4b')](handleError(_0x53822e,null));};exports[_0x2601('0x57')]=function(_0x38c200,_0x751e20,_0x3bc5c1){var _0x1be9c1;var _0x175731='';var _0x468a05=_0x2601('0x58');return db[_0x2601('0x2f')][_0x2601('0x4f')]({'where':{'id':_0x38c200[_0x2601('0x49')]['id']},'attributes':['id',_0x2601('0x59'),_0x2601('0x5a'),_0x2601('0x5b'),_0x2601('0x5c'),_0x2601('0x5d'),'securityToken']})[_0x2601('0x28')](handleEntityNotFound(_0x751e20,null))[_0x2601('0x28')](function(_0xa6f172){if(_0xa6f172){_0x175731=_0xa6f172[_0x2601('0x59')];var _0x5a4b4f=_0x175731[_0x2601('0x5e')](-0x1);if(_0x5a4b4f==='/'){_0x175731=_0x175731['substring'](0x0,_0x175731[_0x2601('0x5f')](_0x5a4b4f));}_0x1be9c1=new jsforce[(_0x2601('0x60'))]({'oauth2':{'loginUrl':_0x175731,'clientId':_0xa6f172[_0x2601('0x5a')],'clientSecret':_0xa6f172[_0x2601('0x5b')]}});return _0x1be9c1['login'](_0xa6f172[_0x2601('0x5c')],_0xa6f172[_0x2601('0x5d')]['concat'](_0xa6f172[_0x2601('0x61')]));}})[_0x2601('0x28')](function(_0x329899){if(_0x329899){if(!_[_0x2601('0x62')](_0x38c200['query'][_0x2601('0x63')])){_0x468a05=_0x38c200[_0x2601('0x34')][_0x2601('0x63')];}return _0x1be9c1[_0x2601('0x64')](_0x468a05)['describe']();}})[_0x2601('0x28')](function(_0x3f6ab4){var _0x20e716=[_0x2601('0x65'),_0x2601('0x66'),_0x2601('0x67'),'IsRecurrence','Subject','Description'];var _0x35ad02=['string',_0x2601('0x68'),_0x2601('0x69'),_0x2601('0x6a'),_0x2601('0x6b'),'textarea',_0x2601('0x6c')];if(_0x3f6ab4){_[_0x2601('0x6d')](_0x3f6ab4[_0x2601('0x39')],function(_0x1a03a6){return _0x20e716['includes'](_0x1a03a6[_0x2601('0x33')])||!_0x35ad02[_0x2601('0x6e')](_0x1a03a6['type']);});return{'count':_0x3f6ab4[_0x2601('0x39')][_0x2601('0x3b')],'rows':_[_0x2601('0x2e')](_0x3f6ab4['fields'],function(_0xeca0f8){return{'id':_0xeca0f8[_0x2601('0x33')],'name':_0xeca0f8[_0x2601('0x6f')],'custom':_0xeca0f8[_0x2601('0x70')],'options':_0xeca0f8[_0x2601('0x71')][_0x2601('0x3b')]>0x0?_[_0x2601('0x2e')](_0xeca0f8[_0x2601('0x71')],function(_0x20333f){return{'name':_0x20333f[_0x2601('0x6f')],'value':_0x20333f[_0x2601('0x72')]};}):_0xeca0f8[_0x2601('0x31')]==_0x2601('0x6a')?[{'name':_0x2601('0x73'),'value':_0x2601('0x74')},{'name':'False','value':_0x2601('0x75')}]:[]};})};}})[_0x2601('0x28')](respondWithResult(_0x751e20,null))[_0x2601('0x4b')](function(_0x72b79f){var _0x56924c=_0x38c200[_0x2601('0x34')][_0x2601('0x76')]?0x1f4:_0x72b79f[_0x2601('0x77')]||0x1f4;logger[_0x2601('0x2a')](_0x2601('0x78'),_0x2601('0x57'),_0x56924c,JSON[_0x2601('0x79')](_0x72b79f));delete _0x72b79f[_0x2601('0x33')];if(_0x56924c===0x191){_0x56924c=0x190;}_0x751e20[_0x2601('0x1f')](_0x56924c)[_0x2601('0x2c')](_0x38c200[_0x2601('0x34')]['test']?{'message':'Wrong\x20credentials','statusCode':_0x72b79f[_0x2601('0x77')]}:_0x72b79f);});};