Built motion from commit (unavailable).|2.5.31
[motion2.git] / server / config / license / util.js
index a4d8470..605005d 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x6e72=['../../components/encryptor','../../mysqldb','Demo\x20license','getUuid','2027-01-01T00:00:00.000Z','Breaking\x20license','License','defaults','then','uuid','data1','license','isEmpty','License\x20key\x20value\x20not\x20found','data2','split','format','parse','demo','gray','days','machineUuid','changed','disabled','message','User','findAll','role','sequelize','COUNT','col','count','admin','user','telephone','users','telephones','catch','pick','License\x20limit\x20reached\x20for\x20telephones','util','lodash','moment','./hardware'];(function(_0x19dcc2,_0x41b678){var _0xbdd7dc=function(_0x4a9e6a){while(--_0x4a9e6a){_0x19dcc2['push'](_0x19dcc2['shift']());}};_0xbdd7dc(++_0x41b678);}(_0x6e72,0xac));var _0x26e7=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x6e72[_0x3dd15e];return _0x231fd0;};'use strict';var util=require(_0x26e7('0x0'));var _=require(_0x26e7('0x1'));var moment=require(_0x26e7('0x2'));var BPromise=require('bluebird');var hardware=require(_0x26e7('0x3'));var encryptor=require(_0x26e7('0x4'));var db=require(_0x26e7('0x5'))['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':_0x26e7('0x6'),'machineUuid':hardware[_0x26e7('0x7')](),'virtual':0x0,'voice':!![],'screenrecording':![],'preferred':![],'ai':![]};const breakingLicense={'breaking':!![],'demo':!![],'agents':0x2,'telephones':0x0,'users':0x1,'expiration':_0x26e7('0x8'),'chat':![],'mail':![],'fax':![],'messaging':![],'whatsapp':![],'cm':![],'dialer':![],'jscripty':![],'openchannel':![],'callysquare':0x2,'webrtc':![],'jaws':![],'custom':![],'update':![],'description':_0x26e7('0x9'),'machineUuid':hardware[_0x26e7('0x7')](),'virtual':0x0,'voice':!![],'screenrecording':![],'preferred':![],'ai':![]};function getLicense(_0x399fc8){return new BPromise(function(_0x552d23,_0x2d483d){return db[_0x26e7('0xa')]['find'](_[_0x26e7('0xb')](_0x399fc8,{'raw':!![],'where':{'id':0x1}}))[_0x26e7('0xc')](function(_0x16c22a){return checkLicense(_0x16c22a,null);})[_0x26e7('0xc')](function(_0x40fa8b){_0x552d23(_0x40fa8b);return;})['catch'](function(_0x37e158){_0x2d483d(_0x37e158);});});}function checkLicense(_0x2653d2,_0xad54fd){if(!_0x2653d2){demoLicense[_0x26e7('0xd')]=_0x2653d2[_0x26e7('0xe')];return demoLicense;}try{var _0x9e5b1b=_0xad54fd||_0x2653d2[_0x26e7('0xf')];if(_[_0x26e7('0x10')](_0x9e5b1b)){throw new Error(_0x26e7('0x11'));}var _0x5dc0a2=_0x2653d2[_0x26e7('0xe')];var _0xef191f=_0x2653d2[_0x26e7('0x12')];var _0x3f8f43=_0x5dc0a2[_0x26e7('0x13')]('-')[0x4];var _0x1aa820=_0x5dc0a2[_0x26e7('0x13')]('-')[0x0];var _0x4261a2=encryptor['decryptString'](_0x9e5b1b,util[_0x26e7('0x14')]('%s:%s:%s',_0x3f8f43,_0x5dc0a2,_0x1aa820));var _0x271499=JSON[_0x26e7('0x15')](_0x4261a2);_0x271499[_0x26e7('0x16')]=![];_0x271499['uuid']=_0x5dc0a2;_0x271499['machineUuid']=hardware['getUuid']();if(_0xef191f){var _0x2877d6=encryptor['decryptString'](_0xef191f);_0x271499[_0x26e7('0x17')]=_0x2877d6;_0x271499['deadline']=moment(_0x2877d6)['add'](0x7,_0x26e7('0x18'))[_0x26e7('0x14')]();_0x271499['grayReason']=_0x271499[_0x26e7('0xd')]!=_0x271499[_0x26e7('0x19')]?_0x26e7('0x1a'):_0x26e7('0x1b');}return _0x271499;}catch(_0x44ec24){breakingLicense[_0x26e7('0xd')]=_0x2653d2['data1'];breakingLicense['message']=_0x44ec24[_0x26e7('0x1c')];return breakingLicense;}}function getLimits(){return new BPromise(function(_0x468756,_0xd41779){getLicense()[_0x26e7('0xc')](function(_0x346bdf){return db[_0x26e7('0x1d')][_0x26e7('0x1e')]({'attributes':[_0x26e7('0x1f'),[db[_0x26e7('0x20')]['fn'](_0x26e7('0x21'),db[_0x26e7('0x20')][_0x26e7('0x22')](_0x26e7('0x1f'))),_0x26e7('0x23')]],'group':_0x26e7('0x1f'),'where':{'role':{'$or':[_0x26e7('0x24'),_0x26e7('0x25'),_0x26e7('0x26')]}},'raw':!![]})[_0x26e7('0xc')](function(_0x2fcabb){var _0x28891b={'user':_0x346bdf[_0x26e7('0x27')]||0x0,'telephone':_0x346bdf[_0x26e7('0x28')]||0x0};_0x2fcabb['forEach'](function(_0x46a9a2){var _0x2d3d84=_0x46a9a2[_0x26e7('0x1f')]==='admin'?_0x26e7('0x25'):_0x46a9a2[_0x26e7('0x1f')];_0x28891b[_0x2d3d84]-=_0x46a9a2[_0x26e7('0x23')];if(_0x28891b[_0x2d3d84]<0x0)_0x28891b[_0x2d3d84]=0x0;});_0x468756(_0x28891b);return;});})[_0x26e7('0x29')](function(_0x111356){_0xd41779(_0x111356);});});}function checkUserLimits(_0x35146c){return new BPromise(function(_0x1ac6c5,_0x142b3d){getLimits()[_0x26e7('0xc')](function(_0x3cc381){var _0x14b176=_[_0x26e7('0x2a')](_['countBy'](_0x35146c,'role'),['admin','user',_0x26e7('0x26')]);var _0x546129=(_0x14b176[_0x26e7('0x24')]||0x0)+(_0x14b176[_0x26e7('0x25')]||0x0);var _0x17ce9b=_0x14b176[_0x26e7('0x26')]||0x0;if(_0x546129>_0x3cc381['user'])return _0x142b3d('License\x20limit\x20reached\x20for\x20users');if(_0x17ce9b>_0x3cc381[_0x26e7('0x26')])return _0x142b3d(_0x26e7('0x2b'));return _0x1ac6c5();})[_0x26e7('0x29')](function(_0x59b71f){_0x142b3d(_0x59b71f);});});}module['exports']={'checkLicense':checkLicense,'checkUserLimits':checkUserLimits,'getLicense':getLicense};
\ No newline at end of file
+var _0x5a47=['bluebird','./hardware','../../components/encryptor','../../mysqldb','2027-01-01T00:00:00.000Z','Demo\x20license','getUuid','Breaking\x20license','License','defaults','then','uuid','license','isEmpty','License\x20key\x20value\x20not\x20found','data1','split','decryptString','format','parse','machineUuid','deadline','add','days','grayReason','changed','disabled','User','findAll','role','sequelize','COUNT','col','admin','forEach','user','pick','telephone','License\x20limit\x20reached\x20for\x20telephones','exports','util','lodash','moment'];(function(_0xfdcf25,_0x5ade00){var _0x75fae9=function(_0x363b06){while(--_0x363b06){_0xfdcf25['push'](_0xfdcf25['shift']());}};_0x75fae9(++_0x5ade00);}(_0x5a47,0xd4));var _0x75a4=function(_0x17c740,_0x5133e0){_0x17c740=_0x17c740-0x0;var _0x26f17b=_0x5a47[_0x17c740];return _0x26f17b;};'use strict';var util=require(_0x75a4('0x0'));var _=require(_0x75a4('0x1'));var moment=require(_0x75a4('0x2'));var BPromise=require(_0x75a4('0x3'));var hardware=require(_0x75a4('0x4'));var encryptor=require(_0x75a4('0x5'));var db=require(_0x75a4('0x6'))['db'];const demoLicense={'demo':!![],'agents':0x2,'telephones':0x0,'users':0x1,'expiration':_0x75a4('0x7'),'chat':![],'mail':![],'fax':![],'messaging':![],'whatsapp':![],'cm':![],'dialer':![],'jscripty':![],'openchannel':![],'callysquare':0x2,'webrtc':![],'jaws':![],'custom':![],'description':_0x75a4('0x8'),'machineUuid':hardware[_0x75a4('0x9')](),'virtual':0x0,'voice':!![],'screenrecording':![],'preferred':![],'ai':![]};const breakingLicense={'breaking':!![],'demo':!![],'agents':0x2,'telephones':0x0,'users':0x1,'expiration':_0x75a4('0x7'),'chat':![],'mail':![],'fax':![],'messaging':![],'whatsapp':![],'cm':![],'dialer':![],'jscripty':![],'openchannel':![],'callysquare':0x2,'webrtc':![],'jaws':![],'custom':![],'update':![],'description':_0x75a4('0xa'),'machineUuid':hardware[_0x75a4('0x9')](),'virtual':0x0,'voice':!![],'screenrecording':![],'preferred':![],'ai':![]};function getLicense(_0x366d8e){return new BPromise(function(_0x234680,_0x153c2a){return db[_0x75a4('0xb')]['find'](_[_0x75a4('0xc')](_0x366d8e,{'raw':!![],'where':{'id':0x1}}))[_0x75a4('0xd')](function(_0x1f9bc7){return checkLicense(_0x1f9bc7,null);})[_0x75a4('0xd')](function(_0x1973e1){_0x234680(_0x1973e1);return;})['catch'](function(_0x3305d7){_0x153c2a(_0x3305d7);});});}function checkLicense(_0x5209a1,_0x404cd6){if(!_0x5209a1){demoLicense[_0x75a4('0xe')]=_0x5209a1['data1'];return demoLicense;}try{var _0x16e328=_0x404cd6||_0x5209a1[_0x75a4('0xf')];if(_[_0x75a4('0x10')](_0x16e328)){throw new Error(_0x75a4('0x11'));}var _0xd772ba=_0x5209a1[_0x75a4('0x12')];var _0x48369c=_0x5209a1['data2'];var _0x3af07d=_0xd772ba[_0x75a4('0x13')]('-')[0x4];var _0x2edfcd=_0xd772ba[_0x75a4('0x13')]('-')[0x0];var _0x33b4f5=encryptor[_0x75a4('0x14')](_0x16e328,util[_0x75a4('0x15')]('%s:%s:%s',_0x3af07d,_0xd772ba,_0x2edfcd));var _0x37a823=JSON[_0x75a4('0x16')](_0x33b4f5);_0x37a823['demo']=![];_0x37a823['uuid']=_0xd772ba;_0x37a823[_0x75a4('0x17')]=hardware[_0x75a4('0x9')]();if(_0x48369c){var _0x2fe903=encryptor[_0x75a4('0x14')](_0x48369c);_0x37a823['gray']=_0x2fe903;_0x37a823[_0x75a4('0x18')]=moment(_0x2fe903)[_0x75a4('0x19')](0x7,_0x75a4('0x1a'))['format']();_0x37a823[_0x75a4('0x1b')]=_0x37a823['uuid']!=_0x37a823['machineUuid']?_0x75a4('0x1c'):_0x75a4('0x1d');}return _0x37a823;}catch(_0x2719af){breakingLicense[_0x75a4('0xe')]=_0x5209a1[_0x75a4('0x12')];breakingLicense['message']=_0x2719af['message'];return breakingLicense;}}function getLimits(){return new BPromise(function(_0x3b0d31,_0x444f67){getLicense()[_0x75a4('0xd')](function(_0x11e725){return db[_0x75a4('0x1e')][_0x75a4('0x1f')]({'attributes':[_0x75a4('0x20'),[db[_0x75a4('0x21')]['fn'](_0x75a4('0x22'),db[_0x75a4('0x21')][_0x75a4('0x23')](_0x75a4('0x20'))),'count']],'group':_0x75a4('0x20'),'where':{'role':{'$or':[_0x75a4('0x24'),'user','telephone']}},'raw':!![]})[_0x75a4('0xd')](function(_0xc1ff56){var _0x23f420={'user':_0x11e725['users']||0x0,'telephone':_0x11e725['telephones']||0x0};_0xc1ff56[_0x75a4('0x25')](function(_0x5937ad){var _0x4f2321=_0x5937ad[_0x75a4('0x20')]===_0x75a4('0x24')?_0x75a4('0x26'):_0x5937ad[_0x75a4('0x20')];_0x23f420[_0x4f2321]-=_0x5937ad['count'];if(_0x23f420[_0x4f2321]<0x0)_0x23f420[_0x4f2321]=0x0;});_0x3b0d31(_0x23f420);return;});})['catch'](function(_0x194e85){_0x444f67(_0x194e85);});});}function checkUserLimits(_0x31f47f){return new BPromise(function(_0x37168f,_0x365483){getLimits()['then'](function(_0x73017b){var _0x4f896d=_[_0x75a4('0x27')](_['countBy'](_0x31f47f,_0x75a4('0x20')),[_0x75a4('0x24'),_0x75a4('0x26'),'telephone']);var _0x52f2b9=(_0x4f896d[_0x75a4('0x24')]||0x0)+(_0x4f896d[_0x75a4('0x26')]||0x0);var _0x22fd0a=_0x4f896d[_0x75a4('0x28')]||0x0;if(_0x52f2b9>_0x73017b[_0x75a4('0x26')])return _0x365483('License\x20limit\x20reached\x20for\x20users');if(_0x22fd0a>_0x73017b['telephone'])return _0x365483(_0x75a4('0x29'));return _0x37168f();})['catch'](function(_0x5a3f95){_0x365483(_0x5a3f95);});});}module[_0x75a4('0x2a')]={'checkLicense':checkLicense,'checkUserLimits':checkUserLimits,'getLicense':getLicense};
\ No newline at end of file