Built motion from commit 9e1399f3.|2.5.37
[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 _0x9e7a=['params','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','mustache','util','path','ejs','lodash','squel','crypto','jsforce','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/environment','../../config/license/util','status','json','undefined','count','offset','limit','set','Content-Range','save','then','destroy','end','stack','name','send','index','map','FaxApplication','fieldName','model','query','filters','attributes','intersection','fields','length','sort','where','pick','merge','VIRTUAL','filter','options','includeAll','include','rows','catch','show','rawAttributes','keys','find','body','update'];(function(_0x3e2ddf,_0x1d5ca6){var _0x8f294f=function(_0xf89c73){while(--_0xf89c73){_0x3e2ddf['push'](_0x3e2ddf['shift']());}};_0x8f294f(++_0x1d5ca6);}(_0x9e7a,0x150));var _0xa9e7=function(_0x20598b,_0xef113d){_0x20598b=_0x20598b-0x0;var _0x4c9e0f=_0x9e7a[_0x20598b];return _0x4c9e0f;};'use strict';var emlformat=require(_0xa9e7('0x0'));var rimraf=require(_0xa9e7('0x1'));var zipdir=require(_0xa9e7('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0xa9e7('0x3'));var moment=require(_0xa9e7('0x4'));var BPromise=require(_0xa9e7('0x5'));var Mustache=require(_0xa9e7('0x6'));var util=require(_0xa9e7('0x7'));var path=require(_0xa9e7('0x8'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0xa9e7('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xa9e7('0xa'));var squel=require(_0xa9e7('0xb'));var crypto=require(_0xa9e7('0xc'));var jsforce=require(_0xa9e7('0xd'));var deskjs=require('desk.js');var toCsv=require(_0xa9e7('0xe'));var querystring=require(_0xa9e7('0xf'));var Papa=require(_0xa9e7('0x10'));var Redis=require(_0xa9e7('0x11'));var authService=require(_0xa9e7('0x12'));var qs=require(_0xa9e7('0x13'));var as=require(_0xa9e7('0x14'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')('api');var utils=require('../../config/utils');var config=require(_0xa9e7('0x15'));var licenseUtil=require(_0xa9e7('0x16'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x3aa833,_0x1d1a2d){_0x1d1a2d=_0x1d1a2d||0xcc;return function(_0x4f3fb5){if(_0x4f3fb5){return _0x3aa833['sendStatus'](_0x1d1a2d);}return _0x3aa833[_0xa9e7('0x17')](_0x1d1a2d)['end']();};}function respondWithResult(_0x42c681,_0x5d6516){_0x5d6516=_0x5d6516||0xc8;return function(_0x25caed){if(_0x25caed){return _0x42c681['status'](_0x5d6516)[_0xa9e7('0x18')](_0x25caed);}};}function respondWithFilteredResult(_0x48d7a4,_0x4c4ddd){return function(_0x14ff64){if(_0x14ff64){var _0x131566=typeof _0x4c4ddd['offset']===_0xa9e7('0x19')&&typeof _0x4c4ddd['limit']==='undefined';var _0x5bdf59=_0x14ff64[_0xa9e7('0x1a')];var _0x3d461b=_0x131566?0x0:_0x4c4ddd['offset'];var _0x4a317d=_0x131566?_0x14ff64[_0xa9e7('0x1a')]:_0x4c4ddd[_0xa9e7('0x1b')]+_0x4c4ddd[_0xa9e7('0x1c')];var _0x3cef50;if(_0x4a317d>=_0x5bdf59){_0x4a317d=_0x5bdf59;_0x3cef50=0xc8;}else{_0x3cef50=0xce;}_0x48d7a4['status'](_0x3cef50);return _0x48d7a4[_0xa9e7('0x1d')](_0xa9e7('0x1e'),_0x3d461b+'-'+_0x4a317d+'/'+_0x5bdf59)[_0xa9e7('0x18')](_0x14ff64);}return null;};}function patchUpdates(_0x58e249){return function(_0x20e2d0){try{jsonpatch['apply'](_0x20e2d0,_0x58e249,!![]);}catch(_0x29088c){return BPromise['reject'](_0x29088c);}return _0x20e2d0[_0xa9e7('0x1f')]();};}function saveUpdates(_0x5e9070,_0x443640){return function(_0x5c240b){if(_0x5c240b){return _0x5c240b['update'](_0x5e9070)[_0xa9e7('0x20')](function(_0x53f74f){return _0x53f74f;});}return null;};}function removeEntity(_0x2788a6,_0x5e0aed){return function(_0x322e6e){if(_0x322e6e){return _0x322e6e[_0xa9e7('0x21')]()['then'](function(){_0x2788a6[_0xa9e7('0x17')](0xcc)[_0xa9e7('0x22')]();});}};}function handleEntityNotFound(_0x4bd244,_0x1e43fd){return function(_0x417cbc){if(!_0x417cbc){_0x4bd244['sendStatus'](0x194);}return _0x417cbc;};}function handleError(_0x50ac72,_0xa6f9bd){_0xa6f9bd=_0xa6f9bd||0x1f4;return function(_0x4ded9d){logger['error'](_0x4ded9d[_0xa9e7('0x23')]);if(_0x4ded9d[_0xa9e7('0x24')]){delete _0x4ded9d[_0xa9e7('0x24')];}_0x50ac72['status'](_0xa6f9bd)[_0xa9e7('0x25')](_0x4ded9d);};}exports[_0xa9e7('0x26')]=function(_0x5c578c,_0x41b6b3){var _0x581434={},_0x1f80d1={},_0x2009ca={'count':0x0,'rows':[]};var _0x1e1be6=_[_0xa9e7('0x27')](db[_0xa9e7('0x28')]['rawAttributes'],function(_0x214aac){return{'name':_0x214aac[_0xa9e7('0x29')],'type':_0x214aac['type']['key']};});_0x1f80d1[_0xa9e7('0x2a')]=_['map'](_0x1e1be6,_0xa9e7('0x24'));_0x1f80d1[_0xa9e7('0x2b')]=_['keys'](_0x5c578c[_0xa9e7('0x2b')]);_0x1f80d1[_0xa9e7('0x2c')]=_['intersection'](_0x1f80d1[_0xa9e7('0x2a')],_0x1f80d1[_0xa9e7('0x2b')]);_0x581434[_0xa9e7('0x2d')]=_[_0xa9e7('0x2e')](_0x1f80d1[_0xa9e7('0x2a')],qs[_0xa9e7('0x2f')](_0x5c578c['query'][_0xa9e7('0x2f')]));_0x581434[_0xa9e7('0x2d')]=_0x581434[_0xa9e7('0x2d')][_0xa9e7('0x30')]?_0x581434[_0xa9e7('0x2d')]:_0x1f80d1[_0xa9e7('0x2a')];if(!_0x5c578c[_0xa9e7('0x2b')]['hasOwnProperty']('nolimit')){_0x581434[_0xa9e7('0x1c')]=qs[_0xa9e7('0x1c')](_0x5c578c[_0xa9e7('0x2b')][_0xa9e7('0x1c')]);_0x581434[_0xa9e7('0x1b')]=qs[_0xa9e7('0x1b')](_0x5c578c['query'][_0xa9e7('0x1b')]);}_0x581434['order']=qs[_0xa9e7('0x31')](_0x5c578c[_0xa9e7('0x2b')][_0xa9e7('0x31')]);_0x581434[_0xa9e7('0x32')]=qs[_0xa9e7('0x2c')](_[_0xa9e7('0x33')](_0x5c578c[_0xa9e7('0x2b')],_0x1f80d1[_0xa9e7('0x2c')]),_0x1e1be6);if(_0x5c578c[_0xa9e7('0x2b')]['filter']){_0x581434[_0xa9e7('0x32')]=_[_0xa9e7('0x34')](_0x581434[_0xa9e7('0x32')],{'$or':_[_0xa9e7('0x27')](_0x1e1be6,function(_0x7ac797){if(_0x7ac797['type']!==_0xa9e7('0x35')){var _0x26d049={};_0x26d049[_0x7ac797['name']]={'$like':'%'+_0x5c578c[_0xa9e7('0x2b')][_0xa9e7('0x36')]+'%'};return _0x26d049;}})});}_0x581434=_[_0xa9e7('0x34')]({},_0x581434,_0x5c578c[_0xa9e7('0x37')]);var _0x4c5930={'where':_0x581434[_0xa9e7('0x32')]};return db[_0xa9e7('0x28')][_0xa9e7('0x1a')](_0x4c5930)[_0xa9e7('0x20')](function(_0x12d935){_0x2009ca['count']=_0x12d935;if(_0x5c578c[_0xa9e7('0x2b')][_0xa9e7('0x38')]){_0x581434[_0xa9e7('0x39')]=[{'all':!![]}];}return db[_0xa9e7('0x28')]['findAll'](_0x581434);})[_0xa9e7('0x20')](function(_0x138bd2){_0x2009ca[_0xa9e7('0x3a')]=_0x138bd2;return _0x2009ca;})[_0xa9e7('0x20')](respondWithFilteredResult(_0x41b6b3,_0x581434))[_0xa9e7('0x3b')](handleError(_0x41b6b3,null));};exports[_0xa9e7('0x3c')]=function(_0x2dd6b2,_0x5a233e){var _0x2c6157={'raw':!![],'where':{'id':_0x2dd6b2['params']['id']}},_0x518d64={};_0x518d64[_0xa9e7('0x2a')]=_['keys'](db[_0xa9e7('0x28')][_0xa9e7('0x3d')]);_0x518d64['query']=_[_0xa9e7('0x3e')](_0x2dd6b2[_0xa9e7('0x2b')]);_0x518d64[_0xa9e7('0x2c')]=_[_0xa9e7('0x2e')](_0x518d64[_0xa9e7('0x2a')],_0x518d64['query']);_0x2c6157[_0xa9e7('0x2d')]=_[_0xa9e7('0x2e')](_0x518d64[_0xa9e7('0x2a')],qs[_0xa9e7('0x2f')](_0x2dd6b2[_0xa9e7('0x2b')]['fields']));_0x2c6157['attributes']=_0x2c6157[_0xa9e7('0x2d')][_0xa9e7('0x30')]?_0x2c6157[_0xa9e7('0x2d')]:_0x518d64[_0xa9e7('0x2a')];if(_0x2dd6b2[_0xa9e7('0x2b')]['includeAll']){_0x2c6157[_0xa9e7('0x39')]=[{'all':!![]}];}_0x2c6157=_[_0xa9e7('0x34')]({},_0x2c6157,_0x2dd6b2[_0xa9e7('0x37')]);return db[_0xa9e7('0x28')][_0xa9e7('0x3f')](_0x2c6157)[_0xa9e7('0x20')](handleEntityNotFound(_0x5a233e,null))[_0xa9e7('0x20')](respondWithResult(_0x5a233e,null))[_0xa9e7('0x3b')](handleError(_0x5a233e,null));};exports['create']=function(_0x3a2dc9,_0xd94f03){return db[_0xa9e7('0x28')]['create'](_0x3a2dc9[_0xa9e7('0x40')],{})['then'](respondWithResult(_0xd94f03,0xc9))[_0xa9e7('0x3b')](handleError(_0xd94f03,null));};exports[_0xa9e7('0x41')]=function(_0x3ad823,_0x494fd6){if(_0x3ad823[_0xa9e7('0x40')]['id']){delete _0x3ad823[_0xa9e7('0x40')]['id'];}return db['FaxApplication'][_0xa9e7('0x3f')]({'where':{'id':_0x3ad823[_0xa9e7('0x42')]['id']}})[_0xa9e7('0x20')](handleEntityNotFound(_0x494fd6,null))[_0xa9e7('0x20')](saveUpdates(_0x3ad823[_0xa9e7('0x40')],null))[_0xa9e7('0x20')](respondWithResult(_0x494fd6,null))[_0xa9e7('0x3b')](handleError(_0x494fd6,null));};exports[_0xa9e7('0x21')]=function(_0x4c64a4,_0x538b67){return db[_0xa9e7('0x28')][_0xa9e7('0x3f')]({'where':{'id':_0x4c64a4['params']['id']}})[_0xa9e7('0x20')](handleEntityNotFound(_0x538b67,null))['then'](removeEntity(_0x538b67,null))[_0xa9e7('0x3b')](handleError(_0x538b67,null));};