Built motion from commit d69f4380.|2.6.29
[motion2.git] / server / api / cloudProvider / cloudProvider.controller.js
index 2defbcb..59cb67c 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x70dc=['get','state','Invalid\x20state\x20parameter','parse','from','base64','toString','ascii','isValidIdToken','id_token','oauth2Claims','del','data5','data6','refresh_token','startRefreshInterval','emit','microsoftAuthorization:success','Invalid\x20authentication\x20state\x20parameter','Authentication\x20failed\x20for\x20cloud\x20provider\x20#%s,\x20err:%s','stringify','lodash','ioredis','../../components/parsers/qs','../../components/encryptor','../../config/environment','../../config/logger','api','./cloudProvider.oauth','redis','defaults','localhost','socket.io-emitter','json','limit','undefined','offset','count','status','set','Content-Range','then','destroy','sendStatus','error','stack','name','send','padEnd','index','CloudProvider','rawAttributes','fieldName','type','model','map','query','filters','intersection','attributes','fields','hasOwnProperty','nolimit','order','sort','where','pick','merge','VIRTUAL','filter','includeAll','include','rows','service','MicrosoftAzure','decryptString','data3','catch','show','params','keys','length','options','find','create','body','Name\x20parameter\x20not\x20specified','Service\x20parameter\x20not\x20specified','values','includes','Invalid\x20service\x20parameter.\x20Allowed\x20values:\x20','encryptString','update','oauth2MicrosoftAuthorize','findOne','generateMicrosoftAuthorizationUrl','user'];(function(_0x34bc30,_0x177cb0){var _0x5706de=function(_0x535a8c){while(--_0x535a8c){_0x34bc30['push'](_0x34bc30['shift']());}};_0x5706de(++_0x177cb0);}(_0x70dc,0x199));var _0xc70d=function(_0x42dc68,_0x565387){_0x42dc68=_0x42dc68-0x0;var _0xed76e=_0x70dc[_0x42dc68];return _0xed76e;};'use strict';var _=require(_0xc70d('0x0'));var Redis=require(_0xc70d('0x1'));var qs=require(_0xc70d('0x2'));var encryptor=require(_0xc70d('0x3'));var config=require(_0xc70d('0x4'));var logger=require(_0xc70d('0x5'))(_0xc70d('0x6'));var db=require('../../mysqldb')['db'];var oauth=require(_0xc70d('0x7'));config[_0xc70d('0x8')]=_[_0xc70d('0x9')](config[_0xc70d('0x8')],{'host':_0xc70d('0xa'),'port':0x18eb});var socket=require(_0xc70d('0xb'))(new Redis(config[_0xc70d('0x8')]));var redis=new Redis(config[_0xc70d('0x8')]);function respondWithStatusCode(_0x1620e5,_0x379607){_0x379607=_0x379607||0xcc;return function(_0x1c8137){if(_0x1c8137){return _0x1620e5['sendStatus'](_0x379607);}return _0x1620e5['status'](_0x379607)['end']();};}function respondWithResult(_0x1ae7de,_0x264562){_0x264562=_0x264562||0xc8;return function(_0x1984a6){if(_0x1984a6){return _0x1ae7de['status'](_0x264562)[_0xc70d('0xc')](_0x1984a6);}};}function respondWithFilteredResult(_0x55ae21,_0x3bf3f7){return function(_0x468a6c){if(_0x468a6c){var _0xeb9fb8=typeof _0x3bf3f7['offset']==='undefined'&&typeof _0x3bf3f7[_0xc70d('0xd')]===_0xc70d('0xe');var _0x516d77=_0x468a6c['count'];var _0x4e7171=_0xeb9fb8?0x0:_0x3bf3f7[_0xc70d('0xf')];var _0x18b065=_0xeb9fb8?_0x468a6c[_0xc70d('0x10')]:_0x3bf3f7[_0xc70d('0xf')]+_0x3bf3f7[_0xc70d('0xd')];var _0x57148b;if(_0x18b065>=_0x516d77){_0x18b065=_0x516d77;_0x57148b=0xc8;}else{_0x57148b=0xce;}_0x55ae21[_0xc70d('0x11')](_0x57148b);return _0x55ae21[_0xc70d('0x12')](_0xc70d('0x13'),_0x4e7171+'-'+_0x18b065+'/'+_0x516d77)[_0xc70d('0xc')](_0x468a6c);}return null;};}function saveUpdates(_0x47fa47){return function(_0x165469){if(_0x165469){return _0x165469['update'](_0x47fa47)[_0xc70d('0x14')](function(_0x149f51){return _0x149f51;});}return null;};}function removeEntity(_0x39cc7e){return function(_0x241ade){if(_0x241ade){return _0x241ade[_0xc70d('0x15')]()[_0xc70d('0x14')](function(){_0x39cc7e[_0xc70d('0x11')](0xcc)['end']();});}};}function handleEntityNotFound(_0x27f309){return function(_0x4088a2){if(!_0x4088a2){_0x27f309[_0xc70d('0x16')](0x194);}return _0x4088a2;};}function handleError(_0x2b6792,_0x592ff1){_0x592ff1=_0x592ff1||0x1f4;return function(_0x330560){logger[_0xc70d('0x17')](_0x330560[_0xc70d('0x18')]);if(_0x330560[_0xc70d('0x19')]){delete _0x330560[_0xc70d('0x19')];}_0x2b6792[_0xc70d('0x11')](_0x592ff1)[_0xc70d('0x1a')](_0x330560);};}function maskClientSecret(_0x52051c){return _[_0xc70d('0x1b')](_0x52051c['slice'](0x0,0x3),0x14,'*');}exports[_0xc70d('0x1c')]=function(_0x5c67c4,_0x361269){var _0x1d913f={},_0x2f87b3={},_0x1de9f5={'count':0x0,'rows':[]};var _0x41b696=_['map'](db[_0xc70d('0x1d')][_0xc70d('0x1e')],function(_0x5b7094){return{'name':_0x5b7094[_0xc70d('0x1f')],'type':_0x5b7094[_0xc70d('0x20')]['key']};});_0x2f87b3[_0xc70d('0x21')]=_[_0xc70d('0x22')](_0x41b696,_0xc70d('0x19'));_0x2f87b3[_0xc70d('0x23')]=_['keys'](_0x5c67c4[_0xc70d('0x23')]);_0x2f87b3[_0xc70d('0x24')]=_[_0xc70d('0x25')](_0x2f87b3[_0xc70d('0x21')],_0x2f87b3[_0xc70d('0x23')]);_0x1d913f[_0xc70d('0x26')]=_[_0xc70d('0x25')](_0x2f87b3['model'],qs[_0xc70d('0x27')](_0x5c67c4[_0xc70d('0x23')]['fields']));_0x1d913f[_0xc70d('0x26')]=_0x1d913f[_0xc70d('0x26')]['length']?_0x1d913f[_0xc70d('0x26')]:_0x2f87b3[_0xc70d('0x21')];if(!_0x5c67c4['query'][_0xc70d('0x28')](_0xc70d('0x29'))){_0x1d913f[_0xc70d('0xd')]=qs[_0xc70d('0xd')](_0x5c67c4[_0xc70d('0x23')][_0xc70d('0xd')]);_0x1d913f[_0xc70d('0xf')]=qs[_0xc70d('0xf')](_0x5c67c4[_0xc70d('0x23')][_0xc70d('0xf')]);}_0x1d913f[_0xc70d('0x2a')]=qs[_0xc70d('0x2b')](_0x5c67c4[_0xc70d('0x23')][_0xc70d('0x2b')]);_0x1d913f[_0xc70d('0x2c')]=qs[_0xc70d('0x24')](_[_0xc70d('0x2d')](_0x5c67c4[_0xc70d('0x23')],_0x2f87b3[_0xc70d('0x24')]),_0x41b696);if(_0x5c67c4['query']['filter']){_0x1d913f[_0xc70d('0x2c')]=_[_0xc70d('0x2e')](_0x1d913f[_0xc70d('0x2c')],{'$or':_['map'](_0x41b696,function(_0x371925){if(_0x371925[_0xc70d('0x20')]!==_0xc70d('0x2f')){var _0x537a74={};_0x537a74[_0x371925[_0xc70d('0x19')]]={'$like':'%'+_0x5c67c4['query'][_0xc70d('0x30')]+'%'};return _0x537a74;}})});}_0x1d913f=_[_0xc70d('0x2e')]({},_0x1d913f,_0x5c67c4['options']);var _0xcaeb44={'where':_0x1d913f[_0xc70d('0x2c')]};return db[_0xc70d('0x1d')][_0xc70d('0x10')](_0xcaeb44)[_0xc70d('0x14')](function(_0x1b30e8){_0x1de9f5[_0xc70d('0x10')]=_0x1b30e8;if(_0x5c67c4[_0xc70d('0x23')][_0xc70d('0x31')]){_0x1d913f[_0xc70d('0x32')]=[{'all':!![]}];}return db[_0xc70d('0x1d')]['findAll'](_0x1d913f);})['then'](function(_0x4d30a9){_0x1de9f5[_0xc70d('0x33')]=_[_0xc70d('0x22')](_0x4d30a9,function(_0x2cb455){if(_0x2cb455[_0xc70d('0x34')]===_0xc70d('0x35')){var _0x4b1b83=encryptor[_0xc70d('0x36')](_0x2cb455[_0xc70d('0x37')]);_0x2cb455['data3']=maskClientSecret(_0x4b1b83);}return _0x2cb455;});return _0x1de9f5;})[_0xc70d('0x14')](respondWithFilteredResult(_0x361269,_0x1d913f))[_0xc70d('0x38')](handleError(_0x361269,null));};exports[_0xc70d('0x39')]=function(_0x42a876,_0x1785e0){var _0x517bf5={'raw':!![],'where':{'id':_0x42a876[_0xc70d('0x3a')]['id']}},_0x215f92={};_0x215f92[_0xc70d('0x21')]=_[_0xc70d('0x3b')](db[_0xc70d('0x1d')][_0xc70d('0x1e')]);_0x215f92[_0xc70d('0x23')]=_['keys'](_0x42a876[_0xc70d('0x23')]);_0x215f92[_0xc70d('0x24')]=_['intersection'](_0x215f92['model'],_0x215f92[_0xc70d('0x23')]);_0x517bf5['attributes']=_[_0xc70d('0x25')](_0x215f92[_0xc70d('0x21')],qs[_0xc70d('0x27')](_0x42a876[_0xc70d('0x23')][_0xc70d('0x27')]));_0x517bf5[_0xc70d('0x26')]=_0x517bf5[_0xc70d('0x26')][_0xc70d('0x3c')]?_0x517bf5[_0xc70d('0x26')]:_0x215f92[_0xc70d('0x21')];if(_0x42a876[_0xc70d('0x23')][_0xc70d('0x31')]){_0x517bf5[_0xc70d('0x32')]=[{'all':!![]}];}_0x517bf5=_['merge']({},_0x517bf5,_0x42a876[_0xc70d('0x3d')]);return db[_0xc70d('0x1d')][_0xc70d('0x3e')](_0x517bf5)[_0xc70d('0x14')](handleEntityNotFound(_0x1785e0,null))[_0xc70d('0x14')](function(_0x497b8b){if(_0x497b8b['service']==='MicrosoftAzure'){var _0x307249=encryptor[_0xc70d('0x36')](_0x497b8b[_0xc70d('0x37')]);_0x497b8b[_0xc70d('0x37')]=maskClientSecret(_0x307249);}return _0x497b8b;})['then'](respondWithResult(_0x1785e0,null))[_0xc70d('0x38')](handleError(_0x1785e0,null));};exports[_0xc70d('0x3f')]=function(_0x5d89b2,_0x15d513){if(!_0x5d89b2[_0xc70d('0x40')][_0xc70d('0x19')])throw new Error(_0xc70d('0x41'));if(!_0x5d89b2[_0xc70d('0x40')][_0xc70d('0x34')])throw new Error(_0xc70d('0x42'));var _0x19149d=db['CloudProvider'][_0xc70d('0x1e')]['service'][_0xc70d('0x43')];if(!_0x19149d[_0xc70d('0x44')](_0x5d89b2['body'][_0xc70d('0x34')]))throw new Error(_0xc70d('0x45')+_0x19149d['join'](',\x20'));if(_0x5d89b2[_0xc70d('0x40')][_0xc70d('0x34')]===_0xc70d('0x35')&&_0x5d89b2[_0xc70d('0x40')][_0xc70d('0x37')]){_0x5d89b2[_0xc70d('0x40')]['data3']=encryptor[_0xc70d('0x46')](_0x5d89b2[_0xc70d('0x40')]['data3']);}return db[_0xc70d('0x1d')][_0xc70d('0x3f')](_0x5d89b2[_0xc70d('0x40')],{})[_0xc70d('0x14')](respondWithResult(_0x15d513,0xc9))[_0xc70d('0x38')](handleError(_0x15d513,null));};exports[_0xc70d('0x47')]=function(_0x33e601,_0x2d4863){if(_0x33e601['body']['id']){delete _0x33e601['body']['id'];}return db['CloudProvider'][_0xc70d('0x3e')]({'where':{'id':_0x33e601[_0xc70d('0x3a')]['id']}})[_0xc70d('0x14')](handleEntityNotFound(_0x2d4863,null))[_0xc70d('0x14')](function(_0xf75acf){if(_0xf75acf[_0xc70d('0x34')]===_0xc70d('0x35')&&_0x33e601[_0xc70d('0x40')][_0xc70d('0x37')]){_0x33e601['body'][_0xc70d('0x37')]=encryptor[_0xc70d('0x46')](_0x33e601[_0xc70d('0x40')]['data3']);}return _0xf75acf;})[_0xc70d('0x14')](saveUpdates(_0x33e601[_0xc70d('0x40')],null))[_0xc70d('0x14')](respondWithResult(_0x2d4863,null))['catch'](handleError(_0x2d4863,null));};exports[_0xc70d('0x15')]=function(_0x25d366,_0x1e1435){return db['CloudProvider'][_0xc70d('0x3e')]({'where':{'id':_0x25d366[_0xc70d('0x3a')]['id']}})[_0xc70d('0x14')](handleEntityNotFound(_0x1e1435,null))[_0xc70d('0x14')](removeEntity(_0x1e1435,null))[_0xc70d('0x38')](handleError(_0x1e1435,null));};exports[_0xc70d('0x48')]=function(_0xb20d4b,_0x4df2eb){return db[_0xc70d('0x1d')][_0xc70d('0x49')]({'where':{'id':_0xb20d4b[_0xc70d('0x3a')]['id']},'raw':!![]})[_0xc70d('0x14')](function(_0x29e7bd){if(!_0x29e7bd)return _0x4df2eb[_0xc70d('0x16')](0x194);return{'url':oauth[_0xc70d('0x4a')](_0x29e7bd,_0xb20d4b[_0xc70d('0x4b')]['id'])};})[_0xc70d('0x14')](respondWithResult(_0x4df2eb,null))[_0xc70d('0x38')](handleError(_0x4df2eb,null));};exports['oauth2MicrosoftCallback']=function(_0x208ee9,_0x56067b){var _0x519814=_0x208ee9[_0xc70d('0x40')];var _0x390117;var _0x3e2b15;if(_0x519814[_0xc70d('0x17')])throw _0x519814;redis[_0xc70d('0x4c')](_0x519814[_0xc70d('0x4d')])[_0xc70d('0x14')](function(_0x3bb561){if(!_0x3bb561)throw new Error(_0xc70d('0x4e'));_0x390117=JSON[_0xc70d('0x4f')](_0x3bb561);var _0x9bfbd4=Buffer[_0xc70d('0x50')](_0x519814[_0xc70d('0x4d')],_0xc70d('0x51'))[_0xc70d('0x52')](_0xc70d('0x53'));_0x3e2b15=JSON[_0xc70d('0x4f')](_0x9bfbd4);if(!oauth[_0xc70d('0x54')](_0x519814[_0xc70d('0x55')],_0x390117[_0xc70d('0x56')]))throw new Error('Unable\x20to\x20validate\x20id_token');redis[_0xc70d('0x57')](_0x519814['state']);return oauth['getOauth2MicrosoftAccessToken'](_0x519814['code'],_0x390117);})[_0xc70d('0x14')](function(_0x5cc486){_0x390117[_0xc70d('0x58')]=_0x5cc486['access_token'];_0x390117[_0xc70d('0x59')]=_0x5cc486[_0xc70d('0x5a')];return db[_0xc70d('0x1d')][_0xc70d('0x47')]({'data5':_0x390117[_0xc70d('0x58')],'data6':_0x390117[_0xc70d('0x59')]},{'where':{'id':_0x390117['id']}});})[_0xc70d('0x14')](function(){oauth[_0xc70d('0x5b')](_0x390117);socket[_0xc70d('0x5c')](_0xc70d('0x5d'),{'id':_0x3e2b15['id']});return;})[_0xc70d('0x14')](respondWithStatusCode(_0x56067b,null))['catch'](function(_0x562dcc){if(_0x3e2b15){socket[_0xc70d('0x5c')]('microsoftAuthorization:error',{'id':_0x3e2b15['id']});}if(!_0x390117){logger['error'](_0xc70d('0x5e'),_0x562dcc);return _0x56067b[_0xc70d('0x11')](0x1f4)['send'](_0x562dcc['message']);}logger['error'](_0xc70d('0x5f'),_0x390117['id'],JSON[_0xc70d('0x60')](_0x562dcc));});};
\ No newline at end of file
+var _0x063e=['stringify','ioredis','../../components/parsers/qs','../../config/environment','../../config/logger','api','./cloudProvider.oauth','defaults','redis','localhost','socket.io-emitter','status','end','json','offset','undefined','limit','set','Content-Range','update','then','destroy','sendStatus','error','name','padEnd','slice','index','map','CloudProvider','rawAttributes','type','key','model','query','filters','intersection','attributes','fields','length','sort','pick','filter','where','merge','count','includeAll','include','findAll','rows','MicrosoftAzure','decryptString','catch','show','params','keys','options','find','data3','body','service','values','includes','Invalid\x20service\x20parameter.\x20Allowed\x20values:\x20','join','encryptString','create','oauth2MicrosoftAuthorize','findOne','generateMicrosoftAuthorizationUrl','user','oauth2MicrosoftCallback','get','state','Invalid\x20state\x20parameter','parse','from','base64','toString','ascii','isValidIdToken','id_token','oauth2Claims','del','code','data5','data6','refresh_token','startRefreshInterval','emit','microsoftAuthorization:success','microsoftAuthorization:error','Invalid\x20authentication\x20state\x20parameter','send'];(function(_0x4243a3,_0x447337){var _0x1b2a33=function(_0x6a8200){while(--_0x6a8200){_0x4243a3['push'](_0x4243a3['shift']());}};_0x1b2a33(++_0x447337);}(_0x063e,0x1d7));var _0xe063=function(_0x1035c1,_0x2d8583){_0x1035c1=_0x1035c1-0x0;var _0x308d67=_0x063e[_0x1035c1];return _0x308d67;};'use strict';var _=require('lodash');var Redis=require(_0xe063('0x0'));var qs=require(_0xe063('0x1'));var encryptor=require('../../components/encryptor');var config=require(_0xe063('0x2'));var logger=require(_0xe063('0x3'))(_0xe063('0x4'));var db=require('../../mysqldb')['db'];var oauth=require(_0xe063('0x5'));config['redis']=_[_0xe063('0x6')](config[_0xe063('0x7')],{'host':_0xe063('0x8'),'port':0x18eb});var socket=require(_0xe063('0x9'))(new Redis(config[_0xe063('0x7')]));var redis=new Redis(config[_0xe063('0x7')]);function respondWithStatusCode(_0x1945aa,_0x4bb9ea){_0x4bb9ea=_0x4bb9ea||0xcc;return function(_0x2bcb2d){if(_0x2bcb2d){return _0x1945aa['sendStatus'](_0x4bb9ea);}return _0x1945aa[_0xe063('0xa')](_0x4bb9ea)[_0xe063('0xb')]();};}function respondWithResult(_0xcebb22,_0x52fd91){_0x52fd91=_0x52fd91||0xc8;return function(_0x2bdb02){if(_0x2bdb02){return _0xcebb22[_0xe063('0xa')](_0x52fd91)[_0xe063('0xc')](_0x2bdb02);}};}function respondWithFilteredResult(_0x25d6aa,_0x13ba06){return function(_0x49a2c7){if(_0x49a2c7){var _0x5d17cd=typeof _0x13ba06[_0xe063('0xd')]===_0xe063('0xe')&&typeof _0x13ba06[_0xe063('0xf')]==='undefined';var _0x436186=_0x49a2c7['count'];var _0x55222f=_0x5d17cd?0x0:_0x13ba06['offset'];var _0x5158bc=_0x5d17cd?_0x49a2c7['count']:_0x13ba06[_0xe063('0xd')]+_0x13ba06[_0xe063('0xf')];var _0x52d870;if(_0x5158bc>=_0x436186){_0x5158bc=_0x436186;_0x52d870=0xc8;}else{_0x52d870=0xce;}_0x25d6aa[_0xe063('0xa')](_0x52d870);return _0x25d6aa[_0xe063('0x10')](_0xe063('0x11'),_0x55222f+'-'+_0x5158bc+'/'+_0x436186)[_0xe063('0xc')](_0x49a2c7);}return null;};}function saveUpdates(_0x34961d){return function(_0x24812b){if(_0x24812b){return _0x24812b[_0xe063('0x12')](_0x34961d)[_0xe063('0x13')](function(_0x4e263d){return _0x4e263d;});}return null;};}function removeEntity(_0x19b0db){return function(_0x4c0d64){if(_0x4c0d64){return _0x4c0d64[_0xe063('0x14')]()[_0xe063('0x13')](function(){_0x19b0db[_0xe063('0xa')](0xcc)[_0xe063('0xb')]();});}};}function handleEntityNotFound(_0x217c68){return function(_0x54e442){if(!_0x54e442){_0x217c68[_0xe063('0x15')](0x194);}return _0x54e442;};}function handleError(_0x5c92f1,_0x4aaa19){_0x4aaa19=_0x4aaa19||0x1f4;return function(_0x55277b){logger[_0xe063('0x16')](_0x55277b['stack']);if(_0x55277b[_0xe063('0x17')]){delete _0x55277b[_0xe063('0x17')];}_0x5c92f1[_0xe063('0xa')](_0x4aaa19)['send'](_0x55277b);};}function maskClientSecret(_0x321a4a){return _[_0xe063('0x18')](_0x321a4a[_0xe063('0x19')](0x0,0x3),0x14,'*');}exports[_0xe063('0x1a')]=function(_0x52e8eb,_0xb0f3db){var _0x281544={},_0x1b22d3={},_0x4b4af5={'count':0x0,'rows':[]};var _0x1fe66c=_[_0xe063('0x1b')](db[_0xe063('0x1c')][_0xe063('0x1d')],function(_0x1244c6){return{'name':_0x1244c6['fieldName'],'type':_0x1244c6[_0xe063('0x1e')][_0xe063('0x1f')]};});_0x1b22d3[_0xe063('0x20')]=_['map'](_0x1fe66c,_0xe063('0x17'));_0x1b22d3[_0xe063('0x21')]=_['keys'](_0x52e8eb[_0xe063('0x21')]);_0x1b22d3[_0xe063('0x22')]=_[_0xe063('0x23')](_0x1b22d3[_0xe063('0x20')],_0x1b22d3[_0xe063('0x21')]);_0x281544[_0xe063('0x24')]=_['intersection'](_0x1b22d3['model'],qs[_0xe063('0x25')](_0x52e8eb[_0xe063('0x21')][_0xe063('0x25')]));_0x281544[_0xe063('0x24')]=_0x281544[_0xe063('0x24')][_0xe063('0x26')]?_0x281544[_0xe063('0x24')]:_0x1b22d3[_0xe063('0x20')];if(!_0x52e8eb[_0xe063('0x21')]['hasOwnProperty']('nolimit')){_0x281544[_0xe063('0xf')]=qs[_0xe063('0xf')](_0x52e8eb[_0xe063('0x21')][_0xe063('0xf')]);_0x281544['offset']=qs[_0xe063('0xd')](_0x52e8eb['query']['offset']);}_0x281544['order']=qs[_0xe063('0x27')](_0x52e8eb[_0xe063('0x21')][_0xe063('0x27')]);_0x281544['where']=qs[_0xe063('0x22')](_[_0xe063('0x28')](_0x52e8eb[_0xe063('0x21')],_0x1b22d3[_0xe063('0x22')]),_0x1fe66c);if(_0x52e8eb[_0xe063('0x21')][_0xe063('0x29')]){_0x281544[_0xe063('0x2a')]=_[_0xe063('0x2b')](_0x281544[_0xe063('0x2a')],{'$or':_['map'](_0x1fe66c,function(_0x304240){if(_0x304240['type']!=='VIRTUAL'){var _0x57f5fe={};_0x57f5fe[_0x304240['name']]={'$like':'%'+_0x52e8eb[_0xe063('0x21')]['filter']+'%'};return _0x57f5fe;}})});}_0x281544=_[_0xe063('0x2b')]({},_0x281544,_0x52e8eb['options']);var _0x3bb56b={'where':_0x281544[_0xe063('0x2a')]};return db['CloudProvider']['count'](_0x3bb56b)[_0xe063('0x13')](function(_0x3f05f5){_0x4b4af5[_0xe063('0x2c')]=_0x3f05f5;if(_0x52e8eb[_0xe063('0x21')][_0xe063('0x2d')]){_0x281544[_0xe063('0x2e')]=[{'all':!![]}];}return db[_0xe063('0x1c')][_0xe063('0x2f')](_0x281544);})[_0xe063('0x13')](function(_0x515f0f){_0x4b4af5[_0xe063('0x30')]=_[_0xe063('0x1b')](_0x515f0f,function(_0x1280f7){if(_0x1280f7['service']===_0xe063('0x31')){var _0x2c439b=encryptor[_0xe063('0x32')](_0x1280f7['data3']);_0x1280f7['data3']=maskClientSecret(_0x2c439b);}return _0x1280f7;});return _0x4b4af5;})[_0xe063('0x13')](respondWithFilteredResult(_0xb0f3db,_0x281544))[_0xe063('0x33')](handleError(_0xb0f3db,null));};exports[_0xe063('0x34')]=function(_0x4e7603,_0x2c0843){var _0x3bddcc={'raw':!![],'where':{'id':_0x4e7603[_0xe063('0x35')]['id']}},_0x2a44b7={};_0x2a44b7[_0xe063('0x20')]=_[_0xe063('0x36')](db[_0xe063('0x1c')]['rawAttributes']);_0x2a44b7[_0xe063('0x21')]=_[_0xe063('0x36')](_0x4e7603[_0xe063('0x21')]);_0x2a44b7[_0xe063('0x22')]=_[_0xe063('0x23')](_0x2a44b7[_0xe063('0x20')],_0x2a44b7[_0xe063('0x21')]);_0x3bddcc['attributes']=_[_0xe063('0x23')](_0x2a44b7['model'],qs['fields'](_0x4e7603[_0xe063('0x21')]['fields']));_0x3bddcc['attributes']=_0x3bddcc[_0xe063('0x24')][_0xe063('0x26')]?_0x3bddcc['attributes']:_0x2a44b7[_0xe063('0x20')];if(_0x4e7603['query']['includeAll']){_0x3bddcc[_0xe063('0x2e')]=[{'all':!![]}];}_0x3bddcc=_[_0xe063('0x2b')]({},_0x3bddcc,_0x4e7603[_0xe063('0x37')]);return db['CloudProvider'][_0xe063('0x38')](_0x3bddcc)[_0xe063('0x13')](handleEntityNotFound(_0x2c0843,null))['then'](function(_0x5e0bca){if(_0x5e0bca['service']==='MicrosoftAzure'){var _0x3045f0=encryptor[_0xe063('0x32')](_0x5e0bca[_0xe063('0x39')]);_0x5e0bca[_0xe063('0x39')]=maskClientSecret(_0x3045f0);}return _0x5e0bca;})[_0xe063('0x13')](respondWithResult(_0x2c0843,null))[_0xe063('0x33')](handleError(_0x2c0843,null));};exports['create']=function(_0x4876eb,_0xf1ff70){if(!_0x4876eb[_0xe063('0x3a')][_0xe063('0x17')])throw new Error('Name\x20parameter\x20not\x20specified');if(!_0x4876eb[_0xe063('0x3a')][_0xe063('0x3b')])throw new Error('Service\x20parameter\x20not\x20specified');var _0x41622d=db[_0xe063('0x1c')][_0xe063('0x1d')]['service'][_0xe063('0x3c')];if(!_0x41622d[_0xe063('0x3d')](_0x4876eb[_0xe063('0x3a')][_0xe063('0x3b')]))throw new Error(_0xe063('0x3e')+_0x41622d[_0xe063('0x3f')](',\x20'));if(_0x4876eb[_0xe063('0x3a')]['service']==='MicrosoftAzure'&&_0x4876eb['body'][_0xe063('0x39')]){_0x4876eb['body'][_0xe063('0x39')]=encryptor[_0xe063('0x40')](_0x4876eb['body'][_0xe063('0x39')]);}return db[_0xe063('0x1c')][_0xe063('0x41')](_0x4876eb[_0xe063('0x3a')],{})[_0xe063('0x13')](respondWithResult(_0xf1ff70,0xc9))[_0xe063('0x33')](handleError(_0xf1ff70,null));};exports[_0xe063('0x12')]=function(_0x403a7b,_0x5b0e15){if(_0x403a7b[_0xe063('0x3a')]['id']){delete _0x403a7b[_0xe063('0x3a')]['id'];}return db[_0xe063('0x1c')][_0xe063('0x38')]({'where':{'id':_0x403a7b[_0xe063('0x35')]['id']}})['then'](handleEntityNotFound(_0x5b0e15,null))[_0xe063('0x13')](function(_0x463d32){if(_0x463d32[_0xe063('0x3b')]==='MicrosoftAzure'&&_0x403a7b['body']['data3']){_0x403a7b[_0xe063('0x3a')][_0xe063('0x39')]=encryptor[_0xe063('0x40')](_0x403a7b[_0xe063('0x3a')]['data3']);}return _0x463d32;})[_0xe063('0x13')](saveUpdates(_0x403a7b[_0xe063('0x3a')],null))['then'](respondWithResult(_0x5b0e15,null))[_0xe063('0x33')](handleError(_0x5b0e15,null));};exports[_0xe063('0x14')]=function(_0x27da11,_0x2f9d9e){return db[_0xe063('0x1c')][_0xe063('0x38')]({'where':{'id':_0x27da11[_0xe063('0x35')]['id']}})['then'](handleEntityNotFound(_0x2f9d9e,null))[_0xe063('0x13')](removeEntity(_0x2f9d9e,null))[_0xe063('0x33')](handleError(_0x2f9d9e,null));};exports[_0xe063('0x42')]=function(_0x2b6edd,_0x231595){return db[_0xe063('0x1c')][_0xe063('0x43')]({'where':{'id':_0x2b6edd[_0xe063('0x35')]['id']},'raw':!![]})[_0xe063('0x13')](function(_0x487e14){if(!_0x487e14)return _0x231595[_0xe063('0x15')](0x194);return{'url':oauth[_0xe063('0x44')](_0x487e14,_0x2b6edd[_0xe063('0x45')]['id'])};})[_0xe063('0x13')](respondWithResult(_0x231595,null))[_0xe063('0x33')](handleError(_0x231595,null));};exports[_0xe063('0x46')]=function(_0x296bdb,_0x1843b8){var _0x462489=_0x296bdb[_0xe063('0x3a')];var _0x1153e1;var _0x266501;if(_0x462489[_0xe063('0x16')])throw _0x462489;redis[_0xe063('0x47')](_0x462489[_0xe063('0x48')])[_0xe063('0x13')](function(_0x5efd0c){if(!_0x5efd0c)throw new Error(_0xe063('0x49'));_0x1153e1=JSON[_0xe063('0x4a')](_0x5efd0c);var _0x195293=Buffer[_0xe063('0x4b')](_0x462489['state'],_0xe063('0x4c'))[_0xe063('0x4d')](_0xe063('0x4e'));_0x266501=JSON['parse'](_0x195293);if(!oauth[_0xe063('0x4f')](_0x462489[_0xe063('0x50')],_0x1153e1[_0xe063('0x51')]))throw new Error('Unable\x20to\x20validate\x20id_token');redis[_0xe063('0x52')](_0x462489[_0xe063('0x48')]);return oauth['getOauth2MicrosoftAccessToken'](_0x462489[_0xe063('0x53')],_0x1153e1);})['then'](function(_0x4267c6){_0x1153e1[_0xe063('0x54')]=_0x4267c6['access_token'];_0x1153e1[_0xe063('0x55')]=_0x4267c6[_0xe063('0x56')];return db[_0xe063('0x1c')][_0xe063('0x12')]({'data5':_0x1153e1[_0xe063('0x54')],'data6':_0x1153e1['data6']},{'where':{'id':_0x1153e1['id']}});})[_0xe063('0x13')](function(){oauth[_0xe063('0x57')](_0x1153e1);socket[_0xe063('0x58')](_0xe063('0x59'),{'id':_0x266501['id']});return;})[_0xe063('0x13')](respondWithStatusCode(_0x1843b8,null))['catch'](function(_0x38b02d){if(_0x266501){socket['emit'](_0xe063('0x5a'),{'id':_0x266501['id']});}if(!_0x1153e1){logger[_0xe063('0x16')](_0xe063('0x5b'),_0x38b02d);return _0x1843b8[_0xe063('0xa')](0x1f4)[_0xe063('0x5c')](_0x38b02d['message']);}logger['error']('Authentication\x20failed\x20for\x20cloud\x20provider\x20#%s,\x20err:%s',_0x1153e1['id'],JSON[_0xe063('0x5d')](_0x38b02d));});};
\ No newline at end of file