6bb0efe5c9c44766774089083ad84c5fe3bbc719
[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 _0xff5b=['lodash','squel','jsforce','desk.js','papaparse','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../mysqldb','sendStatus','json','undefined','count','offset','limit','set','Content-Range','apply','reject','update','then','destroy','status','end','error','stack','name','send','map','FaxApplication','rawAttributes','fieldName','type','key','query','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','filters','filter','merge','VIRTUAL','options','findAll','rows','catch','params','keys','includeAll','include','find','body','eml-format','rimraf','zip-dir','request-promise','bluebird','mustache','path','sox','ejs'];(function(_0x75afc0,_0x3583bc){var _0x40a638=function(_0x1a6e81){while(--_0x1a6e81){_0x75afc0['push'](_0x75afc0['shift']());}};_0x40a638(++_0x3583bc);}(_0xff5b,0x155));var _0xbff5=function(_0x14581c,_0x6b3cd4){_0x14581c=_0x14581c-0x0;var _0x3cee97=_0xff5b[_0x14581c];return _0x3cee97;};'use strict';var emlformat=require(_0xbff5('0x0'));var rimraf=require(_0xbff5('0x1'));var zipdir=require(_0xbff5('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0xbff5('0x3'));var moment=require('moment');var BPromise=require(_0xbff5('0x4'));var Mustache=require(_0xbff5('0x5'));var util=require('util');var path=require(_0xbff5('0x6'));var sox=require(_0xbff5('0x7'));var csv=require('to-csv');var ejs=require(_0xbff5('0x8'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xbff5('0x9'));var squel=require(_0xbff5('0xa'));var crypto=require('crypto');var jsforce=require(_0xbff5('0xb'));var deskjs=require(_0xbff5('0xc'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0xbff5('0xd'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0xbff5('0xe'));var hardwareService=require(_0xbff5('0xf'));var logger=require(_0xbff5('0x10'))(_0xbff5('0x11'));var utils=require('../../config/utils');var config=require(_0xbff5('0x12'));var licenseUtil=require('../../config/license/util');var db=require(_0xbff5('0x13'))['db'];function respondWithStatusCode(_0x35c67e,_0x44419b){_0x44419b=_0x44419b||0xcc;return function(_0x29143c){if(_0x29143c){return _0x35c67e[_0xbff5('0x14')](_0x44419b);}return _0x35c67e['status'](_0x44419b)['end']();};}function respondWithResult(_0x2a04ac,_0x21d414){_0x21d414=_0x21d414||0xc8;return function(_0x87ff12){if(_0x87ff12){return _0x2a04ac['status'](_0x21d414)[_0xbff5('0x15')](_0x87ff12);}};}function respondWithFilteredResult(_0x57cd00,_0x8bef87){return function(_0x550c12){if(_0x550c12){var _0x477eb1=typeof _0x8bef87['offset']===_0xbff5('0x16')&&typeof _0x8bef87['limit']===_0xbff5('0x16');var _0x43d3aa=_0x550c12[_0xbff5('0x17')];var _0x2fdda5=_0x477eb1?0x0:_0x8bef87[_0xbff5('0x18')];var _0x2fa504=_0x477eb1?_0x550c12[_0xbff5('0x17')]:_0x8bef87[_0xbff5('0x18')]+_0x8bef87[_0xbff5('0x19')];var _0x2b31ca;if(_0x2fa504>=_0x43d3aa){_0x2fa504=_0x43d3aa;_0x2b31ca=0xc8;}else{_0x2b31ca=0xce;}_0x57cd00['status'](_0x2b31ca);return _0x57cd00[_0xbff5('0x1a')](_0xbff5('0x1b'),_0x2fdda5+'-'+_0x2fa504+'/'+_0x43d3aa)[_0xbff5('0x15')](_0x550c12);}return null;};}function patchUpdates(_0x2313f1){return function(_0x5e43e2){try{jsonpatch[_0xbff5('0x1c')](_0x5e43e2,_0x2313f1,!![]);}catch(_0x5660f4){return BPromise[_0xbff5('0x1d')](_0x5660f4);}return _0x5e43e2['save']();};}function saveUpdates(_0x26898e,_0x35264b){return function(_0x2882aa){if(_0x2882aa){return _0x2882aa[_0xbff5('0x1e')](_0x26898e)[_0xbff5('0x1f')](function(_0x2845e3){return _0x2845e3;});}return null;};}function removeEntity(_0x647811,_0x4dbb39){return function(_0x58ecd7){if(_0x58ecd7){return _0x58ecd7[_0xbff5('0x20')]()['then'](function(){_0x647811[_0xbff5('0x21')](0xcc)[_0xbff5('0x22')]();});}};}function handleEntityNotFound(_0x1f29f0,_0xd19447){return function(_0x39a3ba){if(!_0x39a3ba){_0x1f29f0[_0xbff5('0x14')](0x194);}return _0x39a3ba;};}function handleError(_0x3eb566,_0x2e8280){_0x2e8280=_0x2e8280||0x1f4;return function(_0x3b5fae){logger[_0xbff5('0x23')](_0x3b5fae[_0xbff5('0x24')]);if(_0x3b5fae[_0xbff5('0x25')]){delete _0x3b5fae[_0xbff5('0x25')];}_0x3eb566['status'](_0x2e8280)[_0xbff5('0x26')](_0x3b5fae);};}exports['index']=function(_0x3fd07f,_0x5e1b04){var _0x125253={},_0x2e1eaa={},_0x5232ce={'count':0x0,'rows':[]};var _0x339ce0=_[_0xbff5('0x27')](db[_0xbff5('0x28')][_0xbff5('0x29')],function(_0x4d2a32){return{'name':_0x4d2a32[_0xbff5('0x2a')],'type':_0x4d2a32[_0xbff5('0x2b')][_0xbff5('0x2c')]};});_0x2e1eaa['model']=_[_0xbff5('0x27')](_0x339ce0,_0xbff5('0x25'));_0x2e1eaa[_0xbff5('0x2d')]=_['keys'](_0x3fd07f['query']);_0x2e1eaa['filters']=_[_0xbff5('0x2e')](_0x2e1eaa[_0xbff5('0x2f')],_0x2e1eaa['query']);_0x125253[_0xbff5('0x30')]=_[_0xbff5('0x2e')](_0x2e1eaa['model'],qs[_0xbff5('0x31')](_0x3fd07f['query'][_0xbff5('0x31')]));_0x125253[_0xbff5('0x30')]=_0x125253[_0xbff5('0x30')][_0xbff5('0x32')]?_0x125253['attributes']:_0x2e1eaa[_0xbff5('0x2f')];if(!_0x3fd07f[_0xbff5('0x2d')][_0xbff5('0x33')](_0xbff5('0x34'))){_0x125253[_0xbff5('0x19')]=qs[_0xbff5('0x19')](_0x3fd07f['query'][_0xbff5('0x19')]);_0x125253[_0xbff5('0x18')]=qs['offset'](_0x3fd07f[_0xbff5('0x2d')]['offset']);}_0x125253[_0xbff5('0x35')]=qs[_0xbff5('0x36')](_0x3fd07f[_0xbff5('0x2d')][_0xbff5('0x36')]);_0x125253[_0xbff5('0x37')]=qs[_0xbff5('0x38')](_['pick'](_0x3fd07f[_0xbff5('0x2d')],_0x2e1eaa[_0xbff5('0x38')]),_0x339ce0);if(_0x3fd07f[_0xbff5('0x2d')][_0xbff5('0x39')]){_0x125253[_0xbff5('0x37')]=_[_0xbff5('0x3a')](_0x125253[_0xbff5('0x37')],{'$or':_[_0xbff5('0x27')](_0x339ce0,function(_0x4c8527){if(_0x4c8527[_0xbff5('0x2b')]!==_0xbff5('0x3b')){var _0x2454b8={};_0x2454b8[_0x4c8527[_0xbff5('0x25')]]={'$like':'%'+_0x3fd07f[_0xbff5('0x2d')]['filter']+'%'};return _0x2454b8;}})});}_0x125253=_[_0xbff5('0x3a')]({},_0x125253,_0x3fd07f[_0xbff5('0x3c')]);var _0x11f40c={'where':_0x125253[_0xbff5('0x37')]};return db[_0xbff5('0x28')]['count'](_0x11f40c)[_0xbff5('0x1f')](function(_0x166779){_0x5232ce[_0xbff5('0x17')]=_0x166779;if(_0x3fd07f[_0xbff5('0x2d')]['includeAll']){_0x125253['include']=[{'all':!![]}];}return db['FaxApplication'][_0xbff5('0x3d')](_0x125253);})[_0xbff5('0x1f')](function(_0x37860a){_0x5232ce[_0xbff5('0x3e')]=_0x37860a;return _0x5232ce;})[_0xbff5('0x1f')](respondWithFilteredResult(_0x5e1b04,_0x125253))[_0xbff5('0x3f')](handleError(_0x5e1b04,null));};exports['show']=function(_0x25860c,_0x16e9aa){var _0x3c0694={'raw':!![],'where':{'id':_0x25860c[_0xbff5('0x40')]['id']}},_0x53d8cc={};_0x53d8cc['model']=_[_0xbff5('0x41')](db['FaxApplication'][_0xbff5('0x29')]);_0x53d8cc[_0xbff5('0x2d')]=_[_0xbff5('0x41')](_0x25860c[_0xbff5('0x2d')]);_0x53d8cc[_0xbff5('0x38')]=_[_0xbff5('0x2e')](_0x53d8cc[_0xbff5('0x2f')],_0x53d8cc[_0xbff5('0x2d')]);_0x3c0694[_0xbff5('0x30')]=_[_0xbff5('0x2e')](_0x53d8cc[_0xbff5('0x2f')],qs[_0xbff5('0x31')](_0x25860c[_0xbff5('0x2d')]['fields']));_0x3c0694[_0xbff5('0x30')]=_0x3c0694[_0xbff5('0x30')][_0xbff5('0x32')]?_0x3c0694['attributes']:_0x53d8cc[_0xbff5('0x2f')];if(_0x25860c[_0xbff5('0x2d')][_0xbff5('0x42')]){_0x3c0694[_0xbff5('0x43')]=[{'all':!![]}];}_0x3c0694=_[_0xbff5('0x3a')]({},_0x3c0694,_0x25860c[_0xbff5('0x3c')]);return db[_0xbff5('0x28')][_0xbff5('0x44')](_0x3c0694)[_0xbff5('0x1f')](handleEntityNotFound(_0x16e9aa,null))[_0xbff5('0x1f')](respondWithResult(_0x16e9aa,null))[_0xbff5('0x3f')](handleError(_0x16e9aa,null));};exports['create']=function(_0x34742c,_0x122247){return db[_0xbff5('0x28')]['create'](_0x34742c['body'],{})[_0xbff5('0x1f')](respondWithResult(_0x122247,0xc9))[_0xbff5('0x3f')](handleError(_0x122247,null));};exports[_0xbff5('0x1e')]=function(_0x2085e0,_0xa6f4b1){if(_0x2085e0[_0xbff5('0x45')]['id']){delete _0x2085e0[_0xbff5('0x45')]['id'];}return db['FaxApplication']['find']({'where':{'id':_0x2085e0[_0xbff5('0x40')]['id']}})[_0xbff5('0x1f')](handleEntityNotFound(_0xa6f4b1,null))['then'](saveUpdates(_0x2085e0[_0xbff5('0x45')],null))[_0xbff5('0x1f')](respondWithResult(_0xa6f4b1,null))['catch'](handleError(_0xa6f4b1,null));};exports[_0xbff5('0x20')]=function(_0x2cb4b2,_0x1b2411){return db[_0xbff5('0x28')][_0xbff5('0x44')]({'where':{'id':_0x2cb4b2['params']['id']}})[_0xbff5('0x1f')](handleEntityNotFound(_0x1b2411,null))[_0xbff5('0x1f')](removeEntity(_0x1b2411,null))['catch'](handleError(_0x1b2411,null));};