8e03aadbd8652d04465c5f4ad1d800da21f8ad5b
[motion2.git] / server / config / license / util.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x81a8=['aes-256-ctr','format','base64','final','utf8','uuid','machineUuid','getUuid','gray','deadline','add','days','changed','2027-01-01T00:00:00.000Z','Breaking\x20license','message','getLicense','License','find','defaults','then','checkLicense','crypto','lodash','moment','./hardware','../environment','../../mysqldb','license','isEmpty','License\x20key\x20value\x20not\x20found','data1','data2','split','createDecipher'];(function(_0x2b2c76,_0x170c66){var _0x4a071b=function(_0xa1a54e){while(--_0xa1a54e){_0x2b2c76['push'](_0x2b2c76['shift']());}};_0x4a071b(++_0x170c66);}(_0x81a8,0x151));var _0x881a=function(_0x3d368b,_0xbbc5db){_0x3d368b=_0x3d368b-0x0;var _0x579af1=_0x81a8[_0x3d368b];return _0x579af1;};'use strict';var crypto=require(_0x881a('0x0'));var util=require('util');var _=require(_0x881a('0x1'));var moment=require(_0x881a('0x2'));var hardware=require(_0x881a('0x3'));var config=require(_0x881a('0x4'));var db=require(_0x881a('0x5'))['db'];function checkLicense(_0x1089f3,_0x3abda2){if(_0x1089f3){try{var _0x222969=_0x3abda2||_0x1089f3[_0x881a('0x6')];if(_[_0x881a('0x7')](_0x222969)){throw new Error(_0x881a('0x8'));}var _0x393e97=_0x1089f3[_0x881a('0x9')];var _0x439df5=_0x1089f3[_0x881a('0xa')];var _0x32ecf0=_0x393e97['split']('-')[0x4];var _0x55c26e=_0x393e97[_0x881a('0xb')]('-')[0x0];var _0x9d39e9=crypto[_0x881a('0xc')](_0x881a('0xd'),util[_0x881a('0xe')]('%s:%s:%s',_0x32ecf0,_0x393e97,_0x55c26e));var _0x47ece0=_0x9d39e9['update'](_0x222969,_0x881a('0xf'),'utf8');_0x47ece0+=_0x9d39e9[_0x881a('0x10')](_0x881a('0x11'));var _0x508d5d=JSON['parse'](_0x47ece0);_0x508d5d['demo']=![];_0x508d5d[_0x881a('0x12')]=_0x393e97;_0x508d5d[_0x881a('0x13')]=hardware[_0x881a('0x14')]();if(_0x439df5){var _0x58c6a5=crypto[_0x881a('0xc')](_0x881a('0xd'),config['secrets']['session']);var _0xa54097=_0x58c6a5['update'](_0x439df5,_0x881a('0xf'),_0x881a('0x11'));_0xa54097+=_0x58c6a5[_0x881a('0x10')]('utf8');_0x508d5d[_0x881a('0x15')]=_0xa54097;_0x508d5d[_0x881a('0x16')]=moment(_0xa54097)[_0x881a('0x17')](0x7,_0x881a('0x18'))['format']();_0x508d5d['grayReason']=_0x508d5d[_0x881a('0x12')]!=_0x508d5d[_0x881a('0x13')]?_0x881a('0x19'):'disabled';}return _0x508d5d;}catch(_0x296612){return{'breaking':!![],'demo':!![],'agents':0x2,'telephones':0x0,'users':0x1,'expiration':_0x881a('0x1a'),'chat':![],'mail':![],'fax':![],'messaging':![],'whatsapp':![],'cm':![],'dialer':![],'jscripty':![],'openchannel':![],'callysquare':0x2,'webrtc':![],'jaws':![],'custom':![],'update':![],'description':_0x881a('0x1b'),'uuid':_0x1089f3['data1'],'machineUuid':hardware[_0x881a('0x14')](),'message':_0x296612[_0x881a('0x1c')],'virtual':0x0,'voice':!![],'screenrecording':![],'preferred':![],'ai':![]};}}return{'demo':!![],'agents':0x2,'telephones':0x0,'users':0x1,'expiration':_0x881a('0x1a'),'chat':![],'mail':![],'fax':![],'messaging':![],'whatsapp':![],'cm':![],'dialer':![],'jscripty':![],'openchannel':![],'callysquare':0x2,'webrtc':![],'jaws':![],'custom':![],'description':'Demo\x20license','uuid':_0x1089f3[_0x881a('0x9')],'machineUuid':hardware[_0x881a('0x14')](),'virtual':0x0,'voice':!![],'screenrecording':![],'preferred':![],'ai':![]};}exports[_0x881a('0x1d')]=function(_0x3f7c08){return db[_0x881a('0x1e')][_0x881a('0x1f')](_[_0x881a('0x20')](_0x3f7c08,{'raw':!![],'where':{'id':0x1}}))[_0x881a('0x21')](function(_0x5c0083){return checkLicense(_0x5c0083,null);});};exports[_0x881a('0x22')]=checkLicense;