Built motion from commit 67e5df37.|2.0.66
[motion2.git] / server / api / mailApplication / mailApplication.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 _0x590a=['send','show','model','keys','MailApplication','query','filters','attributes','intersection','fields','length','includeAll','catch','body','find','params','request-promise','moment','bluebird','mustache','util','to-csv','ejs','lodash','crypto','desk.js','querystring','papaparse','api','../../config/environment','../../mysqldb','sendStatus','status','end','offset','set','Content-Range','json','apply','reject','save','update','then','destroy','error','stack','name'];(function(_0x13b02f,_0x462a53){var _0x12e9a6=function(_0x187d57){while(--_0x187d57){_0x13b02f['push'](_0x13b02f['shift']());}};_0x12e9a6(++_0x462a53);}(_0x590a,0x159));var _0xa590=function(_0x4ae185,_0x59bf02){_0x4ae185=_0x4ae185-0x0;var _0x167a78=_0x590a[_0x4ae185];return _0x167a78;};'use strict';var jsonpatch=require('fast-json-patch');var rp=require(_0xa590('0x0'));var moment=require(_0xa590('0x1'));var BPromise=require(_0xa590('0x2'));var Mustache=require(_0xa590('0x3'));var util=require(_0xa590('0x4'));var path=require('path');var sox=require('sox');var csv=require(_0xa590('0x5'));var ejs=require(_0xa590('0x6'));var fs=require('fs');var _=require(_0xa590('0x7'));var squel=require('squel');var crypto=require(_0xa590('0x8'));var jsforce=require('jsforce');var deskjs=require(_0xa590('0x9'));var toCsv=require(_0xa590('0x5'));var querystring=require(_0xa590('0xa'));var Papa=require(_0xa590('0xb'));var qs=require('../../components/parsers/qs');var logger=require('../../config/logger')(_0xa590('0xc'));var utils=require('../../config/utils');var config=require(_0xa590('0xd'));var db=require(_0xa590('0xe'))['db'];function respondWithStatusCode(_0x3d7163,_0x5ad7e3){_0x5ad7e3=_0x5ad7e3||0xcc;return function(_0x42a9e2){if(_0x42a9e2){return _0x3d7163[_0xa590('0xf')](_0x5ad7e3);}return _0x3d7163[_0xa590('0x10')](_0x5ad7e3)[_0xa590('0x11')]();};}function respondWithResult(_0x43ed55,_0x224ab8){_0x224ab8=_0x224ab8||0xc8;return function(_0x201863){if(_0x201863){return _0x43ed55['status'](_0x224ab8)['json'](_0x201863);}};}function respondWithFilteredResult(_0x252e2b,_0xb67661){return function(_0x5b23a4){if(_0x5b23a4){var _0x1733ab=_0x5b23a4['count'],_0x52656c=_0xb67661['offset'],_0xdf68af=_0xb67661[_0xa590('0x12')]+_0xb67661['limit'],_0x3c1fee;if(_0xdf68af>=_0x1733ab){_0xdf68af=_0x1733ab;_0x3c1fee=0xc8;}else{_0x3c1fee=0xce;}_0x252e2b[_0xa590('0x10')](_0x3c1fee);return _0x252e2b[_0xa590('0x13')](_0xa590('0x14'),_0x52656c+'-'+_0xdf68af+'/'+_0x1733ab)[_0xa590('0x15')](_0x5b23a4);}return null;};}function patchUpdates(_0xfb7055){return function(_0x114654){try{jsonpatch[_0xa590('0x16')](_0x114654,_0xfb7055,!![]);}catch(_0x458a80){return BPromise[_0xa590('0x17')](_0x458a80);}return _0x114654[_0xa590('0x18')]();};}function saveUpdates(_0x203812,_0x360a1e){return function(_0x2161ce){if(_0x2161ce){return _0x2161ce[_0xa590('0x19')](_0x203812)[_0xa590('0x1a')](function(_0x219d01){return _0x219d01;});}return null;};}function removeEntity(_0x230299,_0x37e07e){return function(_0x41687a){if(_0x41687a){return _0x41687a[_0xa590('0x1b')]()[_0xa590('0x1a')](function(){_0x230299[_0xa590('0x10')](0xcc)['end']();});}};}function handleEntityNotFound(_0x1fb3fd,_0x1cf866){return function(_0x47d5f4){if(!_0x47d5f4){_0x1fb3fd['sendStatus'](0x194);}return _0x47d5f4;};}function handleError(_0x2ccb4e,_0x16113c){_0x16113c=_0x16113c||0x1f4;return function(_0x1163c3){logger[_0xa590('0x1c')](_0x1163c3[_0xa590('0x1d')]);if(_0x1163c3['name']){delete _0x1163c3[_0xa590('0x1e')];}_0x2ccb4e[_0xa590('0x10')](_0x16113c)[_0xa590('0x1f')](_0x1163c3);};}exports[_0xa590('0x20')]=function(_0x41eb90,_0x457a32){var _0x5a1396={'raw':!![],'where':{'id':_0x41eb90['params']['id']}},_0x3a9c51={};_0x3a9c51[_0xa590('0x21')]=_[_0xa590('0x22')](db[_0xa590('0x23')]['rawAttributes']);_0x3a9c51[_0xa590('0x24')]=_[_0xa590('0x22')](_0x41eb90[_0xa590('0x24')]);_0x3a9c51[_0xa590('0x25')]=_['intersection'](_0x3a9c51['model'],_0x3a9c51[_0xa590('0x24')]);_0x5a1396[_0xa590('0x26')]=_[_0xa590('0x27')](_0x3a9c51[_0xa590('0x21')],qs[_0xa590('0x28')](_0x41eb90[_0xa590('0x24')][_0xa590('0x28')]));_0x5a1396['attributes']=_0x5a1396[_0xa590('0x26')][_0xa590('0x29')]?_0x5a1396[_0xa590('0x26')]:_0x3a9c51[_0xa590('0x21')];if(_0x41eb90[_0xa590('0x24')][_0xa590('0x2a')]){_0x5a1396['include']=[{'all':!![]}];}_0x5a1396=_['merge']({},_0x5a1396,_0x41eb90['options']);return db[_0xa590('0x23')]['find'](_0x5a1396)['then'](handleEntityNotFound(_0x457a32,null))[_0xa590('0x1a')](respondWithResult(_0x457a32,null))[_0xa590('0x2b')](handleError(_0x457a32,null));};exports[_0xa590('0x19')]=function(_0x2cbe1a,_0x5b165b){if(_0x2cbe1a[_0xa590('0x2c')]['id']){delete _0x2cbe1a[_0xa590('0x2c')]['id'];}return db['MailApplication'][_0xa590('0x2d')]({'where':{'id':_0x2cbe1a[_0xa590('0x2e')]['id']}})[_0xa590('0x1a')](handleEntityNotFound(_0x5b165b,null))[_0xa590('0x1a')](saveUpdates(_0x2cbe1a[_0xa590('0x2c')],null))['then'](respondWithResult(_0x5b165b,null))[_0xa590('0x2b')](handleError(_0x5b165b,null));};exports['destroy']=function(_0x1b2d60,_0x15f2c5){return db[_0xa590('0x23')][_0xa590('0x2d')]({'where':{'id':_0x1b2d60['params']['id']}})[_0xa590('0x1a')](handleEntityNotFound(_0x15f2c5,null))[_0xa590('0x1a')](removeEntity(_0x15f2c5,null))[_0xa590('0x2b')](handleError(_0x15f2c5,null));};