3b05fced85410937d6dc9722f35f1bf5e4e799d5
[motion.git] / server / auth / local / index.js
1 var _0x6c77=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x72\x65\x73\x73","\x70\x61\x73\x73\x70\x6F\x72\x74","\x61\x73\x79\x6E\x63","\x62\x6C\x75\x65\x62\x69\x72\x64","\x6E\x6F\x64\x65\x6D\x61\x69\x6C\x65\x72","\x6E\x6F\x64\x65\x6D\x61\x69\x6C\x65\x72\x2D\x73\x6D\x74\x70\x2D\x74\x72\x61\x6E\x73\x70\x6F\x72\x74","\x63\x72\x79\x70\x74\x6F","\x6D\x6F\x6D\x65\x6E\x74","\x2E\x2E\x2F\x61\x75\x74\x68\x2E\x73\x65\x72\x76\x69\x63\x65","\x55\x73\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x41\x63\x74\x69\x6F\x6E","\x52\x65\x70\x6F\x72\x74\x4D\x65\x6D\x62\x65\x72","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x69\x63\x65\x6E\x73\x65\x2F\x6C\x69\x63\x65\x6E\x73\x65\x2E\x73\x65\x72\x76\x69\x63\x65","\x76\x6F\x69\x63\x65","\x63\x68\x61\x74","\x6D\x61\x69\x6C","\x66\x61\x78","\x2F","\x6C\x6F\x63\x61\x6C\x2D\x6C\x6F\x67\x69\x6E","\x6D\x65\x73\x73\x61\x67\x65","\x6A\x73\x6F\x6E","\x73\x74\x61\x74\x75\x73","\x53\x6F\x6D\x65\x74\x68\x69\x6E\x67\x20\x77\x65\x6E\x74\x20\x77\x72\x6F\x6E\x67\x2C\x20\x70\x6C\x65\x61\x73\x65\x20\x74\x72\x79\x20\x61\x67\x61\x69\x6E\x2E","\x63\x61\x74\x63\x68","\x72\x6F\x6C\x65","\x69\x64","\x72\x65\x6D\x65\x6D\x62\x65\x72","\x62\x6F\x64\x79","\x73\x69\x67\x6E\x54\x6F\x6B\x65\x6E","\x74\x68\x65\x6E","\x71\x75\x65\x75\x65\x4C\x6F\x67\x69\x6E","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6C\x6F\x67\x69\x6E","\x6E\x61\x6D\x65","\x63\x72\x65\x61\x74\x65","\x61\x6C\x6C","\x61\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65","\x70\x6F\x73\x74","\x2F\x72\x65\x63\x6F\x76\x65\x72","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x68\x6F\x73\x74","\x70\x6F\x72\x74","\x73\x73\x6C","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x63\x72\x65\x61\x74\x65\x54\x72\x61\x6E\x73\x70\x6F\x72\x74","\x65\x6D\x61\x69\x6C","\x78\x43\x41\x4C\x4C\x59\x20\x4D\x6F\x74\x69\x6F\x6E\x20\x50\x61\x73\x73\x77\x6F\x72\x64\x20\x52\x65\x73\x65\x74","\x59\x6F\x75\x20\x61\x72\x65\x20\x72\x65\x63\x65\x69\x76\x69\x6E\x67\x20\x74\x68\x69\x73\x20\x62\x65\x63\x61\x75\x73\x65\x20\x79\x6F\x75\x20\x28\x6F\x72\x20\x73\x6F\x6D\x65\x6F\x6E\x65\x20\x65\x6C\x73\x65\x29\x20\x68\x61\x76\x65\x20\x72\x65\x71\x75\x65\x73\x74\x65\x64\x20\x74\x68\x65\x20\x72\x65\x73\x65\x74\x20\x6F\x66\x20\x74\x68\x65\x20\x70\x61\x73\x73\x77\x6F\x72\x64\x20\x66\x6F\x72\x20\x79\x6F\x75\x72\x20\x61\x63\x63\x6F\x75\x6E\x74\x2E\x0A\x0A","\x50\x6C\x65\x61\x73\x65\x20\x63\x6C\x69\x63\x6B\x20\x6F\x6E\x20\x74\x68\x65\x20\x66\x6F\x6C\x6C\x6F\x77\x69\x6E\x67\x20\x6C\x69\x6E\x6B\x2C\x20\x6F\x72\x20\x70\x61\x73\x74\x65\x20\x74\x68\x69\x73\x20\x69\x6E\x74\x6F\x20\x79\x6F\x75\x72\x20\x62\x72\x6F\x77\x73\x65\x72\x20\x74\x6F\x20\x63\x6F\x6D\x70\x6C\x65\x74\x65\x20\x74\x68\x65\x20\x70\x72\x6F\x63\x65\x73\x73\x3A\x0A\x0A","\x68\x74\x74\x70\x3A\x2F\x2F","\x68\x65\x61\x64\x65\x72\x73","\x2F\x72\x65\x73\x65\x74\x2F","\x0A\x0A","\x54\x68\x65\x20\x6C\x69\x6E\x6B\x20\x77\x69\x6C\x6C\x20\x62\x65\x20\x76\x61\x6C\x69\x64\x20\x66\x6F\x72\x20\x74\x68\x65\x20\x6E\x65\x78\x74\x20\x36\x30\x20\x6D\x69\x6E\x75\x74\x65\x73\x2E","\x49\x66\x20\x79\x6F\x75\x20\x64\x69\x64\x20\x6E\x6F\x74\x20\x72\x65\x71\x75\x65\x73\x74\x20\x74\x68\x69\x73\x2C\x20\x70\x6C\x65\x61\x73\x65\x20\x69\x67\x6E\x6F\x72\x65\x20\x74\x68\x69\x73\x20\x65\x6D\x61\x69\x6C\x20\x61\x6E\x64\x20\x79\x6F\x75\x72\x20\x70\x61\x73\x73\x77\x6F\x72\x64\x20\x77\x69\x6C\x6C\x20\x72\x65\x6D\x61\x69\x6E\x20\x75\x6E\x63\x68\x61\x6E\x67\x65\x64\x2E\x0A","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x68\x65\x78","\x72\x65\x73\x65\x74\x50\x61\x73\x73\x77\x6F\x72\x64\x54\x6F\x6B\x65\x6E","\x72\x65\x73\x65\x74\x50\x61\x73\x73\x77\x6F\x72\x64\x45\x78\x70\x69\x72\x65\x73","\x68\x6F\x75\x72","\x61\x64\x64","\x73\x61\x76\x65","\x4E\x6F\x20\x53\x4D\x54\x50\x20\x73\x65\x72\x76\x69\x63\x65\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x65\x64","\x72\x61\x6E\x64\x6F\x6D\x42\x79\x74\x65\x73","\x70\x72\x6F\x6D\x69\x73\x69\x66\x79","\x45\x6D\x61\x69\x6C\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64\x20\x69\x6E\x20\x64\x61\x74\x61\x62\x61\x73\x65\x21","\x66\x69\x6E\x64\x4F\x6E\x65","\x2F\x72\x65\x73\x65\x74\x2F\x3A\x74\x6F\x6B\x65\x6E","\x59\x6F\x75\x72\x20\x70\x61\x73\x73\x77\x6F\x72\x64\x20\x68\x61\x73\x20\x62\x65\x65\x6E\x20\x63\x68\x61\x6E\x67\x65\x64","\x48\x65\x6C\x6C\x6F\x2C\x0A\x0A","\x54\x68\x69\x73\x20\x69\x73\x20\x61\x20\x63\x6F\x6E\x66\x69\x72\x6D\x61\x74\x69\x6F\x6E\x20\x74\x68\x61\x74\x20\x74\x68\x65\x20\x70\x61\x73\x73\x77\x6F\x72\x64\x20\x66\x6F\x72\x20\x79\x6F\x75\x72\x20\x61\x63\x63\x6F\x75\x6E\x74\x20","\x20\x68\x61\x73\x20\x6A\x75\x73\x74\x20\x62\x65\x65\x6E\x20\x63\x68\x61\x6E\x67\x65\x64\x2E\x0A","\x50\x61\x73\x73\x77\x6F\x72\x64\x20\x72\x65\x73\x65\x74\x20\x74\x6F\x6B\x65\x6E\x20\x69\x73\x20\x69\x6E\x76\x61\x6C\x69\x64\x20\x6F\x72\x20\x68\x61\x73\x20\x65\x78\x70\x69\x72\x65\x64","\x74\x65\x73\x74","\x57\x72\x6F\x6E\x67\x20\x70\x61\x73\x73\x77\x6F\x72\x64\x20\x66\x6F\x72\x6D\x61\x74\x21","\x74\x6F\x6B\x65\x6E","\x70\x61\x72\x61\x6D\x73","\x2F\x6C\x6F\x67\x6F\x75\x74","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x6C\x6F\x67\x6F\x75\x74","\x72\x65\x64\x69\x72\x65\x63\x74","\x75\x73\x65\x72","\x67\x65\x74","\x73\x65\x6E\x64","\x65\x78\x70\x6F\x72\x74\x73"];_0x6c77[0];var express=require(_0x6c77[1]);var passport=require(_0x6c77[2]);var async=require(_0x6c77[3]);var Promise=require(_0x6c77[4]);var nodemailer=require(_0x6c77[5]);var smtpTransport=require(_0x6c77[6]);var crypto=require(_0x6c77[7]);var moment=require(_0x6c77[8]);var auth=require(_0x6c77[9]);var User=require(_0x6c77[11])[_0x6c77[10]];var Action=require(_0x6c77[11])[_0x6c77[12]];var ReportMember=require(_0x6c77[11])[_0x6c77[13]];var MailServerOut=require(_0x6c77[11])[_0x6c77[14]];var license=require(_0x6c77[15]);var channels=[_0x6c77[16],_0x6c77[17],_0x6c77[18],_0x6c77[19]];var router=express.Router();router[_0x6c77[40]](_0x6c77[20],function(_0xdcb5x11,_0xdcb5x12,_0xdcb5x13){passport[_0x6c77[39]](_0x6c77[21],function(_0xdcb5x14,_0xdcb5x15,_0xdcb5x16){if(_0xdcb5x14){return _0xdcb5x12[_0x6c77[24]](401)[_0x6c77[23]]({message:_0xdcb5x14[_0x6c77[22]]})};if(!_0xdcb5x15){return _0xdcb5x12[_0x6c77[24]](404)[_0x6c77[23]](_0xdcb5x16|| {message:_0x6c77[25]})};return Promise[_0x6c77[38]]([])[_0x6c77[32]](function(){if(_0xdcb5x11[_0x6c77[30]][_0x6c77[34]](_0x6c77[33])&& _0xdcb5x11[_0x6c77[30]][_0x6c77[33]]=== false){return};return Action[_0x6c77[37]]({name:_0x6c77[35],data1:_0xdcb5x15[_0x6c77[28]],data2:_0xdcb5x15[_0x6c77[36]],UserId:_0xdcb5x15[_0x6c77[28]]})})[_0x6c77[32]](function(){return _0xdcb5x12[_0x6c77[23]]({role:_0xdcb5x15[_0x6c77[27]],token:auth[_0x6c77[31]](_0xdcb5x15[_0x6c77[28]],_0xdcb5x15[_0x6c77[27]],_0xdcb5x11[_0x6c77[30]][_0x6c77[29]]|| false),userId:_0xdcb5x15[_0x6c77[28]]})})[_0x6c77[26]](function(_0xdcb5x14){return _0xdcb5x13(_0xdcb5x14)})})(_0xdcb5x11,_0xdcb5x12,_0xdcb5x13)});router[_0x6c77[40]](_0x6c77[41],function(_0xdcb5x11,_0xdcb5x12,_0xdcb5x13){var _0xdcb5x17,_0xdcb5x18,_0xdcb5x19;return User[_0x6c77[70]]({where:{email:_0xdcb5x11[_0x6c77[30]][_0x6c77[49]]}})[_0x6c77[32]](function(_0xdcb5x15){if(!_0xdcb5x15){throw  new Error(_0x6c77[69])};_0xdcb5x18= _0xdcb5x15;return MailServerOut[_0x6c77[70]]({where:{service:true}})})[_0x6c77[32]](function(_0xdcb5x1d){if(!_0xdcb5x1d){throw  new Error(_0x6c77[66])};_0xdcb5x19= _0xdcb5x1d;return Promise[_0x6c77[68]](crypto[_0x6c77[67]])(20)})[_0x6c77[32]](function(_0xdcb5x1c){_0xdcb5x17= _0xdcb5x1c.toString(_0x6c77[60]);_0xdcb5x18[_0x6c77[61]]= _0xdcb5x17;_0xdcb5x18[_0x6c77[62]]= moment()[_0x6c77[64]](1,_0x6c77[63]);return _0xdcb5x18[_0x6c77[65]]()})[_0x6c77[32]](function(){var _0xdcb5x1a=nodemailer[_0x6c77[48]](smtpTransport({host:_0xdcb5x19[_0x6c77[43]],port:_0xdcb5x19[_0x6c77[44]],secure:_0xdcb5x19[_0x6c77[45]],pool:true,auth:{user:_0xdcb5x19[_0x6c77[46]],pass:_0xdcb5x19[_0x6c77[47]]}}));var _0xdcb5x1b={to:_0xdcb5x18[_0x6c77[49]],from:_0xdcb5x19[_0x6c77[43]],subject:_0x6c77[50],text:_0x6c77[51]+ _0x6c77[52]+ _0x6c77[53]+ _0xdcb5x11[_0x6c77[54]][_0x6c77[43]]+ _0x6c77[55]+ _0xdcb5x17+ _0x6c77[56]+ _0x6c77[57]+ _0x6c77[58]};return _0xdcb5x1a[_0x6c77[59]](_0xdcb5x1b)})[_0x6c77[32]](function(_0xdcb5x16){_0xdcb5x12[_0x6c77[42]](200)})[_0x6c77[26]](function(_0xdcb5x14){return handleError(_0xdcb5x12,_0xdcb5x14)})});router[_0x6c77[40]](_0x6c77[71],function(_0xdcb5x11,_0xdcb5x12,_0xdcb5x13){var _0xdcb5x18,_0xdcb5x19;return User[_0x6c77[70]]({where:{resetPasswordToken:_0xdcb5x11[_0x6c77[80]][_0x6c77[79]],resetPasswordExpires:{$gt:moment()}}})[_0x6c77[32]](function(_0xdcb5x15){if(!_0xdcb5x15){throw  new Error(_0x6c77[76])};var _0xdcb5x1e=String(_0xdcb5x11[_0x6c77[30]][_0x6c77[47]]);if(!(/^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[~!@#$%^&\-_=+\[\{\]\}.])[0-9a-zA-Z~!@#$%^&\-_=+\[\{\]\}.]{8,}$/[_0x6c77[77]](_0xdcb5x1e))){throw  new Error(_0x6c77[78])};_0xdcb5x15[_0x6c77[47]]= _0xdcb5x1e;_0xdcb5x15[_0x6c77[61]]= null;_0xdcb5x15[_0x6c77[62]]= null;return _0xdcb5x15[_0x6c77[65]]()})[_0x6c77[32]](function(_0xdcb5x15){_0xdcb5x18= _0xdcb5x15;return MailServerOut[_0x6c77[70]]({where:{service:true}})})[_0x6c77[32]](function(_0xdcb5x1d){if(!_0xdcb5x1d){throw  new Error(_0x6c77[66])};var _0xdcb5x1a=nodemailer[_0x6c77[48]](smtpTransport({host:_0xdcb5x1d[_0x6c77[43]],port:_0xdcb5x1d[_0x6c77[44]],secure:_0xdcb5x1d[_0x6c77[45]],pool:true,auth:{user:_0xdcb5x1d[_0x6c77[46]],pass:_0xdcb5x1d[_0x6c77[47]]}}));var _0xdcb5x1b={to:_0xdcb5x18[_0x6c77[49]],from:_0xdcb5x1d[_0x6c77[43]],subject:_0x6c77[72],text:_0x6c77[73]+ _0x6c77[74]+ _0xdcb5x18[_0x6c77[49]]+ _0x6c77[75]};return _0xdcb5x1a[_0x6c77[59]](_0xdcb5x1b)})[_0x6c77[32]](function(_0xdcb5x16){_0xdcb5x12[_0x6c77[42]](200)})[_0x6c77[26]](function(_0xdcb5x14){return handleError(_0xdcb5x12,_0xdcb5x14)})});router[_0x6c77[86]](_0x6c77[81],auth[_0x6c77[82]](),function(_0xdcb5x11,_0xdcb5x12,_0xdcb5x13){return Action[_0x6c77[37]]({name:_0x6c77[83],data1:_0xdcb5x11[_0x6c77[85]][_0x6c77[28]],data2:_0xdcb5x11[_0x6c77[85]][_0x6c77[36]],UserId:_0xdcb5x11[_0x6c77[85]][_0x6c77[28]]})[_0x6c77[32]](function(){_0xdcb5x11[_0x6c77[83]]();_0xdcb5x12[_0x6c77[84]](_0x6c77[20])})[_0x6c77[26]](function(_0xdcb5x14){return _0xdcb5x13(_0xdcb5x14)})});function handleError(_0xdcb5x12,_0xdcb5x14){return _0xdcb5x12[_0x6c77[24]](500)[_0x6c77[87]]({message:_0xdcb5x14[_0x6c77[22]]})}module[_0x6c77[88]]= router