f7d0da68864b6c72c1d8219bc25c58d9650bcb1b
[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 _0xdbe6=['offset','count','limit','set','Content-Range','apply','reject','save','update','then','error','name','index','FaxApplication','rawAttributes','fieldName','type','key','map','query','keys','model','attributes','intersection','fields','length','hasOwnProperty','nolimit','order','sort','where','filters','filter','VIRTUAL','merge','includeAll','findAll','rows','show','params','include','options','catch','create','body','find','eml-format','rimraf','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json'];(function(_0x5bf609,_0x5c1e35){var _0x3c3a74=function(_0x538a50){while(--_0x538a50){_0x5bf609['push'](_0x5bf609['shift']());}};_0x3c3a74(++_0x5c1e35);}(_0xdbe6,0x11b));var _0x6dbe=function(_0x7853aa,_0x340aa6){_0x7853aa=_0x7853aa-0x0;var _0x59c9f7=_0xdbe6[_0x7853aa];return _0x59c9f7;};'use strict';var emlformat=require(_0x6dbe('0x0'));var rimraf=require(_0x6dbe('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x6dbe('0x2'));var rp=require(_0x6dbe('0x3'));var moment=require('moment');var BPromise=require(_0x6dbe('0x4'));var Mustache=require(_0x6dbe('0x5'));var util=require(_0x6dbe('0x6'));var path=require(_0x6dbe('0x7'));var sox=require(_0x6dbe('0x8'));var csv=require(_0x6dbe('0x9'));var ejs=require(_0x6dbe('0xa'));var fs=require('fs');var fs_extra=require(_0x6dbe('0xb'));var _=require(_0x6dbe('0xc'));var squel=require('squel');var crypto=require(_0x6dbe('0xd'));var jsforce=require(_0x6dbe('0xe'));var deskjs=require(_0x6dbe('0xf'));var toCsv=require(_0x6dbe('0x9'));var querystring=require(_0x6dbe('0x10'));var Papa=require(_0x6dbe('0x11'));var Redis=require(_0x6dbe('0x12'));var authService=require(_0x6dbe('0x13'));var qs=require(_0x6dbe('0x14'));var as=require(_0x6dbe('0x15'));var hardwareService=require(_0x6dbe('0x16'));var logger=require(_0x6dbe('0x17'))(_0x6dbe('0x18'));var utils=require(_0x6dbe('0x19'));var config=require(_0x6dbe('0x1a'));var licenseUtil=require(_0x6dbe('0x1b'));var db=require(_0x6dbe('0x1c'))['db'];function respondWithStatusCode(_0x4df248,_0x41e47b){_0x41e47b=_0x41e47b||0xcc;return function(_0x354c1c){if(_0x354c1c){return _0x4df248[_0x6dbe('0x1d')](_0x41e47b);}return _0x4df248[_0x6dbe('0x1e')](_0x41e47b)[_0x6dbe('0x1f')]();};}function respondWithResult(_0x56f576,_0x53db6c){_0x53db6c=_0x53db6c||0xc8;return function(_0x2e98ff){if(_0x2e98ff){return _0x56f576['status'](_0x53db6c)[_0x6dbe('0x20')](_0x2e98ff);}};}function respondWithFilteredResult(_0x19e2d4,_0x499832){return function(_0x440efb){if(_0x440efb){var _0x37e4a4=typeof _0x499832['offset']==='undefined'&&typeof _0x499832['limit']==='undefined';var _0x424be2=_0x440efb['count'];var _0x402287=_0x37e4a4?0x0:_0x499832[_0x6dbe('0x21')];var _0x393ef7=_0x37e4a4?_0x440efb[_0x6dbe('0x22')]:_0x499832[_0x6dbe('0x21')]+_0x499832[_0x6dbe('0x23')];var _0xf123e5;if(_0x393ef7>=_0x424be2){_0x393ef7=_0x424be2;_0xf123e5=0xc8;}else{_0xf123e5=0xce;}_0x19e2d4[_0x6dbe('0x1e')](_0xf123e5);return _0x19e2d4[_0x6dbe('0x24')](_0x6dbe('0x25'),_0x402287+'-'+_0x393ef7+'/'+_0x424be2)[_0x6dbe('0x20')](_0x440efb);}return null;};}function patchUpdates(_0x2112e8){return function(_0x31c74d){try{jsonpatch[_0x6dbe('0x26')](_0x31c74d,_0x2112e8,!![]);}catch(_0x172516){return BPromise[_0x6dbe('0x27')](_0x172516);}return _0x31c74d[_0x6dbe('0x28')]();};}function saveUpdates(_0x3df44a,_0x5a1a98){return function(_0x47bdbe){if(_0x47bdbe){return _0x47bdbe[_0x6dbe('0x29')](_0x3df44a)[_0x6dbe('0x2a')](function(_0x2a18a7){return _0x2a18a7;});}return null;};}function removeEntity(_0x53cc91,_0x17ab53){return function(_0x40eb86){if(_0x40eb86){return _0x40eb86['destroy']()[_0x6dbe('0x2a')](function(){_0x53cc91[_0x6dbe('0x1e')](0xcc)[_0x6dbe('0x1f')]();});}};}function handleEntityNotFound(_0x2025ae,_0x712f3e){return function(_0x5b84e1){if(!_0x5b84e1){_0x2025ae['sendStatus'](0x194);}return _0x5b84e1;};}function handleError(_0x454557,_0x2b4c7c){_0x2b4c7c=_0x2b4c7c||0x1f4;return function(_0x32633f){logger[_0x6dbe('0x2b')](_0x32633f['stack']);if(_0x32633f[_0x6dbe('0x2c')]){delete _0x32633f[_0x6dbe('0x2c')];}_0x454557['status'](_0x2b4c7c)['send'](_0x32633f);};}exports[_0x6dbe('0x2d')]=function(_0x27f931,_0x391237){var _0x4fdabd={},_0x55b3c9={},_0x36337c={'count':0x0,'rows':[]};var _0x1c031a=_['map'](db[_0x6dbe('0x2e')][_0x6dbe('0x2f')],function(_0x370bcf){return{'name':_0x370bcf[_0x6dbe('0x30')],'type':_0x370bcf[_0x6dbe('0x31')][_0x6dbe('0x32')]};});_0x55b3c9['model']=_[_0x6dbe('0x33')](_0x1c031a,_0x6dbe('0x2c'));_0x55b3c9[_0x6dbe('0x34')]=_[_0x6dbe('0x35')](_0x27f931[_0x6dbe('0x34')]);_0x55b3c9['filters']=_['intersection'](_0x55b3c9[_0x6dbe('0x36')],_0x55b3c9[_0x6dbe('0x34')]);_0x4fdabd[_0x6dbe('0x37')]=_[_0x6dbe('0x38')](_0x55b3c9[_0x6dbe('0x36')],qs[_0x6dbe('0x39')](_0x27f931[_0x6dbe('0x34')][_0x6dbe('0x39')]));_0x4fdabd['attributes']=_0x4fdabd[_0x6dbe('0x37')][_0x6dbe('0x3a')]?_0x4fdabd[_0x6dbe('0x37')]:_0x55b3c9['model'];if(!_0x27f931[_0x6dbe('0x34')][_0x6dbe('0x3b')](_0x6dbe('0x3c'))){_0x4fdabd[_0x6dbe('0x23')]=qs[_0x6dbe('0x23')](_0x27f931[_0x6dbe('0x34')]['limit']);_0x4fdabd[_0x6dbe('0x21')]=qs[_0x6dbe('0x21')](_0x27f931[_0x6dbe('0x34')][_0x6dbe('0x21')]);}_0x4fdabd[_0x6dbe('0x3d')]=qs[_0x6dbe('0x3e')](_0x27f931[_0x6dbe('0x34')][_0x6dbe('0x3e')]);_0x4fdabd[_0x6dbe('0x3f')]=qs[_0x6dbe('0x40')](_['pick'](_0x27f931['query'],_0x55b3c9['filters']),_0x1c031a);if(_0x27f931['query'][_0x6dbe('0x41')]){_0x4fdabd[_0x6dbe('0x3f')]=_['merge'](_0x4fdabd[_0x6dbe('0x3f')],{'$or':_[_0x6dbe('0x33')](_0x1c031a,function(_0x1054a1){if(_0x1054a1['type']!==_0x6dbe('0x42')){var _0x58db23={};_0x58db23[_0x1054a1[_0x6dbe('0x2c')]]={'$like':'%'+_0x27f931[_0x6dbe('0x34')][_0x6dbe('0x41')]+'%'};return _0x58db23;}})});}_0x4fdabd=_[_0x6dbe('0x43')]({},_0x4fdabd,_0x27f931['options']);var _0xbacb7={'where':_0x4fdabd[_0x6dbe('0x3f')]};return db[_0x6dbe('0x2e')][_0x6dbe('0x22')](_0xbacb7)['then'](function(_0x5a9050){_0x36337c['count']=_0x5a9050;if(_0x27f931[_0x6dbe('0x34')][_0x6dbe('0x44')]){_0x4fdabd['include']=[{'all':!![]}];}return db['FaxApplication'][_0x6dbe('0x45')](_0x4fdabd);})[_0x6dbe('0x2a')](function(_0x1a0b75){_0x36337c[_0x6dbe('0x46')]=_0x1a0b75;return _0x36337c;})[_0x6dbe('0x2a')](respondWithFilteredResult(_0x391237,_0x4fdabd))['catch'](handleError(_0x391237,null));};exports[_0x6dbe('0x47')]=function(_0x5f0516,_0x40edf3){var _0x3cb211={'raw':!![],'where':{'id':_0x5f0516[_0x6dbe('0x48')]['id']}},_0x1c132f={};_0x1c132f[_0x6dbe('0x36')]=_[_0x6dbe('0x35')](db[_0x6dbe('0x2e')][_0x6dbe('0x2f')]);_0x1c132f[_0x6dbe('0x34')]=_[_0x6dbe('0x35')](_0x5f0516[_0x6dbe('0x34')]);_0x1c132f[_0x6dbe('0x40')]=_[_0x6dbe('0x38')](_0x1c132f[_0x6dbe('0x36')],_0x1c132f[_0x6dbe('0x34')]);_0x3cb211[_0x6dbe('0x37')]=_[_0x6dbe('0x38')](_0x1c132f['model'],qs[_0x6dbe('0x39')](_0x5f0516['query'][_0x6dbe('0x39')]));_0x3cb211['attributes']=_0x3cb211[_0x6dbe('0x37')][_0x6dbe('0x3a')]?_0x3cb211[_0x6dbe('0x37')]:_0x1c132f['model'];if(_0x5f0516['query']['includeAll']){_0x3cb211[_0x6dbe('0x49')]=[{'all':!![]}];}_0x3cb211=_[_0x6dbe('0x43')]({},_0x3cb211,_0x5f0516[_0x6dbe('0x4a')]);return db[_0x6dbe('0x2e')]['find'](_0x3cb211)[_0x6dbe('0x2a')](handleEntityNotFound(_0x40edf3,null))[_0x6dbe('0x2a')](respondWithResult(_0x40edf3,null))[_0x6dbe('0x4b')](handleError(_0x40edf3,null));};exports[_0x6dbe('0x4c')]=function(_0x159eda,_0x546bca){return db[_0x6dbe('0x2e')][_0x6dbe('0x4c')](_0x159eda[_0x6dbe('0x4d')],{})['then'](respondWithResult(_0x546bca,0xc9))['catch'](handleError(_0x546bca,null));};exports[_0x6dbe('0x29')]=function(_0x3d4906,_0x39365a){if(_0x3d4906[_0x6dbe('0x4d')]['id']){delete _0x3d4906[_0x6dbe('0x4d')]['id'];}return db[_0x6dbe('0x2e')]['find']({'where':{'id':_0x3d4906[_0x6dbe('0x48')]['id']}})[_0x6dbe('0x2a')](handleEntityNotFound(_0x39365a,null))[_0x6dbe('0x2a')](saveUpdates(_0x3d4906[_0x6dbe('0x4d')],null))[_0x6dbe('0x2a')](respondWithResult(_0x39365a,null))[_0x6dbe('0x4b')](handleError(_0x39365a,null));};exports['destroy']=function(_0x24cea7,_0x48f4af){return db[_0x6dbe('0x2e')][_0x6dbe('0x4e')]({'where':{'id':_0x24cea7[_0x6dbe('0x48')]['id']}})[_0x6dbe('0x2a')](handleEntityNotFound(_0x48f4af,null))[_0x6dbe('0x2a')](removeEntity(_0x48f4af,null))[_0x6dbe('0x4b')](handleError(_0x48f4af,null));};