Built motion from commit e0fa946e.|2.6.5
[motion2.git] / server / api / cloudProvider / cloudProvider.controller.js
index 0463710..4f621ea 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x4bc1=['get','state','Invalid\x20state\x20parameter','parse','base64','ascii','isValidIdToken','id_token','oauth2Claims','Unable\x20to\x20validate\x20id_token','del','code','data5','data6','refresh_token','startRefreshInterval','microsoftAuthorization:success','error','Invalid\x20authentication\x20state\x20parameter','message','ioredis','../../components/parsers/qs','../../components/encryptor','../../config/environment','api','./cloudProvider.oauth','redis','localhost','socket.io-emitter','sendStatus','status','end','json','undefined','limit','count','offset','set','Content-Range','update','then','destroy','stack','name','send','padEnd','slice','index','map','rawAttributes','fieldName','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','where','pick','filter','type','VIRTUAL','merge','options','includeAll','findAll','rows','service','data3','catch','show','params','CloudProvider','include','find','MicrosoftAzure','decryptString','create','body','Name\x20parameter\x20not\x20specified','Service\x20parameter\x20not\x20specified','values','Invalid\x20service\x20parameter.\x20Allowed\x20values:\x20','join','encryptString','oauth2MicrosoftAuthorize','findOne','generateMicrosoftAuthorizationUrl','user'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0x4bc1,0x1ef));var _0x14bc=function(_0x17080,_0x1f8671){_0x17080=_0x17080-0x0;var _0x29caae=_0x4bc1[_0x17080];return _0x29caae;};'use strict';var _=require('lodash');var Redis=require(_0x14bc('0x0'));var qs=require(_0x14bc('0x1'));var encryptor=require(_0x14bc('0x2'));var config=require(_0x14bc('0x3'));var logger=require('../../config/logger')(_0x14bc('0x4'));var db=require('../../mysqldb')['db'];var oauth=require(_0x14bc('0x5'));config[_0x14bc('0x6')]=_['defaults'](config[_0x14bc('0x6')],{'host':_0x14bc('0x7'),'port':0x18eb});var socket=require(_0x14bc('0x8'))(new Redis(config[_0x14bc('0x6')]));var redis=new Redis(config['redis']);function respondWithStatusCode(_0xaa84f,_0x47faaa){_0x47faaa=_0x47faaa||0xcc;return function(_0x3ff1a8){if(_0x3ff1a8){return _0xaa84f[_0x14bc('0x9')](_0x47faaa);}return _0xaa84f[_0x14bc('0xa')](_0x47faaa)[_0x14bc('0xb')]();};}function respondWithResult(_0x234513,_0x51b6aa){_0x51b6aa=_0x51b6aa||0xc8;return function(_0xda3b7a){if(_0xda3b7a){return _0x234513[_0x14bc('0xa')](_0x51b6aa)[_0x14bc('0xc')](_0xda3b7a);}};}function respondWithFilteredResult(_0x3af5b0,_0x184846){return function(_0x1308da){if(_0x1308da){var _0x1d557a=typeof _0x184846['offset']===_0x14bc('0xd')&&typeof _0x184846[_0x14bc('0xe')]===_0x14bc('0xd');var _0x289a93=_0x1308da[_0x14bc('0xf')];var _0x3f7205=_0x1d557a?0x0:_0x184846[_0x14bc('0x10')];var _0x4694c4=_0x1d557a?_0x1308da[_0x14bc('0xf')]:_0x184846[_0x14bc('0x10')]+_0x184846[_0x14bc('0xe')];var _0x28ad25;if(_0x4694c4>=_0x289a93){_0x4694c4=_0x289a93;_0x28ad25=0xc8;}else{_0x28ad25=0xce;}_0x3af5b0[_0x14bc('0xa')](_0x28ad25);return _0x3af5b0[_0x14bc('0x11')](_0x14bc('0x12'),_0x3f7205+'-'+_0x4694c4+'/'+_0x289a93)[_0x14bc('0xc')](_0x1308da);}return null;};}function saveUpdates(_0x35798c){return function(_0x2eae47){if(_0x2eae47){return _0x2eae47[_0x14bc('0x13')](_0x35798c)[_0x14bc('0x14')](function(_0x5927c2){return _0x5927c2;});}return null;};}function removeEntity(_0x1b5618){return function(_0x5f281a){if(_0x5f281a){return _0x5f281a[_0x14bc('0x15')]()[_0x14bc('0x14')](function(){_0x1b5618['status'](0xcc)[_0x14bc('0xb')]();});}};}function handleEntityNotFound(_0x3fcbc0){return function(_0x3f94f5){if(!_0x3f94f5){_0x3fcbc0['sendStatus'](0x194);}return _0x3f94f5;};}function handleError(_0x4f8213,_0x199d96){_0x199d96=_0x199d96||0x1f4;return function(_0x5f543f){logger['error'](_0x5f543f[_0x14bc('0x16')]);if(_0x5f543f[_0x14bc('0x17')]){delete _0x5f543f[_0x14bc('0x17')];}_0x4f8213['status'](_0x199d96)[_0x14bc('0x18')](_0x5f543f);};}function maskClientSecret(_0x5c0e96){return _[_0x14bc('0x19')](_0x5c0e96[_0x14bc('0x1a')](0x0,0x3),0x14,'*');}exports[_0x14bc('0x1b')]=function(_0x2d57a6,_0x54de13){var _0x4e5113={},_0x5b618c={},_0x1ecf35={'count':0x0,'rows':[]};var _0x54d0e9=_[_0x14bc('0x1c')](db['CloudProvider'][_0x14bc('0x1d')],function(_0x8d204e){return{'name':_0x8d204e[_0x14bc('0x1e')],'type':_0x8d204e['type'][_0x14bc('0x1f')]};});_0x5b618c[_0x14bc('0x20')]=_[_0x14bc('0x1c')](_0x54d0e9,_0x14bc('0x17'));_0x5b618c[_0x14bc('0x21')]=_[_0x14bc('0x22')](_0x2d57a6[_0x14bc('0x21')]);_0x5b618c[_0x14bc('0x23')]=_[_0x14bc('0x24')](_0x5b618c['model'],_0x5b618c[_0x14bc('0x21')]);_0x4e5113[_0x14bc('0x25')]=_[_0x14bc('0x24')](_0x5b618c[_0x14bc('0x20')],qs[_0x14bc('0x26')](_0x2d57a6[_0x14bc('0x21')][_0x14bc('0x26')]));_0x4e5113['attributes']=_0x4e5113[_0x14bc('0x25')][_0x14bc('0x27')]?_0x4e5113[_0x14bc('0x25')]:_0x5b618c[_0x14bc('0x20')];if(!_0x2d57a6[_0x14bc('0x21')][_0x14bc('0x28')](_0x14bc('0x29'))){_0x4e5113['limit']=qs['limit'](_0x2d57a6[_0x14bc('0x21')][_0x14bc('0xe')]);_0x4e5113[_0x14bc('0x10')]=qs['offset'](_0x2d57a6[_0x14bc('0x21')][_0x14bc('0x10')]);}_0x4e5113['order']=qs[_0x14bc('0x2a')](_0x2d57a6[_0x14bc('0x21')][_0x14bc('0x2a')]);_0x4e5113[_0x14bc('0x2b')]=qs['filters'](_[_0x14bc('0x2c')](_0x2d57a6[_0x14bc('0x21')],_0x5b618c[_0x14bc('0x23')]),_0x54d0e9);if(_0x2d57a6[_0x14bc('0x21')][_0x14bc('0x2d')]){_0x4e5113[_0x14bc('0x2b')]=_['merge'](_0x4e5113[_0x14bc('0x2b')],{'$or':_[_0x14bc('0x1c')](_0x54d0e9,function(_0x155912){if(_0x155912[_0x14bc('0x2e')]!==_0x14bc('0x2f')){var _0x244480={};_0x244480[_0x155912[_0x14bc('0x17')]]={'$like':'%'+_0x2d57a6[_0x14bc('0x21')][_0x14bc('0x2d')]+'%'};return _0x244480;}})});}_0x4e5113=_[_0x14bc('0x30')]({},_0x4e5113,_0x2d57a6[_0x14bc('0x31')]);var _0x36581f={'where':_0x4e5113['where']};return db['CloudProvider']['count'](_0x36581f)[_0x14bc('0x14')](function(_0x239df0){_0x1ecf35[_0x14bc('0xf')]=_0x239df0;if(_0x2d57a6[_0x14bc('0x21')][_0x14bc('0x32')]){_0x4e5113['include']=[{'all':!![]}];}return db['CloudProvider'][_0x14bc('0x33')](_0x4e5113);})[_0x14bc('0x14')](function(_0x564034){_0x1ecf35[_0x14bc('0x34')]=_['map'](_0x564034,function(_0x381a40){if(_0x381a40[_0x14bc('0x35')]==='MicrosoftAzure'){var _0x5d2af1=encryptor['decryptString'](_0x381a40[_0x14bc('0x36')]);_0x381a40['data3']=maskClientSecret(_0x5d2af1);}return _0x381a40;});return _0x1ecf35;})[_0x14bc('0x14')](respondWithFilteredResult(_0x54de13,_0x4e5113))[_0x14bc('0x37')](handleError(_0x54de13,null));};exports[_0x14bc('0x38')]=function(_0x216956,_0x2208e3){var _0x1ec46a={'raw':!![],'where':{'id':_0x216956[_0x14bc('0x39')]['id']}},_0x43f6e8={};_0x43f6e8['model']=_['keys'](db[_0x14bc('0x3a')][_0x14bc('0x1d')]);_0x43f6e8['query']=_['keys'](_0x216956[_0x14bc('0x21')]);_0x43f6e8[_0x14bc('0x23')]=_[_0x14bc('0x24')](_0x43f6e8['model'],_0x43f6e8['query']);_0x1ec46a['attributes']=_[_0x14bc('0x24')](_0x43f6e8[_0x14bc('0x20')],qs[_0x14bc('0x26')](_0x216956[_0x14bc('0x21')][_0x14bc('0x26')]));_0x1ec46a[_0x14bc('0x25')]=_0x1ec46a[_0x14bc('0x25')]['length']?_0x1ec46a[_0x14bc('0x25')]:_0x43f6e8[_0x14bc('0x20')];if(_0x216956[_0x14bc('0x21')]['includeAll']){_0x1ec46a[_0x14bc('0x3b')]=[{'all':!![]}];}_0x1ec46a=_[_0x14bc('0x30')]({},_0x1ec46a,_0x216956[_0x14bc('0x31')]);return db[_0x14bc('0x3a')][_0x14bc('0x3c')](_0x1ec46a)[_0x14bc('0x14')](handleEntityNotFound(_0x2208e3,null))[_0x14bc('0x14')](function(_0x10f521){if(_0x10f521[_0x14bc('0x35')]===_0x14bc('0x3d')){var _0x1a2c2f=encryptor[_0x14bc('0x3e')](_0x10f521['data3']);_0x10f521[_0x14bc('0x36')]=maskClientSecret(_0x1a2c2f);}return _0x10f521;})['then'](respondWithResult(_0x2208e3,null))[_0x14bc('0x37')](handleError(_0x2208e3,null));};exports[_0x14bc('0x3f')]=function(_0x540e33,_0x9c9e74){if(!_0x540e33[_0x14bc('0x40')]['name'])throw new Error(_0x14bc('0x41'));if(!_0x540e33[_0x14bc('0x40')][_0x14bc('0x35')])throw new Error(_0x14bc('0x42'));var _0x52a300=db[_0x14bc('0x3a')][_0x14bc('0x1d')][_0x14bc('0x35')][_0x14bc('0x43')];if(!_0x52a300['includes'](_0x540e33[_0x14bc('0x40')][_0x14bc('0x35')]))throw new Error(_0x14bc('0x44')+_0x52a300[_0x14bc('0x45')](',\x20'));if(_0x540e33[_0x14bc('0x40')][_0x14bc('0x35')]===_0x14bc('0x3d')&&_0x540e33[_0x14bc('0x40')][_0x14bc('0x36')]){_0x540e33[_0x14bc('0x40')][_0x14bc('0x36')]=encryptor[_0x14bc('0x46')](_0x540e33['body'][_0x14bc('0x36')]);}return db[_0x14bc('0x3a')][_0x14bc('0x3f')](_0x540e33[_0x14bc('0x40')],{})['then'](respondWithResult(_0x9c9e74,0xc9))[_0x14bc('0x37')](handleError(_0x9c9e74,null));};exports[_0x14bc('0x13')]=function(_0x1c846b,_0x5dfa62){if(_0x1c846b[_0x14bc('0x40')]['id']){delete _0x1c846b[_0x14bc('0x40')]['id'];}return db[_0x14bc('0x3a')][_0x14bc('0x3c')]({'where':{'id':_0x1c846b[_0x14bc('0x39')]['id']}})[_0x14bc('0x14')](handleEntityNotFound(_0x5dfa62,null))['then'](function(_0x1941d2){if(_0x1941d2[_0x14bc('0x35')]===_0x14bc('0x3d')&&_0x1c846b['body'][_0x14bc('0x36')]){_0x1c846b[_0x14bc('0x40')][_0x14bc('0x36')]=encryptor['encryptString'](_0x1c846b[_0x14bc('0x40')]['data3']);}return _0x1941d2;})['then'](saveUpdates(_0x1c846b[_0x14bc('0x40')],null))[_0x14bc('0x14')](respondWithResult(_0x5dfa62,null))[_0x14bc('0x37')](handleError(_0x5dfa62,null));};exports[_0x14bc('0x15')]=function(_0x497637,_0x29c643){return db[_0x14bc('0x3a')][_0x14bc('0x3c')]({'where':{'id':_0x497637['params']['id']}})[_0x14bc('0x14')](handleEntityNotFound(_0x29c643,null))['then'](removeEntity(_0x29c643,null))[_0x14bc('0x37')](handleError(_0x29c643,null));};exports[_0x14bc('0x47')]=function(_0x431b32,_0xa219c3){return db[_0x14bc('0x3a')][_0x14bc('0x48')]({'where':{'id':_0x431b32['params']['id']},'raw':!![]})[_0x14bc('0x14')](function(_0x2ba79e){if(!_0x2ba79e)return _0xa219c3[_0x14bc('0x9')](0x194);return{'url':oauth[_0x14bc('0x49')](_0x2ba79e,_0x431b32[_0x14bc('0x4a')]['id'])};})[_0x14bc('0x14')](respondWithResult(_0xa219c3,null))[_0x14bc('0x37')](handleError(_0xa219c3,null));};exports['oauth2MicrosoftCallback']=function(_0x19a4bf,_0x449942){var _0x263235=_0x19a4bf['body'];var _0x15fbed;var _0x3e2a85;if(_0x263235['error'])throw _0x263235;redis[_0x14bc('0x4b')](_0x263235[_0x14bc('0x4c')])[_0x14bc('0x14')](function(_0x50a975){if(!_0x50a975)throw new Error(_0x14bc('0x4d'));_0x15fbed=JSON[_0x14bc('0x4e')](_0x50a975);var _0x868cca=Buffer['from'](_0x263235[_0x14bc('0x4c')],_0x14bc('0x4f'))['toString'](_0x14bc('0x50'));_0x3e2a85=JSON[_0x14bc('0x4e')](_0x868cca);if(!oauth[_0x14bc('0x51')](_0x263235[_0x14bc('0x52')],_0x15fbed[_0x14bc('0x53')]))throw new Error(_0x14bc('0x54'));redis[_0x14bc('0x55')](_0x263235[_0x14bc('0x4c')]);return oauth['getOauth2MicrosoftAccessToken'](_0x263235[_0x14bc('0x56')],_0x15fbed);})['then'](function(_0x34f0a2){_0x15fbed[_0x14bc('0x57')]=_0x34f0a2['access_token'];_0x15fbed[_0x14bc('0x58')]=_0x34f0a2[_0x14bc('0x59')];return db[_0x14bc('0x3a')][_0x14bc('0x13')]({'data5':_0x15fbed[_0x14bc('0x57')],'data6':_0x15fbed['data6']},{'where':{'id':_0x15fbed['id']}});})['then'](function(){oauth[_0x14bc('0x5a')](_0x15fbed);socket['emit'](_0x14bc('0x5b'),{'id':_0x3e2a85['id']});return;})[_0x14bc('0x14')](respondWithStatusCode(_0x449942,null))[_0x14bc('0x37')](function(_0x2c29b4){if(_0x3e2a85){socket['emit']('microsoftAuthorization:error',{'id':_0x3e2a85['id']});}if(!_0x15fbed){logger[_0x14bc('0x5c')](_0x14bc('0x5d'),_0x2c29b4);return _0x449942[_0x14bc('0xa')](0x1f4)['send'](_0x2c29b4[_0x14bc('0x5e')]);}logger[_0x14bc('0x5c')]('Authentication\x20failed\x20for\x20cloud\x20provider\x20#%s',_0x15fbed['id'],_0x2c29b4);});};
\ No newline at end of file
+var _0x2a87=['data3','show','params','includeAll','options','find','service','MicrosoftAzure','create','body','Name\x20parameter\x20not\x20specified','values','includes','Invalid\x20service\x20parameter.\x20Allowed\x20values:\x20','join','encryptString','catch','oauth2MicrosoftAuthorize','generateMicrosoftAuthorizationUrl','user','oauth2MicrosoftCallback','state','Invalid\x20state\x20parameter','parse','from','base64','toString','ascii','isValidIdToken','id_token','oauth2Claims','Unable\x20to\x20validate\x20id_token','del','getOauth2MicrosoftAccessToken','code','data5','access_token','data6','refresh_token','microsoftAuthorization:success','emit','microsoftAuthorization:error','Invalid\x20authentication\x20state\x20parameter','send','Authentication\x20failed\x20for\x20cloud\x20provider\x20#%s,\x20err:%s','stringify','lodash','../../components/parsers/qs','../../components/encryptor','../../config/environment','../../config/logger','api','../../mysqldb','redis','defaults','sendStatus','status','json','offset','undefined','limit','count','set','update','destroy','then','end','error','stack','name','padEnd','slice','index','map','CloudProvider','rawAttributes','fieldName','type','key','model','keys','filters','query','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','include','decryptString'];(function(_0x43aa42,_0x349364){var _0x292011=function(_0x21f7dc){while(--_0x21f7dc){_0x43aa42['push'](_0x43aa42['shift']());}};_0x292011(++_0x349364);}(_0x2a87,0x151));var _0x72a8=function(_0x54ccd7,_0x3bc3ce){_0x54ccd7=_0x54ccd7-0x0;var _0x4e667b=_0x2a87[_0x54ccd7];return _0x4e667b;};'use strict';var _=require(_0x72a8('0x0'));var Redis=require('ioredis');var qs=require(_0x72a8('0x1'));var encryptor=require(_0x72a8('0x2'));var config=require(_0x72a8('0x3'));var logger=require(_0x72a8('0x4'))(_0x72a8('0x5'));var db=require(_0x72a8('0x6'))['db'];var oauth=require('./cloudProvider.oauth');config[_0x72a8('0x7')]=_[_0x72a8('0x8')](config[_0x72a8('0x7')],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x72a8('0x7')]));var redis=new Redis(config['redis']);function respondWithStatusCode(_0x4d7dc9,_0xe0c253){_0xe0c253=_0xe0c253||0xcc;return function(_0x29ca7c){if(_0x29ca7c){return _0x4d7dc9[_0x72a8('0x9')](_0xe0c253);}return _0x4d7dc9[_0x72a8('0xa')](_0xe0c253)['end']();};}function respondWithResult(_0x2c25ef,_0x4f502a){_0x4f502a=_0x4f502a||0xc8;return function(_0x5adfbe){if(_0x5adfbe){return _0x2c25ef['status'](_0x4f502a)[_0x72a8('0xb')](_0x5adfbe);}};}function respondWithFilteredResult(_0x326368,_0xabf4ae){return function(_0x4cc6dd){if(_0x4cc6dd){var _0x1c969e=typeof _0xabf4ae[_0x72a8('0xc')]===_0x72a8('0xd')&&typeof _0xabf4ae[_0x72a8('0xe')]==='undefined';var _0x4ec174=_0x4cc6dd[_0x72a8('0xf')];var _0xcabe37=_0x1c969e?0x0:_0xabf4ae['offset'];var _0x5191f9=_0x1c969e?_0x4cc6dd[_0x72a8('0xf')]:_0xabf4ae[_0x72a8('0xc')]+_0xabf4ae[_0x72a8('0xe')];var _0x4cf7a5;if(_0x5191f9>=_0x4ec174){_0x5191f9=_0x4ec174;_0x4cf7a5=0xc8;}else{_0x4cf7a5=0xce;}_0x326368[_0x72a8('0xa')](_0x4cf7a5);return _0x326368[_0x72a8('0x10')]('Content-Range',_0xcabe37+'-'+_0x5191f9+'/'+_0x4ec174)['json'](_0x4cc6dd);}return null;};}function saveUpdates(_0x5e2dec){return function(_0x55c3c6){if(_0x55c3c6){return _0x55c3c6[_0x72a8('0x11')](_0x5e2dec)['then'](function(_0x53f67c){return _0x53f67c;});}return null;};}function removeEntity(_0x89fc9d){return function(_0x5a5de4){if(_0x5a5de4){return _0x5a5de4[_0x72a8('0x12')]()[_0x72a8('0x13')](function(){_0x89fc9d[_0x72a8('0xa')](0xcc)[_0x72a8('0x14')]();});}};}function handleEntityNotFound(_0x2bd6df){return function(_0x5719ef){if(!_0x5719ef){_0x2bd6df[_0x72a8('0x9')](0x194);}return _0x5719ef;};}function handleError(_0x229671,_0x11999e){_0x11999e=_0x11999e||0x1f4;return function(_0x10b01f){logger[_0x72a8('0x15')](_0x10b01f[_0x72a8('0x16')]);if(_0x10b01f[_0x72a8('0x17')]){delete _0x10b01f['name'];}_0x229671[_0x72a8('0xa')](_0x11999e)['send'](_0x10b01f);};}function maskClientSecret(_0x27dd71){return _[_0x72a8('0x18')](_0x27dd71[_0x72a8('0x19')](0x0,0x3),0x14,'*');}exports[_0x72a8('0x1a')]=function(_0x10b3d5,_0x2bcd58){var _0x439891={},_0x117453={},_0x459bed={'count':0x0,'rows':[]};var _0x35cf47=_[_0x72a8('0x1b')](db[_0x72a8('0x1c')][_0x72a8('0x1d')],function(_0x136443){return{'name':_0x136443[_0x72a8('0x1e')],'type':_0x136443[_0x72a8('0x1f')][_0x72a8('0x20')]};});_0x117453[_0x72a8('0x21')]=_['map'](_0x35cf47,_0x72a8('0x17'));_0x117453['query']=_[_0x72a8('0x22')](_0x10b3d5['query']);_0x117453[_0x72a8('0x23')]=_['intersection'](_0x117453[_0x72a8('0x21')],_0x117453[_0x72a8('0x24')]);_0x439891['attributes']=_[_0x72a8('0x25')](_0x117453[_0x72a8('0x21')],qs[_0x72a8('0x26')](_0x10b3d5[_0x72a8('0x24')][_0x72a8('0x26')]));_0x439891[_0x72a8('0x27')]=_0x439891['attributes'][_0x72a8('0x28')]?_0x439891['attributes']:_0x117453[_0x72a8('0x21')];if(!_0x10b3d5['query'][_0x72a8('0x29')](_0x72a8('0x2a'))){_0x439891[_0x72a8('0xe')]=qs[_0x72a8('0xe')](_0x10b3d5[_0x72a8('0x24')][_0x72a8('0xe')]);_0x439891['offset']=qs['offset'](_0x10b3d5['query'][_0x72a8('0xc')]);}_0x439891[_0x72a8('0x2b')]=qs[_0x72a8('0x2c')](_0x10b3d5[_0x72a8('0x24')]['sort']);_0x439891[_0x72a8('0x2d')]=qs[_0x72a8('0x23')](_[_0x72a8('0x2e')](_0x10b3d5['query'],_0x117453['filters']),_0x35cf47);if(_0x10b3d5['query'][_0x72a8('0x2f')]){_0x439891[_0x72a8('0x2d')]=_[_0x72a8('0x30')](_0x439891['where'],{'$or':_[_0x72a8('0x1b')](_0x35cf47,function(_0x2a99ef){if(_0x2a99ef['type']!=='VIRTUAL'){var _0x1b8bba={};_0x1b8bba[_0x2a99ef[_0x72a8('0x17')]]={'$like':'%'+_0x10b3d5[_0x72a8('0x24')][_0x72a8('0x2f')]+'%'};return _0x1b8bba;}})});}_0x439891=_[_0x72a8('0x30')]({},_0x439891,_0x10b3d5['options']);var _0x450d25={'where':_0x439891['where']};return db[_0x72a8('0x1c')][_0x72a8('0xf')](_0x450d25)[_0x72a8('0x13')](function(_0x241489){_0x459bed[_0x72a8('0xf')]=_0x241489;if(_0x10b3d5[_0x72a8('0x24')]['includeAll']){_0x439891[_0x72a8('0x31')]=[{'all':!![]}];}return db['CloudProvider']['findAll'](_0x439891);})[_0x72a8('0x13')](function(_0x153509){_0x459bed['rows']=_[_0x72a8('0x1b')](_0x153509,function(_0x1c3f52){if(_0x1c3f52['service']==='MicrosoftAzure'){var _0x10f6e5=encryptor[_0x72a8('0x32')](_0x1c3f52['data3']);_0x1c3f52[_0x72a8('0x33')]=maskClientSecret(_0x10f6e5);}return _0x1c3f52;});return _0x459bed;})['then'](respondWithFilteredResult(_0x2bcd58,_0x439891))['catch'](handleError(_0x2bcd58,null));};exports[_0x72a8('0x34')]=function(_0x48a828,_0x42f7ec){var _0x2efd1b={'raw':!![],'where':{'id':_0x48a828[_0x72a8('0x35')]['id']}},_0x3fc23e={};_0x3fc23e[_0x72a8('0x21')]=_[_0x72a8('0x22')](db[_0x72a8('0x1c')][_0x72a8('0x1d')]);_0x3fc23e[_0x72a8('0x24')]=_[_0x72a8('0x22')](_0x48a828[_0x72a8('0x24')]);_0x3fc23e['filters']=_[_0x72a8('0x25')](_0x3fc23e[_0x72a8('0x21')],_0x3fc23e['query']);_0x2efd1b[_0x72a8('0x27')]=_[_0x72a8('0x25')](_0x3fc23e[_0x72a8('0x21')],qs[_0x72a8('0x26')](_0x48a828[_0x72a8('0x24')][_0x72a8('0x26')]));_0x2efd1b['attributes']=_0x2efd1b['attributes'][_0x72a8('0x28')]?_0x2efd1b[_0x72a8('0x27')]:_0x3fc23e[_0x72a8('0x21')];if(_0x48a828[_0x72a8('0x24')][_0x72a8('0x36')]){_0x2efd1b[_0x72a8('0x31')]=[{'all':!![]}];}_0x2efd1b=_[_0x72a8('0x30')]({},_0x2efd1b,_0x48a828[_0x72a8('0x37')]);return db[_0x72a8('0x1c')][_0x72a8('0x38')](_0x2efd1b)[_0x72a8('0x13')](handleEntityNotFound(_0x42f7ec,null))[_0x72a8('0x13')](function(_0x1004e3){if(_0x1004e3[_0x72a8('0x39')]===_0x72a8('0x3a')){var _0x3fd2be=encryptor[_0x72a8('0x32')](_0x1004e3['data3']);_0x1004e3[_0x72a8('0x33')]=maskClientSecret(_0x3fd2be);}return _0x1004e3;})[_0x72a8('0x13')](respondWithResult(_0x42f7ec,null))['catch'](handleError(_0x42f7ec,null));};exports[_0x72a8('0x3b')]=function(_0xe7f95a,_0x3a2827){if(!_0xe7f95a[_0x72a8('0x3c')]['name'])throw new Error(_0x72a8('0x3d'));if(!_0xe7f95a[_0x72a8('0x3c')][_0x72a8('0x39')])throw new Error('Service\x20parameter\x20not\x20specified');var _0x5ecd3a=db[_0x72a8('0x1c')]['rawAttributes'][_0x72a8('0x39')][_0x72a8('0x3e')];if(!_0x5ecd3a[_0x72a8('0x3f')](_0xe7f95a[_0x72a8('0x3c')][_0x72a8('0x39')]))throw new Error(_0x72a8('0x40')+_0x5ecd3a[_0x72a8('0x41')](',\x20'));if(_0xe7f95a[_0x72a8('0x3c')]['service']===_0x72a8('0x3a')&&_0xe7f95a[_0x72a8('0x3c')][_0x72a8('0x33')]){_0xe7f95a[_0x72a8('0x3c')]['data3']=encryptor[_0x72a8('0x42')](_0xe7f95a[_0x72a8('0x3c')][_0x72a8('0x33')]);}return db[_0x72a8('0x1c')]['create'](_0xe7f95a[_0x72a8('0x3c')],{})[_0x72a8('0x13')](respondWithResult(_0x3a2827,0xc9))[_0x72a8('0x43')](handleError(_0x3a2827,null));};exports[_0x72a8('0x11')]=function(_0x2de05e,_0x48616a){if(_0x2de05e['body']['id']){delete _0x2de05e[_0x72a8('0x3c')]['id'];}return db[_0x72a8('0x1c')]['find']({'where':{'id':_0x2de05e[_0x72a8('0x35')]['id']}})[_0x72a8('0x13')](handleEntityNotFound(_0x48616a,null))[_0x72a8('0x13')](function(_0x281cc9){if(_0x281cc9[_0x72a8('0x39')]===_0x72a8('0x3a')&&_0x2de05e[_0x72a8('0x3c')][_0x72a8('0x33')]){_0x2de05e[_0x72a8('0x3c')][_0x72a8('0x33')]=encryptor['encryptString'](_0x2de05e[_0x72a8('0x3c')][_0x72a8('0x33')]);}return _0x281cc9;})[_0x72a8('0x13')](saveUpdates(_0x2de05e[_0x72a8('0x3c')],null))[_0x72a8('0x13')](respondWithResult(_0x48616a,null))[_0x72a8('0x43')](handleError(_0x48616a,null));};exports[_0x72a8('0x12')]=function(_0x600404,_0x52d8a8){return db[_0x72a8('0x1c')][_0x72a8('0x38')]({'where':{'id':_0x600404[_0x72a8('0x35')]['id']}})['then'](handleEntityNotFound(_0x52d8a8,null))['then'](removeEntity(_0x52d8a8,null))[_0x72a8('0x43')](handleError(_0x52d8a8,null));};exports[_0x72a8('0x44')]=function(_0x436735,_0x3df63b){return db[_0x72a8('0x1c')]['findOne']({'where':{'id':_0x436735[_0x72a8('0x35')]['id']},'raw':!![]})['then'](function(_0x248e6d){if(!_0x248e6d)return _0x3df63b['sendStatus'](0x194);return{'url':oauth[_0x72a8('0x45')](_0x248e6d,_0x436735[_0x72a8('0x46')]['id'])};})['then'](respondWithResult(_0x3df63b,null))[_0x72a8('0x43')](handleError(_0x3df63b,null));};exports[_0x72a8('0x47')]=function(_0x1bde3c,_0x4e77c7){var _0x82db3d=_0x1bde3c[_0x72a8('0x3c')];var _0x11d0af;var _0x423e3d;if(_0x82db3d['error'])throw _0x82db3d;redis['get'](_0x82db3d[_0x72a8('0x48')])[_0x72a8('0x13')](function(_0x609ea0){if(!_0x609ea0)throw new Error(_0x72a8('0x49'));_0x11d0af=JSON[_0x72a8('0x4a')](_0x609ea0);var _0x1fe039=Buffer[_0x72a8('0x4b')](_0x82db3d[_0x72a8('0x48')],_0x72a8('0x4c'))[_0x72a8('0x4d')](_0x72a8('0x4e'));_0x423e3d=JSON[_0x72a8('0x4a')](_0x1fe039);if(!oauth[_0x72a8('0x4f')](_0x82db3d[_0x72a8('0x50')],_0x11d0af[_0x72a8('0x51')]))throw new Error(_0x72a8('0x52'));redis[_0x72a8('0x53')](_0x82db3d[_0x72a8('0x48')]);return oauth[_0x72a8('0x54')](_0x82db3d[_0x72a8('0x55')],_0x11d0af);})[_0x72a8('0x13')](function(_0xc0bf7b){_0x11d0af[_0x72a8('0x56')]=_0xc0bf7b[_0x72a8('0x57')];_0x11d0af[_0x72a8('0x58')]=_0xc0bf7b[_0x72a8('0x59')];return db['CloudProvider'][_0x72a8('0x11')]({'data5':_0x11d0af[_0x72a8('0x56')],'data6':_0x11d0af[_0x72a8('0x58')]},{'where':{'id':_0x11d0af['id']}});})['then'](function(){oauth['startRefreshInterval'](_0x11d0af);socket['emit'](_0x72a8('0x5a'),{'id':_0x423e3d['id']});return;})[_0x72a8('0x13')](respondWithStatusCode(_0x4e77c7,null))['catch'](function(_0x58cb76){if(_0x423e3d){socket[_0x72a8('0x5b')](_0x72a8('0x5c'),{'id':_0x423e3d['id']});}if(!_0x11d0af){logger[_0x72a8('0x15')](_0x72a8('0x5d'),_0x58cb76);return _0x4e77c7['status'](0x1f4)[_0x72a8('0x5e')](_0x58cb76['message']);}logger['error'](_0x72a8('0x5f'),_0x11d0af['id'],JSON[_0x72a8('0x60')](_0x58cb76));});};
\ No newline at end of file