f8184c1091a589c65546d68b12750a67485d43b4
[motion2.git] / server / api / faxApplication / faxApplication.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 _0x7663=['../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','json','offset','limit','undefined','count','set','Content-Range','apply','reject','save','update','destroy','end','sendStatus','stack','name','index','map','type','key','model','query','filters','intersection','attributes','fields','nolimit','order','sort','where','pick','filter','VIRTUAL','options','FaxApplication','include','findAll','then','show','params','rawAttributes','keys','length','merge','catch','create','body','find','eml-format','rimraf','request-promise','bluebird','util','sox','ejs','fs-extra','lodash','squel','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service'];(function(_0x57895d,_0x147d6c){var _0x41849e=function(_0x1e9bd8){while(--_0x1e9bd8){_0x57895d['push'](_0x57895d['shift']());}};_0x41849e(++_0x147d6c);}(_0x7663,0x1ef));var _0x3766=function(_0x363700,_0x1a61bd){_0x363700=_0x363700-0x0;var _0x451130=_0x7663[_0x363700];return _0x451130;};'use strict';var emlformat=require(_0x3766('0x0'));var rimraf=require(_0x3766('0x1'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x3766('0x2'));var moment=require('moment');var BPromise=require(_0x3766('0x3'));var Mustache=require('mustache');var util=require(_0x3766('0x4'));var path=require('path');var sox=require(_0x3766('0x5'));var csv=require('to-csv');var ejs=require(_0x3766('0x6'));var fs=require('fs');var fs_extra=require(_0x3766('0x7'));var _=require(_0x3766('0x8'));var squel=require(_0x3766('0x9'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x3766('0xa'));var toCsv=require(_0x3766('0xb'));var querystring=require(_0x3766('0xc'));var Papa=require(_0x3766('0xd'));var Redis=require(_0x3766('0xe'));var authService=require(_0x3766('0xf'));var qs=require(_0x3766('0x10'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x3766('0x11'));var logger=require(_0x3766('0x12'))(_0x3766('0x13'));var utils=require(_0x3766('0x14'));var config=require(_0x3766('0x15'));var licenseUtil=require(_0x3766('0x16'));var db=require(_0x3766('0x17'))['db'];function respondWithStatusCode(_0x57bf02,_0x270633){_0x270633=_0x270633||0xcc;return function(_0x2b8a42){if(_0x2b8a42){return _0x57bf02['sendStatus'](_0x270633);}return _0x57bf02[_0x3766('0x18')](_0x270633)['end']();};}function respondWithResult(_0x51445e,_0x3d02ba){_0x3d02ba=_0x3d02ba||0xc8;return function(_0x2f56fe){if(_0x2f56fe){return _0x51445e[_0x3766('0x18')](_0x3d02ba)[_0x3766('0x19')](_0x2f56fe);}};}function respondWithFilteredResult(_0x110f4b,_0x28c07a){return function(_0x517aa9){if(_0x517aa9){var _0x3746e6=typeof _0x28c07a[_0x3766('0x1a')]==='undefined'&&typeof _0x28c07a[_0x3766('0x1b')]===_0x3766('0x1c');var _0x3aa152=_0x517aa9[_0x3766('0x1d')];var _0x1dbf20=_0x3746e6?0x0:_0x28c07a['offset'];var _0x45738f=_0x3746e6?_0x517aa9['count']:_0x28c07a[_0x3766('0x1a')]+_0x28c07a[_0x3766('0x1b')];var _0x3f9ef7;if(_0x45738f>=_0x3aa152){_0x45738f=_0x3aa152;_0x3f9ef7=0xc8;}else{_0x3f9ef7=0xce;}_0x110f4b[_0x3766('0x18')](_0x3f9ef7);return _0x110f4b[_0x3766('0x1e')](_0x3766('0x1f'),_0x1dbf20+'-'+_0x45738f+'/'+_0x3aa152)['json'](_0x517aa9);}return null;};}function patchUpdates(_0x295342){return function(_0x4c7c17){try{jsonpatch[_0x3766('0x20')](_0x4c7c17,_0x295342,!![]);}catch(_0x39be84){return BPromise[_0x3766('0x21')](_0x39be84);}return _0x4c7c17[_0x3766('0x22')]();};}function saveUpdates(_0x434b33,_0x298f88){return function(_0x5d0856){if(_0x5d0856){return _0x5d0856[_0x3766('0x23')](_0x434b33)['then'](function(_0x5d0e19){return _0x5d0e19;});}return null;};}function removeEntity(_0xddc753,_0x7b751f){return function(_0x2a90c4){if(_0x2a90c4){return _0x2a90c4[_0x3766('0x24')]()['then'](function(){_0xddc753[_0x3766('0x18')](0xcc)[_0x3766('0x25')]();});}};}function handleEntityNotFound(_0x3c868a,_0x3b36bf){return function(_0x2ee431){if(!_0x2ee431){_0x3c868a[_0x3766('0x26')](0x194);}return _0x2ee431;};}function handleError(_0x3fd61b,_0x401f81){_0x401f81=_0x401f81||0x1f4;return function(_0x74b1c0){logger['error'](_0x74b1c0[_0x3766('0x27')]);if(_0x74b1c0[_0x3766('0x28')]){delete _0x74b1c0[_0x3766('0x28')];}_0x3fd61b[_0x3766('0x18')](_0x401f81)['send'](_0x74b1c0);};}exports[_0x3766('0x29')]=function(_0x32d5b3,_0x2e61c2){var _0x4a1e68={},_0x56e37f={},_0x96c23e={'count':0x0,'rows':[]};var _0x236e97=_[_0x3766('0x2a')](db['FaxApplication']['rawAttributes'],function(_0x51fb65){return{'name':_0x51fb65['fieldName'],'type':_0x51fb65[_0x3766('0x2b')][_0x3766('0x2c')]};});_0x56e37f[_0x3766('0x2d')]=_[_0x3766('0x2a')](_0x236e97,_0x3766('0x28'));_0x56e37f[_0x3766('0x2e')]=_['keys'](_0x32d5b3['query']);_0x56e37f[_0x3766('0x2f')]=_[_0x3766('0x30')](_0x56e37f[_0x3766('0x2d')],_0x56e37f[_0x3766('0x2e')]);_0x4a1e68[_0x3766('0x31')]=_[_0x3766('0x30')](_0x56e37f[_0x3766('0x2d')],qs[_0x3766('0x32')](_0x32d5b3[_0x3766('0x2e')][_0x3766('0x32')]));_0x4a1e68[_0x3766('0x31')]=_0x4a1e68[_0x3766('0x31')]['length']?_0x4a1e68[_0x3766('0x31')]:_0x56e37f['model'];if(!_0x32d5b3['query']['hasOwnProperty'](_0x3766('0x33'))){_0x4a1e68[_0x3766('0x1b')]=qs[_0x3766('0x1b')](_0x32d5b3[_0x3766('0x2e')][_0x3766('0x1b')]);_0x4a1e68['offset']=qs[_0x3766('0x1a')](_0x32d5b3[_0x3766('0x2e')][_0x3766('0x1a')]);}_0x4a1e68[_0x3766('0x34')]=qs[_0x3766('0x35')](_0x32d5b3[_0x3766('0x2e')]['sort']);_0x4a1e68[_0x3766('0x36')]=qs[_0x3766('0x2f')](_[_0x3766('0x37')](_0x32d5b3[_0x3766('0x2e')],_0x56e37f['filters']),_0x236e97);if(_0x32d5b3['query'][_0x3766('0x38')]){_0x4a1e68[_0x3766('0x36')]=_['merge'](_0x4a1e68[_0x3766('0x36')],{'$or':_['map'](_0x236e97,function(_0x1d96d3){if(_0x1d96d3['type']!==_0x3766('0x39')){var _0x11c13b={};_0x11c13b[_0x1d96d3[_0x3766('0x28')]]={'$like':'%'+_0x32d5b3[_0x3766('0x2e')][_0x3766('0x38')]+'%'};return _0x11c13b;}})});}_0x4a1e68=_['merge']({},_0x4a1e68,_0x32d5b3[_0x3766('0x3a')]);var _0x11ac5e={'where':_0x4a1e68['where']};return db[_0x3766('0x3b')][_0x3766('0x1d')](_0x11ac5e)['then'](function(_0x4bf685){_0x96c23e['count']=_0x4bf685;if(_0x32d5b3['query']['includeAll']){_0x4a1e68[_0x3766('0x3c')]=[{'all':!![]}];}return db[_0x3766('0x3b')][_0x3766('0x3d')](_0x4a1e68);})[_0x3766('0x3e')](function(_0xa26eb6){_0x96c23e['rows']=_0xa26eb6;return _0x96c23e;})[_0x3766('0x3e')](respondWithFilteredResult(_0x2e61c2,_0x4a1e68))['catch'](handleError(_0x2e61c2,null));};exports[_0x3766('0x3f')]=function(_0x4c7570,_0x54a8eb){var _0x6179e6={'raw':!![],'where':{'id':_0x4c7570[_0x3766('0x40')]['id']}},_0x2b9f48={};_0x2b9f48['model']=_['keys'](db[_0x3766('0x3b')][_0x3766('0x41')]);_0x2b9f48['query']=_[_0x3766('0x42')](_0x4c7570['query']);_0x2b9f48[_0x3766('0x2f')]=_[_0x3766('0x30')](_0x2b9f48[_0x3766('0x2d')],_0x2b9f48['query']);_0x6179e6['attributes']=_[_0x3766('0x30')](_0x2b9f48[_0x3766('0x2d')],qs[_0x3766('0x32')](_0x4c7570[_0x3766('0x2e')][_0x3766('0x32')]));_0x6179e6[_0x3766('0x31')]=_0x6179e6[_0x3766('0x31')][_0x3766('0x43')]?_0x6179e6['attributes']:_0x2b9f48[_0x3766('0x2d')];if(_0x4c7570[_0x3766('0x2e')]['includeAll']){_0x6179e6[_0x3766('0x3c')]=[{'all':!![]}];}_0x6179e6=_[_0x3766('0x44')]({},_0x6179e6,_0x4c7570['options']);return db[_0x3766('0x3b')]['find'](_0x6179e6)['then'](handleEntityNotFound(_0x54a8eb,null))['then'](respondWithResult(_0x54a8eb,null))[_0x3766('0x45')](handleError(_0x54a8eb,null));};exports[_0x3766('0x46')]=function(_0x435230,_0x37e8d9){return db[_0x3766('0x3b')][_0x3766('0x46')](_0x435230['body'],{})['then'](respondWithResult(_0x37e8d9,0xc9))[_0x3766('0x45')](handleError(_0x37e8d9,null));};exports[_0x3766('0x23')]=function(_0x5661cf,_0x3d3a50){if(_0x5661cf[_0x3766('0x47')]['id']){delete _0x5661cf[_0x3766('0x47')]['id'];}return db[_0x3766('0x3b')][_0x3766('0x48')]({'where':{'id':_0x5661cf[_0x3766('0x40')]['id']}})['then'](handleEntityNotFound(_0x3d3a50,null))[_0x3766('0x3e')](saveUpdates(_0x5661cf[_0x3766('0x47')],null))[_0x3766('0x3e')](respondWithResult(_0x3d3a50,null))[_0x3766('0x45')](handleError(_0x3d3a50,null));};exports[_0x3766('0x24')]=function(_0x248180,_0x120088){return db[_0x3766('0x3b')][_0x3766('0x48')]({'where':{'id':_0x248180[_0x3766('0x40')]['id']}})[_0x3766('0x3e')](handleEntityNotFound(_0x120088,null))[_0x3766('0x3e')](removeEntity(_0x120088,null))[_0x3766('0x45')](handleError(_0x120088,null));};