Built motion from commit c116dc8b.|2.6.30
[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 _0xd2c6=['bluebird','mustache','util','squel','crypto','jsforce','to-csv','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/environment','../../mysqldb','sendStatus','status','end','json','offset','limit','undefined','count','set','apply','update','destroy','then','stack','name','send','index','model','keys','License','rawAttributes','query','intersection','fields','attributes','merge','getLicense','catch','body','find','get','checkLicense','demo','downloadLogFile','license-info.log','join','/var','xcally','setHeader','Content-disposition','attachment;\x20filename=','Content-Type','text/plain','download','eml-format','rimraf','fast-json-patch'];(function(_0x4e4c69,_0x5d7f1c){var _0x35def9=function(_0x1c962f){while(--_0x1c962f){_0x4e4c69['push'](_0x4e4c69['shift']());}};_0x35def9(++_0x5d7f1c);}(_0xd2c6,0x171));var _0x6d2c=function(_0x20589d,_0x55d5bf){_0x20589d=_0x20589d-0x0;var _0x422de9=_0xd2c6[_0x20589d];return _0x422de9;};'use strict';var emlformat=require(_0x6d2c('0x0'));var rimraf=require(_0x6d2c('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x6d2c('0x2'));var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0x6d2c('0x3'));var Mustache=require(_0x6d2c('0x4'));var util=require(_0x6d2c('0x5'));var path=require('path');var sox=require('sox');var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0x6d2c('0x6'));var crypto=require(_0x6d2c('0x7'));var jsforce=require(_0x6d2c('0x8'));var deskjs=require('desk.js');var toCsv=require(_0x6d2c('0x9'));var querystring=require('querystring');var Papa=require(_0x6d2c('0xa'));var Redis=require(_0x6d2c('0xb'));var authService=require(_0x6d2c('0xc'));var qs=require('../../components/parsers/qs');var as=require(_0x6d2c('0xd'));var hardwareService=require(_0x6d2c('0xe'));var logger=require('../../config/logger')(_0x6d2c('0xf'));var utils=require('../../config/utils');var config=require(_0x6d2c('0x10'));var licenseUtil=require('../../config/license/util');var db=require(_0x6d2c('0x11'))['db'];function respondWithStatusCode(_0x32a94f,_0x14fb9f){_0x14fb9f=_0x14fb9f||0xcc;return function(_0x33679d){if(_0x33679d){return _0x32a94f[_0x6d2c('0x12')](_0x14fb9f);}return _0x32a94f[_0x6d2c('0x13')](_0x14fb9f)[_0x6d2c('0x14')]();};}function respondWithResult(_0x500da8,_0x14b2c2){_0x14b2c2=_0x14b2c2||0xc8;return function(_0x2da7dd){if(_0x2da7dd){return _0x500da8[_0x6d2c('0x13')](_0x14b2c2)[_0x6d2c('0x15')](_0x2da7dd);}};}function respondWithFilteredResult(_0x4300a8,_0x40843d){return function(_0x57b33a){if(_0x57b33a){var _0x40fdb6=typeof _0x40843d[_0x6d2c('0x16')]==='undefined'&&typeof _0x40843d[_0x6d2c('0x17')]===_0x6d2c('0x18');var _0x48407d=_0x57b33a[_0x6d2c('0x19')];var _0x51c1ed=_0x40fdb6?0x0:_0x40843d[_0x6d2c('0x16')];var _0x1ac955=_0x40fdb6?_0x57b33a[_0x6d2c('0x19')]:_0x40843d['offset']+_0x40843d[_0x6d2c('0x17')];var _0x2ff94f;if(_0x1ac955>=_0x48407d){_0x1ac955=_0x48407d;_0x2ff94f=0xc8;}else{_0x2ff94f=0xce;}_0x4300a8[_0x6d2c('0x13')](_0x2ff94f);return _0x4300a8[_0x6d2c('0x1a')]('Content-Range',_0x51c1ed+'-'+_0x1ac955+'/'+_0x48407d)[_0x6d2c('0x15')](_0x57b33a);}return null;};}function patchUpdates(_0x127a64){return function(_0x4545fe){try{jsonpatch[_0x6d2c('0x1b')](_0x4545fe,_0x127a64,!![]);}catch(_0x53130c){return BPromise['reject'](_0x53130c);}return _0x4545fe['save']();};}function saveUpdates(_0x4b14f2,_0x4e8a50){return function(_0x208786){if(_0x208786){return _0x208786[_0x6d2c('0x1c')](_0x4b14f2)['then'](function(_0x4c6258){return _0x4c6258;});}return null;};}function removeEntity(_0x43d53c,_0x1470ae){return function(_0x2832ed){if(_0x2832ed){return _0x2832ed[_0x6d2c('0x1d')]()[_0x6d2c('0x1e')](function(){_0x43d53c['status'](0xcc)[_0x6d2c('0x14')]();});}};}function handleEntityNotFound(_0x5dbe4f,_0x53df39){return function(_0x11eb73){if(!_0x11eb73){_0x5dbe4f[_0x6d2c('0x12')](0x194);}return _0x11eb73;};}function handleError(_0x26ed42,_0x9000d7){_0x9000d7=_0x9000d7||0x1f4;return function(_0x3a4375){logger['error'](_0x3a4375[_0x6d2c('0x1f')]);if(_0x3a4375[_0x6d2c('0x20')]){delete _0x3a4375[_0x6d2c('0x20')];}_0x26ed42['status'](_0x9000d7)[_0x6d2c('0x21')](_0x3a4375);};}var utilLicense=require('../../config/license/util');exports[_0x6d2c('0x22')]=function(_0x4dc247,_0x247595){var _0x1fbe84={'raw':!![],'where':{'id':0x1}},_0x4e9f40={};_0x4e9f40[_0x6d2c('0x23')]=_[_0x6d2c('0x24')](db[_0x6d2c('0x25')][_0x6d2c('0x26')]);_0x4e9f40['query']=_[_0x6d2c('0x24')](_0x4dc247[_0x6d2c('0x27')]);_0x4e9f40['filters']=_[_0x6d2c('0x28')](_0x4e9f40['model'],_0x4e9f40[_0x6d2c('0x27')]);_0x1fbe84['attributes']=_[_0x6d2c('0x28')](_0x4e9f40['model'],qs['fields'](_0x4dc247[_0x6d2c('0x27')][_0x6d2c('0x29')]));_0x1fbe84[_0x6d2c('0x2a')]=_0x1fbe84['attributes']['length']?_0x1fbe84['attributes']:_0x4e9f40['model'];_0x1fbe84=_[_0x6d2c('0x2b')]({},_0x1fbe84,_0x4dc247['options']);return utilLicense[_0x6d2c('0x2c')](_0x1fbe84)[_0x6d2c('0x1e')](respondWithResult(_0x247595,null))[_0x6d2c('0x2d')](handleError(_0x247595,null));};exports[_0x6d2c('0x1c')]=function(_0x11fa66,_0x3e9ebc){if(_0x11fa66[_0x6d2c('0x2e')]['id']){delete _0x11fa66[_0x6d2c('0x2e')]['id'];}return db[_0x6d2c('0x25')][_0x6d2c('0x2f')]({'where':{'id':_0x11fa66['params']['id']}})[_0x6d2c('0x1e')](handleEntityNotFound(_0x3e9ebc,null))[_0x6d2c('0x1e')](function(_0x1c5dc5){var _0x4184dd=_0x1c5dc5[_0x6d2c('0x30')]({'plain':!![]});return utilLicense[_0x6d2c('0x31')](_0x4184dd,_0x11fa66[_0x6d2c('0x2e')]['key']);})[_0x6d2c('0x1e')](function(_0x485156){if(!_0x485156[_0x6d2c('0x32')]){return saveUpdates(_0x11fa66[_0x6d2c('0x2e')],null);}return _0x485156;})[_0x6d2c('0x1e')](respondWithResult(_0x3e9ebc,null))['catch'](handleError(_0x3e9ebc,null));};exports[_0x6d2c('0x33')]=function(_0x24f413,_0x3acb9c){var _0x157227=_0x6d2c('0x34');var _0x3c2678=path[_0x6d2c('0x35')](_0x6d2c('0x36'),'log',_0x6d2c('0x37'),_0x157227);_0x3acb9c[_0x6d2c('0x38')](_0x6d2c('0x39'),_0x6d2c('0x3a')+_0x157227);_0x3acb9c[_0x6d2c('0x1a')](_0x6d2c('0x3b'),_0x6d2c('0x3c'));_0x3acb9c[_0x6d2c('0x3d')](_0x3c2678);};