648589709232538c52311039ceaed13bfbf8b029
[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 _0x7919=['html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','sox','to-csv','ejs','lodash','squel','jsforce','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','status','json','count','offset','limit','set','Content-Range','apply','reject','save','update','then','destroy','end','sendStatus','error','name','send','body','Action','find','params','catch'];(function(_0x4b2436,_0x452299){var _0x4f5ab2=function(_0x5c6679){while(--_0x5c6679){_0x4b2436['push'](_0x4b2436['shift']());}};_0x4f5ab2(++_0x452299);}(_0x7919,0xeb));var _0x9791=function(_0x13c377,_0x498416){_0x13c377=_0x13c377-0x0;var _0x36f033=_0x7919[_0x13c377];return _0x36f033;};'use strict';var pdf=require(_0x9791('0x0'));var emlformat=require(_0x9791('0x1'));var rimraf=require(_0x9791('0x2'));var zipdir=require(_0x9791('0x3'));var jsonpatch=require(_0x9791('0x4'));var rp=require(_0x9791('0x5'));var moment=require(_0x9791('0x6'));var BPromise=require('bluebird');var Mustache=require(_0x9791('0x7'));var util=require(_0x9791('0x8'));var path=require('path');var sox=require(_0x9791('0x9'));var csv=require(_0x9791('0xa'));var ejs=require(_0x9791('0xb'));var fs=require('fs');var _=require(_0x9791('0xc'));var squel=require(_0x9791('0xd'));var crypto=require('crypto');var jsforce=require(_0x9791('0xe'));var deskjs=require('desk.js');var toCsv=require(_0x9791('0xa'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x9791('0xf'));var authService=require('../../components/auth/service');var qs=require(_0x9791('0x10'));var as=require(_0x9791('0x11'));var hardwareService=require(_0x9791('0x12'));var logger=require(_0x9791('0x13'))(_0x9791('0x14'));var utils=require(_0x9791('0x15'));var config=require(_0x9791('0x16'));var licenseUtil=require('../../config/license/util');var db=require(_0x9791('0x17'))['db'];function respondWithStatusCode(_0x54b75d,_0xa2d583){_0xa2d583=_0xa2d583||0xcc;return function(_0x3dc66b){if(_0x3dc66b){return _0x54b75d['sendStatus'](_0xa2d583);}return _0x54b75d[_0x9791('0x18')](_0xa2d583)['end']();};}function respondWithResult(_0x197e83,_0x4602fc){_0x4602fc=_0x4602fc||0xc8;return function(_0x1e05a2){if(_0x1e05a2){return _0x197e83[_0x9791('0x18')](_0x4602fc)[_0x9791('0x19')](_0x1e05a2);}};}function respondWithFilteredResult(_0x1672d9,_0x2bd7a6){return function(_0x3e1eca){if(_0x3e1eca){var _0x1b3626=_0x3e1eca[_0x9791('0x1a')],_0x263bf4=_0x2bd7a6['offset'],_0x43a07e=_0x2bd7a6[_0x9791('0x1b')]+_0x2bd7a6[_0x9791('0x1c')],_0xfc61ae;if(_0x43a07e>=_0x1b3626){_0x43a07e=_0x1b3626;_0xfc61ae=0xc8;}else{_0xfc61ae=0xce;}_0x1672d9[_0x9791('0x18')](_0xfc61ae);return _0x1672d9[_0x9791('0x1d')](_0x9791('0x1e'),_0x263bf4+'-'+_0x43a07e+'/'+_0x1b3626)['json'](_0x3e1eca);}return null;};}function patchUpdates(_0x1fb74f){return function(_0x6d90c9){try{jsonpatch[_0x9791('0x1f')](_0x6d90c9,_0x1fb74f,!![]);}catch(_0x2cfaa2){return BPromise[_0x9791('0x20')](_0x2cfaa2);}return _0x6d90c9[_0x9791('0x21')]();};}function saveUpdates(_0x36e5f7,_0x377ec9){return function(_0x1311b7){if(_0x1311b7){return _0x1311b7[_0x9791('0x22')](_0x36e5f7)[_0x9791('0x23')](function(_0x4a7254){return _0x4a7254;});}return null;};}function removeEntity(_0x2d29f8,_0x4ec262){return function(_0x4fe98f){if(_0x4fe98f){return _0x4fe98f[_0x9791('0x24')]()[_0x9791('0x23')](function(){_0x2d29f8['status'](0xcc)[_0x9791('0x25')]();});}};}function handleEntityNotFound(_0x72e127,_0x7f08c8){return function(_0x4ac5b5){if(!_0x4ac5b5){_0x72e127[_0x9791('0x26')](0x194);}return _0x4ac5b5;};}function handleError(_0x1e1834,_0xfa2901){_0xfa2901=_0xfa2901||0x1f4;return function(_0x4c3c00){logger[_0x9791('0x27')](_0x4c3c00['stack']);if(_0x4c3c00[_0x9791('0x28')]){delete _0x4c3c00[_0x9791('0x28')];}_0x1e1834['status'](_0xfa2901)[_0x9791('0x29')](_0x4c3c00);};}exports['update']=function(_0x2174d9,_0x545b9b){if(_0x2174d9[_0x9791('0x2a')]['id']){delete _0x2174d9[_0x9791('0x2a')]['id'];}return db['Action']['find']({'where':{'id':_0x2174d9['params']['id']}})[_0x9791('0x23')](handleEntityNotFound(_0x545b9b,null))[_0x9791('0x23')](saveUpdates(_0x2174d9[_0x9791('0x2a')],null))[_0x9791('0x23')](respondWithResult(_0x545b9b,null))['catch'](handleError(_0x545b9b,null));};exports[_0x9791('0x24')]=function(_0x2d85bd,_0x52e9fd){return db[_0x9791('0x2b')][_0x9791('0x2c')]({'where':{'id':_0x2d85bd[_0x9791('0x2d')]['id']}})[_0x9791('0x23')](handleEntityNotFound(_0x52e9fd,null))[_0x9791('0x23')](removeEntity(_0x52e9fd,null))[_0x9791('0x2e')](handleError(_0x52e9fd,null));};