Built motion from commit (unavailable).|2.5.1
[motion2.git] / server / api / action / action.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 _0xba18=['end','count','offset','set','Content-Range','apply','reject','save','update','then','destroy','sendStatus','stack','name','send','body','Action','find','params','catch','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','ejs','lodash','crypto','jsforce','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','status'];(function(_0x498334,_0x27b6fe){var _0x13bb70=function(_0x4087b1){while(--_0x4087b1){_0x498334['push'](_0x498334['shift']());}};_0x13bb70(++_0x27b6fe);}(_0xba18,0x1ea));var _0x8ba1=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0xba18[_0x3dd15e];return _0x231fd0;};'use strict';var pdf=require(_0x8ba1('0x0'));var emlformat=require(_0x8ba1('0x1'));var rimraf=require(_0x8ba1('0x2'));var zipdir=require(_0x8ba1('0x3'));var jsonpatch=require(_0x8ba1('0x4'));var rp=require(_0x8ba1('0x5'));var moment=require(_0x8ba1('0x6'));var BPromise=require(_0x8ba1('0x7'));var Mustache=require('mustache');var util=require(_0x8ba1('0x8'));var path=require(_0x8ba1('0x9'));var sox=require(_0x8ba1('0xa'));var csv=require(_0x8ba1('0xb'));var ejs=require(_0x8ba1('0xc'));var fs=require('fs');var _=require(_0x8ba1('0xd'));var squel=require('squel');var crypto=require(_0x8ba1('0xe'));var jsforce=require(_0x8ba1('0xf'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0x8ba1('0x10'));var Redis=require(_0x8ba1('0x11'));var authService=require('../../components/auth/service');var qs=require(_0x8ba1('0x12'));var as=require(_0x8ba1('0x13'));var hardwareService=require(_0x8ba1('0x14'));var logger=require(_0x8ba1('0x15'))(_0x8ba1('0x16'));var utils=require('../../config/utils');var config=require(_0x8ba1('0x17'));var licenseUtil=require(_0x8ba1('0x18'));var db=require(_0x8ba1('0x19'))['db'];function respondWithStatusCode(_0x1fcfd7,_0x29adbb){_0x29adbb=_0x29adbb||0xcc;return function(_0x229748){if(_0x229748){return _0x1fcfd7['sendStatus'](_0x29adbb);}return _0x1fcfd7[_0x8ba1('0x1a')](_0x29adbb)[_0x8ba1('0x1b')]();};}function respondWithResult(_0x2e81d1,_0xca53c4){_0xca53c4=_0xca53c4||0xc8;return function(_0x4c8d5c){if(_0x4c8d5c){return _0x2e81d1['status'](_0xca53c4)['json'](_0x4c8d5c);}};}function respondWithFilteredResult(_0x3058ac,_0x398f40){return function(_0x5a3a8a){if(_0x5a3a8a){var _0x1b885b=_0x5a3a8a[_0x8ba1('0x1c')],_0xc72b8d=_0x398f40[_0x8ba1('0x1d')],_0x3880aa=_0x398f40[_0x8ba1('0x1d')]+_0x398f40['limit'],_0x107846;if(_0x3880aa>=_0x1b885b){_0x3880aa=_0x1b885b;_0x107846=0xc8;}else{_0x107846=0xce;}_0x3058ac['status'](_0x107846);return _0x3058ac[_0x8ba1('0x1e')](_0x8ba1('0x1f'),_0xc72b8d+'-'+_0x3880aa+'/'+_0x1b885b)['json'](_0x5a3a8a);}return null;};}function patchUpdates(_0xd8bda0){return function(_0x2e5fba){try{jsonpatch[_0x8ba1('0x20')](_0x2e5fba,_0xd8bda0,!![]);}catch(_0x3355c8){return BPromise[_0x8ba1('0x21')](_0x3355c8);}return _0x2e5fba[_0x8ba1('0x22')]();};}function saveUpdates(_0x5ddcf8,_0x489662){return function(_0x5b09f7){if(_0x5b09f7){return _0x5b09f7[_0x8ba1('0x23')](_0x5ddcf8)[_0x8ba1('0x24')](function(_0x121cc4){return _0x121cc4;});}return null;};}function removeEntity(_0x3dd1d8,_0x4e66e1){return function(_0x1d619c){if(_0x1d619c){return _0x1d619c[_0x8ba1('0x25')]()[_0x8ba1('0x24')](function(){_0x3dd1d8[_0x8ba1('0x1a')](0xcc)[_0x8ba1('0x1b')]();});}};}function handleEntityNotFound(_0x3b70ea,_0x845108){return function(_0x1c51ef){if(!_0x1c51ef){_0x3b70ea[_0x8ba1('0x26')](0x194);}return _0x1c51ef;};}function handleError(_0x31a38c,_0x3b205c){_0x3b205c=_0x3b205c||0x1f4;return function(_0x550d33){logger['error'](_0x550d33[_0x8ba1('0x27')]);if(_0x550d33[_0x8ba1('0x28')]){delete _0x550d33['name'];}_0x31a38c[_0x8ba1('0x1a')](_0x3b205c)[_0x8ba1('0x29')](_0x550d33);};}exports[_0x8ba1('0x23')]=function(_0x326460,_0x15e419){if(_0x326460[_0x8ba1('0x2a')]['id']){delete _0x326460[_0x8ba1('0x2a')]['id'];}return db[_0x8ba1('0x2b')][_0x8ba1('0x2c')]({'where':{'id':_0x326460[_0x8ba1('0x2d')]['id']}})[_0x8ba1('0x24')](handleEntityNotFound(_0x15e419,null))[_0x8ba1('0x24')](saveUpdates(_0x326460[_0x8ba1('0x2a')],null))[_0x8ba1('0x24')](respondWithResult(_0x15e419,null))['catch'](handleError(_0x15e419,null));};exports[_0x8ba1('0x25')]=function(_0x353678,_0x22059f){return db[_0x8ba1('0x2b')][_0x8ba1('0x2c')]({'where':{'id':_0x353678[_0x8ba1('0x2d')]['id']}})['then'](handleEntityNotFound(_0x22059f,null))[_0x8ba1('0x24')](removeEntity(_0x22059f,null))[_0x8ba1('0x2e')](handleError(_0x22059f,null));};