Built motion from commit (unavailable).|2.5.12
[motion2.git] / server / api / intVtigerAccount / intVtigerAccount.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 _0x938d=['substring','lastIndexOf','format','%s/webservice.php','getchallenge','success','POST','login','describe','result','sessionName','reference','owner','remove','false','label','startsWith','picklist','picklistValues','value','log','vTiger\x20error:\x20','test','getFields,\x20%s,\x20%s,\x20%s','Wrong\x20credentials','statusCode','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','mustache','util','path','to-csv','ejs','lodash','squel','crypto','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','../../components/integrations/configuration','jayson/promise','client','http','request','info','VtigerAccount,\x20%s,\x20%s','request\x20sent','stringify','error','code','message','catch','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','reject','update','then','destroy','stack','name','send','VtigerAccount','rawAttributes','fieldName','model','map','query','filters','intersection','attributes','fields','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','type','VIRTUAL','includeAll','findAll','rows','show','params','keys','length','include','options','find','create','body','getConfigurations','findOne','addConfiguration','getSubjects','channel','Descriptions','getDescriptions','VtigerConfiguration','VtigerField','md5','getFields','description','moduleName','serverUrl','username','accessKey','remoteUri','slice'];(function(_0xe89d97,_0x33e5ac){var _0x1b6e5d=function(_0x5618cb){while(--_0x5618cb){_0xe89d97['push'](_0xe89d97['shift']());}};_0x1b6e5d(++_0x33e5ac);}(_0x938d,0x122));var _0xd938=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x938d[_0x3dd15e];return _0x231fd0;};'use strict';var pdf=require(_0xd938('0x0'));var emlformat=require(_0xd938('0x1'));var rimraf=require('rimraf');var zipdir=require(_0xd938('0x2'));var jsonpatch=require(_0xd938('0x3'));var rp=require(_0xd938('0x4'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0xd938('0x5'));var util=require(_0xd938('0x6'));var path=require(_0xd938('0x7'));var sox=require('sox');var csv=require(_0xd938('0x8'));var ejs=require(_0xd938('0x9'));var fs=require('fs');var _=require(_0xd938('0xa'));var squel=require(_0xd938('0xb'));var crypto=require(_0xd938('0xc'));var jsforce=require(_0xd938('0xd'));var deskjs=require('desk.js');var toCsv=require(_0xd938('0x8'));var querystring=require(_0xd938('0xe'));var Papa=require(_0xd938('0xf'));var Redis=require(_0xd938('0x10'));var authService=require(_0xd938('0x11'));var qs=require(_0xd938('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xd938('0x13'));var logger=require(_0xd938('0x14'))(_0xd938('0x15'));var utils=require(_0xd938('0x16'));var config=require(_0xd938('0x17'));var licenseUtil=require(_0xd938('0x18'));var db=require(_0xd938('0x19'))['db'];var integrations=require(_0xd938('0x1a'));var jayson=require(_0xd938('0x1b'));var client=jayson[_0xd938('0x1c')][_0xd938('0x1d')]({'port':0x232a});function respondWithRpcPromise(_0x1c7b54,_0x2997b0,_0x542312,_0x4bebac){return new BPromise(function(_0x5c9f99,_0x2f07e7){var _0x12b804=_0x4bebac||client;return _0x12b804[_0xd938('0x1e')](_0x1c7b54,_0x542312)['then'](function(_0x525bce){logger[_0xd938('0x1f')](_0xd938('0x20'),_0x2997b0,'request\x20sent');logger['debug']('VtigerAccount,\x20%s,\x20%s,\x20%s',_0x2997b0,_0xd938('0x21'),JSON[_0xd938('0x22')](_0x525bce));if(_0x525bce[_0xd938('0x23')]){if(_0x525bce['error'][_0xd938('0x24')]===0x1f4){logger[_0xd938('0x23')](_0xd938('0x20'),_0x2997b0,_0x525bce[_0xd938('0x23')][_0xd938('0x25')]);return _0x2f07e7(_0x525bce['error'][_0xd938('0x25')]);}logger['error']('VtigerAccount,\x20%s,\x20%s',_0x2997b0,_0x525bce[_0xd938('0x23')]['message']);return _0x5c9f99(_0x525bce[_0xd938('0x23')][_0xd938('0x25')]);}else{logger[_0xd938('0x1f')](_0xd938('0x20'),_0x2997b0,_0xd938('0x21'));_0x5c9f99(_0x525bce['result'][_0xd938('0x25')]);}})[_0xd938('0x26')](function(_0x1193d1){logger[_0xd938('0x23')](_0xd938('0x20'),_0x2997b0,_0x1193d1);_0x2f07e7(_0x1193d1);});});}function respondWithStatusCode(_0x28f56a,_0x2f571b){_0x2f571b=_0x2f571b||0xcc;return function(_0x114e02){if(_0x114e02){return _0x28f56a[_0xd938('0x27')](_0x2f571b);}return _0x28f56a[_0xd938('0x28')](_0x2f571b)[_0xd938('0x29')]();};}function respondWithResult(_0x5bc216,_0x595d85){_0x595d85=_0x595d85||0xc8;return function(_0x30dbd7){if(_0x30dbd7){return _0x5bc216[_0xd938('0x28')](_0x595d85)[_0xd938('0x2a')](_0x30dbd7);}};}function respondWithFilteredResult(_0x5f2a67,_0x10044c){return function(_0x569bda){if(_0x569bda){var _0x1cd8aa=_0x569bda[_0xd938('0x2b')],_0x5e931d=_0x10044c[_0xd938('0x2c')],_0x43fc62=_0x10044c[_0xd938('0x2c')]+_0x10044c[_0xd938('0x2d')],_0x4972b5;if(_0x43fc62>=_0x1cd8aa){_0x43fc62=_0x1cd8aa;_0x4972b5=0xc8;}else{_0x4972b5=0xce;}_0x5f2a67['status'](_0x4972b5);return _0x5f2a67[_0xd938('0x2e')](_0xd938('0x2f'),_0x5e931d+'-'+_0x43fc62+'/'+_0x1cd8aa)[_0xd938('0x2a')](_0x569bda);}return null;};}function patchUpdates(_0x1ec5e5){return function(_0x58b7ac){try{jsonpatch[_0xd938('0x30')](_0x58b7ac,_0x1ec5e5,!![]);}catch(_0x350e6e){return BPromise[_0xd938('0x31')](_0x350e6e);}return _0x58b7ac['save']();};}function saveUpdates(_0x3ff1ce,_0x2d8fc0){return function(_0x3a4636){if(_0x3a4636){return _0x3a4636[_0xd938('0x32')](_0x3ff1ce)[_0xd938('0x33')](function(_0x3b5735){return _0x3b5735;});}return null;};}function removeEntity(_0x805c54,_0x327aaa){return function(_0x58c21d){if(_0x58c21d){return _0x58c21d[_0xd938('0x34')]()[_0xd938('0x33')](function(){_0x805c54[_0xd938('0x28')](0xcc)[_0xd938('0x29')]();});}};}function handleEntityNotFound(_0x5e2cbf,_0x106d11){return function(_0x101765){if(!_0x101765){_0x5e2cbf[_0xd938('0x27')](0x194);}return _0x101765;};}function handleError(_0xb3a114,_0x503190){_0x503190=_0x503190||0x1f4;return function(_0x29a978){logger[_0xd938('0x23')](_0x29a978[_0xd938('0x35')]);if(_0x29a978[_0xd938('0x36')]){delete _0x29a978['name'];}_0xb3a114[_0xd938('0x28')](_0x503190)[_0xd938('0x37')](_0x29a978);};}exports['index']=function(_0x128518,_0x598308){var _0x5c19d9={},_0x189e8b={},_0x216627={'count':0x0,'rows':[]};var _0x1ce438=_['map'](db[_0xd938('0x38')][_0xd938('0x39')],function(_0x4a6b1b){return{'name':_0x4a6b1b[_0xd938('0x3a')],'type':_0x4a6b1b['type']['key']};});_0x189e8b[_0xd938('0x3b')]=_[_0xd938('0x3c')](_0x1ce438,'name');_0x189e8b['query']=_['keys'](_0x128518[_0xd938('0x3d')]);_0x189e8b[_0xd938('0x3e')]=_[_0xd938('0x3f')](_0x189e8b[_0xd938('0x3b')],_0x189e8b[_0xd938('0x3d')]);_0x5c19d9[_0xd938('0x40')]=_['intersection'](_0x189e8b[_0xd938('0x3b')],qs[_0xd938('0x41')](_0x128518[_0xd938('0x3d')]['fields']));_0x5c19d9['attributes']=_0x5c19d9[_0xd938('0x40')]['length']?_0x5c19d9[_0xd938('0x40')]:_0x189e8b[_0xd938('0x3b')];if(!_0x128518[_0xd938('0x3d')][_0xd938('0x42')](_0xd938('0x43'))){_0x5c19d9[_0xd938('0x2d')]=qs[_0xd938('0x2d')](_0x128518['query'][_0xd938('0x2d')]);_0x5c19d9[_0xd938('0x2c')]=qs[_0xd938('0x2c')](_0x128518[_0xd938('0x3d')][_0xd938('0x2c')]);}_0x5c19d9[_0xd938('0x44')]=qs[_0xd938('0x45')](_0x128518['query'][_0xd938('0x45')]);_0x5c19d9[_0xd938('0x46')]=qs['filters'](_[_0xd938('0x47')](_0x128518[_0xd938('0x3d')],_0x189e8b['filters']),_0x1ce438);if(_0x128518[_0xd938('0x3d')][_0xd938('0x48')]){_0x5c19d9[_0xd938('0x46')]=_[_0xd938('0x49')](_0x5c19d9['where'],{'$or':_['map'](_0x1ce438,function(_0x1e0058){if(_0x1e0058[_0xd938('0x4a')]!==_0xd938('0x4b')){var _0x2c6408={};_0x2c6408[_0x1e0058[_0xd938('0x36')]]={'$like':'%'+_0x128518['query'][_0xd938('0x48')]+'%'};return _0x2c6408;}})});}_0x5c19d9=_[_0xd938('0x49')]({},_0x5c19d9,_0x128518['options']);var _0x3d101b={'where':_0x5c19d9['where']};return db[_0xd938('0x38')]['count'](_0x3d101b)['then'](function(_0x1c3910){_0x216627['count']=_0x1c3910;if(_0x128518[_0xd938('0x3d')][_0xd938('0x4c')]){_0x5c19d9['include']=[{'all':!![]}];}return db[_0xd938('0x38')][_0xd938('0x4d')](_0x5c19d9);})['then'](function(_0x2ce458){_0x216627[_0xd938('0x4e')]=_0x2ce458;return _0x216627;})['then'](respondWithFilteredResult(_0x598308,_0x5c19d9))[_0xd938('0x26')](handleError(_0x598308,null));};exports[_0xd938('0x4f')]=function(_0x7bdc2a,_0xbad87d){var _0x23f249={'raw':![],'where':{'id':_0x7bdc2a[_0xd938('0x50')]['id']}},_0x3cdac5={};_0x3cdac5['model']=_[_0xd938('0x51')](db[_0xd938('0x38')][_0xd938('0x39')]);_0x3cdac5[_0xd938('0x3d')]=_[_0xd938('0x51')](_0x7bdc2a[_0xd938('0x3d')]);_0x3cdac5['filters']=_[_0xd938('0x3f')](_0x3cdac5[_0xd938('0x3b')],_0x3cdac5[_0xd938('0x3d')]);_0x23f249[_0xd938('0x40')]=_[_0xd938('0x3f')](_0x3cdac5[_0xd938('0x3b')],qs[_0xd938('0x41')](_0x7bdc2a[_0xd938('0x3d')][_0xd938('0x41')]));_0x23f249[_0xd938('0x40')]=_0x23f249[_0xd938('0x40')][_0xd938('0x52')]?_0x23f249['attributes']:_0x3cdac5['model'];if(_0x7bdc2a['query'][_0xd938('0x4c')]){_0x23f249[_0xd938('0x53')]=[{'all':!![]}];}_0x23f249=_[_0xd938('0x49')]({},_0x23f249,_0x7bdc2a[_0xd938('0x54')]);return db[_0xd938('0x38')][_0xd938('0x55')](_0x23f249)[_0xd938('0x33')](handleEntityNotFound(_0xbad87d,null))['then'](respondWithResult(_0xbad87d,null))['catch'](handleError(_0xbad87d,null));};exports[_0xd938('0x56')]=function(_0xdae1e1,_0x2e6448){return db['VtigerAccount'][_0xd938('0x56')](_0xdae1e1[_0xd938('0x57')],{})['then'](respondWithResult(_0x2e6448,0xc9))['catch'](handleError(_0x2e6448,null));};exports[_0xd938('0x32')]=function(_0x5e8b21,_0x1b60d3){if(_0x5e8b21[_0xd938('0x57')]['id']){delete _0x5e8b21[_0xd938('0x57')]['id'];}return db[_0xd938('0x38')][_0xd938('0x55')]({'where':{'id':_0x5e8b21[_0xd938('0x50')]['id']}})[_0xd938('0x33')](handleEntityNotFound(_0x1b60d3,null))['then'](saveUpdates(_0x5e8b21[_0xd938('0x57')],null))[_0xd938('0x33')](respondWithResult(_0x1b60d3,null))[_0xd938('0x26')](handleError(_0x1b60d3,null));};exports['destroy']=function(_0x329b9d,_0x377e48){return db[_0xd938('0x38')][_0xd938('0x55')]({'where':{'id':_0x329b9d[_0xd938('0x50')]['id']}})['then'](handleEntityNotFound(_0x377e48,null))[_0xd938('0x33')](removeEntity(_0x377e48,null))[_0xd938('0x26')](handleError(_0x377e48,null));};exports[_0xd938('0x58')]=function(_0x3bc589,_0x155d4f,_0x5ea518){var _0x417820={};var _0x68b3bd={};var _0x14ffff;var _0x3f4151;return db[_0xd938('0x38')][_0xd938('0x59')]({'where':{'id':_0x3bc589[_0xd938('0x50')]['id']}})['then'](handleEntityNotFound(_0x155d4f,null))[_0xd938('0x33')](function(_0x253f9f){if(_0x253f9f){_0x14ffff=_0x253f9f;_0x68b3bd[_0xd938('0x3b')]=_['keys'](db['VtigerConfiguration'][_0xd938('0x39')]);_0x68b3bd[_0xd938('0x3d')]=_[_0xd938('0x51')](_0x3bc589[_0xd938('0x3d')]);_0x68b3bd[_0xd938('0x3e')]=_[_0xd938('0x3f')](_0x68b3bd[_0xd938('0x3b')],_0x68b3bd[_0xd938('0x3d')]);_0x417820[_0xd938('0x40')]=_[_0xd938('0x3f')](_0x68b3bd[_0xd938('0x3b')],qs['fields'](_0x3bc589[_0xd938('0x3d')][_0xd938('0x41')]));_0x417820['attributes']=_0x417820['attributes'][_0xd938('0x52')]?_0x417820[_0xd938('0x40')]:_0x68b3bd[_0xd938('0x3b')];_0x417820['order']=qs['sort'](_0x3bc589[_0xd938('0x3d')][_0xd938('0x45')]);_0x417820[_0xd938('0x46')]=qs[_0xd938('0x3e')](_[_0xd938('0x47')](_0x3bc589[_0xd938('0x3d')],_0x68b3bd[_0xd938('0x3e')]));if(_0x3bc589['query'][_0xd938('0x48')]){_0x417820['where']=_[_0xd938('0x49')](_0x417820[_0xd938('0x46')],{'$or':_[_0xd938('0x3c')](_0x417820['attributes'],function(_0x2a4b0b){var _0x122b20={};_0x122b20[_0x2a4b0b]={'$like':'%'+_0x3bc589[_0xd938('0x3d')]['filter']+'%'};return _0x122b20;})});}_0x417820=_[_0xd938('0x49')]({},_0x417820,_0x3bc589[_0xd938('0x54')]);return _0x14ffff[_0xd938('0x58')](_0x417820);}})[_0xd938('0x33')](function(_0x2ee4c5){if(_0x2ee4c5){_0x3f4151=_0x2ee4c5[_0xd938('0x52')];if(!_0x3bc589['query'][_0xd938('0x42')](_0xd938('0x43'))){_0x417820[_0xd938('0x2d')]=qs[_0xd938('0x2d')](_0x3bc589[_0xd938('0x3d')][_0xd938('0x2d')]);_0x417820[_0xd938('0x2c')]=qs['offset'](_0x3bc589[_0xd938('0x3d')][_0xd938('0x2c')]);}return _0x14ffff[_0xd938('0x58')](_0x417820);}})[_0xd938('0x33')](function(_0x9d0056){if(_0x9d0056){return _0x9d0056?{'count':_0x3f4151,'rows':_0x9d0056}:null;}})[_0xd938('0x33')](respondWithResult(_0x155d4f,null))[_0xd938('0x26')](handleError(_0x155d4f,null));};exports[_0xd938('0x5a')]=function(_0xefd10f,_0x234fb1,_0x493116){if(_0xefd10f[_0xd938('0x57')]['id']){delete _0xefd10f[_0xd938('0x57')]['id'];}return db[_0xd938('0x38')][_0xd938('0x59')]({'where':{'id':_0xefd10f[_0xd938('0x50')]['id']}})['then'](handleEntityNotFound(_0x234fb1,null))[_0xd938('0x33')](function(_0x4dfacf){if(_0x4dfacf){_0xefd10f[_0xd938('0x57')]['AccountId']=_0x4dfacf['id'];_0xefd10f[_0xd938('0x57')]['Subjects']=integrations[_0xd938('0x5b')](_0xefd10f[_0xd938('0x57')][_0xd938('0x5c')],_0xefd10f[_0xd938('0x57')][_0xd938('0x4a')]);_0xefd10f['body'][_0xd938('0x5d')]=integrations[_0xd938('0x5e')](_0xefd10f[_0xd938('0x57')]['channel'],_0xefd10f['body'][_0xd938('0x4a')]);return db[_0xd938('0x5f')][_0xd938('0x56')](_0xefd10f[_0xd938('0x57')],{'include':[{'model':db[_0xd938('0x60')],'as':'Subjects'},{'model':db['VtigerField'],'as':_0xd938('0x5d')}]});}return null;})[_0xd938('0x33')](respondWithResult(_0x234fb1,null))[_0xd938('0x26')](handleError(_0x234fb1,null));};var md5=require(_0xd938('0x61'));exports[_0xd938('0x62')]=function(_0x3a7abe,_0x483f3f,_0x9c2494){var _0x1aef4b=null;var _0x239afb=null;var _0x34b445=null;var _0x5a966d=null;var _0x3b68ae='';return db['VtigerAccount'][_0xd938('0x59')]({'where':{'id':_0x3a7abe[_0xd938('0x50')]['id']},'attributes':['id',_0xd938('0x36'),'username',_0xd938('0x63'),_0xd938('0x64'),'remoteUri',_0xd938('0x65'),'accessKey']})[_0xd938('0x33')](handleEntityNotFound(_0x483f3f,null))[_0xd938('0x33')](function(_0x2cf7fc){if(_0x2cf7fc){_0x1aef4b=_0x2cf7fc[_0xd938('0x66')];_0x239afb=_0x2cf7fc[_0xd938('0x67')];_0x34b445=_0x2cf7fc[_0xd938('0x64')];_0x3b68ae=_0x2cf7fc[_0xd938('0x68')];var _0x557dc3=_0x3b68ae[_0xd938('0x69')](-0x1);if(_0x557dc3==='/'){_0x3b68ae=_0x3b68ae[_0xd938('0x6a')](0x0,_0x3b68ae[_0xd938('0x6b')](_0x557dc3));}_0x5a966d=util[_0xd938('0x6c')](_0xd938('0x6d'),_0x3b68ae);var _0x594b64={'method':'GET','uri':_0x5a966d,'qs':{'operation':_0xd938('0x6e'),'username':_0x2cf7fc[_0xd938('0x66')]},'json':!![]};return rp(_0x594b64);}})[_0xd938('0x33')](function(_0x337ee2){if(_0x337ee2[_0xd938('0x6f')]){var _0x3658e0={'method':_0xd938('0x70'),'uri':_0x5a966d,'form':{'operation':_0xd938('0x71'),'username':_0x1aef4b,'accessKey':md5(_0x337ee2['result']['token']+_0x239afb)},'json':!![]};return rp(_0x3658e0);}})[_0xd938('0x33')](function(_0x594f49){if(_0x594f49[_0xd938('0x6f')]){var _0x4ab944={'method':'GET','uri':_0x5a966d,'qs':{'operation':_0xd938('0x72'),'username':_0x1aef4b,'sessionName':_0x594f49[_0xd938('0x73')][_0xd938('0x74')],'elementType':_0x34b445},'json':!![]};return rp(_0x4ab944);}})[_0xd938('0x33')](function(_0x1866cf){if(_0x1866cf[_0xd938('0x6f')]){var _0x5da69a=['autogenerated',_0xd938('0x75'),_0xd938('0x76')];_[_0xd938('0x77')](_0x1866cf[_0xd938('0x73')][_0xd938('0x41')],function(_0x49629c){return _0x5da69a['includes'](_0x49629c[_0xd938('0x4a')][_0xd938('0x36')]);});_[_0xd938('0x77')](_0x1866cf[_0xd938('0x73')][_0xd938('0x41')],function(_0x3fb30c){return _0x3fb30c['editable']===_0xd938('0x78');});return{'count':_0x1866cf[_0xd938('0x73')][_0xd938('0x41')][_0xd938('0x52')],'rows':_['map'](_0x1866cf['result'][_0xd938('0x41')],function(_0x3f51d6){return{'id':_0x3f51d6[_0xd938('0x36')],'name':_0x3f51d6[_0xd938('0x79')],'custom':_[_0xd938('0x7a')](_0x3f51d6[_0xd938('0x36')],'cf_')?!![]:![],'options':_0x3f51d6[_0xd938('0x4a')][_0xd938('0x36')]===_0xd938('0x7b')&&_0x3f51d6[_0xd938('0x4a')]['picklistValues'][_0xd938('0x52')]>0x0?_[_0xd938('0x3c')](_0x3f51d6[_0xd938('0x4a')][_0xd938('0x7c')],function(_0x2ff921){return{'name':_0x2ff921[_0xd938('0x79')],'value':_0x2ff921[_0xd938('0x7d')]};}):[]};})};}})[_0xd938('0x33')](respondWithResult(_0x483f3f,null))[_0xd938('0x26')](function(_0x2e95f8){console[_0xd938('0x7e')](_0xd938('0x7f')+_0x2e95f8);var _0x19ba23=_0x3a7abe['query'][_0xd938('0x80')]?0x1f4:_0x2e95f8['statusCode']||0x1f4;logger[_0xd938('0x23')](_0xd938('0x81'),'getFields',_0x19ba23,JSON['stringify'](_0x2e95f8));delete _0x2e95f8[_0xd938('0x36')];if(_0x19ba23===0x191){_0x19ba23=0x190;}_0x483f3f[_0xd938('0x28')](_0x19ba23)[_0xd938('0x37')](_0x3a7abe[_0xd938('0x3d')][_0xd938('0x80')]?{'message':_0xd938('0x82'),'statusCode':_0x2e95f8[_0xd938('0x83')]}:_0x2e95f8);});};