1ebdb24329fe27d430c72b97e50e41ed3ed514c0
[motion.git] / server / auth / auth.service.js
1 var _0x527a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x70\x61\x73\x73\x70\x6F\x72\x74","\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x6A\x73\x6F\x6E\x77\x65\x62\x74\x6F\x6B\x65\x6E","\x65\x78\x70\x72\x65\x73\x73\x2D\x6A\x77\x74","\x63\x6F\x6D\x70\x6F\x73\x61\x62\x6C\x65\x2D\x6D\x69\x64\x64\x6C\x65\x77\x61\x72\x65","\x55\x73\x65\x72","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x73\x65\x63\x72\x65\x74","\x73\x65\x73\x73\x69\x6F\x6E","\x63\x61\x74\x63\x68","\x73\x65\x6E\x64","\x75\x73\x65\x72","\x74\x68\x65\x6E","\x69\x64","\x66\x69\x6E\x64\x42\x79\x49\x64","\x75\x73\x65","\x71\x75\x65\x72\x79","\x61\x63\x63\x65\x73\x73\x5F\x74\x6F\x6B\x65\x6E","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x61\x75\x74\x68\x6F\x72\x69\x7A\x61\x74\x69\x6F\x6E","\x68\x65\x61\x64\x65\x72\x73","\x42\x65\x61\x72\x65\x72\x20","\x52\x65\x71\x75\x69\x72\x65\x64\x20\x72\x6F\x6C\x65\x20\x6E\x65\x65\x64\x73\x20\x74\x6F\x20\x62\x65\x20\x73\x65\x74","\x72\x6F\x6C\x65","\x69\x6E\x64\x65\x78\x4F\x66","\x75\x73\x65\x72\x52\x6F\x6C\x65\x73","\x31\x64","\x73\x69\x67\x6E","\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","\x6A\x73\x6F\x6E","\x74\x6F\x6B\x65\x6E","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x63\x6F\x6F\x6B\x69\x65","\x2F","\x72\x65\x64\x69\x72\x65\x63\x74","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x68\x61\x73\x52\x6F\x6C\x65","\x73\x69\x67\x6E\x54\x6F\x6B\x65\x6E","\x73\x65\x74\x54\x6F\x6B\x65\x6E\x43\x6F\x6F\x6B\x69\x65"];_0x527a[0];var passport=require(_0x527a[1]);var config=require(_0x527a[2]);var jwt=require(_0x527a[3]);var expressJwt=require(_0x527a[4]);var compose=require(_0x527a[5]);var User=require(_0x527a[7])[_0x527a[6]];var validateJwt=expressJwt({secret:config[_0x527a[9]][_0x527a[8]]});function isAuthenticated(){return compose()[_0x527a[16]](function(_0xf3ebx9,_0xf3ebxa,_0xf3ebxb){if(_0xf3ebx9[_0x527a[17]]&&_0xf3ebx9[_0x527a[17]][_0x527a[19]](_0x527a[18])){_0xf3ebx9[_0x527a[21]][_0x527a[20]]=_0x527a[22]+_0xf3ebx9[_0x527a[17]][_0x527a[18]]};validateJwt(_0xf3ebx9,_0xf3ebxa,_0xf3ebxb);})[_0x527a[16]](function(_0xf3ebx9,_0xf3ebxa,_0xf3ebxb){User[_0x527a[15]](_0xf3ebx9[_0x527a[12]][_0x527a[14]])[_0x527a[13]](function(_0xf3ebxd){if(!_0xf3ebxd){return _0xf3ebxa[_0x527a[11]](401)};_0xf3ebx9[_0x527a[12]]=_0xf3ebxd;return _0xf3ebxb();})[_0x527a[10]](function(_0xf3ebxc){return _0xf3ebxb(_0xf3ebxc)})})}function hasRole(_0xf3ebxf){if(!_0xf3ebxf){throw  new Error(_0x527a[23])};return compose()[_0x527a[16]](isAuthenticated())[_0x527a[16]](function _0xf3ebx10(_0xf3ebx9,_0xf3ebxa,_0xf3ebxb){if(config[_0x527a[26]][_0x527a[25]](_0xf3ebx9[_0x527a[12]][_0x527a[24]])>=config[_0x527a[26]][_0x527a[25]](_0xf3ebxf)){return _0xf3ebxb()}else {return _0xf3ebxa[_0x527a[11]](403)}});}function signToken(_0xf3ebx12,_0xf3ebx13,_0xf3ebx14){var _0xf3ebx15=60*24*365*5;if(!_0xf3ebx14){_0xf3ebx15=_0x527a[27]};return jwt[_0x527a[28]]({id:_0xf3ebx12},config[_0x527a[9]][_0x527a[8]],{expiresIn:_0xf3ebx15});}function setTokenCookie(_0xf3ebx9,_0xf3ebxa){if(!_0xf3ebx9[_0x527a[12]]){return _0xf3ebxa[_0x527a[30]](404,{message:_0x527a[29]})};var _0xf3ebx17=signToken(_0xf3ebx9[_0x527a[12]][_0x527a[14]],_0xf3ebx9[_0x527a[12]][_0x527a[24]]);_0xf3ebxa[_0x527a[33]](_0x527a[31],JSON[_0x527a[32]](_0xf3ebx17));_0xf3ebxa[_0x527a[35]](_0x527a[34]);}exports[_0x527a[36]]=isAuthenticated;exports[_0x527a[37]]=hasRole;exports[_0x527a[38]]=signToken;exports[_0x527a[39]]=setTokenCookie;