Built motion from commit dbf3a7e2.|2.6.30
[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 _0xd5de=['../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/environment','../../config/license/util','../../mysqldb','status','end','json','offset','undefined','limit','count','Content-Range','apply','reject','save','update','then','destroy','sendStatus','error','stack','name','send','FaxApplication','rawAttributes','fieldName','key','query','keys','filters','intersection','model','attributes','fields','nolimit','order','sort','where','pick','filter','merge','map','type','include','catch','show','length','includeAll','options','find','create','body','params','eml-format','rimraf','fast-json-patch','moment','bluebird','util','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs'];(function(_0x1caf6a,_0x26a5bf){var _0x1bf493=function(_0x3982f5){while(--_0x3982f5){_0x1caf6a['push'](_0x1caf6a['shift']());}};_0x1bf493(++_0x26a5bf);}(_0xd5de,0xc7));var _0xed5d=function(_0x13d07a,_0x41efc3){_0x13d07a=_0x13d07a-0x0;var _0x5ee0ee=_0xd5de[_0x13d07a];return _0x5ee0ee;};'use strict';var emlformat=require(_0xed5d('0x0'));var rimraf=require(_0xed5d('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xed5d('0x2'));var rp=require('request-promise');var moment=require(_0xed5d('0x3'));var BPromise=require(_0xed5d('0x4'));var Mustache=require('mustache');var util=require(_0xed5d('0x5'));var path=require('path');var sox=require('sox');var csv=require(_0xed5d('0x6'));var ejs=require(_0xed5d('0x7'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xed5d('0x8'));var squel=require(_0xed5d('0x9'));var crypto=require(_0xed5d('0xa'));var jsforce=require(_0xed5d('0xb'));var deskjs=require(_0xed5d('0xc'));var toCsv=require('to-csv');var querystring=require(_0xed5d('0xd'));var Papa=require('papaparse');var Redis=require(_0xed5d('0xe'));var authService=require(_0xed5d('0xf'));var qs=require(_0xed5d('0x10'));var as=require(_0xed5d('0x11'));var hardwareService=require(_0xed5d('0x12'));var logger=require(_0xed5d('0x13'))('api');var utils=require('../../config/utils');var config=require(_0xed5d('0x14'));var licenseUtil=require(_0xed5d('0x15'));var db=require(_0xed5d('0x16'))['db'];function respondWithStatusCode(_0x1ed5d6,_0x55fe59){_0x55fe59=_0x55fe59||0xcc;return function(_0x36df3b){if(_0x36df3b){return _0x1ed5d6['sendStatus'](_0x55fe59);}return _0x1ed5d6[_0xed5d('0x17')](_0x55fe59)[_0xed5d('0x18')]();};}function respondWithResult(_0x4c151f,_0x17871e){_0x17871e=_0x17871e||0xc8;return function(_0x17519f){if(_0x17519f){return _0x4c151f[_0xed5d('0x17')](_0x17871e)[_0xed5d('0x19')](_0x17519f);}};}function respondWithFilteredResult(_0x5bd629,_0x197dc0){return function(_0x46dfd3){if(_0x46dfd3){var _0x73eab=typeof _0x197dc0[_0xed5d('0x1a')]===_0xed5d('0x1b')&&typeof _0x197dc0[_0xed5d('0x1c')]===_0xed5d('0x1b');var _0xa13bd2=_0x46dfd3[_0xed5d('0x1d')];var _0x42c851=_0x73eab?0x0:_0x197dc0[_0xed5d('0x1a')];var _0x5d1975=_0x73eab?_0x46dfd3[_0xed5d('0x1d')]:_0x197dc0[_0xed5d('0x1a')]+_0x197dc0[_0xed5d('0x1c')];var _0x5639de;if(_0x5d1975>=_0xa13bd2){_0x5d1975=_0xa13bd2;_0x5639de=0xc8;}else{_0x5639de=0xce;}_0x5bd629[_0xed5d('0x17')](_0x5639de);return _0x5bd629['set'](_0xed5d('0x1e'),_0x42c851+'-'+_0x5d1975+'/'+_0xa13bd2)['json'](_0x46dfd3);}return null;};}function patchUpdates(_0x5ef10b){return function(_0x3b3037){try{jsonpatch[_0xed5d('0x1f')](_0x3b3037,_0x5ef10b,!![]);}catch(_0x1baa0b){return BPromise[_0xed5d('0x20')](_0x1baa0b);}return _0x3b3037[_0xed5d('0x21')]();};}function saveUpdates(_0x342118,_0x5410b2){return function(_0x21eb87){if(_0x21eb87){return _0x21eb87[_0xed5d('0x22')](_0x342118)[_0xed5d('0x23')](function(_0x15ee96){return _0x15ee96;});}return null;};}function removeEntity(_0x249d3f,_0x2ac4ac){return function(_0x435613){if(_0x435613){return _0x435613[_0xed5d('0x24')]()['then'](function(){_0x249d3f[_0xed5d('0x17')](0xcc)['end']();});}};}function handleEntityNotFound(_0x26ada6,_0x5abebd){return function(_0x3a83cc){if(!_0x3a83cc){_0x26ada6[_0xed5d('0x25')](0x194);}return _0x3a83cc;};}function handleError(_0x17c8b7,_0x4b6ec6){_0x4b6ec6=_0x4b6ec6||0x1f4;return function(_0x1adb9e){logger[_0xed5d('0x26')](_0x1adb9e[_0xed5d('0x27')]);if(_0x1adb9e[_0xed5d('0x28')]){delete _0x1adb9e[_0xed5d('0x28')];}_0x17c8b7[_0xed5d('0x17')](_0x4b6ec6)[_0xed5d('0x29')](_0x1adb9e);};}exports['index']=function(_0x1c5f2d,_0x349751){var _0x2e3bf2={},_0x514f79={},_0x3de1de={'count':0x0,'rows':[]};var _0x15d915=_['map'](db[_0xed5d('0x2a')][_0xed5d('0x2b')],function(_0x1cc2f1){return{'name':_0x1cc2f1[_0xed5d('0x2c')],'type':_0x1cc2f1['type'][_0xed5d('0x2d')]};});_0x514f79['model']=_['map'](_0x15d915,_0xed5d('0x28'));_0x514f79[_0xed5d('0x2e')]=_[_0xed5d('0x2f')](_0x1c5f2d['query']);_0x514f79[_0xed5d('0x30')]=_[_0xed5d('0x31')](_0x514f79[_0xed5d('0x32')],_0x514f79[_0xed5d('0x2e')]);_0x2e3bf2[_0xed5d('0x33')]=_['intersection'](_0x514f79[_0xed5d('0x32')],qs[_0xed5d('0x34')](_0x1c5f2d[_0xed5d('0x2e')][_0xed5d('0x34')]));_0x2e3bf2['attributes']=_0x2e3bf2['attributes']['length']?_0x2e3bf2[_0xed5d('0x33')]:_0x514f79[_0xed5d('0x32')];if(!_0x1c5f2d[_0xed5d('0x2e')]['hasOwnProperty'](_0xed5d('0x35'))){_0x2e3bf2[_0xed5d('0x1c')]=qs[_0xed5d('0x1c')](_0x1c5f2d[_0xed5d('0x2e')][_0xed5d('0x1c')]);_0x2e3bf2['offset']=qs[_0xed5d('0x1a')](_0x1c5f2d['query'][_0xed5d('0x1a')]);}_0x2e3bf2[_0xed5d('0x36')]=qs[_0xed5d('0x37')](_0x1c5f2d[_0xed5d('0x2e')][_0xed5d('0x37')]);_0x2e3bf2[_0xed5d('0x38')]=qs['filters'](_[_0xed5d('0x39')](_0x1c5f2d['query'],_0x514f79[_0xed5d('0x30')]),_0x15d915);if(_0x1c5f2d[_0xed5d('0x2e')][_0xed5d('0x3a')]){_0x2e3bf2[_0xed5d('0x38')]=_[_0xed5d('0x3b')](_0x2e3bf2['where'],{'$or':_[_0xed5d('0x3c')](_0x15d915,function(_0x2f8d73){if(_0x2f8d73[_0xed5d('0x3d')]!=='VIRTUAL'){var _0x30fb4e={};_0x30fb4e[_0x2f8d73[_0xed5d('0x28')]]={'$like':'%'+_0x1c5f2d['query'][_0xed5d('0x3a')]+'%'};return _0x30fb4e;}})});}_0x2e3bf2=_[_0xed5d('0x3b')]({},_0x2e3bf2,_0x1c5f2d['options']);var _0x543989={'where':_0x2e3bf2['where']};return db['FaxApplication'][_0xed5d('0x1d')](_0x543989)[_0xed5d('0x23')](function(_0x1ed16c){_0x3de1de['count']=_0x1ed16c;if(_0x1c5f2d[_0xed5d('0x2e')]['includeAll']){_0x2e3bf2[_0xed5d('0x3e')]=[{'all':!![]}];}return db[_0xed5d('0x2a')]['findAll'](_0x2e3bf2);})[_0xed5d('0x23')](function(_0x1de025){_0x3de1de['rows']=_0x1de025;return _0x3de1de;})['then'](respondWithFilteredResult(_0x349751,_0x2e3bf2))[_0xed5d('0x3f')](handleError(_0x349751,null));};exports[_0xed5d('0x40')]=function(_0xc4f9c7,_0x25e1b4){var _0x5deb1e={'raw':!![],'where':{'id':_0xc4f9c7['params']['id']}},_0x4ab0fb={};_0x4ab0fb[_0xed5d('0x32')]=_['keys'](db['FaxApplication']['rawAttributes']);_0x4ab0fb[_0xed5d('0x2e')]=_[_0xed5d('0x2f')](_0xc4f9c7['query']);_0x4ab0fb[_0xed5d('0x30')]=_[_0xed5d('0x31')](_0x4ab0fb[_0xed5d('0x32')],_0x4ab0fb[_0xed5d('0x2e')]);_0x5deb1e[_0xed5d('0x33')]=_['intersection'](_0x4ab0fb[_0xed5d('0x32')],qs[_0xed5d('0x34')](_0xc4f9c7[_0xed5d('0x2e')][_0xed5d('0x34')]));_0x5deb1e['attributes']=_0x5deb1e[_0xed5d('0x33')][_0xed5d('0x41')]?_0x5deb1e[_0xed5d('0x33')]:_0x4ab0fb[_0xed5d('0x32')];if(_0xc4f9c7[_0xed5d('0x2e')][_0xed5d('0x42')]){_0x5deb1e[_0xed5d('0x3e')]=[{'all':!![]}];}_0x5deb1e=_['merge']({},_0x5deb1e,_0xc4f9c7[_0xed5d('0x43')]);return db[_0xed5d('0x2a')][_0xed5d('0x44')](_0x5deb1e)['then'](handleEntityNotFound(_0x25e1b4,null))[_0xed5d('0x23')](respondWithResult(_0x25e1b4,null))[_0xed5d('0x3f')](handleError(_0x25e1b4,null));};exports['create']=function(_0x1ef1a1,_0x5d9aeb){return db[_0xed5d('0x2a')][_0xed5d('0x45')](_0x1ef1a1[_0xed5d('0x46')],{})[_0xed5d('0x23')](respondWithResult(_0x5d9aeb,0xc9))['catch'](handleError(_0x5d9aeb,null));};exports['update']=function(_0xca8d27,_0x137e98){if(_0xca8d27[_0xed5d('0x46')]['id']){delete _0xca8d27[_0xed5d('0x46')]['id'];}return db['FaxApplication'][_0xed5d('0x44')]({'where':{'id':_0xca8d27[_0xed5d('0x47')]['id']}})[_0xed5d('0x23')](handleEntityNotFound(_0x137e98,null))[_0xed5d('0x23')](saveUpdates(_0xca8d27['body'],null))[_0xed5d('0x23')](respondWithResult(_0x137e98,null))[_0xed5d('0x3f')](handleError(_0x137e98,null));};exports[_0xed5d('0x24')]=function(_0x40cc7e,_0x101fd2){return db[_0xed5d('0x2a')]['find']({'where':{'id':_0x40cc7e['params']['id']}})[_0xed5d('0x23')](handleEntityNotFound(_0x101fd2,null))[_0xed5d('0x23')](removeEntity(_0x101fd2,null))[_0xed5d('0x3f')](handleError(_0x101fd2,null));};