9c40c80bfe0284ecbb85cf618b9569da4ee35963
[motion2.git] / server / api / chatProactiveAction / chatProactiveAction.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 _0x79d3=['moment','mustache','util','path','sox','to-csv','ejs','fs-extra','squel','jsforce','desk.js','papaparse','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','undefined','count','offset','limit','Content-Range','json','apply','reject','save','update','then','destroy','error','stack','name','send','params','model','ChatProactiveAction','rawAttributes','keys','query','filters','intersection','attributes','fields','length','includeAll','include','options','find','catch','create','body','eml-format','zip-dir','request-promise'];(function(_0x3205ca,_0x52b561){var _0x2c5640=function(_0x1eb875){while(--_0x1eb875){_0x3205ca['push'](_0x3205ca['shift']());}};_0x2c5640(++_0x52b561);}(_0x79d3,0x15f));var _0x379d=function(_0x30f68d,_0x12cb44){_0x30f68d=_0x30f68d-0x0;var _0x4ac6bf=_0x79d3[_0x30f68d];return _0x4ac6bf;};'use strict';var emlformat=require(_0x379d('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x379d('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0x379d('0x2'));var moment=require(_0x379d('0x3'));var BPromise=require('bluebird');var Mustache=require(_0x379d('0x4'));var util=require(_0x379d('0x5'));var path=require(_0x379d('0x6'));var sox=require(_0x379d('0x7'));var csv=require(_0x379d('0x8'));var ejs=require(_0x379d('0x9'));var fs=require('fs');var fs_extra=require(_0x379d('0xa'));var _=require('lodash');var squel=require(_0x379d('0xb'));var crypto=require('crypto');var jsforce=require(_0x379d('0xc'));var deskjs=require(_0x379d('0xd'));var toCsv=require(_0x379d('0x8'));var querystring=require('querystring');var Papa=require(_0x379d('0xe'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0x379d('0xf'));var hardwareService=require(_0x379d('0x10'));var logger=require(_0x379d('0x11'))('api');var utils=require(_0x379d('0x12'));var config=require(_0x379d('0x13'));var licenseUtil=require(_0x379d('0x14'));var db=require(_0x379d('0x15'))['db'];function respondWithStatusCode(_0x490c4a,_0x98a42c){_0x98a42c=_0x98a42c||0xcc;return function(_0x3aef39){if(_0x3aef39){return _0x490c4a[_0x379d('0x16')](_0x98a42c);}return _0x490c4a[_0x379d('0x17')](_0x98a42c)[_0x379d('0x18')]();};}function respondWithResult(_0x16976a,_0x4ae1a0){_0x4ae1a0=_0x4ae1a0||0xc8;return function(_0x47bf1b){if(_0x47bf1b){return _0x16976a[_0x379d('0x17')](_0x4ae1a0)['json'](_0x47bf1b);}};}function respondWithFilteredResult(_0x13ed31,_0x14df5d){return function(_0x1414f4){if(_0x1414f4){var _0x1290c9=typeof _0x14df5d['offset']===_0x379d('0x19')&&typeof _0x14df5d['limit']==='undefined';var _0x489343=_0x1414f4[_0x379d('0x1a')];var _0xe53ada=_0x1290c9?0x0:_0x14df5d[_0x379d('0x1b')];var _0x1ff2d2=_0x1290c9?_0x1414f4[_0x379d('0x1a')]:_0x14df5d[_0x379d('0x1b')]+_0x14df5d[_0x379d('0x1c')];var _0x2b7f18;if(_0x1ff2d2>=_0x489343){_0x1ff2d2=_0x489343;_0x2b7f18=0xc8;}else{_0x2b7f18=0xce;}_0x13ed31[_0x379d('0x17')](_0x2b7f18);return _0x13ed31['set'](_0x379d('0x1d'),_0xe53ada+'-'+_0x1ff2d2+'/'+_0x489343)[_0x379d('0x1e')](_0x1414f4);}return null;};}function patchUpdates(_0x186b3e){return function(_0x3de79d){try{jsonpatch[_0x379d('0x1f')](_0x3de79d,_0x186b3e,!![]);}catch(_0x27c1cf){return BPromise[_0x379d('0x20')](_0x27c1cf);}return _0x3de79d[_0x379d('0x21')]();};}function saveUpdates(_0x316f99,_0x449981){return function(_0x14a249){if(_0x14a249){return _0x14a249[_0x379d('0x22')](_0x316f99)[_0x379d('0x23')](function(_0x177df1){return _0x177df1;});}return null;};}function removeEntity(_0x372d76,_0x59da46){return function(_0x3c5109){if(_0x3c5109){return _0x3c5109[_0x379d('0x24')]()['then'](function(){_0x372d76[_0x379d('0x17')](0xcc)[_0x379d('0x18')]();});}};}function handleEntityNotFound(_0x2c1d0d,_0x22639c){return function(_0x428072){if(!_0x428072){_0x2c1d0d[_0x379d('0x16')](0x194);}return _0x428072;};}function handleError(_0x3eeff0,_0x5e6855){_0x5e6855=_0x5e6855||0x1f4;return function(_0x7d6cc3){logger[_0x379d('0x25')](_0x7d6cc3[_0x379d('0x26')]);if(_0x7d6cc3[_0x379d('0x27')]){delete _0x7d6cc3[_0x379d('0x27')];}_0x3eeff0['status'](_0x5e6855)[_0x379d('0x28')](_0x7d6cc3);};}exports['show']=function(_0x487d72,_0x3aa77b){var _0x141a00={'raw':!![],'where':{'id':_0x487d72[_0x379d('0x29')]['id']}},_0xb93461={};_0xb93461[_0x379d('0x2a')]=_['keys'](db[_0x379d('0x2b')][_0x379d('0x2c')]);_0xb93461['query']=_[_0x379d('0x2d')](_0x487d72[_0x379d('0x2e')]);_0xb93461[_0x379d('0x2f')]=_[_0x379d('0x30')](_0xb93461[_0x379d('0x2a')],_0xb93461[_0x379d('0x2e')]);_0x141a00[_0x379d('0x31')]=_['intersection'](_0xb93461[_0x379d('0x2a')],qs[_0x379d('0x32')](_0x487d72['query']['fields']));_0x141a00[_0x379d('0x31')]=_0x141a00[_0x379d('0x31')][_0x379d('0x33')]?_0x141a00[_0x379d('0x31')]:_0xb93461[_0x379d('0x2a')];if(_0x487d72['query'][_0x379d('0x34')]){_0x141a00[_0x379d('0x35')]=[{'all':!![]}];}_0x141a00=_['merge']({},_0x141a00,_0x487d72[_0x379d('0x36')]);return db['ChatProactiveAction'][_0x379d('0x37')](_0x141a00)['then'](handleEntityNotFound(_0x3aa77b,null))[_0x379d('0x23')](respondWithResult(_0x3aa77b,null))[_0x379d('0x38')](handleError(_0x3aa77b,null));};exports[_0x379d('0x39')]=function(_0x51c395,_0x277e53){return db['ChatProactiveAction'][_0x379d('0x39')](_0x51c395[_0x379d('0x3a')],{})[_0x379d('0x23')](respondWithResult(_0x277e53,0xc9))[_0x379d('0x38')](handleError(_0x277e53,null));};exports[_0x379d('0x22')]=function(_0x461661,_0x10b28d){if(_0x461661[_0x379d('0x3a')]['id']){delete _0x461661[_0x379d('0x3a')]['id'];}return db['ChatProactiveAction'][_0x379d('0x37')]({'where':{'id':_0x461661[_0x379d('0x29')]['id']}})[_0x379d('0x23')](handleEntityNotFound(_0x10b28d,null))['then'](saveUpdates(_0x461661[_0x379d('0x3a')],null))[_0x379d('0x23')](respondWithResult(_0x10b28d,null))['catch'](handleError(_0x10b28d,null));};exports[_0x379d('0x24')]=function(_0x39b5a3,_0x338f61){return db[_0x379d('0x2b')][_0x379d('0x37')]({'where':{'id':_0x39b5a3[_0x379d('0x29')]['id']}})[_0x379d('0x23')](handleEntityNotFound(_0x338f61,null))[_0x379d('0x23')](removeEntity(_0x338f61,null))[_0x379d('0x38')](handleError(_0x338f61,null));};