7f255406a577f197898e9f2f639c4681604e8ef4
[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 _0xb091=['filter','where','merge','VIRTUAL','rows','catch','show','params','includeAll','include','options','create','body','destroy','find','describe','eml-format','rimraf','zip-dir','fast-json-patch','moment','util','path','to-csv','ejs','lodash','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','sendStatus','status','end','json','count','offset','limit','Content-Range','apply','reject','update','then','stack','name','send','index','map','ChatOfflineMessage','rawAttributes','fieldName','type','model','query','keys','filters','intersection','fields','attributes','length','hasOwnProperty','order','sort'];(function(_0x460ece,_0x3312d3){var _0x29013c=function(_0xf1ae9e){while(--_0xf1ae9e){_0x460ece['push'](_0x460ece['shift']());}};_0x29013c(++_0x3312d3);}(_0xb091,0x16e));var _0x1b09=function(_0x41e1d9,_0x1dbb7d){_0x41e1d9=_0x41e1d9-0x0;var _0x5cff7c=_0xb091[_0x41e1d9];return _0x5cff7c;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x1b09('0x0'));var rimraf=require(_0x1b09('0x1'));var zipdir=require(_0x1b09('0x2'));var jsonpatch=require(_0x1b09('0x3'));var rp=require('request-promise');var moment=require(_0x1b09('0x4'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x1b09('0x5'));var path=require(_0x1b09('0x6'));var sox=require('sox');var csv=require(_0x1b09('0x7'));var ejs=require(_0x1b09('0x8'));var fs=require('fs');var _=require(_0x1b09('0x9'));var squel=require('squel');var crypto=require(_0x1b09('0xa'));var jsforce=require(_0x1b09('0xb'));var deskjs=require(_0x1b09('0xc'));var toCsv=require(_0x1b09('0x7'));var querystring=require(_0x1b09('0xd'));var Papa=require(_0x1b09('0xe'));var Redis=require(_0x1b09('0xf'));var authService=require(_0x1b09('0x10'));var qs=require(_0x1b09('0x11'));var as=require(_0x1b09('0x12'));var hardwareService=require(_0x1b09('0x13'));var logger=require('../../config/logger')(_0x1b09('0x14'));var utils=require(_0x1b09('0x15'));var config=require('../../config/environment');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x3839d9,_0x4284ad){_0x4284ad=_0x4284ad||0xcc;return function(_0x3ae4a0){if(_0x3ae4a0){return _0x3839d9[_0x1b09('0x16')](_0x4284ad);}return _0x3839d9[_0x1b09('0x17')](_0x4284ad)[_0x1b09('0x18')]();};}function respondWithResult(_0x1fd3bc,_0x58392d){_0x58392d=_0x58392d||0xc8;return function(_0x37fdb2){if(_0x37fdb2){return _0x1fd3bc['status'](_0x58392d)[_0x1b09('0x19')](_0x37fdb2);}};}function respondWithFilteredResult(_0x27a731,_0x11ab46){return function(_0x37673e){if(_0x37673e){var _0x10b7eb=_0x37673e[_0x1b09('0x1a')],_0x1dc96b=_0x11ab46[_0x1b09('0x1b')],_0x64689a=_0x11ab46[_0x1b09('0x1b')]+_0x11ab46[_0x1b09('0x1c')],_0x33129b;if(_0x64689a>=_0x10b7eb){_0x64689a=_0x10b7eb;_0x33129b=0xc8;}else{_0x33129b=0xce;}_0x27a731[_0x1b09('0x17')](_0x33129b);return _0x27a731['set'](_0x1b09('0x1d'),_0x1dc96b+'-'+_0x64689a+'/'+_0x10b7eb)[_0x1b09('0x19')](_0x37673e);}return null;};}function patchUpdates(_0x5483ef){return function(_0x5cf855){try{jsonpatch[_0x1b09('0x1e')](_0x5cf855,_0x5483ef,!![]);}catch(_0x5debd9){return BPromise[_0x1b09('0x1f')](_0x5debd9);}return _0x5cf855['save']();};}function saveUpdates(_0x136697,_0x4b2eab){return function(_0x2d6dba){if(_0x2d6dba){return _0x2d6dba[_0x1b09('0x20')](_0x136697)[_0x1b09('0x21')](function(_0x24889f){return _0x24889f;});}return null;};}function removeEntity(_0x363e78,_0x39e569){return function(_0x48b803){if(_0x48b803){return _0x48b803['destroy']()[_0x1b09('0x21')](function(){_0x363e78[_0x1b09('0x17')](0xcc)['end']();});}};}function handleEntityNotFound(_0x3c0496,_0x11d0d5){return function(_0x6e132c){if(!_0x6e132c){_0x3c0496[_0x1b09('0x16')](0x194);}return _0x6e132c;};}function handleError(_0x5a9677,_0xe0d931){_0xe0d931=_0xe0d931||0x1f4;return function(_0x15be49){logger['error'](_0x15be49[_0x1b09('0x22')]);if(_0x15be49[_0x1b09('0x23')]){delete _0x15be49['name'];}_0x5a9677[_0x1b09('0x17')](_0xe0d931)[_0x1b09('0x24')](_0x15be49);};}exports[_0x1b09('0x25')]=function(_0x1b8aaa,_0x547fbb){var _0xb3cf07={},_0x3cdbc5={},_0x532589={'count':0x0,'rows':[]};var _0x2d1ec0=_[_0x1b09('0x26')](db[_0x1b09('0x27')][_0x1b09('0x28')],function(_0x11098e){return{'name':_0x11098e[_0x1b09('0x29')],'type':_0x11098e[_0x1b09('0x2a')]['key']};});_0x3cdbc5[_0x1b09('0x2b')]=_[_0x1b09('0x26')](_0x2d1ec0,'name');_0x3cdbc5[_0x1b09('0x2c')]=_[_0x1b09('0x2d')](_0x1b8aaa[_0x1b09('0x2c')]);_0x3cdbc5[_0x1b09('0x2e')]=_[_0x1b09('0x2f')](_0x3cdbc5['model'],_0x3cdbc5[_0x1b09('0x2c')]);_0xb3cf07['attributes']=_[_0x1b09('0x2f')](_0x3cdbc5['model'],qs[_0x1b09('0x30')](_0x1b8aaa[_0x1b09('0x2c')][_0x1b09('0x30')]));_0xb3cf07[_0x1b09('0x31')]=_0xb3cf07[_0x1b09('0x31')][_0x1b09('0x32')]?_0xb3cf07[_0x1b09('0x31')]:_0x3cdbc5[_0x1b09('0x2b')];if(!_0x1b8aaa[_0x1b09('0x2c')][_0x1b09('0x33')]('nolimit')){_0xb3cf07[_0x1b09('0x1c')]=qs[_0x1b09('0x1c')](_0x1b8aaa[_0x1b09('0x2c')]['limit']);_0xb3cf07[_0x1b09('0x1b')]=qs[_0x1b09('0x1b')](_0x1b8aaa[_0x1b09('0x2c')][_0x1b09('0x1b')]);}_0xb3cf07[_0x1b09('0x34')]=qs[_0x1b09('0x35')](_0x1b8aaa[_0x1b09('0x2c')][_0x1b09('0x35')]);_0xb3cf07['where']=qs[_0x1b09('0x2e')](_['pick'](_0x1b8aaa[_0x1b09('0x2c')],_0x3cdbc5['filters']),_0x2d1ec0);if(_0x1b8aaa[_0x1b09('0x2c')][_0x1b09('0x36')]){_0xb3cf07[_0x1b09('0x37')]=_[_0x1b09('0x38')](_0xb3cf07[_0x1b09('0x37')],{'$or':_[_0x1b09('0x26')](_0x2d1ec0,function(_0x659067){if(_0x659067[_0x1b09('0x2a')]!==_0x1b09('0x39')){var _0x68fbfb={};_0x68fbfb[_0x659067[_0x1b09('0x23')]]={'$like':'%'+_0x1b8aaa[_0x1b09('0x2c')][_0x1b09('0x36')]+'%'};return _0x68fbfb;}})});}_0xb3cf07=_['merge']({},_0xb3cf07,_0x1b8aaa['options']);var _0x23ce9a={'where':_0xb3cf07[_0x1b09('0x37')]};return db[_0x1b09('0x27')][_0x1b09('0x1a')](_0x23ce9a)[_0x1b09('0x21')](function(_0x219258){_0x532589[_0x1b09('0x1a')]=_0x219258;if(_0x1b8aaa[_0x1b09('0x2c')]['includeAll']){_0xb3cf07['include']=[{'all':!![]}];}return db[_0x1b09('0x27')]['findAll'](_0xb3cf07);})[_0x1b09('0x21')](function(_0x31dbfd){_0x532589[_0x1b09('0x3a')]=_0x31dbfd;return _0x532589;})['then'](respondWithFilteredResult(_0x547fbb,_0xb3cf07))[_0x1b09('0x3b')](handleError(_0x547fbb,null));};exports[_0x1b09('0x3c')]=function(_0x202b18,_0x58c7c2){var _0x3edcde={'raw':!![],'where':{'id':_0x202b18[_0x1b09('0x3d')]['id']}},_0x6ae923={};_0x6ae923[_0x1b09('0x2b')]=_['keys'](db[_0x1b09('0x27')][_0x1b09('0x28')]);_0x6ae923['query']=_[_0x1b09('0x2d')](_0x202b18[_0x1b09('0x2c')]);_0x6ae923['filters']=_['intersection'](_0x6ae923['model'],_0x6ae923['query']);_0x3edcde[_0x1b09('0x31')]=_[_0x1b09('0x2f')](_0x6ae923[_0x1b09('0x2b')],qs['fields'](_0x202b18[_0x1b09('0x2c')][_0x1b09('0x30')]));_0x3edcde['attributes']=_0x3edcde[_0x1b09('0x31')][_0x1b09('0x32')]?_0x3edcde[_0x1b09('0x31')]:_0x6ae923[_0x1b09('0x2b')];if(_0x202b18[_0x1b09('0x2c')][_0x1b09('0x3e')]){_0x3edcde[_0x1b09('0x3f')]=[{'all':!![]}];}_0x3edcde=_[_0x1b09('0x38')]({},_0x3edcde,_0x202b18[_0x1b09('0x40')]);return db[_0x1b09('0x27')]['find'](_0x3edcde)[_0x1b09('0x21')](handleEntityNotFound(_0x58c7c2,null))[_0x1b09('0x21')](respondWithResult(_0x58c7c2,null))[_0x1b09('0x3b')](handleError(_0x58c7c2,null));};exports['create']=function(_0x2ab6ca,_0x4bf205){return db[_0x1b09('0x27')][_0x1b09('0x41')](_0x2ab6ca['body'],{})[_0x1b09('0x21')](respondWithResult(_0x4bf205,0xc9))[_0x1b09('0x3b')](handleError(_0x4bf205,null));};exports[_0x1b09('0x20')]=function(_0x25443a,_0x13294c){if(_0x25443a[_0x1b09('0x42')]['id']){delete _0x25443a['body']['id'];}return db[_0x1b09('0x27')]['find']({'where':{'id':_0x25443a[_0x1b09('0x3d')]['id']}})['then'](handleEntityNotFound(_0x13294c,null))['then'](saveUpdates(_0x25443a[_0x1b09('0x42')],null))[_0x1b09('0x21')](respondWithResult(_0x13294c,null))[_0x1b09('0x3b')](handleError(_0x13294c,null));};exports[_0x1b09('0x43')]=function(_0x66ca28,_0x3e7046){return db[_0x1b09('0x27')][_0x1b09('0x44')]({'where':{'id':_0x66ca28['params']['id']}})[_0x1b09('0x21')](handleEntityNotFound(_0x3e7046,null))[_0x1b09('0x21')](removeEntity(_0x3e7046,null))[_0x1b09('0x3b')](handleError(_0x3e7046,null));};exports['describe']=function(_0x55df13,_0x2b7552){return db['ChatOfflineMessage'][_0x1b09('0x45')]()[_0x1b09('0x21')](respondWithResult(_0x2b7552,null))['catch'](handleError(_0x2b7552,null));};