Built motion from commit 449495f6.|2.6.27
[motion2.git] / server / api / cloudProvider / cloudProvider.controller.js
index ce3c394..4aceb87 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xcdee=['get','state','Invalid\x20state\x20parameter','parse','from','base64','ascii','isValidIdToken','oauth2Claims','Unable\x20to\x20validate\x20id_token','del','code','data5','access_token','refresh_token','data6','startRefreshInterval','microsoftAuthorization:success','microsoftAuthorization:error','Invalid\x20authentication\x20state\x20parameter','message','Authentication\x20failed\x20for\x20cloud\x20provider\x20#%s,\x20err:%s','stringify','lodash','ioredis','../../components/parsers/qs','../../components/encryptor','../../config/environment','api','../../mysqldb','./cloudProvider.oauth','defaults','redis','socket.io-emitter','status','end','json','undefined','count','offset','limit','set','update','then','sendStatus','error','stack','name','send','padEnd','map','rawAttributes','fieldName','type','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','where','pick','filter','merge','CloudProvider','includeAll','include','service','MicrosoftAzure','decryptString','data3','catch','show','params','options','find','body','Name\x20parameter\x20not\x20specified','values','includes','Invalid\x20service\x20parameter.\x20Allowed\x20values:\x20','join','encryptString','create','destroy','oauth2MicrosoftAuthorize','findOne','generateMicrosoftAuthorizationUrl','user','oauth2MicrosoftCallback'];(function(_0x4fe726,_0x277e39){var _0x132568=function(_0x527eb4){while(--_0x527eb4){_0x4fe726['push'](_0x4fe726['shift']());}};_0x132568(++_0x277e39);}(_0xcdee,0xd5));var _0xecde=function(_0x10e39f,_0x15d428){_0x10e39f=_0x10e39f-0x0;var _0x4a364e=_0xcdee[_0x10e39f];return _0x4a364e;};'use strict';var _=require(_0xecde('0x0'));var Redis=require(_0xecde('0x1'));var qs=require(_0xecde('0x2'));var encryptor=require(_0xecde('0x3'));var config=require(_0xecde('0x4'));var logger=require('../../config/logger')(_0xecde('0x5'));var db=require(_0xecde('0x6'))['db'];var oauth=require(_0xecde('0x7'));config['redis']=_[_0xecde('0x8')](config[_0xecde('0x9')],{'host':'localhost','port':0x18eb});var socket=require(_0xecde('0xa'))(new Redis(config['redis']));var redis=new Redis(config['redis']);function respondWithStatusCode(_0x16c171,_0x2b2cb6){_0x2b2cb6=_0x2b2cb6||0xcc;return function(_0x218ff0){if(_0x218ff0){return _0x16c171['sendStatus'](_0x2b2cb6);}return _0x16c171[_0xecde('0xb')](_0x2b2cb6)[_0xecde('0xc')]();};}function respondWithResult(_0xa2541,_0x5811f9){_0x5811f9=_0x5811f9||0xc8;return function(_0x344057){if(_0x344057){return _0xa2541[_0xecde('0xb')](_0x5811f9)[_0xecde('0xd')](_0x344057);}};}function respondWithFilteredResult(_0x20bf35,_0x900506){return function(_0x45700e){if(_0x45700e){var _0x20057d=typeof _0x900506['offset']===_0xecde('0xe')&&typeof _0x900506['limit']===_0xecde('0xe');var _0x523e1c=_0x45700e[_0xecde('0xf')];var _0x31e63b=_0x20057d?0x0:_0x900506[_0xecde('0x10')];var _0x59df6c=_0x20057d?_0x45700e['count']:_0x900506[_0xecde('0x10')]+_0x900506[_0xecde('0x11')];var _0x24d051;if(_0x59df6c>=_0x523e1c){_0x59df6c=_0x523e1c;_0x24d051=0xc8;}else{_0x24d051=0xce;}_0x20bf35[_0xecde('0xb')](_0x24d051);return _0x20bf35[_0xecde('0x12')]('Content-Range',_0x31e63b+'-'+_0x59df6c+'/'+_0x523e1c)[_0xecde('0xd')](_0x45700e);}return null;};}function saveUpdates(_0x20c118){return function(_0x251bc1){if(_0x251bc1){return _0x251bc1[_0xecde('0x13')](_0x20c118)[_0xecde('0x14')](function(_0x42f309){return _0x42f309;});}return null;};}function removeEntity(_0xdc1f61){return function(_0x57ff49){if(_0x57ff49){return _0x57ff49['destroy']()['then'](function(){_0xdc1f61[_0xecde('0xb')](0xcc)[_0xecde('0xc')]();});}};}function handleEntityNotFound(_0x16d84d){return function(_0x50aaf8){if(!_0x50aaf8){_0x16d84d[_0xecde('0x15')](0x194);}return _0x50aaf8;};}function handleError(_0x3043c0,_0x5b6474){_0x5b6474=_0x5b6474||0x1f4;return function(_0x32115d){logger[_0xecde('0x16')](_0x32115d[_0xecde('0x17')]);if(_0x32115d[_0xecde('0x18')]){delete _0x32115d[_0xecde('0x18')];}_0x3043c0[_0xecde('0xb')](_0x5b6474)[_0xecde('0x19')](_0x32115d);};}function maskClientSecret(_0x459112){return _[_0xecde('0x1a')](_0x459112['slice'](0x0,0x3),0x14,'*');}exports['index']=function(_0x1bbae0,_0x43f2cc){var _0xce5303={},_0xaf0a51={},_0x3bee49={'count':0x0,'rows':[]};var _0x1e5073=_[_0xecde('0x1b')](db['CloudProvider'][_0xecde('0x1c')],function(_0x10c8a0){return{'name':_0x10c8a0[_0xecde('0x1d')],'type':_0x10c8a0[_0xecde('0x1e')]['key']};});_0xaf0a51[_0xecde('0x1f')]=_[_0xecde('0x1b')](_0x1e5073,_0xecde('0x18'));_0xaf0a51[_0xecde('0x20')]=_[_0xecde('0x21')](_0x1bbae0[_0xecde('0x20')]);_0xaf0a51[_0xecde('0x22')]=_[_0xecde('0x23')](_0xaf0a51[_0xecde('0x1f')],_0xaf0a51[_0xecde('0x20')]);_0xce5303[_0xecde('0x24')]=_[_0xecde('0x23')](_0xaf0a51[_0xecde('0x1f')],qs[_0xecde('0x25')](_0x1bbae0[_0xecde('0x20')][_0xecde('0x25')]));_0xce5303[_0xecde('0x24')]=_0xce5303[_0xecde('0x24')][_0xecde('0x26')]?_0xce5303[_0xecde('0x24')]:_0xaf0a51[_0xecde('0x1f')];if(!_0x1bbae0[_0xecde('0x20')][_0xecde('0x27')](_0xecde('0x28'))){_0xce5303[_0xecde('0x11')]=qs[_0xecde('0x11')](_0x1bbae0[_0xecde('0x20')][_0xecde('0x11')]);_0xce5303[_0xecde('0x10')]=qs[_0xecde('0x10')](_0x1bbae0[_0xecde('0x20')][_0xecde('0x10')]);}_0xce5303[_0xecde('0x29')]=qs['sort'](_0x1bbae0[_0xecde('0x20')]['sort']);_0xce5303[_0xecde('0x2a')]=qs[_0xecde('0x22')](_[_0xecde('0x2b')](_0x1bbae0[_0xecde('0x20')],_0xaf0a51['filters']),_0x1e5073);if(_0x1bbae0[_0xecde('0x20')][_0xecde('0x2c')]){_0xce5303[_0xecde('0x2a')]=_['merge'](_0xce5303['where'],{'$or':_['map'](_0x1e5073,function(_0x29115a){if(_0x29115a['type']!=='VIRTUAL'){var _0x502a2b={};_0x502a2b[_0x29115a[_0xecde('0x18')]]={'$like':'%'+_0x1bbae0[_0xecde('0x20')][_0xecde('0x2c')]+'%'};return _0x502a2b;}})});}_0xce5303=_[_0xecde('0x2d')]({},_0xce5303,_0x1bbae0['options']);var _0x3fd488={'where':_0xce5303[_0xecde('0x2a')]};return db[_0xecde('0x2e')][_0xecde('0xf')](_0x3fd488)[_0xecde('0x14')](function(_0x450d9b){_0x3bee49['count']=_0x450d9b;if(_0x1bbae0[_0xecde('0x20')][_0xecde('0x2f')]){_0xce5303[_0xecde('0x30')]=[{'all':!![]}];}return db[_0xecde('0x2e')]['findAll'](_0xce5303);})[_0xecde('0x14')](function(_0x58ae40){_0x3bee49['rows']=_['map'](_0x58ae40,function(_0xaaba4f){if(_0xaaba4f[_0xecde('0x31')]===_0xecde('0x32')){var _0x48876a=encryptor[_0xecde('0x33')](_0xaaba4f[_0xecde('0x34')]);_0xaaba4f[_0xecde('0x34')]=maskClientSecret(_0x48876a);}return _0xaaba4f;});return _0x3bee49;})[_0xecde('0x14')](respondWithFilteredResult(_0x43f2cc,_0xce5303))[_0xecde('0x35')](handleError(_0x43f2cc,null));};exports[_0xecde('0x36')]=function(_0x4ef8ca,_0x3cd4c4){var _0x971e30={'raw':!![],'where':{'id':_0x4ef8ca[_0xecde('0x37')]['id']}},_0x525c84={};_0x525c84[_0xecde('0x1f')]=_[_0xecde('0x21')](db[_0xecde('0x2e')][_0xecde('0x1c')]);_0x525c84[_0xecde('0x20')]=_[_0xecde('0x21')](_0x4ef8ca[_0xecde('0x20')]);_0x525c84[_0xecde('0x22')]=_[_0xecde('0x23')](_0x525c84[_0xecde('0x1f')],_0x525c84[_0xecde('0x20')]);_0x971e30[_0xecde('0x24')]=_[_0xecde('0x23')](_0x525c84[_0xecde('0x1f')],qs[_0xecde('0x25')](_0x4ef8ca[_0xecde('0x20')][_0xecde('0x25')]));_0x971e30[_0xecde('0x24')]=_0x971e30[_0xecde('0x24')][_0xecde('0x26')]?_0x971e30[_0xecde('0x24')]:_0x525c84[_0xecde('0x1f')];if(_0x4ef8ca[_0xecde('0x20')]['includeAll']){_0x971e30[_0xecde('0x30')]=[{'all':!![]}];}_0x971e30=_[_0xecde('0x2d')]({},_0x971e30,_0x4ef8ca[_0xecde('0x38')]);return db[_0xecde('0x2e')][_0xecde('0x39')](_0x971e30)[_0xecde('0x14')](handleEntityNotFound(_0x3cd4c4,null))[_0xecde('0x14')](function(_0x2f5441){if(_0x2f5441[_0xecde('0x31')]===_0xecde('0x32')){var _0x2fb39e=encryptor['decryptString'](_0x2f5441[_0xecde('0x34')]);_0x2f5441[_0xecde('0x34')]=maskClientSecret(_0x2fb39e);}return _0x2f5441;})[_0xecde('0x14')](respondWithResult(_0x3cd4c4,null))['catch'](handleError(_0x3cd4c4,null));};exports['create']=function(_0x40575f,_0x44e4e4){if(!_0x40575f[_0xecde('0x3a')][_0xecde('0x18')])throw new Error(_0xecde('0x3b'));if(!_0x40575f[_0xecde('0x3a')][_0xecde('0x31')])throw new Error('Service\x20parameter\x20not\x20specified');var _0x344497=db['CloudProvider'][_0xecde('0x1c')]['service'][_0xecde('0x3c')];if(!_0x344497[_0xecde('0x3d')](_0x40575f[_0xecde('0x3a')][_0xecde('0x31')]))throw new Error(_0xecde('0x3e')+_0x344497[_0xecde('0x3f')](',\x20'));if(_0x40575f[_0xecde('0x3a')][_0xecde('0x31')]===_0xecde('0x32')&&_0x40575f[_0xecde('0x3a')][_0xecde('0x34')]){_0x40575f['body'][_0xecde('0x34')]=encryptor[_0xecde('0x40')](_0x40575f[_0xecde('0x3a')][_0xecde('0x34')]);}return db[_0xecde('0x2e')][_0xecde('0x41')](_0x40575f[_0xecde('0x3a')],{})['then'](respondWithResult(_0x44e4e4,0xc9))['catch'](handleError(_0x44e4e4,null));};exports['update']=function(_0x36f5fc,_0x65bb7b){if(_0x36f5fc[_0xecde('0x3a')]['id']){delete _0x36f5fc[_0xecde('0x3a')]['id'];}return db[_0xecde('0x2e')][_0xecde('0x39')]({'where':{'id':_0x36f5fc['params']['id']}})[_0xecde('0x14')](handleEntityNotFound(_0x65bb7b,null))['then'](function(_0x4f3b70){if(_0x4f3b70['service']===_0xecde('0x32')&&_0x36f5fc[_0xecde('0x3a')][_0xecde('0x34')]){_0x36f5fc[_0xecde('0x3a')][_0xecde('0x34')]=encryptor[_0xecde('0x40')](_0x36f5fc[_0xecde('0x3a')]['data3']);}return _0x4f3b70;})['then'](saveUpdates(_0x36f5fc['body'],null))[_0xecde('0x14')](respondWithResult(_0x65bb7b,null))[_0xecde('0x35')](handleError(_0x65bb7b,null));};exports[_0xecde('0x42')]=function(_0x5e2fd6,_0x9ee1e){return db[_0xecde('0x2e')]['find']({'where':{'id':_0x5e2fd6[_0xecde('0x37')]['id']}})[_0xecde('0x14')](handleEntityNotFound(_0x9ee1e,null))[_0xecde('0x14')](removeEntity(_0x9ee1e,null))['catch'](handleError(_0x9ee1e,null));};exports[_0xecde('0x43')]=function(_0x12674d,_0x36e6bb){return db[_0xecde('0x2e')][_0xecde('0x44')]({'where':{'id':_0x12674d['params']['id']},'raw':!![]})['then'](function(_0x580f3c){if(!_0x580f3c)return _0x36e6bb[_0xecde('0x15')](0x194);return{'url':oauth[_0xecde('0x45')](_0x580f3c,_0x12674d[_0xecde('0x46')]['id'])};})[_0xecde('0x14')](respondWithResult(_0x36e6bb,null))['catch'](handleError(_0x36e6bb,null));};exports[_0xecde('0x47')]=function(_0x5e9768,_0x586dbe){var _0x4755bc=_0x5e9768[_0xecde('0x3a')];var _0x2e0aa4;var _0x4d6565;if(_0x4755bc[_0xecde('0x16')])throw _0x4755bc;redis[_0xecde('0x48')](_0x4755bc[_0xecde('0x49')])['then'](function(_0x3937ff){if(!_0x3937ff)throw new Error(_0xecde('0x4a'));_0x2e0aa4=JSON[_0xecde('0x4b')](_0x3937ff);var _0xd1bbb2=Buffer[_0xecde('0x4c')](_0x4755bc[_0xecde('0x49')],_0xecde('0x4d'))['toString'](_0xecde('0x4e'));_0x4d6565=JSON[_0xecde('0x4b')](_0xd1bbb2);if(!oauth[_0xecde('0x4f')](_0x4755bc['id_token'],_0x2e0aa4[_0xecde('0x50')]))throw new Error(_0xecde('0x51'));redis[_0xecde('0x52')](_0x4755bc[_0xecde('0x49')]);return oauth['getOauth2MicrosoftAccessToken'](_0x4755bc[_0xecde('0x53')],_0x2e0aa4);})['then'](function(_0x698a95){_0x2e0aa4[_0xecde('0x54')]=_0x698a95[_0xecde('0x55')];_0x2e0aa4['data6']=_0x698a95[_0xecde('0x56')];return db[_0xecde('0x2e')]['update']({'data5':_0x2e0aa4[_0xecde('0x54')],'data6':_0x2e0aa4[_0xecde('0x57')]},{'where':{'id':_0x2e0aa4['id']}});})[_0xecde('0x14')](function(){oauth[_0xecde('0x58')](_0x2e0aa4);socket['emit'](_0xecde('0x59'),{'id':_0x4d6565['id']});return;})[_0xecde('0x14')](respondWithStatusCode(_0x586dbe,null))[_0xecde('0x35')](function(_0x4d0d3d){if(_0x4d6565){socket['emit'](_0xecde('0x5a'),{'id':_0x4d6565['id']});}if(!_0x2e0aa4){logger['error'](_0xecde('0x5b'),_0x4d0d3d);return _0x586dbe[_0xecde('0xb')](0x1f4)[_0xecde('0x19')](_0x4d0d3d[_0xecde('0x5c')]);}logger['error'](_0xecde('0x5d'),_0x2e0aa4['id'],JSON[_0xecde('0x5e')](_0x4d0d3d));});};
\ No newline at end of file
+var _0x69a7=['base64','toString','isValidIdToken','id_token','del','getOauth2MicrosoftAccessToken','data5','access_token','data6','refresh_token','startRefreshInterval','emit','microsoftAuthorization:success','send','message','Authentication\x20failed\x20for\x20cloud\x20provider\x20#%s,\x20err:%s','lodash','../../config/environment','../../config/logger','api','./cloudProvider.oauth','defaults','redis','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','update','then','destroy','name','padEnd','slice','index','map','CloudProvider','rawAttributes','fieldName','type','model','keys','query','filters','intersection','attributes','fields','length','hasOwnProperty','order','where','pick','merge','VIRTUAL','filter','findAll','rows','MicrosoftAzure','decryptString','data3','catch','show','params','options','find','service','create','body','Name\x20parameter\x20not\x20specified','includes','Invalid\x20service\x20parameter.\x20Allowed\x20values:\x20','join','encryptString','oauth2MicrosoftAuthorize','findOne','generateMicrosoftAuthorizationUrl','user','oauth2MicrosoftCallback','error','state','parse','from'];(function(_0x21bf1f,_0x451580){var _0x2d2020=function(_0x46370f){while(--_0x46370f){_0x21bf1f['push'](_0x21bf1f['shift']());}};_0x2d2020(++_0x451580);}(_0x69a7,0x67));var _0x769a=function(_0x45aa72,_0x8af642){_0x45aa72=_0x45aa72-0x0;var _0x75adaa=_0x69a7[_0x45aa72];return _0x75adaa;};'use strict';var _=require(_0x769a('0x0'));var Redis=require('ioredis');var qs=require('../../components/parsers/qs');var encryptor=require('../../components/encryptor');var config=require(_0x769a('0x1'));var logger=require(_0x769a('0x2'))(_0x769a('0x3'));var db=require('../../mysqldb')['db'];var oauth=require(_0x769a('0x4'));config['redis']=_[_0x769a('0x5')](config[_0x769a('0x6')],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));var redis=new Redis(config[_0x769a('0x6')]);function respondWithStatusCode(_0x462d2b,_0x303930){_0x303930=_0x303930||0xcc;return function(_0x86760d){if(_0x86760d){return _0x462d2b[_0x769a('0x7')](_0x303930);}return _0x462d2b[_0x769a('0x8')](_0x303930)[_0x769a('0x9')]();};}function respondWithResult(_0x21df77,_0x12530f){_0x12530f=_0x12530f||0xc8;return function(_0x2c8744){if(_0x2c8744){return _0x21df77['status'](_0x12530f)[_0x769a('0xa')](_0x2c8744);}};}function respondWithFilteredResult(_0x118297,_0x4e7223){return function(_0x449feb){if(_0x449feb){var _0x1f5444=typeof _0x4e7223[_0x769a('0xb')]===_0x769a('0xc')&&typeof _0x4e7223[_0x769a('0xd')]===_0x769a('0xc');var _0x4c8b90=_0x449feb[_0x769a('0xe')];var _0x31287d=_0x1f5444?0x0:_0x4e7223['offset'];var _0x475483=_0x1f5444?_0x449feb[_0x769a('0xe')]:_0x4e7223[_0x769a('0xb')]+_0x4e7223[_0x769a('0xd')];var _0x34dab5;if(_0x475483>=_0x4c8b90){_0x475483=_0x4c8b90;_0x34dab5=0xc8;}else{_0x34dab5=0xce;}_0x118297[_0x769a('0x8')](_0x34dab5);return _0x118297[_0x769a('0xf')](_0x769a('0x10'),_0x31287d+'-'+_0x475483+'/'+_0x4c8b90)[_0x769a('0xa')](_0x449feb);}return null;};}function saveUpdates(_0x5e924b){return function(_0x549d15){if(_0x549d15){return _0x549d15[_0x769a('0x11')](_0x5e924b)[_0x769a('0x12')](function(_0x15bc1c){return _0x15bc1c;});}return null;};}function removeEntity(_0x528b09){return function(_0x13c319){if(_0x13c319){return _0x13c319[_0x769a('0x13')]()[_0x769a('0x12')](function(){_0x528b09['status'](0xcc)[_0x769a('0x9')]();});}};}function handleEntityNotFound(_0x54a2b0){return function(_0x5a291c){if(!_0x5a291c){_0x54a2b0[_0x769a('0x7')](0x194);}return _0x5a291c;};}function handleError(_0x3619a7,_0x5348f5){_0x5348f5=_0x5348f5||0x1f4;return function(_0x3fe62c){logger['error'](_0x3fe62c['stack']);if(_0x3fe62c[_0x769a('0x14')]){delete _0x3fe62c[_0x769a('0x14')];}_0x3619a7['status'](_0x5348f5)['send'](_0x3fe62c);};}function maskClientSecret(_0x3534b5){return _[_0x769a('0x15')](_0x3534b5[_0x769a('0x16')](0x0,0x3),0x14,'*');}exports[_0x769a('0x17')]=function(_0x29812e,_0x530ed7){var _0x324f18={},_0x74a5c1={},_0x27f5cf={'count':0x0,'rows':[]};var _0x228b7f=_[_0x769a('0x18')](db[_0x769a('0x19')][_0x769a('0x1a')],function(_0x24856c){return{'name':_0x24856c[_0x769a('0x1b')],'type':_0x24856c[_0x769a('0x1c')]['key']};});_0x74a5c1[_0x769a('0x1d')]=_[_0x769a('0x18')](_0x228b7f,_0x769a('0x14'));_0x74a5c1['query']=_[_0x769a('0x1e')](_0x29812e[_0x769a('0x1f')]);_0x74a5c1[_0x769a('0x20')]=_[_0x769a('0x21')](_0x74a5c1['model'],_0x74a5c1['query']);_0x324f18[_0x769a('0x22')]=_[_0x769a('0x21')](_0x74a5c1[_0x769a('0x1d')],qs[_0x769a('0x23')](_0x29812e['query'][_0x769a('0x23')]));_0x324f18[_0x769a('0x22')]=_0x324f18[_0x769a('0x22')][_0x769a('0x24')]?_0x324f18[_0x769a('0x22')]:_0x74a5c1[_0x769a('0x1d')];if(!_0x29812e[_0x769a('0x1f')][_0x769a('0x25')]('nolimit')){_0x324f18[_0x769a('0xd')]=qs['limit'](_0x29812e[_0x769a('0x1f')][_0x769a('0xd')]);_0x324f18[_0x769a('0xb')]=qs[_0x769a('0xb')](_0x29812e['query'][_0x769a('0xb')]);}_0x324f18[_0x769a('0x26')]=qs['sort'](_0x29812e[_0x769a('0x1f')]['sort']);_0x324f18[_0x769a('0x27')]=qs[_0x769a('0x20')](_[_0x769a('0x28')](_0x29812e['query'],_0x74a5c1[_0x769a('0x20')]),_0x228b7f);if(_0x29812e['query']['filter']){_0x324f18['where']=_[_0x769a('0x29')](_0x324f18[_0x769a('0x27')],{'$or':_[_0x769a('0x18')](_0x228b7f,function(_0x457dec){if(_0x457dec[_0x769a('0x1c')]!==_0x769a('0x2a')){var _0x154c3a={};_0x154c3a[_0x457dec[_0x769a('0x14')]]={'$like':'%'+_0x29812e[_0x769a('0x1f')][_0x769a('0x2b')]+'%'};return _0x154c3a;}})});}_0x324f18=_[_0x769a('0x29')]({},_0x324f18,_0x29812e['options']);var _0x400465={'where':_0x324f18[_0x769a('0x27')]};return db[_0x769a('0x19')][_0x769a('0xe')](_0x400465)[_0x769a('0x12')](function(_0x2cf8de){_0x27f5cf['count']=_0x2cf8de;if(_0x29812e[_0x769a('0x1f')]['includeAll']){_0x324f18['include']=[{'all':!![]}];}return db[_0x769a('0x19')][_0x769a('0x2c')](_0x324f18);})['then'](function(_0xc59096){_0x27f5cf[_0x769a('0x2d')]=_[_0x769a('0x18')](_0xc59096,function(_0x791b56){if(_0x791b56['service']===_0x769a('0x2e')){var _0x534bf5=encryptor[_0x769a('0x2f')](_0x791b56[_0x769a('0x30')]);_0x791b56['data3']=maskClientSecret(_0x534bf5);}return _0x791b56;});return _0x27f5cf;})['then'](respondWithFilteredResult(_0x530ed7,_0x324f18))[_0x769a('0x31')](handleError(_0x530ed7,null));};exports[_0x769a('0x32')]=function(_0x461d96,_0x302730){var _0x28c9e4={'raw':!![],'where':{'id':_0x461d96[_0x769a('0x33')]['id']}},_0x2eb57a={};_0x2eb57a[_0x769a('0x1d')]=_['keys'](db[_0x769a('0x19')][_0x769a('0x1a')]);_0x2eb57a[_0x769a('0x1f')]=_[_0x769a('0x1e')](_0x461d96[_0x769a('0x1f')]);_0x2eb57a['filters']=_['intersection'](_0x2eb57a[_0x769a('0x1d')],_0x2eb57a[_0x769a('0x1f')]);_0x28c9e4[_0x769a('0x22')]=_[_0x769a('0x21')](_0x2eb57a['model'],qs['fields'](_0x461d96[_0x769a('0x1f')][_0x769a('0x23')]));_0x28c9e4['attributes']=_0x28c9e4[_0x769a('0x22')][_0x769a('0x24')]?_0x28c9e4[_0x769a('0x22')]:_0x2eb57a[_0x769a('0x1d')];if(_0x461d96[_0x769a('0x1f')]['includeAll']){_0x28c9e4['include']=[{'all':!![]}];}_0x28c9e4=_[_0x769a('0x29')]({},_0x28c9e4,_0x461d96[_0x769a('0x34')]);return db['CloudProvider'][_0x769a('0x35')](_0x28c9e4)[_0x769a('0x12')](handleEntityNotFound(_0x302730,null))[_0x769a('0x12')](function(_0x310b71){if(_0x310b71[_0x769a('0x36')]==='MicrosoftAzure'){var _0x54d012=encryptor[_0x769a('0x2f')](_0x310b71[_0x769a('0x30')]);_0x310b71[_0x769a('0x30')]=maskClientSecret(_0x54d012);}return _0x310b71;})[_0x769a('0x12')](respondWithResult(_0x302730,null))['catch'](handleError(_0x302730,null));};exports[_0x769a('0x37')]=function(_0x447efe,_0x288685){if(!_0x447efe[_0x769a('0x38')][_0x769a('0x14')])throw new Error(_0x769a('0x39'));if(!_0x447efe[_0x769a('0x38')][_0x769a('0x36')])throw new Error('Service\x20parameter\x20not\x20specified');var _0x543d17=db['CloudProvider'][_0x769a('0x1a')][_0x769a('0x36')]['values'];if(!_0x543d17[_0x769a('0x3a')](_0x447efe['body'][_0x769a('0x36')]))throw new Error(_0x769a('0x3b')+_0x543d17[_0x769a('0x3c')](',\x20'));if(_0x447efe[_0x769a('0x38')]['service']===_0x769a('0x2e')&&_0x447efe[_0x769a('0x38')][_0x769a('0x30')]){_0x447efe[_0x769a('0x38')][_0x769a('0x30')]=encryptor[_0x769a('0x3d')](_0x447efe[_0x769a('0x38')][_0x769a('0x30')]);}return db[_0x769a('0x19')][_0x769a('0x37')](_0x447efe[_0x769a('0x38')],{})[_0x769a('0x12')](respondWithResult(_0x288685,0xc9))['catch'](handleError(_0x288685,null));};exports[_0x769a('0x11')]=function(_0xe2b731,_0x2437db){if(_0xe2b731['body']['id']){delete _0xe2b731['body']['id'];}return db[_0x769a('0x19')][_0x769a('0x35')]({'where':{'id':_0xe2b731[_0x769a('0x33')]['id']}})['then'](handleEntityNotFound(_0x2437db,null))[_0x769a('0x12')](function(_0x3c929d){if(_0x3c929d[_0x769a('0x36')]===_0x769a('0x2e')&&_0xe2b731[_0x769a('0x38')][_0x769a('0x30')]){_0xe2b731[_0x769a('0x38')][_0x769a('0x30')]=encryptor[_0x769a('0x3d')](_0xe2b731[_0x769a('0x38')][_0x769a('0x30')]);}return _0x3c929d;})[_0x769a('0x12')](saveUpdates(_0xe2b731[_0x769a('0x38')],null))[_0x769a('0x12')](respondWithResult(_0x2437db,null))[_0x769a('0x31')](handleError(_0x2437db,null));};exports[_0x769a('0x13')]=function(_0xf6be0d,_0x1670b9){return db['CloudProvider'][_0x769a('0x35')]({'where':{'id':_0xf6be0d[_0x769a('0x33')]['id']}})[_0x769a('0x12')](handleEntityNotFound(_0x1670b9,null))[_0x769a('0x12')](removeEntity(_0x1670b9,null))[_0x769a('0x31')](handleError(_0x1670b9,null));};exports[_0x769a('0x3e')]=function(_0x1575c3,_0x4e6949){return db[_0x769a('0x19')][_0x769a('0x3f')]({'where':{'id':_0x1575c3[_0x769a('0x33')]['id']},'raw':!![]})['then'](function(_0x574f15){if(!_0x574f15)return _0x4e6949[_0x769a('0x7')](0x194);return{'url':oauth[_0x769a('0x40')](_0x574f15,_0x1575c3[_0x769a('0x41')]['id'])};})[_0x769a('0x12')](respondWithResult(_0x4e6949,null))['catch'](handleError(_0x4e6949,null));};exports[_0x769a('0x42')]=function(_0x4711ef,_0x728717){var _0x197e8f=_0x4711ef[_0x769a('0x38')];var _0x54779f;var _0x2fa765;if(_0x197e8f[_0x769a('0x43')])throw _0x197e8f;redis['get'](_0x197e8f[_0x769a('0x44')])[_0x769a('0x12')](function(_0xf7aae9){if(!_0xf7aae9)throw new Error('Invalid\x20state\x20parameter');_0x54779f=JSON[_0x769a('0x45')](_0xf7aae9);var _0x217de5=Buffer[_0x769a('0x46')](_0x197e8f['state'],_0x769a('0x47'))[_0x769a('0x48')]('ascii');_0x2fa765=JSON[_0x769a('0x45')](_0x217de5);if(!oauth[_0x769a('0x49')](_0x197e8f[_0x769a('0x4a')],_0x54779f['oauth2Claims']))throw new Error('Unable\x20to\x20validate\x20id_token');redis[_0x769a('0x4b')](_0x197e8f[_0x769a('0x44')]);return oauth[_0x769a('0x4c')](_0x197e8f['code'],_0x54779f);})[_0x769a('0x12')](function(_0x2a5445){_0x54779f[_0x769a('0x4d')]=_0x2a5445[_0x769a('0x4e')];_0x54779f[_0x769a('0x4f')]=_0x2a5445[_0x769a('0x50')];return db[_0x769a('0x19')]['update']({'data5':_0x54779f[_0x769a('0x4d')],'data6':_0x54779f['data6']},{'where':{'id':_0x54779f['id']}});})['then'](function(){oauth[_0x769a('0x51')](_0x54779f);socket[_0x769a('0x52')](_0x769a('0x53'),{'id':_0x2fa765['id']});return;})[_0x769a('0x12')](respondWithStatusCode(_0x728717,null))[_0x769a('0x31')](function(_0xabd27f){if(_0x2fa765){socket[_0x769a('0x52')]('microsoftAuthorization:error',{'id':_0x2fa765['id']});}if(!_0x54779f){logger[_0x769a('0x43')]('Invalid\x20authentication\x20state\x20parameter',_0xabd27f);return _0x728717[_0x769a('0x8')](0x1f4)[_0x769a('0x54')](_0xabd27f[_0x769a('0x55')]);}logger[_0x769a('0x43')](_0x769a('0x56'),_0x54779f['id'],JSON['stringify'](_0xabd27f));});};
\ No newline at end of file