Built motion from commit (unavailable).|2.5.29
[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 _0x2168=['destroy','end','error','stack','name','send','body','Action','find','catch','params','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','util','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','offset','limit','undefined','count','set','Content-Range','reject','save','update','then'];(function(_0x5bca5d,_0x3a2225){var _0x578294=function(_0x32b2a1){while(--_0x32b2a1){_0x5bca5d['push'](_0x5bca5d['shift']());}};_0x578294(++_0x3a2225);}(_0x2168,0x9b));var _0x8216=function(_0x310de1,_0x4183e8){_0x310de1=_0x310de1-0x0;var _0x213cf7=_0x2168[_0x310de1];return _0x213cf7;};'use strict';var emlformat=require(_0x8216('0x0'));var rimraf=require(_0x8216('0x1'));var zipdir=require(_0x8216('0x2'));var jsonpatch=require(_0x8216('0x3'));var rp=require(_0x8216('0x4'));var moment=require(_0x8216('0x5'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x8216('0x6'));var path=require('path');var sox=require('sox');var csv=require(_0x8216('0x7'));var ejs=require(_0x8216('0x8'));var fs=require('fs');var fs_extra=require(_0x8216('0x9'));var _=require(_0x8216('0xa'));var squel=require(_0x8216('0xb'));var crypto=require(_0x8216('0xc'));var jsforce=require(_0x8216('0xd'));var deskjs=require('desk.js');var toCsv=require(_0x8216('0x7'));var querystring=require(_0x8216('0xe'));var Papa=require(_0x8216('0xf'));var Redis=require('ioredis');var authService=require(_0x8216('0x10'));var qs=require(_0x8216('0x11'));var as=require(_0x8216('0x12'));var hardwareService=require(_0x8216('0x13'));var logger=require(_0x8216('0x14'))(_0x8216('0x15'));var utils=require('../../config/utils');var config=require(_0x8216('0x16'));var licenseUtil=require(_0x8216('0x17'));var db=require(_0x8216('0x18'))['db'];function respondWithStatusCode(_0x37c64d,_0x4cb109){_0x4cb109=_0x4cb109||0xcc;return function(_0x1f819e){if(_0x1f819e){return _0x37c64d[_0x8216('0x19')](_0x4cb109);}return _0x37c64d[_0x8216('0x1a')](_0x4cb109)['end']();};}function respondWithResult(_0x364b35,_0x5983d7){_0x5983d7=_0x5983d7||0xc8;return function(_0x273fc6){if(_0x273fc6){return _0x364b35['status'](_0x5983d7)['json'](_0x273fc6);}};}function respondWithFilteredResult(_0x33be7c,_0x2c795c){return function(_0x4aaeb4){if(_0x4aaeb4){var _0x4a1872=typeof _0x2c795c[_0x8216('0x1b')]==='undefined'&&typeof _0x2c795c[_0x8216('0x1c')]===_0x8216('0x1d');var _0x295984=_0x4aaeb4[_0x8216('0x1e')];var _0x5a69da=_0x4a1872?0x0:_0x2c795c[_0x8216('0x1b')];var _0x3ab66b=_0x4a1872?_0x4aaeb4[_0x8216('0x1e')]:_0x2c795c[_0x8216('0x1b')]+_0x2c795c[_0x8216('0x1c')];var _0x12e609;if(_0x3ab66b>=_0x295984){_0x3ab66b=_0x295984;_0x12e609=0xc8;}else{_0x12e609=0xce;}_0x33be7c['status'](_0x12e609);return _0x33be7c[_0x8216('0x1f')](_0x8216('0x20'),_0x5a69da+'-'+_0x3ab66b+'/'+_0x295984)['json'](_0x4aaeb4);}return null;};}function patchUpdates(_0x223638){return function(_0xb145e3){try{jsonpatch['apply'](_0xb145e3,_0x223638,!![]);}catch(_0x41eb56){return BPromise[_0x8216('0x21')](_0x41eb56);}return _0xb145e3[_0x8216('0x22')]();};}function saveUpdates(_0xaf2154,_0x57242a){return function(_0x3229aa){if(_0x3229aa){return _0x3229aa[_0x8216('0x23')](_0xaf2154)[_0x8216('0x24')](function(_0x4fcf35){return _0x4fcf35;});}return null;};}function removeEntity(_0x105898,_0x24fb34){return function(_0x48bd62){if(_0x48bd62){return _0x48bd62[_0x8216('0x25')]()[_0x8216('0x24')](function(){_0x105898[_0x8216('0x1a')](0xcc)[_0x8216('0x26')]();});}};}function handleEntityNotFound(_0xad9d99,_0x39ada1){return function(_0x19e9ea){if(!_0x19e9ea){_0xad9d99[_0x8216('0x19')](0x194);}return _0x19e9ea;};}function handleError(_0x3a3f3e,_0x431513){_0x431513=_0x431513||0x1f4;return function(_0x4c8aec){logger[_0x8216('0x27')](_0x4c8aec[_0x8216('0x28')]);if(_0x4c8aec[_0x8216('0x29')]){delete _0x4c8aec[_0x8216('0x29')];}_0x3a3f3e[_0x8216('0x1a')](_0x431513)[_0x8216('0x2a')](_0x4c8aec);};}exports[_0x8216('0x23')]=function(_0x308b6c,_0x490aaa){if(_0x308b6c[_0x8216('0x2b')]['id']){delete _0x308b6c[_0x8216('0x2b')]['id'];}return db[_0x8216('0x2c')][_0x8216('0x2d')]({'where':{'id':_0x308b6c['params']['id']}})[_0x8216('0x24')](handleEntityNotFound(_0x490aaa,null))[_0x8216('0x24')](saveUpdates(_0x308b6c[_0x8216('0x2b')],null))[_0x8216('0x24')](respondWithResult(_0x490aaa,null))[_0x8216('0x2e')](handleError(_0x490aaa,null));};exports[_0x8216('0x25')]=function(_0x263a0b,_0x25a5f3){return db[_0x8216('0x2c')][_0x8216('0x2d')]({'where':{'id':_0x263a0b[_0x8216('0x2f')]['id']}})[_0x8216('0x24')](handleEntityNotFound(_0x25a5f3,null))['then'](removeEntity(_0x25a5f3,null))[_0x8216('0x2e')](handleError(_0x25a5f3,null));};