Built motion from commit a61a4a20.|2.5.46
[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 _0xb794=['to-csv','fs-extra','lodash','crypto','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/advancedSearch','../../config/logger','../../config/utils','../../config/license/util','sendStatus','status','json','limit','undefined','count','offset','set','Content-Range','apply','reject','save','update','then','destroy','error','stack','name','send','index','map','rawAttributes','fieldName','type','model','query','keys','filters','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','merge','VIRTUAL','options','MailSubstatus','includeAll','include','findAll','rows','show','intersection','find','create','body','params','catch','describe','eml-format','zip-dir','fast-json-patch','moment','bluebird','mustache','path','sox'];(function(_0x20575d,_0x34ab83){var _0x25a4a3=function(_0x2ed607){while(--_0x2ed607){_0x20575d['push'](_0x20575d['shift']());}};_0x25a4a3(++_0x34ab83);}(_0xb794,0xd6));var _0x4b79=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0xb794[_0x3dd15e];return _0x231fd0;};'use strict';var emlformat=require(_0x4b79('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x4b79('0x1'));var jsonpatch=require(_0x4b79('0x2'));var rp=require('request-promise');var moment=require(_0x4b79('0x3'));var BPromise=require(_0x4b79('0x4'));var Mustache=require(_0x4b79('0x5'));var util=require('util');var path=require(_0x4b79('0x6'));var sox=require(_0x4b79('0x7'));var csv=require(_0x4b79('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x4b79('0x9'));var _=require(_0x4b79('0xa'));var squel=require('squel');var crypto=require(_0x4b79('0xb'));var jsforce=require(_0x4b79('0xc'));var deskjs=require(_0x4b79('0xd'));var toCsv=require(_0x4b79('0x8'));var querystring=require(_0x4b79('0xe'));var Papa=require(_0x4b79('0xf'));var Redis=require('ioredis');var authService=require(_0x4b79('0x10'));var qs=require('../../components/parsers/qs');var as=require(_0x4b79('0x11'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x4b79('0x12'))('api');var utils=require(_0x4b79('0x13'));var config=require('../../config/environment');var licenseUtil=require(_0x4b79('0x14'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x3e2837,_0x8e5e1e){_0x8e5e1e=_0x8e5e1e||0xcc;return function(_0x42b5ba){if(_0x42b5ba){return _0x3e2837[_0x4b79('0x15')](_0x8e5e1e);}return _0x3e2837[_0x4b79('0x16')](_0x8e5e1e)['end']();};}function respondWithResult(_0x2ac1f0,_0xc58f6b){_0xc58f6b=_0xc58f6b||0xc8;return function(_0x5c6bbf){if(_0x5c6bbf){return _0x2ac1f0['status'](_0xc58f6b)[_0x4b79('0x17')](_0x5c6bbf);}};}function respondWithFilteredResult(_0x2dd1d4,_0x2474c1){return function(_0x2b13df){if(_0x2b13df){var _0x53db67=typeof _0x2474c1['offset']==='undefined'&&typeof _0x2474c1[_0x4b79('0x18')]===_0x4b79('0x19');var _0x284b8f=_0x2b13df[_0x4b79('0x1a')];var _0x479d7f=_0x53db67?0x0:_0x2474c1[_0x4b79('0x1b')];var _0x2f8c34=_0x53db67?_0x2b13df[_0x4b79('0x1a')]:_0x2474c1['offset']+_0x2474c1['limit'];var _0x542678;if(_0x2f8c34>=_0x284b8f){_0x2f8c34=_0x284b8f;_0x542678=0xc8;}else{_0x542678=0xce;}_0x2dd1d4['status'](_0x542678);return _0x2dd1d4[_0x4b79('0x1c')](_0x4b79('0x1d'),_0x479d7f+'-'+_0x2f8c34+'/'+_0x284b8f)[_0x4b79('0x17')](_0x2b13df);}return null;};}function patchUpdates(_0x15510d){return function(_0x55fc82){try{jsonpatch[_0x4b79('0x1e')](_0x55fc82,_0x15510d,!![]);}catch(_0x3ec3aa){return BPromise[_0x4b79('0x1f')](_0x3ec3aa);}return _0x55fc82[_0x4b79('0x20')]();};}function saveUpdates(_0x4d9e96,_0x5b6a6b){return function(_0x58f35f){if(_0x58f35f){return _0x58f35f[_0x4b79('0x21')](_0x4d9e96)[_0x4b79('0x22')](function(_0x3769e9){return _0x3769e9;});}return null;};}function removeEntity(_0x5c351b,_0x465d80){return function(_0x31a5ad){if(_0x31a5ad){return _0x31a5ad[_0x4b79('0x23')]()['then'](function(){_0x5c351b[_0x4b79('0x16')](0xcc)['end']();});}};}function handleEntityNotFound(_0x4ba94b,_0x34d4cb){return function(_0x83779b){if(!_0x83779b){_0x4ba94b[_0x4b79('0x15')](0x194);}return _0x83779b;};}function handleError(_0x19a4e3,_0x5d3762){_0x5d3762=_0x5d3762||0x1f4;return function(_0x572f26){logger[_0x4b79('0x24')](_0x572f26[_0x4b79('0x25')]);if(_0x572f26[_0x4b79('0x26')]){delete _0x572f26[_0x4b79('0x26')];}_0x19a4e3[_0x4b79('0x16')](_0x5d3762)[_0x4b79('0x27')](_0x572f26);};}exports[_0x4b79('0x28')]=function(_0x1f86f9,_0xd2787e){var _0x15c6ef={},_0x114046={},_0x1f78b3={'count':0x0,'rows':[]};var _0xaae758=_[_0x4b79('0x29')](db['MailSubstatus'][_0x4b79('0x2a')],function(_0x1be2a2){return{'name':_0x1be2a2[_0x4b79('0x2b')],'type':_0x1be2a2[_0x4b79('0x2c')]['key']};});_0x114046[_0x4b79('0x2d')]=_['map'](_0xaae758,_0x4b79('0x26'));_0x114046[_0x4b79('0x2e')]=_[_0x4b79('0x2f')](_0x1f86f9[_0x4b79('0x2e')]);_0x114046[_0x4b79('0x30')]=_['intersection'](_0x114046[_0x4b79('0x2d')],_0x114046[_0x4b79('0x2e')]);_0x15c6ef[_0x4b79('0x31')]=_['intersection'](_0x114046[_0x4b79('0x2d')],qs[_0x4b79('0x32')](_0x1f86f9['query'][_0x4b79('0x32')]));_0x15c6ef[_0x4b79('0x31')]=_0x15c6ef[_0x4b79('0x31')][_0x4b79('0x33')]?_0x15c6ef[_0x4b79('0x31')]:_0x114046[_0x4b79('0x2d')];if(!_0x1f86f9[_0x4b79('0x2e')][_0x4b79('0x34')](_0x4b79('0x35'))){_0x15c6ef['limit']=qs[_0x4b79('0x18')](_0x1f86f9[_0x4b79('0x2e')][_0x4b79('0x18')]);_0x15c6ef['offset']=qs[_0x4b79('0x1b')](_0x1f86f9[_0x4b79('0x2e')]['offset']);}_0x15c6ef[_0x4b79('0x36')]=qs[_0x4b79('0x37')](_0x1f86f9['query'][_0x4b79('0x37')]);_0x15c6ef[_0x4b79('0x38')]=qs['filters'](_[_0x4b79('0x39')](_0x1f86f9[_0x4b79('0x2e')],_0x114046[_0x4b79('0x30')]),_0xaae758);if(_0x1f86f9[_0x4b79('0x2e')]['filter']){_0x15c6ef[_0x4b79('0x38')]=_[_0x4b79('0x3a')](_0x15c6ef[_0x4b79('0x38')],{'$or':_[_0x4b79('0x29')](_0xaae758,function(_0x16c37c){if(_0x16c37c[_0x4b79('0x2c')]!==_0x4b79('0x3b')){var _0x6e1a05={};_0x6e1a05[_0x16c37c[_0x4b79('0x26')]]={'$like':'%'+_0x1f86f9[_0x4b79('0x2e')]['filter']+'%'};return _0x6e1a05;}})});}_0x15c6ef=_[_0x4b79('0x3a')]({},_0x15c6ef,_0x1f86f9[_0x4b79('0x3c')]);var _0x47e81a={'where':_0x15c6ef['where']};return db[_0x4b79('0x3d')][_0x4b79('0x1a')](_0x47e81a)[_0x4b79('0x22')](function(_0x56e169){_0x1f78b3['count']=_0x56e169;if(_0x1f86f9['query'][_0x4b79('0x3e')]){_0x15c6ef[_0x4b79('0x3f')]=[{'all':!![]}];}return db[_0x4b79('0x3d')][_0x4b79('0x40')](_0x15c6ef);})[_0x4b79('0x22')](function(_0x411583){_0x1f78b3[_0x4b79('0x41')]=_0x411583;return _0x1f78b3;})[_0x4b79('0x22')](respondWithFilteredResult(_0xd2787e,_0x15c6ef))['catch'](handleError(_0xd2787e,null));};exports[_0x4b79('0x42')]=function(_0x2cb4a3,_0x54a869){var _0x293e8c={'raw':!![],'where':{'id':_0x2cb4a3['params']['id']}},_0x52c80d={};_0x52c80d['model']=_['keys'](db['MailSubstatus'][_0x4b79('0x2a')]);_0x52c80d[_0x4b79('0x2e')]=_[_0x4b79('0x2f')](_0x2cb4a3[_0x4b79('0x2e')]);_0x52c80d[_0x4b79('0x30')]=_[_0x4b79('0x43')](_0x52c80d['model'],_0x52c80d[_0x4b79('0x2e')]);_0x293e8c[_0x4b79('0x31')]=_[_0x4b79('0x43')](_0x52c80d[_0x4b79('0x2d')],qs[_0x4b79('0x32')](_0x2cb4a3['query'][_0x4b79('0x32')]));_0x293e8c['attributes']=_0x293e8c[_0x4b79('0x31')][_0x4b79('0x33')]?_0x293e8c[_0x4b79('0x31')]:_0x52c80d['model'];if(_0x2cb4a3['query'][_0x4b79('0x3e')]){_0x293e8c['include']=[{'all':!![]}];}_0x293e8c=_[_0x4b79('0x3a')]({},_0x293e8c,_0x2cb4a3[_0x4b79('0x3c')]);return db[_0x4b79('0x3d')][_0x4b79('0x44')](_0x293e8c)['then'](handleEntityNotFound(_0x54a869,null))['then'](respondWithResult(_0x54a869,null))['catch'](handleError(_0x54a869,null));};exports[_0x4b79('0x45')]=function(_0xa0a4b0,_0x4a20c5){return db['MailSubstatus']['create'](_0xa0a4b0['body'],{})['then'](respondWithResult(_0x4a20c5,0xc9))['catch'](handleError(_0x4a20c5,null));};exports[_0x4b79('0x21')]=function(_0x34c2a5,_0xd26846){if(_0x34c2a5[_0x4b79('0x46')]['id']){delete _0x34c2a5[_0x4b79('0x46')]['id'];}return db[_0x4b79('0x3d')][_0x4b79('0x44')]({'where':{'id':_0x34c2a5[_0x4b79('0x47')]['id']}})[_0x4b79('0x22')](handleEntityNotFound(_0xd26846,null))['then'](saveUpdates(_0x34c2a5['body'],null))[_0x4b79('0x22')](respondWithResult(_0xd26846,null))[_0x4b79('0x48')](handleError(_0xd26846,null));};exports[_0x4b79('0x23')]=function(_0x5b6e95,_0x22235e){return db[_0x4b79('0x3d')]['find']({'where':{'id':_0x5b6e95['params']['id']}})[_0x4b79('0x22')](handleEntityNotFound(_0x22235e,null))[_0x4b79('0x22')](removeEntity(_0x22235e,null))[_0x4b79('0x48')](handleError(_0x22235e,null));};exports[_0x4b79('0x49')]=function(_0x2e8aed,_0x5b9d79){return db[_0x4b79('0x3d')][_0x4b79('0x49')]()[_0x4b79('0x22')](respondWithResult(_0x5b9d79,null))[_0x4b79('0x48')](handleError(_0x5b9d79,null));};