Built motion from commit (unavailable).|2.5.17
[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 _0xd6f7=['order','sort','where','filters','filter','merge','type','VIRTUAL','options','includeAll','findAll','rows','catch','params','include','find','create','body','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','util','path','sox','to-csv','ejs','lodash','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','json','count','offset','limit','set','Content-Range','reject','update','then','destroy','end','stack','name','index','map','CloudProvider','rawAttributes','fieldName','model','query','keys','intersection','fields','attributes','length','hasOwnProperty','nolimit'];(function(_0x4cefbc,_0x3ffa6c){var _0x423c86=function(_0x3554eb){while(--_0x3554eb){_0x4cefbc['push'](_0x4cefbc['shift']());}};_0x423c86(++_0x3ffa6c);}(_0xd6f7,0xed));var _0x7d6f=function(_0x12d6c2,_0x409bc8){_0x12d6c2=_0x12d6c2-0x0;var _0x1c9825=_0xd6f7[_0x12d6c2];return _0x1c9825;};'use strict';var pdf=require(_0x7d6f('0x0'));var emlformat=require(_0x7d6f('0x1'));var rimraf=require(_0x7d6f('0x2'));var zipdir=require(_0x7d6f('0x3'));var jsonpatch=require(_0x7d6f('0x4'));var rp=require(_0x7d6f('0x5'));var moment=require('moment');var BPromise=require(_0x7d6f('0x6'));var Mustache=require('mustache');var util=require(_0x7d6f('0x7'));var path=require(_0x7d6f('0x8'));var sox=require(_0x7d6f('0x9'));var csv=require(_0x7d6f('0xa'));var ejs=require(_0x7d6f('0xb'));var fs=require('fs');var _=require(_0x7d6f('0xc'));var squel=require('squel');var crypto=require(_0x7d6f('0xd'));var jsforce=require(_0x7d6f('0xe'));var deskjs=require(_0x7d6f('0xf'));var toCsv=require(_0x7d6f('0xa'));var querystring=require(_0x7d6f('0x10'));var Papa=require('papaparse');var Redis=require(_0x7d6f('0x11'));var authService=require(_0x7d6f('0x12'));var qs=require(_0x7d6f('0x13'));var as=require(_0x7d6f('0x14'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x7d6f('0x15'))(_0x7d6f('0x16'));var utils=require(_0x7d6f('0x17'));var config=require(_0x7d6f('0x18'));var licenseUtil=require('../../config/license/util');var db=require(_0x7d6f('0x19'))['db'];function respondWithStatusCode(_0x179919,_0xc0dffd){_0xc0dffd=_0xc0dffd||0xcc;return function(_0x43bc6e){if(_0x43bc6e){return _0x179919[_0x7d6f('0x1a')](_0xc0dffd);}return _0x179919[_0x7d6f('0x1b')](_0xc0dffd)['end']();};}function respondWithResult(_0x1b0b2a,_0x15e998){_0x15e998=_0x15e998||0xc8;return function(_0x12c748){if(_0x12c748){return _0x1b0b2a[_0x7d6f('0x1b')](_0x15e998)[_0x7d6f('0x1c')](_0x12c748);}};}function respondWithFilteredResult(_0x1fc945,_0x2a3817){return function(_0xebbe24){if(_0xebbe24){var _0x3299ae=_0xebbe24[_0x7d6f('0x1d')],_0x1f17d8=_0x2a3817[_0x7d6f('0x1e')],_0x662d8c=_0x2a3817[_0x7d6f('0x1e')]+_0x2a3817[_0x7d6f('0x1f')],_0x39e631;if(_0x662d8c>=_0x3299ae){_0x662d8c=_0x3299ae;_0x39e631=0xc8;}else{_0x39e631=0xce;}_0x1fc945[_0x7d6f('0x1b')](_0x39e631);return _0x1fc945[_0x7d6f('0x20')](_0x7d6f('0x21'),_0x1f17d8+'-'+_0x662d8c+'/'+_0x3299ae)[_0x7d6f('0x1c')](_0xebbe24);}return null;};}function patchUpdates(_0x49338c){return function(_0x5d7050){try{jsonpatch['apply'](_0x5d7050,_0x49338c,!![]);}catch(_0x14e2d8){return BPromise[_0x7d6f('0x22')](_0x14e2d8);}return _0x5d7050['save']();};}function saveUpdates(_0x4a0c06,_0x353d4a){return function(_0x395570){if(_0x395570){return _0x395570[_0x7d6f('0x23')](_0x4a0c06)[_0x7d6f('0x24')](function(_0x2ba665){return _0x2ba665;});}return null;};}function removeEntity(_0x304a6d,_0x560158){return function(_0x5a3f0b){if(_0x5a3f0b){return _0x5a3f0b[_0x7d6f('0x25')]()[_0x7d6f('0x24')](function(){_0x304a6d[_0x7d6f('0x1b')](0xcc)[_0x7d6f('0x26')]();});}};}function handleEntityNotFound(_0x381f6d,_0x1f3673){return function(_0x50cbc8){if(!_0x50cbc8){_0x381f6d[_0x7d6f('0x1a')](0x194);}return _0x50cbc8;};}function handleError(_0x2b8754,_0x3d0bcc){_0x3d0bcc=_0x3d0bcc||0x1f4;return function(_0x27129a){logger['error'](_0x27129a[_0x7d6f('0x27')]);if(_0x27129a[_0x7d6f('0x28')]){delete _0x27129a[_0x7d6f('0x28')];}_0x2b8754[_0x7d6f('0x1b')](_0x3d0bcc)['send'](_0x27129a);};}exports[_0x7d6f('0x29')]=function(_0x2add7c,_0x164a37){var _0x331bb5={},_0x14bf80={},_0xe2d40b={'count':0x0,'rows':[]};var _0x478f76=_[_0x7d6f('0x2a')](db[_0x7d6f('0x2b')][_0x7d6f('0x2c')],function(_0x583aee){return{'name':_0x583aee[_0x7d6f('0x2d')],'type':_0x583aee['type']['key']};});_0x14bf80[_0x7d6f('0x2e')]=_['map'](_0x478f76,'name');_0x14bf80[_0x7d6f('0x2f')]=_[_0x7d6f('0x30')](_0x2add7c[_0x7d6f('0x2f')]);_0x14bf80['filters']=_[_0x7d6f('0x31')](_0x14bf80[_0x7d6f('0x2e')],_0x14bf80[_0x7d6f('0x2f')]);_0x331bb5['attributes']=_[_0x7d6f('0x31')](_0x14bf80[_0x7d6f('0x2e')],qs[_0x7d6f('0x32')](_0x2add7c[_0x7d6f('0x2f')][_0x7d6f('0x32')]));_0x331bb5['attributes']=_0x331bb5[_0x7d6f('0x33')][_0x7d6f('0x34')]?_0x331bb5['attributes']:_0x14bf80[_0x7d6f('0x2e')];if(!_0x2add7c[_0x7d6f('0x2f')][_0x7d6f('0x35')](_0x7d6f('0x36'))){_0x331bb5[_0x7d6f('0x1f')]=qs[_0x7d6f('0x1f')](_0x2add7c[_0x7d6f('0x2f')]['limit']);_0x331bb5['offset']=qs['offset'](_0x2add7c['query'][_0x7d6f('0x1e')]);}_0x331bb5[_0x7d6f('0x37')]=qs['sort'](_0x2add7c['query'][_0x7d6f('0x38')]);_0x331bb5[_0x7d6f('0x39')]=qs[_0x7d6f('0x3a')](_['pick'](_0x2add7c[_0x7d6f('0x2f')],_0x14bf80[_0x7d6f('0x3a')]),_0x478f76);if(_0x2add7c[_0x7d6f('0x2f')][_0x7d6f('0x3b')]){_0x331bb5[_0x7d6f('0x39')]=_[_0x7d6f('0x3c')](_0x331bb5[_0x7d6f('0x39')],{'$or':_[_0x7d6f('0x2a')](_0x478f76,function(_0x5b2d02){if(_0x5b2d02[_0x7d6f('0x3d')]!==_0x7d6f('0x3e')){var _0x134f68={};_0x134f68[_0x5b2d02[_0x7d6f('0x28')]]={'$like':'%'+_0x2add7c[_0x7d6f('0x2f')][_0x7d6f('0x3b')]+'%'};return _0x134f68;}})});}_0x331bb5=_['merge']({},_0x331bb5,_0x2add7c[_0x7d6f('0x3f')]);var _0x3d0473={'where':_0x331bb5['where']};return db[_0x7d6f('0x2b')][_0x7d6f('0x1d')](_0x3d0473)['then'](function(_0x50c251){_0xe2d40b[_0x7d6f('0x1d')]=_0x50c251;if(_0x2add7c[_0x7d6f('0x2f')][_0x7d6f('0x40')]){_0x331bb5['include']=[{'all':!![]}];}return db['CloudProvider'][_0x7d6f('0x41')](_0x331bb5);})[_0x7d6f('0x24')](function(_0x262d95){_0xe2d40b[_0x7d6f('0x42')]=_0x262d95;return _0xe2d40b;})[_0x7d6f('0x24')](respondWithFilteredResult(_0x164a37,_0x331bb5))[_0x7d6f('0x43')](handleError(_0x164a37,null));};exports['show']=function(_0x152279,_0x15c02d){var _0x259c48={'raw':!![],'where':{'id':_0x152279[_0x7d6f('0x44')]['id']}},_0x5898d4={};_0x5898d4['model']=_[_0x7d6f('0x30')](db[_0x7d6f('0x2b')][_0x7d6f('0x2c')]);_0x5898d4['query']=_[_0x7d6f('0x30')](_0x152279[_0x7d6f('0x2f')]);_0x5898d4['filters']=_[_0x7d6f('0x31')](_0x5898d4[_0x7d6f('0x2e')],_0x5898d4['query']);_0x259c48[_0x7d6f('0x33')]=_['intersection'](_0x5898d4[_0x7d6f('0x2e')],qs[_0x7d6f('0x32')](_0x152279[_0x7d6f('0x2f')][_0x7d6f('0x32')]));_0x259c48[_0x7d6f('0x33')]=_0x259c48['attributes']['length']?_0x259c48['attributes']:_0x5898d4['model'];if(_0x152279[_0x7d6f('0x2f')]['includeAll']){_0x259c48[_0x7d6f('0x45')]=[{'all':!![]}];}_0x259c48=_[_0x7d6f('0x3c')]({},_0x259c48,_0x152279['options']);return db[_0x7d6f('0x2b')][_0x7d6f('0x46')](_0x259c48)[_0x7d6f('0x24')](handleEntityNotFound(_0x15c02d,null))[_0x7d6f('0x24')](respondWithResult(_0x15c02d,null))['catch'](handleError(_0x15c02d,null));};exports[_0x7d6f('0x47')]=function(_0xf6ce6c,_0x47b9e7){return db[_0x7d6f('0x2b')][_0x7d6f('0x47')](_0xf6ce6c[_0x7d6f('0x48')],{})[_0x7d6f('0x24')](respondWithResult(_0x47b9e7,0xc9))[_0x7d6f('0x43')](handleError(_0x47b9e7,null));};exports[_0x7d6f('0x23')]=function(_0x4b67fd,_0x1b206b){if(_0x4b67fd['body']['id']){delete _0x4b67fd['body']['id'];}return db['CloudProvider'][_0x7d6f('0x46')]({'where':{'id':_0x4b67fd[_0x7d6f('0x44')]['id']}})['then'](handleEntityNotFound(_0x1b206b,null))[_0x7d6f('0x24')](saveUpdates(_0x4b67fd[_0x7d6f('0x48')],null))[_0x7d6f('0x24')](respondWithResult(_0x1b206b,null))['catch'](handleError(_0x1b206b,null));};exports[_0x7d6f('0x25')]=function(_0x4ec274,_0x3f88cb){return db['CloudProvider'][_0x7d6f('0x46')]({'where':{'id':_0x4ec274[_0x7d6f('0x44')]['id']}})[_0x7d6f('0x24')](handleEntityNotFound(_0x3f88cb,null))[_0x7d6f('0x24')](removeEntity(_0x3f88cb,null))[_0x7d6f('0x43')](handleError(_0x3f88cb,null));};