cda8d9708dc520f170035e298cd96a2a0b8399d1
[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 _0xe647=['model','keys','ChatProactiveAction','rawAttributes','query','attributes','intersection','fields','length','includeAll','include','catch','create','body','update','find','destroy','eml-format','rimraf','fast-json-patch','request-promise','moment','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','limit','undefined','count','set','Content-Range','apply','then','error','name','send','show','params'];(function(_0xcf7d1e,_0x1b00ad){var _0x42b2cb=function(_0x4c5c9b){while(--_0x4c5c9b){_0xcf7d1e['push'](_0xcf7d1e['shift']());}};_0x42b2cb(++_0x1b00ad);}(_0xe647,0x16d));var _0x7e64=function(_0x45cb17,_0x407e71){_0x45cb17=_0x45cb17-0x0;var _0x59debc=_0xe647[_0x45cb17];return _0x59debc;};'use strict';var emlformat=require(_0x7e64('0x0'));var rimraf=require(_0x7e64('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x7e64('0x2'));var rp=require(_0x7e64('0x3'));var moment=require(_0x7e64('0x4'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x7e64('0x5'));var path=require(_0x7e64('0x6'));var sox=require(_0x7e64('0x7'));var csv=require(_0x7e64('0x8'));var ejs=require(_0x7e64('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x7e64('0xa'));var squel=require(_0x7e64('0xb'));var crypto=require(_0x7e64('0xc'));var jsforce=require(_0x7e64('0xd'));var deskjs=require(_0x7e64('0xe'));var toCsv=require(_0x7e64('0x8'));var querystring=require(_0x7e64('0xf'));var Papa=require(_0x7e64('0x10'));var Redis=require(_0x7e64('0x11'));var authService=require(_0x7e64('0x12'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0x7e64('0x13'))(_0x7e64('0x14'));var utils=require(_0x7e64('0x15'));var config=require('../../config/environment');var licenseUtil=require(_0x7e64('0x16'));var db=require(_0x7e64('0x17'))['db'];function respondWithStatusCode(_0x592018,_0x501326){_0x501326=_0x501326||0xcc;return function(_0x16322e){if(_0x16322e){return _0x592018[_0x7e64('0x18')](_0x501326);}return _0x592018[_0x7e64('0x19')](_0x501326)[_0x7e64('0x1a')]();};}function respondWithResult(_0x5a24f0,_0x4af048){_0x4af048=_0x4af048||0xc8;return function(_0x26d64b){if(_0x26d64b){return _0x5a24f0[_0x7e64('0x19')](_0x4af048)[_0x7e64('0x1b')](_0x26d64b);}};}function respondWithFilteredResult(_0x35df8c,_0x266b34){return function(_0x30de16){if(_0x30de16){var _0x570787=typeof _0x266b34[_0x7e64('0x1c')]==='undefined'&&typeof _0x266b34[_0x7e64('0x1d')]===_0x7e64('0x1e');var _0x3bf9a4=_0x30de16['count'];var _0x483c40=_0x570787?0x0:_0x266b34[_0x7e64('0x1c')];var _0x290822=_0x570787?_0x30de16[_0x7e64('0x1f')]:_0x266b34[_0x7e64('0x1c')]+_0x266b34['limit'];var _0x423fce;if(_0x290822>=_0x3bf9a4){_0x290822=_0x3bf9a4;_0x423fce=0xc8;}else{_0x423fce=0xce;}_0x35df8c['status'](_0x423fce);return _0x35df8c[_0x7e64('0x20')](_0x7e64('0x21'),_0x483c40+'-'+_0x290822+'/'+_0x3bf9a4)[_0x7e64('0x1b')](_0x30de16);}return null;};}function patchUpdates(_0x4618cd){return function(_0x1444cb){try{jsonpatch[_0x7e64('0x22')](_0x1444cb,_0x4618cd,!![]);}catch(_0x384a92){return BPromise['reject'](_0x384a92);}return _0x1444cb['save']();};}function saveUpdates(_0x356283,_0x19884d){return function(_0x384757){if(_0x384757){return _0x384757['update'](_0x356283)[_0x7e64('0x23')](function(_0x3fe293){return _0x3fe293;});}return null;};}function removeEntity(_0x47f91b,_0x525f72){return function(_0x292b5c){if(_0x292b5c){return _0x292b5c['destroy']()['then'](function(){_0x47f91b[_0x7e64('0x19')](0xcc)[_0x7e64('0x1a')]();});}};}function handleEntityNotFound(_0x5d16ad,_0x46a53c){return function(_0xabf947){if(!_0xabf947){_0x5d16ad[_0x7e64('0x18')](0x194);}return _0xabf947;};}function handleError(_0x42f3f1,_0x2c1be6){_0x2c1be6=_0x2c1be6||0x1f4;return function(_0x8a743e){logger[_0x7e64('0x24')](_0x8a743e['stack']);if(_0x8a743e[_0x7e64('0x25')]){delete _0x8a743e['name'];}_0x42f3f1['status'](_0x2c1be6)[_0x7e64('0x26')](_0x8a743e);};}exports[_0x7e64('0x27')]=function(_0x44ec65,_0x5e7fac){var _0x482aad={'raw':!![],'where':{'id':_0x44ec65[_0x7e64('0x28')]['id']}},_0x2a9852={};_0x2a9852[_0x7e64('0x29')]=_[_0x7e64('0x2a')](db[_0x7e64('0x2b')][_0x7e64('0x2c')]);_0x2a9852[_0x7e64('0x2d')]=_[_0x7e64('0x2a')](_0x44ec65[_0x7e64('0x2d')]);_0x2a9852['filters']=_['intersection'](_0x2a9852[_0x7e64('0x29')],_0x2a9852[_0x7e64('0x2d')]);_0x482aad[_0x7e64('0x2e')]=_[_0x7e64('0x2f')](_0x2a9852[_0x7e64('0x29')],qs[_0x7e64('0x30')](_0x44ec65[_0x7e64('0x2d')][_0x7e64('0x30')]));_0x482aad[_0x7e64('0x2e')]=_0x482aad['attributes'][_0x7e64('0x31')]?_0x482aad[_0x7e64('0x2e')]:_0x2a9852[_0x7e64('0x29')];if(_0x44ec65[_0x7e64('0x2d')][_0x7e64('0x32')]){_0x482aad[_0x7e64('0x33')]=[{'all':!![]}];}_0x482aad=_['merge']({},_0x482aad,_0x44ec65['options']);return db[_0x7e64('0x2b')]['find'](_0x482aad)[_0x7e64('0x23')](handleEntityNotFound(_0x5e7fac,null))[_0x7e64('0x23')](respondWithResult(_0x5e7fac,null))[_0x7e64('0x34')](handleError(_0x5e7fac,null));};exports[_0x7e64('0x35')]=function(_0x48451d,_0xa1761e){return db['ChatProactiveAction'][_0x7e64('0x35')](_0x48451d[_0x7e64('0x36')],{})[_0x7e64('0x23')](respondWithResult(_0xa1761e,0xc9))['catch'](handleError(_0xa1761e,null));};exports[_0x7e64('0x37')]=function(_0x191472,_0x3c03ad){if(_0x191472['body']['id']){delete _0x191472[_0x7e64('0x36')]['id'];}return db[_0x7e64('0x2b')][_0x7e64('0x38')]({'where':{'id':_0x191472['params']['id']}})[_0x7e64('0x23')](handleEntityNotFound(_0x3c03ad,null))['then'](saveUpdates(_0x191472[_0x7e64('0x36')],null))[_0x7e64('0x23')](respondWithResult(_0x3c03ad,null))[_0x7e64('0x34')](handleError(_0x3c03ad,null));};exports[_0x7e64('0x39')]=function(_0x511d82,_0x570f61){return db[_0x7e64('0x2b')]['find']({'where':{'id':_0x511d82['params']['id']}})['then'](handleEntityNotFound(_0x570f61,null))[_0x7e64('0x23')](removeEntity(_0x570f61,null))[_0x7e64('0x34')](handleError(_0x570f61,null));};