Built motion from commit 994c64e1.|2.6.1
[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 _0xbe63=['../../mysqldb','sendStatus','status','json','undefined','limit','offset','count','Content-Range','apply','reject','update','then','destroy','end','error','stack','name','send','../../config/license/util','index','keys','License','rawAttributes','query','filters','intersection','model','attributes','fields','length','merge','options','getLicense','catch','body','find','params','get','demo','downloadLogFile','license-info.log','join','/var','log','xcally','setHeader','Content-disposition','attachment;\x20filename=','Content-Type','text/plain','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','sox','ejs','fs-extra','lodash','crypto','desk.js','to-csv','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','../../config/environment'];(function(_0x35fb11,_0x171a71){var _0x143da4=function(_0x25319c){while(--_0x25319c){_0x35fb11['push'](_0x35fb11['shift']());}};_0x143da4(++_0x171a71);}(_0xbe63,0x153));var _0x3be6=function(_0x155c64,_0x26ff95){_0x155c64=_0x155c64-0x0;var _0x1f154a=_0xbe63[_0x155c64];return _0x1f154a;};'use strict';var emlformat=require(_0x3be6('0x0'));var rimraf=require(_0x3be6('0x1'));var zipdir=require(_0x3be6('0x2'));var jsonpatch=require(_0x3be6('0x3'));var rp=require(_0x3be6('0x4'));var moment=require(_0x3be6('0x5'));var BPromise=require(_0x3be6('0x6'));var Mustache=require('mustache');var util=require(_0x3be6('0x7'));var path=require('path');var sox=require(_0x3be6('0x8'));var csv=require('to-csv');var ejs=require(_0x3be6('0x9'));var fs=require('fs');var fs_extra=require(_0x3be6('0xa'));var _=require(_0x3be6('0xb'));var squel=require('squel');var crypto=require(_0x3be6('0xc'));var jsforce=require('jsforce');var deskjs=require(_0x3be6('0xd'));var toCsv=require(_0x3be6('0xe'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x3be6('0xf'));var authService=require(_0x3be6('0x10'));var qs=require(_0x3be6('0x11'));var as=require(_0x3be6('0x12'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x3be6('0x13'))('api');var utils=require('../../config/utils');var config=require(_0x3be6('0x14'));var licenseUtil=require('../../config/license/util');var db=require(_0x3be6('0x15'))['db'];function respondWithStatusCode(_0x27f826,_0x444f52){_0x444f52=_0x444f52||0xcc;return function(_0x19c370){if(_0x19c370){return _0x27f826[_0x3be6('0x16')](_0x444f52);}return _0x27f826[_0x3be6('0x17')](_0x444f52)['end']();};}function respondWithResult(_0x3e5b1b,_0xbd586c){_0xbd586c=_0xbd586c||0xc8;return function(_0x328865){if(_0x328865){return _0x3e5b1b[_0x3be6('0x17')](_0xbd586c)[_0x3be6('0x18')](_0x328865);}};}function respondWithFilteredResult(_0x12132d,_0x1fbb52){return function(_0x2810e3){if(_0x2810e3){var _0x3f1575=typeof _0x1fbb52['offset']===_0x3be6('0x19')&&typeof _0x1fbb52[_0x3be6('0x1a')]===_0x3be6('0x19');var _0x335f13=_0x2810e3['count'];var _0x2b31db=_0x3f1575?0x0:_0x1fbb52[_0x3be6('0x1b')];var _0x489139=_0x3f1575?_0x2810e3[_0x3be6('0x1c')]:_0x1fbb52[_0x3be6('0x1b')]+_0x1fbb52[_0x3be6('0x1a')];var _0x4a5111;if(_0x489139>=_0x335f13){_0x489139=_0x335f13;_0x4a5111=0xc8;}else{_0x4a5111=0xce;}_0x12132d['status'](_0x4a5111);return _0x12132d['set'](_0x3be6('0x1d'),_0x2b31db+'-'+_0x489139+'/'+_0x335f13)['json'](_0x2810e3);}return null;};}function patchUpdates(_0xf300f3){return function(_0x51cb50){try{jsonpatch[_0x3be6('0x1e')](_0x51cb50,_0xf300f3,!![]);}catch(_0x4d0116){return BPromise[_0x3be6('0x1f')](_0x4d0116);}return _0x51cb50['save']();};}function saveUpdates(_0x4be5f5,_0x5376c7){return function(_0x23ef09){if(_0x23ef09){return _0x23ef09[_0x3be6('0x20')](_0x4be5f5)[_0x3be6('0x21')](function(_0x3313cb){return _0x3313cb;});}return null;};}function removeEntity(_0x316ca3,_0x3af599){return function(_0x571f14){if(_0x571f14){return _0x571f14[_0x3be6('0x22')]()[_0x3be6('0x21')](function(){_0x316ca3['status'](0xcc)[_0x3be6('0x23')]();});}};}function handleEntityNotFound(_0x3e9082,_0x1c4662){return function(_0x29640a){if(!_0x29640a){_0x3e9082[_0x3be6('0x16')](0x194);}return _0x29640a;};}function handleError(_0x443467,_0xa0a59b){_0xa0a59b=_0xa0a59b||0x1f4;return function(_0x2b0b8c){logger[_0x3be6('0x24')](_0x2b0b8c[_0x3be6('0x25')]);if(_0x2b0b8c[_0x3be6('0x26')]){delete _0x2b0b8c[_0x3be6('0x26')];}_0x443467['status'](_0xa0a59b)[_0x3be6('0x27')](_0x2b0b8c);};}var utilLicense=require(_0x3be6('0x28'));exports[_0x3be6('0x29')]=function(_0x13a62b,_0x2250b3){var _0x44d23d={'raw':!![],'where':{'id':0x1}},_0x44d6c3={};_0x44d6c3['model']=_[_0x3be6('0x2a')](db[_0x3be6('0x2b')][_0x3be6('0x2c')]);_0x44d6c3[_0x3be6('0x2d')]=_[_0x3be6('0x2a')](_0x13a62b[_0x3be6('0x2d')]);_0x44d6c3[_0x3be6('0x2e')]=_[_0x3be6('0x2f')](_0x44d6c3[_0x3be6('0x30')],_0x44d6c3[_0x3be6('0x2d')]);_0x44d23d[_0x3be6('0x31')]=_[_0x3be6('0x2f')](_0x44d6c3['model'],qs[_0x3be6('0x32')](_0x13a62b[_0x3be6('0x2d')]['fields']));_0x44d23d[_0x3be6('0x31')]=_0x44d23d['attributes'][_0x3be6('0x33')]?_0x44d23d['attributes']:_0x44d6c3[_0x3be6('0x30')];_0x44d23d=_[_0x3be6('0x34')]({},_0x44d23d,_0x13a62b[_0x3be6('0x35')]);return utilLicense[_0x3be6('0x36')](_0x44d23d)[_0x3be6('0x21')](respondWithResult(_0x2250b3,null))[_0x3be6('0x37')](handleError(_0x2250b3,null));};exports[_0x3be6('0x20')]=function(_0x4566a3,_0x38953c){if(_0x4566a3[_0x3be6('0x38')]['id']){delete _0x4566a3[_0x3be6('0x38')]['id'];}return db[_0x3be6('0x2b')][_0x3be6('0x39')]({'where':{'id':_0x4566a3[_0x3be6('0x3a')]['id']}})[_0x3be6('0x21')](handleEntityNotFound(_0x38953c,null))[_0x3be6('0x21')](function(_0x25c84a){var _0x40bf15=_0x25c84a[_0x3be6('0x3b')]({'plain':!![]});return utilLicense['checkLicense'](_0x40bf15,_0x4566a3[_0x3be6('0x38')]['key']);})['then'](function(_0x5144cf){if(!_0x5144cf[_0x3be6('0x3c')]){return saveUpdates(_0x4566a3[_0x3be6('0x38')],null);}return _0x5144cf;})[_0x3be6('0x21')](respondWithResult(_0x38953c,null))['catch'](handleError(_0x38953c,null));};exports[_0x3be6('0x3d')]=function(_0x4907a2,_0x348ca6){var _0x1d6914=_0x3be6('0x3e');var _0x1fcec7=path[_0x3be6('0x3f')](_0x3be6('0x40'),_0x3be6('0x41'),_0x3be6('0x42'),_0x1d6914);_0x348ca6[_0x3be6('0x43')](_0x3be6('0x44'),_0x3be6('0x45')+_0x1d6914);_0x348ca6['set'](_0x3be6('0x46'),_0x3be6('0x47'));_0x348ca6['download'](_0x1fcec7);};