824173288247c81152b598b4c84ca20bf7e61b35
[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 _0x955d=['util','to-csv','ejs','lodash','squel','desk.js','querystring','papaparse','ioredis','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','end','status','json','offset','limit','Content-Range','apply','reject','save','update','then','sendStatus','error','stack','name','index','map','rawAttributes','fieldName','model','query','keys','filters','intersection','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','merge','VIRTUAL','filter','options','FaxApplication','count','includeAll','include','findAll','rows','catch','show','params','fields','find','create','body','destroy','html-pdf','eml-format','rimraf','fast-json-patch','request-promise','moment','mustache'];(function(_0x544700,_0x37f134){var _0x39260b=function(_0x4faf4a){while(--_0x4faf4a){_0x544700['push'](_0x544700['shift']());}};_0x39260b(++_0x37f134);}(_0x955d,0x1a9));var _0xd955=function(_0xd6d333,_0x4bfd95){_0xd6d333=_0xd6d333-0x0;var _0x112efb=_0x955d[_0xd6d333];return _0x112efb;};'use strict';var pdf=require(_0xd955('0x0'));var emlformat=require(_0xd955('0x1'));var rimraf=require(_0xd955('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0xd955('0x3'));var rp=require(_0xd955('0x4'));var moment=require(_0xd955('0x5'));var BPromise=require('bluebird');var Mustache=require(_0xd955('0x6'));var util=require(_0xd955('0x7'));var path=require('path');var sox=require('sox');var csv=require(_0xd955('0x8'));var ejs=require(_0xd955('0x9'));var fs=require('fs');var _=require(_0xd955('0xa'));var squel=require(_0xd955('0xb'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0xd955('0xc'));var toCsv=require('to-csv');var querystring=require(_0xd955('0xd'));var Papa=require(_0xd955('0xe'));var Redis=require(_0xd955('0xf'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0xd955('0x10'))(_0xd955('0x11'));var utils=require(_0xd955('0x12'));var config=require(_0xd955('0x13'));var licenseUtil=require(_0xd955('0x14'));var db=require(_0xd955('0x15'))['db'];function respondWithStatusCode(_0x34fa7e,_0x3dd5fd){_0x3dd5fd=_0x3dd5fd||0xcc;return function(_0x5017f9){if(_0x5017f9){return _0x34fa7e['sendStatus'](_0x3dd5fd);}return _0x34fa7e['status'](_0x3dd5fd)[_0xd955('0x16')]();};}function respondWithResult(_0x567451,_0x1a37c1){_0x1a37c1=_0x1a37c1||0xc8;return function(_0x1fe6d1){if(_0x1fe6d1){return _0x567451[_0xd955('0x17')](_0x1a37c1)[_0xd955('0x18')](_0x1fe6d1);}};}function respondWithFilteredResult(_0xf510a1,_0x49741b){return function(_0x54eee5){if(_0x54eee5){var _0x6b0273=_0x54eee5['count'],_0x56fdc3=_0x49741b[_0xd955('0x19')],_0x1c14c3=_0x49741b[_0xd955('0x19')]+_0x49741b[_0xd955('0x1a')],_0x35ec92;if(_0x1c14c3>=_0x6b0273){_0x1c14c3=_0x6b0273;_0x35ec92=0xc8;}else{_0x35ec92=0xce;}_0xf510a1[_0xd955('0x17')](_0x35ec92);return _0xf510a1['set'](_0xd955('0x1b'),_0x56fdc3+'-'+_0x1c14c3+'/'+_0x6b0273)[_0xd955('0x18')](_0x54eee5);}return null;};}function patchUpdates(_0x37a78e){return function(_0x400aee){try{jsonpatch[_0xd955('0x1c')](_0x400aee,_0x37a78e,!![]);}catch(_0x2f2d2e){return BPromise[_0xd955('0x1d')](_0x2f2d2e);}return _0x400aee[_0xd955('0x1e')]();};}function saveUpdates(_0x140c57,_0x5b85fd){return function(_0x5a9bec){if(_0x5a9bec){return _0x5a9bec[_0xd955('0x1f')](_0x140c57)[_0xd955('0x20')](function(_0x1f132e){return _0x1f132e;});}return null;};}function removeEntity(_0x5a7ecc,_0x25b311){return function(_0x1384e7){if(_0x1384e7){return _0x1384e7['destroy']()['then'](function(){_0x5a7ecc[_0xd955('0x17')](0xcc)[_0xd955('0x16')]();});}};}function handleEntityNotFound(_0x4eb0c5,_0x36c247){return function(_0x1ad5c0){if(!_0x1ad5c0){_0x4eb0c5[_0xd955('0x21')](0x194);}return _0x1ad5c0;};}function handleError(_0xd4e7d6,_0x309ecd){_0x309ecd=_0x309ecd||0x1f4;return function(_0x2297f6){logger[_0xd955('0x22')](_0x2297f6[_0xd955('0x23')]);if(_0x2297f6[_0xd955('0x24')]){delete _0x2297f6['name'];}_0xd4e7d6[_0xd955('0x17')](_0x309ecd)['send'](_0x2297f6);};}exports[_0xd955('0x25')]=function(_0x4ea5b4,_0x37c42a){var _0x5117fc={},_0x1de267={},_0x4654f7={'count':0x0,'rows':[]};var _0x2e3863=_[_0xd955('0x26')](db['FaxApplication'][_0xd955('0x27')],function(_0x49df64){return{'name':_0x49df64[_0xd955('0x28')],'type':_0x49df64['type']['key']};});_0x1de267[_0xd955('0x29')]=_[_0xd955('0x26')](_0x2e3863,_0xd955('0x24'));_0x1de267[_0xd955('0x2a')]=_[_0xd955('0x2b')](_0x4ea5b4[_0xd955('0x2a')]);_0x1de267[_0xd955('0x2c')]=_[_0xd955('0x2d')](_0x1de267[_0xd955('0x29')],_0x1de267[_0xd955('0x2a')]);_0x5117fc[_0xd955('0x2e')]=_[_0xd955('0x2d')](_0x1de267[_0xd955('0x29')],qs['fields'](_0x4ea5b4[_0xd955('0x2a')]['fields']));_0x5117fc[_0xd955('0x2e')]=_0x5117fc[_0xd955('0x2e')][_0xd955('0x2f')]?_0x5117fc[_0xd955('0x2e')]:_0x1de267[_0xd955('0x29')];if(!_0x4ea5b4[_0xd955('0x2a')][_0xd955('0x30')](_0xd955('0x31'))){_0x5117fc[_0xd955('0x1a')]=qs['limit'](_0x4ea5b4[_0xd955('0x2a')]['limit']);_0x5117fc['offset']=qs[_0xd955('0x19')](_0x4ea5b4[_0xd955('0x2a')][_0xd955('0x19')]);}_0x5117fc[_0xd955('0x32')]=qs[_0xd955('0x33')](_0x4ea5b4[_0xd955('0x2a')]['sort']);_0x5117fc[_0xd955('0x34')]=qs[_0xd955('0x2c')](_[_0xd955('0x35')](_0x4ea5b4[_0xd955('0x2a')],_0x1de267['filters']),_0x2e3863);if(_0x4ea5b4[_0xd955('0x2a')]['filter']){_0x5117fc[_0xd955('0x34')]=_[_0xd955('0x36')](_0x5117fc[_0xd955('0x34')],{'$or':_[_0xd955('0x26')](_0x2e3863,function(_0xac967e){if(_0xac967e['type']!==_0xd955('0x37')){var _0x4e2fa5={};_0x4e2fa5[_0xac967e[_0xd955('0x24')]]={'$like':'%'+_0x4ea5b4[_0xd955('0x2a')][_0xd955('0x38')]+'%'};return _0x4e2fa5;}})});}_0x5117fc=_[_0xd955('0x36')]({},_0x5117fc,_0x4ea5b4[_0xd955('0x39')]);var _0x24b9c1={'where':_0x5117fc[_0xd955('0x34')]};return db[_0xd955('0x3a')][_0xd955('0x3b')](_0x24b9c1)['then'](function(_0x181d14){_0x4654f7[_0xd955('0x3b')]=_0x181d14;if(_0x4ea5b4['query'][_0xd955('0x3c')]){_0x5117fc[_0xd955('0x3d')]=[{'all':!![]}];}return db[_0xd955('0x3a')][_0xd955('0x3e')](_0x5117fc);})[_0xd955('0x20')](function(_0xd0342){_0x4654f7[_0xd955('0x3f')]=_0xd0342;return _0x4654f7;})['then'](respondWithFilteredResult(_0x37c42a,_0x5117fc))[_0xd955('0x40')](handleError(_0x37c42a,null));};exports[_0xd955('0x41')]=function(_0x2a1bb0,_0x575ac9){var _0x3bbc54={'raw':!![],'where':{'id':_0x2a1bb0[_0xd955('0x42')]['id']}},_0x1d5a16={};_0x1d5a16[_0xd955('0x29')]=_[_0xd955('0x2b')](db[_0xd955('0x3a')]['rawAttributes']);_0x1d5a16[_0xd955('0x2a')]=_[_0xd955('0x2b')](_0x2a1bb0['query']);_0x1d5a16[_0xd955('0x2c')]=_['intersection'](_0x1d5a16[_0xd955('0x29')],_0x1d5a16[_0xd955('0x2a')]);_0x3bbc54[_0xd955('0x2e')]=_[_0xd955('0x2d')](_0x1d5a16['model'],qs[_0xd955('0x43')](_0x2a1bb0[_0xd955('0x2a')][_0xd955('0x43')]));_0x3bbc54['attributes']=_0x3bbc54['attributes'][_0xd955('0x2f')]?_0x3bbc54[_0xd955('0x2e')]:_0x1d5a16[_0xd955('0x29')];if(_0x2a1bb0[_0xd955('0x2a')][_0xd955('0x3c')]){_0x3bbc54['include']=[{'all':!![]}];}_0x3bbc54=_[_0xd955('0x36')]({},_0x3bbc54,_0x2a1bb0[_0xd955('0x39')]);return db['FaxApplication'][_0xd955('0x44')](_0x3bbc54)[_0xd955('0x20')](handleEntityNotFound(_0x575ac9,null))[_0xd955('0x20')](respondWithResult(_0x575ac9,null))[_0xd955('0x40')](handleError(_0x575ac9,null));};exports[_0xd955('0x45')]=function(_0x508362,_0x12b555){return db[_0xd955('0x3a')]['create'](_0x508362[_0xd955('0x46')],{})['then'](respondWithResult(_0x12b555,0xc9))[_0xd955('0x40')](handleError(_0x12b555,null));};exports[_0xd955('0x1f')]=function(_0x2fa999,_0x5a72d3){if(_0x2fa999[_0xd955('0x46')]['id']){delete _0x2fa999[_0xd955('0x46')]['id'];}return db[_0xd955('0x3a')][_0xd955('0x44')]({'where':{'id':_0x2fa999[_0xd955('0x42')]['id']}})[_0xd955('0x20')](handleEntityNotFound(_0x5a72d3,null))['then'](saveUpdates(_0x2fa999[_0xd955('0x46')],null))[_0xd955('0x20')](respondWithResult(_0x5a72d3,null))['catch'](handleError(_0x5a72d3,null));};exports[_0xd955('0x47')]=function(_0xa1b1e2,_0x486f13){return db[_0xd955('0x3a')][_0xd955('0x44')]({'where':{'id':_0xa1b1e2[_0xd955('0x42')]['id']}})['then'](handleEntityNotFound(_0x486f13,null))[_0xd955('0x20')](removeEntity(_0x486f13,null))[_0xd955('0x40')](handleError(_0x486f13,null));};