Built motion from commit 3d6333b4.|2.6.31
[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 _0x395d=['../../config/logger','../../config/license/util','../../mysqldb','status','end','undefined','limit','offset','count','Content-Range','json','apply','reject','save','destroy','then','sendStatus','error','stack','name','send','body','find','params','Action','catch','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','ejs','crypto','jsforce','desk.js','to-csv','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware'];(function(_0x2cd82d,_0x443ce7){var _0x3746d=function(_0x221f0c){while(--_0x221f0c){_0x2cd82d['push'](_0x2cd82d['shift']());}};_0x3746d(++_0x443ce7);}(_0x395d,0x18a));var _0xd395=function(_0x51dfc1,_0x23f176){_0x51dfc1=_0x51dfc1-0x0;var _0xf42a79=_0x395d[_0x51dfc1];return _0xf42a79;};'use strict';var emlformat=require(_0xd395('0x0'));var rimraf=require(_0xd395('0x1'));var zipdir=require(_0xd395('0x2'));var jsonpatch=require(_0xd395('0x3'));var rp=require(_0xd395('0x4'));var moment=require(_0xd395('0x5'));var BPromise=require(_0xd395('0x6'));var Mustache=require(_0xd395('0x7'));var util=require(_0xd395('0x8'));var path=require(_0xd395('0x9'));var sox=require(_0xd395('0xa'));var csv=require('to-csv');var ejs=require(_0xd395('0xb'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require('squel');var crypto=require(_0xd395('0xc'));var jsforce=require(_0xd395('0xd'));var deskjs=require(_0xd395('0xe'));var toCsv=require(_0xd395('0xf'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0xd395('0x10'));var authService=require(_0xd395('0x11'));var qs=require('../../components/parsers/qs');var as=require(_0xd395('0x12'));var hardwareService=require(_0xd395('0x13'));var logger=require(_0xd395('0x14'))('api');var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0xd395('0x15'));var db=require(_0xd395('0x16'))['db'];function respondWithStatusCode(_0x30bb2b,_0x4e7e71){_0x4e7e71=_0x4e7e71||0xcc;return function(_0x4cbc0d){if(_0x4cbc0d){return _0x30bb2b['sendStatus'](_0x4e7e71);}return _0x30bb2b[_0xd395('0x17')](_0x4e7e71)[_0xd395('0x18')]();};}function respondWithResult(_0x39dada,_0x455540){_0x455540=_0x455540||0xc8;return function(_0x319ca6){if(_0x319ca6){return _0x39dada[_0xd395('0x17')](_0x455540)['json'](_0x319ca6);}};}function respondWithFilteredResult(_0x5e0d86,_0x571191){return function(_0x3fbcbf){if(_0x3fbcbf){var _0x40b645=typeof _0x571191['offset']===_0xd395('0x19')&&typeof _0x571191[_0xd395('0x1a')]==='undefined';var _0x550cb2=_0x3fbcbf['count'];var _0x1f0f3c=_0x40b645?0x0:_0x571191[_0xd395('0x1b')];var _0x547333=_0x40b645?_0x3fbcbf[_0xd395('0x1c')]:_0x571191[_0xd395('0x1b')]+_0x571191[_0xd395('0x1a')];var _0x28588b;if(_0x547333>=_0x550cb2){_0x547333=_0x550cb2;_0x28588b=0xc8;}else{_0x28588b=0xce;}_0x5e0d86[_0xd395('0x17')](_0x28588b);return _0x5e0d86['set'](_0xd395('0x1d'),_0x1f0f3c+'-'+_0x547333+'/'+_0x550cb2)[_0xd395('0x1e')](_0x3fbcbf);}return null;};}function patchUpdates(_0x17725b){return function(_0xa5e17d){try{jsonpatch[_0xd395('0x1f')](_0xa5e17d,_0x17725b,!![]);}catch(_0x548fd3){return BPromise[_0xd395('0x20')](_0x548fd3);}return _0xa5e17d[_0xd395('0x21')]();};}function saveUpdates(_0x38ea81,_0x4f615c){return function(_0x4bfb33){if(_0x4bfb33){return _0x4bfb33['update'](_0x38ea81)['then'](function(_0x34712c){return _0x34712c;});}return null;};}function removeEntity(_0x39f90d,_0x571df6){return function(_0x273efd){if(_0x273efd){return _0x273efd[_0xd395('0x22')]()[_0xd395('0x23')](function(){_0x39f90d['status'](0xcc)[_0xd395('0x18')]();});}};}function handleEntityNotFound(_0x245ab8,_0xdf0f82){return function(_0xa4fb6){if(!_0xa4fb6){_0x245ab8[_0xd395('0x24')](0x194);}return _0xa4fb6;};}function handleError(_0x13a3ee,_0x4e8168){_0x4e8168=_0x4e8168||0x1f4;return function(_0x3dc979){logger[_0xd395('0x25')](_0x3dc979[_0xd395('0x26')]);if(_0x3dc979[_0xd395('0x27')]){delete _0x3dc979[_0xd395('0x27')];}_0x13a3ee['status'](_0x4e8168)[_0xd395('0x28')](_0x3dc979);};}exports['update']=function(_0x1c3e39,_0x2eab92){if(_0x1c3e39[_0xd395('0x29')]['id']){delete _0x1c3e39[_0xd395('0x29')]['id'];}return db['Action'][_0xd395('0x2a')]({'where':{'id':_0x1c3e39[_0xd395('0x2b')]['id']}})[_0xd395('0x23')](handleEntityNotFound(_0x2eab92,null))[_0xd395('0x23')](saveUpdates(_0x1c3e39[_0xd395('0x29')],null))[_0xd395('0x23')](respondWithResult(_0x2eab92,null))['catch'](handleError(_0x2eab92,null));};exports[_0xd395('0x22')]=function(_0x1fa34b,_0x2bdb3c){return db[_0xd395('0x2c')][_0xd395('0x2a')]({'where':{'id':_0x1fa34b[_0xd395('0x2b')]['id']}})[_0xd395('0x23')](handleEntityNotFound(_0x2bdb3c,null))[_0xd395('0x23')](removeEntity(_0x2bdb3c,null))[_0xd395('0x2d')](handleError(_0x2bdb3c,null));};