Built motion from commit a61a4a20.|2.5.46
[motion2.git] / server / config / license / util.js
index 5904a05..c4b6cf9 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xfcd4=['./hardware','../../components/encryptor','2027-01-01T00:00:00.000Z','Demo\x20license','getUuid','Breaking\x20license','find','then','uuid','data1','license','isEmpty','License\x20key\x20value\x20not\x20found','data2','split','%s:%s:%s','parse','demo','machineUuid','decryptString','add','days','format','changed','disabled','message','User','role','sequelize','col','count','admin','user','telephone','telephones','forEach','catch','pick','countBy','License\x20limit\x20reached\x20for\x20users','License\x20limit\x20reached\x20for\x20telephones','exports','util','lodash','moment'];(function(_0x34edb2,_0x42cd39){var _0x4a685c=function(_0x39174b){while(--_0x39174b){_0x34edb2['push'](_0x34edb2['shift']());}};_0x4a685c(++_0x42cd39);}(_0xfcd4,0xb1));var _0x4fcd=function(_0x272fa4,_0xf712d1){_0x272fa4=_0x272fa4-0x0;var _0x25ec85=_0xfcd4[_0x272fa4];return _0x25ec85;};'use strict';var util=require(_0x4fcd('0x0'));var _=require(_0x4fcd('0x1'));var moment=require(_0x4fcd('0x2'));var BPromise=require('bluebird');var hardware=require(_0x4fcd('0x3'));var encryptor=require(_0x4fcd('0x4'));var db=require('../../mysqldb')['db'];const demoLicense={'demo':!![],'agents':0x2,'telephones':0x0,'users':0x1,'expiration':_0x4fcd('0x5'),'chat':![],'mail':![],'fax':![],'messaging':![],'whatsapp':![],'cm':![],'dialer':![],'jscripty':![],'openchannel':![],'callysquare':0x2,'webrtc':![],'jaws':![],'custom':![],'description':_0x4fcd('0x6'),'machineUuid':hardware[_0x4fcd('0x7')](),'virtual':0x0,'voice':!![],'screenrecording':![],'preferred':![],'ai':![]};const breakingLicense={'breaking':!![],'demo':!![],'agents':0x2,'telephones':0x0,'users':0x1,'expiration':_0x4fcd('0x5'),'chat':![],'mail':![],'fax':![],'messaging':![],'whatsapp':![],'cm':![],'dialer':![],'jscripty':![],'openchannel':![],'callysquare':0x2,'webrtc':![],'jaws':![],'custom':![],'update':![],'description':_0x4fcd('0x8'),'machineUuid':hardware[_0x4fcd('0x7')](),'virtual':0x0,'voice':!![],'screenrecording':![],'preferred':![],'ai':![]};function getLicense(_0x1cee39){return new BPromise(function(_0x2be4db,_0x4dc401){return db['License'][_0x4fcd('0x9')](_['defaults'](_0x1cee39,{'raw':!![],'where':{'id':0x1}}))['then'](function(_0x48680d){return checkLicense(_0x48680d,null);})[_0x4fcd('0xa')](function(_0x20db7d){_0x2be4db(_0x20db7d);return;})['catch'](function(_0x44406d){_0x4dc401(_0x44406d);});});}function checkLicense(_0x2da1fc,_0x356bab){if(!_0x2da1fc){demoLicense[_0x4fcd('0xb')]=_0x2da1fc[_0x4fcd('0xc')];return demoLicense;}try{var _0x50a1a1=_0x356bab||_0x2da1fc[_0x4fcd('0xd')];if(_[_0x4fcd('0xe')](_0x50a1a1)){throw new Error(_0x4fcd('0xf'));}var _0x2859a7=_0x2da1fc[_0x4fcd('0xc')];var _0x4764df=_0x2da1fc[_0x4fcd('0x10')];var _0x535b10=_0x2859a7[_0x4fcd('0x11')]('-')[0x4];var _0x2b1d0b=_0x2859a7[_0x4fcd('0x11')]('-')[0x0];var _0x97a440=encryptor['decryptString'](_0x50a1a1,util['format'](_0x4fcd('0x12'),_0x535b10,_0x2859a7,_0x2b1d0b));var _0x15e4b4=JSON[_0x4fcd('0x13')](_0x97a440);_0x15e4b4[_0x4fcd('0x14')]=![];_0x15e4b4['uuid']=_0x2859a7;_0x15e4b4[_0x4fcd('0x15')]=hardware[_0x4fcd('0x7')]();if(_0x4764df){var _0x5855be=encryptor[_0x4fcd('0x16')](_0x4764df);_0x15e4b4['gray']=_0x5855be;_0x15e4b4['deadline']=moment(_0x5855be)[_0x4fcd('0x17')](0x7,_0x4fcd('0x18'))[_0x4fcd('0x19')]();_0x15e4b4['grayReason']=_0x15e4b4[_0x4fcd('0xb')]!=_0x15e4b4[_0x4fcd('0x15')]?_0x4fcd('0x1a'):_0x4fcd('0x1b');}return _0x15e4b4;}catch(_0x3e671d){breakingLicense[_0x4fcd('0xb')]=_0x2da1fc[_0x4fcd('0xc')];breakingLicense[_0x4fcd('0x1c')]=_0x3e671d[_0x4fcd('0x1c')];return breakingLicense;}}function getLimits(){return new BPromise(function(_0x3cbf71,_0x1c0fed){getLicense()['then'](function(_0x4b5d6e){return db[_0x4fcd('0x1d')]['findAll']({'attributes':[_0x4fcd('0x1e'),[db[_0x4fcd('0x1f')]['fn']('COUNT',db['sequelize'][_0x4fcd('0x20')](_0x4fcd('0x1e'))),_0x4fcd('0x21')]],'group':'role','where':{'role':{'$or':[_0x4fcd('0x22'),_0x4fcd('0x23'),_0x4fcd('0x24')]}},'raw':!![]})[_0x4fcd('0xa')](function(_0xaa064){var _0x530b56={'user':_0x4b5d6e['users']||0x0,'telephone':_0x4b5d6e[_0x4fcd('0x25')]||0x0};_0xaa064[_0x4fcd('0x26')](function(_0x5b9b59){var _0x43bc97=_0x5b9b59[_0x4fcd('0x1e')]==='admin'?_0x4fcd('0x23'):_0x5b9b59[_0x4fcd('0x1e')];_0x530b56[_0x43bc97]-=_0x5b9b59['count'];if(_0x530b56[_0x43bc97]<0x0)_0x530b56[_0x43bc97]=0x0;});_0x3cbf71(_0x530b56);return;});})[_0x4fcd('0x27')](function(_0x2dcab2){_0x1c0fed(_0x2dcab2);});});}function checkUserLimits(_0x3998a1){return new BPromise(function(_0x5194dd,_0x3f1eb5){getLimits()[_0x4fcd('0xa')](function(_0x82d198){var _0x277e8c=_[_0x4fcd('0x28')](_[_0x4fcd('0x29')](_0x3998a1,'role'),['admin',_0x4fcd('0x23'),_0x4fcd('0x24')]);var _0x4a759c=(_0x277e8c[_0x4fcd('0x22')]||0x0)+(_0x277e8c[_0x4fcd('0x23')]||0x0);var _0x422c49=_0x277e8c[_0x4fcd('0x24')]||0x0;if(_0x4a759c>_0x82d198[_0x4fcd('0x23')])return _0x3f1eb5(_0x4fcd('0x2a'));if(_0x422c49>_0x82d198[_0x4fcd('0x24')])return _0x3f1eb5(_0x4fcd('0x2b'));return _0x5194dd();})[_0x4fcd('0x27')](function(_0x36a69e){_0x3f1eb5(_0x36a69e);});});}module[_0x4fcd('0x2c')]={'checkLicense':checkLicense,'checkUserLimits':checkUserLimits,'getLicense':getLicense};
\ No newline at end of file
+var _0x52bf=['parse','demo','machineUuid','deadline','add','grayReason','disabled','message','User','findAll','role','COUNT','col','telephone','users','forEach','user','count','pick','countBy','admin','License\x20limit\x20reached\x20for\x20users','License\x20limit\x20reached\x20for\x20telephones','util','lodash','moment','bluebird','./hardware','../../components/encryptor','../../mysqldb','2027-01-01T00:00:00.000Z','Demo\x20license','getUuid','Breaking\x20license','License','find','defaults','then','catch','uuid','data1','isEmpty','decryptString','%s:%s:%s'];(function(_0x38b3cb,_0x4ad7b3){var _0x5a9a84=function(_0x237634){while(--_0x237634){_0x38b3cb['push'](_0x38b3cb['shift']());}};_0x5a9a84(++_0x4ad7b3);}(_0x52bf,0x6f));var _0xf52b=function(_0x109835,_0x132d0a){_0x109835=_0x109835-0x0;var _0x46c5af=_0x52bf[_0x109835];return _0x46c5af;};'use strict';var util=require(_0xf52b('0x0'));var _=require(_0xf52b('0x1'));var moment=require(_0xf52b('0x2'));var BPromise=require(_0xf52b('0x3'));var hardware=require(_0xf52b('0x4'));var encryptor=require(_0xf52b('0x5'));var db=require(_0xf52b('0x6'))['db'];const demoLicense={'demo':!![],'agents':0x2,'telephones':0x0,'users':0x1,'expiration':_0xf52b('0x7'),'chat':![],'mail':![],'fax':![],'messaging':![],'whatsapp':![],'cm':![],'dialer':![],'jscripty':![],'openchannel':![],'callysquare':0x2,'webrtc':![],'jaws':![],'custom':![],'description':_0xf52b('0x8'),'machineUuid':hardware[_0xf52b('0x9')](),'virtual':0x0,'voice':!![],'screenrecording':![],'preferred':![],'ai':![]};const breakingLicense={'breaking':!![],'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':![],'update':![],'description':_0xf52b('0xa'),'machineUuid':hardware[_0xf52b('0x9')](),'virtual':0x0,'voice':!![],'screenrecording':![],'preferred':![],'ai':![]};function getLicense(_0x1b249a){return new BPromise(function(_0x57192b,_0x48cb3c){return db[_0xf52b('0xb')][_0xf52b('0xc')](_[_0xf52b('0xd')](_0x1b249a,{'raw':!![],'where':{'id':0x1}}))[_0xf52b('0xe')](function(_0x6f4066){return checkLicense(_0x6f4066,null);})[_0xf52b('0xe')](function(_0x3b8b64){_0x57192b(_0x3b8b64);return;})[_0xf52b('0xf')](function(_0x363884){_0x48cb3c(_0x363884);});});}function checkLicense(_0x138d1a,_0x301fe4){if(!_0x138d1a){demoLicense[_0xf52b('0x10')]=_0x138d1a[_0xf52b('0x11')];return demoLicense;}try{var _0x2d5474=_0x301fe4||_0x138d1a['license'];if(_[_0xf52b('0x12')](_0x2d5474)){throw new Error('License\x20key\x20value\x20not\x20found');}var _0x2387dd=_0x138d1a['data1'];var _0x40ceb9=_0x138d1a['data2'];var _0x28ea6d=_0x2387dd['split']('-')[0x4];var _0xb3ef6=_0x2387dd['split']('-')[0x0];var _0x47fd65=encryptor[_0xf52b('0x13')](_0x2d5474,util['format'](_0xf52b('0x14'),_0x28ea6d,_0x2387dd,_0xb3ef6));var _0x58a24c=JSON[_0xf52b('0x15')](_0x47fd65);_0x58a24c[_0xf52b('0x16')]=![];_0x58a24c[_0xf52b('0x10')]=_0x2387dd;_0x58a24c[_0xf52b('0x17')]=hardware['getUuid']();if(_0x40ceb9){var _0x485f74=encryptor[_0xf52b('0x13')](_0x40ceb9);_0x58a24c['gray']=_0x485f74;_0x58a24c[_0xf52b('0x18')]=moment(_0x485f74)[_0xf52b('0x19')](0x7,'days')['format']();_0x58a24c[_0xf52b('0x1a')]=_0x58a24c[_0xf52b('0x10')]!=_0x58a24c['machineUuid']?'changed':_0xf52b('0x1b');}return _0x58a24c;}catch(_0x192cdf){breakingLicense[_0xf52b('0x10')]=_0x138d1a[_0xf52b('0x11')];breakingLicense[_0xf52b('0x1c')]=_0x192cdf[_0xf52b('0x1c')];return breakingLicense;}}function getLimits(){return new BPromise(function(_0x1dc382,_0x29ed18){getLicense()[_0xf52b('0xe')](function(_0x4792e5){return db[_0xf52b('0x1d')][_0xf52b('0x1e')]({'attributes':[_0xf52b('0x1f'),[db['sequelize']['fn'](_0xf52b('0x20'),db['sequelize'][_0xf52b('0x21')](_0xf52b('0x1f'))),'count']],'group':_0xf52b('0x1f'),'where':{'role':{'$or':['admin','user',_0xf52b('0x22')]}},'raw':!![]})[_0xf52b('0xe')](function(_0x1abef3){var _0x2f63be={'user':_0x4792e5[_0xf52b('0x23')]||0x0,'telephone':_0x4792e5['telephones']||0x0};_0x1abef3[_0xf52b('0x24')](function(_0x1ac23d){var _0x143c57=_0x1ac23d[_0xf52b('0x1f')]==='admin'?_0xf52b('0x25'):_0x1ac23d[_0xf52b('0x1f')];_0x2f63be[_0x143c57]-=_0x1ac23d[_0xf52b('0x26')];if(_0x2f63be[_0x143c57]<0x0)_0x2f63be[_0x143c57]=0x0;});_0x1dc382(_0x2f63be);return;});})[_0xf52b('0xf')](function(_0x454cad){_0x29ed18(_0x454cad);});});}function checkUserLimits(_0x282bfd){return new BPromise(function(_0x141239,_0x5bd0a8){getLimits()[_0xf52b('0xe')](function(_0x286092){var _0x86f44a=_[_0xf52b('0x27')](_[_0xf52b('0x28')](_0x282bfd,_0xf52b('0x1f')),[_0xf52b('0x29'),_0xf52b('0x25'),_0xf52b('0x22')]);var _0x39888c=(_0x86f44a[_0xf52b('0x29')]||0x0)+(_0x86f44a[_0xf52b('0x25')]||0x0);var _0x14a3df=_0x86f44a['telephone']||0x0;if(_0x39888c>_0x286092[_0xf52b('0x25')])return _0x5bd0a8(_0xf52b('0x2a'));if(_0x14a3df>_0x286092[_0xf52b('0x22')])return _0x5bd0a8(_0xf52b('0x2b'));return _0x141239();})[_0xf52b('0xf')](function(_0x1a1689){_0x5bd0a8(_0x1a1689);});});}module['exports']={'checkLicense':checkLicense,'checkUserLimits':checkUserLimits,'getLicense':getLicense};
\ No newline at end of file