Built motion from commit (unavailable).|2.5.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 _0x6823=['crypto','jsforce','to-csv','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined','count','limit','set','Content-Range','apply','reject','update','then','error','stack','name','model','rawAttributes','query','keys','filters','intersection','attributes','fields','length','merge','options','getLicense','catch','body','License','find','params','checkLicense','key','demo','eml-format','rimraf','fast-json-patch','request-promise','bluebird','mustache','util','sox','ejs','fs-extra','lodash','squel'];(function(_0x5bf401,_0x2ee91e){var _0x30efed=function(_0x40d7b6){while(--_0x40d7b6){_0x5bf401['push'](_0x5bf401['shift']());}};_0x30efed(++_0x2ee91e);}(_0x6823,0x6e));var _0x3682=function(_0x37a900,_0x1d1158){_0x37a900=_0x37a900-0x0;var _0x202ff6=_0x6823[_0x37a900];return _0x202ff6;};'use strict';var emlformat=require(_0x3682('0x0'));var rimraf=require(_0x3682('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x3682('0x2'));var rp=require(_0x3682('0x3'));var moment=require('moment');var BPromise=require(_0x3682('0x4'));var Mustache=require(_0x3682('0x5'));var util=require(_0x3682('0x6'));var path=require('path');var sox=require(_0x3682('0x7'));var csv=require('to-csv');var ejs=require(_0x3682('0x8'));var fs=require('fs');var fs_extra=require(_0x3682('0x9'));var _=require(_0x3682('0xa'));var squel=require(_0x3682('0xb'));var crypto=require(_0x3682('0xc'));var jsforce=require(_0x3682('0xd'));var deskjs=require('desk.js');var toCsv=require(_0x3682('0xe'));var querystring=require('querystring');var Papa=require(_0x3682('0xf'));var Redis=require(_0x3682('0x10'));var authService=require(_0x3682('0x11'));var qs=require('../../components/parsers/qs');var as=require(_0x3682('0x12'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x3682('0x13'));var utils=require(_0x3682('0x14'));var config=require(_0x3682('0x15'));var licenseUtil=require(_0x3682('0x16'));var db=require(_0x3682('0x17'))['db'];function respondWithStatusCode(_0x1613d5,_0x6bd6b0){_0x6bd6b0=_0x6bd6b0||0xcc;return function(_0x34637a){if(_0x34637a){return _0x1613d5[_0x3682('0x18')](_0x6bd6b0);}return _0x1613d5[_0x3682('0x19')](_0x6bd6b0)[_0x3682('0x1a')]();};}function respondWithResult(_0x45e155,_0x1459eb){_0x1459eb=_0x1459eb||0xc8;return function(_0x3bd9ff){if(_0x3bd9ff){return _0x45e155['status'](_0x1459eb)[_0x3682('0x1b')](_0x3bd9ff);}};}function respondWithFilteredResult(_0x179051,_0x3f3684){return function(_0x225f68){if(_0x225f68){var _0x5a60cc=typeof _0x3f3684[_0x3682('0x1c')]===_0x3682('0x1d')&&typeof _0x3f3684['limit']===_0x3682('0x1d');var _0x35d509=_0x225f68[_0x3682('0x1e')];var _0x466468=_0x5a60cc?0x0:_0x3f3684[_0x3682('0x1c')];var _0x278bbe=_0x5a60cc?_0x225f68[_0x3682('0x1e')]:_0x3f3684[_0x3682('0x1c')]+_0x3f3684[_0x3682('0x1f')];var _0x117466;if(_0x278bbe>=_0x35d509){_0x278bbe=_0x35d509;_0x117466=0xc8;}else{_0x117466=0xce;}_0x179051[_0x3682('0x19')](_0x117466);return _0x179051[_0x3682('0x20')](_0x3682('0x21'),_0x466468+'-'+_0x278bbe+'/'+_0x35d509)['json'](_0x225f68);}return null;};}function patchUpdates(_0x1f566d){return function(_0x189e6d){try{jsonpatch[_0x3682('0x22')](_0x189e6d,_0x1f566d,!![]);}catch(_0x3d3bb7){return BPromise[_0x3682('0x23')](_0x3d3bb7);}return _0x189e6d['save']();};}function saveUpdates(_0x532e7c,_0x3e08fc){return function(_0x2a7802){if(_0x2a7802){return _0x2a7802[_0x3682('0x24')](_0x532e7c)['then'](function(_0x466380){return _0x466380;});}return null;};}function removeEntity(_0x500c02,_0x569f9a){return function(_0x122057){if(_0x122057){return _0x122057['destroy']()[_0x3682('0x25')](function(){_0x500c02['status'](0xcc)[_0x3682('0x1a')]();});}};}function handleEntityNotFound(_0x5dd874,_0x39631f){return function(_0x24b038){if(!_0x24b038){_0x5dd874[_0x3682('0x18')](0x194);}return _0x24b038;};}function handleError(_0x227d2c,_0x483fc7){_0x483fc7=_0x483fc7||0x1f4;return function(_0x52366e){logger[_0x3682('0x26')](_0x52366e[_0x3682('0x27')]);if(_0x52366e[_0x3682('0x28')]){delete _0x52366e[_0x3682('0x28')];}_0x227d2c[_0x3682('0x19')](_0x483fc7)['send'](_0x52366e);};}var utilLicense=require('../../config/license/util');exports['index']=function(_0x93c391,_0x5ba740){var _0x45bed2={'raw':!![],'where':{'id':0x1}},_0x6f9a1e={};_0x6f9a1e[_0x3682('0x29')]=_['keys'](db['License'][_0x3682('0x2a')]);_0x6f9a1e[_0x3682('0x2b')]=_[_0x3682('0x2c')](_0x93c391[_0x3682('0x2b')]);_0x6f9a1e[_0x3682('0x2d')]=_[_0x3682('0x2e')](_0x6f9a1e['model'],_0x6f9a1e[_0x3682('0x2b')]);_0x45bed2[_0x3682('0x2f')]=_[_0x3682('0x2e')](_0x6f9a1e[_0x3682('0x29')],qs[_0x3682('0x30')](_0x93c391[_0x3682('0x2b')][_0x3682('0x30')]));_0x45bed2[_0x3682('0x2f')]=_0x45bed2[_0x3682('0x2f')][_0x3682('0x31')]?_0x45bed2[_0x3682('0x2f')]:_0x6f9a1e[_0x3682('0x29')];_0x45bed2=_[_0x3682('0x32')]({},_0x45bed2,_0x93c391[_0x3682('0x33')]);return utilLicense[_0x3682('0x34')](_0x45bed2)[_0x3682('0x25')](respondWithResult(_0x5ba740,null))[_0x3682('0x35')](handleError(_0x5ba740,null));};exports[_0x3682('0x24')]=function(_0x2998c0,_0x2884ac){if(_0x2998c0[_0x3682('0x36')]['id']){delete _0x2998c0[_0x3682('0x36')]['id'];}return db[_0x3682('0x37')][_0x3682('0x38')]({'where':{'id':_0x2998c0[_0x3682('0x39')]['id']}})['then'](handleEntityNotFound(_0x2884ac,null))[_0x3682('0x25')](function(_0x1805fc){var _0x47a744=_0x1805fc['get']({'plain':!![]});return utilLicense[_0x3682('0x3a')](_0x47a744,_0x2998c0['body'][_0x3682('0x3b')]);})['then'](function(_0x26ccae){if(!_0x26ccae[_0x3682('0x3c')]){return saveUpdates(_0x2998c0[_0x3682('0x36')],null);}return _0x26ccae;})[_0x3682('0x25')](respondWithResult(_0x2884ac,null))[_0x3682('0x35')](handleError(_0x2884ac,null));};