Built motion from commit (unavailable).|2.5.13
[motion2.git] / server / api / cloudProvider / cloudProvider.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 _0xb584=['filter','merge','VIRTUAL','CloudProvider','includeAll','include','findAll','rows','catch','params','intersection','options','find','create','update','body','destroy','rimraf','fast-json-patch','moment','bluebird','mustache','util','path','sox','to-csv','ejs','crypto','jsforce','desk.js','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','json','count','offset','limit','status','set','Content-Range','apply','reject','save','then','end','error','stack','name','map','rawAttributes','fieldName','type','model','keys','query','filters','attributes','fields','length','hasOwnProperty','nolimit','sort','where','pick'];(function(_0x19950b,_0x53d0d7){var _0x3c6b41=function(_0x3924ad){while(--_0x3924ad){_0x19950b['push'](_0x19950b['shift']());}};_0x3c6b41(++_0x53d0d7);}(_0xb584,0x1c1));var _0x4b58=function(_0xea8571,_0x2247b9){_0xea8571=_0xea8571-0x0;var _0x33cbd3=_0xb584[_0xea8571];return _0x33cbd3;};'use strict';var pdf=require('html-pdf');var emlformat=require('eml-format');var rimraf=require(_0x4b58('0x0'));var zipdir=require('zip-dir');var jsonpatch=require(_0x4b58('0x1'));var rp=require('request-promise');var moment=require(_0x4b58('0x2'));var BPromise=require(_0x4b58('0x3'));var Mustache=require(_0x4b58('0x4'));var util=require(_0x4b58('0x5'));var path=require(_0x4b58('0x6'));var sox=require(_0x4b58('0x7'));var csv=require(_0x4b58('0x8'));var ejs=require(_0x4b58('0x9'));var fs=require('fs');var _=require('lodash');var squel=require('squel');var crypto=require(_0x4b58('0xa'));var jsforce=require(_0x4b58('0xb'));var deskjs=require(_0x4b58('0xc'));var toCsv=require(_0x4b58('0x8'));var querystring=require('querystring');var Papa=require(_0x4b58('0xd'));var Redis=require(_0x4b58('0xe'));var authService=require('../../components/auth/service');var qs=require(_0x4b58('0xf'));var as=require(_0x4b58('0x10'));var hardwareService=require(_0x4b58('0x11'));var logger=require(_0x4b58('0x12'))(_0x4b58('0x13'));var utils=require('../../config/utils');var config=require(_0x4b58('0x14'));var licenseUtil=require(_0x4b58('0x15'));var db=require(_0x4b58('0x16'))['db'];function respondWithStatusCode(_0xc60643,_0x4863e5){_0x4863e5=_0x4863e5||0xcc;return function(_0x272239){if(_0x272239){return _0xc60643[_0x4b58('0x17')](_0x4863e5);}return _0xc60643['status'](_0x4863e5)['end']();};}function respondWithResult(_0x44f015,_0x354876){_0x354876=_0x354876||0xc8;return function(_0xc34c50){if(_0xc34c50){return _0x44f015['status'](_0x354876)[_0x4b58('0x18')](_0xc34c50);}};}function respondWithFilteredResult(_0xe0da74,_0x34d82c){return function(_0x5a1a8e){if(_0x5a1a8e){var _0x4b55de=_0x5a1a8e[_0x4b58('0x19')],_0x1f0d2e=_0x34d82c[_0x4b58('0x1a')],_0x337f88=_0x34d82c['offset']+_0x34d82c[_0x4b58('0x1b')],_0x21c61c;if(_0x337f88>=_0x4b55de){_0x337f88=_0x4b55de;_0x21c61c=0xc8;}else{_0x21c61c=0xce;}_0xe0da74[_0x4b58('0x1c')](_0x21c61c);return _0xe0da74[_0x4b58('0x1d')](_0x4b58('0x1e'),_0x1f0d2e+'-'+_0x337f88+'/'+_0x4b55de)[_0x4b58('0x18')](_0x5a1a8e);}return null;};}function patchUpdates(_0x1b1a88){return function(_0x49f825){try{jsonpatch[_0x4b58('0x1f')](_0x49f825,_0x1b1a88,!![]);}catch(_0x4374ac){return BPromise[_0x4b58('0x20')](_0x4374ac);}return _0x49f825[_0x4b58('0x21')]();};}function saveUpdates(_0x25c737,_0x170246){return function(_0x18f8be){if(_0x18f8be){return _0x18f8be['update'](_0x25c737)[_0x4b58('0x22')](function(_0x513f42){return _0x513f42;});}return null;};}function removeEntity(_0x59715c,_0x32130b){return function(_0x21aa1c){if(_0x21aa1c){return _0x21aa1c['destroy']()['then'](function(){_0x59715c[_0x4b58('0x1c')](0xcc)[_0x4b58('0x23')]();});}};}function handleEntityNotFound(_0x185c7d,_0x30e57e){return function(_0x1fefbf){if(!_0x1fefbf){_0x185c7d[_0x4b58('0x17')](0x194);}return _0x1fefbf;};}function handleError(_0x4926d5,_0x296caa){_0x296caa=_0x296caa||0x1f4;return function(_0x42eff5){logger[_0x4b58('0x24')](_0x42eff5[_0x4b58('0x25')]);if(_0x42eff5[_0x4b58('0x26')]){delete _0x42eff5['name'];}_0x4926d5[_0x4b58('0x1c')](_0x296caa)['send'](_0x42eff5);};}exports['index']=function(_0x145de4,_0x373279){var _0x25b6c9={},_0x4a1a4c={},_0x3d052e={'count':0x0,'rows':[]};var _0x51ebb6=_[_0x4b58('0x27')](db['CloudProvider'][_0x4b58('0x28')],function(_0xf90b40){return{'name':_0xf90b40[_0x4b58('0x29')],'type':_0xf90b40[_0x4b58('0x2a')]['key']};});_0x4a1a4c[_0x4b58('0x2b')]=_[_0x4b58('0x27')](_0x51ebb6,'name');_0x4a1a4c['query']=_[_0x4b58('0x2c')](_0x145de4[_0x4b58('0x2d')]);_0x4a1a4c[_0x4b58('0x2e')]=_['intersection'](_0x4a1a4c[_0x4b58('0x2b')],_0x4a1a4c[_0x4b58('0x2d')]);_0x25b6c9[_0x4b58('0x2f')]=_['intersection'](_0x4a1a4c[_0x4b58('0x2b')],qs[_0x4b58('0x30')](_0x145de4[_0x4b58('0x2d')][_0x4b58('0x30')]));_0x25b6c9[_0x4b58('0x2f')]=_0x25b6c9[_0x4b58('0x2f')][_0x4b58('0x31')]?_0x25b6c9['attributes']:_0x4a1a4c[_0x4b58('0x2b')];if(!_0x145de4[_0x4b58('0x2d')][_0x4b58('0x32')](_0x4b58('0x33'))){_0x25b6c9[_0x4b58('0x1b')]=qs[_0x4b58('0x1b')](_0x145de4[_0x4b58('0x2d')]['limit']);_0x25b6c9['offset']=qs[_0x4b58('0x1a')](_0x145de4[_0x4b58('0x2d')][_0x4b58('0x1a')]);}_0x25b6c9['order']=qs[_0x4b58('0x34')](_0x145de4[_0x4b58('0x2d')][_0x4b58('0x34')]);_0x25b6c9[_0x4b58('0x35')]=qs[_0x4b58('0x2e')](_[_0x4b58('0x36')](_0x145de4[_0x4b58('0x2d')],_0x4a1a4c[_0x4b58('0x2e')]),_0x51ebb6);if(_0x145de4[_0x4b58('0x2d')][_0x4b58('0x37')]){_0x25b6c9[_0x4b58('0x35')]=_[_0x4b58('0x38')](_0x25b6c9[_0x4b58('0x35')],{'$or':_[_0x4b58('0x27')](_0x51ebb6,function(_0xbf96a3){if(_0xbf96a3[_0x4b58('0x2a')]!==_0x4b58('0x39')){var _0x1d39a5={};_0x1d39a5[_0xbf96a3[_0x4b58('0x26')]]={'$like':'%'+_0x145de4[_0x4b58('0x2d')][_0x4b58('0x37')]+'%'};return _0x1d39a5;}})});}_0x25b6c9=_[_0x4b58('0x38')]({},_0x25b6c9,_0x145de4['options']);var _0x3e3d7c={'where':_0x25b6c9[_0x4b58('0x35')]};return db[_0x4b58('0x3a')]['count'](_0x3e3d7c)[_0x4b58('0x22')](function(_0x5a490e){_0x3d052e[_0x4b58('0x19')]=_0x5a490e;if(_0x145de4[_0x4b58('0x2d')][_0x4b58('0x3b')]){_0x25b6c9[_0x4b58('0x3c')]=[{'all':!![]}];}return db['CloudProvider'][_0x4b58('0x3d')](_0x25b6c9);})[_0x4b58('0x22')](function(_0x279180){_0x3d052e[_0x4b58('0x3e')]=_0x279180;return _0x3d052e;})[_0x4b58('0x22')](respondWithFilteredResult(_0x373279,_0x25b6c9))[_0x4b58('0x3f')](handleError(_0x373279,null));};exports['show']=function(_0x4c9fa7,_0x32296a){var _0x18bcfc={'raw':!![],'where':{'id':_0x4c9fa7[_0x4b58('0x40')]['id']}},_0x16fd94={};_0x16fd94[_0x4b58('0x2b')]=_['keys'](db['CloudProvider']['rawAttributes']);_0x16fd94[_0x4b58('0x2d')]=_['keys'](_0x4c9fa7[_0x4b58('0x2d')]);_0x16fd94[_0x4b58('0x2e')]=_['intersection'](_0x16fd94[_0x4b58('0x2b')],_0x16fd94['query']);_0x18bcfc[_0x4b58('0x2f')]=_[_0x4b58('0x41')](_0x16fd94[_0x4b58('0x2b')],qs[_0x4b58('0x30')](_0x4c9fa7[_0x4b58('0x2d')]['fields']));_0x18bcfc['attributes']=_0x18bcfc[_0x4b58('0x2f')]['length']?_0x18bcfc[_0x4b58('0x2f')]:_0x16fd94[_0x4b58('0x2b')];if(_0x4c9fa7[_0x4b58('0x2d')]['includeAll']){_0x18bcfc['include']=[{'all':!![]}];}_0x18bcfc=_[_0x4b58('0x38')]({},_0x18bcfc,_0x4c9fa7[_0x4b58('0x42')]);return db['CloudProvider'][_0x4b58('0x43')](_0x18bcfc)['then'](handleEntityNotFound(_0x32296a,null))[_0x4b58('0x22')](respondWithResult(_0x32296a,null))[_0x4b58('0x3f')](handleError(_0x32296a,null));};exports[_0x4b58('0x44')]=function(_0x4c1569,_0x4e4203){return db[_0x4b58('0x3a')][_0x4b58('0x44')](_0x4c1569['body'],{})['then'](respondWithResult(_0x4e4203,0xc9))[_0x4b58('0x3f')](handleError(_0x4e4203,null));};exports[_0x4b58('0x45')]=function(_0x48215b,_0x659752){if(_0x48215b[_0x4b58('0x46')]['id']){delete _0x48215b[_0x4b58('0x46')]['id'];}return db[_0x4b58('0x3a')]['find']({'where':{'id':_0x48215b[_0x4b58('0x40')]['id']}})[_0x4b58('0x22')](handleEntityNotFound(_0x659752,null))[_0x4b58('0x22')](saveUpdates(_0x48215b[_0x4b58('0x46')],null))['then'](respondWithResult(_0x659752,null))[_0x4b58('0x3f')](handleError(_0x659752,null));};exports[_0x4b58('0x47')]=function(_0x2d9ff9,_0x1f2b1a){return db[_0x4b58('0x3a')][_0x4b58('0x43')]({'where':{'id':_0x2d9ff9[_0x4b58('0x40')]['id']}})[_0x4b58('0x22')](handleEntityNotFound(_0x1f2b1a,null))[_0x4b58('0x22')](removeEntity(_0x1f2b1a,null))[_0x4b58('0x3f')](handleError(_0x1f2b1a,null));};