e0b361ffc19b19b87bc84ef5feac6e1645cb9763
[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 _0x4ce6=['../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','end','status','json','offset','limit','set','Content-Range','apply','save','update','then','sendStatus','error','stack','name','body','Action','params','catch','destroy','find','html-pdf','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','to-csv','ejs','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service'];(function(_0x4a935e,_0x1add26){var _0x58a3fe=function(_0xf134ca){while(--_0xf134ca){_0x4a935e['push'](_0x4a935e['shift']());}};_0x58a3fe(++_0x1add26);}(_0x4ce6,0x108));var _0x64ce=function(_0x54ea7a,_0x19df9b){_0x54ea7a=_0x54ea7a-0x0;var _0x65a10d=_0x4ce6[_0x54ea7a];return _0x65a10d;};'use strict';var pdf=require(_0x64ce('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x64ce('0x1'));var zipdir=require(_0x64ce('0x2'));var jsonpatch=require(_0x64ce('0x3'));var rp=require(_0x64ce('0x4'));var moment=require(_0x64ce('0x5'));var BPromise=require(_0x64ce('0x6'));var Mustache=require('mustache');var util=require(_0x64ce('0x7'));var path=require('path');var sox=require('sox');var csv=require(_0x64ce('0x8'));var ejs=require(_0x64ce('0x9'));var fs=require('fs');var _=require('lodash');var squel=require(_0x64ce('0xa'));var crypto=require(_0x64ce('0xb'));var jsforce=require(_0x64ce('0xc'));var deskjs=require(_0x64ce('0xd'));var toCsv=require(_0x64ce('0x8'));var querystring=require(_0x64ce('0xe'));var Papa=require(_0x64ce('0xf'));var Redis=require(_0x64ce('0x10'));var authService=require(_0x64ce('0x11'));var qs=require(_0x64ce('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x64ce('0x13'));var logger=require(_0x64ce('0x14'))(_0x64ce('0x15'));var utils=require(_0x64ce('0x16'));var config=require(_0x64ce('0x17'));var licenseUtil=require(_0x64ce('0x18'));var db=require(_0x64ce('0x19'))['db'];function respondWithStatusCode(_0x321f24,_0x4dbb9e){_0x4dbb9e=_0x4dbb9e||0xcc;return function(_0x17be05){if(_0x17be05){return _0x321f24['sendStatus'](_0x4dbb9e);}return _0x321f24['status'](_0x4dbb9e)[_0x64ce('0x1a')]();};}function respondWithResult(_0x498d55,_0xedcfa5){_0xedcfa5=_0xedcfa5||0xc8;return function(_0x22e852){if(_0x22e852){return _0x498d55[_0x64ce('0x1b')](_0xedcfa5)[_0x64ce('0x1c')](_0x22e852);}};}function respondWithFilteredResult(_0x3579a3,_0x235a82){return function(_0x476a31){if(_0x476a31){var _0x42df9a=_0x476a31['count'],_0xe05673=_0x235a82[_0x64ce('0x1d')],_0x4e73c3=_0x235a82[_0x64ce('0x1d')]+_0x235a82[_0x64ce('0x1e')],_0x4b49be;if(_0x4e73c3>=_0x42df9a){_0x4e73c3=_0x42df9a;_0x4b49be=0xc8;}else{_0x4b49be=0xce;}_0x3579a3[_0x64ce('0x1b')](_0x4b49be);return _0x3579a3[_0x64ce('0x1f')](_0x64ce('0x20'),_0xe05673+'-'+_0x4e73c3+'/'+_0x42df9a)[_0x64ce('0x1c')](_0x476a31);}return null;};}function patchUpdates(_0xa0951c){return function(_0xafcce4){try{jsonpatch[_0x64ce('0x21')](_0xafcce4,_0xa0951c,!![]);}catch(_0x509752){return BPromise['reject'](_0x509752);}return _0xafcce4[_0x64ce('0x22')]();};}function saveUpdates(_0x17a36b,_0x4f8dc2){return function(_0x18219f){if(_0x18219f){return _0x18219f[_0x64ce('0x23')](_0x17a36b)[_0x64ce('0x24')](function(_0x129120){return _0x129120;});}return null;};}function removeEntity(_0x2b5f89,_0x1aa495){return function(_0x34a7f7){if(_0x34a7f7){return _0x34a7f7['destroy']()[_0x64ce('0x24')](function(){_0x2b5f89[_0x64ce('0x1b')](0xcc)['end']();});}};}function handleEntityNotFound(_0x1aec1f,_0x9729cf){return function(_0x497cad){if(!_0x497cad){_0x1aec1f[_0x64ce('0x25')](0x194);}return _0x497cad;};}function handleError(_0x37ef9e,_0x3198ad){_0x3198ad=_0x3198ad||0x1f4;return function(_0x33feb3){logger[_0x64ce('0x26')](_0x33feb3[_0x64ce('0x27')]);if(_0x33feb3['name']){delete _0x33feb3[_0x64ce('0x28')];}_0x37ef9e[_0x64ce('0x1b')](_0x3198ad)['send'](_0x33feb3);};}exports[_0x64ce('0x23')]=function(_0x2b47fe,_0x47b14c){if(_0x2b47fe[_0x64ce('0x29')]['id']){delete _0x2b47fe[_0x64ce('0x29')]['id'];}return db[_0x64ce('0x2a')]['find']({'where':{'id':_0x2b47fe[_0x64ce('0x2b')]['id']}})[_0x64ce('0x24')](handleEntityNotFound(_0x47b14c,null))[_0x64ce('0x24')](saveUpdates(_0x2b47fe[_0x64ce('0x29')],null))[_0x64ce('0x24')](respondWithResult(_0x47b14c,null))[_0x64ce('0x2c')](handleError(_0x47b14c,null));};exports[_0x64ce('0x2d')]=function(_0x16f7f4,_0x3f6b52){return db[_0x64ce('0x2a')][_0x64ce('0x2e')]({'where':{'id':_0x16f7f4[_0x64ce('0x2b')]['id']}})['then'](handleEntityNotFound(_0x3f6b52,null))[_0x64ce('0x24')](removeEntity(_0x3f6b52,null))['catch'](handleError(_0x3f6b52,null));};