Built motion from commit 62eaa14.|1.0.10
[motion.git] / server / config / license / license.service.js
1 var _0x9231=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x63\x6F\x6D\x70\x6F\x73\x61\x62\x6C\x65\x2D\x6D\x69\x64\x64\x6C\x65\x77\x61\x72\x65","\x6D\x6F\x6D\x65\x6E\x74","\x63\x72\x79\x70\x74\x6F","\x75\x74\x69\x6C","\x6F\x73","\x65\x78\x65\x63\x53\x79\x6E\x63","\x63\x68\x69\x6C\x64\x5F\x70\x72\x6F\x63\x65\x73\x73","\x2E\x2E\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x55\x73\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x54\x65\x6C\x65\x70\x68\x6F\x6E\x65","\x53\x65\x74\x74\x69\x6E\x67","\x4C\x69\x63\x65\x6E\x73\x65","\x44\x45\x4D\x4F\x20\x4C\x49\x43\x45\x4E\x53\x45","\x0D\x0A","","\x72\x65\x70\x6C\x61\x63\x65","\x64\x6D\x69\x64\x65\x63\x6F\x64\x65\x20\x2D\x2D\x73\x74\x72\x69\x6E\x67\x20\x73\x79\x73\x74\x65\x6D\x2D\x75\x75\x69\x64","\x75\x74\x66\x38","\x77\x69\x6E\x33\x32","\x2E\x2F\x68\x61\x72\x64\x77\x61\x72\x65","\x70\x6C\x61\x74\x66\x6F\x72\x6D","\x63\x61\x74\x63\x68","\x6C\x69\x63\x65\x6E\x73\x65","\x64\x61\x74\x61\x31","\x70\x61\x72\x73\x65","\x64\x65\x6D\x6F","\x64\x65\x63\x72\x79\x70\x74\x20\x65\x72\x72\x6F\x72","\x6C\x6F\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x73\x70\x72\x65\x61\x64","\x66\x69\x6E\x64\x4F\x72\x43\x72\x65\x61\x74\x65","\x75\x73\x65","\x63\x68\x61\x74","\x6D\x65\x73\x73\x61\x67\x69\x6E\x67","\x63\x6D","\x75\x70\x64\x61\x74\x65","\x6D\x61\x69\x6C","\x66\x61\x78","\x6A\x73\x63\x72\x69\x70\x74\x79","\x63\x75\x73\x74\x6F\x6D","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C","\x65\x78\x70\x69\x72\x61\x74\x69\x6F\x6E","\x69\x73\x53\x61\x6D\x65\x4F\x72\x42\x65\x66\x6F\x72\x65","\x75\x73\x65\x72\x73","\x4D\x61\x78\x69\x6D\x75\x6D\x20\x75\x73\x65\x72\x73\x20\x6C\x69\x6D\x69\x74\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x72\x65\x61\x63\x68\x65\x64","\x73\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x74\x68\x65\x6E","\x61\x64\x6D\x69\x6E","\x75\x73\x65\x72","\x63\x6F\x75\x6E\x74","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x4D\x61\x78\x69\x6D\x75\x6D\x20\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73\x20\x6C\x69\x6D\x69\x74\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x72\x65\x61\x63\x68\x65\x64","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65","\x72\x6F\x6C\x65","\x61\x67\x65\x6E\x74","\x6F\x6E\x6C\x69\x6E\x65","\x61\x67\x65\x6E\x74\x73","\x2D","\x73\x70\x6C\x69\x74","\x61\x65\x73\x2D\x32\x35\x36\x2D\x63\x74\x72","\x25\x73\x3A\x25\x73\x3A\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x72\x65\x61\x74\x65\x44\x65\x63\x69\x70\x68\x65\x72","\x62\x61\x73\x65\x36\x34","\x66\x69\x6E\x61\x6C","\x67\x65\x74\x55\x75\x69\x64","\x69\x73\x56\x61\x6C\x69\x64\x44\x61\x74\x65","\x69\x73\x55\x73\x65\x72\x73\x4C\x69\x6D\x69\x74","\x69\x73\x54\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73\x4C\x69\x6D\x69\x74","\x68\x61\x73\x43\x68\x61\x74","\x68\x61\x73\x4D\x61\x69\x6C","\x68\x61\x73\x46\x61\x78","\x68\x61\x73\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C","\x68\x61\x73\x53\x6D\x73","\x68\x61\x73\x4A\x73\x63\x72\x69\x70\x74\x79","\x68\x61\x73\x43\x6D","\x68\x61\x73\x55\x70\x64\x61\x74\x65","\x69\x73\x56\x61\x6C\x69\x64\x41\x67\x65\x6E\x74","\x64\x65\x6D\x6F\x4C\x69\x63\x65\x6E\x73\x65","\x64\x65\x63\x72\x79\x70\x74"];_0x9231[0];var compose=require(_0x9231[1]);var moment=require(_0x9231[2]);var crypto=require(_0x9231[3]);var util=require(_0x9231[4]);var os=require(_0x9231[5]);var exec=require(_0x9231[7])[_0x9231[6]];var config=require(_0x9231[8]);var User=require(_0x9231[10])[_0x9231[9]];var Telephone=require(_0x9231[10])[_0x9231[11]];var Setting=require(_0x9231[10])[_0x9231[12]];var License=require(_0x9231[10])[_0x9231[13]];var demoLicense={demo:true,users:1,agents:1,telephones:0,chat:false,mail:false,fax:false,jscripty:false,messaging:false,openchannel:false,custom:false,cm:false,dialer:false,update:false,description:_0x9231[14]};function getUuid(){switch(os[_0x9231[22]]()){case _0x9231[20]:return exec(_0x9231[18],{encoding:_0x9231[19]})[_0x9231[17]](_0x9231[15],_0x9231[16]);default:return require(_0x9231[21])(true)}}function checkLicense(_0xfc39xf){return compose()[_0x9231[33]](function(_0xfc39x10,_0xfc39x11,_0xfc39x12){return License[_0x9231[32]]({where:{id:1}})[_0x9231[31]](function(_0xfc39x14){var _0xfc39x15=null;var _0xfc39x16=false;try{if(_0xfc39x14[_0x9231[24]]){_0xfc39x15= decrypt(_0xfc39x14[_0x9231[24]],_0xfc39x14[_0x9231[25]]);_0xfc39x15= JSON[_0x9231[26]](_0xfc39x15);_0xfc39x15[_0x9231[27]]= false}else {_0xfc39x15= demoLicense;_0xfc39x15[_0x9231[27]]= true}}catch(err){console[_0x9231[29]](_0x9231[28],err);_0xfc39x15= demoLicense;_0xfc39x15[_0x9231[27]]= true};_0xfc39x16= _0xfc39x15[_0xfc39xf];if(!_0xfc39x16){return _0xfc39x11[_0x9231[30]](403)};return _0xfc39x12()})[_0x9231[23]](function(_0xfc39x13){return _0xfc39x12(_0xfc39x13)})})}function hasChat(){return checkLicense(_0x9231[34])}function hasSms(){return checkLicense(_0x9231[35])}function hasCm(){return checkLicense(_0x9231[36])}function hasUpdate(){return checkLicense(_0x9231[37])}function hasMail(){return checkLicense(_0x9231[38])}function hasFax(){return checkLicense(_0x9231[39])}function hasJscripty(){return checkLicense(_0x9231[40])}function hasCustom(){return checkLicense(_0x9231[41])}function hasOpenchannel(){return checkLicense(_0x9231[42])}function isValidDate(){return compose()[_0x9231[33]](function(_0xfc39x10,_0xfc39x11,_0xfc39x12){return License[_0x9231[32]]({where:{id:1}})[_0x9231[31]](function(_0xfc39x14){var _0xfc39x15=null,_0xfc39x21=false;try{if(_0xfc39x14[_0x9231[24]]){_0xfc39x15= decrypt(_0xfc39x14[_0x9231[24]],_0xfc39x14[_0x9231[25]]);_0xfc39x15= JSON[_0x9231[26]](_0xfc39x15);if(moment()[_0x9231[44]](_0xfc39x15[_0x9231[43]])){_0xfc39x21= true}}}catch(err){console[_0x9231[29]](_0x9231[28],err)};if(!_0xfc39x21){return _0xfc39x11[_0x9231[30]](403)};return _0xfc39x12()})[_0x9231[23]](function(_0xfc39x13){return _0xfc39x12(_0xfc39x13)})})}function isUsersLimit(){return compose()[_0x9231[33]](function(_0xfc39x10,_0xfc39x11,_0xfc39x12){var _0xfc39x14;return License[_0x9231[32]]({where:{id:1}})[_0x9231[31]](function(_0xfc39x25){_0xfc39x14= _0xfc39x25;return User[_0x9231[52]]({where:{$or:[{role:_0x9231[50]},{role:_0x9231[51]}]}})})[_0x9231[49]](function(_0xfc39x23){var _0xfc39x15=null,_0xfc39x24=false;try{if(_0xfc39x14[_0x9231[24]]){_0xfc39x15= decrypt(_0xfc39x14[_0x9231[24]],_0xfc39x14[_0x9231[25]]);_0xfc39x15= JSON[_0x9231[26]](_0xfc39x15)}else {_0xfc39x15= demoLicense}}catch(err){console[_0x9231[29]](_0x9231[28],err);_0xfc39x15= demoLicense};if(_0xfc39x15[_0x9231[45]]> _0xfc39x23){_0xfc39x24= true};if(!_0xfc39x24){return _0xfc39x11[_0x9231[48]](403)[_0x9231[47]]({message:_0x9231[46]})};return _0xfc39x12()})[_0x9231[23]](function(_0xfc39x13){return _0xfc39x12(_0xfc39x13)})})}function isTelephonesLimit(){return compose()[_0x9231[33]](function(_0xfc39x10,_0xfc39x11,_0xfc39x12){var _0xfc39x14;return License[_0x9231[32]]({where:{id:1}})[_0x9231[31]](function(_0xfc39x25){_0xfc39x14= _0xfc39x25;return User[_0x9231[52]]({where:{role:_0x9231[55]}})})[_0x9231[49]](function(_0xfc39x27){var _0xfc39x15=null,_0xfc39x24=false;try{if(_0xfc39x14[_0x9231[24]]){_0xfc39x15= decrypt(_0xfc39x14[_0x9231[24]],_0xfc39x14[_0x9231[25]]);_0xfc39x15= JSON[_0x9231[26]](_0xfc39x15)}else {_0xfc39x15= demoLicense}}catch(err){console[_0x9231[29]](_0x9231[28],err);_0xfc39x15= demoLicense};if(_0xfc39x15[_0x9231[53]]> _0xfc39x27){_0xfc39x24= true};if(!_0xfc39x24){return _0xfc39x11[_0x9231[48]](403)[_0x9231[47]]({message:_0x9231[54]})};return _0xfc39x12()})[_0x9231[23]](function(_0xfc39x13){return _0xfc39x12(_0xfc39x13)})})}function isValidAgent(){return function(_0xfc39x29){var _0xfc39x14;var _0xfc39x2a=false;if(_0xfc39x29[_0x9231[56]]=== _0x9231[50]|| _0xfc39x29[_0x9231[56]]=== _0x9231[51]|| (_0xfc39x29[_0x9231[56]]=== _0x9231[57]&& _0xfc39x29[_0x9231[58]])){_0xfc39x2a= true};return License[_0x9231[32]]({where:{id:1}})[_0x9231[31]](function(_0xfc39x25){_0xfc39x14= _0xfc39x25;return User[_0x9231[52]]({where:{role:_0x9231[57],online:true}})})[_0x9231[49]](function(_0xfc39x2b){var _0xfc39x15=null;try{if(_0xfc39x14[_0x9231[24]]){_0xfc39x15= decrypt(_0xfc39x14[_0x9231[24]],_0xfc39x14[_0x9231[25]]);_0xfc39x15= JSON[_0x9231[26]](_0xfc39x15)}else {_0xfc39x15= demoLicense}}catch(err){console[_0x9231[29]](_0x9231[28],err);_0xfc39x15= demoLicense};if(_0xfc39x15[_0x9231[59]]> _0xfc39x2b){_0xfc39x2a= true};return _0xfc39x2a})}}function decrypt(_0xfc39x2d,_0xfc39x2e){var _0xfc39x2f=_0xfc39x2e[_0x9231[61]](_0x9231[60])[4];var _0xfc39x30=_0xfc39x2e[_0x9231[61]](_0x9231[60])[0];var _0xfc39x31=crypto[_0x9231[65]](_0x9231[62],util[_0x9231[64]](_0x9231[63],_0xfc39x2f,_0xfc39x2e,_0xfc39x30));var _0xfc39x14=_0xfc39x31[_0x9231[37]](_0xfc39x2d,_0x9231[66],_0x9231[19]);_0xfc39x14+= _0xfc39x31[_0x9231[67]](_0x9231[19]);return _0xfc39x14}exports[_0x9231[68]]= getUuid;exports[_0x9231[69]]= isValidDate;exports[_0x9231[70]]= isUsersLimit;exports[_0x9231[71]]= isTelephonesLimit;exports[_0x9231[72]]= hasChat;exports[_0x9231[73]]= hasMail;exports[_0x9231[74]]= hasFax;exports[_0x9231[75]]= hasOpenchannel;exports[_0x9231[76]]= hasSms;exports[_0x9231[77]]= hasJscripty;exports[_0x9231[78]]= hasCm;exports[_0x9231[79]]= hasUpdate;exports[_0x9231[80]]= isValidAgent;exports[_0x9231[81]]= demoLicense;exports[_0x9231[82]]= decrypt