456e99d401a284c696ba27bc15818042ba103619
[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 _0x1575=['moment','bluebird','util','sox','to-csv','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','end','json','offset','limit','undefined','count','Content-Range','reject','save','update','destroy','then','error','stack','name','send','merge','message','agent','interaction','account','index','map','rawAttributes','fieldName','type','model','query','filters','intersection','fields','attributes','hasOwnProperty','nolimit','sort','pick','filter','where','VIRTUAL','options','FaxApplication','include','findAll','rows','show','params','keys','length','includeAll','find','create','body','catch','eml-format','rimraf','zip-dir','fast-json-patch','request-promise'];(function(_0x46538e,_0x1a2620){var _0x4da081=function(_0x5f2f8d){while(--_0x5f2f8d){_0x46538e['push'](_0x46538e['shift']());}};_0x4da081(++_0x1a2620);}(_0x1575,0x190));var _0x5157=function(_0x397d31,_0x48c9e9){_0x397d31=_0x397d31-0x0;var _0x256bfc=_0x1575[_0x397d31];return _0x256bfc;};'use strict';var emlformat=require(_0x5157('0x0'));var rimraf=require(_0x5157('0x1'));var zipdir=require(_0x5157('0x2'));var jsonpatch=require(_0x5157('0x3'));var rp=require(_0x5157('0x4'));var moment=require(_0x5157('0x5'));var BPromise=require(_0x5157('0x6'));var Mustache=require('mustache');var util=require(_0x5157('0x7'));var path=require('path');var sox=require(_0x5157('0x8'));var csv=require(_0x5157('0x9'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x5157('0xa'));var _=require(_0x5157('0xb'));var squel=require(_0x5157('0xc'));var crypto=require(_0x5157('0xd'));var jsforce=require(_0x5157('0xe'));var deskjs=require(_0x5157('0xf'));var toCsv=require(_0x5157('0x9'));var querystring=require(_0x5157('0x10'));var Papa=require('papaparse');var Redis=require(_0x5157('0x11'));var authService=require(_0x5157('0x12'));var qs=require(_0x5157('0x13'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x5157('0x14'));var logger=require(_0x5157('0x15'))(_0x5157('0x16'));var utils=require(_0x5157('0x17'));var config=require(_0x5157('0x18'));var licenseUtil=require(_0x5157('0x19'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x100e2e,_0x34bb3a){_0x34bb3a=_0x34bb3a||0xcc;return function(_0x2f4442){if(_0x2f4442){return _0x100e2e[_0x5157('0x1a')](_0x34bb3a);}return _0x100e2e[_0x5157('0x1b')](_0x34bb3a)[_0x5157('0x1c')]();};}function respondWithResult(_0x4b3ce8,_0x3f967f){_0x3f967f=_0x3f967f||0xc8;return function(_0x1ba2c5){if(_0x1ba2c5){return _0x4b3ce8[_0x5157('0x1b')](_0x3f967f)[_0x5157('0x1d')](_0x1ba2c5);}};}function respondWithFilteredResult(_0x29236a,_0x18fa03){return function(_0x22ede2){if(_0x22ede2){var _0x1ba156=typeof _0x18fa03[_0x5157('0x1e')]==='undefined'&&typeof _0x18fa03[_0x5157('0x1f')]===_0x5157('0x20');var _0x350d40=_0x22ede2[_0x5157('0x21')];var _0xecc287=_0x1ba156?0x0:_0x18fa03[_0x5157('0x1e')];var _0x10f61e=_0x1ba156?_0x22ede2[_0x5157('0x21')]:_0x18fa03[_0x5157('0x1e')]+_0x18fa03[_0x5157('0x1f')];var _0x35b38c;if(_0x10f61e>=_0x350d40){_0x10f61e=_0x350d40;_0x35b38c=0xc8;}else{_0x35b38c=0xce;}_0x29236a['status'](_0x35b38c);return _0x29236a['set'](_0x5157('0x22'),_0xecc287+'-'+_0x10f61e+'/'+_0x350d40)[_0x5157('0x1d')](_0x22ede2);}return null;};}function patchUpdates(_0xa5fe58){return function(_0x328e9d){try{jsonpatch['apply'](_0x328e9d,_0xa5fe58,!![]);}catch(_0x160636){return BPromise[_0x5157('0x23')](_0x160636);}return _0x328e9d[_0x5157('0x24')]();};}function saveUpdates(_0x589ff7,_0x26569e){return function(_0x2b46cb){if(_0x2b46cb){return _0x2b46cb[_0x5157('0x25')](_0x589ff7)['then'](function(_0x598a60){return _0x598a60;});}return null;};}function removeEntity(_0x48c6da,_0x208bff){return function(_0x4f30b8){if(_0x4f30b8){return _0x4f30b8[_0x5157('0x26')]()[_0x5157('0x27')](function(){_0x48c6da['status'](0xcc)[_0x5157('0x1c')]();});}};}function handleEntityNotFound(_0x3e1d8c,_0x4ac155){return function(_0x276fbd){if(!_0x276fbd){_0x3e1d8c['sendStatus'](0x194);}return _0x276fbd;};}function handleError(_0x4e1d75,_0x170dfe){_0x170dfe=_0x170dfe||0x1f4;return function(_0x9bba51){logger[_0x5157('0x28')](_0x9bba51[_0x5157('0x29')]);if(_0x9bba51[_0x5157('0x2a')]){delete _0x9bba51['name'];}_0x4e1d75[_0x5157('0x1b')](_0x170dfe)[_0x5157('0x2b')](_0x9bba51);};}function getMustacheRender(_0x53a52d,_0x21c697){return Mustache['render'](_0x53a52d,_[_0x5157('0x2c')](_0x21c697['body'],{'contact':_0x21c697['contact'],'message':_0x21c697[_0x5157('0x2d')],'agent':_0x21c697[_0x5157('0x2e')],'interaction':_0x21c697[_0x5157('0x2f')],'account':_0x21c697[_0x5157('0x30')]}))||'';}exports[_0x5157('0x31')]=function(_0x3ac479,_0x40d2a2){var _0x482c35={},_0x3acfe3={},_0x32da29={'count':0x0,'rows':[]};var _0x3ecf28=_[_0x5157('0x32')](db['FaxApplication'][_0x5157('0x33')],function(_0x2bd94c){return{'name':_0x2bd94c[_0x5157('0x34')],'type':_0x2bd94c[_0x5157('0x35')]['key']};});_0x3acfe3[_0x5157('0x36')]=_[_0x5157('0x32')](_0x3ecf28,_0x5157('0x2a'));_0x3acfe3[_0x5157('0x37')]=_['keys'](_0x3ac479['query']);_0x3acfe3[_0x5157('0x38')]=_[_0x5157('0x39')](_0x3acfe3[_0x5157('0x36')],_0x3acfe3[_0x5157('0x37')]);_0x482c35['attributes']=_[_0x5157('0x39')](_0x3acfe3[_0x5157('0x36')],qs['fields'](_0x3ac479[_0x5157('0x37')][_0x5157('0x3a')]));_0x482c35[_0x5157('0x3b')]=_0x482c35['attributes']['length']?_0x482c35[_0x5157('0x3b')]:_0x3acfe3['model'];if(!_0x3ac479[_0x5157('0x37')][_0x5157('0x3c')](_0x5157('0x3d'))){_0x482c35[_0x5157('0x1f')]=qs[_0x5157('0x1f')](_0x3ac479[_0x5157('0x37')][_0x5157('0x1f')]);_0x482c35[_0x5157('0x1e')]=qs[_0x5157('0x1e')](_0x3ac479[_0x5157('0x37')][_0x5157('0x1e')]);}_0x482c35['order']=qs[_0x5157('0x3e')](_0x3ac479[_0x5157('0x37')][_0x5157('0x3e')]);_0x482c35['where']=qs[_0x5157('0x38')](_[_0x5157('0x3f')](_0x3ac479[_0x5157('0x37')],_0x3acfe3[_0x5157('0x38')]),_0x3ecf28);if(_0x3ac479[_0x5157('0x37')][_0x5157('0x40')]){_0x482c35[_0x5157('0x41')]=_['merge'](_0x482c35[_0x5157('0x41')],{'$or':_[_0x5157('0x32')](_0x3ecf28,function(_0x35bfb7){if(_0x35bfb7['type']!==_0x5157('0x42')){var _0x155703={};_0x155703[_0x35bfb7[_0x5157('0x2a')]]={'$like':'%'+_0x3ac479[_0x5157('0x37')][_0x5157('0x40')]+'%'};return _0x155703;}})});}_0x482c35=_[_0x5157('0x2c')]({},_0x482c35,_0x3ac479[_0x5157('0x43')]);var _0x2b8d31={'where':_0x482c35[_0x5157('0x41')]};return db[_0x5157('0x44')][_0x5157('0x21')](_0x2b8d31)['then'](function(_0x486e78){_0x32da29[_0x5157('0x21')]=_0x486e78;if(_0x3ac479[_0x5157('0x37')]['includeAll']){_0x482c35[_0x5157('0x45')]=[{'all':!![]}];}return db[_0x5157('0x44')][_0x5157('0x46')](_0x482c35);})[_0x5157('0x27')](function(_0x23af1a){_0x32da29[_0x5157('0x47')]=_0x23af1a;return _0x32da29;})['then'](respondWithFilteredResult(_0x40d2a2,_0x482c35))['catch'](handleError(_0x40d2a2,null));};exports[_0x5157('0x48')]=function(_0x5bfd90,_0x3b88a0){var _0x176459={'raw':!![],'where':{'id':_0x5bfd90[_0x5157('0x49')]['id']}},_0x210560={};_0x210560['model']=_[_0x5157('0x4a')](db['FaxApplication']['rawAttributes']);_0x210560[_0x5157('0x37')]=_[_0x5157('0x4a')](_0x5bfd90[_0x5157('0x37')]);_0x210560['filters']=_[_0x5157('0x39')](_0x210560[_0x5157('0x36')],_0x210560[_0x5157('0x37')]);_0x176459[_0x5157('0x3b')]=_[_0x5157('0x39')](_0x210560[_0x5157('0x36')],qs['fields'](_0x5bfd90[_0x5157('0x37')][_0x5157('0x3a')]));_0x176459[_0x5157('0x3b')]=_0x176459[_0x5157('0x3b')][_0x5157('0x4b')]?_0x176459['attributes']:_0x210560[_0x5157('0x36')];if(_0x5bfd90[_0x5157('0x37')][_0x5157('0x4c')]){_0x176459[_0x5157('0x45')]=[{'all':!![]}];}_0x176459=_[_0x5157('0x2c')]({},_0x176459,_0x5bfd90[_0x5157('0x43')]);return db[_0x5157('0x44')][_0x5157('0x4d')](_0x176459)[_0x5157('0x27')](handleEntityNotFound(_0x3b88a0,null))[_0x5157('0x27')](respondWithResult(_0x3b88a0,null))['catch'](handleError(_0x3b88a0,null));};exports['create']=function(_0x1f6535,_0x519db5){return db[_0x5157('0x44')][_0x5157('0x4e')](_0x1f6535[_0x5157('0x4f')],{})[_0x5157('0x27')](respondWithResult(_0x519db5,0xc9))[_0x5157('0x50')](handleError(_0x519db5,null));};exports[_0x5157('0x25')]=function(_0x50c768,_0x14244d){if(_0x50c768[_0x5157('0x4f')]['id']){delete _0x50c768[_0x5157('0x4f')]['id'];}return db[_0x5157('0x44')]['find']({'where':{'id':_0x50c768[_0x5157('0x49')]['id']}})[_0x5157('0x27')](handleEntityNotFound(_0x14244d,null))['then'](saveUpdates(_0x50c768[_0x5157('0x4f')],null))[_0x5157('0x27')](respondWithResult(_0x14244d,null))[_0x5157('0x50')](handleError(_0x14244d,null));};exports[_0x5157('0x26')]=function(_0x6d49ca,_0x566409){return db[_0x5157('0x44')][_0x5157('0x4d')]({'where':{'id':_0x6d49ca['params']['id']}})[_0x5157('0x27')](handleEntityNotFound(_0x566409,null))[_0x5157('0x27')](removeEntity(_0x566409,null))['catch'](handleError(_0x566409,null));};