57861724904c05cab2b9b606eaa13a11dfe98b8a
[motion2.git] / server / api / license / license.controller.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 _0xc66e=['mustache','util','path','sox','ejs','desk.js','to-csv','papaparse','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','end','json','offset','count','limit','Content-Range','apply','reject','save','update','destroy','then','index','model','keys','License','rawAttributes','query','filters','intersection','attributes','fields','length','merge','options','getLicense','body','params','get','checkLicense','key','demo','catch','downloadLogFile','license-info.log','join','/var','log','xcally','setHeader','Content-disposition','attachment;\x20filename=','set','download','rimraf','fast-json-patch','request-promise','moment','bluebird'];(function(_0x378755,_0x53bc5c){var _0x58c55d=function(_0x320340){while(--_0x320340){_0x378755['push'](_0x378755['shift']());}};_0x58c55d(++_0x53bc5c);}(_0xc66e,0x18d));var _0xec66=function(_0x49c057,_0xc808ed){_0x49c057=_0x49c057-0x0;var _0xd8f0e6=_0xc66e[_0x49c057];return _0xd8f0e6;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xec66('0x0'));var zipdir=require('zip-dir');var jsonpatch=require(_0xec66('0x1'));var rp=require(_0xec66('0x2'));var moment=require(_0xec66('0x3'));var BPromise=require(_0xec66('0x4'));var Mustache=require(_0xec66('0x5'));var util=require(_0xec66('0x6'));var path=require(_0xec66('0x7'));var sox=require(_0xec66('0x8'));var csv=require('to-csv');var ejs=require(_0xec66('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require('squel');var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0xec66('0xa'));var toCsv=require(_0xec66('0xb'));var querystring=require('querystring');var Papa=require(_0xec66('0xc'));var Redis=require('ioredis');var authService=require(_0xec66('0xd'));var qs=require(_0xec66('0xe'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xec66('0xf'));var logger=require(_0xec66('0x10'))(_0xec66('0x11'));var utils=require(_0xec66('0x12'));var config=require(_0xec66('0x13'));var licenseUtil=require(_0xec66('0x14'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x19c3f8,_0x168525){_0x168525=_0x168525||0xcc;return function(_0x4dc0bb){if(_0x4dc0bb){return _0x19c3f8[_0xec66('0x15')](_0x168525);}return _0x19c3f8[_0xec66('0x16')](_0x168525)[_0xec66('0x17')]();};}function respondWithResult(_0x17b876,_0x1fe6d3){_0x1fe6d3=_0x1fe6d3||0xc8;return function(_0x35d655){if(_0x35d655){return _0x17b876['status'](_0x1fe6d3)[_0xec66('0x18')](_0x35d655);}};}function respondWithFilteredResult(_0x5b3478,_0x202a26){return function(_0x3c6f9c){if(_0x3c6f9c){var _0x57dbc8=typeof _0x202a26[_0xec66('0x19')]==='undefined'&&typeof _0x202a26['limit']==='undefined';var _0x4433d9=_0x3c6f9c[_0xec66('0x1a')];var _0xd02785=_0x57dbc8?0x0:_0x202a26[_0xec66('0x19')];var _0x37cf86=_0x57dbc8?_0x3c6f9c[_0xec66('0x1a')]:_0x202a26['offset']+_0x202a26[_0xec66('0x1b')];var _0x6ceeba;if(_0x37cf86>=_0x4433d9){_0x37cf86=_0x4433d9;_0x6ceeba=0xc8;}else{_0x6ceeba=0xce;}_0x5b3478[_0xec66('0x16')](_0x6ceeba);return _0x5b3478['set'](_0xec66('0x1c'),_0xd02785+'-'+_0x37cf86+'/'+_0x4433d9)[_0xec66('0x18')](_0x3c6f9c);}return null;};}function patchUpdates(_0x2716c7){return function(_0x1639c2){try{jsonpatch[_0xec66('0x1d')](_0x1639c2,_0x2716c7,!![]);}catch(_0x3631f4){return BPromise[_0xec66('0x1e')](_0x3631f4);}return _0x1639c2[_0xec66('0x1f')]();};}function saveUpdates(_0x83c0fd,_0x2316d7){return function(_0x343972){if(_0x343972){return _0x343972[_0xec66('0x20')](_0x83c0fd)['then'](function(_0x3214bf){return _0x3214bf;});}return null;};}function removeEntity(_0x1853e8,_0x16147f){return function(_0x220837){if(_0x220837){return _0x220837[_0xec66('0x21')]()[_0xec66('0x22')](function(){_0x1853e8[_0xec66('0x16')](0xcc)[_0xec66('0x17')]();});}};}function handleEntityNotFound(_0x593fac,_0x3ab1dd){return function(_0x393d0e){if(!_0x393d0e){_0x593fac[_0xec66('0x15')](0x194);}return _0x393d0e;};}function handleError(_0x168ed6,_0x525bf5){_0x525bf5=_0x525bf5||0x1f4;return function(_0x500224){logger['error'](_0x500224['stack']);if(_0x500224['name']){delete _0x500224['name'];}_0x168ed6[_0xec66('0x16')](_0x525bf5)['send'](_0x500224);};}var utilLicense=require(_0xec66('0x14'));exports[_0xec66('0x23')]=function(_0x2bb5c4,_0x102164){var _0x3bd7bb={'raw':!![],'where':{'id':0x1}},_0x3d307f={};_0x3d307f[_0xec66('0x24')]=_[_0xec66('0x25')](db[_0xec66('0x26')][_0xec66('0x27')]);_0x3d307f[_0xec66('0x28')]=_[_0xec66('0x25')](_0x2bb5c4[_0xec66('0x28')]);_0x3d307f[_0xec66('0x29')]=_[_0xec66('0x2a')](_0x3d307f['model'],_0x3d307f[_0xec66('0x28')]);_0x3bd7bb[_0xec66('0x2b')]=_[_0xec66('0x2a')](_0x3d307f[_0xec66('0x24')],qs['fields'](_0x2bb5c4[_0xec66('0x28')][_0xec66('0x2c')]));_0x3bd7bb[_0xec66('0x2b')]=_0x3bd7bb[_0xec66('0x2b')][_0xec66('0x2d')]?_0x3bd7bb['attributes']:_0x3d307f[_0xec66('0x24')];_0x3bd7bb=_[_0xec66('0x2e')]({},_0x3bd7bb,_0x2bb5c4[_0xec66('0x2f')]);return utilLicense[_0xec66('0x30')](_0x3bd7bb)[_0xec66('0x22')](respondWithResult(_0x102164,null))['catch'](handleError(_0x102164,null));};exports[_0xec66('0x20')]=function(_0x5d1028,_0x38e181){if(_0x5d1028[_0xec66('0x31')]['id']){delete _0x5d1028[_0xec66('0x31')]['id'];}return db[_0xec66('0x26')]['find']({'where':{'id':_0x5d1028[_0xec66('0x32')]['id']}})[_0xec66('0x22')](handleEntityNotFound(_0x38e181,null))['then'](function(_0x259daa){var _0x48cf63=_0x259daa[_0xec66('0x33')]({'plain':!![]});return utilLicense[_0xec66('0x34')](_0x48cf63,_0x5d1028[_0xec66('0x31')][_0xec66('0x35')]);})[_0xec66('0x22')](function(_0x5b9fd8){if(!_0x5b9fd8[_0xec66('0x36')]){return saveUpdates(_0x5d1028[_0xec66('0x31')],null);}return _0x5b9fd8;})[_0xec66('0x22')](respondWithResult(_0x38e181,null))[_0xec66('0x37')](handleError(_0x38e181,null));};exports[_0xec66('0x38')]=function(_0x33d443,_0x1eaf30){var _0x2275bb=_0xec66('0x39');var _0x33ca78=path[_0xec66('0x3a')](_0xec66('0x3b'),_0xec66('0x3c'),_0xec66('0x3d'),_0x2275bb);_0x1eaf30[_0xec66('0x3e')](_0xec66('0x3f'),_0xec66('0x40')+_0x2275bb);_0x1eaf30[_0xec66('0x41')]('Content-Type','text/plain');_0x1eaf30[_0xec66('0x42')](_0x33ca78);};