b5b063a5530f0e3c16ee596d95f771bc42b9f4f7
[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 _0x2e3c=['sendStatus','error','stack','name','send','../../config/license/util','index','model','keys','License','rawAttributes','query','filters','attributes','fields','length','merge','options','getLicense','body','find','get','checkLicense','key','demo','catch','html-pdf','eml-format','rimraf','fast-json-patch','moment','bluebird','util','sox','to-csv','ejs','lodash','squel','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','status','end','json','count','offset','limit','set','apply','update','then'];(function(_0x1e06f1,_0x59d7e1){var _0x34f77e=function(_0x4f9f26){while(--_0x4f9f26){_0x1e06f1['push'](_0x1e06f1['shift']());}};_0x34f77e(++_0x59d7e1);}(_0x2e3c,0x1f2));var _0xc2e3=function(_0x4de470,_0x23eeff){_0x4de470=_0x4de470-0x0;var _0x39655c=_0x2e3c[_0x4de470];return _0x39655c;};'use strict';var pdf=require(_0xc2e3('0x0'));var emlformat=require(_0xc2e3('0x1'));var rimraf=require(_0xc2e3('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0xc2e3('0x3'));var rp=require('request-promise');var moment=require(_0xc2e3('0x4'));var BPromise=require(_0xc2e3('0x5'));var Mustache=require('mustache');var util=require(_0xc2e3('0x6'));var path=require('path');var sox=require(_0xc2e3('0x7'));var csv=require(_0xc2e3('0x8'));var ejs=require(_0xc2e3('0x9'));var fs=require('fs');var _=require(_0xc2e3('0xa'));var squel=require(_0xc2e3('0xb'));var crypto=require('crypto');var jsforce=require(_0xc2e3('0xc'));var deskjs=require(_0xc2e3('0xd'));var toCsv=require(_0xc2e3('0x8'));var querystring=require(_0xc2e3('0xe'));var Papa=require('papaparse');var Redis=require(_0xc2e3('0xf'));var authService=require(_0xc2e3('0x10'));var qs=require(_0xc2e3('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0xc2e3('0x12'))(_0xc2e3('0x13'));var utils=require(_0xc2e3('0x14'));var config=require(_0xc2e3('0x15'));var licenseUtil=require('../../config/license/util');var db=require(_0xc2e3('0x16'))['db'];function respondWithStatusCode(_0x25142d,_0xa344a0){_0xa344a0=_0xa344a0||0xcc;return function(_0x3e7db5){if(_0x3e7db5){return _0x25142d['sendStatus'](_0xa344a0);}return _0x25142d[_0xc2e3('0x17')](_0xa344a0)[_0xc2e3('0x18')]();};}function respondWithResult(_0x472ebd,_0x3ec6ec){_0x3ec6ec=_0x3ec6ec||0xc8;return function(_0x3a655b){if(_0x3a655b){return _0x472ebd[_0xc2e3('0x17')](_0x3ec6ec)[_0xc2e3('0x19')](_0x3a655b);}};}function respondWithFilteredResult(_0x18b554,_0x519202){return function(_0x47501e){if(_0x47501e){var _0x201930=_0x47501e[_0xc2e3('0x1a')],_0x593506=_0x519202[_0xc2e3('0x1b')],_0x4f8a3b=_0x519202[_0xc2e3('0x1b')]+_0x519202[_0xc2e3('0x1c')],_0x5de268;if(_0x4f8a3b>=_0x201930){_0x4f8a3b=_0x201930;_0x5de268=0xc8;}else{_0x5de268=0xce;}_0x18b554[_0xc2e3('0x17')](_0x5de268);return _0x18b554[_0xc2e3('0x1d')]('Content-Range',_0x593506+'-'+_0x4f8a3b+'/'+_0x201930)[_0xc2e3('0x19')](_0x47501e);}return null;};}function patchUpdates(_0x9f5e7f){return function(_0x2f8e86){try{jsonpatch[_0xc2e3('0x1e')](_0x2f8e86,_0x9f5e7f,!![]);}catch(_0x1b1d1e){return BPromise['reject'](_0x1b1d1e);}return _0x2f8e86['save']();};}function saveUpdates(_0x4a0301,_0x162695){return function(_0x1ed2cc){if(_0x1ed2cc){return _0x1ed2cc[_0xc2e3('0x1f')](_0x4a0301)['then'](function(_0xef2f56){return _0xef2f56;});}return null;};}function removeEntity(_0x487c62,_0x4bc979){return function(_0x1779af){if(_0x1779af){return _0x1779af['destroy']()[_0xc2e3('0x20')](function(){_0x487c62[_0xc2e3('0x17')](0xcc)['end']();});}};}function handleEntityNotFound(_0x1657bc,_0x15bad3){return function(_0x155f4c){if(!_0x155f4c){_0x1657bc[_0xc2e3('0x21')](0x194);}return _0x155f4c;};}function handleError(_0x43e65e,_0x4fb715){_0x4fb715=_0x4fb715||0x1f4;return function(_0x48ac5d){logger[_0xc2e3('0x22')](_0x48ac5d[_0xc2e3('0x23')]);if(_0x48ac5d[_0xc2e3('0x24')]){delete _0x48ac5d[_0xc2e3('0x24')];}_0x43e65e['status'](_0x4fb715)[_0xc2e3('0x25')](_0x48ac5d);};}var utilLicense=require(_0xc2e3('0x26'));exports[_0xc2e3('0x27')]=function(_0x26ed3b,_0x2e1863){var _0x5411a5={'raw':!![],'where':{'id':0x1}},_0x49f8a7={};_0x49f8a7[_0xc2e3('0x28')]=_[_0xc2e3('0x29')](db[_0xc2e3('0x2a')][_0xc2e3('0x2b')]);_0x49f8a7[_0xc2e3('0x2c')]=_[_0xc2e3('0x29')](_0x26ed3b[_0xc2e3('0x2c')]);_0x49f8a7[_0xc2e3('0x2d')]=_['intersection'](_0x49f8a7[_0xc2e3('0x28')],_0x49f8a7['query']);_0x5411a5[_0xc2e3('0x2e')]=_['intersection'](_0x49f8a7[_0xc2e3('0x28')],qs['fields'](_0x26ed3b[_0xc2e3('0x2c')][_0xc2e3('0x2f')]));_0x5411a5[_0xc2e3('0x2e')]=_0x5411a5[_0xc2e3('0x2e')][_0xc2e3('0x30')]?_0x5411a5[_0xc2e3('0x2e')]:_0x49f8a7[_0xc2e3('0x28')];_0x5411a5=_[_0xc2e3('0x31')]({},_0x5411a5,_0x26ed3b[_0xc2e3('0x32')]);return utilLicense[_0xc2e3('0x33')](_0x5411a5)[_0xc2e3('0x20')](respondWithResult(_0x2e1863,null))['catch'](handleError(_0x2e1863,null));};exports[_0xc2e3('0x1f')]=function(_0x1ce1d9,_0xc8bdee){if(_0x1ce1d9[_0xc2e3('0x34')]['id']){delete _0x1ce1d9[_0xc2e3('0x34')]['id'];}return db[_0xc2e3('0x2a')][_0xc2e3('0x35')]({'where':{'id':_0x1ce1d9['params']['id']}})[_0xc2e3('0x20')](handleEntityNotFound(_0xc8bdee,null))[_0xc2e3('0x20')](function(_0x492b98){var _0x5357a8=_0x492b98[_0xc2e3('0x36')]({'plain':!![]});return utilLicense[_0xc2e3('0x37')](_0x5357a8,_0x1ce1d9[_0xc2e3('0x34')][_0xc2e3('0x38')]);})['then'](function(_0x4fb497){if(!_0x4fb497[_0xc2e3('0x39')]){return saveUpdates(_0x1ce1d9[_0xc2e3('0x34')],null);}return _0x4fb497;})[_0xc2e3('0x20')](respondWithResult(_0xc8bdee,null))[_0xc2e3('0x3a')](handleError(_0xc8bdee,null));};