Built motion from commit da617fac.|2.6.6
[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 _0xd362=['VIRTUAL','options','FaxApplication','include','findAll','rows','show','params','keys','fields','find','catch','create','body','eml-format','rimraf','fast-json-patch','request-promise','moment','mustache','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','querystring','papaparse','ioredis','../../components/parsers/advancedSearch','../../config/logger','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined','count','limit','set','reject','save','update','destroy','then','stack','name','send','index','map','rawAttributes','type','key','model','query','intersection','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filters','filter','merge'];(function(_0xa61555,_0x1bc1a5){var _0x2e248d=function(_0x4f491c){while(--_0x4f491c){_0xa61555['push'](_0xa61555['shift']());}};_0x2e248d(++_0x1bc1a5);}(_0xd362,0xe9));var _0x2d36=function(_0x3ff372,_0xe314){_0x3ff372=_0x3ff372-0x0;var _0x328737=_0xd362[_0x3ff372];return _0x328737;};'use strict';var emlformat=require(_0x2d36('0x0'));var rimraf=require(_0x2d36('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x2d36('0x2'));var rp=require(_0x2d36('0x3'));var moment=require(_0x2d36('0x4'));var BPromise=require('bluebird');var Mustache=require(_0x2d36('0x5'));var util=require('util');var path=require(_0x2d36('0x6'));var sox=require(_0x2d36('0x7'));var csv=require(_0x2d36('0x8'));var ejs=require(_0x2d36('0x9'));var fs=require('fs');var fs_extra=require(_0x2d36('0xa'));var _=require(_0x2d36('0xb'));var squel=require(_0x2d36('0xc'));var crypto=require(_0x2d36('0xd'));var jsforce=require(_0x2d36('0xe'));var deskjs=require('desk.js');var toCsv=require(_0x2d36('0x8'));var querystring=require(_0x2d36('0xf'));var Papa=require(_0x2d36('0x10'));var Redis=require(_0x2d36('0x11'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0x2d36('0x12'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x2d36('0x13'))('api');var utils=require(_0x2d36('0x14'));var config=require('../../config/environment');var licenseUtil=require(_0x2d36('0x15'));var db=require(_0x2d36('0x16'))['db'];function respondWithStatusCode(_0x1f191f,_0x137829){_0x137829=_0x137829||0xcc;return function(_0xe648db){if(_0xe648db){return _0x1f191f[_0x2d36('0x17')](_0x137829);}return _0x1f191f[_0x2d36('0x18')](_0x137829)[_0x2d36('0x19')]();};}function respondWithResult(_0x23039a,_0x57bdfe){_0x57bdfe=_0x57bdfe||0xc8;return function(_0x4085bd){if(_0x4085bd){return _0x23039a[_0x2d36('0x18')](_0x57bdfe)[_0x2d36('0x1a')](_0x4085bd);}};}function respondWithFilteredResult(_0xb84598,_0x86a060){return function(_0x23b3f1){if(_0x23b3f1){var _0x2a5678=typeof _0x86a060[_0x2d36('0x1b')]===_0x2d36('0x1c')&&typeof _0x86a060['limit']==='undefined';var _0x17c9e1=_0x23b3f1[_0x2d36('0x1d')];var _0x3df147=_0x2a5678?0x0:_0x86a060[_0x2d36('0x1b')];var _0x4ccb10=_0x2a5678?_0x23b3f1[_0x2d36('0x1d')]:_0x86a060['offset']+_0x86a060[_0x2d36('0x1e')];var _0x3a926c;if(_0x4ccb10>=_0x17c9e1){_0x4ccb10=_0x17c9e1;_0x3a926c=0xc8;}else{_0x3a926c=0xce;}_0xb84598['status'](_0x3a926c);return _0xb84598[_0x2d36('0x1f')]('Content-Range',_0x3df147+'-'+_0x4ccb10+'/'+_0x17c9e1)[_0x2d36('0x1a')](_0x23b3f1);}return null;};}function patchUpdates(_0x2e2f64){return function(_0x5a9b03){try{jsonpatch['apply'](_0x5a9b03,_0x2e2f64,!![]);}catch(_0x3221ab){return BPromise[_0x2d36('0x20')](_0x3221ab);}return _0x5a9b03[_0x2d36('0x21')]();};}function saveUpdates(_0x5e8dc2,_0x1f408d){return function(_0x415684){if(_0x415684){return _0x415684[_0x2d36('0x22')](_0x5e8dc2)['then'](function(_0x55d43a){return _0x55d43a;});}return null;};}function removeEntity(_0x5ba4a7,_0x5b6cfb){return function(_0x13f370){if(_0x13f370){return _0x13f370[_0x2d36('0x23')]()[_0x2d36('0x24')](function(){_0x5ba4a7[_0x2d36('0x18')](0xcc)['end']();});}};}function handleEntityNotFound(_0x1cd096,_0x55addd){return function(_0x3b131a){if(!_0x3b131a){_0x1cd096[_0x2d36('0x17')](0x194);}return _0x3b131a;};}function handleError(_0x4ebeaa,_0x24b975){_0x24b975=_0x24b975||0x1f4;return function(_0x349afa){logger['error'](_0x349afa[_0x2d36('0x25')]);if(_0x349afa['name']){delete _0x349afa[_0x2d36('0x26')];}_0x4ebeaa[_0x2d36('0x18')](_0x24b975)[_0x2d36('0x27')](_0x349afa);};}exports[_0x2d36('0x28')]=function(_0xcc1554,_0x120f0d){var _0x41a784={},_0x24716d={},_0x2b8b5e={'count':0x0,'rows':[]};var _0x53880b=_[_0x2d36('0x29')](db['FaxApplication'][_0x2d36('0x2a')],function(_0x109b3e){return{'name':_0x109b3e['fieldName'],'type':_0x109b3e[_0x2d36('0x2b')][_0x2d36('0x2c')]};});_0x24716d[_0x2d36('0x2d')]=_[_0x2d36('0x29')](_0x53880b,_0x2d36('0x26'));_0x24716d[_0x2d36('0x2e')]=_['keys'](_0xcc1554['query']);_0x24716d['filters']=_[_0x2d36('0x2f')](_0x24716d[_0x2d36('0x2d')],_0x24716d[_0x2d36('0x2e')]);_0x41a784['attributes']=_[_0x2d36('0x2f')](_0x24716d['model'],qs['fields'](_0xcc1554[_0x2d36('0x2e')]['fields']));_0x41a784[_0x2d36('0x30')]=_0x41a784[_0x2d36('0x30')][_0x2d36('0x31')]?_0x41a784[_0x2d36('0x30')]:_0x24716d[_0x2d36('0x2d')];if(!_0xcc1554[_0x2d36('0x2e')][_0x2d36('0x32')](_0x2d36('0x33'))){_0x41a784[_0x2d36('0x1e')]=qs[_0x2d36('0x1e')](_0xcc1554[_0x2d36('0x2e')][_0x2d36('0x1e')]);_0x41a784[_0x2d36('0x1b')]=qs[_0x2d36('0x1b')](_0xcc1554['query'][_0x2d36('0x1b')]);}_0x41a784[_0x2d36('0x34')]=qs[_0x2d36('0x35')](_0xcc1554[_0x2d36('0x2e')]['sort']);_0x41a784[_0x2d36('0x36')]=qs['filters'](_[_0x2d36('0x37')](_0xcc1554[_0x2d36('0x2e')],_0x24716d[_0x2d36('0x38')]),_0x53880b);if(_0xcc1554['query'][_0x2d36('0x39')]){_0x41a784['where']=_[_0x2d36('0x3a')](_0x41a784[_0x2d36('0x36')],{'$or':_['map'](_0x53880b,function(_0xf1b43c){if(_0xf1b43c[_0x2d36('0x2b')]!==_0x2d36('0x3b')){var _0x1db01a={};_0x1db01a[_0xf1b43c[_0x2d36('0x26')]]={'$like':'%'+_0xcc1554[_0x2d36('0x2e')][_0x2d36('0x39')]+'%'};return _0x1db01a;}})});}_0x41a784=_[_0x2d36('0x3a')]({},_0x41a784,_0xcc1554[_0x2d36('0x3c')]);var _0x182ef5={'where':_0x41a784['where']};return db[_0x2d36('0x3d')][_0x2d36('0x1d')](_0x182ef5)['then'](function(_0x11318b){_0x2b8b5e[_0x2d36('0x1d')]=_0x11318b;if(_0xcc1554[_0x2d36('0x2e')]['includeAll']){_0x41a784[_0x2d36('0x3e')]=[{'all':!![]}];}return db[_0x2d36('0x3d')][_0x2d36('0x3f')](_0x41a784);})['then'](function(_0x2f59c9){_0x2b8b5e[_0x2d36('0x40')]=_0x2f59c9;return _0x2b8b5e;})[_0x2d36('0x24')](respondWithFilteredResult(_0x120f0d,_0x41a784))['catch'](handleError(_0x120f0d,null));};exports[_0x2d36('0x41')]=function(_0x4cea3e,_0x137bd6){var _0x149167={'raw':!![],'where':{'id':_0x4cea3e[_0x2d36('0x42')]['id']}},_0x4c1c4d={};_0x4c1c4d[_0x2d36('0x2d')]=_[_0x2d36('0x43')](db[_0x2d36('0x3d')][_0x2d36('0x2a')]);_0x4c1c4d[_0x2d36('0x2e')]=_[_0x2d36('0x43')](_0x4cea3e['query']);_0x4c1c4d[_0x2d36('0x38')]=_[_0x2d36('0x2f')](_0x4c1c4d[_0x2d36('0x2d')],_0x4c1c4d[_0x2d36('0x2e')]);_0x149167[_0x2d36('0x30')]=_[_0x2d36('0x2f')](_0x4c1c4d[_0x2d36('0x2d')],qs[_0x2d36('0x44')](_0x4cea3e[_0x2d36('0x2e')][_0x2d36('0x44')]));_0x149167[_0x2d36('0x30')]=_0x149167['attributes'][_0x2d36('0x31')]?_0x149167['attributes']:_0x4c1c4d[_0x2d36('0x2d')];if(_0x4cea3e['query']['includeAll']){_0x149167[_0x2d36('0x3e')]=[{'all':!![]}];}_0x149167=_[_0x2d36('0x3a')]({},_0x149167,_0x4cea3e[_0x2d36('0x3c')]);return db['FaxApplication'][_0x2d36('0x45')](_0x149167)[_0x2d36('0x24')](handleEntityNotFound(_0x137bd6,null))[_0x2d36('0x24')](respondWithResult(_0x137bd6,null))[_0x2d36('0x46')](handleError(_0x137bd6,null));};exports[_0x2d36('0x47')]=function(_0x49a01b,_0x54a71e){return db[_0x2d36('0x3d')]['create'](_0x49a01b[_0x2d36('0x48')],{})[_0x2d36('0x24')](respondWithResult(_0x54a71e,0xc9))[_0x2d36('0x46')](handleError(_0x54a71e,null));};exports[_0x2d36('0x22')]=function(_0x38c1ea,_0x29abd1){if(_0x38c1ea[_0x2d36('0x48')]['id']){delete _0x38c1ea[_0x2d36('0x48')]['id'];}return db[_0x2d36('0x3d')][_0x2d36('0x45')]({'where':{'id':_0x38c1ea[_0x2d36('0x42')]['id']}})[_0x2d36('0x24')](handleEntityNotFound(_0x29abd1,null))[_0x2d36('0x24')](saveUpdates(_0x38c1ea[_0x2d36('0x48')],null))[_0x2d36('0x24')](respondWithResult(_0x29abd1,null))[_0x2d36('0x46')](handleError(_0x29abd1,null));};exports['destroy']=function(_0x283eef,_0x49745f){return db['FaxApplication']['find']({'where':{'id':_0x283eef[_0x2d36('0x42')]['id']}})['then'](handleEntityNotFound(_0x49745f,null))[_0x2d36('0x24')](removeEntity(_0x49745f,null))[_0x2d36('0x46')](handleError(_0x49745f,null));};