Built motion from commit da617fac.|2.6.6
[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 _0x70b1=['slice','substring','lastIndexOf','Connection','clientSecret','login','password','concat','isNil','ticketType','describe','OwnerId','IsReminderSet','Subject','Description','string','picklist','boolean','email','textarea','phone','remove','includes','label','custom','picklistValues','value','True','false','statusCode','error','getFields,\x20%s,\x20%s,\x20%s','stringify','test','Wrong\x20credentials','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','ejs','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','../../components/integrations/configuration','status','json','offset','undefined','limit','count','set','apply','reject','save','update','then','end','sendStatus','stack','name','send','map','SalesforceAccount','rawAttributes','fieldName','type','keys','query','model','attributes','intersection','fields','length','hasOwnProperty','nolimit','sort','where','filters','pick','filter','merge','options','includeAll','include','rows','catch','show','params','find','create','body','destroy','findOne','SalesforceConfiguration','order','getConfigurations','addConfiguration','AccountId','Subjects','getSubjects','channel','Descriptions','getDescriptions','SalesforceField','remoteUri','clientId','securityToken'];(function(_0x25ca44,_0x111633){var _0x4897c1=function(_0xf344b9){while(--_0xf344b9){_0x25ca44['push'](_0x25ca44['shift']());}};_0x4897c1(++_0x111633);}(_0x70b1,0x19a));var _0x170b=function(_0x258ae1,_0x1c3801){_0x258ae1=_0x258ae1-0x0;var _0x1d5ec1=_0x70b1[_0x258ae1];return _0x1d5ec1;};'use strict';var emlformat=require(_0x170b('0x0'));var rimraf=require(_0x170b('0x1'));var zipdir=require(_0x170b('0x2'));var jsonpatch=require(_0x170b('0x3'));var rp=require(_0x170b('0x4'));var moment=require(_0x170b('0x5'));var BPromise=require(_0x170b('0x6'));var Mustache=require('mustache');var util=require(_0x170b('0x7'));var path=require(_0x170b('0x8'));var sox=require(_0x170b('0x9'));var csv=require(_0x170b('0xa'));var ejs=require(_0x170b('0xb'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0x170b('0xc'));var crypto=require(_0x170b('0xd'));var jsforce=require(_0x170b('0xe'));var deskjs=require(_0x170b('0xf'));var toCsv=require('to-csv');var querystring=require(_0x170b('0x10'));var Papa=require(_0x170b('0x11'));var Redis=require(_0x170b('0x12'));var authService=require(_0x170b('0x13'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x170b('0x14'));var logger=require(_0x170b('0x15'))(_0x170b('0x16'));var utils=require(_0x170b('0x17'));var config=require(_0x170b('0x18'));var licenseUtil=require('../../config/license/util');var db=require(_0x170b('0x19'))['db'];var integrations=require(_0x170b('0x1a'));function respondWithStatusCode(_0x25d02b,_0x15d47a){_0x15d47a=_0x15d47a||0xcc;return function(_0x2a95cf){if(_0x2a95cf){return _0x25d02b['sendStatus'](_0x15d47a);}return _0x25d02b[_0x170b('0x1b')](_0x15d47a)['end']();};}function respondWithResult(_0x183835,_0x56e0c9){_0x56e0c9=_0x56e0c9||0xc8;return function(_0x1878a7){if(_0x1878a7){return _0x183835[_0x170b('0x1b')](_0x56e0c9)[_0x170b('0x1c')](_0x1878a7);}};}function respondWithFilteredResult(_0x445117,_0x3de623){return function(_0x349bc0){if(_0x349bc0){var _0x4331fc=typeof _0x3de623[_0x170b('0x1d')]===_0x170b('0x1e')&&typeof _0x3de623[_0x170b('0x1f')]==='undefined';var _0x388e93=_0x349bc0[_0x170b('0x20')];var _0x146e84=_0x4331fc?0x0:_0x3de623[_0x170b('0x1d')];var _0x49a11d=_0x4331fc?_0x349bc0[_0x170b('0x20')]:_0x3de623[_0x170b('0x1d')]+_0x3de623['limit'];var _0x111596;if(_0x49a11d>=_0x388e93){_0x49a11d=_0x388e93;_0x111596=0xc8;}else{_0x111596=0xce;}_0x445117['status'](_0x111596);return _0x445117[_0x170b('0x21')]('Content-Range',_0x146e84+'-'+_0x49a11d+'/'+_0x388e93)[_0x170b('0x1c')](_0x349bc0);}return null;};}function patchUpdates(_0x5b9cd1){return function(_0x3bf263){try{jsonpatch[_0x170b('0x22')](_0x3bf263,_0x5b9cd1,!![]);}catch(_0x71e6ec){return BPromise[_0x170b('0x23')](_0x71e6ec);}return _0x3bf263[_0x170b('0x24')]();};}function saveUpdates(_0xfe9158,_0x30aac7){return function(_0x21f948){if(_0x21f948){return _0x21f948[_0x170b('0x25')](_0xfe9158)[_0x170b('0x26')](function(_0x20a6e1){return _0x20a6e1;});}return null;};}function removeEntity(_0x3d323e,_0x256cd6){return function(_0x27a2c7){if(_0x27a2c7){return _0x27a2c7['destroy']()[_0x170b('0x26')](function(){_0x3d323e[_0x170b('0x1b')](0xcc)[_0x170b('0x27')]();});}};}function handleEntityNotFound(_0x237069,_0x1f0190){return function(_0xc496a8){if(!_0xc496a8){_0x237069[_0x170b('0x28')](0x194);}return _0xc496a8;};}function handleError(_0x34ccfc,_0x3c3b73){_0x3c3b73=_0x3c3b73||0x1f4;return function(_0x4aa4fe){logger['error'](_0x4aa4fe[_0x170b('0x29')]);if(_0x4aa4fe['name']){delete _0x4aa4fe[_0x170b('0x2a')];}_0x34ccfc['status'](_0x3c3b73)[_0x170b('0x2b')](_0x4aa4fe);};}exports['index']=function(_0x334ce2,_0x17a4ed){var _0xa9203c={},_0x8fae78={},_0x4db6b3={'count':0x0,'rows':[]};var _0x446b48=_[_0x170b('0x2c')](db[_0x170b('0x2d')][_0x170b('0x2e')],function(_0x22ab50){return{'name':_0x22ab50[_0x170b('0x2f')],'type':_0x22ab50[_0x170b('0x30')]['key']};});_0x8fae78['model']=_[_0x170b('0x2c')](_0x446b48,_0x170b('0x2a'));_0x8fae78['query']=_[_0x170b('0x31')](_0x334ce2[_0x170b('0x32')]);_0x8fae78['filters']=_['intersection'](_0x8fae78[_0x170b('0x33')],_0x8fae78['query']);_0xa9203c[_0x170b('0x34')]=_[_0x170b('0x35')](_0x8fae78[_0x170b('0x33')],qs[_0x170b('0x36')](_0x334ce2['query'][_0x170b('0x36')]));_0xa9203c[_0x170b('0x34')]=_0xa9203c[_0x170b('0x34')][_0x170b('0x37')]?_0xa9203c[_0x170b('0x34')]:_0x8fae78['model'];if(!_0x334ce2[_0x170b('0x32')][_0x170b('0x38')](_0x170b('0x39'))){_0xa9203c['limit']=qs[_0x170b('0x1f')](_0x334ce2[_0x170b('0x32')][_0x170b('0x1f')]);_0xa9203c[_0x170b('0x1d')]=qs[_0x170b('0x1d')](_0x334ce2[_0x170b('0x32')][_0x170b('0x1d')]);}_0xa9203c['order']=qs[_0x170b('0x3a')](_0x334ce2[_0x170b('0x32')][_0x170b('0x3a')]);_0xa9203c[_0x170b('0x3b')]=qs[_0x170b('0x3c')](_[_0x170b('0x3d')](_0x334ce2[_0x170b('0x32')],_0x8fae78['filters']),_0x446b48);if(_0x334ce2['query'][_0x170b('0x3e')]){_0xa9203c['where']=_[_0x170b('0x3f')](_0xa9203c['where'],{'$or':_[_0x170b('0x2c')](_0x446b48,function(_0x7330b6){if(_0x7330b6['type']!=='VIRTUAL'){var _0x5cae42={};_0x5cae42[_0x7330b6[_0x170b('0x2a')]]={'$like':'%'+_0x334ce2['query'][_0x170b('0x3e')]+'%'};return _0x5cae42;}})});}_0xa9203c=_[_0x170b('0x3f')]({},_0xa9203c,_0x334ce2[_0x170b('0x40')]);var _0x3d102f={'where':_0xa9203c['where']};return db[_0x170b('0x2d')][_0x170b('0x20')](_0x3d102f)['then'](function(_0x101b5e){_0x4db6b3['count']=_0x101b5e;if(_0x334ce2[_0x170b('0x32')][_0x170b('0x41')]){_0xa9203c[_0x170b('0x42')]=[{'all':!![]}];}return db[_0x170b('0x2d')]['findAll'](_0xa9203c);})[_0x170b('0x26')](function(_0x14970b){_0x4db6b3[_0x170b('0x43')]=_0x14970b;return _0x4db6b3;})[_0x170b('0x26')](respondWithFilteredResult(_0x17a4ed,_0xa9203c))[_0x170b('0x44')](handleError(_0x17a4ed,null));};exports[_0x170b('0x45')]=function(_0x23142c,_0x59e7fc){var _0x251599={'raw':![],'where':{'id':_0x23142c[_0x170b('0x46')]['id']}},_0x1079bb={};_0x1079bb[_0x170b('0x33')]=_[_0x170b('0x31')](db[_0x170b('0x2d')][_0x170b('0x2e')]);_0x1079bb[_0x170b('0x32')]=_[_0x170b('0x31')](_0x23142c[_0x170b('0x32')]);_0x1079bb[_0x170b('0x3c')]=_['intersection'](_0x1079bb['model'],_0x1079bb[_0x170b('0x32')]);_0x251599[_0x170b('0x34')]=_[_0x170b('0x35')](_0x1079bb[_0x170b('0x33')],qs['fields'](_0x23142c['query'][_0x170b('0x36')]));_0x251599[_0x170b('0x34')]=_0x251599[_0x170b('0x34')][_0x170b('0x37')]?_0x251599[_0x170b('0x34')]:_0x1079bb['model'];if(_0x23142c['query'][_0x170b('0x41')]){_0x251599[_0x170b('0x42')]=[{'all':!![]}];}_0x251599=_[_0x170b('0x3f')]({},_0x251599,_0x23142c[_0x170b('0x40')]);return db[_0x170b('0x2d')][_0x170b('0x47')](_0x251599)[_0x170b('0x26')](handleEntityNotFound(_0x59e7fc,null))[_0x170b('0x26')](respondWithResult(_0x59e7fc,null))['catch'](handleError(_0x59e7fc,null));};exports[_0x170b('0x48')]=function(_0x1fdf4c,_0x5343e8){return db['SalesforceAccount'][_0x170b('0x48')](_0x1fdf4c[_0x170b('0x49')],{})[_0x170b('0x26')](respondWithResult(_0x5343e8,0xc9))['catch'](handleError(_0x5343e8,null));};exports['update']=function(_0x6814dd,_0x2f227d){if(_0x6814dd[_0x170b('0x49')]['id']){delete _0x6814dd[_0x170b('0x49')]['id'];}return db[_0x170b('0x2d')][_0x170b('0x47')]({'where':{'id':_0x6814dd[_0x170b('0x46')]['id']}})[_0x170b('0x26')](handleEntityNotFound(_0x2f227d,null))[_0x170b('0x26')](saveUpdates(_0x6814dd[_0x170b('0x49')],null))['then'](respondWithResult(_0x2f227d,null))['catch'](handleError(_0x2f227d,null));};exports[_0x170b('0x4a')]=function(_0x16222a,_0x1df24c){return db[_0x170b('0x2d')]['find']({'where':{'id':_0x16222a[_0x170b('0x46')]['id']}})[_0x170b('0x26')](handleEntityNotFound(_0x1df24c,null))['then'](removeEntity(_0x1df24c,null))['catch'](handleError(_0x1df24c,null));};exports['getConfigurations']=function(_0x43a4d8,_0x1a7954,_0x3cd088){var _0x5e8d2a={};var _0x118908={};var _0x252db3;var _0x4408c0;return db[_0x170b('0x2d')][_0x170b('0x4b')]({'where':{'id':_0x43a4d8[_0x170b('0x46')]['id']}})['then'](handleEntityNotFound(_0x1a7954,null))[_0x170b('0x26')](function(_0xe92316){if(_0xe92316){_0x252db3=_0xe92316;_0x118908[_0x170b('0x33')]=_[_0x170b('0x31')](db[_0x170b('0x4c')][_0x170b('0x2e')]);_0x118908['query']=_[_0x170b('0x31')](_0x43a4d8[_0x170b('0x32')]);_0x118908[_0x170b('0x3c')]=_[_0x170b('0x35')](_0x118908['model'],_0x118908[_0x170b('0x32')]);_0x5e8d2a[_0x170b('0x34')]=_[_0x170b('0x35')](_0x118908[_0x170b('0x33')],qs[_0x170b('0x36')](_0x43a4d8[_0x170b('0x32')][_0x170b('0x36')]));_0x5e8d2a[_0x170b('0x34')]=_0x5e8d2a[_0x170b('0x34')][_0x170b('0x37')]?_0x5e8d2a['attributes']:_0x118908[_0x170b('0x33')];_0x5e8d2a[_0x170b('0x4d')]=qs['sort'](_0x43a4d8[_0x170b('0x32')][_0x170b('0x3a')]);_0x5e8d2a['where']=qs['filters'](_[_0x170b('0x3d')](_0x43a4d8[_0x170b('0x32')],_0x118908['filters']));if(_0x43a4d8[_0x170b('0x32')][_0x170b('0x3e')]){_0x5e8d2a[_0x170b('0x3b')]=_[_0x170b('0x3f')](_0x5e8d2a[_0x170b('0x3b')],{'$or':_[_0x170b('0x2c')](_0x5e8d2a[_0x170b('0x34')],function(_0x205dbe){var _0x569970={};_0x569970[_0x205dbe]={'$like':'%'+_0x43a4d8[_0x170b('0x32')][_0x170b('0x3e')]+'%'};return _0x569970;})});}_0x5e8d2a=_['merge']({},_0x5e8d2a,_0x43a4d8[_0x170b('0x40')]);return _0x252db3[_0x170b('0x4e')](_0x5e8d2a);}})['then'](function(_0x6a07e){if(_0x6a07e){_0x4408c0=_0x6a07e[_0x170b('0x37')];if(!_0x43a4d8[_0x170b('0x32')]['hasOwnProperty']('nolimit')){_0x5e8d2a[_0x170b('0x1f')]=qs[_0x170b('0x1f')](_0x43a4d8['query'][_0x170b('0x1f')]);_0x5e8d2a['offset']=qs['offset'](_0x43a4d8[_0x170b('0x32')][_0x170b('0x1d')]);}return _0x252db3['getConfigurations'](_0x5e8d2a);}})[_0x170b('0x26')](function(_0xffb783){if(_0xffb783){return _0xffb783?{'count':_0x4408c0,'rows':_0xffb783}:null;}})[_0x170b('0x26')](respondWithResult(_0x1a7954,null))['catch'](handleError(_0x1a7954,null));};exports[_0x170b('0x4f')]=function(_0xc182d5,_0x3bc8e2,_0x1a11b3){if(_0xc182d5['body']['id']){delete _0xc182d5['body']['id'];}return db[_0x170b('0x2d')]['findOne']({'where':{'id':_0xc182d5['params']['id']}})['then'](handleEntityNotFound(_0x3bc8e2,null))[_0x170b('0x26')](function(_0x274a40){if(_0x274a40){_0xc182d5[_0x170b('0x49')][_0x170b('0x50')]=_0x274a40['id'];_0xc182d5[_0x170b('0x49')][_0x170b('0x51')]=integrations[_0x170b('0x52')](_0xc182d5['body'][_0x170b('0x53')],_0xc182d5[_0x170b('0x49')][_0x170b('0x30')]);_0xc182d5[_0x170b('0x49')][_0x170b('0x54')]=integrations[_0x170b('0x55')](_0xc182d5[_0x170b('0x49')][_0x170b('0x53')],_0xc182d5['body'][_0x170b('0x30')]);return db[_0x170b('0x4c')][_0x170b('0x48')](_0xc182d5[_0x170b('0x49')],{'include':[{'model':db[_0x170b('0x56')],'as':_0x170b('0x51')},{'model':db[_0x170b('0x56')],'as':'Descriptions'}]});}return null;})['then'](respondWithResult(_0x3bc8e2,null))[_0x170b('0x44')](handleError(_0x3bc8e2,null));};exports['getFields']=function(_0xc4eb52,_0x51f8e7,_0x14de69){var _0x29a18d;var _0x45b0d3='';var _0x30274e='Task';return db[_0x170b('0x2d')][_0x170b('0x4b')]({'where':{'id':_0xc4eb52['params']['id']},'attributes':['id',_0x170b('0x57'),_0x170b('0x58'),'clientSecret','username','password',_0x170b('0x59')]})[_0x170b('0x26')](handleEntityNotFound(_0x51f8e7,null))[_0x170b('0x26')](function(_0x221b27){if(_0x221b27){_0x45b0d3=_0x221b27['remoteUri'];var _0x181704=_0x45b0d3[_0x170b('0x5a')](-0x1);if(_0x181704==='/'){_0x45b0d3=_0x45b0d3[_0x170b('0x5b')](0x0,_0x45b0d3[_0x170b('0x5c')](_0x181704));}_0x29a18d=new jsforce[(_0x170b('0x5d'))]({'oauth2':{'loginUrl':_0x45b0d3,'clientId':_0x221b27[_0x170b('0x58')],'clientSecret':_0x221b27[_0x170b('0x5e')]}});return _0x29a18d[_0x170b('0x5f')](_0x221b27['username'],_0x221b27[_0x170b('0x60')][_0x170b('0x61')](_0x221b27[_0x170b('0x59')]));}})['then'](function(_0x4245eb){if(_0x4245eb){if(!_[_0x170b('0x62')](_0xc4eb52['query'][_0x170b('0x63')])){_0x30274e=_0xc4eb52['query']['ticketType'];}return _0x29a18d['sobject'](_0x30274e)[_0x170b('0x64')]();}})[_0x170b('0x26')](function(_0x19139d){var _0xd9c296=[_0x170b('0x65'),'ActivityDate',_0x170b('0x66'),'IsRecurrence',_0x170b('0x67'),_0x170b('0x68')];var _0x42decf=[_0x170b('0x69'),'int',_0x170b('0x6a'),_0x170b('0x6b'),_0x170b('0x6c'),_0x170b('0x6d'),_0x170b('0x6e')];if(_0x19139d){_[_0x170b('0x6f')](_0x19139d[_0x170b('0x36')],function(_0x135d9b){return _0xd9c296['includes'](_0x135d9b[_0x170b('0x2a')])||!_0x42decf[_0x170b('0x70')](_0x135d9b[_0x170b('0x30')]);});return{'count':_0x19139d[_0x170b('0x36')]['length'],'rows':_[_0x170b('0x2c')](_0x19139d[_0x170b('0x36')],function(_0x2d7373){return{'id':_0x2d7373[_0x170b('0x2a')],'name':_0x2d7373[_0x170b('0x71')],'custom':_0x2d7373[_0x170b('0x72')],'options':_0x2d7373[_0x170b('0x73')][_0x170b('0x37')]>0x0?_['map'](_0x2d7373['picklistValues'],function(_0x4964e7){return{'name':_0x4964e7[_0x170b('0x71')],'value':_0x4964e7[_0x170b('0x74')]};}):_0x2d7373['type']==_0x170b('0x6b')?[{'name':_0x170b('0x75'),'value':'true'},{'name':'False','value':_0x170b('0x76')}]:[]};})};}})['then'](respondWithResult(_0x51f8e7,null))[_0x170b('0x44')](function(_0x56143b){var _0x51f66c=_0xc4eb52[_0x170b('0x32')]['test']?0x1f4:_0x56143b[_0x170b('0x77')]||0x1f4;logger[_0x170b('0x78')](_0x170b('0x79'),'getFields',_0x51f66c,JSON[_0x170b('0x7a')](_0x56143b));delete _0x56143b[_0x170b('0x2a')];if(_0x51f66c===0x191){_0x51f66c=0x190;}_0x51f8e7[_0x170b('0x1b')](_0x51f66c)[_0x170b('0x2b')](_0xc4eb52[_0x170b('0x32')][_0x170b('0x7b')]?{'message':_0x170b('0x7c'),'statusCode':_0x56143b[_0x170b('0x77')]}:_0x56143b);});};