Built motion from commit (unavailable).|2.5.27
[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 _0x8f3b=['find','create','body','eml-format','zip-dir','request-promise','moment','bluebird','mustache','util','path','ejs','lodash','squel','crypto','jsforce','desk.js','to-csv','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','reject','save','update','destroy','then','stack','name','index','MailServerOut','fieldName','type','model','map','query','keys','filters','attributes','intersection','fields','length','hasOwnProperty','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','include','findAll','catch','show','params'];(function(_0x59e8b3,_0x2f27da){var _0x3b6260=function(_0x4862f9){while(--_0x4862f9){_0x59e8b3['push'](_0x59e8b3['shift']());}};_0x3b6260(++_0x2f27da);}(_0x8f3b,0x95));var _0xb8f3=function(_0x15de6b,_0x3bcdb2){_0x15de6b=_0x15de6b-0x0;var _0x37915a=_0x8f3b[_0x15de6b];return _0x37915a;};'use strict';var emlformat=require(_0xb8f3('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xb8f3('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0xb8f3('0x2'));var moment=require(_0xb8f3('0x3'));var BPromise=require(_0xb8f3('0x4'));var Mustache=require(_0xb8f3('0x5'));var util=require(_0xb8f3('0x6'));var path=require(_0xb8f3('0x7'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0xb8f3('0x8'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xb8f3('0x9'));var squel=require(_0xb8f3('0xa'));var crypto=require(_0xb8f3('0xb'));var jsforce=require(_0xb8f3('0xc'));var deskjs=require(_0xb8f3('0xd'));var toCsv=require(_0xb8f3('0xe'));var querystring=require(_0xb8f3('0xf'));var Papa=require('papaparse');var Redis=require(_0xb8f3('0x10'));var authService=require(_0xb8f3('0x11'));var qs=require(_0xb8f3('0x12'));var as=require(_0xb8f3('0x13'));var hardwareService=require(_0xb8f3('0x14'));var logger=require('../../config/logger')(_0xb8f3('0x15'));var utils=require(_0xb8f3('0x16'));var config=require(_0xb8f3('0x17'));var licenseUtil=require(_0xb8f3('0x18'));var db=require(_0xb8f3('0x19'))['db'];function respondWithStatusCode(_0x1537cb,_0x5e525a){_0x5e525a=_0x5e525a||0xcc;return function(_0x2944bc){if(_0x2944bc){return _0x1537cb[_0xb8f3('0x1a')](_0x5e525a);}return _0x1537cb[_0xb8f3('0x1b')](_0x5e525a)[_0xb8f3('0x1c')]();};}function respondWithResult(_0x11fd6a,_0x1f991c){_0x1f991c=_0x1f991c||0xc8;return function(_0x1f48ee){if(_0x1f48ee){return _0x11fd6a[_0xb8f3('0x1b')](_0x1f991c)[_0xb8f3('0x1d')](_0x1f48ee);}};}function respondWithFilteredResult(_0x37882e,_0x5b49af){return function(_0x595789){if(_0x595789){var _0x2510ce=_0x595789[_0xb8f3('0x1e')],_0x3a1a00=_0x5b49af[_0xb8f3('0x1f')],_0x38f756=_0x5b49af['offset']+_0x5b49af[_0xb8f3('0x20')],_0x539198;if(_0x38f756>=_0x2510ce){_0x38f756=_0x2510ce;_0x539198=0xc8;}else{_0x539198=0xce;}_0x37882e[_0xb8f3('0x1b')](_0x539198);return _0x37882e[_0xb8f3('0x21')](_0xb8f3('0x22'),_0x3a1a00+'-'+_0x38f756+'/'+_0x2510ce)[_0xb8f3('0x1d')](_0x595789);}return null;};}function patchUpdates(_0x31e4e9){return function(_0x23d474){try{jsonpatch[_0xb8f3('0x23')](_0x23d474,_0x31e4e9,!![]);}catch(_0x2e0954){return BPromise[_0xb8f3('0x24')](_0x2e0954);}return _0x23d474[_0xb8f3('0x25')]();};}function saveUpdates(_0x363e0f,_0x28e440){return function(_0x17e28d){if(_0x17e28d){return _0x17e28d[_0xb8f3('0x26')](_0x363e0f)['then'](function(_0x3e73d3){return _0x3e73d3;});}return null;};}function removeEntity(_0x22dae5,_0x547928){return function(_0x5acef8){if(_0x5acef8){return _0x5acef8[_0xb8f3('0x27')]()[_0xb8f3('0x28')](function(){_0x22dae5[_0xb8f3('0x1b')](0xcc)[_0xb8f3('0x1c')]();});}};}function handleEntityNotFound(_0x4fa5d1,_0x1ef694){return function(_0x26b88c){if(!_0x26b88c){_0x4fa5d1[_0xb8f3('0x1a')](0x194);}return _0x26b88c;};}function handleError(_0x30a08a,_0x106802){_0x106802=_0x106802||0x1f4;return function(_0x281880){logger['error'](_0x281880[_0xb8f3('0x29')]);if(_0x281880[_0xb8f3('0x2a')]){delete _0x281880[_0xb8f3('0x2a')];}_0x30a08a['status'](_0x106802)['send'](_0x281880);};}exports[_0xb8f3('0x2b')]=function(_0x2a6925,_0x2e53dd){var _0x5990f4={},_0x2377a2={},_0x2466b1={'count':0x0,'rows':[]};var _0xf32249=_['map'](db[_0xb8f3('0x2c')]['rawAttributes'],function(_0x2630c0){return{'name':_0x2630c0[_0xb8f3('0x2d')],'type':_0x2630c0[_0xb8f3('0x2e')]['key']};});_0x2377a2[_0xb8f3('0x2f')]=_[_0xb8f3('0x30')](_0xf32249,_0xb8f3('0x2a'));_0x2377a2[_0xb8f3('0x31')]=_[_0xb8f3('0x32')](_0x2a6925[_0xb8f3('0x31')]);_0x2377a2[_0xb8f3('0x33')]=_['intersection'](_0x2377a2[_0xb8f3('0x2f')],_0x2377a2[_0xb8f3('0x31')]);_0x5990f4[_0xb8f3('0x34')]=_[_0xb8f3('0x35')](_0x2377a2[_0xb8f3('0x2f')],qs['fields'](_0x2a6925[_0xb8f3('0x31')][_0xb8f3('0x36')]));_0x5990f4[_0xb8f3('0x34')]=_0x5990f4[_0xb8f3('0x34')][_0xb8f3('0x37')]?_0x5990f4[_0xb8f3('0x34')]:_0x2377a2['model'];if(!_0x2a6925[_0xb8f3('0x31')][_0xb8f3('0x38')]('nolimit')){_0x5990f4[_0xb8f3('0x20')]=qs[_0xb8f3('0x20')](_0x2a6925[_0xb8f3('0x31')][_0xb8f3('0x20')]);_0x5990f4[_0xb8f3('0x1f')]=qs['offset'](_0x2a6925['query'][_0xb8f3('0x1f')]);}_0x5990f4['order']=qs[_0xb8f3('0x39')](_0x2a6925[_0xb8f3('0x31')]['sort']);_0x5990f4[_0xb8f3('0x3a')]=qs[_0xb8f3('0x33')](_[_0xb8f3('0x3b')](_0x2a6925[_0xb8f3('0x31')],_0x2377a2['filters']),_0xf32249);if(_0x2a6925[_0xb8f3('0x31')][_0xb8f3('0x3c')]){_0x5990f4[_0xb8f3('0x3a')]=_[_0xb8f3('0x3d')](_0x5990f4[_0xb8f3('0x3a')],{'$or':_[_0xb8f3('0x30')](_0xf32249,function(_0x4c61f5){if(_0x4c61f5[_0xb8f3('0x2e')]!==_0xb8f3('0x3e')){var _0x152bba={};_0x152bba[_0x4c61f5[_0xb8f3('0x2a')]]={'$like':'%'+_0x2a6925[_0xb8f3('0x31')][_0xb8f3('0x3c')]+'%'};return _0x152bba;}})});}_0x5990f4=_[_0xb8f3('0x3d')]({},_0x5990f4,_0x2a6925[_0xb8f3('0x3f')]);var _0x57d4aa={'where':_0x5990f4[_0xb8f3('0x3a')]};return db[_0xb8f3('0x2c')][_0xb8f3('0x1e')](_0x57d4aa)[_0xb8f3('0x28')](function(_0x3d4b7e){_0x2466b1[_0xb8f3('0x1e')]=_0x3d4b7e;if(_0x2a6925[_0xb8f3('0x31')][_0xb8f3('0x40')]){_0x5990f4[_0xb8f3('0x41')]=[{'all':!![]}];}return db[_0xb8f3('0x2c')][_0xb8f3('0x42')](_0x5990f4);})[_0xb8f3('0x28')](function(_0x2743f8){_0x2466b1['rows']=_0x2743f8;return _0x2466b1;})[_0xb8f3('0x28')](respondWithFilteredResult(_0x2e53dd,_0x5990f4))[_0xb8f3('0x43')](handleError(_0x2e53dd,null));};exports[_0xb8f3('0x44')]=function(_0x342ab8,_0xb0d91a){var _0x3ea583={'raw':!![],'where':{'id':_0x342ab8[_0xb8f3('0x45')]['id']}},_0x3e285a={};_0x3e285a[_0xb8f3('0x2f')]=_[_0xb8f3('0x32')](db[_0xb8f3('0x2c')]['rawAttributes']);_0x3e285a['query']=_[_0xb8f3('0x32')](_0x342ab8[_0xb8f3('0x31')]);_0x3e285a[_0xb8f3('0x33')]=_[_0xb8f3('0x35')](_0x3e285a[_0xb8f3('0x2f')],_0x3e285a['query']);_0x3ea583[_0xb8f3('0x34')]=_[_0xb8f3('0x35')](_0x3e285a[_0xb8f3('0x2f')],qs[_0xb8f3('0x36')](_0x342ab8[_0xb8f3('0x31')][_0xb8f3('0x36')]));_0x3ea583[_0xb8f3('0x34')]=_0x3ea583[_0xb8f3('0x34')][_0xb8f3('0x37')]?_0x3ea583[_0xb8f3('0x34')]:_0x3e285a[_0xb8f3('0x2f')];if(_0x342ab8[_0xb8f3('0x31')][_0xb8f3('0x40')]){_0x3ea583[_0xb8f3('0x41')]=[{'all':!![]}];}_0x3ea583=_[_0xb8f3('0x3d')]({},_0x3ea583,_0x342ab8[_0xb8f3('0x3f')]);return db[_0xb8f3('0x2c')][_0xb8f3('0x46')](_0x3ea583)[_0xb8f3('0x28')](handleEntityNotFound(_0xb0d91a,null))[_0xb8f3('0x28')](respondWithResult(_0xb0d91a,null))[_0xb8f3('0x43')](handleError(_0xb0d91a,null));};exports[_0xb8f3('0x47')]=function(_0x477798,_0x243bbb){return db['MailServerOut'][_0xb8f3('0x47')](_0x477798[_0xb8f3('0x48')],{})[_0xb8f3('0x28')](respondWithResult(_0x243bbb,0xc9))[_0xb8f3('0x43')](handleError(_0x243bbb,null));};exports[_0xb8f3('0x26')]=function(_0x33fe86,_0x2720d0){if(_0x33fe86[_0xb8f3('0x48')]['id']){delete _0x33fe86[_0xb8f3('0x48')]['id'];}return db[_0xb8f3('0x2c')][_0xb8f3('0x46')]({'where':{'id':_0x33fe86[_0xb8f3('0x45')]['id']}})[_0xb8f3('0x28')](handleEntityNotFound(_0x2720d0,null))[_0xb8f3('0x28')](saveUpdates(_0x33fe86[_0xb8f3('0x48')],null))[_0xb8f3('0x28')](respondWithResult(_0x2720d0,null))[_0xb8f3('0x43')](handleError(_0x2720d0,null));};exports[_0xb8f3('0x27')]=function(_0x541094,_0x2d2d4c){return db[_0xb8f3('0x2c')][_0xb8f3('0x46')]({'where':{'id':_0x541094[_0xb8f3('0x45')]['id']}})['then'](handleEntityNotFound(_0x2d2d4c,null))[_0xb8f3('0x28')](removeEntity(_0x2d2d4c,null))[_0xb8f3('0x43')](handleError(_0x2d2d4c,null));};