Built motion from commit a9fb64cc6defd8fb3a5cc199221f878e91c0e969. Version 3.0.0...
[motion-next.git] / server / api / authLocal / authLocal.controller.js
index aa80e4c..1f7e9e4 100644 (file)
@@ -1 +1 @@
-const a35_0x4247=['SendMail','role','add','This\x20email\x20is\x20not\x20registered.','previousPasswords','authentication','allowedLoginAttempts','reset','trim','jayson/promise','user','MailServerOut','Password\x20reset!','Strategy','port','save','blockDuration','catch','securePassword','resetPasswordToken','Incorrect\x20username\x20and/or\x20password.\x20Please\x20retry\x20again\x20or\x20contact\x20the\x20administrator.','pass','The\x20user\x20is\x20disabled.\x20Please\x20contact\x20the\x20administrator.','lodash','now','http','The\x20user\x20is\x20blocked.\x20Please\x20contact\x20the\x20administrator.','passport','generate','xCally\x20Motion\x20Password\x20Reset','moment','message','admin','blockedAt','forgot','body','name','host','If\x20you\x20did\x20not\x20request\x20this,\x20please\x20ignore\x20this\x20email\x20and\x20your\x20password\x20will\x20remain\x20unchanged.\x0a','../../mysqldb','blocked','status','getLicense','You\x20are\x20receiving\x20this\x20because\x20you\x20(or\x20someone\x20else)\x20have\x20requested\x20the\x20reset\x20of\x20the\x20password\x20for\x20your\x20account.\x0a\x0a','/reset/','then','authenticate','http://','Reset\x20Email\x20sent!','format','client','password','use','minutes','randomstring','Email\x20parameter\x20is\x20missing','error','merge','passwordHistoryLimit','service','Password\x20reset\x20token\x20is\x20invalid\x20or\x20has\x20expired.','passport-local','util','disabled','findOne','stringify','headers','enforcePasswordHistory','Setting','email','agent','send','User','secure','signToken','request','loginAttempts','../../config/utils','sequelize','Smtp','\x22%s\x22\x20<%s>','clearBlockUser','../../components/auth/service','online','Use','toLowerCase'];(function(_0x209581,_0x42473a){const _0x52fd21=function(_0x266ad9){while(--_0x266ad9){_0x209581['push'](_0x209581['shift']());}};_0x52fd21(++_0x42473a);}(a35_0x4247,0x159));const a35_0x52fd=function(_0x209581,_0x42473a){_0x209581=_0x209581-0x0;let _0x52fd21=a35_0x4247[_0x209581];return _0x52fd21;};const _0x475c02=a35_0x52fd;'use strict';const util=require(_0x475c02('0x3d')),passport=require(_0x475c02('0x1a')),LocalStrategy=require(_0x475c02('0x3c'))[_0x475c02('0xc')],jayson=require(_0x475c02('0x8')),_=require(_0x475c02('0x16')),rs=require(_0x475c02('0x35')),moment=require(_0x475c02('0x1d')),db=require(_0x475c02('0x26'))['db'],{Op}=require(_0x475c02('0x4d')),authService=require(_0x475c02('0x51')),utils=require(_0x475c02('0x4c')),client=jayson[_0x475c02('0x31')][_0x475c02('0x18')]({'port':0x232b});function localAuthenticate(_0x266ad9,_0x538819,_0x2050c9,_0xc86388){const _0x24e20e=_0x475c02;let _0x1eecdb,_0x4385ef;return db[_0x24e20e('0x43')][_0x24e20e('0x3f')]({'where':{'id':0x1},'attributes':['allowedLoginAttempts',_0x24e20e('0xf')],'raw':!![]})[_0x24e20e('0x2c')](function(_0x26856d){const _0x354a53=_0x24e20e;return _0x1eecdb=_0x26856d,_0x266ad9[_0x354a53('0x3f')]({'attributes':['id',_0x354a53('0x23'),_0x354a53('0x32'),'salt','role',_0x354a53('0x3e'),_0x354a53('0x27'),_0x354a53('0x20'),_0x354a53('0x4b')],'where':{'name':_0x538819,'role':{[Op['or']]:[_0x354a53('0x1f'),_0x354a53('0x9'),_0x354a53('0x45')]}}});})[_0x24e20e('0x2c')](function(_0x1c97b5){const _0x560fa7=_0x24e20e;if(!_0x1c97b5||_0x1c97b5&&_0x1c97b5['name']!==_0x538819)throw new Error(_0x560fa7('0x13'));else return _0x4385ef=_0x1c97b5,_0x4385ef;})[_0x24e20e('0x2c')](function(){const _0x124d94=_0x24e20e;_0x4385ef[_0x124d94('0x2d')](_0x2050c9,function(_0x44c203,_0x9ccf1e){const _0x307dd9=_0x124d94,_0x1b7bc3=_0x4385ef[_0x307dd9('0x4b')]+0x1;if(_0x44c203)return _0xc86388(_0x44c203);else{if(!_0x9ccf1e){if(_0x4385ef['disabled'])return _0xc86388(null,![],{'message':_0x307dd9('0x13')});else return _0x1eecdb[_0x307dd9('0x5')]>0x0?_0x4385ef[_0x307dd9('0x27')]?_0x1eecdb['blockDuration']>0x0?moment(_0x4385ef[_0x307dd9('0x20')])[_0x307dd9('0x1')](_0x1eecdb[_0x307dd9('0xf')],'minutes')>moment()?_0xc86388(null,![],{'message':_0x307dd9('0x13')}):utils['clearBlockUser'](_0x4385ef,_0x1b7bc3,![],null)[_0x307dd9('0x2c')](function(){const _0x81db4=_0x307dd9;return _0xc86388(null,![],{'message':_0x81db4('0x13')});}):_0xc86388(null,![],{'message':'Incorrect\x20username\x20and/or\x20password.\x20Please\x20retry\x20again\x20or\x20contact\x20the\x20administrator.'}):_0x1b7bc3>=_0x1eecdb[_0x307dd9('0x5')]?utils[_0x307dd9('0x50')](_0x4385ef,0x0,!![],moment())[_0x307dd9('0x2c')](function(){const _0x4c9bb4=_0x307dd9;return _0xc86388(null,![],{'message':_0x4c9bb4('0x13')});}):utils[_0x307dd9('0x50')](_0x4385ef,_0x1b7bc3,![],null)[_0x307dd9('0x2c')](function(){const _0x21d5d2=_0x307dd9;return _0xc86388(null,![],{'message':_0x21d5d2('0x13')});}):_0xc86388(null,![],{'message':_0x307dd9('0x13')});}else{if(_0x4385ef[_0x307dd9('0x3e')])return _0xc86388(null,![],{'message':'Incorrect\x20username\x20and/or\x20password.\x20Please\x20retry\x20again\x20or\x20contact\x20the\x20administrator.'});else return _0x1eecdb[_0x307dd9('0x5')]>0x0?_0x4385ef[_0x307dd9('0x27')]?_0x1eecdb[_0x307dd9('0xf')]>0x0?moment(_0x4385ef[_0x307dd9('0x20')])[_0x307dd9('0x1')](_0x1eecdb[_0x307dd9('0xf')],_0x307dd9('0x34'))>moment()?_0xc86388(null,![],{'message':_0x307dd9('0x13')}):utils['clearBlockUser'](_0x4385ef,0x0,![],null)['then'](function(){const _0x426b11=_0x307dd9;return utils[_0x426b11('0x29')](_0x4385ef);})[_0x307dd9('0x2c')](function(){return _0xc86388(null,_0x4385ef);}):_0xc86388(null,![],{'message':_0x307dd9('0x13')}):utils[_0x307dd9('0x50')](_0x4385ef,0x0,![],null)['then'](function(){const _0x2da62e=_0x307dd9;return utils[_0x2da62e('0x29')](_0x4385ef);})[_0x307dd9('0x2c')](function(){return _0xc86388(null,_0x4385ef);})['catch'](function(_0x137437){return _0xc86388(null,![],_0x137437);}):_0x4385ef[_0x307dd9('0x27')]?_0xc86388(null,![],{'message':_0x307dd9('0x13')}):utils[_0x307dd9('0x29')](_0x4385ef)['then'](function(){return _0xc86388(null,_0x4385ef);});}}});})[_0x24e20e('0x10')](function(_0x753c94){return _0xc86388(null,![],_0x753c94);});}function sendServiceMail(_0x499c0a){const _0x266655=_0x475c02;return db['MailAccount'][_0x266655('0x3f')]({'where':{'service':!![]},'attributes':['id','name',_0x266655('0x44')],'include':[{'model':db[_0x266655('0xa')],'as':_0x266655('0x4e')}]})[_0x266655('0x2c')](function(_0x3266f5){const _0x5a8681=_0x266655;if(!_0x3266f5)throw new Error('Unable\x20to\x20find\x20a\x20configured\x20SMTP\x20service!');const _0x18a838={'tls':{'rejectUnauthorized':![]}};_0x3266f5[_0x5a8681('0x4e')][_0x5a8681('0x3a')]?_0x18a838['service']=_0x3266f5[_0x5a8681('0x4e')]['service']:(_0x18a838['host']=_0x3266f5[_0x5a8681('0x4e')]['host'],_0x18a838[_0x5a8681('0xd')]=_0x3266f5[_0x5a8681('0x4e')][_0x5a8681('0xd')],_0x18a838['secure']=_0x3266f5[_0x5a8681('0x4e')][_0x5a8681('0x48')]);_0x3266f5[_0x5a8681('0x4e')][_0x5a8681('0x4')]&&(_0x18a838['auth']={'user':_0x3266f5[_0x5a8681('0x4e')]['user'],'pass':_0x3266f5['Smtp'][_0x5a8681('0x14')]});const _0x44c134={'account':_0x18a838,'message':_[_0x5a8681('0x38')]({'from':util[_0x5a8681('0x30')](_0x5a8681('0x4f'),_0x3266f5[_0x5a8681('0x23')],_0x3266f5['email']||_0x3266f5[_0x5a8681('0x4e')]['user'])},_0x499c0a)};return client[_0x5a8681('0x4a')](_0x5a8681('0x55'),_0x44c134);})[_0x266655('0x2c')](function(_0x10c843){const _0x53ba92=_0x266655;if(_0x10c843['error'])throw new Error(util[_0x53ba92('0x30')]('SendMail\x20error:\x20%s.\x20Please\x20contact\x20your\x20Administrator!',_0x10c843[_0x53ba92('0x37')]['message']||JSON[_0x53ba92('0x40')](_0x10c843[_0x53ba92('0x37')])));return!![];});}function handleError(_0x10fb23,_0x12a28c,_0x27390a){const _0x54a7a8=_0x475c02;return _0x10fb23[_0x54a7a8('0x28')](_0x12a28c||0x1f4)[_0x54a7a8('0x46')]({'message':_0x27390a?_0x27390a[_0x54a7a8('0x1e')]||_0x27390a:''});}exports['login']=function(_0xb436fa,_0x1683ff,_0x81c68a){const _0x22b07b=_0x475c02;passport[_0x22b07b('0x2d')]('local',function(_0x4f6af9,_0x4b3558,_0x4c5785){const _0x81e4fe=_0x22b07b,_0x328907=_0x4f6af9||_0x4c5785;if(_0x328907)return handleError(_0x1683ff,0x191,_0x328907);if(!_0x4b3558)return handleError(_0x1683ff,0x194,{'message':'Something\x20went\x20wrong,\x20please\x20try\x20again.'});else{const _0x1acc33={'payload':{'id':_0x4b3558['id'],'role':_0x4b3558[_0x81e4fe('0x0')]},'options':{'expiresIn':0x15180}};return authService[_0x81e4fe('0x49')](_0x1acc33)['then'](function(_0x5354e1){const _0x229ed9=_0x81e4fe;_0x1683ff['json']({'id':_0x4b3558['id'],'token':_0x5354e1,'statusCall':'','isAlreadyLogged':_0x4b3558[_0x229ed9('0x52')]});});}})(_0xb436fa,_0x1683ff,_0x81c68a);},exports[_0x475c02('0x21')]=function(_0x490123,_0x27fb9e){const _0x1c45c5=_0x475c02;if(!_0x490123[_0x1c45c5('0x22')][_0x1c45c5('0x44')])return handleError(_0x27fb9e,0x1f4,{'message':_0x1c45c5('0x36')});const _0x3fae3d=rs[_0x1c45c5('0x1b')]();_0x490123[_0x1c45c5('0x22')][_0x1c45c5('0x44')]=_0x490123[_0x1c45c5('0x22')]['email'][_0x1c45c5('0x7')]()[_0x1c45c5('0x54')]();let _0x26bb51;return db[_0x1c45c5('0x43')][_0x1c45c5('0x3f')]({'where':{'id':0x1},'attributes':[_0x1c45c5('0x5'),_0x1c45c5('0xf')],'raw':!![]})[_0x1c45c5('0x2c')](function(_0x203acb){const _0x32f692=_0x1c45c5;return _0x26bb51=_0x203acb,db[_0x32f692('0x53')]['findOne']({'where':{'email':_0x490123[_0x32f692('0x22')][_0x32f692('0x44')]}});})[_0x1c45c5('0x2c')](function(_0x1c15a3){const _0x5de7fb=_0x1c45c5;if(!_0x1c15a3)throw new Error(_0x5de7fb('0x2'));if(_0x1c15a3[_0x5de7fb('0x3e')])throw new Error(_0x5de7fb('0x15'));if(_0x1c15a3[_0x5de7fb('0x27')]){if(moment(_0x1c15a3[_0x5de7fb('0x20')])[_0x5de7fb('0x1')](_0x26bb51[_0x5de7fb('0xf')],_0x5de7fb('0x34'))>moment())throw new Error(_0x5de7fb('0x19'));else _0x1c15a3[_0x5de7fb('0x27')]=![],_0x1c15a3[_0x5de7fb('0x20')]=null;}return _0x1c15a3['resetPasswordToken']=_0x3fae3d,_0x1c15a3['resetPasswordExpires']=Date[_0x5de7fb('0x17')]()+0x36ee80,_0x1c15a3['save']();})[_0x1c45c5('0x2c')](function(){const _0x2c234a=_0x1c45c5;return sendServiceMail({'to':_0x490123['body'][_0x2c234a('0x44')],'subject':_0x2c234a('0x1c'),'text':_0x2c234a('0x2a')+'Please\x20click\x20on\x20the\x20following\x20link,\x20or\x20paste\x20this\x20into\x20your\x20browser\x20to\x20complete\x20the\x20process:\x0a\x0a'+_0x2c234a('0x2e')+_0x490123[_0x2c234a('0x41')][_0x2c234a('0x24')]+_0x2c234a('0x2b')+_0x3fae3d+'\x0a\x0a'+_0x2c234a('0x25')});})[_0x1c45c5('0x2c')](function(){const _0x3c27fc=_0x1c45c5;_0x27fb9e['status'](0xc8)[_0x3c27fc('0x46')]({'message':_0x3c27fc('0x2f')});})['catch'](function(_0x231861){return handleError(_0x27fb9e,0x1f4,_0x231861);});},exports[_0x475c02('0x6')]=function(_0x4cab3d,_0x14ef4c){const _0x37486e=_0x475c02;return db[_0x37486e('0x47')][_0x37486e('0x3f')]({'where':{'resetPasswordToken':_0x4cab3d['params']['token'],'resetPasswordExpires':{[Op['gt']]:Date[_0x37486e('0x17')]()}}})[_0x37486e('0x2c')](function(_0x3e18a8){const _0x283779=_0x37486e;if(!_0x3e18a8)throw new Error(_0x283779('0x3b'));return db[_0x283779('0x43')][_0x283779('0x3f')]({'attributes':['id',_0x283779('0x11'),_0x283779('0x42'),_0x283779('0x39')]})['then'](function(_0x5e0bf6){const _0x3097e9=_0x283779;if(_0x5e0bf6[_0x3097e9('0x11')])authService['validatePasswordPattern'](_0x4cab3d['body'][_0x3097e9('0x32')]);if(!_0x5e0bf6['enforcePasswordHistory']||!_0x3e18a8['previousPasswords'])return _0x3e18a8;return authService['validatePasswordHistory'](_0x4cab3d[_0x3097e9('0x22')][_0x3097e9('0x32')],_0x3e18a8[_0x3097e9('0x3')],_0x5e0bf6[_0x3097e9('0x39')]),_0x3e18a8;})[_0x283779('0x2c')](function(){const _0x33b9f7=_0x283779;return _0x3e18a8['password']=_0x4cab3d[_0x33b9f7('0x22')][_0x33b9f7('0x32')],_0x3e18a8[_0x33b9f7('0x12')]=null,_0x3e18a8['resetPasswordExpires']=null,_0x3e18a8[_0x33b9f7('0xe')]();});})[_0x37486e('0x2c')](function(){const _0xb0c4ce=_0x37486e;_0x14ef4c[_0xb0c4ce('0x28')](0xc8)['send']({'message':_0xb0c4ce('0xb')});})[_0x37486e('0x10')](function(_0x58b05b){return handleError(_0x14ef4c,0x1f4,_0x58b05b);});},passport[_0x475c02('0x33')](new LocalStrategy({'usernameField':_0x475c02('0x23'),'passwordField':_0x475c02('0x32')},function(_0x13be75,_0x38225b,_0x11cc89){const _0xad0157=_0x475c02;return localAuthenticate(db[_0xad0157('0x47')],_0x13be75,_0x38225b,_0x11cc89);}));
\ No newline at end of file
+const a35_0x15d7=['host','validatePasswordPattern','lodash','passwordHistoryLimit','body','service','error','Strategy','message','This\x20email\x20is\x20not\x20registered.','securePassword','loginAttempts','Setting','http://','pass','resetPasswordToken','catch','Password\x20reset!','use','Smtp','format','moment','resetPasswordExpires','add','reset','Use','MailAccount','stringify','toLowerCase','If\x20you\x20did\x20not\x20request\x20this,\x20please\x20ignore\x20this\x20email\x20and\x20your\x20password\x20will\x20remain\x20unchanged.\x0a','../../mysqldb','name','online','../../config/utils','findOne','\x22%s\x22\x20<%s>','getLicense','Email\x20parameter\x20is\x20missing','Incorrect\x20username\x20and/or\x20password.\x20Please\x20retry\x20again\x20or\x20contact\x20the\x20administrator.','trim','agent','SendMail','util','Password\x20reset\x20token\x20is\x20invalid\x20or\x20has\x20expired.','http','jayson/promise','user','randomstring','clearBlockUser','disabled','Unable\x20to\x20find\x20a\x20configured\x20SMTP\x20service!','/reset/','token','json','blockDuration','port','previousPasswords','blockedAt','../../components/auth/service','enforcePasswordHistory','password','save','authentication','email','The\x20user\x20is\x20disabled.\x20Please\x20contact\x20the\x20administrator.','validatePasswordHistory','secure','allowedLoginAttempts','then','params','auth','now','minutes','send','blocked','User','request','client','You\x20are\x20receiving\x20this\x20because\x20you\x20(or\x20someone\x20else)\x20have\x20requested\x20the\x20reset\x20of\x20the\x20password\x20for\x20your\x20account.\x0a\x0a','passport-local','role','headers','status','xCally\x20Motion\x20Password\x20Reset'];(function(_0x1325dd,_0x15d789){const _0x5e166f=function(_0x109d04){while(--_0x109d04){_0x1325dd['push'](_0x1325dd['shift']());}};_0x5e166f(++_0x15d789);}(a35_0x15d7,0x133));const a35_0x5e16=function(_0x1325dd,_0x15d789){_0x1325dd=_0x1325dd-0x0;let _0x5e166f=a35_0x15d7[_0x1325dd];return _0x5e166f;};const _0x3e5833=a35_0x5e16;'use strict';const util=require(_0x3e5833('0x47')),passport=require('passport'),LocalStrategy=require(_0x3e5833('0x18'))[_0x3e5833('0x24')],jayson=require(_0x3e5833('0x4a')),_=require(_0x3e5833('0x1f')),rs=require(_0x3e5833('0x4c')),moment=require(_0x3e5833('0x32')),db=require(_0x3e5833('0x3b'))['db'],{Op}=require('sequelize'),authService=require(_0x3e5833('0x3')),utils=require(_0x3e5833('0x3e')),client=jayson[_0x3e5833('0x16')][_0x3e5833('0x49')]({'port':0x232b});function localAuthenticate(_0x109d04,_0x11add8,_0x4b0b2d,_0x26e9c7){const _0x4b33fd=_0x3e5833;let _0x75c865,_0x236559;return db[_0x4b33fd('0x29')]['findOne']({'where':{'id':0x1},'attributes':[_0x4b33fd('0xc'),'blockDuration'],'raw':!![]})[_0x4b33fd('0xd')](function(_0x55eee2){const _0x55cea3=_0x4b33fd;return _0x75c865=_0x55eee2,_0x109d04[_0x55cea3('0x3f')]({'attributes':['id','name',_0x55cea3('0x5'),'salt',_0x55cea3('0x19'),_0x55cea3('0x4e'),_0x55cea3('0x13'),_0x55cea3('0x2'),_0x55cea3('0x28')],'where':{'name':_0x11add8,'role':{[Op['or']]:['admin',_0x55cea3('0x4b'),_0x55cea3('0x45')]}}});})[_0x4b33fd('0xd')](function(_0x23de62){const _0x14f7d4=_0x4b33fd;if(!_0x23de62||_0x23de62&&_0x23de62[_0x14f7d4('0x3c')]!==_0x11add8)throw new Error(_0x14f7d4('0x43'));else return _0x236559=_0x23de62,_0x236559;})[_0x4b33fd('0xd')](function(){_0x236559['authenticate'](_0x4b0b2d,function(_0x21ce01,_0x2ffcb1){const _0xf9aa31=a35_0x5e16,_0xb7bee=_0x236559[_0xf9aa31('0x28')]+0x1;if(_0x21ce01)return _0x26e9c7(_0x21ce01);else{if(!_0x2ffcb1){if(_0x236559[_0xf9aa31('0x4e')])return _0x26e9c7(null,![],{'message':_0xf9aa31('0x43')});else return _0x75c865[_0xf9aa31('0xc')]>0x0?_0x236559[_0xf9aa31('0x13')]?_0x75c865[_0xf9aa31('0x53')]>0x0?moment(_0x236559[_0xf9aa31('0x2')])[_0xf9aa31('0x34')](_0x75c865[_0xf9aa31('0x53')],_0xf9aa31('0x11'))>moment()?_0x26e9c7(null,![],{'message':_0xf9aa31('0x43')}):utils[_0xf9aa31('0x4d')](_0x236559,_0xb7bee,![],null)['then'](function(){const _0x56165c=_0xf9aa31;return _0x26e9c7(null,![],{'message':_0x56165c('0x43')});}):_0x26e9c7(null,![],{'message':_0xf9aa31('0x43')}):_0xb7bee>=_0x75c865[_0xf9aa31('0xc')]?utils['clearBlockUser'](_0x236559,0x0,!![],moment())[_0xf9aa31('0xd')](function(){const _0x55760a=_0xf9aa31;return _0x26e9c7(null,![],{'message':_0x55760a('0x43')});}):utils[_0xf9aa31('0x4d')](_0x236559,_0xb7bee,![],null)[_0xf9aa31('0xd')](function(){const _0x492af9=_0xf9aa31;return _0x26e9c7(null,![],{'message':_0x492af9('0x43')});}):_0x26e9c7(null,![],{'message':_0xf9aa31('0x43')});}else{if(_0x236559[_0xf9aa31('0x4e')])return _0x26e9c7(null,![],{'message':_0xf9aa31('0x43')});else return _0x75c865['allowedLoginAttempts']>0x0?_0x236559[_0xf9aa31('0x13')]?_0x75c865[_0xf9aa31('0x53')]>0x0?moment(_0x236559[_0xf9aa31('0x2')])[_0xf9aa31('0x34')](_0x75c865['blockDuration'],_0xf9aa31('0x11'))>moment()?_0x26e9c7(null,![],{'message':_0xf9aa31('0x43')}):utils[_0xf9aa31('0x4d')](_0x236559,0x0,![],null)[_0xf9aa31('0xd')](function(){return utils['getLicense'](_0x236559);})['then'](function(){return _0x26e9c7(null,_0x236559);}):_0x26e9c7(null,![],{'message':'Incorrect\x20username\x20and/or\x20password.\x20Please\x20retry\x20again\x20or\x20contact\x20the\x20administrator.'}):utils[_0xf9aa31('0x4d')](_0x236559,0x0,![],null)[_0xf9aa31('0xd')](function(){const _0x130b9a=_0xf9aa31;return utils[_0x130b9a('0x41')](_0x236559);})[_0xf9aa31('0xd')](function(){return _0x26e9c7(null,_0x236559);})['catch'](function(_0x3d2fd9){return _0x26e9c7(null,![],_0x3d2fd9);}):_0x236559[_0xf9aa31('0x13')]?_0x26e9c7(null,![],{'message':'Incorrect\x20username\x20and/or\x20password.\x20Please\x20retry\x20again\x20or\x20contact\x20the\x20administrator.'}):utils[_0xf9aa31('0x41')](_0x236559)[_0xf9aa31('0xd')](function(){return _0x26e9c7(null,_0x236559);});}}});})[_0x4b33fd('0x2d')](function(_0x5d55c0){return _0x26e9c7(null,![],_0x5d55c0);});}function sendServiceMail(_0x2f7f03){const _0x3cf861=_0x3e5833;return db[_0x3cf861('0x37')][_0x3cf861('0x3f')]({'where':{'service':!![]},'attributes':['id','name','email'],'include':[{'model':db['MailServerOut'],'as':'Smtp'}]})['then'](function(_0x4a3a4d){const _0x375167=_0x3cf861;if(!_0x4a3a4d)throw new Error(_0x375167('0x4f'));const _0x559b55={'tls':{'rejectUnauthorized':![]}};_0x4a3a4d[_0x375167('0x30')][_0x375167('0x22')]?_0x559b55[_0x375167('0x22')]=_0x4a3a4d[_0x375167('0x30')][_0x375167('0x22')]:(_0x559b55[_0x375167('0x1d')]=_0x4a3a4d[_0x375167('0x30')][_0x375167('0x1d')],_0x559b55['port']=_0x4a3a4d[_0x375167('0x30')][_0x375167('0x0')],_0x559b55[_0x375167('0xb')]=_0x4a3a4d[_0x375167('0x30')][_0x375167('0xb')]);_0x4a3a4d[_0x375167('0x30')][_0x375167('0x7')]&&(_0x559b55[_0x375167('0xf')]={'user':_0x4a3a4d['Smtp'][_0x375167('0x4b')],'pass':_0x4a3a4d[_0x375167('0x30')][_0x375167('0x2b')]});const _0x2da639={'account':_0x559b55,'message':_['merge']({'from':util[_0x375167('0x31')](_0x375167('0x40'),_0x4a3a4d[_0x375167('0x3c')],_0x4a3a4d['email']||_0x4a3a4d[_0x375167('0x30')][_0x375167('0x4b')])},_0x2f7f03)};return client[_0x375167('0x15')](_0x375167('0x46'),_0x2da639);})[_0x3cf861('0xd')](function(_0x325431){const _0x2f502d=_0x3cf861;if(_0x325431[_0x2f502d('0x23')])throw new Error(util[_0x2f502d('0x31')]('SendMail\x20error:\x20%s.\x20Please\x20contact\x20your\x20Administrator!',_0x325431['error'][_0x2f502d('0x25')]||JSON[_0x2f502d('0x38')](_0x325431['error'])));return!![];});}function handleError(_0x3dd886,_0x130ddb,_0x40d0c0){const _0x150186=_0x3e5833;return _0x3dd886[_0x150186('0x1b')](_0x130ddb||0x1f4)[_0x150186('0x12')]({'message':_0x40d0c0?_0x40d0c0[_0x150186('0x25')]||_0x40d0c0:''});}exports['login']=function(_0x423e20,_0x59ed2d,_0xb16d79){passport['authenticate']('local',function(_0x21ae83,_0x42b54b,_0x56f395){const _0x19471f=a35_0x5e16,_0x4cd4b3=_0x21ae83||_0x56f395;if(_0x4cd4b3)return handleError(_0x59ed2d,0x191,_0x4cd4b3);if(!_0x42b54b)return handleError(_0x59ed2d,0x194,{'message':'Something\x20went\x20wrong,\x20please\x20try\x20again.'});else{const _0x4c973e={'payload':{'id':_0x42b54b['id'],'role':_0x42b54b[_0x19471f('0x19')]},'options':{'expiresIn':0x15180}};return authService['signToken'](_0x4c973e)[_0x19471f('0xd')](function(_0x471915){const _0x224627=_0x19471f;_0x59ed2d[_0x224627('0x52')]({'id':_0x42b54b['id'],'token':_0x471915,'statusCall':'','isAlreadyLogged':_0x42b54b[_0x224627('0x3d')]});});}})(_0x423e20,_0x59ed2d,_0xb16d79);},exports['forgot']=function(_0x152cca,_0x164e51){const _0x395f93=_0x3e5833;if(!_0x152cca['body'][_0x395f93('0x8')])return handleError(_0x164e51,0x1f4,{'message':_0x395f93('0x42')});const _0x387cd2=rs['generate']();_0x152cca[_0x395f93('0x21')]['email']=_0x152cca['body'][_0x395f93('0x8')][_0x395f93('0x44')]()[_0x395f93('0x39')]();let _0x24c1ab;return db['Setting'][_0x395f93('0x3f')]({'where':{'id':0x1},'attributes':['allowedLoginAttempts','blockDuration'],'raw':!![]})[_0x395f93('0xd')](function(_0x1a7872){const _0x407aa8=_0x395f93;return _0x24c1ab=_0x1a7872,db[_0x407aa8('0x36')][_0x407aa8('0x3f')]({'where':{'email':_0x152cca[_0x407aa8('0x21')]['email']}});})[_0x395f93('0xd')](function(_0xc6edc9){const _0x561cd2=_0x395f93;if(!_0xc6edc9)throw new Error(_0x561cd2('0x26'));if(_0xc6edc9[_0x561cd2('0x4e')])throw new Error(_0x561cd2('0x9'));if(_0xc6edc9[_0x561cd2('0x13')]){if(moment(_0xc6edc9[_0x561cd2('0x2')])['add'](_0x24c1ab[_0x561cd2('0x53')],_0x561cd2('0x11'))>moment())throw new Error('The\x20user\x20is\x20blocked.\x20Please\x20contact\x20the\x20administrator.');else _0xc6edc9[_0x561cd2('0x13')]=![],_0xc6edc9['blockedAt']=null;}return _0xc6edc9[_0x561cd2('0x2c')]=_0x387cd2,_0xc6edc9[_0x561cd2('0x33')]=Date['now']()+0x36ee80,_0xc6edc9[_0x561cd2('0x6')]();})[_0x395f93('0xd')](function(){const _0x5d321c=_0x395f93;return sendServiceMail({'to':_0x152cca[_0x5d321c('0x21')]['email'],'subject':_0x5d321c('0x1c'),'text':_0x5d321c('0x17')+'Please\x20click\x20on\x20the\x20following\x20link,\x20or\x20paste\x20this\x20into\x20your\x20browser\x20to\x20complete\x20the\x20process:\x0a\x0a'+_0x5d321c('0x2a')+_0x152cca[_0x5d321c('0x1a')][_0x5d321c('0x1d')]+_0x5d321c('0x50')+_0x387cd2+'\x0a\x0a'+_0x5d321c('0x3a')});})[_0x395f93('0xd')](function(){const _0x57a46d=_0x395f93;_0x164e51[_0x57a46d('0x1b')](0xc8)[_0x57a46d('0x12')]({'message':'Reset\x20Email\x20sent!'});})['catch'](function(_0x5dc76b){return handleError(_0x164e51,0x1f4,_0x5dc76b);});},exports[_0x3e5833('0x35')]=function(_0xb81634,_0x1b58b4){const _0x1dcc15=_0x3e5833;return db[_0x1dcc15('0x14')][_0x1dcc15('0x3f')]({'where':{'resetPasswordToken':_0xb81634[_0x1dcc15('0xe')][_0x1dcc15('0x51')],'resetPasswordExpires':{[Op['gt']]:Date[_0x1dcc15('0x10')]()}}})[_0x1dcc15('0xd')](function(_0x263f19){const _0x981a3d=_0x1dcc15;if(!_0x263f19)throw new Error(_0x981a3d('0x48'));return db[_0x981a3d('0x29')][_0x981a3d('0x3f')]({'attributes':['id',_0x981a3d('0x27'),_0x981a3d('0x4'),_0x981a3d('0x20')]})[_0x981a3d('0xd')](function(_0x3164b6){const _0x321211=_0x981a3d;if(_0x3164b6[_0x321211('0x27')])authService[_0x321211('0x1e')](_0xb81634[_0x321211('0x21')][_0x321211('0x5')]);if(!_0x3164b6[_0x321211('0x4')]||!_0x263f19[_0x321211('0x1')])return _0x263f19;return authService[_0x321211('0xa')](_0xb81634[_0x321211('0x21')]['password'],_0x263f19[_0x321211('0x1')],_0x3164b6[_0x321211('0x20')]),_0x263f19;})[_0x981a3d('0xd')](function(){const _0x4ac780=_0x981a3d;return _0x263f19[_0x4ac780('0x5')]=_0xb81634['body'][_0x4ac780('0x5')],_0x263f19['resetPasswordToken']=null,_0x263f19[_0x4ac780('0x33')]=null,_0x263f19[_0x4ac780('0x6')]();});})[_0x1dcc15('0xd')](function(){const _0x4628ac=_0x1dcc15;_0x1b58b4[_0x4628ac('0x1b')](0xc8)[_0x4628ac('0x12')]({'message':_0x4628ac('0x2e')});})['catch'](function(_0x15a9ff){return handleError(_0x1b58b4,0x1f4,_0x15a9ff);});},passport[_0x3e5833('0x2f')](new LocalStrategy({'usernameField':_0x3e5833('0x3c'),'passwordField':'password'},function(_0x347697,_0x488c23,_0xbdee1e){const _0x212ac3=_0x3e5833;return localAuthenticate(db[_0x212ac3('0x14')],_0x347697,_0x488c23,_0xbdee1e);}));
\ No newline at end of file