753380ffe03916630908a13e733df1559f0b6950
[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 _0xcdcc=['describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','../../config/utils','../../config/environment','../../mysqldb','status','end','json','offset','undefined','limit','count','set','apply','reject','save','update','then','destroy','error','stack','send','index','map','MailSubstatus','rawAttributes','fieldName','type','key','model','name','query','filters','intersection','attributes','fields','length','order','sort','pick','where','VIRTUAL','filter','merge','options','includeAll','include','findAll','rows','catch','show','params','keys','create','body','find'];(function(_0x376597,_0x2eb352){var _0x23efae=function(_0x1e0afb){while(--_0x1e0afb){_0x376597['push'](_0x376597['shift']());}};_0x23efae(++_0x2eb352);}(_0xcdcc,0xa3));var _0xccdc=function(_0x514030,_0x45aa55){_0x514030=_0x514030-0x0;var _0x5aab41=_0xcdcc[_0x514030];return _0x5aab41;};'use strict';var emlformat=require(_0xccdc('0x0'));var rimraf=require(_0xccdc('0x1'));var zipdir=require(_0xccdc('0x2'));var jsonpatch=require(_0xccdc('0x3'));var rp=require(_0xccdc('0x4'));var moment=require(_0xccdc('0x5'));var BPromise=require(_0xccdc('0x6'));var Mustache=require(_0xccdc('0x7'));var util=require(_0xccdc('0x8'));var path=require(_0xccdc('0x9'));var sox=require(_0xccdc('0xa'));var csv=require(_0xccdc('0xb'));var ejs=require(_0xccdc('0xc'));var fs=require('fs');var fs_extra=require(_0xccdc('0xd'));var _=require(_0xccdc('0xe'));var squel=require(_0xccdc('0xf'));var crypto=require(_0xccdc('0x10'));var jsforce=require(_0xccdc('0x11'));var deskjs=require(_0xccdc('0x12'));var toCsv=require(_0xccdc('0xb'));var querystring=require(_0xccdc('0x13'));var Papa=require(_0xccdc('0x14'));var Redis=require(_0xccdc('0x15'));var authService=require(_0xccdc('0x16'));var qs=require(_0xccdc('0x17'));var as=require(_0xccdc('0x18'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xccdc('0x19'))('api');var utils=require(_0xccdc('0x1a'));var config=require(_0xccdc('0x1b'));var licenseUtil=require('../../config/license/util');var db=require(_0xccdc('0x1c'))['db'];function respondWithStatusCode(_0x196723,_0x34a4d8){_0x34a4d8=_0x34a4d8||0xcc;return function(_0x3bb156){if(_0x3bb156){return _0x196723['sendStatus'](_0x34a4d8);}return _0x196723[_0xccdc('0x1d')](_0x34a4d8)[_0xccdc('0x1e')]();};}function respondWithResult(_0x10ec62,_0x1c7499){_0x1c7499=_0x1c7499||0xc8;return function(_0x2d1181){if(_0x2d1181){return _0x10ec62[_0xccdc('0x1d')](_0x1c7499)[_0xccdc('0x1f')](_0x2d1181);}};}function respondWithFilteredResult(_0x47e0cc,_0x2126b3){return function(_0x2cfb57){if(_0x2cfb57){var _0x3056f7=typeof _0x2126b3[_0xccdc('0x20')]===_0xccdc('0x21')&&typeof _0x2126b3[_0xccdc('0x22')]===_0xccdc('0x21');var _0x2734f8=_0x2cfb57[_0xccdc('0x23')];var _0x1180b6=_0x3056f7?0x0:_0x2126b3[_0xccdc('0x20')];var _0xf74b6c=_0x3056f7?_0x2cfb57[_0xccdc('0x23')]:_0x2126b3[_0xccdc('0x20')]+_0x2126b3[_0xccdc('0x22')];var _0x1be294;if(_0xf74b6c>=_0x2734f8){_0xf74b6c=_0x2734f8;_0x1be294=0xc8;}else{_0x1be294=0xce;}_0x47e0cc['status'](_0x1be294);return _0x47e0cc[_0xccdc('0x24')]('Content-Range',_0x1180b6+'-'+_0xf74b6c+'/'+_0x2734f8)[_0xccdc('0x1f')](_0x2cfb57);}return null;};}function patchUpdates(_0x4fae24){return function(_0x5ec78c){try{jsonpatch[_0xccdc('0x25')](_0x5ec78c,_0x4fae24,!![]);}catch(_0x5da23d){return BPromise[_0xccdc('0x26')](_0x5da23d);}return _0x5ec78c[_0xccdc('0x27')]();};}function saveUpdates(_0x56535d,_0xabdfa0){return function(_0x3dc989){if(_0x3dc989){return _0x3dc989[_0xccdc('0x28')](_0x56535d)[_0xccdc('0x29')](function(_0x120b13){return _0x120b13;});}return null;};}function removeEntity(_0x3819b4,_0x18422a){return function(_0x4b02b1){if(_0x4b02b1){return _0x4b02b1[_0xccdc('0x2a')]()['then'](function(){_0x3819b4[_0xccdc('0x1d')](0xcc)['end']();});}};}function handleEntityNotFound(_0x13eb3f,_0x3a8e71){return function(_0x32b0c4){if(!_0x32b0c4){_0x13eb3f['sendStatus'](0x194);}return _0x32b0c4;};}function handleError(_0x2f0795,_0x5d42d8){_0x5d42d8=_0x5d42d8||0x1f4;return function(_0x408dfe){logger[_0xccdc('0x2b')](_0x408dfe[_0xccdc('0x2c')]);if(_0x408dfe['name']){delete _0x408dfe['name'];}_0x2f0795['status'](_0x5d42d8)[_0xccdc('0x2d')](_0x408dfe);};}exports[_0xccdc('0x2e')]=function(_0x29f5be,_0x5c21b5){var _0x4db363={},_0x2a2414={},_0x4e1e1e={'count':0x0,'rows':[]};var _0x3c5b08=_[_0xccdc('0x2f')](db[_0xccdc('0x30')][_0xccdc('0x31')],function(_0xf2763c){return{'name':_0xf2763c[_0xccdc('0x32')],'type':_0xf2763c[_0xccdc('0x33')][_0xccdc('0x34')]};});_0x2a2414[_0xccdc('0x35')]=_[_0xccdc('0x2f')](_0x3c5b08,_0xccdc('0x36'));_0x2a2414[_0xccdc('0x37')]=_['keys'](_0x29f5be[_0xccdc('0x37')]);_0x2a2414[_0xccdc('0x38')]=_[_0xccdc('0x39')](_0x2a2414[_0xccdc('0x35')],_0x2a2414[_0xccdc('0x37')]);_0x4db363[_0xccdc('0x3a')]=_[_0xccdc('0x39')](_0x2a2414[_0xccdc('0x35')],qs[_0xccdc('0x3b')](_0x29f5be[_0xccdc('0x37')][_0xccdc('0x3b')]));_0x4db363[_0xccdc('0x3a')]=_0x4db363[_0xccdc('0x3a')][_0xccdc('0x3c')]?_0x4db363[_0xccdc('0x3a')]:_0x2a2414[_0xccdc('0x35')];if(!_0x29f5be[_0xccdc('0x37')]['hasOwnProperty']('nolimit')){_0x4db363[_0xccdc('0x22')]=qs[_0xccdc('0x22')](_0x29f5be[_0xccdc('0x37')][_0xccdc('0x22')]);_0x4db363['offset']=qs[_0xccdc('0x20')](_0x29f5be[_0xccdc('0x37')][_0xccdc('0x20')]);}_0x4db363[_0xccdc('0x3d')]=qs[_0xccdc('0x3e')](_0x29f5be[_0xccdc('0x37')][_0xccdc('0x3e')]);_0x4db363['where']=qs['filters'](_[_0xccdc('0x3f')](_0x29f5be[_0xccdc('0x37')],_0x2a2414[_0xccdc('0x38')]),_0x3c5b08);if(_0x29f5be[_0xccdc('0x37')]['filter']){_0x4db363[_0xccdc('0x40')]=_['merge'](_0x4db363[_0xccdc('0x40')],{'$or':_['map'](_0x3c5b08,function(_0x99246a){if(_0x99246a[_0xccdc('0x33')]!==_0xccdc('0x41')){var _0x55ce2c={};_0x55ce2c[_0x99246a[_0xccdc('0x36')]]={'$like':'%'+_0x29f5be['query'][_0xccdc('0x42')]+'%'};return _0x55ce2c;}})});}_0x4db363=_[_0xccdc('0x43')]({},_0x4db363,_0x29f5be[_0xccdc('0x44')]);var _0x211ca5={'where':_0x4db363[_0xccdc('0x40')]};return db[_0xccdc('0x30')][_0xccdc('0x23')](_0x211ca5)['then'](function(_0x56269d){_0x4e1e1e['count']=_0x56269d;if(_0x29f5be[_0xccdc('0x37')][_0xccdc('0x45')]){_0x4db363[_0xccdc('0x46')]=[{'all':!![]}];}return db[_0xccdc('0x30')][_0xccdc('0x47')](_0x4db363);})['then'](function(_0xb5c775){_0x4e1e1e[_0xccdc('0x48')]=_0xb5c775;return _0x4e1e1e;})['then'](respondWithFilteredResult(_0x5c21b5,_0x4db363))[_0xccdc('0x49')](handleError(_0x5c21b5,null));};exports[_0xccdc('0x4a')]=function(_0x554fcf,_0x201c7c){var _0x3dc5b1={'raw':!![],'where':{'id':_0x554fcf[_0xccdc('0x4b')]['id']}},_0x5a2174={};_0x5a2174[_0xccdc('0x35')]=_[_0xccdc('0x4c')](db[_0xccdc('0x30')]['rawAttributes']);_0x5a2174[_0xccdc('0x37')]=_[_0xccdc('0x4c')](_0x554fcf[_0xccdc('0x37')]);_0x5a2174[_0xccdc('0x38')]=_[_0xccdc('0x39')](_0x5a2174['model'],_0x5a2174[_0xccdc('0x37')]);_0x3dc5b1[_0xccdc('0x3a')]=_[_0xccdc('0x39')](_0x5a2174[_0xccdc('0x35')],qs[_0xccdc('0x3b')](_0x554fcf['query'][_0xccdc('0x3b')]));_0x3dc5b1[_0xccdc('0x3a')]=_0x3dc5b1[_0xccdc('0x3a')][_0xccdc('0x3c')]?_0x3dc5b1[_0xccdc('0x3a')]:_0x5a2174[_0xccdc('0x35')];if(_0x554fcf[_0xccdc('0x37')]['includeAll']){_0x3dc5b1[_0xccdc('0x46')]=[{'all':!![]}];}_0x3dc5b1=_['merge']({},_0x3dc5b1,_0x554fcf[_0xccdc('0x44')]);return db[_0xccdc('0x30')]['find'](_0x3dc5b1)['then'](handleEntityNotFound(_0x201c7c,null))['then'](respondWithResult(_0x201c7c,null))[_0xccdc('0x49')](handleError(_0x201c7c,null));};exports[_0xccdc('0x4d')]=function(_0xe2c287,_0x8509a3){return db[_0xccdc('0x30')][_0xccdc('0x4d')](_0xe2c287['body'],{})[_0xccdc('0x29')](respondWithResult(_0x8509a3,0xc9))[_0xccdc('0x49')](handleError(_0x8509a3,null));};exports[_0xccdc('0x28')]=function(_0x173d88,_0x42614e){if(_0x173d88[_0xccdc('0x4e')]['id']){delete _0x173d88[_0xccdc('0x4e')]['id'];}return db[_0xccdc('0x30')][_0xccdc('0x4f')]({'where':{'id':_0x173d88[_0xccdc('0x4b')]['id']}})[_0xccdc('0x29')](handleEntityNotFound(_0x42614e,null))[_0xccdc('0x29')](saveUpdates(_0x173d88['body'],null))[_0xccdc('0x29')](respondWithResult(_0x42614e,null))[_0xccdc('0x49')](handleError(_0x42614e,null));};exports['destroy']=function(_0x319833,_0x5e2d58){return db['MailSubstatus'][_0xccdc('0x4f')]({'where':{'id':_0x319833[_0xccdc('0x4b')]['id']}})[_0xccdc('0x29')](handleEntityNotFound(_0x5e2d58,null))[_0xccdc('0x29')](removeEntity(_0x5e2d58,null))[_0xccdc('0x49')](handleError(_0x5e2d58,null));};exports[_0xccdc('0x50')]=function(_0x481cda,_0x18b09e){return db[_0xccdc('0x30')]['describe']()[_0xccdc('0x29')](respondWithResult(_0x18b09e,null))['catch'](handleError(_0x18b09e,null));};