7ff7f344ab53fa4304cb5f2566fe3b3a1832e64c
[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 _0x19ba=['destroy','end','stack','send','model','License','rawAttributes','query','keys','filters','intersection','attributes','fields','length','merge','getLicense','catch','body','get','key','demo','license-info.log','join','/var','log','xcally','Content-disposition','Content-Type','text/plain','download','eml-format','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','offset','limit','undefined','set','save','update','then'];(function(_0x1efed4,_0x3e803b){var _0x2e76e9=function(_0x1305e1){while(--_0x1305e1){_0x1efed4['push'](_0x1efed4['shift']());}};_0x2e76e9(++_0x3e803b);}(_0x19ba,0x126));var _0xa19b=function(_0x2da147,_0x24198f){_0x2da147=_0x2da147-0x0;var _0x570790=_0x19ba[_0x2da147];return _0x570790;};'use strict';var emlformat=require(_0xa19b('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xa19b('0x1'));var jsonpatch=require(_0xa19b('0x2'));var rp=require(_0xa19b('0x3'));var moment=require('moment');var BPromise=require(_0xa19b('0x4'));var Mustache=require(_0xa19b('0x5'));var util=require(_0xa19b('0x6'));var path=require(_0xa19b('0x7'));var sox=require(_0xa19b('0x8'));var csv=require(_0xa19b('0x9'));var ejs=require(_0xa19b('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xa19b('0xb'));var squel=require(_0xa19b('0xc'));var crypto=require('crypto');var jsforce=require(_0xa19b('0xd'));var deskjs=require(_0xa19b('0xe'));var toCsv=require('to-csv');var querystring=require(_0xa19b('0xf'));var Papa=require('papaparse');var Redis=require(_0xa19b('0x10'));var authService=require(_0xa19b('0x11'));var qs=require(_0xa19b('0x12'));var as=require(_0xa19b('0x13'));var hardwareService=require(_0xa19b('0x14'));var logger=require(_0xa19b('0x15'))('api');var utils=require(_0xa19b('0x16'));var config=require(_0xa19b('0x17'));var licenseUtil=require(_0xa19b('0x18'));var db=require(_0xa19b('0x19'))['db'];function respondWithStatusCode(_0x578fb0,_0x59a4a8){_0x59a4a8=_0x59a4a8||0xcc;return function(_0x279773){if(_0x279773){return _0x578fb0[_0xa19b('0x1a')](_0x59a4a8);}return _0x578fb0[_0xa19b('0x1b')](_0x59a4a8)['end']();};}function respondWithResult(_0x4a6ff4,_0x436a1a){_0x436a1a=_0x436a1a||0xc8;return function(_0x108dde){if(_0x108dde){return _0x4a6ff4[_0xa19b('0x1b')](_0x436a1a)[_0xa19b('0x1c')](_0x108dde);}};}function respondWithFilteredResult(_0x1dce09,_0x1603d8){return function(_0x380e8e){if(_0x380e8e){var _0x6a8f0f=typeof _0x1603d8[_0xa19b('0x1d')]==='undefined'&&typeof _0x1603d8[_0xa19b('0x1e')]===_0xa19b('0x1f');var _0x34e711=_0x380e8e['count'];var _0x3196ca=_0x6a8f0f?0x0:_0x1603d8[_0xa19b('0x1d')];var _0x477205=_0x6a8f0f?_0x380e8e['count']:_0x1603d8['offset']+_0x1603d8[_0xa19b('0x1e')];var _0x215663;if(_0x477205>=_0x34e711){_0x477205=_0x34e711;_0x215663=0xc8;}else{_0x215663=0xce;}_0x1dce09['status'](_0x215663);return _0x1dce09[_0xa19b('0x20')]('Content-Range',_0x3196ca+'-'+_0x477205+'/'+_0x34e711)[_0xa19b('0x1c')](_0x380e8e);}return null;};}function patchUpdates(_0x107e66){return function(_0x2429ef){try{jsonpatch['apply'](_0x2429ef,_0x107e66,!![]);}catch(_0x1c1272){return BPromise['reject'](_0x1c1272);}return _0x2429ef[_0xa19b('0x21')]();};}function saveUpdates(_0x255a2c,_0x342ffe){return function(_0x1c3ff0){if(_0x1c3ff0){return _0x1c3ff0[_0xa19b('0x22')](_0x255a2c)[_0xa19b('0x23')](function(_0x2e03ed){return _0x2e03ed;});}return null;};}function removeEntity(_0x305851,_0x1c1d05){return function(_0x41e2ea){if(_0x41e2ea){return _0x41e2ea[_0xa19b('0x24')]()['then'](function(){_0x305851[_0xa19b('0x1b')](0xcc)[_0xa19b('0x25')]();});}};}function handleEntityNotFound(_0x7ed49c,_0x42a8bf){return function(_0x11df2e){if(!_0x11df2e){_0x7ed49c[_0xa19b('0x1a')](0x194);}return _0x11df2e;};}function handleError(_0x25f929,_0x5a8f13){_0x5a8f13=_0x5a8f13||0x1f4;return function(_0x4350e7){logger['error'](_0x4350e7[_0xa19b('0x26')]);if(_0x4350e7['name']){delete _0x4350e7['name'];}_0x25f929[_0xa19b('0x1b')](_0x5a8f13)[_0xa19b('0x27')](_0x4350e7);};}var utilLicense=require('../../config/license/util');exports['index']=function(_0x4d6db7,_0x39845f){var _0x697fab={'raw':!![],'where':{'id':0x1}},_0x5bbb47={};_0x5bbb47[_0xa19b('0x28')]=_['keys'](db[_0xa19b('0x29')][_0xa19b('0x2a')]);_0x5bbb47[_0xa19b('0x2b')]=_[_0xa19b('0x2c')](_0x4d6db7[_0xa19b('0x2b')]);_0x5bbb47[_0xa19b('0x2d')]=_[_0xa19b('0x2e')](_0x5bbb47[_0xa19b('0x28')],_0x5bbb47[_0xa19b('0x2b')]);_0x697fab[_0xa19b('0x2f')]=_[_0xa19b('0x2e')](_0x5bbb47[_0xa19b('0x28')],qs[_0xa19b('0x30')](_0x4d6db7['query'][_0xa19b('0x30')]));_0x697fab['attributes']=_0x697fab['attributes'][_0xa19b('0x31')]?_0x697fab['attributes']:_0x5bbb47[_0xa19b('0x28')];_0x697fab=_[_0xa19b('0x32')]({},_0x697fab,_0x4d6db7['options']);return utilLicense[_0xa19b('0x33')](_0x697fab)[_0xa19b('0x23')](respondWithResult(_0x39845f,null))[_0xa19b('0x34')](handleError(_0x39845f,null));};exports[_0xa19b('0x22')]=function(_0x2f8aa1,_0xb4d82f){if(_0x2f8aa1[_0xa19b('0x35')]['id']){delete _0x2f8aa1[_0xa19b('0x35')]['id'];}return db[_0xa19b('0x29')]['find']({'where':{'id':_0x2f8aa1['params']['id']}})[_0xa19b('0x23')](handleEntityNotFound(_0xb4d82f,null))[_0xa19b('0x23')](function(_0x5de440){var _0x3d9438=_0x5de440[_0xa19b('0x36')]({'plain':!![]});return utilLicense['checkLicense'](_0x3d9438,_0x2f8aa1['body'][_0xa19b('0x37')]);})[_0xa19b('0x23')](function(_0x3b4e6b){if(!_0x3b4e6b[_0xa19b('0x38')]){return saveUpdates(_0x2f8aa1['body'],null);}return _0x3b4e6b;})[_0xa19b('0x23')](respondWithResult(_0xb4d82f,null))[_0xa19b('0x34')](handleError(_0xb4d82f,null));};exports['downloadLogFile']=function(_0x3ea1a8,_0x2bf49b){var _0x2cc748=_0xa19b('0x39');var _0x1caa8a=path[_0xa19b('0x3a')](_0xa19b('0x3b'),_0xa19b('0x3c'),_0xa19b('0x3d'),_0x2cc748);_0x2bf49b['setHeader'](_0xa19b('0x3e'),'attachment;\x20filename='+_0x2cc748);_0x2bf49b['set'](_0xa19b('0x3f'),_0xa19b('0x40'));_0x2bf49b[_0xa19b('0x41')](_0x1caa8a);};