Built motion from commit (unavailable).|2.6.0
[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 _0xc0d7=['fields','attributes','merge','options','catch','body','find','params','get','key','demo','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','fs-extra','lodash','squel','crypto','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','status','end','json','offset','limit','undefined','count','set','Content-Range','apply','update','then','destroy','error','stack','name','send','index','model','keys','License','rawAttributes','query','intersection'];(function(_0x5a264b,_0x1b2769){var _0xbb0c97=function(_0x574f52){while(--_0x574f52){_0x5a264b['push'](_0x5a264b['shift']());}};_0xbb0c97(++_0x1b2769);}(_0xc0d7,0x7f));var _0x7c0d=function(_0x1f755f,_0x491226){_0x1f755f=_0x1f755f-0x0;var _0x291574=_0xc0d7[_0x1f755f];return _0x291574;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0x7c0d('0x0'));var rp=require(_0x7c0d('0x1'));var moment=require(_0x7c0d('0x2'));var BPromise=require(_0x7c0d('0x3'));var Mustache=require(_0x7c0d('0x4'));var util=require(_0x7c0d('0x5'));var path=require(_0x7c0d('0x6'));var sox=require(_0x7c0d('0x7'));var csv=require(_0x7c0d('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x7c0d('0x9'));var _=require(_0x7c0d('0xa'));var squel=require(_0x7c0d('0xb'));var crypto=require(_0x7c0d('0xc'));var jsforce=require('jsforce');var deskjs=require(_0x7c0d('0xd'));var toCsv=require(_0x7c0d('0x8'));var querystring=require(_0x7c0d('0xe'));var Papa=require(_0x7c0d('0xf'));var Redis=require('ioredis');var authService=require(_0x7c0d('0x10'));var qs=require(_0x7c0d('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0x7c0d('0x12'))(_0x7c0d('0x13'));var utils=require('../../config/utils');var config=require(_0x7c0d('0x14'));var licenseUtil=require(_0x7c0d('0x15'));var db=require(_0x7c0d('0x16'))['db'];function respondWithStatusCode(_0x198dde,_0x41236d){_0x41236d=_0x41236d||0xcc;return function(_0x34dccf){if(_0x34dccf){return _0x198dde['sendStatus'](_0x41236d);}return _0x198dde[_0x7c0d('0x17')](_0x41236d)[_0x7c0d('0x18')]();};}function respondWithResult(_0x2ee593,_0x25c4a8){_0x25c4a8=_0x25c4a8||0xc8;return function(_0x33dd94){if(_0x33dd94){return _0x2ee593[_0x7c0d('0x17')](_0x25c4a8)[_0x7c0d('0x19')](_0x33dd94);}};}function respondWithFilteredResult(_0x13f301,_0x4a5fb4){return function(_0x340937){if(_0x340937){var _0x4e9850=typeof _0x4a5fb4[_0x7c0d('0x1a')]==='undefined'&&typeof _0x4a5fb4[_0x7c0d('0x1b')]===_0x7c0d('0x1c');var _0x478100=_0x340937[_0x7c0d('0x1d')];var _0x2841e1=_0x4e9850?0x0:_0x4a5fb4[_0x7c0d('0x1a')];var _0x1418ee=_0x4e9850?_0x340937[_0x7c0d('0x1d')]:_0x4a5fb4[_0x7c0d('0x1a')]+_0x4a5fb4[_0x7c0d('0x1b')];var _0x111dbe;if(_0x1418ee>=_0x478100){_0x1418ee=_0x478100;_0x111dbe=0xc8;}else{_0x111dbe=0xce;}_0x13f301[_0x7c0d('0x17')](_0x111dbe);return _0x13f301[_0x7c0d('0x1e')](_0x7c0d('0x1f'),_0x2841e1+'-'+_0x1418ee+'/'+_0x478100)[_0x7c0d('0x19')](_0x340937);}return null;};}function patchUpdates(_0x12e19a){return function(_0x2f0ac0){try{jsonpatch[_0x7c0d('0x20')](_0x2f0ac0,_0x12e19a,!![]);}catch(_0x1308c6){return BPromise['reject'](_0x1308c6);}return _0x2f0ac0['save']();};}function saveUpdates(_0x5dae80,_0x54b14f){return function(_0x5872fe){if(_0x5872fe){return _0x5872fe[_0x7c0d('0x21')](_0x5dae80)[_0x7c0d('0x22')](function(_0x1c7b84){return _0x1c7b84;});}return null;};}function removeEntity(_0x2f657e,_0x1ef191){return function(_0x2a92ce){if(_0x2a92ce){return _0x2a92ce[_0x7c0d('0x23')]()['then'](function(){_0x2f657e[_0x7c0d('0x17')](0xcc)[_0x7c0d('0x18')]();});}};}function handleEntityNotFound(_0x5aa006,_0x540abc){return function(_0x357cca){if(!_0x357cca){_0x5aa006['sendStatus'](0x194);}return _0x357cca;};}function handleError(_0x236973,_0x305a3a){_0x305a3a=_0x305a3a||0x1f4;return function(_0x43ba3b){logger[_0x7c0d('0x24')](_0x43ba3b[_0x7c0d('0x25')]);if(_0x43ba3b['name']){delete _0x43ba3b[_0x7c0d('0x26')];}_0x236973[_0x7c0d('0x17')](_0x305a3a)[_0x7c0d('0x27')](_0x43ba3b);};}var utilLicense=require(_0x7c0d('0x15'));exports[_0x7c0d('0x28')]=function(_0x4aea76,_0x2b261){var _0x553627={'raw':!![],'where':{'id':0x1}},_0x3a8947={};_0x3a8947[_0x7c0d('0x29')]=_[_0x7c0d('0x2a')](db[_0x7c0d('0x2b')][_0x7c0d('0x2c')]);_0x3a8947[_0x7c0d('0x2d')]=_['keys'](_0x4aea76[_0x7c0d('0x2d')]);_0x3a8947['filters']=_[_0x7c0d('0x2e')](_0x3a8947[_0x7c0d('0x29')],_0x3a8947['query']);_0x553627['attributes']=_[_0x7c0d('0x2e')](_0x3a8947['model'],qs[_0x7c0d('0x2f')](_0x4aea76[_0x7c0d('0x2d')]['fields']));_0x553627['attributes']=_0x553627['attributes']['length']?_0x553627[_0x7c0d('0x30')]:_0x3a8947['model'];_0x553627=_[_0x7c0d('0x31')]({},_0x553627,_0x4aea76[_0x7c0d('0x32')]);return utilLicense['getLicense'](_0x553627)[_0x7c0d('0x22')](respondWithResult(_0x2b261,null))[_0x7c0d('0x33')](handleError(_0x2b261,null));};exports[_0x7c0d('0x21')]=function(_0x196803,_0x57638f){if(_0x196803[_0x7c0d('0x34')]['id']){delete _0x196803[_0x7c0d('0x34')]['id'];}return db[_0x7c0d('0x2b')][_0x7c0d('0x35')]({'where':{'id':_0x196803[_0x7c0d('0x36')]['id']}})[_0x7c0d('0x22')](handleEntityNotFound(_0x57638f,null))[_0x7c0d('0x22')](function(_0x150069){var _0x471ab1=_0x150069[_0x7c0d('0x37')]({'plain':!![]});return utilLicense['checkLicense'](_0x471ab1,_0x196803[_0x7c0d('0x34')][_0x7c0d('0x38')]);})['then'](function(_0x3ff97b){if(!_0x3ff97b[_0x7c0d('0x39')]){return saveUpdates(_0x196803[_0x7c0d('0x34')],null);}return _0x3ff97b;})[_0x7c0d('0x22')](respondWithResult(_0x57638f,null))[_0x7c0d('0x33')](handleError(_0x57638f,null));};