Built motion from commit b7ac9c5.|0.0.123
[motion.git] / server / config / license / license.service.js
1 var _0xcedc=["\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\x73","\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","\x70\x61\x72\x73\x65","\x64\x65\x63\x72\x79\x70\x74\x20\x65\x72\x72\x6F\x72","\x6C\x6F\x67","\x63\x68\x61\x74","\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","\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"];_0xcedc[0];var compose=require(_0xcedc[1]);var moment=require(_0xcedc[2]);var crypto=require(_0xcedc[3]);var util=require(_0xcedc[4]);var os=require(_0xcedc[5]);var exec=require(_0xcedc[7])[_0xcedc[6]];var config=require(_0xcedc[8]);var User=require(_0xcedc[10])[_0xcedc[9]];var Telephone=require(_0xcedc[10])[_0xcedc[11]];var Settings=require(_0xcedc[10])[_0xcedc[12]];var demoLicense={users:1,agents:1,telephones:0,chat:false,mail:false,fax:false,jscripty:false,messaging:false,openchannel:false,custom:false,description:_0xcedc[13]};function getUuid(){switch(os[_0xcedc[21]]()){case _0xcedc[19]:return exec(_0xcedc[17],{encoding:_0xcedc[18]})[_0xcedc[16]](_0xcedc[14],_0xcedc[15]);default:return require(_0xcedc[20])(true)}}function hasChat(){return compose()[_0xcedc[31]](function(_0x5308xe,_0x5308xf,_0x5308x10){return Settings[_0xcedc[30]]({where:{id:1}})[_0xcedc[29]](function(_0x5308x12){var _0x5308x13=null,_0x5308x14=false;try{if(_0x5308x12[_0xcedc[23]]){_0x5308x13= decrypt(_0x5308x12[_0xcedc[23]]);_0x5308x13= JSON[_0xcedc[24]](_0x5308x13)}else {_0x5308x13= demoLicense}}catch(err){console[_0xcedc[26]](_0xcedc[25],err);_0x5308x13= demoLicense};_0x5308x14= _0x5308x13[_0xcedc[27]];if(!_0x5308x14){return _0x5308xf[_0xcedc[28]](403)};return _0x5308x10()})[_0xcedc[22]](function(_0x5308x11){return _0x5308x10(_0x5308x11)})})}function hasSms(){return compose()[_0xcedc[31]](function(_0x5308xe,_0x5308xf,_0x5308x10){return Settings[_0xcedc[30]]({where:{id:1}})[_0xcedc[29]](function(_0x5308x12){var _0x5308x13=null,_0x5308x16=false;try{if(_0x5308x12[_0xcedc[23]]){_0x5308x13= decrypt(_0x5308x12[_0xcedc[23]]);_0x5308x13= JSON[_0xcedc[24]](_0x5308x13)}else {_0x5308x13= demoLicense}}catch(err){console[_0xcedc[26]](_0xcedc[25],err);_0x5308x13= demoLicense};_0x5308x16= _0x5308x13[_0xcedc[32]];if(!_0x5308x16){return _0x5308xf[_0xcedc[28]](403)};return _0x5308x10()})[_0xcedc[22]](function(_0x5308x11){return _0x5308x10(_0x5308x11)})})}function hasCm(){return compose()[_0xcedc[31]](function(_0x5308xe,_0x5308xf,_0x5308x10){return Settings[_0xcedc[30]]({where:{id:1}})[_0xcedc[29]](function(_0x5308x12){var _0x5308x13=null,_0x5308x18=false;try{if(_0x5308x12[_0xcedc[23]]){_0x5308x13= decrypt(_0x5308x12[_0xcedc[23]]);_0x5308x13= JSON[_0xcedc[24]](_0x5308x13)}else {_0x5308x13= demoLicense}}catch(err){console[_0xcedc[26]](_0xcedc[25],err);_0x5308x13= demoLicense};_0x5308x18= _0x5308x13[_0xcedc[33]];if(!_0x5308x18){return _0x5308xf[_0xcedc[28]](403)};return _0x5308x10()})[_0xcedc[22]](function(_0x5308x11){return _0x5308x10(_0x5308x11)})})}function hasUpdate(){return compose()[_0xcedc[31]](function(_0x5308xe,_0x5308xf,_0x5308x10){return Settings[_0xcedc[30]]({where:{id:1}})[_0xcedc[29]](function(_0x5308x12){var _0x5308x13=null,_0x5308x1a=false;try{if(_0x5308x12[_0xcedc[23]]){_0x5308x13= decrypt(_0x5308x12[_0xcedc[23]]);_0x5308x13= JSON[_0xcedc[24]](_0x5308x13)}else {_0x5308x13= demoLicense}}catch(err){console[_0xcedc[26]](_0xcedc[25],err);_0x5308x13= demoLicense};_0x5308x1a= _0x5308x13[_0xcedc[34]];if(!_0x5308x1a){return _0x5308xf[_0xcedc[28]](403)};return _0x5308x10()})[_0xcedc[22]](function(_0x5308x11){return _0x5308x10(_0x5308x11)})})}function hasMail(){return compose()[_0xcedc[31]](function(_0x5308xe,_0x5308xf,_0x5308x10){return Settings[_0xcedc[30]]({where:{id:1}})[_0xcedc[29]](function(_0x5308x12){var _0x5308x13=null,_0x5308x1c=false;try{if(_0x5308x12[_0xcedc[23]]){_0x5308x13= decrypt(_0x5308x12[_0xcedc[23]]);_0x5308x13= JSON[_0xcedc[24]](_0x5308x13)}else {_0x5308x13= demoLicense}}catch(err){console[_0xcedc[26]](_0xcedc[25],err);_0x5308x13= demoLicense};_0x5308x1c= _0x5308x13[_0xcedc[35]];if(!_0x5308x1c){return _0x5308xf[_0xcedc[28]](403)};return _0x5308x10()})[_0xcedc[22]](function(_0x5308x11){return _0x5308x10(_0x5308x11)})})}function hasFax(){return compose()[_0xcedc[31]](function(_0x5308xe,_0x5308xf,_0x5308x10){return Settings[_0xcedc[30]]({where:{id:1}})[_0xcedc[29]](function(_0x5308x12){var _0x5308x13=null,_0x5308x1e=false;try{if(_0x5308x12[_0xcedc[23]]){_0x5308x13= decrypt(_0x5308x12[_0xcedc[23]]);_0x5308x13= JSON[_0xcedc[24]](_0x5308x13)}else {_0x5308x13= demoLicense}}catch(err){console[_0xcedc[26]](_0xcedc[25],err);_0x5308x13= demoLicense};_0x5308x1e= _0x5308x13[_0xcedc[36]];if(!_0x5308x1e){return _0x5308xf[_0xcedc[28]](403)};return _0x5308x10()})[_0xcedc[22]](function(_0x5308x11){return _0x5308x10(_0x5308x11)})})}function hasJscripty(){return compose()[_0xcedc[31]](function(_0x5308xe,_0x5308xf,_0x5308x10){return Settings[_0xcedc[30]]({where:{id:1}})[_0xcedc[29]](function(_0x5308x12){var _0x5308x13=null,_0x5308x20=false;try{if(_0x5308x12[_0xcedc[23]]){_0x5308x13= decrypt(_0x5308x12[_0xcedc[23]]);_0x5308x13= JSON[_0xcedc[24]](_0x5308x13)}else {_0x5308x13= demoLicense}}catch(err){console[_0xcedc[26]](_0xcedc[25],err);_0x5308x13= demoLicense};_0x5308x20= _0x5308x13[_0xcedc[37]];if(!_0x5308x20){return _0x5308xf[_0xcedc[28]](403)};return _0x5308x10()})[_0xcedc[22]](function(_0x5308x11){return _0x5308x10(_0x5308x11)})})}function hasCustom(){return compose()[_0xcedc[31]](function(_0x5308xe,_0x5308xf,_0x5308x10){return Settings[_0xcedc[30]]({where:{id:1}})[_0xcedc[29]](function(_0x5308x12){var _0x5308x13=null,_0x5308x22=false;try{if(_0x5308x12[_0xcedc[23]]){_0x5308x13= decrypt(_0x5308x12[_0xcedc[23]]);_0x5308x13= JSON[_0xcedc[24]](_0x5308x13)}else {_0x5308x13= demoLicense}}catch(err){console[_0xcedc[26]](_0xcedc[25],err);_0x5308x13= demoLicense};_0x5308x22= _0x5308x13[_0xcedc[38]];if(!_0x5308x22){return _0x5308xf[_0xcedc[28]](403)};return _0x5308x10()})[_0xcedc[22]](function(_0x5308x11){return _0x5308x10(_0x5308x11)})})}function hasOpenchannel(){return compose()[_0xcedc[31]](function(_0x5308xe,_0x5308xf,_0x5308x10){return Settings[_0xcedc[30]]({where:{id:1}})[_0xcedc[29]](function(_0x5308x12){var _0x5308x13=null,_0x5308x24=false;try{if(_0x5308x12[_0xcedc[23]]){_0x5308x13= decrypt(_0x5308x12[_0xcedc[23]]);_0x5308x13= JSON[_0xcedc[24]](_0x5308x13)}else {_0x5308x13= demoLicense}}catch(err){console[_0xcedc[26]](_0xcedc[25],err);_0x5308x13= demoLicense};_0x5308x24= _0x5308x13[_0xcedc[39]];if(!_0x5308x24){return _0x5308xf[_0xcedc[28]](403)};return _0x5308x10()})[_0xcedc[22]](function(_0x5308x11){return _0x5308x10(_0x5308x11)})})}function isValidDate(){return compose()[_0xcedc[31]](function(_0x5308xe,_0x5308xf,_0x5308x10){return Settings[_0xcedc[30]]({where:{id:1}})[_0xcedc[29]](function(_0x5308x12){var _0x5308x13=null,_0x5308x26=false;try{if(_0x5308x12[_0xcedc[23]]){_0x5308x13= decrypt(_0x5308x12[_0xcedc[23]]);_0x5308x13= JSON[_0xcedc[24]](_0x5308x13);if(moment()[_0xcedc[41]](_0x5308x13[_0xcedc[40]])){_0x5308x26= true}}}catch(err){console[_0xcedc[26]](_0xcedc[25],err)};if(!_0x5308x26){return _0x5308xf[_0xcedc[28]](403)};return _0x5308x10()})[_0xcedc[22]](function(_0x5308x11){return _0x5308x10(_0x5308x11)})})}function isUsersLimit(){return compose()[_0xcedc[31]](function(_0x5308xe,_0x5308xf,_0x5308x10){var _0x5308x28;return Settings[_0xcedc[30]]({where:{id:1}})[_0xcedc[29]](function(_0x5308x12){_0x5308x28= _0x5308x12;return User[_0xcedc[49]]({where:{$or:[{role:_0xcedc[47]},{role:_0xcedc[48]}]}})})[_0xcedc[46]](function(_0x5308x29){var _0x5308x13=null,_0x5308x2a=false;try{if(_0x5308x28[_0xcedc[23]]){_0x5308x13= decrypt(_0x5308x28[_0xcedc[23]]);_0x5308x13= JSON[_0xcedc[24]](_0x5308x13)}else {_0x5308x13= demoLicense}}catch(err){console[_0xcedc[26]](_0xcedc[25],err);_0x5308x13= demoLicense};if(_0x5308x13[_0xcedc[42]]> _0x5308x29){_0x5308x2a= true};if(!_0x5308x2a){return _0x5308xf[_0xcedc[45]](403)[_0xcedc[44]]({message:_0xcedc[43]})};return _0x5308x10()})[_0xcedc[22]](function(_0x5308x11){return _0x5308x10(_0x5308x11)})})}function isTelephonesLimit(){return compose()[_0xcedc[31]](function(_0x5308xe,_0x5308xf,_0x5308x10){var _0x5308x28;return Settings[_0xcedc[30]]({where:{id:1}})[_0xcedc[29]](function(_0x5308x12){_0x5308x28= _0x5308x12;return User[_0xcedc[49]]({where:{role:_0xcedc[52]}})})[_0xcedc[46]](function(_0x5308x2c){var _0x5308x13=null,_0x5308x2a=false;try{if(_0x5308x28[_0xcedc[23]]){_0x5308x13= decrypt(_0x5308x28[_0xcedc[23]]);_0x5308x13= JSON[_0xcedc[24]](_0x5308x13)}else {_0x5308x13= demoLicense}}catch(err){console[_0xcedc[26]](_0xcedc[25],err);_0x5308x13= demoLicense};if(_0x5308x13[_0xcedc[50]]> _0x5308x2c){_0x5308x2a= true};if(!_0x5308x2a){return _0x5308xf[_0xcedc[45]](403)[_0xcedc[44]]({message:_0xcedc[51]})};return _0x5308x10()})[_0xcedc[22]](function(_0x5308x11){return _0x5308x10(_0x5308x11)})})}function isValidAgent(){return function(_0x5308x2e){var _0x5308x28;var _0x5308x2f=false;if(_0x5308x2e[_0xcedc[53]]=== _0xcedc[47]|| _0x5308x2e[_0xcedc[53]]=== _0xcedc[48]|| (_0x5308x2e[_0xcedc[53]]=== _0xcedc[54]&& _0x5308x2e[_0xcedc[55]])){_0x5308x2f= true};return Settings[_0xcedc[30]]({where:{id:1}})[_0xcedc[29]](function(_0x5308x12){_0x5308x28= _0x5308x12;return User[_0xcedc[49]]({where:{role:_0xcedc[54],online:true}})})[_0xcedc[46]](function(_0x5308x30){var _0x5308x13=null;try{if(_0x5308x28[_0xcedc[23]]){_0x5308x13= decrypt(_0x5308x28[_0xcedc[23]]);_0x5308x13= JSON[_0xcedc[24]](_0x5308x13)}else {_0x5308x13= demoLicense}}catch(err){console[_0xcedc[26]](_0xcedc[25],err);_0x5308x13= demoLicense};if(_0x5308x13[_0xcedc[56]]> _0x5308x30){_0x5308x2f= true};return _0x5308x2f})}}function decrypt(_0x5308x32){var _0x5308x33=getUuid();var _0x5308x34=_0x5308x33[_0xcedc[58]](_0xcedc[57])[4];var _0x5308x35=_0x5308x33[_0xcedc[58]](_0xcedc[57])[0];var _0x5308x36=crypto[_0xcedc[62]](_0xcedc[59],util[_0xcedc[61]](_0xcedc[60],_0x5308x34,_0x5308x33,_0x5308x35));var _0x5308x13=_0x5308x36[_0xcedc[34]](_0x5308x32,_0xcedc[63],_0xcedc[18]);_0x5308x13+= _0x5308x36[_0xcedc[64]](_0xcedc[18]);return _0x5308x13}exports[_0xcedc[65]]= getUuid;exports[_0xcedc[66]]= isValidDate;exports[_0xcedc[67]]= isUsersLimit;exports[_0xcedc[68]]= isTelephonesLimit;exports[_0xcedc[69]]= hasChat;exports[_0xcedc[70]]= hasMail;exports[_0xcedc[71]]= hasFax;exports[_0xcedc[72]]= hasOpenchannel;exports[_0xcedc[73]]= hasSms;exports[_0xcedc[74]]= hasJscripty;exports[_0xcedc[75]]= hasCm;exports[_0xcedc[76]]= hasUpdate;exports[_0xcedc[77]]= isValidAgent;exports[_0xcedc[78]]= demoLicense;exports[_0xcedc[79]]= decrypt