Built motion from commit (unavailable).|2.5.20
[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 _0x50e5=['eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','crypto','jsforce','querystring','papaparse','../../components/auth/service','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','end','status','limit','Content-Range','json','apply','reject','save','update','destroy','then','error','stack','name','send','body','find','params','catch','Action','html-pdf'];(function(_0x39c734,_0x2f3e06){var _0xb2a2f9=function(_0x502f3f){while(--_0x502f3f){_0x39c734['push'](_0x39c734['shift']());}};_0xb2a2f9(++_0x2f3e06);}(_0x50e5,0xb7));var _0x550e=function(_0x10a047,_0x57e8ee){_0x10a047=_0x10a047-0x0;var _0x3754b8=_0x50e5[_0x10a047];return _0x3754b8;};'use strict';var pdf=require(_0x550e('0x0'));var emlformat=require(_0x550e('0x1'));var rimraf=require('rimraf');var zipdir=require(_0x550e('0x2'));var jsonpatch=require(_0x550e('0x3'));var rp=require(_0x550e('0x4'));var moment=require(_0x550e('0x5'));var BPromise=require(_0x550e('0x6'));var Mustache=require(_0x550e('0x7'));var util=require(_0x550e('0x8'));var path=require(_0x550e('0x9'));var sox=require(_0x550e('0xa'));var csv=require(_0x550e('0xb'));var ejs=require(_0x550e('0xc'));var fs=require('fs');var _=require(_0x550e('0xd'));var squel=require('squel');var crypto=require(_0x550e('0xe'));var jsforce=require(_0x550e('0xf'));var deskjs=require('desk.js');var toCsv=require(_0x550e('0xb'));var querystring=require(_0x550e('0x10'));var Papa=require(_0x550e('0x11'));var Redis=require('ioredis');var authService=require(_0x550e('0x12'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x550e('0x13'));var logger=require(_0x550e('0x14'))('api');var utils=require(_0x550e('0x15'));var config=require(_0x550e('0x16'));var licenseUtil=require(_0x550e('0x17'));var db=require(_0x550e('0x18'))['db'];function respondWithStatusCode(_0x518cad,_0x335cba){_0x335cba=_0x335cba||0xcc;return function(_0x57214a){if(_0x57214a){return _0x518cad[_0x550e('0x19')](_0x335cba);}return _0x518cad['status'](_0x335cba)[_0x550e('0x1a')]();};}function respondWithResult(_0x4c6070,_0x393055){_0x393055=_0x393055||0xc8;return function(_0x2d4b79){if(_0x2d4b79){return _0x4c6070[_0x550e('0x1b')](_0x393055)['json'](_0x2d4b79);}};}function respondWithFilteredResult(_0x302be0,_0x49787c){return function(_0xf28ba7){if(_0xf28ba7){var _0x49474f=_0xf28ba7['count'],_0x4a5f7a=_0x49787c['offset'],_0x31f4bf=_0x49787c['offset']+_0x49787c[_0x550e('0x1c')],_0xabb30d;if(_0x31f4bf>=_0x49474f){_0x31f4bf=_0x49474f;_0xabb30d=0xc8;}else{_0xabb30d=0xce;}_0x302be0['status'](_0xabb30d);return _0x302be0['set'](_0x550e('0x1d'),_0x4a5f7a+'-'+_0x31f4bf+'/'+_0x49474f)[_0x550e('0x1e')](_0xf28ba7);}return null;};}function patchUpdates(_0x6c7178){return function(_0x846ad){try{jsonpatch[_0x550e('0x1f')](_0x846ad,_0x6c7178,!![]);}catch(_0x29f2db){return BPromise[_0x550e('0x20')](_0x29f2db);}return _0x846ad[_0x550e('0x21')]();};}function saveUpdates(_0x1b9799,_0x47e6e1){return function(_0x23adb1){if(_0x23adb1){return _0x23adb1[_0x550e('0x22')](_0x1b9799)['then'](function(_0x4f70bd){return _0x4f70bd;});}return null;};}function removeEntity(_0x3e9822,_0x2663c7){return function(_0x5769bb){if(_0x5769bb){return _0x5769bb[_0x550e('0x23')]()[_0x550e('0x24')](function(){_0x3e9822[_0x550e('0x1b')](0xcc)[_0x550e('0x1a')]();});}};}function handleEntityNotFound(_0x3aa1b8,_0x3bbca3){return function(_0x56f6a2){if(!_0x56f6a2){_0x3aa1b8[_0x550e('0x19')](0x194);}return _0x56f6a2;};}function handleError(_0x205e3a,_0x45d972){_0x45d972=_0x45d972||0x1f4;return function(_0x2d10f3){logger[_0x550e('0x25')](_0x2d10f3[_0x550e('0x26')]);if(_0x2d10f3[_0x550e('0x27')]){delete _0x2d10f3[_0x550e('0x27')];}_0x205e3a[_0x550e('0x1b')](_0x45d972)[_0x550e('0x28')](_0x2d10f3);};}exports[_0x550e('0x22')]=function(_0x362d21,_0x5e0434){if(_0x362d21[_0x550e('0x29')]['id']){delete _0x362d21[_0x550e('0x29')]['id'];}return db['Action'][_0x550e('0x2a')]({'where':{'id':_0x362d21[_0x550e('0x2b')]['id']}})[_0x550e('0x24')](handleEntityNotFound(_0x5e0434,null))[_0x550e('0x24')](saveUpdates(_0x362d21[_0x550e('0x29')],null))[_0x550e('0x24')](respondWithResult(_0x5e0434,null))[_0x550e('0x2c')](handleError(_0x5e0434,null));};exports[_0x550e('0x23')]=function(_0x209f30,_0x43f7b2){return db[_0x550e('0x2d')][_0x550e('0x2a')]({'where':{'id':_0x209f30[_0x550e('0x2b')]['id']}})[_0x550e('0x24')](handleEntityNotFound(_0x43f7b2,null))['then'](removeEntity(_0x43f7b2,null))[_0x550e('0x2c')](handleError(_0x43f7b2,null));};