Built motion from commit 6db1674d.|2.6.23
[motion2.git] / server / config / license / util.js
index 7f04095..dab1699 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x931b=['admin','user','telephone','telephones','countBy','License\x20limit\x20reached\x20for\x20users','exports','util','lodash','moment','bluebird','./hardware','../../components/encryptor','../../mysqldb','Demo\x20license','getUuid','2027-01-01T00:00:00.000Z','Breaking\x20license','License','defaults','then','catch','uuid','data1','license','isEmpty','data2','split','format','parse','demo','machineUuid','decryptString','deadline','add','grayReason','changed','disabled','message','User','findAll','role','sequelize','COUNT','col','count'];(function(_0x323c08,_0x44244c){var _0x4cdf67=function(_0x4cf833){while(--_0x4cf833){_0x323c08['push'](_0x323c08['shift']());}};_0x4cdf67(++_0x44244c);}(_0x931b,0x91));var _0xb931=function(_0x4588d1,_0xff4115){_0x4588d1=_0x4588d1-0x0;var _0x261093=_0x931b[_0x4588d1];return _0x261093;};'use strict';var util=require(_0xb931('0x0'));var _=require(_0xb931('0x1'));var moment=require(_0xb931('0x2'));var BPromise=require(_0xb931('0x3'));var hardware=require(_0xb931('0x4'));var encryptor=require(_0xb931('0x5'));var db=require(_0xb931('0x6'))['db'];const demoLicense={'demo':!![],'agents':0x2,'telephones':0x0,'users':0x1,'expiration':'2027-01-01T00:00:00.000Z','chat':![],'mail':![],'fax':![],'messaging':![],'whatsapp':![],'cm':![],'dialer':![],'jscripty':![],'openchannel':![],'callysquare':0x2,'webrtc':![],'jaws':![],'custom':![],'description':_0xb931('0x7'),'machineUuid':hardware[_0xb931('0x8')](),'virtual':0x0,'voice':!![],'screenrecording':![],'preferred':![],'ai':![]};const breakingLicense={'breaking':!![],'demo':!![],'agents':0x2,'telephones':0x0,'users':0x1,'expiration':_0xb931('0x9'),'chat':![],'mail':![],'fax':![],'messaging':![],'whatsapp':![],'cm':![],'dialer':![],'jscripty':![],'openchannel':![],'callysquare':0x2,'webrtc':![],'jaws':![],'custom':![],'update':![],'description':_0xb931('0xa'),'machineUuid':hardware[_0xb931('0x8')](),'virtual':0x0,'voice':!![],'screenrecording':![],'preferred':![],'ai':![]};function getLicense(_0x1bc934){return new BPromise(function(_0x189e82,_0x326a57){return db[_0xb931('0xb')]['find'](_[_0xb931('0xc')](_0x1bc934,{'raw':!![],'where':{'id':0x1}}))[_0xb931('0xd')](function(_0x1a2fd4){return checkLicense(_0x1a2fd4,null);})['then'](function(_0x4a0c59){_0x189e82(_0x4a0c59);return;})[_0xb931('0xe')](function(_0x249564){_0x326a57(_0x249564);});});}function checkLicense(_0x191d86,_0xa3a9ce){if(!_0x191d86){demoLicense[_0xb931('0xf')]=_0x191d86[_0xb931('0x10')];return demoLicense;}try{var _0x557176=_0xa3a9ce||_0x191d86[_0xb931('0x11')];if(_[_0xb931('0x12')](_0x557176)){throw new Error('License\x20key\x20value\x20not\x20found');}var _0x130e7b=_0x191d86[_0xb931('0x10')];var _0x1e533b=_0x191d86[_0xb931('0x13')];var _0x16285a=_0x130e7b['split']('-')[0x4];var _0x2eaf45=_0x130e7b[_0xb931('0x14')]('-')[0x0];var _0x1307fa=encryptor['decryptString'](_0x557176,util[_0xb931('0x15')]('%s:%s:%s',_0x16285a,_0x130e7b,_0x2eaf45));var _0x124961=JSON[_0xb931('0x16')](_0x1307fa);_0x124961[_0xb931('0x17')]=![];_0x124961['uuid']=_0x130e7b;_0x124961[_0xb931('0x18')]=hardware[_0xb931('0x8')]();if(_0x1e533b){var _0x1c3646=encryptor[_0xb931('0x19')](_0x1e533b);_0x124961['gray']=_0x1c3646;_0x124961[_0xb931('0x1a')]=moment(_0x1c3646)[_0xb931('0x1b')](0x7,'days')[_0xb931('0x15')]();_0x124961[_0xb931('0x1c')]=_0x124961[_0xb931('0xf')]!=_0x124961[_0xb931('0x18')]?_0xb931('0x1d'):_0xb931('0x1e');}return _0x124961;}catch(_0x339ae8){breakingLicense[_0xb931('0xf')]=_0x191d86['data1'];breakingLicense[_0xb931('0x1f')]=_0x339ae8[_0xb931('0x1f')];return breakingLicense;}}function getLimits(){return new BPromise(function(_0x205330,_0x5cdb40){getLicense()[_0xb931('0xd')](function(_0xd9ee54){return db[_0xb931('0x20')][_0xb931('0x21')]({'attributes':[_0xb931('0x22'),[db[_0xb931('0x23')]['fn'](_0xb931('0x24'),db[_0xb931('0x23')][_0xb931('0x25')](_0xb931('0x22'))),_0xb931('0x26')]],'group':_0xb931('0x22'),'where':{'role':{'$or':[_0xb931('0x27'),_0xb931('0x28'),_0xb931('0x29')]}},'raw':!![]})[_0xb931('0xd')](function(_0x195d5e){var _0x1f3e09={'user':_0xd9ee54['users']||0x0,'telephone':_0xd9ee54[_0xb931('0x2a')]||0x0};_0x195d5e['forEach'](function(_0x524a34){var _0xa6cf94=_0x524a34['role']===_0xb931('0x27')?'user':_0x524a34['role'];_0x1f3e09[_0xa6cf94]-=_0x524a34[_0xb931('0x26')];if(_0x1f3e09[_0xa6cf94]<0x0)_0x1f3e09[_0xa6cf94]=0x0;});_0x205330(_0x1f3e09);return;});})[_0xb931('0xe')](function(_0x25fd3e){_0x5cdb40(_0x25fd3e);});});}function checkUserLimits(_0x3f9846){return new BPromise(function(_0x2ddb90,_0x1f0ca9){getLimits()[_0xb931('0xd')](function(_0x161395){var _0x319d37=_['pick'](_[_0xb931('0x2b')](_0x3f9846,_0xb931('0x22')),[_0xb931('0x27'),_0xb931('0x28'),_0xb931('0x29')]);var _0x2f42b2=(_0x319d37[_0xb931('0x27')]||0x0)+(_0x319d37[_0xb931('0x28')]||0x0);var _0x5a8aa4=_0x319d37['telephone']||0x0;if(_0x2f42b2>_0x161395[_0xb931('0x28')])return _0x1f0ca9(_0xb931('0x2c'));if(_0x5a8aa4>_0x161395[_0xb931('0x29')])return _0x1f0ca9('License\x20limit\x20reached\x20for\x20telephones');return _0x2ddb90();})[_0xb931('0xe')](function(_0x504c9a){_0x1f0ca9(_0x504c9a);});});}module[_0xb931('0x2d')]={'checkLicense':checkLicense,'checkUserLimits':checkUserLimits,'getLicense':getLicense};
\ No newline at end of file
+var _0x4546=['deadline','add','days','grayReason','disabled','message','User','role','sequelize','COUNT','user','telephone','users','telephones','forEach','admin','count','pick','countBy','License\x20limit\x20reached\x20for\x20users','License\x20limit\x20reached\x20for\x20telephones','exports','util','moment','./hardware','2027-01-01T00:00:00.000Z','getUuid','Breaking\x20license','defaults','then','catch','uuid','license','License\x20key\x20value\x20not\x20found','data1','data2','split','decryptString','format','%s:%s:%s','demo','machineUuid','gray'];(function(_0x430d00,_0x46485c){var _0x37774b=function(_0x3cce86){while(--_0x3cce86){_0x430d00['push'](_0x430d00['shift']());}};_0x37774b(++_0x46485c);}(_0x4546,0xed));var _0x6454=function(_0x4d175a,_0x2dddab){_0x4d175a=_0x4d175a-0x0;var _0x170cbd=_0x4546[_0x4d175a];return _0x170cbd;};'use strict';var util=require(_0x6454('0x0'));var _=require('lodash');var moment=require(_0x6454('0x1'));var BPromise=require('bluebird');var hardware=require(_0x6454('0x2'));var encryptor=require('../../components/encryptor');var db=require('../../mysqldb')['db'];const demoLicense={'demo':!![],'agents':0x2,'telephones':0x0,'users':0x1,'expiration':_0x6454('0x3'),'chat':![],'mail':![],'fax':![],'messaging':![],'whatsapp':![],'cm':![],'dialer':![],'jscripty':![],'openchannel':![],'callysquare':0x2,'webrtc':![],'jaws':![],'custom':![],'description':'Demo\x20license','machineUuid':hardware[_0x6454('0x4')](),'virtual':0x0,'voice':!![],'screenrecording':![],'preferred':![],'ai':![]};const breakingLicense={'breaking':!![],'demo':!![],'agents':0x2,'telephones':0x0,'users':0x1,'expiration':_0x6454('0x3'),'chat':![],'mail':![],'fax':![],'messaging':![],'whatsapp':![],'cm':![],'dialer':![],'jscripty':![],'openchannel':![],'callysquare':0x2,'webrtc':![],'jaws':![],'custom':![],'update':![],'description':_0x6454('0x5'),'machineUuid':hardware[_0x6454('0x4')](),'virtual':0x0,'voice':!![],'screenrecording':![],'preferred':![],'ai':![]};function getLicense(_0x177bb8){return new BPromise(function(_0x49de66,_0x970176){return db['License']['find'](_[_0x6454('0x6')](_0x177bb8,{'raw':!![],'where':{'id':0x1}}))[_0x6454('0x7')](function(_0x3c3c58){return checkLicense(_0x3c3c58,null);})[_0x6454('0x7')](function(_0x3d01d8){_0x49de66(_0x3d01d8);return;})[_0x6454('0x8')](function(_0x487d53){_0x970176(_0x487d53);});});}function checkLicense(_0x163d84,_0x33a844){if(!_0x163d84){demoLicense[_0x6454('0x9')]=_0x163d84['data1'];return demoLicense;}try{var _0x2ead5c=_0x33a844||_0x163d84[_0x6454('0xa')];if(_['isEmpty'](_0x2ead5c)){throw new Error(_0x6454('0xb'));}var _0x57c30f=_0x163d84[_0x6454('0xc')];var _0x597ad1=_0x163d84[_0x6454('0xd')];var _0x229db1=_0x57c30f[_0x6454('0xe')]('-')[0x4];var _0x37734e=_0x57c30f[_0x6454('0xe')]('-')[0x0];var _0x43dc63=encryptor[_0x6454('0xf')](_0x2ead5c,util[_0x6454('0x10')](_0x6454('0x11'),_0x229db1,_0x57c30f,_0x37734e));var _0x661b48=JSON['parse'](_0x43dc63);_0x661b48[_0x6454('0x12')]=![];_0x661b48[_0x6454('0x9')]=_0x57c30f;_0x661b48[_0x6454('0x13')]=hardware[_0x6454('0x4')]();if(_0x597ad1){var _0x2c1bd0=encryptor[_0x6454('0xf')](_0x597ad1);_0x661b48[_0x6454('0x14')]=_0x2c1bd0;_0x661b48[_0x6454('0x15')]=moment(_0x2c1bd0)[_0x6454('0x16')](0x7,_0x6454('0x17'))['format']();_0x661b48[_0x6454('0x18')]=_0x661b48[_0x6454('0x9')]!=_0x661b48['machineUuid']?'changed':_0x6454('0x19');}return _0x661b48;}catch(_0x902d0a){breakingLicense[_0x6454('0x9')]=_0x163d84[_0x6454('0xc')];breakingLicense[_0x6454('0x1a')]=_0x902d0a['message'];return breakingLicense;}}function getLimits(){return new BPromise(function(_0x4b4f14,_0x39fe35){getLicense()['then'](function(_0x2fadbe){return db[_0x6454('0x1b')]['findAll']({'attributes':[_0x6454('0x1c'),[db[_0x6454('0x1d')]['fn'](_0x6454('0x1e'),db['sequelize']['col'](_0x6454('0x1c'))),'count']],'group':'role','where':{'role':{'$or':['admin',_0x6454('0x1f'),_0x6454('0x20')]}},'raw':!![]})[_0x6454('0x7')](function(_0x4b8fc6){var _0x178f79={'user':_0x2fadbe[_0x6454('0x21')]||0x0,'telephone':_0x2fadbe[_0x6454('0x22')]||0x0};_0x4b8fc6[_0x6454('0x23')](function(_0x571c28){var _0x93bb71=_0x571c28[_0x6454('0x1c')]===_0x6454('0x24')?_0x6454('0x1f'):_0x571c28[_0x6454('0x1c')];_0x178f79[_0x93bb71]-=_0x571c28[_0x6454('0x25')];if(_0x178f79[_0x93bb71]<0x0)_0x178f79[_0x93bb71]=0x0;});_0x4b4f14(_0x178f79);return;});})[_0x6454('0x8')](function(_0x4f4cf2){_0x39fe35(_0x4f4cf2);});});}function checkUserLimits(_0x502acd){return new BPromise(function(_0x533e99,_0x477a0f){getLimits()[_0x6454('0x7')](function(_0x615f83){var _0x1ff729=_[_0x6454('0x26')](_[_0x6454('0x27')](_0x502acd,_0x6454('0x1c')),['admin','user',_0x6454('0x20')]);var _0x1dd6d1=(_0x1ff729[_0x6454('0x24')]||0x0)+(_0x1ff729[_0x6454('0x1f')]||0x0);var _0x21186b=_0x1ff729[_0x6454('0x20')]||0x0;if(_0x1dd6d1>_0x615f83[_0x6454('0x1f')])return _0x477a0f(_0x6454('0x28'));if(_0x21186b>_0x615f83['telephone'])return _0x477a0f(_0x6454('0x29'));return _0x533e99();})['catch'](function(_0x414f7b){_0x477a0f(_0x414f7b);});});}module[_0x6454('0x2a')]={'checkLicense':checkLicense,'checkUserLimits':checkUserLimits,'getLicense':getLicense};
\ No newline at end of file