Built motion from commit 67e5df37.|2.0.66
[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 _0xf474=['status','end','json','count','offset','set','Content-Range','apply','reject','save','update','then','destroy','sendStatus','error','stack','name','send','model','query','dateStart','dateEnd','keys','filters','intersection','attributes','fields','hasOwnProperty','limit','order','sort','where','pick','add','day','merge','filter','options','MailServerOut','include','findAll','rows','catch','show','params','rawAttributes','length','find','create','body','fast-json-patch','moment','bluebird','mustache','util','sox','to-csv','ejs','lodash','crypto','desk.js','querystring','papaparse','../../components/parsers/qs','../../config/logger','../../config/utils','../../mysqldb'];(function(_0x466680,_0x2f4229){var _0x1a2998=function(_0xf2116){while(--_0xf2116){_0x466680['push'](_0x466680['shift']());}};_0x1a2998(++_0x2f4229);}(_0xf474,0x13e));var _0x4f47=function(_0x2c7618,_0x26be9c){_0x2c7618=_0x2c7618-0x0;var _0x5ce3f0=_0xf474[_0x2c7618];return _0x5ce3f0;};'use strict';var jsonpatch=require(_0x4f47('0x0'));var rp=require('request-promise');var moment=require(_0x4f47('0x1'));var BPromise=require(_0x4f47('0x2'));var Mustache=require(_0x4f47('0x3'));var util=require(_0x4f47('0x4'));var path=require('path');var sox=require(_0x4f47('0x5'));var csv=require(_0x4f47('0x6'));var ejs=require(_0x4f47('0x7'));var fs=require('fs');var _=require(_0x4f47('0x8'));var squel=require('squel');var crypto=require(_0x4f47('0x9'));var jsforce=require('jsforce');var deskjs=require(_0x4f47('0xa'));var toCsv=require(_0x4f47('0x6'));var querystring=require(_0x4f47('0xb'));var Papa=require(_0x4f47('0xc'));var qs=require(_0x4f47('0xd'));var logger=require(_0x4f47('0xe'))('api');var utils=require(_0x4f47('0xf'));var config=require('../../config/environment');var db=require(_0x4f47('0x10'))['db'];function respondWithStatusCode(_0x3d33e4,_0x21cffd){_0x21cffd=_0x21cffd||0xcc;return function(_0x6c5ab){if(_0x6c5ab){return _0x3d33e4['sendStatus'](_0x21cffd);}return _0x3d33e4[_0x4f47('0x11')](_0x21cffd)[_0x4f47('0x12')]();};}function respondWithResult(_0x692f7e,_0x37a769){_0x37a769=_0x37a769||0xc8;return function(_0x297f39){if(_0x297f39){return _0x692f7e[_0x4f47('0x11')](_0x37a769)[_0x4f47('0x13')](_0x297f39);}};}function respondWithFilteredResult(_0x3f8dd5,_0xc10b77){return function(_0x90e3f1){if(_0x90e3f1){var _0x1a185a=_0x90e3f1[_0x4f47('0x14')],_0x4ac0e8=_0xc10b77[_0x4f47('0x15')],_0x41ba6c=_0xc10b77[_0x4f47('0x15')]+_0xc10b77['limit'],_0x24c111;if(_0x41ba6c>=_0x1a185a){_0x41ba6c=_0x1a185a;_0x24c111=0xc8;}else{_0x24c111=0xce;}_0x3f8dd5[_0x4f47('0x11')](_0x24c111);return _0x3f8dd5[_0x4f47('0x16')](_0x4f47('0x17'),_0x4ac0e8+'-'+_0x41ba6c+'/'+_0x1a185a)['json'](_0x90e3f1);}return null;};}function patchUpdates(_0x3a6afd){return function(_0xd40c8e){try{jsonpatch[_0x4f47('0x18')](_0xd40c8e,_0x3a6afd,!![]);}catch(_0x304a86){return BPromise[_0x4f47('0x19')](_0x304a86);}return _0xd40c8e[_0x4f47('0x1a')]();};}function saveUpdates(_0x1805b7,_0x310009){return function(_0x4db22a){if(_0x4db22a){return _0x4db22a[_0x4f47('0x1b')](_0x1805b7)[_0x4f47('0x1c')](function(_0x2c19df){return _0x2c19df;});}return null;};}function removeEntity(_0x338b94,_0x1e3e10){return function(_0x536238){if(_0x536238){return _0x536238[_0x4f47('0x1d')]()[_0x4f47('0x1c')](function(){_0x338b94[_0x4f47('0x11')](0xcc)[_0x4f47('0x12')]();});}};}function handleEntityNotFound(_0x9f242b,_0x3cc114){return function(_0x1969e4){if(!_0x1969e4){_0x9f242b[_0x4f47('0x1e')](0x194);}return _0x1969e4;};}function handleError(_0x42dd11,_0x4d77d0){_0x4d77d0=_0x4d77d0||0x1f4;return function(_0xb6ba6f){logger[_0x4f47('0x1f')](_0xb6ba6f[_0x4f47('0x20')]);if(_0xb6ba6f[_0x4f47('0x21')]){delete _0xb6ba6f[_0x4f47('0x21')];}_0x42dd11[_0x4f47('0x11')](_0x4d77d0)[_0x4f47('0x22')](_0xb6ba6f);};}exports['index']=function(_0x1ba178,_0x361b85){var _0x357298={},_0x4e32f7={},_0x18c473={'count':0x0,'rows':[]};_0x4e32f7[_0x4f47('0x23')]=_['keys'](db['MailServerOut']['rawAttributes']);var _0x53755f={'dateStart':_0x1ba178[_0x4f47('0x24')][_0x4f47('0x25')],'dateEnd':_0x1ba178[_0x4f47('0x24')]['dateEnd']};delete _0x1ba178['query'][_0x4f47('0x25')];delete _0x1ba178[_0x4f47('0x24')][_0x4f47('0x26')];_0x4e32f7[_0x4f47('0x24')]=_[_0x4f47('0x27')](_0x1ba178[_0x4f47('0x24')]);_0x4e32f7[_0x4f47('0x28')]=_[_0x4f47('0x29')](_0x4e32f7[_0x4f47('0x23')],_0x4e32f7[_0x4f47('0x24')]);_0x357298[_0x4f47('0x2a')]=_[_0x4f47('0x29')](_0x4e32f7[_0x4f47('0x23')],qs[_0x4f47('0x2b')](_0x1ba178[_0x4f47('0x24')][_0x4f47('0x2b')]));_0x357298[_0x4f47('0x2a')]=_0x357298[_0x4f47('0x2a')]['length']?_0x357298[_0x4f47('0x2a')]:_0x4e32f7[_0x4f47('0x23')];if(!_0x1ba178['query'][_0x4f47('0x2c')]('nolimit')){_0x357298[_0x4f47('0x2d')]=qs[_0x4f47('0x2d')](_0x1ba178['query']['limit']);_0x357298[_0x4f47('0x15')]=qs[_0x4f47('0x15')](_0x1ba178['query']['offset']);}_0x357298[_0x4f47('0x2e')]=qs[_0x4f47('0x2f')](_0x1ba178['query'][_0x4f47('0x2f')]);_0x357298[_0x4f47('0x30')]=qs['filters'](_[_0x4f47('0x31')](_0x1ba178[_0x4f47('0x24')],_0x4e32f7[_0x4f47('0x28')]));if(_0x53755f[_0x4f47('0x25')]){if(_0x53755f['dateEnd']){_0x53755f[_0x4f47('0x26')]=moment(_0x53755f[_0x4f47('0x26')])[_0x4f47('0x32')](0x1,_0x4f47('0x33'));}else{_0x53755f[_0x4f47('0x26')]=moment(_0x53755f[_0x4f47('0x25')])[_0x4f47('0x32')](0x1,_0x4f47('0x33'));}_['merge'](_0x357298[_0x4f47('0x30')],{'createdAt':{'$gte':_0x53755f[_0x4f47('0x25')],'$lte':_0x53755f[_0x4f47('0x26')]}});}if(_0x1ba178[_0x4f47('0x24')]['filter']){_0x357298['where']=_[_0x4f47('0x34')](_0x357298[_0x4f47('0x30')],{'$or':_['map'](_0x357298[_0x4f47('0x2a')],function(_0x1b22b0){var _0x202e46={};_0x202e46[_0x1b22b0]={'$like':'%'+_0x1ba178['query'][_0x4f47('0x35')]+'%'};return _0x202e46;})});}_0x357298=_['merge']({},_0x357298,_0x1ba178[_0x4f47('0x36')]);var _0x33b955={'where':_0x357298[_0x4f47('0x30')]};return db[_0x4f47('0x37')][_0x4f47('0x14')](_0x33b955)['then'](function(_0x304f30){_0x18c473['count']=_0x304f30;if(_0x1ba178[_0x4f47('0x24')]['includeAll']){_0x357298[_0x4f47('0x38')]=[{'all':!![]}];}return db['MailServerOut'][_0x4f47('0x39')](_0x357298);})[_0x4f47('0x1c')](function(_0x2df1b2){_0x18c473[_0x4f47('0x3a')]=_0x2df1b2;return _0x18c473;})[_0x4f47('0x1c')](respondWithFilteredResult(_0x361b85,_0x357298))[_0x4f47('0x3b')](handleError(_0x361b85,null));};exports[_0x4f47('0x3c')]=function(_0xea7f87,_0x1312a5){var _0x23c2d0={'raw':!![],'where':{'id':_0xea7f87[_0x4f47('0x3d')]['id']}},_0x159eb6={};_0x159eb6['model']=_[_0x4f47('0x27')](db['MailServerOut'][_0x4f47('0x3e')]);_0x159eb6[_0x4f47('0x24')]=_[_0x4f47('0x27')](_0xea7f87[_0x4f47('0x24')]);_0x159eb6[_0x4f47('0x28')]=_[_0x4f47('0x29')](_0x159eb6[_0x4f47('0x23')],_0x159eb6[_0x4f47('0x24')]);_0x23c2d0[_0x4f47('0x2a')]=_['intersection'](_0x159eb6[_0x4f47('0x23')],qs['fields'](_0xea7f87[_0x4f47('0x24')][_0x4f47('0x2b')]));_0x23c2d0[_0x4f47('0x2a')]=_0x23c2d0[_0x4f47('0x2a')][_0x4f47('0x3f')]?_0x23c2d0[_0x4f47('0x2a')]:_0x159eb6[_0x4f47('0x23')];if(_0xea7f87['query']['includeAll']){_0x23c2d0[_0x4f47('0x38')]=[{'all':!![]}];}_0x23c2d0=_[_0x4f47('0x34')]({},_0x23c2d0,_0xea7f87[_0x4f47('0x36')]);return db[_0x4f47('0x37')][_0x4f47('0x40')](_0x23c2d0)[_0x4f47('0x1c')](handleEntityNotFound(_0x1312a5,null))[_0x4f47('0x1c')](respondWithResult(_0x1312a5,null))[_0x4f47('0x3b')](handleError(_0x1312a5,null));};exports[_0x4f47('0x41')]=function(_0x297f5a,_0x4ba461){return db[_0x4f47('0x37')][_0x4f47('0x41')](_0x297f5a[_0x4f47('0x42')],{})[_0x4f47('0x1c')](respondWithResult(_0x4ba461,0xc9))[_0x4f47('0x3b')](handleError(_0x4ba461,null));};exports[_0x4f47('0x1b')]=function(_0x334b72,_0x5270a0){if(_0x334b72['body']['id']){delete _0x334b72[_0x4f47('0x42')]['id'];}return db[_0x4f47('0x37')][_0x4f47('0x40')]({'where':{'id':_0x334b72[_0x4f47('0x3d')]['id']}})[_0x4f47('0x1c')](handleEntityNotFound(_0x5270a0,null))[_0x4f47('0x1c')](saveUpdates(_0x334b72[_0x4f47('0x42')],null))[_0x4f47('0x1c')](respondWithResult(_0x5270a0,null))[_0x4f47('0x3b')](handleError(_0x5270a0,null));};exports[_0x4f47('0x1d')]=function(_0x43686f,_0x1dfc36){return db['MailServerOut'][_0x4f47('0x40')]({'where':{'id':_0x43686f[_0x4f47('0x3d')]['id']}})[_0x4f47('0x1c')](handleEntityNotFound(_0x1dfc36,null))[_0x4f47('0x1c')](removeEntity(_0x1dfc36,null))[_0x4f47('0x3b')](handleError(_0x1dfc36,null));};