Built motion from commit (unavailable).|2.5.31
[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 _0xe714=['api','../../config/utils','../../config/license/util','../../mysqldb','status','end','undefined','limit','count','json','apply','reject','save','update','then','destroy','sendStatus','stack','name','send','keys','rawAttributes','query','filters','model','attributes','intersection','fields','length','merge','options','catch','body','License','find','params','get','checkLicense','key','demo','eml-format','zip-dir','fast-json-patch','request-promise','moment','mustache','path','sox','to-csv','ejs','fs-extra','lodash','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger'];(function(_0x845505,_0x19e5f3){var _0x2513b9=function(_0x10e7af){while(--_0x10e7af){_0x845505['push'](_0x845505['shift']());}};_0x2513b9(++_0x19e5f3);}(_0xe714,0xe2));var _0x4e71=function(_0x41ffe6,_0x2f7db3){_0x41ffe6=_0x41ffe6-0x0;var _0x54e5fd=_0xe714[_0x41ffe6];return _0x54e5fd;};'use strict';var emlformat=require(_0x4e71('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x4e71('0x1'));var jsonpatch=require(_0x4e71('0x2'));var rp=require(_0x4e71('0x3'));var moment=require(_0x4e71('0x4'));var BPromise=require('bluebird');var Mustache=require(_0x4e71('0x5'));var util=require('util');var path=require(_0x4e71('0x6'));var sox=require(_0x4e71('0x7'));var csv=require(_0x4e71('0x8'));var ejs=require(_0x4e71('0x9'));var fs=require('fs');var fs_extra=require(_0x4e71('0xa'));var _=require(_0x4e71('0xb'));var squel=require('squel');var crypto=require(_0x4e71('0xc'));var jsforce=require(_0x4e71('0xd'));var deskjs=require(_0x4e71('0xe'));var toCsv=require('to-csv');var querystring=require(_0x4e71('0xf'));var Papa=require('papaparse');var Redis=require(_0x4e71('0x10'));var authService=require(_0x4e71('0x11'));var qs=require(_0x4e71('0x12'));var as=require(_0x4e71('0x13'));var hardwareService=require(_0x4e71('0x14'));var logger=require(_0x4e71('0x15'))(_0x4e71('0x16'));var utils=require(_0x4e71('0x17'));var config=require('../../config/environment');var licenseUtil=require(_0x4e71('0x18'));var db=require(_0x4e71('0x19'))['db'];function respondWithStatusCode(_0x585acd,_0x3bd53c){_0x3bd53c=_0x3bd53c||0xcc;return function(_0x311b12){if(_0x311b12){return _0x585acd['sendStatus'](_0x3bd53c);}return _0x585acd[_0x4e71('0x1a')](_0x3bd53c)[_0x4e71('0x1b')]();};}function respondWithResult(_0x5a3d88,_0x5ad00a){_0x5ad00a=_0x5ad00a||0xc8;return function(_0x25c229){if(_0x25c229){return _0x5a3d88['status'](_0x5ad00a)['json'](_0x25c229);}};}function respondWithFilteredResult(_0x5afe50,_0x244272){return function(_0x4617d2){if(_0x4617d2){var _0x52ef52=typeof _0x244272['offset']===_0x4e71('0x1c')&&typeof _0x244272[_0x4e71('0x1d')]===_0x4e71('0x1c');var _0xef8e0d=_0x4617d2[_0x4e71('0x1e')];var _0x281a2b=_0x52ef52?0x0:_0x244272['offset'];var _0x18b745=_0x52ef52?_0x4617d2[_0x4e71('0x1e')]:_0x244272['offset']+_0x244272[_0x4e71('0x1d')];var _0x20b3ef;if(_0x18b745>=_0xef8e0d){_0x18b745=_0xef8e0d;_0x20b3ef=0xc8;}else{_0x20b3ef=0xce;}_0x5afe50['status'](_0x20b3ef);return _0x5afe50['set']('Content-Range',_0x281a2b+'-'+_0x18b745+'/'+_0xef8e0d)[_0x4e71('0x1f')](_0x4617d2);}return null;};}function patchUpdates(_0x1708fe){return function(_0x476b59){try{jsonpatch[_0x4e71('0x20')](_0x476b59,_0x1708fe,!![]);}catch(_0x44a6e5){return BPromise[_0x4e71('0x21')](_0x44a6e5);}return _0x476b59[_0x4e71('0x22')]();};}function saveUpdates(_0x2c22f0,_0x3bd6fc){return function(_0x335956){if(_0x335956){return _0x335956[_0x4e71('0x23')](_0x2c22f0)[_0x4e71('0x24')](function(_0x5e90f0){return _0x5e90f0;});}return null;};}function removeEntity(_0x5aa6b8,_0x56dd25){return function(_0x5b6584){if(_0x5b6584){return _0x5b6584[_0x4e71('0x25')]()[_0x4e71('0x24')](function(){_0x5aa6b8[_0x4e71('0x1a')](0xcc)['end']();});}};}function handleEntityNotFound(_0x35f181,_0x237057){return function(_0x564afb){if(!_0x564afb){_0x35f181[_0x4e71('0x26')](0x194);}return _0x564afb;};}function handleError(_0x40bb91,_0x2c9abf){_0x2c9abf=_0x2c9abf||0x1f4;return function(_0x53b08a){logger['error'](_0x53b08a[_0x4e71('0x27')]);if(_0x53b08a[_0x4e71('0x28')]){delete _0x53b08a[_0x4e71('0x28')];}_0x40bb91[_0x4e71('0x1a')](_0x2c9abf)[_0x4e71('0x29')](_0x53b08a);};}var utilLicense=require(_0x4e71('0x18'));exports['index']=function(_0x5ac921,_0x51e9ea){var _0x2a7ce3={'raw':!![],'where':{'id':0x1}},_0xe33409={};_0xe33409['model']=_[_0x4e71('0x2a')](db['License'][_0x4e71('0x2b')]);_0xe33409[_0x4e71('0x2c')]=_[_0x4e71('0x2a')](_0x5ac921[_0x4e71('0x2c')]);_0xe33409[_0x4e71('0x2d')]=_['intersection'](_0xe33409[_0x4e71('0x2e')],_0xe33409['query']);_0x2a7ce3[_0x4e71('0x2f')]=_[_0x4e71('0x30')](_0xe33409[_0x4e71('0x2e')],qs[_0x4e71('0x31')](_0x5ac921[_0x4e71('0x2c')]['fields']));_0x2a7ce3['attributes']=_0x2a7ce3['attributes'][_0x4e71('0x32')]?_0x2a7ce3[_0x4e71('0x2f')]:_0xe33409['model'];_0x2a7ce3=_[_0x4e71('0x33')]({},_0x2a7ce3,_0x5ac921[_0x4e71('0x34')]);return utilLicense['getLicense'](_0x2a7ce3)['then'](respondWithResult(_0x51e9ea,null))[_0x4e71('0x35')](handleError(_0x51e9ea,null));};exports[_0x4e71('0x23')]=function(_0x50ee01,_0x1fe7f3){if(_0x50ee01[_0x4e71('0x36')]['id']){delete _0x50ee01['body']['id'];}return db[_0x4e71('0x37')][_0x4e71('0x38')]({'where':{'id':_0x50ee01[_0x4e71('0x39')]['id']}})['then'](handleEntityNotFound(_0x1fe7f3,null))[_0x4e71('0x24')](function(_0x2f0ffd){var _0x9cb8e6=_0x2f0ffd[_0x4e71('0x3a')]({'plain':!![]});return utilLicense[_0x4e71('0x3b')](_0x9cb8e6,_0x50ee01['body'][_0x4e71('0x3c')]);})[_0x4e71('0x24')](function(_0xf946c3){if(!_0xf946c3[_0x4e71('0x3d')]){return saveUpdates(_0x50ee01[_0x4e71('0x36')],null);}return _0xf946c3;})['then'](respondWithResult(_0x1fe7f3,null))['catch'](handleError(_0x1fe7f3,null));};