Built motion from commit da617fac.|2.6.6
[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 _0x5627=['zip-dir','fast-json-patch','moment','bluebird','mustache','util','path','to-csv','ejs','fs-extra','lodash','squel','crypto','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','json','offset','limit','undefined','count','Content-Range','apply','reject','save','update','destroy','then','error','stack','name','send','../../config/license/util','index','model','keys','query','filters','intersection','attributes','fields','length','merge','options','getLicense','catch','body','License','find','params','get','checkLicense','key','demo','license-info.log','join','/var','log','attachment;\x20filename=','set','Content-Type','text/plain','download','eml-format','rimraf'];(function(_0xba35c0,_0x3a3943){var _0x2847c5=function(_0x5e2309){while(--_0x5e2309){_0xba35c0['push'](_0xba35c0['shift']());}};_0x2847c5(++_0x3a3943);}(_0x5627,0x1cc));var _0x7562=function(_0x4b369d,_0x265eb8){_0x4b369d=_0x4b369d-0x0;var _0x571a98=_0x5627[_0x4b369d];return _0x571a98;};'use strict';var emlformat=require(_0x7562('0x0'));var rimraf=require(_0x7562('0x1'));var zipdir=require(_0x7562('0x2'));var jsonpatch=require(_0x7562('0x3'));var rp=require('request-promise');var moment=require(_0x7562('0x4'));var BPromise=require(_0x7562('0x5'));var Mustache=require(_0x7562('0x6'));var util=require(_0x7562('0x7'));var path=require(_0x7562('0x8'));var sox=require('sox');var csv=require(_0x7562('0x9'));var ejs=require(_0x7562('0xa'));var fs=require('fs');var fs_extra=require(_0x7562('0xb'));var _=require(_0x7562('0xc'));var squel=require(_0x7562('0xd'));var crypto=require(_0x7562('0xe'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x7562('0x9'));var querystring=require(_0x7562('0xf'));var Papa=require(_0x7562('0x10'));var Redis=require(_0x7562('0x11'));var authService=require(_0x7562('0x12'));var qs=require(_0x7562('0x13'));var as=require(_0x7562('0x14'));var hardwareService=require(_0x7562('0x15'));var logger=require(_0x7562('0x16'))(_0x7562('0x17'));var utils=require(_0x7562('0x18'));var config=require(_0x7562('0x19'));var licenseUtil=require('../../config/license/util');var db=require(_0x7562('0x1a'))['db'];function respondWithStatusCode(_0x5c33ff,_0x426fdf){_0x426fdf=_0x426fdf||0xcc;return function(_0x4b535e){if(_0x4b535e){return _0x5c33ff[_0x7562('0x1b')](_0x426fdf);}return _0x5c33ff[_0x7562('0x1c')](_0x426fdf)[_0x7562('0x1d')]();};}function respondWithResult(_0x394b77,_0x59237a){_0x59237a=_0x59237a||0xc8;return function(_0x100ad0){if(_0x100ad0){return _0x394b77[_0x7562('0x1c')](_0x59237a)[_0x7562('0x1e')](_0x100ad0);}};}function respondWithFilteredResult(_0x13f097,_0x3349c5){return function(_0x41cef0){if(_0x41cef0){var _0x960ae1=typeof _0x3349c5[_0x7562('0x1f')]==='undefined'&&typeof _0x3349c5[_0x7562('0x20')]===_0x7562('0x21');var _0x16e214=_0x41cef0[_0x7562('0x22')];var _0x5ae93c=_0x960ae1?0x0:_0x3349c5[_0x7562('0x1f')];var _0x58cdc5=_0x960ae1?_0x41cef0[_0x7562('0x22')]:_0x3349c5[_0x7562('0x1f')]+_0x3349c5['limit'];var _0x2ca48a;if(_0x58cdc5>=_0x16e214){_0x58cdc5=_0x16e214;_0x2ca48a=0xc8;}else{_0x2ca48a=0xce;}_0x13f097[_0x7562('0x1c')](_0x2ca48a);return _0x13f097['set'](_0x7562('0x23'),_0x5ae93c+'-'+_0x58cdc5+'/'+_0x16e214)[_0x7562('0x1e')](_0x41cef0);}return null;};}function patchUpdates(_0x4ea661){return function(_0x1fc601){try{jsonpatch[_0x7562('0x24')](_0x1fc601,_0x4ea661,!![]);}catch(_0x2b93c0){return BPromise[_0x7562('0x25')](_0x2b93c0);}return _0x1fc601[_0x7562('0x26')]();};}function saveUpdates(_0x426812,_0xd6175f){return function(_0x3ef69a){if(_0x3ef69a){return _0x3ef69a[_0x7562('0x27')](_0x426812)['then'](function(_0xa4aec4){return _0xa4aec4;});}return null;};}function removeEntity(_0x5926a1,_0x13254f){return function(_0x45f86b){if(_0x45f86b){return _0x45f86b[_0x7562('0x28')]()[_0x7562('0x29')](function(){_0x5926a1['status'](0xcc)[_0x7562('0x1d')]();});}};}function handleEntityNotFound(_0x45ac3d,_0x3f8185){return function(_0x503312){if(!_0x503312){_0x45ac3d[_0x7562('0x1b')](0x194);}return _0x503312;};}function handleError(_0x115ded,_0x3f8c44){_0x3f8c44=_0x3f8c44||0x1f4;return function(_0x1d4b6b){logger[_0x7562('0x2a')](_0x1d4b6b[_0x7562('0x2b')]);if(_0x1d4b6b[_0x7562('0x2c')]){delete _0x1d4b6b['name'];}_0x115ded[_0x7562('0x1c')](_0x3f8c44)[_0x7562('0x2d')](_0x1d4b6b);};}var utilLicense=require(_0x7562('0x2e'));exports[_0x7562('0x2f')]=function(_0x5f3787,_0x6b833c){var _0x354b1a={'raw':!![],'where':{'id':0x1}},_0x3342d8={};_0x3342d8[_0x7562('0x30')]=_[_0x7562('0x31')](db['License']['rawAttributes']);_0x3342d8[_0x7562('0x32')]=_[_0x7562('0x31')](_0x5f3787['query']);_0x3342d8[_0x7562('0x33')]=_[_0x7562('0x34')](_0x3342d8[_0x7562('0x30')],_0x3342d8[_0x7562('0x32')]);_0x354b1a[_0x7562('0x35')]=_[_0x7562('0x34')](_0x3342d8[_0x7562('0x30')],qs[_0x7562('0x36')](_0x5f3787['query']['fields']));_0x354b1a[_0x7562('0x35')]=_0x354b1a[_0x7562('0x35')][_0x7562('0x37')]?_0x354b1a[_0x7562('0x35')]:_0x3342d8['model'];_0x354b1a=_[_0x7562('0x38')]({},_0x354b1a,_0x5f3787[_0x7562('0x39')]);return utilLicense[_0x7562('0x3a')](_0x354b1a)['then'](respondWithResult(_0x6b833c,null))[_0x7562('0x3b')](handleError(_0x6b833c,null));};exports[_0x7562('0x27')]=function(_0xd7da71,_0x540904){if(_0xd7da71['body']['id']){delete _0xd7da71[_0x7562('0x3c')]['id'];}return db[_0x7562('0x3d')][_0x7562('0x3e')]({'where':{'id':_0xd7da71[_0x7562('0x3f')]['id']}})[_0x7562('0x29')](handleEntityNotFound(_0x540904,null))[_0x7562('0x29')](function(_0x3beab2){var _0x3bfbc8=_0x3beab2[_0x7562('0x40')]({'plain':!![]});return utilLicense[_0x7562('0x41')](_0x3bfbc8,_0xd7da71[_0x7562('0x3c')][_0x7562('0x42')]);})[_0x7562('0x29')](function(_0x5d5ec8){if(!_0x5d5ec8[_0x7562('0x43')]){return saveUpdates(_0xd7da71['body'],null);}return _0x5d5ec8;})[_0x7562('0x29')](respondWithResult(_0x540904,null))[_0x7562('0x3b')](handleError(_0x540904,null));};exports['downloadLogFile']=function(_0x145209,_0x61fd5d){var _0x144e15=_0x7562('0x44');var _0x215552=path[_0x7562('0x45')](_0x7562('0x46'),_0x7562('0x47'),'xcally',_0x144e15);_0x61fd5d['setHeader']('Content-disposition',_0x7562('0x48')+_0x144e15);_0x61fd5d[_0x7562('0x49')](_0x7562('0x4a'),_0x7562('0x4b'));_0x61fd5d[_0x7562('0x4c')](_0x215552);};