11db8e118547c7982df78d0d39865c03cf017489
[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 _0x9371=['update','then','destroy','end','error','name','index','map','MailSubstatus','rawAttributes','key','query','keys','model','attributes','intersection','fields','length','hasOwnProperty','order','sort','where','pick','filter','merge','type','VIRTUAL','options','includeAll','include','findAll','rows','catch','show','params','filters','find','create','body','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','sox','lodash','squel','crypto','jsforce','desk.js','to-csv','querystring','../../components/auth/service','../../components/parsers/qs','../../config/logger','api','../../config/environment','../../config/license/util','sendStatus','status','offset','undefined','limit','count','Content-Range','json','apply','reject','save'];(function(_0x1589dd,_0x2b9d22){var _0x1bddd1=function(_0x3687f8){while(--_0x3687f8){_0x1589dd['push'](_0x1589dd['shift']());}};_0x1bddd1(++_0x2b9d22);}(_0x9371,0xb8));var _0x1937=function(_0x59ee6f,_0x450239){_0x59ee6f=_0x59ee6f-0x0;var _0x4c0979=_0x9371[_0x59ee6f];return _0x4c0979;};'use strict';var emlformat=require(_0x1937('0x0'));var rimraf=require(_0x1937('0x1'));var zipdir=require(_0x1937('0x2'));var jsonpatch=require(_0x1937('0x3'));var rp=require(_0x1937('0x4'));var moment=require(_0x1937('0x5'));var BPromise=require(_0x1937('0x6'));var Mustache=require('mustache');var util=require('util');var path=require('path');var sox=require(_0x1937('0x7'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x1937('0x8'));var squel=require(_0x1937('0x9'));var crypto=require(_0x1937('0xa'));var jsforce=require(_0x1937('0xb'));var deskjs=require(_0x1937('0xc'));var toCsv=require(_0x1937('0xd'));var querystring=require(_0x1937('0xe'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0x1937('0xf'));var qs=require(_0x1937('0x10'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0x1937('0x11'))(_0x1937('0x12'));var utils=require('../../config/utils');var config=require(_0x1937('0x13'));var licenseUtil=require(_0x1937('0x14'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x17219c,_0x470a45){_0x470a45=_0x470a45||0xcc;return function(_0x5263d5){if(_0x5263d5){return _0x17219c[_0x1937('0x15')](_0x470a45);}return _0x17219c[_0x1937('0x16')](_0x470a45)['end']();};}function respondWithResult(_0x3ca31f,_0x563cae){_0x563cae=_0x563cae||0xc8;return function(_0x48f67e){if(_0x48f67e){return _0x3ca31f['status'](_0x563cae)['json'](_0x48f67e);}};}function respondWithFilteredResult(_0x522478,_0x474795){return function(_0xe17c29){if(_0xe17c29){var _0x3e55c1=typeof _0x474795[_0x1937('0x17')]===_0x1937('0x18')&&typeof _0x474795[_0x1937('0x19')]===_0x1937('0x18');var _0xbd5495=_0xe17c29[_0x1937('0x1a')];var _0x775d10=_0x3e55c1?0x0:_0x474795[_0x1937('0x17')];var _0x1b2ff2=_0x3e55c1?_0xe17c29[_0x1937('0x1a')]:_0x474795['offset']+_0x474795[_0x1937('0x19')];var _0x5b2522;if(_0x1b2ff2>=_0xbd5495){_0x1b2ff2=_0xbd5495;_0x5b2522=0xc8;}else{_0x5b2522=0xce;}_0x522478['status'](_0x5b2522);return _0x522478['set'](_0x1937('0x1b'),_0x775d10+'-'+_0x1b2ff2+'/'+_0xbd5495)[_0x1937('0x1c')](_0xe17c29);}return null;};}function patchUpdates(_0x5cacb1){return function(_0x2a6f33){try{jsonpatch[_0x1937('0x1d')](_0x2a6f33,_0x5cacb1,!![]);}catch(_0xce4640){return BPromise[_0x1937('0x1e')](_0xce4640);}return _0x2a6f33[_0x1937('0x1f')]();};}function saveUpdates(_0x170aa3,_0x367acf){return function(_0x3fa0bf){if(_0x3fa0bf){return _0x3fa0bf[_0x1937('0x20')](_0x170aa3)[_0x1937('0x21')](function(_0x200b4f){return _0x200b4f;});}return null;};}function removeEntity(_0x1c10f8,_0x4ae8be){return function(_0x5a7064){if(_0x5a7064){return _0x5a7064[_0x1937('0x22')]()[_0x1937('0x21')](function(){_0x1c10f8[_0x1937('0x16')](0xcc)[_0x1937('0x23')]();});}};}function handleEntityNotFound(_0x2c6032,_0x47aafe){return function(_0xd43d14){if(!_0xd43d14){_0x2c6032['sendStatus'](0x194);}return _0xd43d14;};}function handleError(_0x168dbd,_0x438917){_0x438917=_0x438917||0x1f4;return function(_0x18dfa3){logger[_0x1937('0x24')](_0x18dfa3['stack']);if(_0x18dfa3[_0x1937('0x25')]){delete _0x18dfa3[_0x1937('0x25')];}_0x168dbd[_0x1937('0x16')](_0x438917)['send'](_0x18dfa3);};}exports[_0x1937('0x26')]=function(_0x112e5a,_0x43e576){var _0x47b0a7={},_0x15eebd={},_0xc8a89f={'count':0x0,'rows':[]};var _0x34b8cd=_[_0x1937('0x27')](db[_0x1937('0x28')][_0x1937('0x29')],function(_0x16e4ec){return{'name':_0x16e4ec['fieldName'],'type':_0x16e4ec['type'][_0x1937('0x2a')]};});_0x15eebd['model']=_[_0x1937('0x27')](_0x34b8cd,_0x1937('0x25'));_0x15eebd[_0x1937('0x2b')]=_[_0x1937('0x2c')](_0x112e5a[_0x1937('0x2b')]);_0x15eebd['filters']=_['intersection'](_0x15eebd[_0x1937('0x2d')],_0x15eebd['query']);_0x47b0a7[_0x1937('0x2e')]=_[_0x1937('0x2f')](_0x15eebd['model'],qs[_0x1937('0x30')](_0x112e5a[_0x1937('0x2b')][_0x1937('0x30')]));_0x47b0a7[_0x1937('0x2e')]=_0x47b0a7[_0x1937('0x2e')][_0x1937('0x31')]?_0x47b0a7[_0x1937('0x2e')]:_0x15eebd['model'];if(!_0x112e5a[_0x1937('0x2b')][_0x1937('0x32')]('nolimit')){_0x47b0a7['limit']=qs[_0x1937('0x19')](_0x112e5a[_0x1937('0x2b')][_0x1937('0x19')]);_0x47b0a7[_0x1937('0x17')]=qs[_0x1937('0x17')](_0x112e5a[_0x1937('0x2b')][_0x1937('0x17')]);}_0x47b0a7[_0x1937('0x33')]=qs[_0x1937('0x34')](_0x112e5a[_0x1937('0x2b')]['sort']);_0x47b0a7[_0x1937('0x35')]=qs['filters'](_[_0x1937('0x36')](_0x112e5a[_0x1937('0x2b')],_0x15eebd['filters']),_0x34b8cd);if(_0x112e5a[_0x1937('0x2b')][_0x1937('0x37')]){_0x47b0a7['where']=_[_0x1937('0x38')](_0x47b0a7['where'],{'$or':_[_0x1937('0x27')](_0x34b8cd,function(_0x46e9ef){if(_0x46e9ef[_0x1937('0x39')]!==_0x1937('0x3a')){var _0x15077f={};_0x15077f[_0x46e9ef['name']]={'$like':'%'+_0x112e5a[_0x1937('0x2b')]['filter']+'%'};return _0x15077f;}})});}_0x47b0a7=_[_0x1937('0x38')]({},_0x47b0a7,_0x112e5a[_0x1937('0x3b')]);var _0x4e48d7={'where':_0x47b0a7[_0x1937('0x35')]};return db['MailSubstatus'][_0x1937('0x1a')](_0x4e48d7)[_0x1937('0x21')](function(_0x32044b){_0xc8a89f[_0x1937('0x1a')]=_0x32044b;if(_0x112e5a[_0x1937('0x2b')][_0x1937('0x3c')]){_0x47b0a7[_0x1937('0x3d')]=[{'all':!![]}];}return db[_0x1937('0x28')][_0x1937('0x3e')](_0x47b0a7);})[_0x1937('0x21')](function(_0x1e9c97){_0xc8a89f[_0x1937('0x3f')]=_0x1e9c97;return _0xc8a89f;})['then'](respondWithFilteredResult(_0x43e576,_0x47b0a7))[_0x1937('0x40')](handleError(_0x43e576,null));};exports[_0x1937('0x41')]=function(_0x4317e8,_0x1af2f6){var _0x26dbf2={'raw':!![],'where':{'id':_0x4317e8[_0x1937('0x42')]['id']}},_0x1029d9={};_0x1029d9['model']=_[_0x1937('0x2c')](db['MailSubstatus'][_0x1937('0x29')]);_0x1029d9['query']=_[_0x1937('0x2c')](_0x4317e8[_0x1937('0x2b')]);_0x1029d9[_0x1937('0x43')]=_['intersection'](_0x1029d9[_0x1937('0x2d')],_0x1029d9[_0x1937('0x2b')]);_0x26dbf2[_0x1937('0x2e')]=_[_0x1937('0x2f')](_0x1029d9['model'],qs['fields'](_0x4317e8[_0x1937('0x2b')][_0x1937('0x30')]));_0x26dbf2['attributes']=_0x26dbf2['attributes'][_0x1937('0x31')]?_0x26dbf2[_0x1937('0x2e')]:_0x1029d9[_0x1937('0x2d')];if(_0x4317e8[_0x1937('0x2b')]['includeAll']){_0x26dbf2[_0x1937('0x3d')]=[{'all':!![]}];}_0x26dbf2=_[_0x1937('0x38')]({},_0x26dbf2,_0x4317e8['options']);return db[_0x1937('0x28')][_0x1937('0x44')](_0x26dbf2)['then'](handleEntityNotFound(_0x1af2f6,null))[_0x1937('0x21')](respondWithResult(_0x1af2f6,null))[_0x1937('0x40')](handleError(_0x1af2f6,null));};exports[_0x1937('0x45')]=function(_0x2cec67,_0x4bbf68){return db[_0x1937('0x28')][_0x1937('0x45')](_0x2cec67['body'],{})[_0x1937('0x21')](respondWithResult(_0x4bbf68,0xc9))[_0x1937('0x40')](handleError(_0x4bbf68,null));};exports['update']=function(_0x190ae3,_0x244770){if(_0x190ae3[_0x1937('0x46')]['id']){delete _0x190ae3[_0x1937('0x46')]['id'];}return db[_0x1937('0x28')][_0x1937('0x44')]({'where':{'id':_0x190ae3[_0x1937('0x42')]['id']}})[_0x1937('0x21')](handleEntityNotFound(_0x244770,null))[_0x1937('0x21')](saveUpdates(_0x190ae3[_0x1937('0x46')],null))[_0x1937('0x21')](respondWithResult(_0x244770,null))['catch'](handleError(_0x244770,null));};exports[_0x1937('0x22')]=function(_0x37a985,_0x22a317){return db['MailSubstatus'][_0x1937('0x44')]({'where':{'id':_0x37a985['params']['id']}})[_0x1937('0x21')](handleEntityNotFound(_0x22a317,null))[_0x1937('0x21')](removeEntity(_0x22a317,null))['catch'](handleError(_0x22a317,null));};exports[_0x1937('0x47')]=function(_0x65b723,_0x2e3fde){return db[_0x1937('0x28')][_0x1937('0x47')]()[_0x1937('0x21')](respondWithResult(_0x2e3fde,null))[_0x1937('0x40')](handleError(_0x2e3fde,null));};