Built motion from commit 3c2ce842.|2.6.31
[motion2.git] / server / components / license / service.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 _0x016d=['base64','utf8','final','parse','hasOwnProperty','use','License','findOne','then','count','status','json','catch','users','User','admin','user','isUserLimit','crypto','util','composable-middleware','../../mysqldb','../../config/environment','license','data1','split','createDecipher','format','%s:%s:%s','update'];(function(_0xfa634c,_0x414e0e){var _0x73e478=function(_0xac2a51){while(--_0xac2a51){_0xfa634c['push'](_0xfa634c['shift']());}};_0x73e478(++_0x414e0e);}(_0x016d,0x102));var _0xd016=function(_0x122ef9,_0x451d2a){_0x122ef9=_0x122ef9-0x0;var _0x42fba0=_0x016d[_0x122ef9];return _0x42fba0;};'use strict';var crypto=require(_0xd016('0x0'));var util=require(_0xd016('0x1'));var compose=require(_0xd016('0x2'));var db=require(_0xd016('0x3'))['db'];var config=require(_0xd016('0x4'));function getValueFromLicense(_0x1868a2,_0x34eb8b){if(_0x1868a2&&_0x34eb8b){if(_0x34eb8b['data1']&&_0x34eb8b[_0xd016('0x5')]){var _0x30421e=_0x34eb8b[_0xd016('0x6')];var _0x4c0890=_0x34eb8b[_0xd016('0x5')];var _0x311de6=_0x30421e[_0xd016('0x7')]('-')[0x4];var _0x415ec8=_0x30421e['split']('-')[0x0];var _0x44b23=crypto[_0xd016('0x8')]('aes-256-ctr',util[_0xd016('0x9')](_0xd016('0xa'),_0x311de6,_0x30421e,_0x415ec8));var _0x144f2f=_0x44b23[_0xd016('0xb')](_0x4c0890,_0xd016('0xc'),_0xd016('0xd'));_0x144f2f+=_0x44b23[_0xd016('0xe')](_0xd016('0xd'));var _0x2ffe24=JSON[_0xd016('0xf')](_0x144f2f);return _0x2ffe24[_0xd016('0x10')](_0x1868a2)?_0x2ffe24[_0x1868a2]:null;}}return null;}function isLimit(_0x2d3010,_0x2e9b96,_0x1bea7b,_0x47e5af){var _0x19daa4=_0x2e9b96;return compose()[_0xd016('0x11')](function(_0x43100e,_0x25a3c9,_0xacfca0){return db[_0xd016('0x12')][_0xd016('0x13')]({'where':{'id':0x1},'raw':!![]})[_0xd016('0x14')](function(_0x15ea32){var _0x5511aa=getValueFromLicense(_0x2d3010,_0x15ea32);return _0x5511aa?_0x5511aa:_0x19daa4;})[_0xd016('0x14')](function(_0x59b2d8){_0x19daa4=_0x59b2d8;return _0x1bea7b[_0xd016('0x15')](_0x47e5af);})[_0xd016('0x14')](function(_0x34e97d){if(_0x34e97d>=_0x19daa4){return _0x25a3c9[_0xd016('0x16')](0x193)[_0xd016('0x17')]({'message':util[_0xd016('0x9')]('Maximum\x20%s\x20limit\x20have\x20been\x20reached',_0x2d3010)});}_0xacfca0();})[_0xd016('0x18')](function(_0x3e4a1b){_0xacfca0(_0x3e4a1b);});});}function isUserLimit(){return isLimit(_0xd016('0x19'),0x1,db[_0xd016('0x1a')],{'where':{'$or':[{'role':_0xd016('0x1b')},{'role':_0xd016('0x1c')}]}});}exports[_0xd016('0x1d')]=isUserLimit;