a2f994756c8d1bdd210ec2b3f279598ecbbdb50a
[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 _0xfbcb=['sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','end','status','json','offset','undefined','count','set','apply','reject','save','destroy','error','name','map','fieldName','type','key','query','keys','filters','intersection','model','attributes','fields','length','hasOwnProperty','limit','order','sort','pick','filter','where','merge','options','FaxApplication','then','includeAll','include','findAll','rows','catch','show','params','rawAttributes','create','body','update','find','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','util','path'];(function(_0x3e55f7,_0x232df0){var _0x48db30=function(_0x58220c){while(--_0x58220c){_0x3e55f7['push'](_0x3e55f7['shift']());}};_0x48db30(++_0x232df0);}(_0xfbcb,0x12c));var _0xbfbc=function(_0x398545,_0x3dfca4){_0x398545=_0x398545-0x0;var _0x214189=_0xfbcb[_0x398545];return _0x214189;};'use strict';var emlformat=require(_0xbfbc('0x0'));var rimraf=require(_0xbfbc('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xbfbc('0x2'));var rp=require(_0xbfbc('0x3'));var moment=require(_0xbfbc('0x4'));var BPromise=require(_0xbfbc('0x5'));var Mustache=require('mustache');var util=require(_0xbfbc('0x6'));var path=require(_0xbfbc('0x7'));var sox=require(_0xbfbc('0x8'));var csv=require(_0xbfbc('0x9'));var ejs=require(_0xbfbc('0xa'));var fs=require('fs');var fs_extra=require(_0xbfbc('0xb'));var _=require(_0xbfbc('0xc'));var squel=require(_0xbfbc('0xd'));var crypto=require(_0xbfbc('0xe'));var jsforce=require(_0xbfbc('0xf'));var deskjs=require(_0xbfbc('0x10'));var toCsv=require('to-csv');var querystring=require(_0xbfbc('0x11'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0xbfbc('0x12'));var qs=require(_0xbfbc('0x13'));var as=require(_0xbfbc('0x14'));var hardwareService=require(_0xbfbc('0x15'));var logger=require(_0xbfbc('0x16'))(_0xbfbc('0x17'));var utils=require(_0xbfbc('0x18'));var config=require(_0xbfbc('0x19'));var licenseUtil=require(_0xbfbc('0x1a'));var db=require(_0xbfbc('0x1b'))['db'];function respondWithStatusCode(_0x4de160,_0x10c1a9){_0x10c1a9=_0x10c1a9||0xcc;return function(_0x5e5a92){if(_0x5e5a92){return _0x4de160[_0xbfbc('0x1c')](_0x10c1a9);}return _0x4de160['status'](_0x10c1a9)[_0xbfbc('0x1d')]();};}function respondWithResult(_0x1f5eb3,_0x5f1765){_0x5f1765=_0x5f1765||0xc8;return function(_0x2838b8){if(_0x2838b8){return _0x1f5eb3[_0xbfbc('0x1e')](_0x5f1765)[_0xbfbc('0x1f')](_0x2838b8);}};}function respondWithFilteredResult(_0xe5848c,_0x4c3d8d){return function(_0x3720a8){if(_0x3720a8){var _0x329f18=typeof _0x4c3d8d[_0xbfbc('0x20')]===_0xbfbc('0x21')&&typeof _0x4c3d8d['limit']===_0xbfbc('0x21');var _0x23341e=_0x3720a8['count'];var _0x591def=_0x329f18?0x0:_0x4c3d8d[_0xbfbc('0x20')];var _0x3f55e1=_0x329f18?_0x3720a8[_0xbfbc('0x22')]:_0x4c3d8d[_0xbfbc('0x20')]+_0x4c3d8d['limit'];var _0x4c8192;if(_0x3f55e1>=_0x23341e){_0x3f55e1=_0x23341e;_0x4c8192=0xc8;}else{_0x4c8192=0xce;}_0xe5848c[_0xbfbc('0x1e')](_0x4c8192);return _0xe5848c[_0xbfbc('0x23')]('Content-Range',_0x591def+'-'+_0x3f55e1+'/'+_0x23341e)[_0xbfbc('0x1f')](_0x3720a8);}return null;};}function patchUpdates(_0x214a14){return function(_0x4d5737){try{jsonpatch[_0xbfbc('0x24')](_0x4d5737,_0x214a14,!![]);}catch(_0x1e62b9){return BPromise[_0xbfbc('0x25')](_0x1e62b9);}return _0x4d5737[_0xbfbc('0x26')]();};}function saveUpdates(_0x561512,_0x459bdb){return function(_0x3fb012){if(_0x3fb012){return _0x3fb012['update'](_0x561512)['then'](function(_0x52c681){return _0x52c681;});}return null;};}function removeEntity(_0x148b7d,_0x4cc15b){return function(_0x2f893b){if(_0x2f893b){return _0x2f893b[_0xbfbc('0x27')]()['then'](function(){_0x148b7d[_0xbfbc('0x1e')](0xcc)[_0xbfbc('0x1d')]();});}};}function handleEntityNotFound(_0x349384,_0x47686d){return function(_0x33d825){if(!_0x33d825){_0x349384[_0xbfbc('0x1c')](0x194);}return _0x33d825;};}function handleError(_0x3577b0,_0x284b9e){_0x284b9e=_0x284b9e||0x1f4;return function(_0x1332f0){logger[_0xbfbc('0x28')](_0x1332f0['stack']);if(_0x1332f0[_0xbfbc('0x29')]){delete _0x1332f0[_0xbfbc('0x29')];}_0x3577b0[_0xbfbc('0x1e')](_0x284b9e)['send'](_0x1332f0);};}exports['index']=function(_0x207ae0,_0x16abe5){var _0xbfa43c={},_0x1f0d60={},_0x9d7991={'count':0x0,'rows':[]};var _0x41699e=_[_0xbfbc('0x2a')](db['FaxApplication']['rawAttributes'],function(_0x1c4929){return{'name':_0x1c4929[_0xbfbc('0x2b')],'type':_0x1c4929[_0xbfbc('0x2c')][_0xbfbc('0x2d')]};});_0x1f0d60['model']=_[_0xbfbc('0x2a')](_0x41699e,_0xbfbc('0x29'));_0x1f0d60[_0xbfbc('0x2e')]=_[_0xbfbc('0x2f')](_0x207ae0[_0xbfbc('0x2e')]);_0x1f0d60[_0xbfbc('0x30')]=_[_0xbfbc('0x31')](_0x1f0d60[_0xbfbc('0x32')],_0x1f0d60[_0xbfbc('0x2e')]);_0xbfa43c[_0xbfbc('0x33')]=_[_0xbfbc('0x31')](_0x1f0d60['model'],qs[_0xbfbc('0x34')](_0x207ae0['query'][_0xbfbc('0x34')]));_0xbfa43c[_0xbfbc('0x33')]=_0xbfa43c[_0xbfbc('0x33')][_0xbfbc('0x35')]?_0xbfa43c[_0xbfbc('0x33')]:_0x1f0d60[_0xbfbc('0x32')];if(!_0x207ae0[_0xbfbc('0x2e')][_0xbfbc('0x36')]('nolimit')){_0xbfa43c[_0xbfbc('0x37')]=qs[_0xbfbc('0x37')](_0x207ae0[_0xbfbc('0x2e')][_0xbfbc('0x37')]);_0xbfa43c['offset']=qs[_0xbfbc('0x20')](_0x207ae0[_0xbfbc('0x2e')]['offset']);}_0xbfa43c[_0xbfbc('0x38')]=qs['sort'](_0x207ae0[_0xbfbc('0x2e')][_0xbfbc('0x39')]);_0xbfa43c['where']=qs[_0xbfbc('0x30')](_[_0xbfbc('0x3a')](_0x207ae0[_0xbfbc('0x2e')],_0x1f0d60[_0xbfbc('0x30')]),_0x41699e);if(_0x207ae0['query'][_0xbfbc('0x3b')]){_0xbfa43c[_0xbfbc('0x3c')]=_[_0xbfbc('0x3d')](_0xbfa43c['where'],{'$or':_[_0xbfbc('0x2a')](_0x41699e,function(_0x30bd9a){if(_0x30bd9a[_0xbfbc('0x2c')]!=='VIRTUAL'){var _0x28736f={};_0x28736f[_0x30bd9a[_0xbfbc('0x29')]]={'$like':'%'+_0x207ae0[_0xbfbc('0x2e')][_0xbfbc('0x3b')]+'%'};return _0x28736f;}})});}_0xbfa43c=_[_0xbfbc('0x3d')]({},_0xbfa43c,_0x207ae0[_0xbfbc('0x3e')]);var _0x430cff={'where':_0xbfa43c['where']};return db[_0xbfbc('0x3f')]['count'](_0x430cff)[_0xbfbc('0x40')](function(_0x2f5f4e){_0x9d7991['count']=_0x2f5f4e;if(_0x207ae0[_0xbfbc('0x2e')][_0xbfbc('0x41')]){_0xbfa43c[_0xbfbc('0x42')]=[{'all':!![]}];}return db[_0xbfbc('0x3f')][_0xbfbc('0x43')](_0xbfa43c);})[_0xbfbc('0x40')](function(_0x51c561){_0x9d7991[_0xbfbc('0x44')]=_0x51c561;return _0x9d7991;})[_0xbfbc('0x40')](respondWithFilteredResult(_0x16abe5,_0xbfa43c))[_0xbfbc('0x45')](handleError(_0x16abe5,null));};exports[_0xbfbc('0x46')]=function(_0x164305,_0x2a681b){var _0x18e7d6={'raw':!![],'where':{'id':_0x164305[_0xbfbc('0x47')]['id']}},_0x169bd7={};_0x169bd7[_0xbfbc('0x32')]=_[_0xbfbc('0x2f')](db[_0xbfbc('0x3f')][_0xbfbc('0x48')]);_0x169bd7[_0xbfbc('0x2e')]=_[_0xbfbc('0x2f')](_0x164305[_0xbfbc('0x2e')]);_0x169bd7[_0xbfbc('0x30')]=_[_0xbfbc('0x31')](_0x169bd7[_0xbfbc('0x32')],_0x169bd7[_0xbfbc('0x2e')]);_0x18e7d6[_0xbfbc('0x33')]=_[_0xbfbc('0x31')](_0x169bd7[_0xbfbc('0x32')],qs[_0xbfbc('0x34')](_0x164305[_0xbfbc('0x2e')][_0xbfbc('0x34')]));_0x18e7d6[_0xbfbc('0x33')]=_0x18e7d6[_0xbfbc('0x33')][_0xbfbc('0x35')]?_0x18e7d6[_0xbfbc('0x33')]:_0x169bd7[_0xbfbc('0x32')];if(_0x164305[_0xbfbc('0x2e')]['includeAll']){_0x18e7d6['include']=[{'all':!![]}];}_0x18e7d6=_[_0xbfbc('0x3d')]({},_0x18e7d6,_0x164305['options']);return db[_0xbfbc('0x3f')]['find'](_0x18e7d6)[_0xbfbc('0x40')](handleEntityNotFound(_0x2a681b,null))['then'](respondWithResult(_0x2a681b,null))[_0xbfbc('0x45')](handleError(_0x2a681b,null));};exports[_0xbfbc('0x49')]=function(_0x309ba4,_0x407208){return db[_0xbfbc('0x3f')][_0xbfbc('0x49')](_0x309ba4[_0xbfbc('0x4a')],{})[_0xbfbc('0x40')](respondWithResult(_0x407208,0xc9))[_0xbfbc('0x45')](handleError(_0x407208,null));};exports[_0xbfbc('0x4b')]=function(_0x16b091,_0x41d89f){if(_0x16b091[_0xbfbc('0x4a')]['id']){delete _0x16b091[_0xbfbc('0x4a')]['id'];}return db[_0xbfbc('0x3f')]['find']({'where':{'id':_0x16b091['params']['id']}})[_0xbfbc('0x40')](handleEntityNotFound(_0x41d89f,null))[_0xbfbc('0x40')](saveUpdates(_0x16b091['body'],null))[_0xbfbc('0x40')](respondWithResult(_0x41d89f,null))[_0xbfbc('0x45')](handleError(_0x41d89f,null));};exports[_0xbfbc('0x27')]=function(_0x1467eb,_0x307fc3){return db[_0xbfbc('0x3f')][_0xbfbc('0x4c')]({'where':{'id':_0x1467eb[_0xbfbc('0x47')]['id']}})[_0xbfbc('0x40')](handleEntityNotFound(_0x307fc3,null))[_0xbfbc('0x40')](removeEntity(_0x307fc3,null))['catch'](handleError(_0x307fc3,null));};