67a6797e95da4bd88f3cae3c87b724451fc86c5b
[motion.git] / server / auth / auth.service.js
1 var _0x5502=["\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","\x4C\x69\x73\x74","\x73\x65\x63\x72\x65\x74","\x73\x65\x73\x73\x69\x6F\x6E","\x62\x6C\x75\x65\x62\x69\x72\x64","\x6C\x6F\x64\x61\x73\x68","\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72\x2F\x69\x6E\x64\x65\x78\x2E\x6A\x73","\x63\x61\x74\x63\x68","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x75\x73\x65\x72","\x47\x45\x54","\x50\x4F\x53\x54","\x50\x55\x54","\x50\x41\x54\x43\x48","\x75\x73\x65\x72\x49\x64\x3A\x20\x25\x73\x2C\x20\x75\x73\x65\x72\x4E\x61\x6D\x65\x3A\x20\x25\x73\x2C\x20\x6D\x65\x74\x68\x6F\x64\x3A\x20\x25\x73\x2C\x20\x70\x61\x74\x68\x3A\x20\x27\x25\x73\x27\x2C\x20\x62\x6F\x64\x79\x3A\x20\x25\x73","\x69\x64","\x6E\x61\x6D\x65","\x6D\x65\x74\x68\x6F\x64","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x55\x72\x6C","\x62\x6F\x64\x79","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x2D\x2D","\x69\x6E\x66\x6F","\x44\x45\x4C\x45\x54\x45","\x55\x6E\x6B\x6E\x6F\x77\x6E\x20\x72\x65\x71\x75\x65\x73\x74\x20\x6D\x65\x74\x68\x6F\x64\x2E","\x74\x68\x65\x6E","\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","\x42\x61\x73\x69\x63","\x73\x74\x61\x72\x74\x73\x57\x69\x74\x68","\x20","\x73\x70\x6C\x69\x74","\x61\x73\x63\x69\x69","\x62\x61\x73\x65\x36\x34","\x3A","\x61\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65","\x57\x72\x6F\x6E\x67\x20\x63\x72\x65\x64\x65\x6E\x74\x69\x61\x6C\x73\x2E","\x66\x69\x6E\x64\x4F\x6E\x65","\x72\x65\x64\x75\x63\x65","\x72\x6F\x6C\x65","\x69\x6E\x63\x6C\x75\x64\x65\x73","\x68\x61\x73\x4D\x6F\x64\x75\x6C\x65","\x70\x75\x73\x68","\x66\x6F\x72\x45\x61\x63\x68","\x61\x6C\x6C","\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","\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","\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"];_0x5502[0];var passport=require(_0x5502[1]);var config=require(_0x5502[2]);var jwt=require(_0x5502[3]);var expressJwt=require(_0x5502[4]);var compose=require(_0x5502[5]);var User=require(_0x5502[7])[_0x5502[6]];var List=require(_0x5502[7])[_0x5502[8]];var validateJwt=expressJwt({secret:config[_0x5502[10]][_0x5502[9]]});var Promise=require(_0x5502[11]);var _=require(_0x5502[12]);var logger=require(_0x5502[13]);function isAuthenticated(){return compose()[_0x5502[34]](function(_0x34c6xd,_0x34c6xe,_0x34c6xf){if(_0x34c6xd[_0x5502[35]]&& _0x34c6xd[_0x5502[35]][_0x5502[37]](_0x5502[36])){_0x34c6xd[_0x5502[39]][_0x5502[38]]= _0x5502[40]+ _0x34c6xd[_0x5502[35]][_0x5502[36]]};if(_0x34c6xd[_0x5502[39]]&& _0x34c6xd[_0x5502[39]][_0x5502[38]]&& _[_0x5502[42]](_0x34c6xd[_0x5502[39]][_0x5502[38]],_0x5502[41])){var _0x34c6x12=_[_0x5502[44]](_0x34c6xd[_0x5502[39]][_0x5502[38]],_0x5502[43]);var _0x34c6x13= new Buffer(_0x34c6x12[1],_0x5502[46]).toString(_0x5502[45]);var _0x34c6x14=_[_0x5502[44]](_0x34c6x13,_0x5502[47])[0];var _0x34c6x15=_[_0x5502[44]](_0x34c6x13,_0x5502[47])[1];return User[_0x5502[50]]({where:{name:_0x34c6x14}})[_0x5502[32]](function(_0x34c6x11){if(!_0x34c6x11||  !_0x34c6x11[_0x5502[48]](_0x34c6x15)){_0x34c6xf( new Error(_0x5502[49]))};_0x34c6xd[_0x5502[16]]= {id:_0x34c6x11[_0x5502[22]]};_0x34c6xf()})}else {validateJwt(_0x34c6xd,_0x34c6xe,_0x34c6xf)}})[_0x5502[34]](function(_0x34c6xd,_0x34c6xe,_0x34c6xf){User[_0x5502[33]](_0x34c6xd[_0x5502[16]][_0x5502[22]],{include:[{model:List}]})[_0x5502[32]](function(_0x34c6x11){if(!_0x34c6x11){return _0x34c6xe[_0x5502[15]](401)};_0x34c6xd[_0x5502[16]]= _0x34c6x11;switch(_0x34c6xd[_0x5502[24]]){case _0x5502[17]:break;case _0x5502[18]:;case _0x5502[19]:;case _0x5502[20]:;case _0x5502[30]:logger[_0x5502[29]](_0x5502[21],_0x34c6xd[_0x5502[16]][_0x5502[22]],_0x34c6xd[_0x5502[16]][_0x5502[23]],_0x34c6xd[_0x5502[24]],_0x34c6xd[_0x5502[25]],_0x34c6xd[_0x5502[26]]?JSON[_0x5502[27]](_0x34c6xd[_0x5502[26]]):_0x5502[28]);break;default:logger[_0x5502[29]](_0x5502[31])};return _0x34c6xf()})[_0x5502[14]](function(_0x34c6x10){return _0x34c6xf(_0x34c6x10)})})}function hasModule(_0x34c6x17,_0x34c6x18){return compose()[_0x5502[34]](function(_0x34c6xd,_0x34c6xe,_0x34c6xf){return User[_0x5502[33]](_0x34c6xd[_0x5502[16]][_0x5502[22]])[_0x5502[32]](function(_0x34c6x11){var _0x34c6x1c=[];_0x34c6x17[_0x5502[56]](function(_0x34c6x1d){_0x34c6x1c[_0x5502[55]](_0x34c6x11[_0x5502[54]](_0x34c6x1d))});return Promise[_0x5502[57]](_0x34c6x1c)})[_0x5502[32]](function(_0x34c6x19){var hasModule=(_[_0x5502[51]](_0x34c6x19,function(_0x34c6x1a,_0x34c6x1b){return _0x34c6x1a|| _0x34c6x1b}));if(_[_0x5502[53]](_0x34c6x18,_0x34c6xd[_0x5502[16]][_0x5502[52]])|| hasModule){return _0x34c6xf()}else {_0x34c6xe[_0x5502[15]](403)}})[_0x5502[14]](function(_0x34c6x10){return _0x34c6xf(_0x34c6x10)})})}function hasRole(_0x34c6x1f){if(!_0x34c6x1f){throw  new Error(_0x5502[58])};return compose()[_0x5502[34]](isAuthenticated())[_0x5502[34]](function _0x34c6x20(_0x34c6xd,_0x34c6xe,_0x34c6xf){if(config[_0x5502[60]][_0x5502[59]](_0x34c6xd[_0x5502[16]][_0x5502[52]])>= config[_0x5502[60]][_0x5502[59]](_0x34c6x1f)){return _0x34c6xf()}else {return _0x34c6xe[_0x5502[15]](403)}})}function signToken(_0x34c6x22,_0x34c6x23,_0x34c6x24){var _0x34c6x25=60* 24* 365* 5;if(!_0x34c6x24){_0x34c6x25= _0x5502[61]};return jwt[_0x5502[62]]({id:_0x34c6x22},config[_0x5502[10]][_0x5502[9]],{expiresIn:_0x34c6x25})}function setTokenCookie(_0x34c6xd,_0x34c6xe){if(!_0x34c6xd[_0x5502[16]]){return _0x34c6xe[_0x5502[64]](404,{message:_0x5502[63]})};var _0x34c6x27=signToken(_0x34c6xd[_0x5502[16]][_0x5502[22]],_0x34c6xd[_0x5502[16]][_0x5502[52]]);_0x34c6xe[_0x5502[66]](_0x5502[65],JSON[_0x5502[27]](_0x34c6x27));_0x34c6xe[_0x5502[68]](_0x5502[67])}exports[_0x5502[69]]= isAuthenticated;exports[_0x5502[70]]= hasRole;exports[_0x5502[54]]= hasModule;exports[_0x5502[71]]= signToken;exports[_0x5502[72]]= setTokenCookie