cbb676b8cc06e67d35e583dabf754e6718a41183
[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 _0xcb41=['query','attributes','intersection','model','fields','length','merge','options','getLicense','catch','body','find','get','checkLicense','key','html-pdf','eml-format','rimraf','zip-dir','request-promise','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','crypto','jsforce','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','end','status','json','count','offset','set','Content-Range','apply','save','update','then','error','stack','name','index','keys','License','rawAttributes'];(function(_0x16760c,_0x2d0884){var _0x51c968=function(_0x567583){while(--_0x567583){_0x16760c['push'](_0x16760c['shift']());}};_0x51c968(++_0x2d0884);}(_0xcb41,0x1df));var _0x1cb4=function(_0x11a5ac,_0x4d1c0c){_0x11a5ac=_0x11a5ac-0x0;var _0x45d4a4=_0xcb41[_0x11a5ac];return _0x45d4a4;};'use strict';var pdf=require(_0x1cb4('0x0'));var emlformat=require(_0x1cb4('0x1'));var rimraf=require(_0x1cb4('0x2'));var zipdir=require(_0x1cb4('0x3'));var jsonpatch=require('fast-json-patch');var rp=require(_0x1cb4('0x4'));var moment=require('moment');var BPromise=require(_0x1cb4('0x5'));var Mustache=require(_0x1cb4('0x6'));var util=require(_0x1cb4('0x7'));var path=require(_0x1cb4('0x8'));var sox=require(_0x1cb4('0x9'));var csv=require(_0x1cb4('0xa'));var ejs=require(_0x1cb4('0xb'));var fs=require('fs');var _=require(_0x1cb4('0xc'));var squel=require('squel');var crypto=require(_0x1cb4('0xd'));var jsforce=require(_0x1cb4('0xe'));var deskjs=require('desk.js');var toCsv=require(_0x1cb4('0xa'));var querystring=require(_0x1cb4('0xf'));var Papa=require(_0x1cb4('0x10'));var Redis=require('ioredis');var authService=require(_0x1cb4('0x11'));var qs=require(_0x1cb4('0x12'));var as=require(_0x1cb4('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x1cb4('0x14'));var utils=require('../../config/utils');var config=require(_0x1cb4('0x15'));var licenseUtil=require(_0x1cb4('0x16'));var db=require(_0x1cb4('0x17'))['db'];function respondWithStatusCode(_0xd57cb1,_0x2409a2){_0x2409a2=_0x2409a2||0xcc;return function(_0x4eafc0){if(_0x4eafc0){return _0xd57cb1[_0x1cb4('0x18')](_0x2409a2);}return _0xd57cb1['status'](_0x2409a2)[_0x1cb4('0x19')]();};}function respondWithResult(_0x3d2f2e,_0x29a3bf){_0x29a3bf=_0x29a3bf||0xc8;return function(_0xb01aec){if(_0xb01aec){return _0x3d2f2e[_0x1cb4('0x1a')](_0x29a3bf)[_0x1cb4('0x1b')](_0xb01aec);}};}function respondWithFilteredResult(_0x34e04e,_0x35783e){return function(_0xc444d){if(_0xc444d){var _0x1858f1=_0xc444d[_0x1cb4('0x1c')],_0x521b49=_0x35783e[_0x1cb4('0x1d')],_0xbc72fd=_0x35783e['offset']+_0x35783e['limit'],_0x514285;if(_0xbc72fd>=_0x1858f1){_0xbc72fd=_0x1858f1;_0x514285=0xc8;}else{_0x514285=0xce;}_0x34e04e[_0x1cb4('0x1a')](_0x514285);return _0x34e04e[_0x1cb4('0x1e')](_0x1cb4('0x1f'),_0x521b49+'-'+_0xbc72fd+'/'+_0x1858f1)[_0x1cb4('0x1b')](_0xc444d);}return null;};}function patchUpdates(_0x274f12){return function(_0x43e481){try{jsonpatch[_0x1cb4('0x20')](_0x43e481,_0x274f12,!![]);}catch(_0xdbb325){return BPromise['reject'](_0xdbb325);}return _0x43e481[_0x1cb4('0x21')]();};}function saveUpdates(_0x1d1a19,_0x5a24ec){return function(_0x33993b){if(_0x33993b){return _0x33993b[_0x1cb4('0x22')](_0x1d1a19)[_0x1cb4('0x23')](function(_0x19d342){return _0x19d342;});}return null;};}function removeEntity(_0x4e5f9b,_0x316325){return function(_0x51fc8d){if(_0x51fc8d){return _0x51fc8d['destroy']()[_0x1cb4('0x23')](function(){_0x4e5f9b[_0x1cb4('0x1a')](0xcc)[_0x1cb4('0x19')]();});}};}function handleEntityNotFound(_0x4d93b9,_0x3533e8){return function(_0x33ec9c){if(!_0x33ec9c){_0x4d93b9[_0x1cb4('0x18')](0x194);}return _0x33ec9c;};}function handleError(_0x5bce36,_0x70d3dc){_0x70d3dc=_0x70d3dc||0x1f4;return function(_0x1e8d9c){logger[_0x1cb4('0x24')](_0x1e8d9c[_0x1cb4('0x25')]);if(_0x1e8d9c['name']){delete _0x1e8d9c[_0x1cb4('0x26')];}_0x5bce36['status'](_0x70d3dc)['send'](_0x1e8d9c);};}var utilLicense=require('../../config/license/util');exports[_0x1cb4('0x27')]=function(_0x54b46f,_0x28ac89){var _0x17f4e1={'raw':!![],'where':{'id':0x1}},_0x569fff={};_0x569fff['model']=_[_0x1cb4('0x28')](db[_0x1cb4('0x29')][_0x1cb4('0x2a')]);_0x569fff[_0x1cb4('0x2b')]=_[_0x1cb4('0x28')](_0x54b46f[_0x1cb4('0x2b')]);_0x569fff['filters']=_['intersection'](_0x569fff['model'],_0x569fff[_0x1cb4('0x2b')]);_0x17f4e1[_0x1cb4('0x2c')]=_[_0x1cb4('0x2d')](_0x569fff[_0x1cb4('0x2e')],qs[_0x1cb4('0x2f')](_0x54b46f[_0x1cb4('0x2b')][_0x1cb4('0x2f')]));_0x17f4e1[_0x1cb4('0x2c')]=_0x17f4e1[_0x1cb4('0x2c')][_0x1cb4('0x30')]?_0x17f4e1[_0x1cb4('0x2c')]:_0x569fff[_0x1cb4('0x2e')];_0x17f4e1=_[_0x1cb4('0x31')]({},_0x17f4e1,_0x54b46f[_0x1cb4('0x32')]);return utilLicense[_0x1cb4('0x33')](_0x17f4e1)[_0x1cb4('0x23')](respondWithResult(_0x28ac89,null))[_0x1cb4('0x34')](handleError(_0x28ac89,null));};exports[_0x1cb4('0x22')]=function(_0x527875,_0x2722a2){if(_0x527875[_0x1cb4('0x35')]['id']){delete _0x527875[_0x1cb4('0x35')]['id'];}return db[_0x1cb4('0x29')][_0x1cb4('0x36')]({'where':{'id':_0x527875['params']['id']}})[_0x1cb4('0x23')](handleEntityNotFound(_0x2722a2,null))[_0x1cb4('0x23')](function(_0x5aa5e4){var _0x375a26=_0x5aa5e4[_0x1cb4('0x37')]({'plain':!![]});return utilLicense[_0x1cb4('0x38')](_0x375a26,_0x527875[_0x1cb4('0x35')][_0x1cb4('0x39')]);})[_0x1cb4('0x23')](function(_0x525af6){if(!_0x525af6['demo']){return saveUpdates(_0x527875[_0x1cb4('0x35')],null);}return _0x525af6;})['then'](respondWithResult(_0x2722a2,null))['catch'](handleError(_0x2722a2,null));};