Built motion from commit (unavailable).|2.2.0
[motion2.git] / server / api / authLocal / authLocal.controller.js
index d05960e..eefd2a7 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x1e82=['jayson/promise','../../config/logger','api','../../mysqldb','signToken','client','http','role','User','count','agent','then','getLicense','agents','Maximum\x20login\x20has\x20been\x20reached','admin','user','name','This\x20name\x20is\x20not\x20registered','authenticate','This\x20password\x20is\x20not\x20correct','catch','email','MailServerOut','Smtp','Unable\x20to\x20find\x20a\x20configured\x20SMTP\x20service!','service','host','port','secure','authentication','auth','pass','merge','\x22%s\x22\x20<%s>','SendMail','format','SendMail\x20error:\x20%s.\x20Please\x20contact\x20your\x20Administrator!','error','message','stringify','status','send','Something\x20went\x20wrong,\x20please\x20try\x20again.','online','body','Email\x20parameter\x20is\x20missing','generate','trim','toLowerCase','find','This\x20email\x20is\x20not\x20registered.','resetPasswordToken','resetPasswordExpires','now','save','xCally\x20Motion\x20Password\x20Reset','You\x20are\x20receiving\x20this\x20because\x20you\x20(or\x20someone\x20else)\x20have\x20requested\x20the\x20reset\x20of\x20the\x20password\x20for\x20your\x20account.\x0a\x0a','Please\x20click\x20on\x20the\x20following\x20link,\x20or\x20paste\x20this\x20into\x20your\x20browser\x20to\x20complete\x20the\x20process:\x0a\x0a','http://','headers','/reset/','If\x20you\x20did\x20not\x20request\x20this,\x20please\x20ignore\x20this\x20email\x20and\x20your\x20password\x20will\x20remain\x20unchanged.\x0a','Password\x20reset\x20token\x20is\x20invalid\x20or\x20has\x20expired.','password','Password\x20reset!','use','util','passport','passport-local','Strategy','bluebird'];(function(_0x2dafbe,_0x5d04de){var _0x58a45a=function(_0x50ac96){while(--_0x50ac96){_0x2dafbe['push'](_0x2dafbe['shift']());}};_0x58a45a(++_0x5d04de);}(_0x1e82,0x8b));var _0x21e8=function(_0x2e91f6,_0x577fd6){_0x2e91f6=_0x2e91f6-0x0;var _0x21945e=_0x1e82[_0x2e91f6];return _0x21945e;};'use strict';var util=require(_0x21e8('0x0'));var passport=require(_0x21e8('0x1'));var LocalStrategy=require(_0x21e8('0x2'))[_0x21e8('0x3')];var BPromise=require(_0x21e8('0x4'));var jayson=require(_0x21e8('0x5'));var _=require('lodash');var logger=require(_0x21e8('0x6'))(_0x21e8('0x7'));var rs=require('randomstring');var db=require(_0x21e8('0x8'))['db'];var signToken=require('../../components/auth/service')[_0x21e8('0x9')];var client=jayson[_0x21e8('0xa')][_0x21e8('0xb')]({'port':0x232b});var getLicense=function(_0x22cbd4){return new BPromise(function(_0x47b3b3,_0x45e5c1){var _0x3754c9=0x0;_0x22cbd4[_0x21e8('0xc')]!=='agent'&&_0x47b3b3(_0x22cbd4);return db[_0x21e8('0xd')][_0x21e8('0xe')]({'where':{'role':_0x21e8('0xf'),'online':!![],'id':{'$ne':_0x22cbd4['id']}}})[_0x21e8('0x10')](function(_0x5c6d17){_0x3754c9=_0x5c6d17;return require('../../config/license/util')[_0x21e8('0x11')]();})['then'](function(_0x131349){if(_0x131349&&_0x131349[_0x21e8('0x12')]&&_0x3754c9>=_0x131349['agents']){return _0x45e5c1({'message':_0x21e8('0x13')});}return _0x47b3b3(_0x22cbd4);})['catch'](function(_0x22d02e){return _0x45e5c1(_0x22d02e);});});};function localAuthenticate(_0x2afc7a,_0x16a877,_0x4eb523,_0x217605){_0x2afc7a['find']({'where':{'name':_0x16a877,'role':{'$or':[_0x21e8('0x14'),_0x21e8('0x15'),_0x21e8('0xf')]}}})['then'](function(_0x4ee658){if(!_0x4ee658||_0x4ee658&&_0x4ee658[_0x21e8('0x16')]!==_0x16a877){return _0x217605(null,![],{'message':_0x21e8('0x17')});}return getLicense(_0x4ee658);})[_0x21e8('0x10')](function(_0x18915a){_0x18915a[_0x21e8('0x18')](_0x4eb523,function(_0x13da4f,_0x29d932){if(_0x13da4f){return _0x217605(_0x13da4f);}if(!_0x29d932){return _0x217605(null,![],{'message':_0x21e8('0x19')});}else{return _0x217605(null,_0x18915a);}});})[_0x21e8('0x1a')](function(_0x552c6f){_0x217605(_0x552c6f);});}function sendServiceMail(_0x1c70cc){return db['MailAccount']['find']({'where':{'service':!![]},'attributes':['id',_0x21e8('0x16'),_0x21e8('0x1b')],'include':[{'model':db[_0x21e8('0x1c')],'as':_0x21e8('0x1d')}]})['then'](function(_0x45243f){if(!_0x45243f){throw new Error(_0x21e8('0x1e'));}var _0x25b678={'tls':{'rejectUnauthorized':![]}};if(_0x45243f[_0x21e8('0x1d')][_0x21e8('0x1f')]){_0x25b678[_0x21e8('0x1f')]=_0x45243f[_0x21e8('0x1d')][_0x21e8('0x1f')];}else{_0x25b678['host']=_0x45243f[_0x21e8('0x1d')][_0x21e8('0x20')];_0x25b678['port']=_0x45243f[_0x21e8('0x1d')][_0x21e8('0x21')];_0x25b678[_0x21e8('0x22')]=_0x45243f[_0x21e8('0x1d')][_0x21e8('0x22')];}if(_0x45243f[_0x21e8('0x1d')][_0x21e8('0x23')]){_0x25b678[_0x21e8('0x24')]={'user':_0x45243f['Smtp'][_0x21e8('0x15')],'pass':_0x45243f['Smtp'][_0x21e8('0x25')]};}var _0x364dad={'account':_0x25b678,'message':_[_0x21e8('0x26')]({'from':util['format'](_0x21e8('0x27'),_0x45243f['name'],_0x45243f[_0x21e8('0x1b')]||_0x45243f[_0x21e8('0x1d')][_0x21e8('0x15')])},_0x1c70cc)};return client['request'](_0x21e8('0x28'),_0x364dad);})[_0x21e8('0x10')](function(_0x364cd8){if(_0x364cd8['error']){throw new Error(util[_0x21e8('0x29')](_0x21e8('0x2a'),_0x364cd8[_0x21e8('0x2b')][_0x21e8('0x2c')]||JSON[_0x21e8('0x2d')](_0x364cd8[_0x21e8('0x2b')])));}return!![];});}function handleError(_0x2116f2,_0x3339b6,_0x20d095){return _0x2116f2[_0x21e8('0x2e')](_0x3339b6||0x1f4)[_0x21e8('0x2f')]({'message':_0x20d095?_0x20d095[_0x21e8('0x2c')]||_0x20d095:''});}exports['login']=function(_0x452dfa,_0x418d46,_0x5a5436){passport['authenticate']('local',function(_0x9f1117,_0x5504df,_0x45be6f){var _0x3ebd06=_0x9f1117||_0x45be6f;if(_0x3ebd06){return handleError(_0x418d46,0x191,_0x3ebd06);}if(!_0x5504df){return handleError(_0x418d46,0x194,{'message':_0x21e8('0x30')});}var _0x8a1d94=signToken(_0x5504df['id'],_0x5504df['role']);_0x418d46['json']({'id':_0x5504df['id'],'token':_0x8a1d94,'statusCall':'','isAlreadyLogged':_0x5504df[_0x21e8('0x31')]});})(_0x452dfa,_0x418d46,_0x5a5436);};exports['forgot']=function(_0x2c20ec,_0x1cf161,_0x25d51e){if(!_0x2c20ec[_0x21e8('0x32')]['email']){return handleError(_0x1cf161,0x1f4,{'message':_0x21e8('0x33')});}var _0x2acb3b=rs[_0x21e8('0x34')]();_0x2c20ec[_0x21e8('0x32')][_0x21e8('0x1b')]=_0x2c20ec['body'][_0x21e8('0x1b')][_0x21e8('0x35')]()[_0x21e8('0x36')]();return db[_0x21e8('0xd')][_0x21e8('0x37')]({'where':{'email':_0x2c20ec[_0x21e8('0x32')][_0x21e8('0x1b')]}})[_0x21e8('0x10')](function(_0x1b7ae0){if(!_0x1b7ae0){throw new Error(_0x21e8('0x38'));}_0x1b7ae0[_0x21e8('0x39')]=_0x2acb3b;_0x1b7ae0[_0x21e8('0x3a')]=Date[_0x21e8('0x3b')]()+0x36ee80;return _0x1b7ae0[_0x21e8('0x3c')]();})[_0x21e8('0x10')](function(){return sendServiceMail({'to':_0x2c20ec['body'][_0x21e8('0x1b')],'subject':_0x21e8('0x3d'),'text':_0x21e8('0x3e')+_0x21e8('0x3f')+_0x21e8('0x40')+_0x2c20ec[_0x21e8('0x41')][_0x21e8('0x20')]+_0x21e8('0x42')+_0x2acb3b+'\x0a\x0a'+_0x21e8('0x43')});})[_0x21e8('0x10')](function(){_0x1cf161['status'](0xc8)[_0x21e8('0x2f')]({'message':'Reset\x20Email\x20sent!'});})[_0x21e8('0x1a')](function(_0x13ffe5){return handleError(_0x1cf161,0x1f4,_0x13ffe5);});};exports['reset']=function(_0x2fc11,_0x2f7dc5,_0x4040bf){return db[_0x21e8('0xd')][_0x21e8('0x37')]({'where':{'resetPasswordToken':_0x2fc11['params']['token'],'resetPasswordExpires':{'$gt':Date[_0x21e8('0x3b')]()}}})[_0x21e8('0x10')](function(_0x22b2a7){if(!_0x22b2a7){throw new Error(_0x21e8('0x44'));}_0x22b2a7[_0x21e8('0x45')]=_0x2fc11[_0x21e8('0x32')][_0x21e8('0x45')];_0x22b2a7['resetPasswordToken']=null;_0x22b2a7[_0x21e8('0x3a')]=null;return _0x22b2a7['save']();})[_0x21e8('0x10')](function(){_0x2f7dc5[_0x21e8('0x2e')](0xc8)[_0x21e8('0x2f')]({'message':_0x21e8('0x46')});})[_0x21e8('0x1a')](function(_0x218845){return handleError(_0x2f7dc5,0x1f4,_0x218845);});};passport[_0x21e8('0x47')](new LocalStrategy({'usernameField':_0x21e8('0x16'),'passwordField':_0x21e8('0x45')},function(_0x2b91c2,_0x49ad00,_0x132f16){return localAuthenticate(db[_0x21e8('0xd')],_0x2b91c2,_0x49ad00,_0x132f16);}));
\ No newline at end of file
+var _0x2c0c=['save','xCally\x20Motion\x20Password\x20Reset','You\x20are\x20receiving\x20this\x20because\x20you\x20(or\x20someone\x20else)\x20have\x20requested\x20the\x20reset\x20of\x20the\x20password\x20for\x20your\x20account.\x0a\x0a','Please\x20click\x20on\x20the\x20following\x20link,\x20or\x20paste\x20this\x20into\x20your\x20browser\x20to\x20complete\x20the\x20process:\x0a\x0a','http://','headers','/reset/','If\x20you\x20did\x20not\x20request\x20this,\x20please\x20ignore\x20this\x20email\x20and\x20your\x20password\x20will\x20remain\x20unchanged.\x0a','Reset\x20Email\x20sent!','reset','params','token','Password\x20reset\x20token\x20is\x20invalid\x20or\x20has\x20expired.','use','password','passport','passport-local','Strategy','bluebird','jayson/promise','lodash','../../config/logger','api','randomstring','../../mysqldb','../../components/auth/service','signToken','User','count','then','getLicense','agents','Maximum\x20login\x20has\x20been\x20reached','catch','find','admin','name','This\x20name\x20is\x20not\x20registered','authenticate','This\x20password\x20is\x20not\x20correct','MailAccount','email','MailServerOut','Smtp','Unable\x20to\x20find\x20a\x20configured\x20SMTP\x20service!','service','host','port','secure','authentication','auth','user','pass','merge','format','request','SendMail','error','message','stringify','status','send','login','Something\x20went\x20wrong,\x20please\x20try\x20again.','json','forgot','body','Email\x20parameter\x20is\x20missing','generate','toLowerCase','This\x20email\x20is\x20not\x20registered.','resetPasswordToken','resetPasswordExpires','now'];(function(_0x20a584,_0xe384a5){var _0x4b41a8=function(_0x2127c6){while(--_0x2127c6){_0x20a584['push'](_0x20a584['shift']());}};_0x4b41a8(++_0xe384a5);}(_0x2c0c,0x1cb));var _0xc2c0=function(_0x584291,_0x24b5b3){_0x584291=_0x584291-0x0;var _0x4e7d08=_0x2c0c[_0x584291];return _0x4e7d08;};'use strict';var util=require('util');var passport=require(_0xc2c0('0x0'));var LocalStrategy=require(_0xc2c0('0x1'))[_0xc2c0('0x2')];var BPromise=require(_0xc2c0('0x3'));var jayson=require(_0xc2c0('0x4'));var _=require(_0xc2c0('0x5'));var logger=require(_0xc2c0('0x6'))(_0xc2c0('0x7'));var rs=require(_0xc2c0('0x8'));var db=require(_0xc2c0('0x9'))['db'];var signToken=require(_0xc2c0('0xa'))[_0xc2c0('0xb')];var client=jayson['client']['http']({'port':0x232b});var getLicense=function(_0x363e2b){return new BPromise(function(_0x5d160f,_0x2be73c){var _0x117817=0x0;_0x363e2b['role']!=='agent'&&_0x5d160f(_0x363e2b);return db[_0xc2c0('0xc')][_0xc2c0('0xd')]({'where':{'role':'agent','online':!![],'id':{'$ne':_0x363e2b['id']}}})[_0xc2c0('0xe')](function(_0x24e5aa){_0x117817=_0x24e5aa;return require('../../config/license/util')[_0xc2c0('0xf')]();})[_0xc2c0('0xe')](function(_0x5d131d){if(_0x5d131d&&_0x5d131d[_0xc2c0('0x10')]&&_0x117817>=_0x5d131d[_0xc2c0('0x10')]){return _0x2be73c({'message':_0xc2c0('0x11')});}return _0x5d160f(_0x363e2b);})[_0xc2c0('0x12')](function(_0x399765){return _0x2be73c(_0x399765);});});};function localAuthenticate(_0x415cce,_0x20dc0a,_0x5402b7,_0x56aa87){_0x415cce[_0xc2c0('0x13')]({'where':{'name':_0x20dc0a,'role':{'$or':[_0xc2c0('0x14'),'user','agent']}}})[_0xc2c0('0xe')](function(_0x2f431){if(!_0x2f431||_0x2f431&&_0x2f431[_0xc2c0('0x15')]!==_0x20dc0a){return _0x56aa87(null,![],{'message':_0xc2c0('0x16')});}return getLicense(_0x2f431);})[_0xc2c0('0xe')](function(_0x5bb598){_0x5bb598[_0xc2c0('0x17')](_0x5402b7,function(_0x3ae763,_0x360e51){if(_0x3ae763){return _0x56aa87(_0x3ae763);}if(!_0x360e51){return _0x56aa87(null,![],{'message':_0xc2c0('0x18')});}else{return _0x56aa87(null,_0x5bb598);}});})['catch'](function(_0x21d213){_0x56aa87(_0x21d213);});}function sendServiceMail(_0x26a7a4){return db[_0xc2c0('0x19')]['find']({'where':{'service':!![]},'attributes':['id',_0xc2c0('0x15'),_0xc2c0('0x1a')],'include':[{'model':db[_0xc2c0('0x1b')],'as':_0xc2c0('0x1c')}]})[_0xc2c0('0xe')](function(_0x53f952){if(!_0x53f952){throw new Error(_0xc2c0('0x1d'));}var _0x3a2a5d={'tls':{'rejectUnauthorized':![]}};if(_0x53f952[_0xc2c0('0x1c')][_0xc2c0('0x1e')]){_0x3a2a5d[_0xc2c0('0x1e')]=_0x53f952[_0xc2c0('0x1c')]['service'];}else{_0x3a2a5d[_0xc2c0('0x1f')]=_0x53f952[_0xc2c0('0x1c')][_0xc2c0('0x1f')];_0x3a2a5d[_0xc2c0('0x20')]=_0x53f952[_0xc2c0('0x1c')][_0xc2c0('0x20')];_0x3a2a5d[_0xc2c0('0x21')]=_0x53f952[_0xc2c0('0x1c')][_0xc2c0('0x21')];}if(_0x53f952[_0xc2c0('0x1c')][_0xc2c0('0x22')]){_0x3a2a5d[_0xc2c0('0x23')]={'user':_0x53f952[_0xc2c0('0x1c')][_0xc2c0('0x24')],'pass':_0x53f952[_0xc2c0('0x1c')][_0xc2c0('0x25')]};}var _0x263daf={'account':_0x3a2a5d,'message':_[_0xc2c0('0x26')]({'from':util[_0xc2c0('0x27')]('\x22%s\x22\x20<%s>',_0x53f952['name'],_0x53f952[_0xc2c0('0x1a')]||_0x53f952[_0xc2c0('0x1c')][_0xc2c0('0x24')])},_0x26a7a4)};return client[_0xc2c0('0x28')](_0xc2c0('0x29'),_0x263daf);})['then'](function(_0x3bc8d7){if(_0x3bc8d7[_0xc2c0('0x2a')]){throw new Error(util['format']('SendMail\x20error:\x20%s.\x20Please\x20contact\x20your\x20Administrator!',_0x3bc8d7[_0xc2c0('0x2a')][_0xc2c0('0x2b')]||JSON[_0xc2c0('0x2c')](_0x3bc8d7[_0xc2c0('0x2a')])));}return!![];});}function handleError(_0x4f0193,_0x1a7e8c,_0x178561){return _0x4f0193[_0xc2c0('0x2d')](_0x1a7e8c||0x1f4)[_0xc2c0('0x2e')]({'message':_0x178561?_0x178561[_0xc2c0('0x2b')]||_0x178561:''});}exports[_0xc2c0('0x2f')]=function(_0x3e002a,_0x55314f,_0x1ab160){passport[_0xc2c0('0x17')]('local',function(_0x16c7e9,_0x2a12e4,_0x5b9a51){var _0x5aaf19=_0x16c7e9||_0x5b9a51;if(_0x5aaf19){return handleError(_0x55314f,0x191,_0x5aaf19);}if(!_0x2a12e4){return handleError(_0x55314f,0x194,{'message':_0xc2c0('0x30')});}var _0x4edbc7=signToken(_0x2a12e4['id'],_0x2a12e4['role']);_0x55314f[_0xc2c0('0x31')]({'id':_0x2a12e4['id'],'token':_0x4edbc7,'statusCall':'','isAlreadyLogged':_0x2a12e4['online']});})(_0x3e002a,_0x55314f,_0x1ab160);};exports[_0xc2c0('0x32')]=function(_0x37d4af,_0x511fd2,_0x5ecfe2){if(!_0x37d4af[_0xc2c0('0x33')][_0xc2c0('0x1a')]){return handleError(_0x511fd2,0x1f4,{'message':_0xc2c0('0x34')});}var _0x57a42d=rs[_0xc2c0('0x35')]();_0x37d4af[_0xc2c0('0x33')][_0xc2c0('0x1a')]=_0x37d4af[_0xc2c0('0x33')][_0xc2c0('0x1a')]['trim']()[_0xc2c0('0x36')]();return db[_0xc2c0('0xc')]['find']({'where':{'email':_0x37d4af[_0xc2c0('0x33')][_0xc2c0('0x1a')]}})[_0xc2c0('0xe')](function(_0x22a881){if(!_0x22a881){throw new Error(_0xc2c0('0x37'));}_0x22a881[_0xc2c0('0x38')]=_0x57a42d;_0x22a881[_0xc2c0('0x39')]=Date[_0xc2c0('0x3a')]()+0x36ee80;return _0x22a881[_0xc2c0('0x3b')]();})[_0xc2c0('0xe')](function(){return sendServiceMail({'to':_0x37d4af[_0xc2c0('0x33')]['email'],'subject':_0xc2c0('0x3c'),'text':_0xc2c0('0x3d')+_0xc2c0('0x3e')+_0xc2c0('0x3f')+_0x37d4af[_0xc2c0('0x40')][_0xc2c0('0x1f')]+_0xc2c0('0x41')+_0x57a42d+'\x0a\x0a'+_0xc2c0('0x42')});})[_0xc2c0('0xe')](function(){_0x511fd2[_0xc2c0('0x2d')](0xc8)[_0xc2c0('0x2e')]({'message':_0xc2c0('0x43')});})[_0xc2c0('0x12')](function(_0x4a8617){return handleError(_0x511fd2,0x1f4,_0x4a8617);});};exports[_0xc2c0('0x44')]=function(_0x28b218,_0x50d391,_0x2b3e54){return db[_0xc2c0('0xc')][_0xc2c0('0x13')]({'where':{'resetPasswordToken':_0x28b218[_0xc2c0('0x45')][_0xc2c0('0x46')],'resetPasswordExpires':{'$gt':Date['now']()}}})[_0xc2c0('0xe')](function(_0x59a349){if(!_0x59a349){throw new Error(_0xc2c0('0x47'));}_0x59a349['password']=_0x28b218[_0xc2c0('0x33')]['password'];_0x59a349[_0xc2c0('0x38')]=null;_0x59a349[_0xc2c0('0x39')]=null;return _0x59a349[_0xc2c0('0x3b')]();})[_0xc2c0('0xe')](function(){_0x50d391[_0xc2c0('0x2d')](0xc8)[_0xc2c0('0x2e')]({'message':'Password\x20reset!'});})[_0xc2c0('0x12')](function(_0x4407b8){return handleError(_0x50d391,0x1f4,_0x4407b8);});};passport[_0xc2c0('0x48')](new LocalStrategy({'usernameField':'name','passwordField':_0xc2c0('0x49')},function(_0x194435,_0x1949eb,_0x21b188){return localAuthenticate(db[_0xc2c0('0xc')],_0x194435,_0x1949eb,_0x21b188);}));
\ No newline at end of file