Built motion from commit 4a18b36e645f5fa4a517d36f9783bde259878164. Version 3.0.0...
[motion-next.git] / server / config / license / util.js
index 8348439..ba16145 100644 (file)
@@ -1 +1 @@
-const a845_0x3d95=['License\x20limit\x20reached\x20for\x20users','grayReason','catch','then','message','defaults','decryptString','telephone','uuid','License\x20key\x20value\x20not\x20found','deadline','COUNT','count','getUuid','../../components/encryptor','admin','disabled','%s:%s:%s','changed','telephones','findAll','users','countBy','lodash','User','sequelize','demo','data1','Demo\x20license','user','../../mysqldb','data2','isEmpty','2027-01-01T00:00:00.000Z','exports','format','gray','split','forEach','./hardware','License\x20limit\x20reached\x20for\x20telephones','pick','findOne','license','add','days','role'];(function(_0x40976f,_0x3d954c){const _0x1435bb=function(_0x3c2986){while(--_0x3c2986){_0x40976f['push'](_0x40976f['shift']());}};_0x1435bb(++_0x3d954c);}(a845_0x3d95,0x1a0));const a845_0x1435=function(_0x40976f,_0x3d954c){_0x40976f=_0x40976f-0x0;let _0x1435bb=a845_0x3d95[_0x40976f];return _0x1435bb;};const _0x5b21f8=a845_0x1435;'use strict';const encryptor=require(_0x5b21f8('0x15')),util=require('util'),_=require(_0x5b21f8('0x1e')),moment=require('moment'),hardware=require(_0x5b21f8('0x2e')),db=require(_0x5b21f8('0x25'))['db'],{Op,fn,col}=require(_0x5b21f8('0x20')),demoLicense={'demo':!![],'agents':0x2,'telephones':0x0,'users':0x1,'expiration':_0x5b21f8('0x28'),'chat':![],'mail':![],'fax':![],'messaging':![],'whatsapp':![],'cm':![],'dialer':![],'jscripty':![],'openchannel':![],'callysquare':0x2,'webrtc':![],'jaws':![],'custom':![],'description':_0x5b21f8('0x23'),'machineUuid':hardware['getUuid'](),'virtual':0x0,'voice':!![],'screenrecording':![],'preferred':![],'ai':![]},breakingLicense={'breaking':!![],'demo':!![],'agents':0x2,'telephones':0x0,'users':0x1,'expiration':_0x5b21f8('0x28'),'chat':![],'mail':![],'fax':![],'messaging':![],'whatsapp':![],'cm':![],'dialer':![],'jscripty':![],'openchannel':![],'callysquare':0x2,'webrtc':![],'jaws':![],'custom':![],'update':![],'description':'Breaking\x20license','machineUuid':hardware[_0x5b21f8('0x14')](),'virtual':0x0,'voice':!![],'screenrecording':![],'preferred':![],'ai':![]};function getLicense(_0x3c2986){return new Promise(function(_0x57f1fe,_0x1c44e1){const _0x20da1e=a845_0x1435;return db['License'][_0x20da1e('0x2')](_[_0x20da1e('0xc')](_0x3c2986,{'raw':!![],'where':{'id':0x1}}))[_0x20da1e('0xa')](function(_0x2954a7){return checkLicense(_0x2954a7,null);})['then'](function(_0x5a7140){_0x57f1fe(_0x5a7140);return;})[_0x20da1e('0x9')](function(_0x7160d2){_0x1c44e1(_0x7160d2);});});}function checkLicense(_0x6a0fd5,_0x53ec08){const _0x1d9e34=_0x5b21f8;if(!_0x6a0fd5)return demoLicense[_0x1d9e34('0xf')]=_0x6a0fd5[_0x1d9e34('0x22')],demoLicense;try{const _0x325237=_0x53ec08||_0x6a0fd5[_0x1d9e34('0x3')];if(_[_0x1d9e34('0x27')](_0x325237))throw new Error(_0x1d9e34('0x10'));const _0x5d2c70=_0x6a0fd5[_0x1d9e34('0x22')],_0x3bb38e=_0x6a0fd5[_0x1d9e34('0x26')],_0x562011=_0x5d2c70[_0x1d9e34('0x2c')]('-')[0x4],_0x47e3fb=_0x5d2c70[_0x1d9e34('0x2c')]('-')[0x0],_0x2cffdf=encryptor[_0x1d9e34('0xd')](_0x325237,util[_0x1d9e34('0x2a')](_0x1d9e34('0x18'),_0x562011,_0x5d2c70,_0x47e3fb)),_0xf4a940=JSON['parse'](_0x2cffdf);_0xf4a940[_0x1d9e34('0x21')]=![],_0xf4a940[_0x1d9e34('0xf')]=_0x5d2c70,_0xf4a940['machineUuid']=hardware[_0x1d9e34('0x14')]();if(_0x3bb38e){const _0x2320e4=encryptor['decryptString'](_0x3bb38e);_0xf4a940[_0x1d9e34('0x2b')]=_0x2320e4,_0xf4a940[_0x1d9e34('0x11')]=moment(_0x2320e4)[_0x1d9e34('0x4')](0x7,_0x1d9e34('0x5'))[_0x1d9e34('0x2a')](),_0xf4a940[_0x1d9e34('0x8')]=_0xf4a940['uuid']!=_0xf4a940['machineUuid']?_0x1d9e34('0x19'):_0x1d9e34('0x17');}return _0xf4a940;}catch(_0xa533e7){return breakingLicense[_0x1d9e34('0xf')]=_0x6a0fd5[_0x1d9e34('0x22')],breakingLicense[_0x1d9e34('0xb')]=_0xa533e7[_0x1d9e34('0xb')],breakingLicense;}}function getLimits(){return new Promise(function(_0x363163,_0x39d938){const _0x294be7=a845_0x1435;getLicense()[_0x294be7('0xa')](function(_0x4a99be){const _0x169607=_0x294be7;return db[_0x169607('0x1f')][_0x169607('0x1b')]({'attributes':[_0x169607('0x6'),[fn(_0x169607('0x12'),col('role')),'count']],'group':_0x169607('0x6'),'where':{'role':{[Op['or']]:['admin','user',_0x169607('0xe')]}},'raw':!![]})[_0x169607('0xa')](function(_0x14b2fd){const _0x3f92e7=_0x169607,_0x5b47a5={'user':_0x4a99be[_0x3f92e7('0x1c')]||0x0,'telephone':_0x4a99be[_0x3f92e7('0x1a')]||0x0};_0x14b2fd[_0x3f92e7('0x2d')](function(_0x549163){const _0x7694f=_0x3f92e7,_0x2512a8=_0x549163['role']===_0x7694f('0x16')?'user':_0x549163[_0x7694f('0x6')];_0x5b47a5[_0x2512a8]-=_0x549163[_0x7694f('0x13')];if(_0x5b47a5[_0x2512a8]<0x0)_0x5b47a5[_0x2512a8]=0x0;}),_0x363163(_0x5b47a5);return;});})[_0x294be7('0x9')](function(_0x110d68){_0x39d938(_0x110d68);});});}function checkUserLimits(_0x1c13ff){return new Promise(function(_0x16d59a,_0xfbbe5a){const _0x3bb8f3=a845_0x1435;getLimits()[_0x3bb8f3('0xa')](function(_0x528e0d){const _0x4dc2b7=_0x3bb8f3,_0xd53f46=_[_0x4dc2b7('0x1')](_[_0x4dc2b7('0x1d')](_0x1c13ff,_0x4dc2b7('0x6')),[_0x4dc2b7('0x16'),_0x4dc2b7('0x24'),'telephone']),_0x3ee9c8=(_0xd53f46[_0x4dc2b7('0x16')]||0x0)+(_0xd53f46[_0x4dc2b7('0x24')]||0x0),_0x4fc59e=_0xd53f46[_0x4dc2b7('0xe')]||0x0;if(_0x3ee9c8>_0x528e0d[_0x4dc2b7('0x24')])return _0xfbbe5a(_0x4dc2b7('0x7'));if(_0x4fc59e>_0x528e0d[_0x4dc2b7('0xe')])return _0xfbbe5a(_0x4dc2b7('0x0'));return _0x16d59a();})['catch'](function(_0x3bb850){_0xfbbe5a(_0x3bb850);});});}module[_0x5b21f8('0x29')]={'checkLicense':checkLicense,'checkUserLimits':checkUserLimits,'getLicense':getLicense};
\ No newline at end of file
+const a844_0x1298=['../../mysqldb','data1','Breaking\x20license','License\x20key\x20value\x20not\x20found','parse','findOne','lodash','pick','telephone','machineUuid','getUuid','users','disabled','admin','telephones','split','user','uuid','data2','sequelize','License','message','countBy','role','format','forEach','User','days','then','defaults','count','grayReason','findAll','gray','./hardware','License\x20limit\x20reached\x20for\x20users','catch','2027-01-01T00:00:00.000Z'];(function(_0x476cb4,_0x129839){const _0x5f5694=function(_0x543988){while(--_0x543988){_0x476cb4['push'](_0x476cb4['shift']());}};_0x5f5694(++_0x129839);}(a844_0x1298,0x1ca));const a844_0x5f56=function(_0x476cb4,_0x129839){_0x476cb4=_0x476cb4-0x0;let _0x5f5694=a844_0x1298[_0x476cb4];return _0x5f5694;};const _0x4856c1=a844_0x5f56;'use strict';const encryptor=require('../../components/encryptor'),util=require('util'),_=require(_0x4856c1('0x4')),moment=require('moment'),hardware=require(_0x4856c1('0x20')),db=require(_0x4856c1('0x24'))['db'],{Op,fn,col}=require(_0x4856c1('0x11')),demoLicense={'demo':!![],'agents':0x2,'telephones':0x0,'users':0x1,'expiration':_0x4856c1('0x23'),'chat':![],'mail':![],'fax':![],'messaging':![],'whatsapp':![],'cm':![],'dialer':![],'jscripty':![],'openchannel':![],'callysquare':0x2,'webrtc':![],'jaws':![],'custom':![],'description':'Demo\x20license','machineUuid':hardware[_0x4856c1('0x8')](),'virtual':0x0,'voice':!![],'screenrecording':![],'preferred':![],'ai':![]},breakingLicense={'breaking':!![],'demo':!![],'agents':0x2,'telephones':0x0,'users':0x1,'expiration':_0x4856c1('0x23'),'chat':![],'mail':![],'fax':![],'messaging':![],'whatsapp':![],'cm':![],'dialer':![],'jscripty':![],'openchannel':![],'callysquare':0x2,'webrtc':![],'jaws':![],'custom':![],'update':![],'description':_0x4856c1('0x0'),'machineUuid':hardware[_0x4856c1('0x8')](),'virtual':0x0,'voice':!![],'screenrecording':![],'preferred':![],'ai':![]};function getLicense(_0x543988){return new Promise(function(_0xc818da,_0x36d6ed){const _0x3162cb=a844_0x5f56;return db[_0x3162cb('0x12')][_0x3162cb('0x3')](_[_0x3162cb('0x1b')](_0x543988,{'raw':!![],'where':{'id':0x1}}))[_0x3162cb('0x1a')](function(_0xef64ca){return checkLicense(_0xef64ca,null);})['then'](function(_0x24bc2d){_0xc818da(_0x24bc2d);return;})['catch'](function(_0x1ed7a3){_0x36d6ed(_0x1ed7a3);});});}function checkLicense(_0xaf77ce,_0xba51f0){const _0x3c25ba=_0x4856c1;if(!_0xaf77ce)return demoLicense['uuid']=_0xaf77ce[_0x3c25ba('0x25')],demoLicense;try{const _0x4d9b40=_0xba51f0||_0xaf77ce['license'];if(_['isEmpty'](_0x4d9b40))throw new Error(_0x3c25ba('0x1'));const _0x5d18a9=_0xaf77ce[_0x3c25ba('0x25')],_0x353aa1=_0xaf77ce[_0x3c25ba('0x10')],_0x368612=_0x5d18a9['split']('-')[0x4],_0x279d30=_0x5d18a9[_0x3c25ba('0xd')]('-')[0x0],_0x5b67e3=encryptor['decryptString'](_0x4d9b40,util[_0x3c25ba('0x16')]('%s:%s:%s',_0x368612,_0x5d18a9,_0x279d30)),_0x52c317=JSON[_0x3c25ba('0x2')](_0x5b67e3);_0x52c317['demo']=![],_0x52c317[_0x3c25ba('0xf')]=_0x5d18a9,_0x52c317[_0x3c25ba('0x7')]=hardware[_0x3c25ba('0x8')]();if(_0x353aa1){const _0x9b9109=encryptor['decryptString'](_0x353aa1);_0x52c317[_0x3c25ba('0x1f')]=_0x9b9109,_0x52c317['deadline']=moment(_0x9b9109)['add'](0x7,_0x3c25ba('0x19'))[_0x3c25ba('0x16')](),_0x52c317[_0x3c25ba('0x1d')]=_0x52c317['uuid']!=_0x52c317[_0x3c25ba('0x7')]?'changed':_0x3c25ba('0xa');}return _0x52c317;}catch(_0x8be9ed){return breakingLicense['uuid']=_0xaf77ce[_0x3c25ba('0x25')],breakingLicense[_0x3c25ba('0x13')]=_0x8be9ed['message'],breakingLicense;}}function getLimits(){return new Promise(function(_0x47f55d,_0x252960){const _0x47437f=a844_0x5f56;getLicense()[_0x47437f('0x1a')](function(_0x5e13d3){const _0x4c3ee5=_0x47437f;return db[_0x4c3ee5('0x18')][_0x4c3ee5('0x1e')]({'attributes':[_0x4c3ee5('0x15'),[fn('COUNT',col(_0x4c3ee5('0x15'))),_0x4c3ee5('0x1c')]],'group':_0x4c3ee5('0x15'),'where':{'role':{[Op['or']]:['admin',_0x4c3ee5('0xe'),'telephone']}},'raw':!![]})[_0x4c3ee5('0x1a')](function(_0x5d757a){const _0x52b95d=_0x4c3ee5,_0x709445={'user':_0x5e13d3[_0x52b95d('0x9')]||0x0,'telephone':_0x5e13d3[_0x52b95d('0xc')]||0x0};_0x5d757a[_0x52b95d('0x17')](function(_0x354834){const _0x57387c=_0x52b95d,_0xc6e23f=_0x354834[_0x57387c('0x15')]===_0x57387c('0xb')?_0x57387c('0xe'):_0x354834[_0x57387c('0x15')];_0x709445[_0xc6e23f]-=_0x354834[_0x57387c('0x1c')];if(_0x709445[_0xc6e23f]<0x0)_0x709445[_0xc6e23f]=0x0;}),_0x47f55d(_0x709445);return;});})[_0x47437f('0x22')](function(_0x30b372){_0x252960(_0x30b372);});});}function checkUserLimits(_0x595b64){return new Promise(function(_0x574a74,_0x5c79c6){const _0x124c42=a844_0x5f56;getLimits()[_0x124c42('0x1a')](function(_0xe3a39e){const _0x2241ae=_0x124c42,_0x2f79e2=_[_0x2241ae('0x5')](_[_0x2241ae('0x14')](_0x595b64,'role'),['admin',_0x2241ae('0xe'),_0x2241ae('0x6')]),_0x19b890=(_0x2f79e2[_0x2241ae('0xb')]||0x0)+(_0x2f79e2['user']||0x0),_0xca305e=_0x2f79e2['telephone']||0x0;if(_0x19b890>_0xe3a39e[_0x2241ae('0xe')])return _0x5c79c6(_0x2241ae('0x21'));if(_0xca305e>_0xe3a39e['telephone'])return _0x5c79c6('License\x20limit\x20reached\x20for\x20telephones');return _0x574a74();})[_0x124c42('0x22')](function(_0x55c690){_0x5c79c6(_0x55c690);});});}module['exports']={'checkLicense':checkLicense,'checkUserLimits':checkUserLimits,'getLicense':getLicense};
\ No newline at end of file