93b624520561a13e78a6e7ffeaa285060f150dee
[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 _0x9965=['License','rawAttributes','query','filters','intersection','attributes','fields','length','merge','options','getLicense','catch','body','find','params','get','checkLicense','key','downloadLogFile','license-info.log','join','/var','setHeader','Content-disposition','download','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','to-csv','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','limit','count','set','Content-Range','apply','save','update','destroy','then','error','name','send','index','model'];(function(_0x38f266,_0x33b4a6){var _0xd58c41=function(_0x5f8da3){while(--_0x5f8da3){_0x38f266['push'](_0x38f266['shift']());}};_0xd58c41(++_0x33b4a6);}(_0x9965,0xf4));var _0x5996=function(_0x105054,_0x3900b8){_0x105054=_0x105054-0x0;var _0x4142e7=_0x9965[_0x105054];return _0x4142e7;};'use strict';var emlformat=require(_0x5996('0x0'));var rimraf=require(_0x5996('0x1'));var zipdir=require(_0x5996('0x2'));var jsonpatch=require(_0x5996('0x3'));var rp=require(_0x5996('0x4'));var moment=require('moment');var BPromise=require(_0x5996('0x5'));var Mustache=require(_0x5996('0x6'));var util=require(_0x5996('0x7'));var path=require(_0x5996('0x8'));var sox=require(_0x5996('0x9'));var csv=require(_0x5996('0xa'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x5996('0xb'));var _=require(_0x5996('0xc'));var squel=require(_0x5996('0xd'));var crypto=require(_0x5996('0xe'));var jsforce=require(_0x5996('0xf'));var deskjs=require(_0x5996('0x10'));var toCsv=require(_0x5996('0xa'));var querystring=require(_0x5996('0x11'));var Papa=require(_0x5996('0x12'));var Redis=require(_0x5996('0x13'));var authService=require(_0x5996('0x14'));var qs=require('../../components/parsers/qs');var as=require(_0x5996('0x15'));var hardwareService=require(_0x5996('0x16'));var logger=require(_0x5996('0x17'))(_0x5996('0x18'));var utils=require(_0x5996('0x19'));var config=require(_0x5996('0x1a'));var licenseUtil=require(_0x5996('0x1b'));var db=require(_0x5996('0x1c'))['db'];function respondWithStatusCode(_0x2e83c9,_0x5a85d8){_0x5a85d8=_0x5a85d8||0xcc;return function(_0x33cdfe){if(_0x33cdfe){return _0x2e83c9[_0x5996('0x1d')](_0x5a85d8);}return _0x2e83c9[_0x5996('0x1e')](_0x5a85d8)[_0x5996('0x1f')]();};}function respondWithResult(_0x3a5e99,_0x56834c){_0x56834c=_0x56834c||0xc8;return function(_0x5144b0){if(_0x5144b0){return _0x3a5e99['status'](_0x56834c)[_0x5996('0x20')](_0x5144b0);}};}function respondWithFilteredResult(_0x245994,_0x5798f3){return function(_0x11647b){if(_0x11647b){var _0x3f6e5b=typeof _0x5798f3[_0x5996('0x21')]==='undefined'&&typeof _0x5798f3[_0x5996('0x22')]==='undefined';var _0x218c64=_0x11647b[_0x5996('0x23')];var _0x375c75=_0x3f6e5b?0x0:_0x5798f3[_0x5996('0x21')];var _0x4338c8=_0x3f6e5b?_0x11647b['count']:_0x5798f3[_0x5996('0x21')]+_0x5798f3[_0x5996('0x22')];var _0x5b4bdf;if(_0x4338c8>=_0x218c64){_0x4338c8=_0x218c64;_0x5b4bdf=0xc8;}else{_0x5b4bdf=0xce;}_0x245994[_0x5996('0x1e')](_0x5b4bdf);return _0x245994[_0x5996('0x24')](_0x5996('0x25'),_0x375c75+'-'+_0x4338c8+'/'+_0x218c64)[_0x5996('0x20')](_0x11647b);}return null;};}function patchUpdates(_0x3f5757){return function(_0x5c5b80){try{jsonpatch[_0x5996('0x26')](_0x5c5b80,_0x3f5757,!![]);}catch(_0x1ea0d1){return BPromise['reject'](_0x1ea0d1);}return _0x5c5b80[_0x5996('0x27')]();};}function saveUpdates(_0x55d483,_0x395ccc){return function(_0x1e9985){if(_0x1e9985){return _0x1e9985[_0x5996('0x28')](_0x55d483)['then'](function(_0x85e02b){return _0x85e02b;});}return null;};}function removeEntity(_0x32db2c,_0x79be0c){return function(_0x1a470a){if(_0x1a470a){return _0x1a470a[_0x5996('0x29')]()[_0x5996('0x2a')](function(){_0x32db2c['status'](0xcc)[_0x5996('0x1f')]();});}};}function handleEntityNotFound(_0x10c7b5,_0x46a3c9){return function(_0x44246e){if(!_0x44246e){_0x10c7b5[_0x5996('0x1d')](0x194);}return _0x44246e;};}function handleError(_0x11975c,_0x157393){_0x157393=_0x157393||0x1f4;return function(_0x539166){logger[_0x5996('0x2b')](_0x539166['stack']);if(_0x539166[_0x5996('0x2c')]){delete _0x539166[_0x5996('0x2c')];}_0x11975c[_0x5996('0x1e')](_0x157393)[_0x5996('0x2d')](_0x539166);};}var utilLicense=require(_0x5996('0x1b'));exports[_0x5996('0x2e')]=function(_0x2bf176,_0x127837){var _0x3d13a3={'raw':!![],'where':{'id':0x1}},_0x273d8b={};_0x273d8b[_0x5996('0x2f')]=_['keys'](db[_0x5996('0x30')][_0x5996('0x31')]);_0x273d8b[_0x5996('0x32')]=_['keys'](_0x2bf176[_0x5996('0x32')]);_0x273d8b[_0x5996('0x33')]=_[_0x5996('0x34')](_0x273d8b[_0x5996('0x2f')],_0x273d8b['query']);_0x3d13a3[_0x5996('0x35')]=_[_0x5996('0x34')](_0x273d8b[_0x5996('0x2f')],qs['fields'](_0x2bf176['query'][_0x5996('0x36')]));_0x3d13a3[_0x5996('0x35')]=_0x3d13a3[_0x5996('0x35')][_0x5996('0x37')]?_0x3d13a3['attributes']:_0x273d8b[_0x5996('0x2f')];_0x3d13a3=_[_0x5996('0x38')]({},_0x3d13a3,_0x2bf176[_0x5996('0x39')]);return utilLicense[_0x5996('0x3a')](_0x3d13a3)[_0x5996('0x2a')](respondWithResult(_0x127837,null))[_0x5996('0x3b')](handleError(_0x127837,null));};exports[_0x5996('0x28')]=function(_0x25bf99,_0xef3805){if(_0x25bf99[_0x5996('0x3c')]['id']){delete _0x25bf99['body']['id'];}return db[_0x5996('0x30')][_0x5996('0x3d')]({'where':{'id':_0x25bf99[_0x5996('0x3e')]['id']}})[_0x5996('0x2a')](handleEntityNotFound(_0xef3805,null))[_0x5996('0x2a')](function(_0x5a68e8){var _0x11e51c=_0x5a68e8[_0x5996('0x3f')]({'plain':!![]});return utilLicense[_0x5996('0x40')](_0x11e51c,_0x25bf99[_0x5996('0x3c')][_0x5996('0x41')]);})['then'](function(_0x8e4ea4){if(!_0x8e4ea4['demo']){return saveUpdates(_0x25bf99[_0x5996('0x3c')],null);}return _0x8e4ea4;})[_0x5996('0x2a')](respondWithResult(_0xef3805,null))[_0x5996('0x3b')](handleError(_0xef3805,null));};exports[_0x5996('0x42')]=function(_0x4ae954,_0x1fb7e0){var _0x384cf8=_0x5996('0x43');var _0x3ef23f=path[_0x5996('0x44')](_0x5996('0x45'),'log','xcally',_0x384cf8);_0x1fb7e0[_0x5996('0x46')](_0x5996('0x47'),'attachment;\x20filename='+_0x384cf8);_0x1fb7e0[_0x5996('0x24')]('Content-Type','text/plain');_0x1fb7e0[_0x5996('0x48')](_0x3ef23f);};