ff33e2674a6d027a52e9dd66b94b101f06166da2
[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 _0x7582=['util','path','to-csv','ejs','squel','crypto','desk.js','querystring','ioredis','../../components/auth/service','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','end','json','offset','limit','set','Content-Range','reject','save','then','destroy','error','stack','name','index','map','ChatOfflineMessage','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','VIRTUAL','count','includeAll','include','findAll','rows','catch','show','merge','options','create','body','update','find','params','describe','eml-format','rimraf','zip-dir','request-promise','bluebird','mustache'];(function(_0x5ac4cf,_0x439059){var _0x377f6c=function(_0x31ddf3){while(--_0x31ddf3){_0x5ac4cf['push'](_0x5ac4cf['shift']());}};_0x377f6c(++_0x439059);}(_0x7582,0x167));var _0x2758=function(_0x52085a,_0x3717ca){_0x52085a=_0x52085a-0x0;var _0x5afc1a=_0x7582[_0x52085a];return _0x5afc1a;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x2758('0x0'));var rimraf=require(_0x2758('0x1'));var zipdir=require(_0x2758('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x2758('0x3'));var moment=require('moment');var BPromise=require(_0x2758('0x4'));var Mustache=require(_0x2758('0x5'));var util=require(_0x2758('0x6'));var path=require(_0x2758('0x7'));var sox=require('sox');var csv=require(_0x2758('0x8'));var ejs=require(_0x2758('0x9'));var fs=require('fs');var _=require('lodash');var squel=require(_0x2758('0xa'));var crypto=require(_0x2758('0xb'));var jsforce=require('jsforce');var deskjs=require(_0x2758('0xc'));var toCsv=require(_0x2758('0x8'));var querystring=require(_0x2758('0xd'));var Papa=require('papaparse');var Redis=require(_0x2758('0xe'));var authService=require(_0x2758('0xf'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x2758('0x10'));var logger=require(_0x2758('0x11'))(_0x2758('0x12'));var utils=require(_0x2758('0x13'));var config=require(_0x2758('0x14'));var licenseUtil=require(_0x2758('0x15'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x493357,_0x4caa8b){_0x4caa8b=_0x4caa8b||0xcc;return function(_0x1846cd){if(_0x1846cd){return _0x493357[_0x2758('0x16')](_0x4caa8b);}return _0x493357[_0x2758('0x17')](_0x4caa8b)[_0x2758('0x18')]();};}function respondWithResult(_0x3233af,_0x9db637){_0x9db637=_0x9db637||0xc8;return function(_0x3e1a7e){if(_0x3e1a7e){return _0x3233af[_0x2758('0x17')](_0x9db637)[_0x2758('0x19')](_0x3e1a7e);}};}function respondWithFilteredResult(_0xad4346,_0x414a0b){return function(_0x361f14){if(_0x361f14){var _0x280ccc=_0x361f14['count'],_0x3a907c=_0x414a0b[_0x2758('0x1a')],_0x5c55fb=_0x414a0b[_0x2758('0x1a')]+_0x414a0b[_0x2758('0x1b')],_0x51aa65;if(_0x5c55fb>=_0x280ccc){_0x5c55fb=_0x280ccc;_0x51aa65=0xc8;}else{_0x51aa65=0xce;}_0xad4346[_0x2758('0x17')](_0x51aa65);return _0xad4346[_0x2758('0x1c')](_0x2758('0x1d'),_0x3a907c+'-'+_0x5c55fb+'/'+_0x280ccc)['json'](_0x361f14);}return null;};}function patchUpdates(_0x15f7b7){return function(_0x4202e5){try{jsonpatch['apply'](_0x4202e5,_0x15f7b7,!![]);}catch(_0x30b3d9){return BPromise[_0x2758('0x1e')](_0x30b3d9);}return _0x4202e5[_0x2758('0x1f')]();};}function saveUpdates(_0x4100a0,_0x50526b){return function(_0x389ef5){if(_0x389ef5){return _0x389ef5['update'](_0x4100a0)[_0x2758('0x20')](function(_0x23de49){return _0x23de49;});}return null;};}function removeEntity(_0x27a887,_0x2797fe){return function(_0x4699c4){if(_0x4699c4){return _0x4699c4[_0x2758('0x21')]()[_0x2758('0x20')](function(){_0x27a887[_0x2758('0x17')](0xcc)[_0x2758('0x18')]();});}};}function handleEntityNotFound(_0x2ef395,_0x1f645d){return function(_0x43e8ef){if(!_0x43e8ef){_0x2ef395['sendStatus'](0x194);}return _0x43e8ef;};}function handleError(_0x4f92f2,_0x18f2b7){_0x18f2b7=_0x18f2b7||0x1f4;return function(_0x277f69){logger[_0x2758('0x22')](_0x277f69[_0x2758('0x23')]);if(_0x277f69[_0x2758('0x24')]){delete _0x277f69[_0x2758('0x24')];}_0x4f92f2['status'](_0x18f2b7)['send'](_0x277f69);};}exports[_0x2758('0x25')]=function(_0x28c1f2,_0xee59e6){var _0x1d56cd={},_0x4d96d5={},_0x47c969={'count':0x0,'rows':[]};var _0x3e4cd7=_[_0x2758('0x26')](db[_0x2758('0x27')]['rawAttributes'],function(_0x1d5f88){return{'name':_0x1d5f88['fieldName'],'type':_0x1d5f88[_0x2758('0x28')][_0x2758('0x29')]};});_0x4d96d5[_0x2758('0x2a')]=_[_0x2758('0x26')](_0x3e4cd7,_0x2758('0x24'));_0x4d96d5[_0x2758('0x2b')]=_[_0x2758('0x2c')](_0x28c1f2[_0x2758('0x2b')]);_0x4d96d5[_0x2758('0x2d')]=_[_0x2758('0x2e')](_0x4d96d5['model'],_0x4d96d5[_0x2758('0x2b')]);_0x1d56cd[_0x2758('0x2f')]=_[_0x2758('0x2e')](_0x4d96d5[_0x2758('0x2a')],qs['fields'](_0x28c1f2['query'][_0x2758('0x30')]));_0x1d56cd[_0x2758('0x2f')]=_0x1d56cd['attributes'][_0x2758('0x31')]?_0x1d56cd['attributes']:_0x4d96d5[_0x2758('0x2a')];if(!_0x28c1f2['query'][_0x2758('0x32')](_0x2758('0x33'))){_0x1d56cd['limit']=qs[_0x2758('0x1b')](_0x28c1f2[_0x2758('0x2b')][_0x2758('0x1b')]);_0x1d56cd[_0x2758('0x1a')]=qs[_0x2758('0x1a')](_0x28c1f2[_0x2758('0x2b')][_0x2758('0x1a')]);}_0x1d56cd[_0x2758('0x34')]=qs['sort'](_0x28c1f2[_0x2758('0x2b')][_0x2758('0x35')]);_0x1d56cd[_0x2758('0x36')]=qs[_0x2758('0x2d')](_[_0x2758('0x37')](_0x28c1f2[_0x2758('0x2b')],_0x4d96d5[_0x2758('0x2d')]),_0x3e4cd7);if(_0x28c1f2[_0x2758('0x2b')][_0x2758('0x38')]){_0x1d56cd['where']=_['merge'](_0x1d56cd[_0x2758('0x36')],{'$or':_[_0x2758('0x26')](_0x3e4cd7,function(_0x25d115){if(_0x25d115[_0x2758('0x28')]!==_0x2758('0x39')){var _0x33c595={};_0x33c595[_0x25d115['name']]={'$like':'%'+_0x28c1f2[_0x2758('0x2b')][_0x2758('0x38')]+'%'};return _0x33c595;}})});}_0x1d56cd=_['merge']({},_0x1d56cd,_0x28c1f2['options']);var _0x4db245={'where':_0x1d56cd[_0x2758('0x36')]};return db[_0x2758('0x27')][_0x2758('0x3a')](_0x4db245)[_0x2758('0x20')](function(_0x564462){_0x47c969[_0x2758('0x3a')]=_0x564462;if(_0x28c1f2[_0x2758('0x2b')][_0x2758('0x3b')]){_0x1d56cd[_0x2758('0x3c')]=[{'all':!![]}];}return db[_0x2758('0x27')][_0x2758('0x3d')](_0x1d56cd);})['then'](function(_0x2bde22){_0x47c969[_0x2758('0x3e')]=_0x2bde22;return _0x47c969;})[_0x2758('0x20')](respondWithFilteredResult(_0xee59e6,_0x1d56cd))[_0x2758('0x3f')](handleError(_0xee59e6,null));};exports[_0x2758('0x40')]=function(_0x32fd4d,_0xf0df8e){var _0x4226f1={'raw':!![],'where':{'id':_0x32fd4d['params']['id']}},_0x2f7773={};_0x2f7773['model']=_[_0x2758('0x2c')](db[_0x2758('0x27')]['rawAttributes']);_0x2f7773[_0x2758('0x2b')]=_[_0x2758('0x2c')](_0x32fd4d['query']);_0x2f7773[_0x2758('0x2d')]=_[_0x2758('0x2e')](_0x2f7773[_0x2758('0x2a')],_0x2f7773[_0x2758('0x2b')]);_0x4226f1[_0x2758('0x2f')]=_['intersection'](_0x2f7773['model'],qs['fields'](_0x32fd4d[_0x2758('0x2b')][_0x2758('0x30')]));_0x4226f1[_0x2758('0x2f')]=_0x4226f1[_0x2758('0x2f')][_0x2758('0x31')]?_0x4226f1[_0x2758('0x2f')]:_0x2f7773[_0x2758('0x2a')];if(_0x32fd4d[_0x2758('0x2b')]['includeAll']){_0x4226f1['include']=[{'all':!![]}];}_0x4226f1=_[_0x2758('0x41')]({},_0x4226f1,_0x32fd4d[_0x2758('0x42')]);return db[_0x2758('0x27')]['find'](_0x4226f1)['then'](handleEntityNotFound(_0xf0df8e,null))[_0x2758('0x20')](respondWithResult(_0xf0df8e,null))[_0x2758('0x3f')](handleError(_0xf0df8e,null));};exports['create']=function(_0x3f305b,_0x42d94c){return db[_0x2758('0x27')][_0x2758('0x43')](_0x3f305b[_0x2758('0x44')],{})[_0x2758('0x20')](respondWithResult(_0x42d94c,0xc9))[_0x2758('0x3f')](handleError(_0x42d94c,null));};exports[_0x2758('0x45')]=function(_0x1347a1,_0x6def5d){if(_0x1347a1['body']['id']){delete _0x1347a1['body']['id'];}return db[_0x2758('0x27')][_0x2758('0x46')]({'where':{'id':_0x1347a1[_0x2758('0x47')]['id']}})[_0x2758('0x20')](handleEntityNotFound(_0x6def5d,null))[_0x2758('0x20')](saveUpdates(_0x1347a1['body'],null))[_0x2758('0x20')](respondWithResult(_0x6def5d,null))['catch'](handleError(_0x6def5d,null));};exports[_0x2758('0x21')]=function(_0x264a11,_0x308b6a){return db[_0x2758('0x27')][_0x2758('0x46')]({'where':{'id':_0x264a11['params']['id']}})[_0x2758('0x20')](handleEntityNotFound(_0x308b6a,null))['then'](removeEntity(_0x308b6a,null))[_0x2758('0x3f')](handleError(_0x308b6a,null));};exports[_0x2758('0x48')]=function(_0x514e96,_0x1b4dfa){return db[_0x2758('0x27')][_0x2758('0x48')]()[_0x2758('0x20')](respondWithResult(_0x1b4dfa,null))[_0x2758('0x3f')](handleError(_0x1b4dfa,null));};