8ae73598e99105090506be41a1cc50055ef944f2
[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 _0x7147=['desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../mysqldb','sendStatus','end','status','json','offset','limit','set','Content-Range','apply','reject','save','update','then','name','body','Action','find','params','catch','destroy','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','squel','crypto'];(function(_0xd3dfc8,_0xb458a2){var _0x3d636f=function(_0x1dc477){while(--_0x1dc477){_0xd3dfc8['push'](_0xd3dfc8['shift']());}};_0x3d636f(++_0xb458a2);}(_0x7147,0x162));var _0x7714=function(_0x39780c,_0x5782c9){_0x39780c=_0x39780c-0x0;var _0x53c19b=_0x7147[_0x39780c];return _0x53c19b;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x7714('0x0'));var rimraf=require(_0x7714('0x1'));var zipdir=require(_0x7714('0x2'));var jsonpatch=require(_0x7714('0x3'));var rp=require(_0x7714('0x4'));var moment=require(_0x7714('0x5'));var BPromise=require(_0x7714('0x6'));var Mustache=require(_0x7714('0x7'));var util=require(_0x7714('0x8'));var path=require(_0x7714('0x9'));var sox=require(_0x7714('0xa'));var csv=require(_0x7714('0xb'));var ejs=require('ejs');var fs=require('fs');var _=require('lodash');var squel=require(_0x7714('0xc'));var crypto=require(_0x7714('0xd'));var jsforce=require('jsforce');var deskjs=require(_0x7714('0xe'));var toCsv=require(_0x7714('0xb'));var querystring=require(_0x7714('0xf'));var Papa=require(_0x7714('0x10'));var Redis=require(_0x7714('0x11'));var authService=require(_0x7714('0x12'));var qs=require(_0x7714('0x13'));var as=require(_0x7714('0x14'));var hardwareService=require(_0x7714('0x15'));var logger=require(_0x7714('0x16'))(_0x7714('0x17'));var utils=require(_0x7714('0x18'));var config=require('../../config/environment');var db=require(_0x7714('0x19'))['db'];function respondWithStatusCode(_0x5d04b5,_0x1a4051){_0x1a4051=_0x1a4051||0xcc;return function(_0x46cbbf){if(_0x46cbbf){return _0x5d04b5[_0x7714('0x1a')](_0x1a4051);}return _0x5d04b5['status'](_0x1a4051)[_0x7714('0x1b')]();};}function respondWithResult(_0x4c38e0,_0x15ae50){_0x15ae50=_0x15ae50||0xc8;return function(_0x54066e){if(_0x54066e){return _0x4c38e0[_0x7714('0x1c')](_0x15ae50)[_0x7714('0x1d')](_0x54066e);}};}function respondWithFilteredResult(_0x2fd4d2,_0x5e9184){return function(_0x581942){if(_0x581942){var _0x22ae03=_0x581942['count'],_0x35a330=_0x5e9184[_0x7714('0x1e')],_0x1bef75=_0x5e9184[_0x7714('0x1e')]+_0x5e9184[_0x7714('0x1f')],_0xa60d9f;if(_0x1bef75>=_0x22ae03){_0x1bef75=_0x22ae03;_0xa60d9f=0xc8;}else{_0xa60d9f=0xce;}_0x2fd4d2[_0x7714('0x1c')](_0xa60d9f);return _0x2fd4d2[_0x7714('0x20')](_0x7714('0x21'),_0x35a330+'-'+_0x1bef75+'/'+_0x22ae03)['json'](_0x581942);}return null;};}function patchUpdates(_0x3bc37b){return function(_0xa6a699){try{jsonpatch[_0x7714('0x22')](_0xa6a699,_0x3bc37b,!![]);}catch(_0x216c1){return BPromise[_0x7714('0x23')](_0x216c1);}return _0xa6a699[_0x7714('0x24')]();};}function saveUpdates(_0x48bf22,_0x3d8b80){return function(_0x2c4a73){if(_0x2c4a73){return _0x2c4a73[_0x7714('0x25')](_0x48bf22)[_0x7714('0x26')](function(_0x1778a4){return _0x1778a4;});}return null;};}function removeEntity(_0x3f29ae,_0x4122bf){return function(_0x27b967){if(_0x27b967){return _0x27b967['destroy']()[_0x7714('0x26')](function(){_0x3f29ae[_0x7714('0x1c')](0xcc)[_0x7714('0x1b')]();});}};}function handleEntityNotFound(_0x2ab0c0,_0x5370b6){return function(_0x17a7b8){if(!_0x17a7b8){_0x2ab0c0[_0x7714('0x1a')](0x194);}return _0x17a7b8;};}function handleError(_0x3c73d0,_0x29b203){_0x29b203=_0x29b203||0x1f4;return function(_0x112147){logger['error'](_0x112147['stack']);if(_0x112147[_0x7714('0x27')]){delete _0x112147[_0x7714('0x27')];}_0x3c73d0[_0x7714('0x1c')](_0x29b203)['send'](_0x112147);};}exports[_0x7714('0x25')]=function(_0x48c7da,_0x5d7f85){if(_0x48c7da[_0x7714('0x28')]['id']){delete _0x48c7da[_0x7714('0x28')]['id'];}return db[_0x7714('0x29')][_0x7714('0x2a')]({'where':{'id':_0x48c7da[_0x7714('0x2b')]['id']}})['then'](handleEntityNotFound(_0x5d7f85,null))[_0x7714('0x26')](saveUpdates(_0x48c7da[_0x7714('0x28')],null))[_0x7714('0x26')](respondWithResult(_0x5d7f85,null))[_0x7714('0x2c')](handleError(_0x5d7f85,null));};exports[_0x7714('0x2d')]=function(_0x215acd,_0x4c05d6){return db[_0x7714('0x29')]['find']({'where':{'id':_0x215acd[_0x7714('0x2b')]['id']}})[_0x7714('0x26')](handleEntityNotFound(_0x4c05d6,null))[_0x7714('0x26')](removeEntity(_0x4c05d6,null))[_0x7714('0x2c')](handleError(_0x4c05d6,null));};