Built motion from commit d5e4af8c.|2.6.23
[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 _0x4dec=['fast-json-patch','request-promise','bluebird','mustache','path','ejs','fs-extra','lodash','squel','crypto','to-csv','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','then','end','error','name','send','index','model','keys','License','rawAttributes','query','filters','intersection','attributes','fields','length','getLicense','catch','body','find','params','checkLicense','key','downloadLogFile','join','log','xcally','setHeader','attachment;\x20filename=','Content-Type','eml-format','rimraf','zip-dir'];(function(_0x305c31,_0x466b17){var _0x17f39f=function(_0x53ae03){while(--_0x53ae03){_0x305c31['push'](_0x305c31['shift']());}};_0x17f39f(++_0x466b17);}(_0x4dec,0x81));var _0xc4de=function(_0x1facfa,_0x1acf7d){_0x1facfa=_0x1facfa-0x0;var _0x9ec701=_0x4dec[_0x1facfa];return _0x9ec701;};'use strict';var emlformat=require(_0xc4de('0x0'));var rimraf=require(_0xc4de('0x1'));var zipdir=require(_0xc4de('0x2'));var jsonpatch=require(_0xc4de('0x3'));var rp=require(_0xc4de('0x4'));var moment=require('moment');var BPromise=require(_0xc4de('0x5'));var Mustache=require(_0xc4de('0x6'));var util=require('util');var path=require(_0xc4de('0x7'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0xc4de('0x8'));var fs=require('fs');var fs_extra=require(_0xc4de('0x9'));var _=require(_0xc4de('0xa'));var squel=require(_0xc4de('0xb'));var crypto=require(_0xc4de('0xc'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0xc4de('0xd'));var querystring=require(_0xc4de('0xe'));var Papa=require(_0xc4de('0xf'));var Redis=require(_0xc4de('0x10'));var authService=require('../../components/auth/service');var qs=require(_0xc4de('0x11'));var as=require(_0xc4de('0x12'));var hardwareService=require(_0xc4de('0x13'));var logger=require('../../config/logger')(_0xc4de('0x14'));var utils=require(_0xc4de('0x15'));var config=require(_0xc4de('0x16'));var licenseUtil=require(_0xc4de('0x17'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x4f3022,_0x17fa9e){_0x17fa9e=_0x17fa9e||0xcc;return function(_0x308483){if(_0x308483){return _0x4f3022[_0xc4de('0x18')](_0x17fa9e);}return _0x4f3022[_0xc4de('0x19')](_0x17fa9e)['end']();};}function respondWithResult(_0x289193,_0x5d17d9){_0x5d17d9=_0x5d17d9||0xc8;return function(_0x290d88){if(_0x290d88){return _0x289193[_0xc4de('0x19')](_0x5d17d9)['json'](_0x290d88);}};}function respondWithFilteredResult(_0x2b3604,_0x4913db){return function(_0x3bab27){if(_0x3bab27){var _0x4e0d79=typeof _0x4913db[_0xc4de('0x1a')]===_0xc4de('0x1b')&&typeof _0x4913db[_0xc4de('0x1c')]===_0xc4de('0x1b');var _0x548f95=_0x3bab27[_0xc4de('0x1d')];var _0x75080f=_0x4e0d79?0x0:_0x4913db[_0xc4de('0x1a')];var _0x310cdc=_0x4e0d79?_0x3bab27[_0xc4de('0x1d')]:_0x4913db[_0xc4de('0x1a')]+_0x4913db['limit'];var _0x1c2bb3;if(_0x310cdc>=_0x548f95){_0x310cdc=_0x548f95;_0x1c2bb3=0xc8;}else{_0x1c2bb3=0xce;}_0x2b3604['status'](_0x1c2bb3);return _0x2b3604[_0xc4de('0x1e')](_0xc4de('0x1f'),_0x75080f+'-'+_0x310cdc+'/'+_0x548f95)['json'](_0x3bab27);}return null;};}function patchUpdates(_0x3bba63){return function(_0x5ee932){try{jsonpatch[_0xc4de('0x20')](_0x5ee932,_0x3bba63,!![]);}catch(_0x3d2ba2){return BPromise[_0xc4de('0x21')](_0x3d2ba2);}return _0x5ee932[_0xc4de('0x22')]();};}function saveUpdates(_0xc999c2,_0x22cda2){return function(_0x53a59b){if(_0x53a59b){return _0x53a59b[_0xc4de('0x23')](_0xc999c2)[_0xc4de('0x24')](function(_0xc51da8){return _0xc51da8;});}return null;};}function removeEntity(_0x2f904b,_0x2be156){return function(_0x25f7b4){if(_0x25f7b4){return _0x25f7b4['destroy']()[_0xc4de('0x24')](function(){_0x2f904b[_0xc4de('0x19')](0xcc)[_0xc4de('0x25')]();});}};}function handleEntityNotFound(_0x5099e5,_0x5c7881){return function(_0x4df386){if(!_0x4df386){_0x5099e5[_0xc4de('0x18')](0x194);}return _0x4df386;};}function handleError(_0x833da,_0x5b66fa){_0x5b66fa=_0x5b66fa||0x1f4;return function(_0x25e98c){logger[_0xc4de('0x26')](_0x25e98c['stack']);if(_0x25e98c[_0xc4de('0x27')]){delete _0x25e98c['name'];}_0x833da[_0xc4de('0x19')](_0x5b66fa)[_0xc4de('0x28')](_0x25e98c);};}var utilLicense=require(_0xc4de('0x17'));exports[_0xc4de('0x29')]=function(_0x2b2c7d,_0x5d2da6){var _0x3cded9={'raw':!![],'where':{'id':0x1}},_0x18c6ea={};_0x18c6ea[_0xc4de('0x2a')]=_[_0xc4de('0x2b')](db[_0xc4de('0x2c')][_0xc4de('0x2d')]);_0x18c6ea[_0xc4de('0x2e')]=_[_0xc4de('0x2b')](_0x2b2c7d[_0xc4de('0x2e')]);_0x18c6ea[_0xc4de('0x2f')]=_[_0xc4de('0x30')](_0x18c6ea[_0xc4de('0x2a')],_0x18c6ea[_0xc4de('0x2e')]);_0x3cded9[_0xc4de('0x31')]=_[_0xc4de('0x30')](_0x18c6ea[_0xc4de('0x2a')],qs[_0xc4de('0x32')](_0x2b2c7d[_0xc4de('0x2e')]['fields']));_0x3cded9['attributes']=_0x3cded9[_0xc4de('0x31')][_0xc4de('0x33')]?_0x3cded9[_0xc4de('0x31')]:_0x18c6ea[_0xc4de('0x2a')];_0x3cded9=_['merge']({},_0x3cded9,_0x2b2c7d['options']);return utilLicense[_0xc4de('0x34')](_0x3cded9)[_0xc4de('0x24')](respondWithResult(_0x5d2da6,null))[_0xc4de('0x35')](handleError(_0x5d2da6,null));};exports['update']=function(_0x216649,_0x126584){if(_0x216649[_0xc4de('0x36')]['id']){delete _0x216649['body']['id'];}return db[_0xc4de('0x2c')][_0xc4de('0x37')]({'where':{'id':_0x216649[_0xc4de('0x38')]['id']}})[_0xc4de('0x24')](handleEntityNotFound(_0x126584,null))['then'](function(_0x130a81){var _0x2855f5=_0x130a81['get']({'plain':!![]});return utilLicense[_0xc4de('0x39')](_0x2855f5,_0x216649['body'][_0xc4de('0x3a')]);})[_0xc4de('0x24')](function(_0x20d78e){if(!_0x20d78e['demo']){return saveUpdates(_0x216649['body'],null);}return _0x20d78e;})['then'](respondWithResult(_0x126584,null))[_0xc4de('0x35')](handleError(_0x126584,null));};exports[_0xc4de('0x3b')]=function(_0x35963c,_0x28644f){var _0x423992='license-info.log';var _0x19639a=path[_0xc4de('0x3c')]('/var',_0xc4de('0x3d'),_0xc4de('0x3e'),_0x423992);_0x28644f[_0xc4de('0x3f')]('Content-disposition',_0xc4de('0x40')+_0x423992);_0x28644f[_0xc4de('0x1e')](_0xc4de('0x41'),'text/plain');_0x28644f['download'](_0x19639a);};