Built motion from commit d32f51f5.|2.6.31
[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 _0x60a9=['set','Content-Range','apply','reject','save','update','then','end','sendStatus','stack','name','send','../../config/license/util','index','model','keys','rawAttributes','filters','intersection','query','attributes','fields','length','options','getLicense','catch','body','License','find','params','get','checkLicense','key','downloadLogFile','license-info.log','join','/var','log','xcally','setHeader','Content-disposition','Content-Type','text/plain','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','sox','to-csv','ejs','lodash','crypto','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../mysqldb','status','json','offset','undefined','limit','count'];(function(_0x2fbcc4,_0x5d32f5){var _0x1f8b10=function(_0x130c26){while(--_0x130c26){_0x2fbcc4['push'](_0x2fbcc4['shift']());}};_0x1f8b10(++_0x5d32f5);}(_0x60a9,0x103));var _0x960a=function(_0x58a067,_0x13a340){_0x58a067=_0x58a067-0x0;var _0x5497cc=_0x60a9[_0x58a067];return _0x5497cc;};'use strict';var emlformat=require(_0x960a('0x0'));var rimraf=require(_0x960a('0x1'));var zipdir=require(_0x960a('0x2'));var jsonpatch=require(_0x960a('0x3'));var rp=require(_0x960a('0x4'));var moment=require(_0x960a('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x960a('0x6'));var util=require('util');var path=require('path');var sox=require(_0x960a('0x7'));var csv=require(_0x960a('0x8'));var ejs=require(_0x960a('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x960a('0xa'));var squel=require('squel');var crypto=require(_0x960a('0xb'));var jsforce=require(_0x960a('0xc'));var deskjs=require('desk.js');var toCsv=require(_0x960a('0x8'));var querystring=require(_0x960a('0xd'));var Papa=require(_0x960a('0xe'));var Redis=require(_0x960a('0xf'));var authService=require(_0x960a('0x10'));var qs=require(_0x960a('0x11'));var as=require(_0x960a('0x12'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x960a('0x13'))(_0x960a('0x14'));var utils=require(_0x960a('0x15'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0x960a('0x16'))['db'];function respondWithStatusCode(_0x27b99f,_0x200096){_0x200096=_0x200096||0xcc;return function(_0x5dfad1){if(_0x5dfad1){return _0x27b99f['sendStatus'](_0x200096);}return _0x27b99f[_0x960a('0x17')](_0x200096)['end']();};}function respondWithResult(_0x5ba05a,_0x20a705){_0x20a705=_0x20a705||0xc8;return function(_0x533beb){if(_0x533beb){return _0x5ba05a[_0x960a('0x17')](_0x20a705)[_0x960a('0x18')](_0x533beb);}};}function respondWithFilteredResult(_0x263aa1,_0x48fcfe){return function(_0x49ac3b){if(_0x49ac3b){var _0x5a9e63=typeof _0x48fcfe[_0x960a('0x19')]===_0x960a('0x1a')&&typeof _0x48fcfe[_0x960a('0x1b')]===_0x960a('0x1a');var _0x3a6211=_0x49ac3b['count'];var _0x46d5a2=_0x5a9e63?0x0:_0x48fcfe[_0x960a('0x19')];var _0x4ae614=_0x5a9e63?_0x49ac3b[_0x960a('0x1c')]:_0x48fcfe[_0x960a('0x19')]+_0x48fcfe[_0x960a('0x1b')];var _0x2efa56;if(_0x4ae614>=_0x3a6211){_0x4ae614=_0x3a6211;_0x2efa56=0xc8;}else{_0x2efa56=0xce;}_0x263aa1['status'](_0x2efa56);return _0x263aa1[_0x960a('0x1d')](_0x960a('0x1e'),_0x46d5a2+'-'+_0x4ae614+'/'+_0x3a6211)['json'](_0x49ac3b);}return null;};}function patchUpdates(_0x3c9e8c){return function(_0x4a74da){try{jsonpatch[_0x960a('0x1f')](_0x4a74da,_0x3c9e8c,!![]);}catch(_0x4f5eb7){return BPromise[_0x960a('0x20')](_0x4f5eb7);}return _0x4a74da[_0x960a('0x21')]();};}function saveUpdates(_0x4ac7b7,_0x2273b1){return function(_0x1acf8e){if(_0x1acf8e){return _0x1acf8e[_0x960a('0x22')](_0x4ac7b7)[_0x960a('0x23')](function(_0x4ed37d){return _0x4ed37d;});}return null;};}function removeEntity(_0x13b2d8,_0x1c241b){return function(_0x3dc889){if(_0x3dc889){return _0x3dc889['destroy']()['then'](function(){_0x13b2d8[_0x960a('0x17')](0xcc)[_0x960a('0x24')]();});}};}function handleEntityNotFound(_0x1e4787,_0x7dfcd7){return function(_0x111cae){if(!_0x111cae){_0x1e4787[_0x960a('0x25')](0x194);}return _0x111cae;};}function handleError(_0xa93a95,_0xf16bc2){_0xf16bc2=_0xf16bc2||0x1f4;return function(_0x17da53){logger['error'](_0x17da53[_0x960a('0x26')]);if(_0x17da53[_0x960a('0x27')]){delete _0x17da53['name'];}_0xa93a95[_0x960a('0x17')](_0xf16bc2)[_0x960a('0x28')](_0x17da53);};}var utilLicense=require(_0x960a('0x29'));exports[_0x960a('0x2a')]=function(_0x15eac1,_0x5858ae){var _0xa4a0a2={'raw':!![],'where':{'id':0x1}},_0x27d41b={};_0x27d41b[_0x960a('0x2b')]=_[_0x960a('0x2c')](db['License'][_0x960a('0x2d')]);_0x27d41b['query']=_[_0x960a('0x2c')](_0x15eac1['query']);_0x27d41b[_0x960a('0x2e')]=_[_0x960a('0x2f')](_0x27d41b[_0x960a('0x2b')],_0x27d41b[_0x960a('0x30')]);_0xa4a0a2[_0x960a('0x31')]=_[_0x960a('0x2f')](_0x27d41b['model'],qs[_0x960a('0x32')](_0x15eac1[_0x960a('0x30')][_0x960a('0x32')]));_0xa4a0a2[_0x960a('0x31')]=_0xa4a0a2['attributes'][_0x960a('0x33')]?_0xa4a0a2[_0x960a('0x31')]:_0x27d41b['model'];_0xa4a0a2=_['merge']({},_0xa4a0a2,_0x15eac1[_0x960a('0x34')]);return utilLicense[_0x960a('0x35')](_0xa4a0a2)[_0x960a('0x23')](respondWithResult(_0x5858ae,null))[_0x960a('0x36')](handleError(_0x5858ae,null));};exports[_0x960a('0x22')]=function(_0xee73ad,_0x3c5244){if(_0xee73ad[_0x960a('0x37')]['id']){delete _0xee73ad[_0x960a('0x37')]['id'];}return db[_0x960a('0x38')][_0x960a('0x39')]({'where':{'id':_0xee73ad[_0x960a('0x3a')]['id']}})[_0x960a('0x23')](handleEntityNotFound(_0x3c5244,null))[_0x960a('0x23')](function(_0x5d0d79){var _0x4281ea=_0x5d0d79[_0x960a('0x3b')]({'plain':!![]});return utilLicense[_0x960a('0x3c')](_0x4281ea,_0xee73ad['body'][_0x960a('0x3d')]);})[_0x960a('0x23')](function(_0x3737fe){if(!_0x3737fe['demo']){return saveUpdates(_0xee73ad[_0x960a('0x37')],null);}return _0x3737fe;})[_0x960a('0x23')](respondWithResult(_0x3c5244,null))[_0x960a('0x36')](handleError(_0x3c5244,null));};exports[_0x960a('0x3e')]=function(_0x4e6021,_0x3525cb){var _0x3b58a6=_0x960a('0x3f');var _0x5d4353=path[_0x960a('0x40')](_0x960a('0x41'),_0x960a('0x42'),_0x960a('0x43'),_0x3b58a6);_0x3525cb[_0x960a('0x44')](_0x960a('0x45'),'attachment;\x20filename='+_0x3b58a6);_0x3525cb['set'](_0x960a('0x46'),_0x960a('0x47'));_0x3525cb['download'](_0x5d4353);};