49f91b819b8d832581daa6abe6621a44c4c598bb
[motion2.git] / server / api / chatOfflineMessage / chatOfflineMessage.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 _0x1730=['lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../mysqldb','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','reject','then','destroy','stack','name','send','ChatOfflineMessage','rawAttributes','fieldName','type','key','map','query','keys','filters','model','attributes','intersection','fields','length','hasOwnProperty','nolimit','where','pick','filter','merge','options','includeAll','include','findAll','rows','catch','show','params','create','body','update','find','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs'];(function(_0x2d4813,_0x589093){var _0x4b9f10=function(_0x4e9511){while(--_0x4e9511){_0x2d4813['push'](_0x2d4813['shift']());}};_0x4b9f10(++_0x589093);}(_0x1730,0xda));var _0x0173=function(_0x43fb8a,_0x52ff7a){_0x43fb8a=_0x43fb8a-0x0;var _0x7db7af=_0x1730[_0x43fb8a];return _0x7db7af;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x0173('0x0'));var rimraf=require(_0x0173('0x1'));var zipdir=require(_0x0173('0x2'));var jsonpatch=require(_0x0173('0x3'));var rp=require(_0x0173('0x4'));var moment=require(_0x0173('0x5'));var BPromise=require(_0x0173('0x6'));var Mustache=require(_0x0173('0x7'));var util=require(_0x0173('0x8'));var path=require(_0x0173('0x9'));var sox=require(_0x0173('0xa'));var csv=require(_0x0173('0xb'));var ejs=require(_0x0173('0xc'));var fs=require('fs');var _=require(_0x0173('0xd'));var squel=require(_0x0173('0xe'));var crypto=require(_0x0173('0xf'));var jsforce=require(_0x0173('0x10'));var deskjs=require(_0x0173('0x11'));var toCsv=require('to-csv');var querystring=require(_0x0173('0x12'));var Papa=require(_0x0173('0x13'));var Redis=require(_0x0173('0x14'));var authService=require('../../components/auth/service');var qs=require(_0x0173('0x15'));var as=require(_0x0173('0x16'));var hardwareService=require(_0x0173('0x17'));var logger=require(_0x0173('0x18'))(_0x0173('0x19'));var utils=require('../../config/utils');var config=require(_0x0173('0x1a'));var licenseUtil=require('../../config/license/util');var db=require(_0x0173('0x1b'))['db'];function respondWithStatusCode(_0x403369,_0x3c9e19){_0x3c9e19=_0x3c9e19||0xcc;return function(_0x4887c1){if(_0x4887c1){return _0x403369[_0x0173('0x1c')](_0x3c9e19);}return _0x403369[_0x0173('0x1d')](_0x3c9e19)[_0x0173('0x1e')]();};}function respondWithResult(_0x693155,_0x456f1d){_0x456f1d=_0x456f1d||0xc8;return function(_0x2bcde8){if(_0x2bcde8){return _0x693155[_0x0173('0x1d')](_0x456f1d)[_0x0173('0x1f')](_0x2bcde8);}};}function respondWithFilteredResult(_0x75e482,_0x21a92e){return function(_0x2ba465){if(_0x2ba465){var _0x5a924b=_0x2ba465[_0x0173('0x20')],_0x8e0072=_0x21a92e[_0x0173('0x21')],_0x4c9c20=_0x21a92e[_0x0173('0x21')]+_0x21a92e[_0x0173('0x22')],_0x262162;if(_0x4c9c20>=_0x5a924b){_0x4c9c20=_0x5a924b;_0x262162=0xc8;}else{_0x262162=0xce;}_0x75e482['status'](_0x262162);return _0x75e482[_0x0173('0x23')](_0x0173('0x24'),_0x8e0072+'-'+_0x4c9c20+'/'+_0x5a924b)[_0x0173('0x1f')](_0x2ba465);}return null;};}function patchUpdates(_0x16db42){return function(_0x39991c){try{jsonpatch[_0x0173('0x25')](_0x39991c,_0x16db42,!![]);}catch(_0x5bee44){return BPromise[_0x0173('0x26')](_0x5bee44);}return _0x39991c['save']();};}function saveUpdates(_0x5e6a1b,_0x44c0fa){return function(_0xc03928){if(_0xc03928){return _0xc03928['update'](_0x5e6a1b)[_0x0173('0x27')](function(_0x540f8a){return _0x540f8a;});}return null;};}function removeEntity(_0xb50a98,_0x454065){return function(_0x3fd8ef){if(_0x3fd8ef){return _0x3fd8ef[_0x0173('0x28')]()['then'](function(){_0xb50a98[_0x0173('0x1d')](0xcc)['end']();});}};}function handleEntityNotFound(_0x4c1d42,_0x151503){return function(_0x16cb62){if(!_0x16cb62){_0x4c1d42[_0x0173('0x1c')](0x194);}return _0x16cb62;};}function handleError(_0x957a7c,_0x539763){_0x539763=_0x539763||0x1f4;return function(_0x4a6464){logger['error'](_0x4a6464[_0x0173('0x29')]);if(_0x4a6464[_0x0173('0x2a')]){delete _0x4a6464['name'];}_0x957a7c[_0x0173('0x1d')](_0x539763)[_0x0173('0x2b')](_0x4a6464);};}exports['index']=function(_0x5531a5,_0x659a80){var _0x40cee9={},_0x291719={},_0x19d518={'count':0x0,'rows':[]};var _0x574e45=_['map'](db[_0x0173('0x2c')][_0x0173('0x2d')],function(_0x12c95d){return{'name':_0x12c95d[_0x0173('0x2e')],'type':_0x12c95d[_0x0173('0x2f')][_0x0173('0x30')]};});_0x291719['model']=_[_0x0173('0x31')](_0x574e45,_0x0173('0x2a'));_0x291719[_0x0173('0x32')]=_[_0x0173('0x33')](_0x5531a5[_0x0173('0x32')]);_0x291719[_0x0173('0x34')]=_['intersection'](_0x291719[_0x0173('0x35')],_0x291719[_0x0173('0x32')]);_0x40cee9[_0x0173('0x36')]=_[_0x0173('0x37')](_0x291719['model'],qs[_0x0173('0x38')](_0x5531a5[_0x0173('0x32')]['fields']));_0x40cee9['attributes']=_0x40cee9['attributes'][_0x0173('0x39')]?_0x40cee9[_0x0173('0x36')]:_0x291719['model'];if(!_0x5531a5[_0x0173('0x32')][_0x0173('0x3a')](_0x0173('0x3b'))){_0x40cee9[_0x0173('0x22')]=qs[_0x0173('0x22')](_0x5531a5[_0x0173('0x32')][_0x0173('0x22')]);_0x40cee9[_0x0173('0x21')]=qs[_0x0173('0x21')](_0x5531a5[_0x0173('0x32')][_0x0173('0x21')]);}_0x40cee9['order']=qs['sort'](_0x5531a5[_0x0173('0x32')]['sort']);_0x40cee9[_0x0173('0x3c')]=qs[_0x0173('0x34')](_[_0x0173('0x3d')](_0x5531a5['query'],_0x291719[_0x0173('0x34')]),_0x574e45);if(_0x5531a5[_0x0173('0x32')][_0x0173('0x3e')]){_0x40cee9[_0x0173('0x3c')]=_[_0x0173('0x3f')](_0x40cee9[_0x0173('0x3c')],{'$or':_[_0x0173('0x31')](_0x574e45,function(_0x291141){if(_0x291141[_0x0173('0x2f')]!=='VIRTUAL'){var _0x43b569={};_0x43b569[_0x291141[_0x0173('0x2a')]]={'$like':'%'+_0x5531a5[_0x0173('0x32')][_0x0173('0x3e')]+'%'};return _0x43b569;}})});}_0x40cee9=_[_0x0173('0x3f')]({},_0x40cee9,_0x5531a5[_0x0173('0x40')]);var _0x114896={'where':_0x40cee9['where']};return db['ChatOfflineMessage'][_0x0173('0x20')](_0x114896)[_0x0173('0x27')](function(_0x7552e1){_0x19d518[_0x0173('0x20')]=_0x7552e1;if(_0x5531a5['query'][_0x0173('0x41')]){_0x40cee9[_0x0173('0x42')]=[{'all':!![]}];}return db[_0x0173('0x2c')][_0x0173('0x43')](_0x40cee9);})[_0x0173('0x27')](function(_0x45813c){_0x19d518[_0x0173('0x44')]=_0x45813c;return _0x19d518;})[_0x0173('0x27')](respondWithFilteredResult(_0x659a80,_0x40cee9))[_0x0173('0x45')](handleError(_0x659a80,null));};exports[_0x0173('0x46')]=function(_0x4fac72,_0x5be0e8){var _0x48d742={'raw':!![],'where':{'id':_0x4fac72[_0x0173('0x47')]['id']}},_0x229134={};_0x229134[_0x0173('0x35')]=_[_0x0173('0x33')](db['ChatOfflineMessage'][_0x0173('0x2d')]);_0x229134[_0x0173('0x32')]=_[_0x0173('0x33')](_0x4fac72['query']);_0x229134[_0x0173('0x34')]=_[_0x0173('0x37')](_0x229134[_0x0173('0x35')],_0x229134[_0x0173('0x32')]);_0x48d742[_0x0173('0x36')]=_[_0x0173('0x37')](_0x229134[_0x0173('0x35')],qs['fields'](_0x4fac72[_0x0173('0x32')][_0x0173('0x38')]));_0x48d742[_0x0173('0x36')]=_0x48d742['attributes'][_0x0173('0x39')]?_0x48d742[_0x0173('0x36')]:_0x229134[_0x0173('0x35')];if(_0x4fac72[_0x0173('0x32')][_0x0173('0x41')]){_0x48d742[_0x0173('0x42')]=[{'all':!![]}];}_0x48d742=_['merge']({},_0x48d742,_0x4fac72[_0x0173('0x40')]);return db[_0x0173('0x2c')]['find'](_0x48d742)[_0x0173('0x27')](handleEntityNotFound(_0x5be0e8,null))[_0x0173('0x27')](respondWithResult(_0x5be0e8,null))[_0x0173('0x45')](handleError(_0x5be0e8,null));};exports[_0x0173('0x48')]=function(_0x540a49,_0x656d7b){return db[_0x0173('0x2c')][_0x0173('0x48')](_0x540a49[_0x0173('0x49')],{})[_0x0173('0x27')](respondWithResult(_0x656d7b,0xc9))[_0x0173('0x45')](handleError(_0x656d7b,null));};exports[_0x0173('0x4a')]=function(_0x487bea,_0x2e3a50){if(_0x487bea[_0x0173('0x49')]['id']){delete _0x487bea[_0x0173('0x49')]['id'];}return db[_0x0173('0x2c')][_0x0173('0x4b')]({'where':{'id':_0x487bea[_0x0173('0x47')]['id']}})[_0x0173('0x27')](handleEntityNotFound(_0x2e3a50,null))['then'](saveUpdates(_0x487bea[_0x0173('0x49')],null))[_0x0173('0x27')](respondWithResult(_0x2e3a50,null))['catch'](handleError(_0x2e3a50,null));};exports['destroy']=function(_0x5f0020,_0x44e9c7){return db[_0x0173('0x2c')][_0x0173('0x4b')]({'where':{'id':_0x5f0020[_0x0173('0x47')]['id']}})[_0x0173('0x27')](handleEntityNotFound(_0x44e9c7,null))[_0x0173('0x27')](removeEntity(_0x44e9c7,null))[_0x0173('0x45')](handleError(_0x44e9c7,null));};exports[_0x0173('0x4c')]=function(_0x2da650,_0x506d44){return db[_0x0173('0x2c')][_0x0173('0x4c')]()['then'](respondWithResult(_0x506d44,null))['catch'](handleError(_0x506d44,null));};