cfa56e4fe20937716b7d5ebce20138a1085afc59
[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 _0x0d64=['options','ChatProactiveAction','catch','create','body','update','find','params','destroy','eml-format','zip-dir','fast-json-patch','moment','bluebird','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','../../config/utils','sendStatus','end','json','offset','undefined','limit','count','status','Content-Range','apply','reject','save','then','error','stack','send','show','keys','query','intersection','model','attributes','fields','length','merge'];(function(_0x1d5d18,_0x381a66){var _0x568642=function(_0x1099af){while(--_0x1099af){_0x1d5d18['push'](_0x1d5d18['shift']());}};_0x568642(++_0x381a66);}(_0x0d64,0x77));var _0x40d6=function(_0x414fdc,_0x5e35a2){_0x414fdc=_0x414fdc-0x0;var _0x264c7a=_0x0d64[_0x414fdc];return _0x264c7a;};'use strict';var emlformat=require(_0x40d6('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x40d6('0x1'));var jsonpatch=require(_0x40d6('0x2'));var rp=require('request-promise');var moment=require(_0x40d6('0x3'));var BPromise=require(_0x40d6('0x4'));var Mustache=require('mustache');var util=require(_0x40d6('0x5'));var path=require(_0x40d6('0x6'));var sox=require(_0x40d6('0x7'));var csv=require(_0x40d6('0x8'));var ejs=require(_0x40d6('0x9'));var fs=require('fs');var fs_extra=require(_0x40d6('0xa'));var _=require(_0x40d6('0xb'));var squel=require(_0x40d6('0xc'));var crypto=require(_0x40d6('0xd'));var jsforce=require(_0x40d6('0xe'));var deskjs=require(_0x40d6('0xf'));var toCsv=require(_0x40d6('0x8'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x40d6('0x10'));var authService=require('../../components/auth/service');var qs=require(_0x40d6('0x11'));var as=require(_0x40d6('0x12'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x40d6('0x13'))('api');var utils=require(_0x40d6('0x14'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x1a4067,_0x233ab5){_0x233ab5=_0x233ab5||0xcc;return function(_0x3dd4af){if(_0x3dd4af){return _0x1a4067[_0x40d6('0x15')](_0x233ab5);}return _0x1a4067['status'](_0x233ab5)[_0x40d6('0x16')]();};}function respondWithResult(_0x42537a,_0x44ae12){_0x44ae12=_0x44ae12||0xc8;return function(_0x18ccf7){if(_0x18ccf7){return _0x42537a['status'](_0x44ae12)[_0x40d6('0x17')](_0x18ccf7);}};}function respondWithFilteredResult(_0x29392b,_0x3eeab2){return function(_0x3db4c3){if(_0x3db4c3){var _0x300a26=typeof _0x3eeab2[_0x40d6('0x18')]===_0x40d6('0x19')&&typeof _0x3eeab2[_0x40d6('0x1a')]===_0x40d6('0x19');var _0x5866e9=_0x3db4c3[_0x40d6('0x1b')];var _0xbe088d=_0x300a26?0x0:_0x3eeab2['offset'];var _0x1118ee=_0x300a26?_0x3db4c3[_0x40d6('0x1b')]:_0x3eeab2[_0x40d6('0x18')]+_0x3eeab2[_0x40d6('0x1a')];var _0x41a0f3;if(_0x1118ee>=_0x5866e9){_0x1118ee=_0x5866e9;_0x41a0f3=0xc8;}else{_0x41a0f3=0xce;}_0x29392b[_0x40d6('0x1c')](_0x41a0f3);return _0x29392b['set'](_0x40d6('0x1d'),_0xbe088d+'-'+_0x1118ee+'/'+_0x5866e9)['json'](_0x3db4c3);}return null;};}function patchUpdates(_0x38ae04){return function(_0x39e53d){try{jsonpatch[_0x40d6('0x1e')](_0x39e53d,_0x38ae04,!![]);}catch(_0x2f8d02){return BPromise[_0x40d6('0x1f')](_0x2f8d02);}return _0x39e53d[_0x40d6('0x20')]();};}function saveUpdates(_0x48312b,_0x1f29b8){return function(_0x3dfbab){if(_0x3dfbab){return _0x3dfbab['update'](_0x48312b)['then'](function(_0x4fa4f2){return _0x4fa4f2;});}return null;};}function removeEntity(_0x45125d,_0x302def){return function(_0x3357ba){if(_0x3357ba){return _0x3357ba['destroy']()[_0x40d6('0x21')](function(){_0x45125d[_0x40d6('0x1c')](0xcc)[_0x40d6('0x16')]();});}};}function handleEntityNotFound(_0x2b7da1,_0x408265){return function(_0x5020eb){if(!_0x5020eb){_0x2b7da1[_0x40d6('0x15')](0x194);}return _0x5020eb;};}function handleError(_0x2ddc43,_0x298abd){_0x298abd=_0x298abd||0x1f4;return function(_0x127d40){logger[_0x40d6('0x22')](_0x127d40[_0x40d6('0x23')]);if(_0x127d40['name']){delete _0x127d40['name'];}_0x2ddc43[_0x40d6('0x1c')](_0x298abd)[_0x40d6('0x24')](_0x127d40);};}exports[_0x40d6('0x25')]=function(_0x33fcdd,_0x21fec7){var _0x8ff273={'raw':!![],'where':{'id':_0x33fcdd['params']['id']}},_0x11566a={};_0x11566a['model']=_[_0x40d6('0x26')](db['ChatProactiveAction']['rawAttributes']);_0x11566a[_0x40d6('0x27')]=_[_0x40d6('0x26')](_0x33fcdd['query']);_0x11566a['filters']=_[_0x40d6('0x28')](_0x11566a[_0x40d6('0x29')],_0x11566a[_0x40d6('0x27')]);_0x8ff273[_0x40d6('0x2a')]=_['intersection'](_0x11566a[_0x40d6('0x29')],qs[_0x40d6('0x2b')](_0x33fcdd[_0x40d6('0x27')][_0x40d6('0x2b')]));_0x8ff273['attributes']=_0x8ff273[_0x40d6('0x2a')][_0x40d6('0x2c')]?_0x8ff273[_0x40d6('0x2a')]:_0x11566a[_0x40d6('0x29')];if(_0x33fcdd[_0x40d6('0x27')]['includeAll']){_0x8ff273['include']=[{'all':!![]}];}_0x8ff273=_[_0x40d6('0x2d')]({},_0x8ff273,_0x33fcdd[_0x40d6('0x2e')]);return db[_0x40d6('0x2f')]['find'](_0x8ff273)[_0x40d6('0x21')](handleEntityNotFound(_0x21fec7,null))[_0x40d6('0x21')](respondWithResult(_0x21fec7,null))[_0x40d6('0x30')](handleError(_0x21fec7,null));};exports[_0x40d6('0x31')]=function(_0x433e70,_0x3966de){return db['ChatProactiveAction'][_0x40d6('0x31')](_0x433e70[_0x40d6('0x32')],{})[_0x40d6('0x21')](respondWithResult(_0x3966de,0xc9))[_0x40d6('0x30')](handleError(_0x3966de,null));};exports[_0x40d6('0x33')]=function(_0x16d0db,_0x534494){if(_0x16d0db[_0x40d6('0x32')]['id']){delete _0x16d0db[_0x40d6('0x32')]['id'];}return db[_0x40d6('0x2f')][_0x40d6('0x34')]({'where':{'id':_0x16d0db[_0x40d6('0x35')]['id']}})[_0x40d6('0x21')](handleEntityNotFound(_0x534494,null))[_0x40d6('0x21')](saveUpdates(_0x16d0db[_0x40d6('0x32')],null))[_0x40d6('0x21')](respondWithResult(_0x534494,null))[_0x40d6('0x30')](handleError(_0x534494,null));};exports[_0x40d6('0x36')]=function(_0x3afa26,_0x20a578){return db[_0x40d6('0x2f')]['find']({'where':{'id':_0x3afa26['params']['id']}})[_0x40d6('0x21')](handleEntityNotFound(_0x20a578,null))[_0x40d6('0x21')](removeEntity(_0x20a578,null))['catch'](handleError(_0x20a578,null));};