Built motion from commit (unavailable).|2.5.5
[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 _0x1f75=['html-pdf','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','jsforce','desk.js','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','end','count','offset','limit','set','Content-Range','json','reject','save','update','destroy','then','name','send','index','model','keys','License','rawAttributes','query','filters','intersection','attributes','fields','length','merge','options','getLicense','body','find','params','get','demo','catch'];(function(_0x493a89,_0x2f5fac){var _0x5be45c=function(_0x1147ed){while(--_0x1147ed){_0x493a89['push'](_0x493a89['shift']());}};_0x5be45c(++_0x2f5fac);}(_0x1f75,0x12c));var _0x51f7=function(_0x160c73,_0x2ee678){_0x160c73=_0x160c73-0x0;var _0xd9302=_0x1f75[_0x160c73];return _0xd9302;};'use strict';var pdf=require(_0x51f7('0x0'));var emlformat=require(_0x51f7('0x1'));var rimraf=require(_0x51f7('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0x51f7('0x3'));var rp=require(_0x51f7('0x4'));var moment=require(_0x51f7('0x5'));var BPromise=require(_0x51f7('0x6'));var Mustache=require(_0x51f7('0x7'));var util=require(_0x51f7('0x8'));var path=require(_0x51f7('0x9'));var sox=require(_0x51f7('0xa'));var csv=require(_0x51f7('0xb'));var ejs=require(_0x51f7('0xc'));var fs=require('fs');var _=require(_0x51f7('0xd'));var squel=require(_0x51f7('0xe'));var crypto=require('crypto');var jsforce=require(_0x51f7('0xf'));var deskjs=require(_0x51f7('0x10'));var toCsv=require(_0x51f7('0xb'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x51f7('0x11'));var authService=require(_0x51f7('0x12'));var qs=require('../../components/parsers/qs');var as=require(_0x51f7('0x13'));var hardwareService=require(_0x51f7('0x14'));var logger=require('../../config/logger')('api');var utils=require(_0x51f7('0x15'));var config=require(_0x51f7('0x16'));var licenseUtil=require(_0x51f7('0x17'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x364cbb,_0x1fb7a2){_0x1fb7a2=_0x1fb7a2||0xcc;return function(_0x54fa80){if(_0x54fa80){return _0x364cbb[_0x51f7('0x18')](_0x1fb7a2);}return _0x364cbb[_0x51f7('0x19')](_0x1fb7a2)[_0x51f7('0x1a')]();};}function respondWithResult(_0x48081d,_0x4ea980){_0x4ea980=_0x4ea980||0xc8;return function(_0x13d1db){if(_0x13d1db){return _0x48081d['status'](_0x4ea980)['json'](_0x13d1db);}};}function respondWithFilteredResult(_0x4e2f85,_0x199d2e){return function(_0x183b91){if(_0x183b91){var _0x3f81b7=_0x183b91[_0x51f7('0x1b')],_0x24124b=_0x199d2e[_0x51f7('0x1c')],_0x490c76=_0x199d2e[_0x51f7('0x1c')]+_0x199d2e[_0x51f7('0x1d')],_0x43e9c0;if(_0x490c76>=_0x3f81b7){_0x490c76=_0x3f81b7;_0x43e9c0=0xc8;}else{_0x43e9c0=0xce;}_0x4e2f85[_0x51f7('0x19')](_0x43e9c0);return _0x4e2f85[_0x51f7('0x1e')](_0x51f7('0x1f'),_0x24124b+'-'+_0x490c76+'/'+_0x3f81b7)[_0x51f7('0x20')](_0x183b91);}return null;};}function patchUpdates(_0x3abe89){return function(_0x2501ef){try{jsonpatch['apply'](_0x2501ef,_0x3abe89,!![]);}catch(_0x53e9a9){return BPromise[_0x51f7('0x21')](_0x53e9a9);}return _0x2501ef[_0x51f7('0x22')]();};}function saveUpdates(_0x565aa0,_0x3d5143){return function(_0xf5e811){if(_0xf5e811){return _0xf5e811[_0x51f7('0x23')](_0x565aa0)['then'](function(_0x2e8632){return _0x2e8632;});}return null;};}function removeEntity(_0x675110,_0x83ad10){return function(_0x4cfba8){if(_0x4cfba8){return _0x4cfba8[_0x51f7('0x24')]()[_0x51f7('0x25')](function(){_0x675110[_0x51f7('0x19')](0xcc)['end']();});}};}function handleEntityNotFound(_0x4f5076,_0x1899bd){return function(_0x3746e1){if(!_0x3746e1){_0x4f5076['sendStatus'](0x194);}return _0x3746e1;};}function handleError(_0x41c1fa,_0x4487c9){_0x4487c9=_0x4487c9||0x1f4;return function(_0x487cca){logger['error'](_0x487cca['stack']);if(_0x487cca[_0x51f7('0x26')]){delete _0x487cca[_0x51f7('0x26')];}_0x41c1fa['status'](_0x4487c9)[_0x51f7('0x27')](_0x487cca);};}var utilLicense=require(_0x51f7('0x17'));exports[_0x51f7('0x28')]=function(_0x7838fc,_0x39751b){var _0x5ea14={'raw':!![],'where':{'id':0x1}},_0x2dc321={};_0x2dc321[_0x51f7('0x29')]=_[_0x51f7('0x2a')](db[_0x51f7('0x2b')][_0x51f7('0x2c')]);_0x2dc321[_0x51f7('0x2d')]=_[_0x51f7('0x2a')](_0x7838fc[_0x51f7('0x2d')]);_0x2dc321[_0x51f7('0x2e')]=_[_0x51f7('0x2f')](_0x2dc321[_0x51f7('0x29')],_0x2dc321['query']);_0x5ea14[_0x51f7('0x30')]=_['intersection'](_0x2dc321[_0x51f7('0x29')],qs[_0x51f7('0x31')](_0x7838fc['query'][_0x51f7('0x31')]));_0x5ea14['attributes']=_0x5ea14['attributes'][_0x51f7('0x32')]?_0x5ea14[_0x51f7('0x30')]:_0x2dc321[_0x51f7('0x29')];_0x5ea14=_[_0x51f7('0x33')]({},_0x5ea14,_0x7838fc[_0x51f7('0x34')]);return utilLicense[_0x51f7('0x35')](_0x5ea14)[_0x51f7('0x25')](respondWithResult(_0x39751b,null))['catch'](handleError(_0x39751b,null));};exports[_0x51f7('0x23')]=function(_0x49e259,_0x5b878c){if(_0x49e259['body']['id']){delete _0x49e259[_0x51f7('0x36')]['id'];}return db[_0x51f7('0x2b')][_0x51f7('0x37')]({'where':{'id':_0x49e259[_0x51f7('0x38')]['id']}})[_0x51f7('0x25')](handleEntityNotFound(_0x5b878c,null))[_0x51f7('0x25')](function(_0x14557b){var _0x27fe81=_0x14557b[_0x51f7('0x39')]({'plain':!![]});return utilLicense['checkLicense'](_0x27fe81,_0x49e259[_0x51f7('0x36')]['key']);})[_0x51f7('0x25')](function(_0x38e649){if(!_0x38e649[_0x51f7('0x3a')]){return saveUpdates(_0x49e259['body'],null);}return _0x38e649;})[_0x51f7('0x25')](respondWithResult(_0x5b878c,null))[_0x51f7('0x3b')](handleError(_0x5b878c,null));};