1d47af2e69fb30a06a6897951371f65590ea7075
[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 _0x030d=['util','path','sox','fs-extra','lodash','squel','crypto','desk.js','to-csv','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','status','end','offset','undefined','count','set','Content-Range','apply','reject','save','then','destroy','sendStatus','error','stack','name','send','index','map','rawAttributes','fieldName','type','key','model','keys','filters','intersection','query','fields','attributes','nolimit','limit','order','sort','pick','filter','where','merge','options','FaxApplication','includeAll','include','findAll','show','params','find','catch','create','body','update','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache'];(function(_0x56c497,_0x4d812e){var _0xc8dd8e=function(_0x44110e){while(--_0x44110e){_0x56c497['push'](_0x56c497['shift']());}};_0xc8dd8e(++_0x4d812e);}(_0x030d,0x93));var _0xd030=function(_0x46a4a5,_0x1799e9){_0x46a4a5=_0x46a4a5-0x0;var _0xcef2c5=_0x030d[_0x46a4a5];return _0xcef2c5;};'use strict';var emlformat=require(_0xd030('0x0'));var rimraf=require(_0xd030('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xd030('0x2'));var rp=require(_0xd030('0x3'));var moment=require(_0xd030('0x4'));var BPromise=require(_0xd030('0x5'));var Mustache=require(_0xd030('0x6'));var util=require(_0xd030('0x7'));var path=require(_0xd030('0x8'));var sox=require(_0xd030('0x9'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xd030('0xa'));var _=require(_0xd030('0xb'));var squel=require(_0xd030('0xc'));var crypto=require(_0xd030('0xd'));var jsforce=require('jsforce');var deskjs=require(_0xd030('0xe'));var toCsv=require(_0xd030('0xf'));var querystring=require('querystring');var Papa=require(_0xd030('0x10'));var Redis=require(_0xd030('0x11'));var authService=require(_0xd030('0x12'));var qs=require(_0xd030('0x13'));var as=require(_0xd030('0x14'));var hardwareService=require(_0xd030('0x15'));var logger=require(_0xd030('0x16'))(_0xd030('0x17'));var utils=require(_0xd030('0x18'));var config=require(_0xd030('0x19'));var licenseUtil=require('../../config/license/util');var db=require(_0xd030('0x1a'))['db'];function respondWithStatusCode(_0x521c8b,_0x584196){_0x584196=_0x584196||0xcc;return function(_0x3dd3fb){if(_0x3dd3fb){return _0x521c8b['sendStatus'](_0x584196);}return _0x521c8b[_0xd030('0x1b')](_0x584196)[_0xd030('0x1c')]();};}function respondWithResult(_0x537939,_0x2744d6){_0x2744d6=_0x2744d6||0xc8;return function(_0x151dc5){if(_0x151dc5){return _0x537939[_0xd030('0x1b')](_0x2744d6)['json'](_0x151dc5);}};}function respondWithFilteredResult(_0x22b332,_0x21e8c2){return function(_0x22fbd6){if(_0x22fbd6){var _0x2ed1b9=typeof _0x21e8c2[_0xd030('0x1d')]===_0xd030('0x1e')&&typeof _0x21e8c2['limit']===_0xd030('0x1e');var _0x48cb0d=_0x22fbd6[_0xd030('0x1f')];var _0xfcdaa3=_0x2ed1b9?0x0:_0x21e8c2[_0xd030('0x1d')];var _0x3defe1=_0x2ed1b9?_0x22fbd6[_0xd030('0x1f')]:_0x21e8c2['offset']+_0x21e8c2['limit'];var _0x164a46;if(_0x3defe1>=_0x48cb0d){_0x3defe1=_0x48cb0d;_0x164a46=0xc8;}else{_0x164a46=0xce;}_0x22b332[_0xd030('0x1b')](_0x164a46);return _0x22b332[_0xd030('0x20')](_0xd030('0x21'),_0xfcdaa3+'-'+_0x3defe1+'/'+_0x48cb0d)['json'](_0x22fbd6);}return null;};}function patchUpdates(_0x570d0a){return function(_0x28ae70){try{jsonpatch[_0xd030('0x22')](_0x28ae70,_0x570d0a,!![]);}catch(_0x5578d9){return BPromise[_0xd030('0x23')](_0x5578d9);}return _0x28ae70[_0xd030('0x24')]();};}function saveUpdates(_0x48b810,_0x433dd7){return function(_0x57d833){if(_0x57d833){return _0x57d833['update'](_0x48b810)[_0xd030('0x25')](function(_0x31ee1e){return _0x31ee1e;});}return null;};}function removeEntity(_0x5afd12,_0x5d3dc7){return function(_0x40796d){if(_0x40796d){return _0x40796d[_0xd030('0x26')]()['then'](function(){_0x5afd12['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x4a8133,_0x241a8a){return function(_0x4e05f6){if(!_0x4e05f6){_0x4a8133[_0xd030('0x27')](0x194);}return _0x4e05f6;};}function handleError(_0x224150,_0x380850){_0x380850=_0x380850||0x1f4;return function(_0x405939){logger[_0xd030('0x28')](_0x405939[_0xd030('0x29')]);if(_0x405939[_0xd030('0x2a')]){delete _0x405939[_0xd030('0x2a')];}_0x224150['status'](_0x380850)[_0xd030('0x2b')](_0x405939);};}exports[_0xd030('0x2c')]=function(_0x59c487,_0x1e59f8){var _0x1ab09b={},_0x5d3635={},_0x562ddc={'count':0x0,'rows':[]};var _0x4bb0b6=_[_0xd030('0x2d')](db['FaxApplication'][_0xd030('0x2e')],function(_0x3da84d){return{'name':_0x3da84d[_0xd030('0x2f')],'type':_0x3da84d[_0xd030('0x30')][_0xd030('0x31')]};});_0x5d3635[_0xd030('0x32')]=_[_0xd030('0x2d')](_0x4bb0b6,_0xd030('0x2a'));_0x5d3635['query']=_[_0xd030('0x33')](_0x59c487['query']);_0x5d3635[_0xd030('0x34')]=_[_0xd030('0x35')](_0x5d3635[_0xd030('0x32')],_0x5d3635[_0xd030('0x36')]);_0x1ab09b['attributes']=_[_0xd030('0x35')](_0x5d3635[_0xd030('0x32')],qs[_0xd030('0x37')](_0x59c487[_0xd030('0x36')][_0xd030('0x37')]));_0x1ab09b[_0xd030('0x38')]=_0x1ab09b['attributes']['length']?_0x1ab09b[_0xd030('0x38')]:_0x5d3635[_0xd030('0x32')];if(!_0x59c487[_0xd030('0x36')]['hasOwnProperty'](_0xd030('0x39'))){_0x1ab09b[_0xd030('0x3a')]=qs[_0xd030('0x3a')](_0x59c487[_0xd030('0x36')][_0xd030('0x3a')]);_0x1ab09b[_0xd030('0x1d')]=qs[_0xd030('0x1d')](_0x59c487['query']['offset']);}_0x1ab09b[_0xd030('0x3b')]=qs[_0xd030('0x3c')](_0x59c487[_0xd030('0x36')][_0xd030('0x3c')]);_0x1ab09b['where']=qs[_0xd030('0x34')](_[_0xd030('0x3d')](_0x59c487[_0xd030('0x36')],_0x5d3635[_0xd030('0x34')]),_0x4bb0b6);if(_0x59c487[_0xd030('0x36')][_0xd030('0x3e')]){_0x1ab09b[_0xd030('0x3f')]=_[_0xd030('0x40')](_0x1ab09b['where'],{'$or':_[_0xd030('0x2d')](_0x4bb0b6,function(_0x2dd533){if(_0x2dd533[_0xd030('0x30')]!=='VIRTUAL'){var _0x159e92={};_0x159e92[_0x2dd533[_0xd030('0x2a')]]={'$like':'%'+_0x59c487[_0xd030('0x36')][_0xd030('0x3e')]+'%'};return _0x159e92;}})});}_0x1ab09b=_[_0xd030('0x40')]({},_0x1ab09b,_0x59c487[_0xd030('0x41')]);var _0x38fcac={'where':_0x1ab09b[_0xd030('0x3f')]};return db[_0xd030('0x42')]['count'](_0x38fcac)[_0xd030('0x25')](function(_0x2eca32){_0x562ddc['count']=_0x2eca32;if(_0x59c487[_0xd030('0x36')][_0xd030('0x43')]){_0x1ab09b[_0xd030('0x44')]=[{'all':!![]}];}return db[_0xd030('0x42')][_0xd030('0x45')](_0x1ab09b);})[_0xd030('0x25')](function(_0x535ef0){_0x562ddc['rows']=_0x535ef0;return _0x562ddc;})[_0xd030('0x25')](respondWithFilteredResult(_0x1e59f8,_0x1ab09b))['catch'](handleError(_0x1e59f8,null));};exports[_0xd030('0x46')]=function(_0x35edf8,_0x414b66){var _0x31aff3={'raw':!![],'where':{'id':_0x35edf8[_0xd030('0x47')]['id']}},_0x5703cb={};_0x5703cb[_0xd030('0x32')]=_[_0xd030('0x33')](db[_0xd030('0x42')][_0xd030('0x2e')]);_0x5703cb['query']=_[_0xd030('0x33')](_0x35edf8[_0xd030('0x36')]);_0x5703cb[_0xd030('0x34')]=_[_0xd030('0x35')](_0x5703cb[_0xd030('0x32')],_0x5703cb[_0xd030('0x36')]);_0x31aff3[_0xd030('0x38')]=_[_0xd030('0x35')](_0x5703cb[_0xd030('0x32')],qs[_0xd030('0x37')](_0x35edf8[_0xd030('0x36')][_0xd030('0x37')]));_0x31aff3[_0xd030('0x38')]=_0x31aff3['attributes']['length']?_0x31aff3[_0xd030('0x38')]:_0x5703cb['model'];if(_0x35edf8[_0xd030('0x36')][_0xd030('0x43')]){_0x31aff3[_0xd030('0x44')]=[{'all':!![]}];}_0x31aff3=_[_0xd030('0x40')]({},_0x31aff3,_0x35edf8[_0xd030('0x41')]);return db[_0xd030('0x42')][_0xd030('0x48')](_0x31aff3)[_0xd030('0x25')](handleEntityNotFound(_0x414b66,null))[_0xd030('0x25')](respondWithResult(_0x414b66,null))[_0xd030('0x49')](handleError(_0x414b66,null));};exports[_0xd030('0x4a')]=function(_0x2056cf,_0x180f91){return db['FaxApplication']['create'](_0x2056cf[_0xd030('0x4b')],{})['then'](respondWithResult(_0x180f91,0xc9))[_0xd030('0x49')](handleError(_0x180f91,null));};exports[_0xd030('0x4c')]=function(_0x4b7109,_0x397462){if(_0x4b7109['body']['id']){delete _0x4b7109[_0xd030('0x4b')]['id'];}return db[_0xd030('0x42')][_0xd030('0x48')]({'where':{'id':_0x4b7109[_0xd030('0x47')]['id']}})[_0xd030('0x25')](handleEntityNotFound(_0x397462,null))[_0xd030('0x25')](saveUpdates(_0x4b7109['body'],null))[_0xd030('0x25')](respondWithResult(_0x397462,null))[_0xd030('0x49')](handleError(_0x397462,null));};exports[_0xd030('0x26')]=function(_0x4e78d6,_0x3505a2){return db[_0xd030('0x42')][_0xd030('0x48')]({'where':{'id':_0x4e78d6[_0xd030('0x47')]['id']}})['then'](handleEntityNotFound(_0x3505a2,null))[_0xd030('0x25')](removeEntity(_0x3505a2,null))[_0xd030('0x49')](handleError(_0x3505a2,null));};