73b747e2c2fa4f3c2e1aa7aabcbfe10840852f34
[motion2.git] / server / api / mailSubstatus / mailSubstatus.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 _0x0e3b=['show','params','create','body','find','describe','rimraf','zip-dir','fast-json-patch','request-promise','util','path','to-csv','fs-extra','lodash','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/environment','../../mysqldb','status','end','count','offset','set','Content-Range','json','reject','save','update','then','destroy','error','stack','name','send','index','MailSubstatus','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','limit','order','sort','where','filter','merge','map','VIRTUAL','options','includeAll','include','catch'];(function(_0x14add3,_0x13ce8d){var _0x4a174f=function(_0x2b3ed7){while(--_0x2b3ed7){_0x14add3['push'](_0x14add3['shift']());}};_0x4a174f(++_0x13ce8d);}(_0x0e3b,0xcf));var _0xb0e3=function(_0xd4f90b,_0x148333){_0xd4f90b=_0xd4f90b-0x0;var _0x451848=_0x0e3b[_0xd4f90b];return _0x451848;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xb0e3('0x0'));var zipdir=require(_0xb0e3('0x1'));var jsonpatch=require(_0xb0e3('0x2'));var rp=require(_0xb0e3('0x3'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0xb0e3('0x4'));var path=require(_0xb0e3('0x5'));var sox=require('sox');var csv=require(_0xb0e3('0x6'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xb0e3('0x7'));var _=require(_0xb0e3('0x8'));var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0xb0e3('0x9'));var deskjs=require(_0xb0e3('0xa'));var toCsv=require(_0xb0e3('0x6'));var querystring=require(_0xb0e3('0xb'));var Papa=require(_0xb0e3('0xc'));var Redis=require('ioredis');var authService=require(_0xb0e3('0xd'));var qs=require(_0xb0e3('0xe'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xb0e3('0xf'));var logger=require('../../config/logger')('api');var utils=require('../../config/utils');var config=require(_0xb0e3('0x10'));var licenseUtil=require('../../config/license/util');var db=require(_0xb0e3('0x11'))['db'];function respondWithStatusCode(_0x47be40,_0x4094b2){_0x4094b2=_0x4094b2||0xcc;return function(_0x4867c2){if(_0x4867c2){return _0x47be40['sendStatus'](_0x4094b2);}return _0x47be40[_0xb0e3('0x12')](_0x4094b2)[_0xb0e3('0x13')]();};}function respondWithResult(_0x33426,_0x3568c7){_0x3568c7=_0x3568c7||0xc8;return function(_0x20fc47){if(_0x20fc47){return _0x33426[_0xb0e3('0x12')](_0x3568c7)['json'](_0x20fc47);}};}function respondWithFilteredResult(_0x16fe28,_0x5e0f04){return function(_0x477fce){if(_0x477fce){var _0xe36b37=_0x477fce[_0xb0e3('0x14')],_0x375de5=_0x5e0f04[_0xb0e3('0x15')],_0x186a43=_0x5e0f04['offset']+_0x5e0f04['limit'],_0x1f7a76;if(_0x186a43>=_0xe36b37){_0x186a43=_0xe36b37;_0x1f7a76=0xc8;}else{_0x1f7a76=0xce;}_0x16fe28[_0xb0e3('0x12')](_0x1f7a76);return _0x16fe28[_0xb0e3('0x16')](_0xb0e3('0x17'),_0x375de5+'-'+_0x186a43+'/'+_0xe36b37)[_0xb0e3('0x18')](_0x477fce);}return null;};}function patchUpdates(_0x4df812){return function(_0x303fc8){try{jsonpatch['apply'](_0x303fc8,_0x4df812,!![]);}catch(_0x315138){return BPromise[_0xb0e3('0x19')](_0x315138);}return _0x303fc8[_0xb0e3('0x1a')]();};}function saveUpdates(_0x5106ca,_0x4d5590){return function(_0x362e04){if(_0x362e04){return _0x362e04[_0xb0e3('0x1b')](_0x5106ca)[_0xb0e3('0x1c')](function(_0x5e6a24){return _0x5e6a24;});}return null;};}function removeEntity(_0xace4f2,_0x6e9ace){return function(_0x3312fd){if(_0x3312fd){return _0x3312fd[_0xb0e3('0x1d')]()['then'](function(){_0xace4f2[_0xb0e3('0x12')](0xcc)[_0xb0e3('0x13')]();});}};}function handleEntityNotFound(_0x484151,_0x3d61eb){return function(_0x30505b){if(!_0x30505b){_0x484151['sendStatus'](0x194);}return _0x30505b;};}function handleError(_0x5576d3,_0x4d9e09){_0x4d9e09=_0x4d9e09||0x1f4;return function(_0x186efe){logger[_0xb0e3('0x1e')](_0x186efe[_0xb0e3('0x1f')]);if(_0x186efe[_0xb0e3('0x20')]){delete _0x186efe[_0xb0e3('0x20')];}_0x5576d3['status'](_0x4d9e09)[_0xb0e3('0x21')](_0x186efe);};}exports[_0xb0e3('0x22')]=function(_0x109f9d,_0x4721af){var _0x5731ea={},_0x436ddd={},_0x55daba={'count':0x0,'rows':[]};var _0x54f405=_['map'](db[_0xb0e3('0x23')][_0xb0e3('0x24')],function(_0x5b9e4f){return{'name':_0x5b9e4f[_0xb0e3('0x25')],'type':_0x5b9e4f[_0xb0e3('0x26')][_0xb0e3('0x27')]};});_0x436ddd[_0xb0e3('0x28')]=_['map'](_0x54f405,_0xb0e3('0x20'));_0x436ddd[_0xb0e3('0x29')]=_[_0xb0e3('0x2a')](_0x109f9d['query']);_0x436ddd[_0xb0e3('0x2b')]=_[_0xb0e3('0x2c')](_0x436ddd[_0xb0e3('0x28')],_0x436ddd[_0xb0e3('0x29')]);_0x5731ea[_0xb0e3('0x2d')]=_[_0xb0e3('0x2c')](_0x436ddd[_0xb0e3('0x28')],qs[_0xb0e3('0x2e')](_0x109f9d[_0xb0e3('0x29')]['fields']));_0x5731ea[_0xb0e3('0x2d')]=_0x5731ea['attributes'][_0xb0e3('0x2f')]?_0x5731ea[_0xb0e3('0x2d')]:_0x436ddd[_0xb0e3('0x28')];if(!_0x109f9d[_0xb0e3('0x29')][_0xb0e3('0x30')]('nolimit')){_0x5731ea['limit']=qs[_0xb0e3('0x31')](_0x109f9d[_0xb0e3('0x29')][_0xb0e3('0x31')]);_0x5731ea[_0xb0e3('0x15')]=qs[_0xb0e3('0x15')](_0x109f9d['query']['offset']);}_0x5731ea[_0xb0e3('0x32')]=qs[_0xb0e3('0x33')](_0x109f9d[_0xb0e3('0x29')][_0xb0e3('0x33')]);_0x5731ea[_0xb0e3('0x34')]=qs['filters'](_['pick'](_0x109f9d[_0xb0e3('0x29')],_0x436ddd[_0xb0e3('0x2b')]),_0x54f405);if(_0x109f9d['query'][_0xb0e3('0x35')]){_0x5731ea[_0xb0e3('0x34')]=_[_0xb0e3('0x36')](_0x5731ea[_0xb0e3('0x34')],{'$or':_[_0xb0e3('0x37')](_0x54f405,function(_0x2164b9){if(_0x2164b9[_0xb0e3('0x26')]!==_0xb0e3('0x38')){var _0x1cc8b7={};_0x1cc8b7[_0x2164b9[_0xb0e3('0x20')]]={'$like':'%'+_0x109f9d['query'][_0xb0e3('0x35')]+'%'};return _0x1cc8b7;}})});}_0x5731ea=_['merge']({},_0x5731ea,_0x109f9d[_0xb0e3('0x39')]);var _0x22d8d3={'where':_0x5731ea[_0xb0e3('0x34')]};return db['MailSubstatus'][_0xb0e3('0x14')](_0x22d8d3)[_0xb0e3('0x1c')](function(_0x10d781){_0x55daba[_0xb0e3('0x14')]=_0x10d781;if(_0x109f9d[_0xb0e3('0x29')][_0xb0e3('0x3a')]){_0x5731ea[_0xb0e3('0x3b')]=[{'all':!![]}];}return db[_0xb0e3('0x23')]['findAll'](_0x5731ea);})[_0xb0e3('0x1c')](function(_0x4a0112){_0x55daba['rows']=_0x4a0112;return _0x55daba;})['then'](respondWithFilteredResult(_0x4721af,_0x5731ea))[_0xb0e3('0x3c')](handleError(_0x4721af,null));};exports[_0xb0e3('0x3d')]=function(_0x1a3640,_0x57865d){var _0x275316={'raw':!![],'where':{'id':_0x1a3640[_0xb0e3('0x3e')]['id']}},_0x49f56c={};_0x49f56c[_0xb0e3('0x28')]=_[_0xb0e3('0x2a')](db[_0xb0e3('0x23')][_0xb0e3('0x24')]);_0x49f56c[_0xb0e3('0x29')]=_[_0xb0e3('0x2a')](_0x1a3640['query']);_0x49f56c['filters']=_[_0xb0e3('0x2c')](_0x49f56c[_0xb0e3('0x28')],_0x49f56c[_0xb0e3('0x29')]);_0x275316[_0xb0e3('0x2d')]=_[_0xb0e3('0x2c')](_0x49f56c[_0xb0e3('0x28')],qs[_0xb0e3('0x2e')](_0x1a3640['query'][_0xb0e3('0x2e')]));_0x275316[_0xb0e3('0x2d')]=_0x275316[_0xb0e3('0x2d')][_0xb0e3('0x2f')]?_0x275316['attributes']:_0x49f56c[_0xb0e3('0x28')];if(_0x1a3640[_0xb0e3('0x29')][_0xb0e3('0x3a')]){_0x275316[_0xb0e3('0x3b')]=[{'all':!![]}];}_0x275316=_[_0xb0e3('0x36')]({},_0x275316,_0x1a3640[_0xb0e3('0x39')]);return db['MailSubstatus']['find'](_0x275316)['then'](handleEntityNotFound(_0x57865d,null))[_0xb0e3('0x1c')](respondWithResult(_0x57865d,null))[_0xb0e3('0x3c')](handleError(_0x57865d,null));};exports[_0xb0e3('0x3f')]=function(_0x22b101,_0x4b1e01){return db[_0xb0e3('0x23')][_0xb0e3('0x3f')](_0x22b101[_0xb0e3('0x40')],{})['then'](respondWithResult(_0x4b1e01,0xc9))[_0xb0e3('0x3c')](handleError(_0x4b1e01,null));};exports[_0xb0e3('0x1b')]=function(_0x218785,_0x476ff2){if(_0x218785[_0xb0e3('0x40')]['id']){delete _0x218785[_0xb0e3('0x40')]['id'];}return db['MailSubstatus']['find']({'where':{'id':_0x218785[_0xb0e3('0x3e')]['id']}})[_0xb0e3('0x1c')](handleEntityNotFound(_0x476ff2,null))[_0xb0e3('0x1c')](saveUpdates(_0x218785[_0xb0e3('0x40')],null))['then'](respondWithResult(_0x476ff2,null))[_0xb0e3('0x3c')](handleError(_0x476ff2,null));};exports[_0xb0e3('0x1d')]=function(_0x262e63,_0x27a4d3){return db['MailSubstatus'][_0xb0e3('0x41')]({'where':{'id':_0x262e63[_0xb0e3('0x3e')]['id']}})[_0xb0e3('0x1c')](handleEntityNotFound(_0x27a4d3,null))[_0xb0e3('0x1c')](removeEntity(_0x27a4d3,null))['catch'](handleError(_0x27a4d3,null));};exports[_0xb0e3('0x42')]=function(_0x2bb233,_0x4beb2a){return db[_0xb0e3('0x23')][_0xb0e3('0x42')]()[_0xb0e3('0x1c')](respondWithResult(_0x4beb2a,null))['catch'](handleError(_0x4beb2a,null));};