Built motion from commit (unavailable).|2.5.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 _0xbb7a=['key','model','query','keys','filters','intersection','attributes','fields','length','order','sort','pick','filter','where','merge','type','VIRTUAL','options','count','includeAll','include','findAll','rows','show','find','catch','create','body','params','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','to-csv','ejs','crypto','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','json','offset','limit','set','Content-Range','apply','save','then','destroy','end','error','name','send','index','map','MailServerOut','rawAttributes','fieldName'];(function(_0x161461,_0x5889b6){var _0x464b62=function(_0x141ea4){while(--_0x141ea4){_0x161461['push'](_0x161461['shift']());}};_0x464b62(++_0x5889b6);}(_0xbb7a,0xf5));var _0xabb7=function(_0xba2889,_0x3497a0){_0xba2889=_0xba2889-0x0;var _0x25649e=_0xbb7a[_0xba2889];return _0x25649e;};'use strict';var pdf=require(_0xabb7('0x0'));var emlformat=require(_0xabb7('0x1'));var rimraf=require('rimraf');var zipdir=require(_0xabb7('0x2'));var jsonpatch=require(_0xabb7('0x3'));var rp=require(_0xabb7('0x4'));var moment=require(_0xabb7('0x5'));var BPromise=require('bluebird');var Mustache=require(_0xabb7('0x6'));var util=require(_0xabb7('0x7'));var path=require(_0xabb7('0x8'));var sox=require('sox');var csv=require(_0xabb7('0x9'));var ejs=require(_0xabb7('0xa'));var fs=require('fs');var _=require('lodash');var squel=require('squel');var crypto=require(_0xabb7('0xb'));var jsforce=require(_0xabb7('0xc'));var deskjs=require('desk.js');var toCsv=require(_0xabb7('0x9'));var querystring=require(_0xabb7('0xd'));var Papa=require(_0xabb7('0xe'));var Redis=require(_0xabb7('0xf'));var authService=require(_0xabb7('0x10'));var qs=require('../../components/parsers/qs');var as=require(_0xabb7('0x11'));var hardwareService=require(_0xabb7('0x12'));var logger=require(_0xabb7('0x13'))('api');var utils=require(_0xabb7('0x14'));var config=require(_0xabb7('0x15'));var db=require(_0xabb7('0x16'))['db'];function respondWithStatusCode(_0x359d31,_0x5dec82){_0x5dec82=_0x5dec82||0xcc;return function(_0x5edf7d){if(_0x5edf7d){return _0x359d31[_0xabb7('0x17')](_0x5dec82);}return _0x359d31['status'](_0x5dec82)['end']();};}function respondWithResult(_0x5837ee,_0xa0faf5){_0xa0faf5=_0xa0faf5||0xc8;return function(_0x4048ea){if(_0x4048ea){return _0x5837ee[_0xabb7('0x18')](_0xa0faf5)[_0xabb7('0x19')](_0x4048ea);}};}function respondWithFilteredResult(_0x1b35ac,_0x6092e6){return function(_0x1eac13){if(_0x1eac13){var _0x4f4076=_0x1eac13['count'],_0x453f5a=_0x6092e6[_0xabb7('0x1a')],_0x1d5491=_0x6092e6[_0xabb7('0x1a')]+_0x6092e6[_0xabb7('0x1b')],_0x3e7cca;if(_0x1d5491>=_0x4f4076){_0x1d5491=_0x4f4076;_0x3e7cca=0xc8;}else{_0x3e7cca=0xce;}_0x1b35ac[_0xabb7('0x18')](_0x3e7cca);return _0x1b35ac[_0xabb7('0x1c')](_0xabb7('0x1d'),_0x453f5a+'-'+_0x1d5491+'/'+_0x4f4076)['json'](_0x1eac13);}return null;};}function patchUpdates(_0x3bfbf7){return function(_0x404929){try{jsonpatch[_0xabb7('0x1e')](_0x404929,_0x3bfbf7,!![]);}catch(_0x2c4aa4){return BPromise['reject'](_0x2c4aa4);}return _0x404929[_0xabb7('0x1f')]();};}function saveUpdates(_0xe68316,_0x3ea4ef){return function(_0x41accd){if(_0x41accd){return _0x41accd['update'](_0xe68316)[_0xabb7('0x20')](function(_0x1ac080){return _0x1ac080;});}return null;};}function removeEntity(_0x54e985,_0x543047){return function(_0x3e17f2){if(_0x3e17f2){return _0x3e17f2[_0xabb7('0x21')]()[_0xabb7('0x20')](function(){_0x54e985[_0xabb7('0x18')](0xcc)[_0xabb7('0x22')]();});}};}function handleEntityNotFound(_0x453d1e,_0xf66e82){return function(_0xfdd523){if(!_0xfdd523){_0x453d1e[_0xabb7('0x17')](0x194);}return _0xfdd523;};}function handleError(_0x29a751,_0x2fdddb){_0x2fdddb=_0x2fdddb||0x1f4;return function(_0xf5c5a6){logger[_0xabb7('0x23')](_0xf5c5a6['stack']);if(_0xf5c5a6['name']){delete _0xf5c5a6[_0xabb7('0x24')];}_0x29a751[_0xabb7('0x18')](_0x2fdddb)[_0xabb7('0x25')](_0xf5c5a6);};}exports[_0xabb7('0x26')]=function(_0x1c3514,_0x2d6ec4){var _0x2b3e18={},_0x2670c7={},_0x3871e0={'count':0x0,'rows':[]};var _0x3ba2c6=_[_0xabb7('0x27')](db[_0xabb7('0x28')][_0xabb7('0x29')],function(_0x3c3714){return{'name':_0x3c3714[_0xabb7('0x2a')],'type':_0x3c3714['type'][_0xabb7('0x2b')]};});_0x2670c7[_0xabb7('0x2c')]=_[_0xabb7('0x27')](_0x3ba2c6,_0xabb7('0x24'));_0x2670c7[_0xabb7('0x2d')]=_[_0xabb7('0x2e')](_0x1c3514['query']);_0x2670c7[_0xabb7('0x2f')]=_[_0xabb7('0x30')](_0x2670c7[_0xabb7('0x2c')],_0x2670c7[_0xabb7('0x2d')]);_0x2b3e18[_0xabb7('0x31')]=_[_0xabb7('0x30')](_0x2670c7[_0xabb7('0x2c')],qs[_0xabb7('0x32')](_0x1c3514[_0xabb7('0x2d')][_0xabb7('0x32')]));_0x2b3e18[_0xabb7('0x31')]=_0x2b3e18[_0xabb7('0x31')][_0xabb7('0x33')]?_0x2b3e18['attributes']:_0x2670c7[_0xabb7('0x2c')];if(!_0x1c3514[_0xabb7('0x2d')]['hasOwnProperty']('nolimit')){_0x2b3e18['limit']=qs[_0xabb7('0x1b')](_0x1c3514['query']['limit']);_0x2b3e18[_0xabb7('0x1a')]=qs[_0xabb7('0x1a')](_0x1c3514[_0xabb7('0x2d')][_0xabb7('0x1a')]);}_0x2b3e18[_0xabb7('0x34')]=qs[_0xabb7('0x35')](_0x1c3514[_0xabb7('0x2d')][_0xabb7('0x35')]);_0x2b3e18['where']=qs[_0xabb7('0x2f')](_[_0xabb7('0x36')](_0x1c3514[_0xabb7('0x2d')],_0x2670c7[_0xabb7('0x2f')]),_0x3ba2c6);if(_0x1c3514[_0xabb7('0x2d')][_0xabb7('0x37')]){_0x2b3e18[_0xabb7('0x38')]=_[_0xabb7('0x39')](_0x2b3e18[_0xabb7('0x38')],{'$or':_[_0xabb7('0x27')](_0x3ba2c6,function(_0x488504){if(_0x488504[_0xabb7('0x3a')]!==_0xabb7('0x3b')){var _0xc60fd3={};_0xc60fd3[_0x488504[_0xabb7('0x24')]]={'$like':'%'+_0x1c3514['query']['filter']+'%'};return _0xc60fd3;}})});}_0x2b3e18=_['merge']({},_0x2b3e18,_0x1c3514[_0xabb7('0x3c')]);var _0x79740d={'where':_0x2b3e18[_0xabb7('0x38')]};return db[_0xabb7('0x28')][_0xabb7('0x3d')](_0x79740d)[_0xabb7('0x20')](function(_0x6ce626){_0x3871e0[_0xabb7('0x3d')]=_0x6ce626;if(_0x1c3514[_0xabb7('0x2d')][_0xabb7('0x3e')]){_0x2b3e18[_0xabb7('0x3f')]=[{'all':!![]}];}return db[_0xabb7('0x28')][_0xabb7('0x40')](_0x2b3e18);})[_0xabb7('0x20')](function(_0x1ff23b){_0x3871e0[_0xabb7('0x41')]=_0x1ff23b;return _0x3871e0;})[_0xabb7('0x20')](respondWithFilteredResult(_0x2d6ec4,_0x2b3e18))['catch'](handleError(_0x2d6ec4,null));};exports[_0xabb7('0x42')]=function(_0x1ac927,_0x3e91ec){var _0x5eceb8={'raw':!![],'where':{'id':_0x1ac927['params']['id']}},_0x1ae4cf={};_0x1ae4cf[_0xabb7('0x2c')]=_[_0xabb7('0x2e')](db[_0xabb7('0x28')][_0xabb7('0x29')]);_0x1ae4cf[_0xabb7('0x2d')]=_[_0xabb7('0x2e')](_0x1ac927[_0xabb7('0x2d')]);_0x1ae4cf['filters']=_[_0xabb7('0x30')](_0x1ae4cf[_0xabb7('0x2c')],_0x1ae4cf[_0xabb7('0x2d')]);_0x5eceb8[_0xabb7('0x31')]=_[_0xabb7('0x30')](_0x1ae4cf['model'],qs[_0xabb7('0x32')](_0x1ac927[_0xabb7('0x2d')][_0xabb7('0x32')]));_0x5eceb8['attributes']=_0x5eceb8[_0xabb7('0x31')]['length']?_0x5eceb8[_0xabb7('0x31')]:_0x1ae4cf[_0xabb7('0x2c')];if(_0x1ac927[_0xabb7('0x2d')][_0xabb7('0x3e')]){_0x5eceb8[_0xabb7('0x3f')]=[{'all':!![]}];}_0x5eceb8=_['merge']({},_0x5eceb8,_0x1ac927['options']);return db[_0xabb7('0x28')][_0xabb7('0x43')](_0x5eceb8)[_0xabb7('0x20')](handleEntityNotFound(_0x3e91ec,null))['then'](respondWithResult(_0x3e91ec,null))[_0xabb7('0x44')](handleError(_0x3e91ec,null));};exports[_0xabb7('0x45')]=function(_0x46c4c6,_0x3fc2ca){return db['MailServerOut'][_0xabb7('0x45')](_0x46c4c6[_0xabb7('0x46')],{})['then'](respondWithResult(_0x3fc2ca,0xc9))['catch'](handleError(_0x3fc2ca,null));};exports['update']=function(_0x3a6508,_0x493df0){if(_0x3a6508['body']['id']){delete _0x3a6508[_0xabb7('0x46')]['id'];}return db[_0xabb7('0x28')][_0xabb7('0x43')]({'where':{'id':_0x3a6508[_0xabb7('0x47')]['id']}})[_0xabb7('0x20')](handleEntityNotFound(_0x493df0,null))[_0xabb7('0x20')](saveUpdates(_0x3a6508[_0xabb7('0x46')],null))[_0xabb7('0x20')](respondWithResult(_0x493df0,null))[_0xabb7('0x44')](handleError(_0x493df0,null));};exports['destroy']=function(_0x471f60,_0x4b694f){return db[_0xabb7('0x28')]['find']({'where':{'id':_0x471f60[_0xabb7('0x47')]['id']}})[_0xabb7('0x20')](handleEntityNotFound(_0x4b694f,null))[_0xabb7('0x20')](removeEntity(_0x4b694f,null))['catch'](handleError(_0x4b694f,null));};