94c2c6c8b15a675174debd0d7979b18d9c088ea9
[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 _0xb894=['end','json','count','offset','limit','set','Content-Range','apply','reject','save','update','then','destroy','error','index','rawAttributes','fieldName','type','key','map','name','query','keys','filters','intersection','model','attributes','fields','order','sort','where','pick','filter','merge','VIRTUAL','options','ChatOfflineMessage','include','findAll','catch','show','length','includeAll','create','body','params','find','describe','eml-format','zip-dir','fast-json-patch','moment','bluebird','util','path','sox','to-csv','ejs','lodash','crypto','jsforce','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../mysqldb','sendStatus','status'];(function(_0x2c91e9,_0x2fb965){var _0x13f0ff=function(_0xb39edf){while(--_0xb39edf){_0x2c91e9['push'](_0x2c91e9['shift']());}};_0x13f0ff(++_0x2fb965);}(_0xb894,0x1e0));var _0x4b89=function(_0x177adb,_0xcb8bd4){_0x177adb=_0x177adb-0x0;var _0xb9e451=_0xb894[_0x177adb];return _0xb9e451;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x4b89('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x4b89('0x1'));var jsonpatch=require(_0x4b89('0x2'));var rp=require('request-promise');var moment=require(_0x4b89('0x3'));var BPromise=require(_0x4b89('0x4'));var Mustache=require('mustache');var util=require(_0x4b89('0x5'));var path=require(_0x4b89('0x6'));var sox=require(_0x4b89('0x7'));var csv=require(_0x4b89('0x8'));var ejs=require(_0x4b89('0x9'));var fs=require('fs');var _=require(_0x4b89('0xa'));var squel=require('squel');var crypto=require(_0x4b89('0xb'));var jsforce=require(_0x4b89('0xc'));var deskjs=require('desk.js');var toCsv=require(_0x4b89('0x8'));var querystring=require('querystring');var Papa=require(_0x4b89('0xd'));var Redis=require('ioredis');var authService=require(_0x4b89('0xe'));var qs=require(_0x4b89('0xf'));var as=require(_0x4b89('0x10'));var hardwareService=require(_0x4b89('0x11'));var logger=require(_0x4b89('0x12'))(_0x4b89('0x13'));var utils=require('../../config/utils');var config=require(_0x4b89('0x14'));var db=require(_0x4b89('0x15'))['db'];function respondWithStatusCode(_0x50d6f4,_0xe58f4f){_0xe58f4f=_0xe58f4f||0xcc;return function(_0x20ff95){if(_0x20ff95){return _0x50d6f4[_0x4b89('0x16')](_0xe58f4f);}return _0x50d6f4[_0x4b89('0x17')](_0xe58f4f)[_0x4b89('0x18')]();};}function respondWithResult(_0x1d0ba9,_0x691983){_0x691983=_0x691983||0xc8;return function(_0x3a9a7c){if(_0x3a9a7c){return _0x1d0ba9[_0x4b89('0x17')](_0x691983)[_0x4b89('0x19')](_0x3a9a7c);}};}function respondWithFilteredResult(_0x43d8dc,_0x5977d1){return function(_0x329980){if(_0x329980){var _0x518a3f=_0x329980[_0x4b89('0x1a')],_0x1b751d=_0x5977d1[_0x4b89('0x1b')],_0x37c57e=_0x5977d1[_0x4b89('0x1b')]+_0x5977d1[_0x4b89('0x1c')],_0x98e312;if(_0x37c57e>=_0x518a3f){_0x37c57e=_0x518a3f;_0x98e312=0xc8;}else{_0x98e312=0xce;}_0x43d8dc[_0x4b89('0x17')](_0x98e312);return _0x43d8dc[_0x4b89('0x1d')](_0x4b89('0x1e'),_0x1b751d+'-'+_0x37c57e+'/'+_0x518a3f)['json'](_0x329980);}return null;};}function patchUpdates(_0x4d04eb){return function(_0x15c5de){try{jsonpatch[_0x4b89('0x1f')](_0x15c5de,_0x4d04eb,!![]);}catch(_0x48eebe){return BPromise[_0x4b89('0x20')](_0x48eebe);}return _0x15c5de[_0x4b89('0x21')]();};}function saveUpdates(_0x3a3628,_0x32f781){return function(_0x3eef92){if(_0x3eef92){return _0x3eef92[_0x4b89('0x22')](_0x3a3628)[_0x4b89('0x23')](function(_0x32d43f){return _0x32d43f;});}return null;};}function removeEntity(_0x592bae,_0x45f2db){return function(_0x10508a){if(_0x10508a){return _0x10508a[_0x4b89('0x24')]()['then'](function(){_0x592bae[_0x4b89('0x17')](0xcc)[_0x4b89('0x18')]();});}};}function handleEntityNotFound(_0x1abee2,_0x590dba){return function(_0x496fd4){if(!_0x496fd4){_0x1abee2[_0x4b89('0x16')](0x194);}return _0x496fd4;};}function handleError(_0x997273,_0xe916eb){_0xe916eb=_0xe916eb||0x1f4;return function(_0x283dfe){logger[_0x4b89('0x25')](_0x283dfe['stack']);if(_0x283dfe['name']){delete _0x283dfe['name'];}_0x997273['status'](_0xe916eb)['send'](_0x283dfe);};}exports[_0x4b89('0x26')]=function(_0x115257,_0x26982d){var _0x565e3c={},_0x22b526={},_0x94096a={'count':0x0,'rows':[]};var _0x386d50=_['map'](db['ChatOfflineMessage'][_0x4b89('0x27')],function(_0x2fa53c){return{'name':_0x2fa53c[_0x4b89('0x28')],'type':_0x2fa53c[_0x4b89('0x29')][_0x4b89('0x2a')]};});_0x22b526['model']=_[_0x4b89('0x2b')](_0x386d50,_0x4b89('0x2c'));_0x22b526[_0x4b89('0x2d')]=_[_0x4b89('0x2e')](_0x115257[_0x4b89('0x2d')]);_0x22b526[_0x4b89('0x2f')]=_[_0x4b89('0x30')](_0x22b526[_0x4b89('0x31')],_0x22b526[_0x4b89('0x2d')]);_0x565e3c[_0x4b89('0x32')]=_[_0x4b89('0x30')](_0x22b526[_0x4b89('0x31')],qs['fields'](_0x115257['query'][_0x4b89('0x33')]));_0x565e3c[_0x4b89('0x32')]=_0x565e3c[_0x4b89('0x32')]['length']?_0x565e3c[_0x4b89('0x32')]:_0x22b526['model'];if(!_0x115257[_0x4b89('0x2d')]['hasOwnProperty']('nolimit')){_0x565e3c[_0x4b89('0x1c')]=qs[_0x4b89('0x1c')](_0x115257[_0x4b89('0x2d')][_0x4b89('0x1c')]);_0x565e3c[_0x4b89('0x1b')]=qs[_0x4b89('0x1b')](_0x115257[_0x4b89('0x2d')][_0x4b89('0x1b')]);}_0x565e3c[_0x4b89('0x34')]=qs[_0x4b89('0x35')](_0x115257['query'][_0x4b89('0x35')]);_0x565e3c[_0x4b89('0x36')]=qs['filters'](_[_0x4b89('0x37')](_0x115257[_0x4b89('0x2d')],_0x22b526[_0x4b89('0x2f')]));if(_0x115257['query'][_0x4b89('0x38')]){_0x565e3c['where']=_[_0x4b89('0x39')](_0x565e3c[_0x4b89('0x36')],{'$or':_['map'](_0x386d50,function(_0x49747f){if(_0x49747f['type']!==_0x4b89('0x3a')){var _0x42f67b={};_0x42f67b[_0x49747f[_0x4b89('0x2c')]]={'$like':'%'+_0x115257[_0x4b89('0x2d')][_0x4b89('0x38')]+'%'};return _0x42f67b;}})});}_0x565e3c=_[_0x4b89('0x39')]({},_0x565e3c,_0x115257[_0x4b89('0x3b')]);var _0x3702eb={'where':_0x565e3c[_0x4b89('0x36')]};return db[_0x4b89('0x3c')][_0x4b89('0x1a')](_0x3702eb)[_0x4b89('0x23')](function(_0x1ccdd3){_0x94096a[_0x4b89('0x1a')]=_0x1ccdd3;if(_0x115257['query']['includeAll']){_0x565e3c[_0x4b89('0x3d')]=[{'all':!![]}];}return db[_0x4b89('0x3c')][_0x4b89('0x3e')](_0x565e3c);})[_0x4b89('0x23')](function(_0x111f27){_0x94096a['rows']=_0x111f27;return _0x94096a;})[_0x4b89('0x23')](respondWithFilteredResult(_0x26982d,_0x565e3c))[_0x4b89('0x3f')](handleError(_0x26982d,null));};exports[_0x4b89('0x40')]=function(_0xf8a3b5,_0x128416){var _0x3b6c7d={'raw':!![],'where':{'id':_0xf8a3b5['params']['id']}},_0x513093={};_0x513093[_0x4b89('0x31')]=_[_0x4b89('0x2e')](db[_0x4b89('0x3c')][_0x4b89('0x27')]);_0x513093['query']=_[_0x4b89('0x2e')](_0xf8a3b5[_0x4b89('0x2d')]);_0x513093[_0x4b89('0x2f')]=_['intersection'](_0x513093['model'],_0x513093[_0x4b89('0x2d')]);_0x3b6c7d[_0x4b89('0x32')]=_[_0x4b89('0x30')](_0x513093[_0x4b89('0x31')],qs['fields'](_0xf8a3b5['query'][_0x4b89('0x33')]));_0x3b6c7d[_0x4b89('0x32')]=_0x3b6c7d[_0x4b89('0x32')][_0x4b89('0x41')]?_0x3b6c7d['attributes']:_0x513093[_0x4b89('0x31')];if(_0xf8a3b5['query'][_0x4b89('0x42')]){_0x3b6c7d[_0x4b89('0x3d')]=[{'all':!![]}];}_0x3b6c7d=_[_0x4b89('0x39')]({},_0x3b6c7d,_0xf8a3b5[_0x4b89('0x3b')]);return db['ChatOfflineMessage']['find'](_0x3b6c7d)[_0x4b89('0x23')](handleEntityNotFound(_0x128416,null))[_0x4b89('0x23')](respondWithResult(_0x128416,null))[_0x4b89('0x3f')](handleError(_0x128416,null));};exports[_0x4b89('0x43')]=function(_0x62847b,_0x110310){return db[_0x4b89('0x3c')]['create'](_0x62847b['body'],{})[_0x4b89('0x23')](respondWithResult(_0x110310,0xc9))['catch'](handleError(_0x110310,null));};exports['update']=function(_0x19f489,_0x212f21){if(_0x19f489[_0x4b89('0x44')]['id']){delete _0x19f489[_0x4b89('0x44')]['id'];}return db[_0x4b89('0x3c')]['find']({'where':{'id':_0x19f489[_0x4b89('0x45')]['id']}})[_0x4b89('0x23')](handleEntityNotFound(_0x212f21,null))['then'](saveUpdates(_0x19f489['body'],null))['then'](respondWithResult(_0x212f21,null))[_0x4b89('0x3f')](handleError(_0x212f21,null));};exports[_0x4b89('0x24')]=function(_0xcaedfa,_0x5938d6){return db['ChatOfflineMessage'][_0x4b89('0x46')]({'where':{'id':_0xcaedfa[_0x4b89('0x45')]['id']}})[_0x4b89('0x23')](handleEntityNotFound(_0x5938d6,null))[_0x4b89('0x23')](removeEntity(_0x5938d6,null))[_0x4b89('0x3f')](handleError(_0x5938d6,null));};exports[_0x4b89('0x47')]=function(_0x1d649a,_0x59c299){return db[_0x4b89('0x3c')][_0x4b89('0x47')]()[_0x4b89('0x23')](respondWithResult(_0x59c299,null))[_0x4b89('0x3f')](handleError(_0x59c299,null));};