Built motion from commit (unavailable).|2.5.27
[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 _0xc673=['server','files','offline-chat','basename','existsSync','remove','describe','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','util','path','to-csv','ejs','squel','crypto','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','count','offset','set','Content-Range','apply','reject','save','then','end','error','name','index','map','ChatOfflineMessage','rawAttributes','type','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','limit','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','include','findAll','rows','show','params','keys','find','catch','create','body','destroy','Attachment','forEach','join','root'];(function(_0xbafa33,_0x3d7ff4){var _0x3dec07=function(_0x29fec2){while(--_0x29fec2){_0xbafa33['push'](_0xbafa33['shift']());}};_0x3dec07(++_0x3d7ff4);}(_0xc673,0x103));var _0x3c67=function(_0xde7121,_0x40023e){_0xde7121=_0xde7121-0x0;var _0x3765e7=_0xc673[_0xde7121];return _0x3765e7;};'use strict';var emlformat=require(_0x3c67('0x0'));var rimraf=require(_0x3c67('0x1'));var zipdir=require(_0x3c67('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x3c67('0x3'));var moment=require(_0x3c67('0x4'));var BPromise=require(_0x3c67('0x5'));var Mustache=require('mustache');var util=require(_0x3c67('0x6'));var path=require(_0x3c67('0x7'));var sox=require('sox');var csv=require(_0x3c67('0x8'));var ejs=require(_0x3c67('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0x3c67('0xa'));var crypto=require(_0x3c67('0xb'));var jsforce=require('jsforce');var deskjs=require(_0x3c67('0xc'));var toCsv=require(_0x3c67('0x8'));var querystring=require(_0x3c67('0xd'));var Papa=require(_0x3c67('0xe'));var Redis=require(_0x3c67('0xf'));var authService=require(_0x3c67('0x10'));var qs=require(_0x3c67('0x11'));var as=require(_0x3c67('0x12'));var hardwareService=require(_0x3c67('0x13'));var logger=require(_0x3c67('0x14'))(_0x3c67('0x15'));var utils=require(_0x3c67('0x16'));var config=require(_0x3c67('0x17'));var licenseUtil=require(_0x3c67('0x18'));var db=require(_0x3c67('0x19'))['db'];function respondWithStatusCode(_0x6cfcb2,_0x1e9e90){_0x1e9e90=_0x1e9e90||0xcc;return function(_0x98f49b){if(_0x98f49b){return _0x6cfcb2[_0x3c67('0x1a')](_0x1e9e90);}return _0x6cfcb2[_0x3c67('0x1b')](_0x1e9e90)['end']();};}function respondWithResult(_0x251ce7,_0x1534ca){_0x1534ca=_0x1534ca||0xc8;return function(_0x55248a){if(_0x55248a){return _0x251ce7[_0x3c67('0x1b')](_0x1534ca)[_0x3c67('0x1c')](_0x55248a);}};}function respondWithFilteredResult(_0x48c31c,_0x3422a2){return function(_0x394a68){if(_0x394a68){var _0x1d5eed=_0x394a68[_0x3c67('0x1d')],_0x372493=_0x3422a2[_0x3c67('0x1e')],_0x3d2661=_0x3422a2[_0x3c67('0x1e')]+_0x3422a2['limit'],_0x150ec9;if(_0x3d2661>=_0x1d5eed){_0x3d2661=_0x1d5eed;_0x150ec9=0xc8;}else{_0x150ec9=0xce;}_0x48c31c['status'](_0x150ec9);return _0x48c31c[_0x3c67('0x1f')](_0x3c67('0x20'),_0x372493+'-'+_0x3d2661+'/'+_0x1d5eed)[_0x3c67('0x1c')](_0x394a68);}return null;};}function patchUpdates(_0x67f80c){return function(_0x4a4103){try{jsonpatch[_0x3c67('0x21')](_0x4a4103,_0x67f80c,!![]);}catch(_0x43a038){return BPromise[_0x3c67('0x22')](_0x43a038);}return _0x4a4103[_0x3c67('0x23')]();};}function saveUpdates(_0x5be174,_0x3d3350){return function(_0xb53df6){if(_0xb53df6){return _0xb53df6['update'](_0x5be174)[_0x3c67('0x24')](function(_0x43f915){return _0x43f915;});}return null;};}function removeEntity(_0x4b2959,_0x5132c8){return function(_0x5a9d1a){if(_0x5a9d1a){return _0x5a9d1a['destroy']()[_0x3c67('0x24')](function(){_0x4b2959[_0x3c67('0x1b')](0xcc)[_0x3c67('0x25')]();});}};}function handleEntityNotFound(_0x5e61e5,_0x29cac3){return function(_0x5b2dfd){if(!_0x5b2dfd){_0x5e61e5['sendStatus'](0x194);}return _0x5b2dfd;};}function handleError(_0x3f654f,_0x5d7d4a){_0x5d7d4a=_0x5d7d4a||0x1f4;return function(_0x25939d){logger[_0x3c67('0x26')](_0x25939d['stack']);if(_0x25939d[_0x3c67('0x27')]){delete _0x25939d['name'];}_0x3f654f['status'](_0x5d7d4a)['send'](_0x25939d);};}exports[_0x3c67('0x28')]=function(_0x48c34a,_0x4f46ed){var _0x4e7089={},_0x550396={},_0x5d22f8={'count':0x0,'rows':[]};var _0x17ef9e=_[_0x3c67('0x29')](db[_0x3c67('0x2a')][_0x3c67('0x2b')],function(_0x35fbad){return{'name':_0x35fbad['fieldName'],'type':_0x35fbad[_0x3c67('0x2c')]['key']};});_0x550396[_0x3c67('0x2d')]=_[_0x3c67('0x29')](_0x17ef9e,_0x3c67('0x27'));_0x550396[_0x3c67('0x2e')]=_['keys'](_0x48c34a[_0x3c67('0x2e')]);_0x550396[_0x3c67('0x2f')]=_[_0x3c67('0x30')](_0x550396[_0x3c67('0x2d')],_0x550396[_0x3c67('0x2e')]);_0x4e7089[_0x3c67('0x31')]=_['intersection'](_0x550396[_0x3c67('0x2d')],qs[_0x3c67('0x32')](_0x48c34a[_0x3c67('0x2e')][_0x3c67('0x32')]));_0x4e7089[_0x3c67('0x31')]=_0x4e7089[_0x3c67('0x31')][_0x3c67('0x33')]?_0x4e7089[_0x3c67('0x31')]:_0x550396['model'];if(!_0x48c34a[_0x3c67('0x2e')][_0x3c67('0x34')]('nolimit')){_0x4e7089[_0x3c67('0x35')]=qs['limit'](_0x48c34a['query'][_0x3c67('0x35')]);_0x4e7089['offset']=qs[_0x3c67('0x1e')](_0x48c34a[_0x3c67('0x2e')][_0x3c67('0x1e')]);}_0x4e7089['order']=qs[_0x3c67('0x36')](_0x48c34a['query'][_0x3c67('0x36')]);_0x4e7089[_0x3c67('0x37')]=qs[_0x3c67('0x2f')](_[_0x3c67('0x38')](_0x48c34a['query'],_0x550396[_0x3c67('0x2f')]),_0x17ef9e);if(_0x48c34a[_0x3c67('0x2e')][_0x3c67('0x39')]){_0x4e7089[_0x3c67('0x37')]=_[_0x3c67('0x3a')](_0x4e7089[_0x3c67('0x37')],{'$or':_['map'](_0x17ef9e,function(_0x24ebd0){if(_0x24ebd0[_0x3c67('0x2c')]!==_0x3c67('0x3b')){var _0x308367={};_0x308367[_0x24ebd0['name']]={'$like':'%'+_0x48c34a[_0x3c67('0x2e')][_0x3c67('0x39')]+'%'};return _0x308367;}})});}_0x4e7089=_[_0x3c67('0x3a')]({},_0x4e7089,_0x48c34a[_0x3c67('0x3c')]);var _0x4843ce={'where':_0x4e7089[_0x3c67('0x37')]};return db[_0x3c67('0x2a')]['count'](_0x4843ce)['then'](function(_0x4c9144){_0x5d22f8[_0x3c67('0x1d')]=_0x4c9144;if(_0x48c34a[_0x3c67('0x2e')][_0x3c67('0x3d')]){_0x4e7089[_0x3c67('0x3e')]=[{'all':!![]}];}return db['ChatOfflineMessage'][_0x3c67('0x3f')](_0x4e7089);})[_0x3c67('0x24')](function(_0x34dd5d){_0x5d22f8[_0x3c67('0x40')]=_0x34dd5d;return _0x5d22f8;})[_0x3c67('0x24')](respondWithFilteredResult(_0x4f46ed,_0x4e7089))['catch'](handleError(_0x4f46ed,null));};exports[_0x3c67('0x41')]=function(_0x12be36,_0xc4b016){var _0x5c83a6={'raw':!![],'where':{'id':_0x12be36[_0x3c67('0x42')]['id']}},_0x5acde8={};_0x5acde8['model']=_['keys'](db[_0x3c67('0x2a')][_0x3c67('0x2b')]);_0x5acde8[_0x3c67('0x2e')]=_[_0x3c67('0x43')](_0x12be36[_0x3c67('0x2e')]);_0x5acde8[_0x3c67('0x2f')]=_['intersection'](_0x5acde8['model'],_0x5acde8[_0x3c67('0x2e')]);_0x5c83a6['attributes']=_[_0x3c67('0x30')](_0x5acde8[_0x3c67('0x2d')],qs[_0x3c67('0x32')](_0x12be36[_0x3c67('0x2e')]['fields']));_0x5c83a6[_0x3c67('0x31')]=_0x5c83a6[_0x3c67('0x31')]['length']?_0x5c83a6[_0x3c67('0x31')]:_0x5acde8[_0x3c67('0x2d')];if(_0x12be36['query'][_0x3c67('0x3d')]){_0x5c83a6[_0x3c67('0x3e')]=[{'all':!![]}];}_0x5c83a6=_['merge']({},_0x5c83a6,_0x12be36[_0x3c67('0x3c')]);return db[_0x3c67('0x2a')][_0x3c67('0x44')](_0x5c83a6)['then'](handleEntityNotFound(_0xc4b016,null))[_0x3c67('0x24')](respondWithResult(_0xc4b016,null))[_0x3c67('0x45')](handleError(_0xc4b016,null));};exports[_0x3c67('0x46')]=function(_0x6f94cb,_0x4da72c){return db['ChatOfflineMessage'][_0x3c67('0x46')](_0x6f94cb['body'],{})[_0x3c67('0x24')](respondWithResult(_0x4da72c,0xc9))[_0x3c67('0x45')](handleError(_0x4da72c,null));};exports['update']=function(_0x8c77ef,_0x409e3f){if(_0x8c77ef[_0x3c67('0x47')]['id']){delete _0x8c77ef[_0x3c67('0x47')]['id'];}return db['ChatOfflineMessage'][_0x3c67('0x44')]({'where':{'id':_0x8c77ef[_0x3c67('0x42')]['id']}})[_0x3c67('0x24')](handleEntityNotFound(_0x409e3f,null))[_0x3c67('0x24')](saveUpdates(_0x8c77ef['body'],null))['then'](respondWithResult(_0x409e3f,null))['catch'](handleError(_0x409e3f,null));};exports[_0x3c67('0x48')]=function(_0x58b797,_0x1d5050){return db[_0x3c67('0x49')]['findAll']({'where':{'ChatOfflineMessageId':_0x58b797[_0x3c67('0x42')]['id']},'raw':!![]})[_0x3c67('0x24')](function(_0x212b86){_0x212b86[_0x3c67('0x4a')](function(_0x5330ac){var _0x12a5e8=path[_0x3c67('0x4b')](config[_0x3c67('0x4c')],_0x3c67('0x4d'),_0x3c67('0x4e'),'attachments',_0x3c67('0x4f'),_0x5330ac[_0x3c67('0x50')]);var _0x54e721=fs[_0x3c67('0x51')](_0x12a5e8);if(_0x54e721)fs_extra[_0x3c67('0x52')](_0x12a5e8);});})[_0x3c67('0x24')](function(){return db[_0x3c67('0x2a')][_0x3c67('0x44')]({'where':{'id':_0x58b797['params']['id']},'individualHooks':!![]});})[_0x3c67('0x24')](handleEntityNotFound(_0x1d5050,null))[_0x3c67('0x24')](removeEntity(_0x1d5050,null))[_0x3c67('0x45')](handleError(_0x1d5050,null));};exports[_0x3c67('0x53')]=function(_0x1cedb9,_0x218405){return db[_0x3c67('0x2a')][_0x3c67('0x53')]()['then'](respondWithResult(_0x218405,null))[_0x3c67('0x45')](handleError(_0x218405,null));};