Built motion from commit (unavailable).|2.4.4
[motion2.git] / server / api / mailServerOut / mailServerOut.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 _0x14a0=['params','find','create','body','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','path','sox','to-csv','squel','crypto','jsforce','querystring','../../config/license/hardware','api','../../config/utils','../../mysqldb','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','reject','save','update','then','destroy','error','stack','name','send','index','MailServerOut','rawAttributes','keys','query','filters','intersection','model','fields','attributes','length','nolimit','order','sort','where','pick','merge','map','type','key','VIRTUAL','field','filter','options','include','rows','catch','show'];(function(_0x86b219,_0x43038f){var _0x1f320c=function(_0x8cd63f){while(--_0x8cd63f){_0x86b219['push'](_0x86b219['shift']());}};_0x1f320c(++_0x43038f);}(_0x14a0,0x8e));var _0x014a=function(_0x179098,_0x3f3bb5){_0x179098=_0x179098-0x0;var _0x17a097=_0x14a0[_0x179098];return _0x17a097;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x014a('0x0'));var rimraf=require(_0x014a('0x1'));var zipdir=require(_0x014a('0x2'));var jsonpatch=require(_0x014a('0x3'));var rp=require(_0x014a('0x4'));var moment=require(_0x014a('0x5'));var BPromise=require(_0x014a('0x6'));var Mustache=require('mustache');var util=require('util');var path=require(_0x014a('0x7'));var sox=require(_0x014a('0x8'));var csv=require(_0x014a('0x9'));var ejs=require('ejs');var fs=require('fs');var _=require('lodash');var squel=require(_0x014a('0xa'));var crypto=require(_0x014a('0xb'));var jsforce=require(_0x014a('0xc'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0x014a('0xd'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var hardwareService=require(_0x014a('0xe'));var logger=require('../../config/logger')(_0x014a('0xf'));var utils=require(_0x014a('0x10'));var config=require('../../config/environment');var db=require(_0x014a('0x11'))['db'];function respondWithStatusCode(_0x166677,_0x2c84ad){_0x2c84ad=_0x2c84ad||0xcc;return function(_0x43bfeb){if(_0x43bfeb){return _0x166677[_0x014a('0x12')](_0x2c84ad);}return _0x166677[_0x014a('0x13')](_0x2c84ad)[_0x014a('0x14')]();};}function respondWithResult(_0x23c917,_0x1e5366){_0x1e5366=_0x1e5366||0xc8;return function(_0x71535d){if(_0x71535d){return _0x23c917[_0x014a('0x13')](_0x1e5366)[_0x014a('0x15')](_0x71535d);}};}function respondWithFilteredResult(_0x4fe87c,_0x130d13){return function(_0x3cf92f){if(_0x3cf92f){var _0x59f207=_0x3cf92f[_0x014a('0x16')],_0x3a836f=_0x130d13[_0x014a('0x17')],_0x128c46=_0x130d13[_0x014a('0x17')]+_0x130d13[_0x014a('0x18')],_0x59a4ea;if(_0x128c46>=_0x59f207){_0x128c46=_0x59f207;_0x59a4ea=0xc8;}else{_0x59a4ea=0xce;}_0x4fe87c[_0x014a('0x13')](_0x59a4ea);return _0x4fe87c[_0x014a('0x19')](_0x014a('0x1a'),_0x3a836f+'-'+_0x128c46+'/'+_0x59f207)[_0x014a('0x15')](_0x3cf92f);}return null;};}function patchUpdates(_0x16490a){return function(_0x3b9341){try{jsonpatch[_0x014a('0x1b')](_0x3b9341,_0x16490a,!![]);}catch(_0x89e132){return BPromise[_0x014a('0x1c')](_0x89e132);}return _0x3b9341[_0x014a('0x1d')]();};}function saveUpdates(_0x5c69c5,_0x359903){return function(_0x109a9c){if(_0x109a9c){return _0x109a9c[_0x014a('0x1e')](_0x5c69c5)[_0x014a('0x1f')](function(_0xc9a563){return _0xc9a563;});}return null;};}function removeEntity(_0x2d7ccd,_0x37c3d1){return function(_0x3dd2d0){if(_0x3dd2d0){return _0x3dd2d0[_0x014a('0x20')]()['then'](function(){_0x2d7ccd[_0x014a('0x13')](0xcc)['end']();});}};}function handleEntityNotFound(_0x1a1318,_0x26718b){return function(_0x44d921){if(!_0x44d921){_0x1a1318[_0x014a('0x12')](0x194);}return _0x44d921;};}function handleError(_0x2b3c10,_0x113b12){_0x113b12=_0x113b12||0x1f4;return function(_0x3fec9f){logger[_0x014a('0x21')](_0x3fec9f[_0x014a('0x22')]);if(_0x3fec9f['name']){delete _0x3fec9f[_0x014a('0x23')];}_0x2b3c10['status'](_0x113b12)[_0x014a('0x24')](_0x3fec9f);};}exports[_0x014a('0x25')]=function(_0x4f1c44,_0x4ee195){var _0x9a901f={},_0x3f9719={},_0x143346={'count':0x0,'rows':[]};var _0x5ed71b=db[_0x014a('0x26')][_0x014a('0x27')];_0x3f9719['model']=_[_0x014a('0x28')](_0x5ed71b);_0x3f9719[_0x014a('0x29')]=_['keys'](_0x4f1c44['query']);_0x3f9719[_0x014a('0x2a')]=_[_0x014a('0x2b')](_0x3f9719[_0x014a('0x2c')],_0x3f9719[_0x014a('0x29')]);_0x9a901f['attributes']=_[_0x014a('0x2b')](_0x3f9719[_0x014a('0x2c')],qs[_0x014a('0x2d')](_0x4f1c44[_0x014a('0x29')][_0x014a('0x2d')]));_0x9a901f[_0x014a('0x2e')]=_0x9a901f[_0x014a('0x2e')][_0x014a('0x2f')]?_0x9a901f[_0x014a('0x2e')]:_0x3f9719[_0x014a('0x2c')];if(!_0x4f1c44[_0x014a('0x29')]['hasOwnProperty'](_0x014a('0x30'))){_0x9a901f[_0x014a('0x18')]=qs[_0x014a('0x18')](_0x4f1c44[_0x014a('0x29')][_0x014a('0x18')]);_0x9a901f[_0x014a('0x17')]=qs[_0x014a('0x17')](_0x4f1c44['query'][_0x014a('0x17')]);}_0x9a901f[_0x014a('0x31')]=qs['sort'](_0x4f1c44[_0x014a('0x29')][_0x014a('0x32')]);_0x9a901f[_0x014a('0x33')]=qs[_0x014a('0x2a')](_[_0x014a('0x34')](_0x4f1c44[_0x014a('0x29')],_0x3f9719[_0x014a('0x2a')]));if(_0x4f1c44[_0x014a('0x29')]['filter']){_0x9a901f[_0x014a('0x33')]=_[_0x014a('0x35')](_0x9a901f[_0x014a('0x33')],{'$or':_[_0x014a('0x36')](_0x5ed71b,function(_0x5127f3){if(_0x5127f3[_0x014a('0x37')][_0x014a('0x38')]!==_0x014a('0x39')){var _0x157bd0={};_0x157bd0[_0x5127f3[_0x014a('0x3a')]]={'$like':'%'+_0x4f1c44[_0x014a('0x29')][_0x014a('0x3b')]+'%'};return _0x157bd0;}})});}_0x9a901f=_[_0x014a('0x35')]({},_0x9a901f,_0x4f1c44[_0x014a('0x3c')]);var _0x5f2f66={'where':_0x9a901f[_0x014a('0x33')]};return db['MailServerOut'][_0x014a('0x16')](_0x5f2f66)[_0x014a('0x1f')](function(_0x44958f){_0x143346[_0x014a('0x16')]=_0x44958f;if(_0x4f1c44[_0x014a('0x29')]['includeAll']){_0x9a901f[_0x014a('0x3d')]=[{'all':!![]}];}return db[_0x014a('0x26')]['findAll'](_0x9a901f);})[_0x014a('0x1f')](function(_0x2990df){_0x143346[_0x014a('0x3e')]=_0x2990df;return _0x143346;})[_0x014a('0x1f')](respondWithFilteredResult(_0x4ee195,_0x9a901f))[_0x014a('0x3f')](handleError(_0x4ee195,null));};exports[_0x014a('0x40')]=function(_0x17b1b6,_0x764fbe){var _0x2beddc={'raw':!![],'where':{'id':_0x17b1b6[_0x014a('0x41')]['id']}},_0x537bde={};_0x537bde[_0x014a('0x2c')]=_[_0x014a('0x28')](db[_0x014a('0x26')]['rawAttributes']);_0x537bde[_0x014a('0x29')]=_[_0x014a('0x28')](_0x17b1b6[_0x014a('0x29')]);_0x537bde[_0x014a('0x2a')]=_[_0x014a('0x2b')](_0x537bde[_0x014a('0x2c')],_0x537bde['query']);_0x2beddc[_0x014a('0x2e')]=_[_0x014a('0x2b')](_0x537bde['model'],qs[_0x014a('0x2d')](_0x17b1b6[_0x014a('0x29')][_0x014a('0x2d')]));_0x2beddc['attributes']=_0x2beddc[_0x014a('0x2e')]['length']?_0x2beddc['attributes']:_0x537bde[_0x014a('0x2c')];if(_0x17b1b6[_0x014a('0x29')]['includeAll']){_0x2beddc[_0x014a('0x3d')]=[{'all':!![]}];}_0x2beddc=_[_0x014a('0x35')]({},_0x2beddc,_0x17b1b6[_0x014a('0x3c')]);return db[_0x014a('0x26')][_0x014a('0x42')](_0x2beddc)[_0x014a('0x1f')](handleEntityNotFound(_0x764fbe,null))['then'](respondWithResult(_0x764fbe,null))[_0x014a('0x3f')](handleError(_0x764fbe,null));};exports[_0x014a('0x43')]=function(_0xb29df2,_0x52677e){return db['MailServerOut'][_0x014a('0x43')](_0xb29df2['body'],{})['then'](respondWithResult(_0x52677e,0xc9))[_0x014a('0x3f')](handleError(_0x52677e,null));};exports['update']=function(_0x2a4679,_0x45caee){if(_0x2a4679[_0x014a('0x44')]['id']){delete _0x2a4679['body']['id'];}return db[_0x014a('0x26')][_0x014a('0x42')]({'where':{'id':_0x2a4679[_0x014a('0x41')]['id']}})[_0x014a('0x1f')](handleEntityNotFound(_0x45caee,null))[_0x014a('0x1f')](saveUpdates(_0x2a4679[_0x014a('0x44')],null))['then'](respondWithResult(_0x45caee,null))[_0x014a('0x3f')](handleError(_0x45caee,null));};exports[_0x014a('0x20')]=function(_0x5a861c,_0x1a4df9){return db[_0x014a('0x26')][_0x014a('0x42')]({'where':{'id':_0x5a861c[_0x014a('0x41')]['id']}})[_0x014a('0x1f')](handleEntityNotFound(_0x1a4df9,null))[_0x014a('0x1f')](removeEntity(_0x1a4df9,null))[_0x014a('0x3f')](handleError(_0x1a4df9,null));};