Built motion from commit 377f727e.|2.6.28
[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 _0xacb7=['request-promise','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','offset','undefined','count','limit','set','Content-Range','json','apply','reject','save','update','then','destroy','name','send','index','FaxApplication','fieldName','type','model','map','query','keys','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','filters','filter','merge','VIRTUAL','options','includeAll','include','findAll','rows','show','intersection','find','create','catch','body','params','rimraf','zip-dir','fast-json-patch'];(function(_0x4b91c4,_0x23f35f){var _0x25cb80=function(_0x48e283){while(--_0x48e283){_0x4b91c4['push'](_0x4b91c4['shift']());}};_0x25cb80(++_0x23f35f);}(_0xacb7,0x12d));var _0x7acb=function(_0x17af8b,_0x1db499){_0x17af8b=_0x17af8b-0x0;var _0x2bbf33=_0xacb7[_0x17af8b];return _0x2bbf33;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x7acb('0x0'));var zipdir=require(_0x7acb('0x1'));var jsonpatch=require(_0x7acb('0x2'));var rp=require(_0x7acb('0x3'));var moment=require('moment');var BPromise=require(_0x7acb('0x4'));var Mustache=require(_0x7acb('0x5'));var util=require(_0x7acb('0x6'));var path=require(_0x7acb('0x7'));var sox=require(_0x7acb('0x8'));var csv=require(_0x7acb('0x9'));var ejs=require(_0x7acb('0xa'));var fs=require('fs');var fs_extra=require(_0x7acb('0xb'));var _=require(_0x7acb('0xc'));var squel=require(_0x7acb('0xd'));var crypto=require(_0x7acb('0xe'));var jsforce=require('jsforce');var deskjs=require(_0x7acb('0xf'));var toCsv=require('to-csv');var querystring=require(_0x7acb('0x10'));var Papa=require('papaparse');var Redis=require(_0x7acb('0x11'));var authService=require(_0x7acb('0x12'));var qs=require(_0x7acb('0x13'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x7acb('0x14'));var logger=require(_0x7acb('0x15'))('api');var utils=require(_0x7acb('0x16'));var config=require(_0x7acb('0x17'));var licenseUtil=require(_0x7acb('0x18'));var db=require(_0x7acb('0x19'))['db'];function respondWithStatusCode(_0x570d8d,_0xa66036){_0xa66036=_0xa66036||0xcc;return function(_0x471c68){if(_0x471c68){return _0x570d8d[_0x7acb('0x1a')](_0xa66036);}return _0x570d8d[_0x7acb('0x1b')](_0xa66036)[_0x7acb('0x1c')]();};}function respondWithResult(_0xe18dd7,_0x474ade){_0x474ade=_0x474ade||0xc8;return function(_0x34ee12){if(_0x34ee12){return _0xe18dd7[_0x7acb('0x1b')](_0x474ade)['json'](_0x34ee12);}};}function respondWithFilteredResult(_0x55311d,_0x14cdb3){return function(_0x566ff8){if(_0x566ff8){var _0x48d50e=typeof _0x14cdb3[_0x7acb('0x1d')]===_0x7acb('0x1e')&&typeof _0x14cdb3['limit']==='undefined';var _0xedd46e=_0x566ff8[_0x7acb('0x1f')];var _0x24137b=_0x48d50e?0x0:_0x14cdb3[_0x7acb('0x1d')];var _0x1589a5=_0x48d50e?_0x566ff8[_0x7acb('0x1f')]:_0x14cdb3[_0x7acb('0x1d')]+_0x14cdb3[_0x7acb('0x20')];var _0x21c6cc;if(_0x1589a5>=_0xedd46e){_0x1589a5=_0xedd46e;_0x21c6cc=0xc8;}else{_0x21c6cc=0xce;}_0x55311d[_0x7acb('0x1b')](_0x21c6cc);return _0x55311d[_0x7acb('0x21')](_0x7acb('0x22'),_0x24137b+'-'+_0x1589a5+'/'+_0xedd46e)[_0x7acb('0x23')](_0x566ff8);}return null;};}function patchUpdates(_0x2e107f){return function(_0x39ded7){try{jsonpatch[_0x7acb('0x24')](_0x39ded7,_0x2e107f,!![]);}catch(_0x2f23e7){return BPromise[_0x7acb('0x25')](_0x2f23e7);}return _0x39ded7[_0x7acb('0x26')]();};}function saveUpdates(_0x463af2,_0x27cc2f){return function(_0xadeade){if(_0xadeade){return _0xadeade[_0x7acb('0x27')](_0x463af2)[_0x7acb('0x28')](function(_0x326bed){return _0x326bed;});}return null;};}function removeEntity(_0x5025de,_0x1bae58){return function(_0x42394d){if(_0x42394d){return _0x42394d[_0x7acb('0x29')]()[_0x7acb('0x28')](function(){_0x5025de[_0x7acb('0x1b')](0xcc)[_0x7acb('0x1c')]();});}};}function handleEntityNotFound(_0x4dc83,_0x494008){return function(_0x4912d6){if(!_0x4912d6){_0x4dc83['sendStatus'](0x194);}return _0x4912d6;};}function handleError(_0x49d1b4,_0x2729aa){_0x2729aa=_0x2729aa||0x1f4;return function(_0x481e25){logger['error'](_0x481e25['stack']);if(_0x481e25[_0x7acb('0x2a')]){delete _0x481e25[_0x7acb('0x2a')];}_0x49d1b4[_0x7acb('0x1b')](_0x2729aa)[_0x7acb('0x2b')](_0x481e25);};}exports[_0x7acb('0x2c')]=function(_0xf5adac,_0x553a63){var _0x4a137c={},_0x1cb3e1={},_0x3948de={'count':0x0,'rows':[]};var _0x2401b9=_['map'](db[_0x7acb('0x2d')]['rawAttributes'],function(_0x3128b4){return{'name':_0x3128b4[_0x7acb('0x2e')],'type':_0x3128b4[_0x7acb('0x2f')]['key']};});_0x1cb3e1[_0x7acb('0x30')]=_[_0x7acb('0x31')](_0x2401b9,'name');_0x1cb3e1[_0x7acb('0x32')]=_[_0x7acb('0x33')](_0xf5adac[_0x7acb('0x32')]);_0x1cb3e1['filters']=_['intersection'](_0x1cb3e1[_0x7acb('0x30')],_0x1cb3e1[_0x7acb('0x32')]);_0x4a137c[_0x7acb('0x34')]=_['intersection'](_0x1cb3e1[_0x7acb('0x30')],qs[_0x7acb('0x35')](_0xf5adac[_0x7acb('0x32')][_0x7acb('0x35')]));_0x4a137c[_0x7acb('0x34')]=_0x4a137c[_0x7acb('0x34')][_0x7acb('0x36')]?_0x4a137c[_0x7acb('0x34')]:_0x1cb3e1[_0x7acb('0x30')];if(!_0xf5adac[_0x7acb('0x32')][_0x7acb('0x37')](_0x7acb('0x38'))){_0x4a137c['limit']=qs['limit'](_0xf5adac[_0x7acb('0x32')]['limit']);_0x4a137c[_0x7acb('0x1d')]=qs['offset'](_0xf5adac[_0x7acb('0x32')]['offset']);}_0x4a137c[_0x7acb('0x39')]=qs['sort'](_0xf5adac[_0x7acb('0x32')][_0x7acb('0x3a')]);_0x4a137c[_0x7acb('0x3b')]=qs[_0x7acb('0x3c')](_['pick'](_0xf5adac[_0x7acb('0x32')],_0x1cb3e1['filters']),_0x2401b9);if(_0xf5adac[_0x7acb('0x32')][_0x7acb('0x3d')]){_0x4a137c[_0x7acb('0x3b')]=_[_0x7acb('0x3e')](_0x4a137c['where'],{'$or':_['map'](_0x2401b9,function(_0x3026fb){if(_0x3026fb[_0x7acb('0x2f')]!==_0x7acb('0x3f')){var _0x9a8cb3={};_0x9a8cb3[_0x3026fb[_0x7acb('0x2a')]]={'$like':'%'+_0xf5adac[_0x7acb('0x32')][_0x7acb('0x3d')]+'%'};return _0x9a8cb3;}})});}_0x4a137c=_[_0x7acb('0x3e')]({},_0x4a137c,_0xf5adac[_0x7acb('0x40')]);var _0x37c56b={'where':_0x4a137c[_0x7acb('0x3b')]};return db[_0x7acb('0x2d')][_0x7acb('0x1f')](_0x37c56b)['then'](function(_0x3571ce){_0x3948de[_0x7acb('0x1f')]=_0x3571ce;if(_0xf5adac[_0x7acb('0x32')][_0x7acb('0x41')]){_0x4a137c[_0x7acb('0x42')]=[{'all':!![]}];}return db['FaxApplication'][_0x7acb('0x43')](_0x4a137c);})[_0x7acb('0x28')](function(_0x26c6ea){_0x3948de[_0x7acb('0x44')]=_0x26c6ea;return _0x3948de;})[_0x7acb('0x28')](respondWithFilteredResult(_0x553a63,_0x4a137c))['catch'](handleError(_0x553a63,null));};exports[_0x7acb('0x45')]=function(_0x4f9478,_0x59284b){var _0x48cf2d={'raw':!![],'where':{'id':_0x4f9478['params']['id']}},_0x23d99a={};_0x23d99a['model']=_[_0x7acb('0x33')](db[_0x7acb('0x2d')]['rawAttributes']);_0x23d99a[_0x7acb('0x32')]=_[_0x7acb('0x33')](_0x4f9478[_0x7acb('0x32')]);_0x23d99a[_0x7acb('0x3c')]=_[_0x7acb('0x46')](_0x23d99a[_0x7acb('0x30')],_0x23d99a[_0x7acb('0x32')]);_0x48cf2d[_0x7acb('0x34')]=_[_0x7acb('0x46')](_0x23d99a[_0x7acb('0x30')],qs[_0x7acb('0x35')](_0x4f9478[_0x7acb('0x32')][_0x7acb('0x35')]));_0x48cf2d[_0x7acb('0x34')]=_0x48cf2d[_0x7acb('0x34')][_0x7acb('0x36')]?_0x48cf2d['attributes']:_0x23d99a[_0x7acb('0x30')];if(_0x4f9478[_0x7acb('0x32')][_0x7acb('0x41')]){_0x48cf2d[_0x7acb('0x42')]=[{'all':!![]}];}_0x48cf2d=_[_0x7acb('0x3e')]({},_0x48cf2d,_0x4f9478[_0x7acb('0x40')]);return db['FaxApplication'][_0x7acb('0x47')](_0x48cf2d)[_0x7acb('0x28')](handleEntityNotFound(_0x59284b,null))[_0x7acb('0x28')](respondWithResult(_0x59284b,null))['catch'](handleError(_0x59284b,null));};exports['create']=function(_0x1d06eb,_0x2b4fa6){return db['FaxApplication'][_0x7acb('0x48')](_0x1d06eb['body'],{})['then'](respondWithResult(_0x2b4fa6,0xc9))[_0x7acb('0x49')](handleError(_0x2b4fa6,null));};exports[_0x7acb('0x27')]=function(_0xdedfba,_0x4b1bec){if(_0xdedfba['body']['id']){delete _0xdedfba[_0x7acb('0x4a')]['id'];}return db[_0x7acb('0x2d')][_0x7acb('0x47')]({'where':{'id':_0xdedfba[_0x7acb('0x4b')]['id']}})[_0x7acb('0x28')](handleEntityNotFound(_0x4b1bec,null))['then'](saveUpdates(_0xdedfba[_0x7acb('0x4a')],null))[_0x7acb('0x28')](respondWithResult(_0x4b1bec,null))[_0x7acb('0x49')](handleError(_0x4b1bec,null));};exports[_0x7acb('0x29')]=function(_0x3365ee,_0x303ecf){return db[_0x7acb('0x2d')][_0x7acb('0x47')]({'where':{'id':_0x3365ee[_0x7acb('0x4b')]['id']}})['then'](handleEntityNotFound(_0x303ecf,null))[_0x7acb('0x28')](removeEntity(_0x303ecf,null))['catch'](handleError(_0x303ecf,null));};