Built motion from commit de2cb856.|2.0.37
[motion2.git] / server / components / auth / service.js
1 var _0xc79a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x6C\x6F\x64\x61\x73\x68","\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","\x62\x61\x73\x69\x63\x2D\x61\x75\x74\x68","\x69\x70\x61\x64\x64\x72\x2E\x6A\x73","\x73\x65\x73\x73\x69\x6F\x6E","\x73\x65\x63\x72\x65\x74\x73","\x69\x64","\x72\x6F\x6C\x65","\x66\x75\x6C\x6C\x6E\x61\x6D\x65","\x6E\x61\x6D\x65","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x65\x6D\x61\x69\x6C","\x75\x73\x65\x72\x70\x69\x63","\x70\x65\x72\x6D\x69\x73\x73\x69\x6F\x6E\x73","\x76\x6F\x69\x63\x65\x50\x61\x75\x73\x65","\x70\x61\x75\x73\x65\x54\x79\x70\x65","\x69\x73\x43\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x41\x75\x74\x68\x6F\x72\x69\x7A\x65\x64","\x75\x73\x65\x72","\x63\x61\x74\x63\x68","\x63\x6C\x6F\x73\x65\x64","\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x75\x6E\x6D\x61\x6E\x61\x67\x65\x64","\x55\x6E\x6D\x61\x6E\x61\x67\x65\x64\x2E","\x46\x6F\x72\x62\x69\x64\x64\x65\x6E\x2E","\x6A\x73\x6F\x6E","\x73\x74\x61\x74\x75\x73","\x74\x68\x65\x6E","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64\x4F\x6E\x65","\x43\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x75\x73\x65","\x55\x73\x65\x72\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64\x2E","\x66\x69\x6E\x64","\x55\x73\x65\x72","\x55\x73\x65\x72\x20\x6F\x62\x6A\x65\x63\x74\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64\x2E","\x61\x75\x74\x68\x6F\x72\x69\x7A\x61\x74\x69\x6F\x6E","\x68\x65\x61\x64\x65\x72\x73","\x42\x61\x73\x69\x63","\x73\x74\x61\x72\x74\x73\x57\x69\x74\x68","\x70\x61\x73\x73","\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","\x42\x65\x61\x72\x65\x72","\x55\x6E\x6B\x6E\x6F\x77\x6E\x20\x61\x75\x74\x68\x6F\x72\x69\x7A\x61\x74\x69\x6F\x6E\x20\x66\x6F\x72\x6D\x61\x74\x2E","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x69\x67\x6E","\x73\x69\x67\x6E\x54\x6F\x6B\x65\x6E","\x68\x61\x73\x52\x6F\x6C\x65","\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","\x46\x6F\x72\x62\x69\x64\x64\x65\x6E","\x73\x65\x74\x54\x6F\x6B\x65\x6E\x43\x6F\x6F\x6B\x69\x65","\x49\x74\x20\x6C\x6F\x6F\x6B\x73\x20\x6C\x69\x6B\x65\x20\x79\x6F\x75\x20\x61\x72\x65\x6E\x27\x74\x20\x6C\x6F\x67\x67\x65\x64\x20\x69\x6E\x2C\x20\x70\x6C\x65\x61\x73\x65\x20\x74\x72\x79\x20\x61\x67\x61\x69\x6E\x2E","\x6D\x6F\x74\x69\x6F\x6E\x2E\x74\x6F\x6B\x65\x6E","\x63\x6F\x6F\x6B\x69\x65","\x6D\x6F\x74\x69\x6F\x6E\x2E\x75\x73\x65\x72","\x70\x69\x63\x6B","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x73\x2F\x67\x65\x6E\x65\x72\x61\x6C","\x72\x65\x64\x69\x72\x65\x63\x74"];_0xc79a[0];var db=require(_0xc79a[2])[_0xc79a[1]];var config=require(_0xc79a[3]);var _=require(_0xc79a[4]);var jwt=require(_0xc79a[5]);var expressJwt=require(_0xc79a[6]);var compose=require(_0xc79a[7]);var basicAuth=require(_0xc79a[8]);var ipaddr=require(_0xc79a[9]);var validateJwt=expressJwt({secret:config[_0xc79a[11]][_0xc79a[10]]});var userAttributes=[_0xc79a[12],_0xc79a[13],_0xc79a[14],_0xc79a[15],_0xc79a[16],_0xc79a[17],_0xc79a[18],_0xc79a[19],_0xc79a[20],_0xc79a[21]];exports[_0xc79a[22]]= function(){return isAuthenticated(true)[_0xc79a[36]](function(_0x2cd3xb,_0x2cd3xc,_0x2cd3xd){if(_0x2cd3xb[_0xc79a[23]]){_0x2cd3xd()}else {return db[_0xc79a[35]][_0xc79a[34]]({where:{id:_0x2cd3xb[_0xc79a[33]][_0xc79a[12]]},attributes:[_0xc79a[12],_0xc79a[25],_0xc79a[26]],raw:true})[_0xc79a[32]](function(_0x2cd3xf){if(_0x2cd3xf&& _0x2cd3xf[_0xc79a[25]]){return _0x2cd3xc[_0xc79a[31]](_0x2cd3xf[_0xc79a[26]]=== _0xc79a[27]?405:403)[_0xc79a[30]]({message:_0x2cd3xf[_0xc79a[26]]=== _0xc79a[27]?_0xc79a[28]:_0xc79a[29]})}else {_0x2cd3xd()}})[_0xc79a[24]](function(_0x2cd3xe){_0x2cd3xd(_0x2cd3xe)})}})};function isAuthenticated(_0x2cd3x11){return compose()[_0xc79a[36]](function(_0x2cd3xb,_0x2cd3xc,_0x2cd3xd){if(_0x2cd3xb[_0xc79a[42]][_0xc79a[41]]){if(_[_0xc79a[44]](_0x2cd3xb[_0xc79a[42]][_0xc79a[41]],_0xc79a[43])){var _0x2cd3x13=basicAuth(_0x2cd3xb);db[_0xc79a[39]][_0xc79a[38]]({where:{name:_0x2cd3x13[_0xc79a[15]]}})[_0xc79a[32]](function(_0x2cd3x12){if(!_0x2cd3x12||  !_0x2cd3x12[_0xc79a[46]](_0x2cd3x13[_0xc79a[45]])){return _0x2cd3xc[_0xc79a[31]](401)[_0xc79a[30]]({message:_0xc79a[47]})};_0x2cd3xb[_0xc79a[23]]= {id:_0x2cd3x12[_0xc79a[12]]};_0x2cd3xd()})[_0xc79a[24]](function(_0x2cd3xe){_0x2cd3xd(_0x2cd3xe)})}else {if(_[_0xc79a[44]](_0x2cd3xb[_0xc79a[42]][_0xc79a[41]],_0xc79a[48])){validateJwt(_0x2cd3xb,_0x2cd3xc,_0x2cd3xd)}}}else {if(_0x2cd3x11){_0x2cd3xd()}else {return _0x2cd3xc[_0xc79a[31]](401)[_0xc79a[30]]({message:_0xc79a[49]})}}})[_0xc79a[36]](function(_0x2cd3xb,_0x2cd3xc,_0x2cd3xd){if(_0x2cd3xb[_0xc79a[23]]){db[_0xc79a[39]][_0xc79a[38]]({where:{id:_0x2cd3xb[_0xc79a[23]][_0xc79a[12]]},attributes:userAttributes})[_0xc79a[32]](function(_0x2cd3x12){if(!_0x2cd3x12){return _0x2cd3xc[_0xc79a[31]](404)[_0xc79a[30]]({message:_0xc79a[37]})};_0x2cd3xb[_0xc79a[23]]= _0x2cd3x12;_0x2cd3xd()})[_0xc79a[24]](function(_0x2cd3xe){_0x2cd3xd(_0x2cd3xe)})}else {if(_0x2cd3x11){_0x2cd3xd()}else {return _0x2cd3xc[_0xc79a[31]](404)[_0xc79a[30]]({message:_0xc79a[40]})}}})}exports[_0xc79a[50]]= isAuthenticated;function signToken(_0x2cd3x15,_0x2cd3x16){return jwt[_0xc79a[51]]({id:_0x2cd3x15,role:_0x2cd3x16},config[_0xc79a[11]][_0xc79a[10]],{expiresIn:86400})}exports[_0xc79a[52]]= signToken;exports[_0xc79a[53]]= function(_0x2cd3x17){if(!_0x2cd3x17){throw  new Error(_0xc79a[54])};return compose()[_0xc79a[36]](isAuthenticated())[_0xc79a[36]](function _0x2cd3x18(_0x2cd3xb,_0x2cd3xc,_0x2cd3xd){if(config[_0xc79a[56]][_0xc79a[55]](_0x2cd3xb[_0xc79a[23]][_0xc79a[13]])>= config[_0xc79a[56]][_0xc79a[55]](_0x2cd3x17)){return _0x2cd3xd()}else {return _0x2cd3xc[_0xc79a[31]](403)[_0xc79a[30]]({message:_0xc79a[57]})}})};exports[_0xc79a[58]]= function(_0x2cd3xb,_0x2cd3xc){if(!_0x2cd3xb[_0xc79a[23]]){return _0x2cd3xc[_0xc79a[31]](404)[_0xc79a[30]]({message:_0xc79a[59]})};var _0x2cd3x19=signToken(_0x2cd3xb[_0xc79a[23]][_0xc79a[12]],_0x2cd3xb[_0xc79a[23]][_0xc79a[13]]);_0x2cd3xc[_0xc79a[61]](_0xc79a[60],_0x2cd3x19);_0x2cd3xc[_0xc79a[61]](_0xc79a[62],JSON[_0xc79a[64]](_[_0xc79a[63]](_0x2cd3xb[_0xc79a[23]],userAttributes)));_0x2cd3xc[_0xc79a[66]](_0xc79a[65])}