Built motion from commit 953226e6.|2.6.32
[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 _0x3382=['apply','reject','save','then','destroy','sendStatus','error','stack','name','send','index','map','rawAttributes','fieldName','type','key','model','query','keys','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','filters','pick','filter','where','merge','VIRTUAL','options','MailServerOut','includeAll','include','findAll','rows','show','params','find','catch','create','body','update','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','util','path','to-csv','fs-extra','lodash','squel','crypto','jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','end','json','offset','undefined','limit','count','status','Content-Range'];(function(_0x447ef1,_0x374cd2){var _0x3d72ec=function(_0x3e10b){while(--_0x3e10b){_0x447ef1['push'](_0x447ef1['shift']());}};_0x3d72ec(++_0x374cd2);}(_0x3382,0xcc));var _0x2338=function(_0x92ec9c,_0x5e4216){_0x92ec9c=_0x92ec9c-0x0;var _0x5f06d6=_0x3382[_0x92ec9c];return _0x5f06d6;};'use strict';var emlformat=require(_0x2338('0x0'));var rimraf=require(_0x2338('0x1'));var zipdir=require(_0x2338('0x2'));var jsonpatch=require(_0x2338('0x3'));var rp=require(_0x2338('0x4'));var moment=require('moment');var BPromise=require(_0x2338('0x5'));var Mustache=require('mustache');var util=require(_0x2338('0x6'));var path=require(_0x2338('0x7'));var sox=require('sox');var csv=require(_0x2338('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x2338('0x9'));var _=require(_0x2338('0xa'));var squel=require(_0x2338('0xb'));var crypto=require(_0x2338('0xc'));var jsforce=require(_0x2338('0xd'));var deskjs=require(_0x2338('0xe'));var toCsv=require(_0x2338('0x8'));var querystring=require('querystring');var Papa=require(_0x2338('0xf'));var Redis=require(_0x2338('0x10'));var authService=require(_0x2338('0x11'));var qs=require(_0x2338('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x2338('0x13'));var logger=require(_0x2338('0x14'))(_0x2338('0x15'));var utils=require(_0x2338('0x16'));var config=require('../../config/environment');var licenseUtil=require(_0x2338('0x17'));var db=require(_0x2338('0x18'))['db'];function respondWithStatusCode(_0x1adff4,_0xd426b6){_0xd426b6=_0xd426b6||0xcc;return function(_0x4dc5b7){if(_0x4dc5b7){return _0x1adff4['sendStatus'](_0xd426b6);}return _0x1adff4['status'](_0xd426b6)[_0x2338('0x19')]();};}function respondWithResult(_0x49dc4a,_0x32dc72){_0x32dc72=_0x32dc72||0xc8;return function(_0x41e43d){if(_0x41e43d){return _0x49dc4a['status'](_0x32dc72)[_0x2338('0x1a')](_0x41e43d);}};}function respondWithFilteredResult(_0x246a0d,_0x3de999){return function(_0x22f4a4){if(_0x22f4a4){var _0x392e9d=typeof _0x3de999[_0x2338('0x1b')]===_0x2338('0x1c')&&typeof _0x3de999[_0x2338('0x1d')]==='undefined';var _0x4bd809=_0x22f4a4[_0x2338('0x1e')];var _0x53e754=_0x392e9d?0x0:_0x3de999[_0x2338('0x1b')];var _0x4c58a3=_0x392e9d?_0x22f4a4[_0x2338('0x1e')]:_0x3de999[_0x2338('0x1b')]+_0x3de999[_0x2338('0x1d')];var _0x423a8f;if(_0x4c58a3>=_0x4bd809){_0x4c58a3=_0x4bd809;_0x423a8f=0xc8;}else{_0x423a8f=0xce;}_0x246a0d[_0x2338('0x1f')](_0x423a8f);return _0x246a0d['set'](_0x2338('0x20'),_0x53e754+'-'+_0x4c58a3+'/'+_0x4bd809)[_0x2338('0x1a')](_0x22f4a4);}return null;};}function patchUpdates(_0x5df75d){return function(_0x85c4d){try{jsonpatch[_0x2338('0x21')](_0x85c4d,_0x5df75d,!![]);}catch(_0x146708){return BPromise[_0x2338('0x22')](_0x146708);}return _0x85c4d[_0x2338('0x23')]();};}function saveUpdates(_0x405f82,_0x594dac){return function(_0x388c62){if(_0x388c62){return _0x388c62['update'](_0x405f82)[_0x2338('0x24')](function(_0x57d7dc){return _0x57d7dc;});}return null;};}function removeEntity(_0x445be0,_0x556d57){return function(_0x366285){if(_0x366285){return _0x366285[_0x2338('0x25')]()['then'](function(){_0x445be0[_0x2338('0x1f')](0xcc)[_0x2338('0x19')]();});}};}function handleEntityNotFound(_0x30f3f2,_0x512981){return function(_0x4f2248){if(!_0x4f2248){_0x30f3f2[_0x2338('0x26')](0x194);}return _0x4f2248;};}function handleError(_0x7d6583,_0x16860d){_0x16860d=_0x16860d||0x1f4;return function(_0x1d6f27){logger[_0x2338('0x27')](_0x1d6f27[_0x2338('0x28')]);if(_0x1d6f27[_0x2338('0x29')]){delete _0x1d6f27[_0x2338('0x29')];}_0x7d6583[_0x2338('0x1f')](_0x16860d)[_0x2338('0x2a')](_0x1d6f27);};}exports[_0x2338('0x2b')]=function(_0x382485,_0x41f634){var _0x156cc2={},_0x449d73={},_0x19afff={'count':0x0,'rows':[]};var _0x49dfd3=_[_0x2338('0x2c')](db['MailServerOut'][_0x2338('0x2d')],function(_0x38b49e){return{'name':_0x38b49e[_0x2338('0x2e')],'type':_0x38b49e[_0x2338('0x2f')][_0x2338('0x30')]};});_0x449d73[_0x2338('0x31')]=_['map'](_0x49dfd3,_0x2338('0x29'));_0x449d73[_0x2338('0x32')]=_[_0x2338('0x33')](_0x382485[_0x2338('0x32')]);_0x449d73['filters']=_[_0x2338('0x34')](_0x449d73[_0x2338('0x31')],_0x449d73['query']);_0x156cc2[_0x2338('0x35')]=_[_0x2338('0x34')](_0x449d73[_0x2338('0x31')],qs[_0x2338('0x36')](_0x382485[_0x2338('0x32')][_0x2338('0x36')]));_0x156cc2[_0x2338('0x35')]=_0x156cc2['attributes'][_0x2338('0x37')]?_0x156cc2['attributes']:_0x449d73[_0x2338('0x31')];if(!_0x382485[_0x2338('0x32')][_0x2338('0x38')](_0x2338('0x39'))){_0x156cc2[_0x2338('0x1d')]=qs['limit'](_0x382485[_0x2338('0x32')][_0x2338('0x1d')]);_0x156cc2[_0x2338('0x1b')]=qs[_0x2338('0x1b')](_0x382485[_0x2338('0x32')]['offset']);}_0x156cc2[_0x2338('0x3a')]=qs['sort'](_0x382485[_0x2338('0x32')][_0x2338('0x3b')]);_0x156cc2['where']=qs[_0x2338('0x3c')](_[_0x2338('0x3d')](_0x382485[_0x2338('0x32')],_0x449d73[_0x2338('0x3c')]),_0x49dfd3);if(_0x382485[_0x2338('0x32')][_0x2338('0x3e')]){_0x156cc2[_0x2338('0x3f')]=_[_0x2338('0x40')](_0x156cc2[_0x2338('0x3f')],{'$or':_[_0x2338('0x2c')](_0x49dfd3,function(_0x5cf140){if(_0x5cf140['type']!==_0x2338('0x41')){var _0x546f51={};_0x546f51[_0x5cf140['name']]={'$like':'%'+_0x382485[_0x2338('0x32')][_0x2338('0x3e')]+'%'};return _0x546f51;}})});}_0x156cc2=_[_0x2338('0x40')]({},_0x156cc2,_0x382485[_0x2338('0x42')]);var _0x5691f6={'where':_0x156cc2[_0x2338('0x3f')]};return db[_0x2338('0x43')][_0x2338('0x1e')](_0x5691f6)[_0x2338('0x24')](function(_0x5f2b84){_0x19afff['count']=_0x5f2b84;if(_0x382485[_0x2338('0x32')][_0x2338('0x44')]){_0x156cc2[_0x2338('0x45')]=[{'all':!![]}];}return db[_0x2338('0x43')][_0x2338('0x46')](_0x156cc2);})['then'](function(_0x112bc9){_0x19afff[_0x2338('0x47')]=_0x112bc9;return _0x19afff;})[_0x2338('0x24')](respondWithFilteredResult(_0x41f634,_0x156cc2))['catch'](handleError(_0x41f634,null));};exports[_0x2338('0x48')]=function(_0x2471d7,_0x5d153a){var _0x271505={'raw':!![],'where':{'id':_0x2471d7[_0x2338('0x49')]['id']}},_0x5888f6={};_0x5888f6[_0x2338('0x31')]=_[_0x2338('0x33')](db[_0x2338('0x43')][_0x2338('0x2d')]);_0x5888f6['query']=_[_0x2338('0x33')](_0x2471d7[_0x2338('0x32')]);_0x5888f6[_0x2338('0x3c')]=_[_0x2338('0x34')](_0x5888f6[_0x2338('0x31')],_0x5888f6[_0x2338('0x32')]);_0x271505['attributes']=_[_0x2338('0x34')](_0x5888f6[_0x2338('0x31')],qs[_0x2338('0x36')](_0x2471d7[_0x2338('0x32')]['fields']));_0x271505[_0x2338('0x35')]=_0x271505['attributes'][_0x2338('0x37')]?_0x271505[_0x2338('0x35')]:_0x5888f6[_0x2338('0x31')];if(_0x2471d7[_0x2338('0x32')][_0x2338('0x44')]){_0x271505[_0x2338('0x45')]=[{'all':!![]}];}_0x271505=_['merge']({},_0x271505,_0x2471d7[_0x2338('0x42')]);return db[_0x2338('0x43')][_0x2338('0x4a')](_0x271505)['then'](handleEntityNotFound(_0x5d153a,null))[_0x2338('0x24')](respondWithResult(_0x5d153a,null))[_0x2338('0x4b')](handleError(_0x5d153a,null));};exports[_0x2338('0x4c')]=function(_0x2fd149,_0x5240fa){return db[_0x2338('0x43')][_0x2338('0x4c')](_0x2fd149[_0x2338('0x4d')],{})[_0x2338('0x24')](respondWithResult(_0x5240fa,0xc9))[_0x2338('0x4b')](handleError(_0x5240fa,null));};exports[_0x2338('0x4e')]=function(_0x390eb0,_0x193c6a){if(_0x390eb0['body']['id']){delete _0x390eb0[_0x2338('0x4d')]['id'];}return db[_0x2338('0x43')][_0x2338('0x4a')]({'where':{'id':_0x390eb0[_0x2338('0x49')]['id']}})[_0x2338('0x24')](handleEntityNotFound(_0x193c6a,null))['then'](saveUpdates(_0x390eb0[_0x2338('0x4d')],null))[_0x2338('0x24')](respondWithResult(_0x193c6a,null))[_0x2338('0x4b')](handleError(_0x193c6a,null));};exports[_0x2338('0x25')]=function(_0x29f8c1,_0x3a9d81){return db['MailServerOut']['find']({'where':{'id':_0x29f8c1[_0x2338('0x49')]['id']}})[_0x2338('0x24')](handleEntityNotFound(_0x3a9d81,null))[_0x2338('0x24')](removeEntity(_0x3a9d81,null))[_0x2338('0x4b')](handleError(_0x3a9d81,null));};