Built motion from commit (unavailable).|2.5.13
[motion2.git] / server / api / squareRecording / squareRecording.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 _0xa833=['recording','existsSync','Sequelize','ValidationError','filename','extname','unlink','Not\x20found','info','isNil','\x22\x20trovato\x20eseguo\x20la\x20cancellazione','unlinkSync','.cypher','File:\x20\x22','end','html-pdf','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','count','offset','limit','set','Content-Range','apply','reject','save','then','destroy','error','stack','name','send','index','map','rawAttributes','fieldName','type','model','query','filters','intersection','attributes','fields','length','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','SquareRecording','includeAll','include','rows','catch','show','keys','options','find','create','body','params','download','../../components/encryptor','uniqueid','savePath','format','decryptFile','secrets'];(function(_0x4174cd,_0x5e6961){var _0x3a78e6=function(_0x314257){while(--_0x314257){_0x4174cd['push'](_0x4174cd['shift']());}};_0x3a78e6(++_0x5e6961);}(_0xa833,0x135));var _0x3a83=function(_0x4b1fd3,_0x91d485){_0x4b1fd3=_0x4b1fd3-0x0;var _0x2c2933=_0xa833[_0x4b1fd3];return _0x2c2933;};'use strict';var pdf=require(_0x3a83('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x3a83('0x1'));var zipdir=require(_0x3a83('0x2'));var jsonpatch=require(_0x3a83('0x3'));var rp=require(_0x3a83('0x4'));var moment=require(_0x3a83('0x5'));var BPromise=require(_0x3a83('0x6'));var Mustache=require('mustache');var util=require(_0x3a83('0x7'));var path=require(_0x3a83('0x8'));var sox=require(_0x3a83('0x9'));var csv=require(_0x3a83('0xa'));var ejs=require(_0x3a83('0xb'));var fs=require('fs');var _=require(_0x3a83('0xc'));var squel=require(_0x3a83('0xd'));var crypto=require(_0x3a83('0xe'));var jsforce=require(_0x3a83('0xf'));var deskjs=require(_0x3a83('0x10'));var toCsv=require(_0x3a83('0xa'));var querystring=require(_0x3a83('0x11'));var Papa=require(_0x3a83('0x12'));var Redis=require(_0x3a83('0x13'));var authService=require(_0x3a83('0x14'));var qs=require(_0x3a83('0x15'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x3a83('0x16'));var logger=require(_0x3a83('0x17'))('api');var utils=require('../../config/utils');var config=require(_0x3a83('0x18'));var licenseUtil=require(_0x3a83('0x19'));var db=require(_0x3a83('0x1a'))['db'];function respondWithStatusCode(_0x1c6b11,_0x5c2835){_0x5c2835=_0x5c2835||0xcc;return function(_0x50a996){if(_0x50a996){return _0x1c6b11[_0x3a83('0x1b')](_0x5c2835);}return _0x1c6b11[_0x3a83('0x1c')](_0x5c2835)['end']();};}function respondWithResult(_0x4692c9,_0x16e98d){_0x16e98d=_0x16e98d||0xc8;return function(_0x975173){if(_0x975173){return _0x4692c9[_0x3a83('0x1c')](_0x16e98d)[_0x3a83('0x1d')](_0x975173);}};}function respondWithFilteredResult(_0x1c87b1,_0x57d55b){return function(_0x4a810d){if(_0x4a810d){var _0x3fb25f=_0x4a810d[_0x3a83('0x1e')],_0x3576ce=_0x57d55b['offset'],_0xd8d40f=_0x57d55b[_0x3a83('0x1f')]+_0x57d55b[_0x3a83('0x20')],_0xbdf86b;if(_0xd8d40f>=_0x3fb25f){_0xd8d40f=_0x3fb25f;_0xbdf86b=0xc8;}else{_0xbdf86b=0xce;}_0x1c87b1['status'](_0xbdf86b);return _0x1c87b1[_0x3a83('0x21')](_0x3a83('0x22'),_0x3576ce+'-'+_0xd8d40f+'/'+_0x3fb25f)[_0x3a83('0x1d')](_0x4a810d);}return null;};}function patchUpdates(_0x1612ba){return function(_0x439486){try{jsonpatch[_0x3a83('0x23')](_0x439486,_0x1612ba,!![]);}catch(_0x28d4a9){return BPromise[_0x3a83('0x24')](_0x28d4a9);}return _0x439486[_0x3a83('0x25')]();};}function saveUpdates(_0x3b6dee,_0x79b811){return function(_0x2b5514){if(_0x2b5514){return _0x2b5514['update'](_0x3b6dee)[_0x3a83('0x26')](function(_0x777996){return _0x777996;});}return null;};}function removeEntity(_0x2d9128,_0x149782){return function(_0x1930c2){if(_0x1930c2){return _0x1930c2[_0x3a83('0x27')]()['then'](function(){_0x2d9128[_0x3a83('0x1c')](0xcc)['end']();});}};}function handleEntityNotFound(_0x37cfd8,_0x24c464){return function(_0x139ea3){if(!_0x139ea3){_0x37cfd8[_0x3a83('0x1b')](0x194);}return _0x139ea3;};}function handleError(_0x2773a7,_0x83c367){_0x83c367=_0x83c367||0x1f4;return function(_0x41ebff){logger[_0x3a83('0x28')](_0x41ebff[_0x3a83('0x29')]);if(_0x41ebff[_0x3a83('0x2a')]){delete _0x41ebff[_0x3a83('0x2a')];}_0x2773a7[_0x3a83('0x1c')](_0x83c367)[_0x3a83('0x2b')](_0x41ebff);};}exports[_0x3a83('0x2c')]=function(_0x3ad997,_0x341916){var _0xe471ef={},_0xb819be={},_0x18a78e={'count':0x0,'rows':[]};var _0x188578=_[_0x3a83('0x2d')](db['SquareRecording'][_0x3a83('0x2e')],function(_0x1c62c9){return{'name':_0x1c62c9[_0x3a83('0x2f')],'type':_0x1c62c9[_0x3a83('0x30')]['key']};});_0xb819be[_0x3a83('0x31')]=_[_0x3a83('0x2d')](_0x188578,_0x3a83('0x2a'));_0xb819be[_0x3a83('0x32')]=_['keys'](_0x3ad997[_0x3a83('0x32')]);_0xb819be[_0x3a83('0x33')]=_[_0x3a83('0x34')](_0xb819be['model'],_0xb819be['query']);_0xe471ef[_0x3a83('0x35')]=_[_0x3a83('0x34')](_0xb819be[_0x3a83('0x31')],qs['fields'](_0x3ad997[_0x3a83('0x32')][_0x3a83('0x36')]));_0xe471ef[_0x3a83('0x35')]=_0xe471ef[_0x3a83('0x35')][_0x3a83('0x37')]?_0xe471ef[_0x3a83('0x35')]:_0xb819be[_0x3a83('0x31')];if(!_0x3ad997[_0x3a83('0x32')]['hasOwnProperty'](_0x3a83('0x38'))){_0xe471ef[_0x3a83('0x20')]=qs[_0x3a83('0x20')](_0x3ad997[_0x3a83('0x32')][_0x3a83('0x20')]);_0xe471ef[_0x3a83('0x1f')]=qs[_0x3a83('0x1f')](_0x3ad997[_0x3a83('0x32')]['offset']);}_0xe471ef[_0x3a83('0x39')]=qs[_0x3a83('0x3a')](_0x3ad997[_0x3a83('0x32')][_0x3a83('0x3a')]);_0xe471ef[_0x3a83('0x3b')]=qs[_0x3a83('0x33')](_[_0x3a83('0x3c')](_0x3ad997[_0x3a83('0x32')],_0xb819be['filters']),_0x188578);if(_0x3ad997['query'][_0x3a83('0x3d')]){_0xe471ef[_0x3a83('0x3b')]=_[_0x3a83('0x3e')](_0xe471ef[_0x3a83('0x3b')],{'$or':_[_0x3a83('0x2d')](_0x188578,function(_0x22a16f){if(_0x22a16f[_0x3a83('0x30')]!==_0x3a83('0x3f')){var _0x6139f={};_0x6139f[_0x22a16f[_0x3a83('0x2a')]]={'$like':'%'+_0x3ad997[_0x3a83('0x32')][_0x3a83('0x3d')]+'%'};return _0x6139f;}})});}_0xe471ef=_[_0x3a83('0x3e')]({},_0xe471ef,_0x3ad997['options']);var _0x3cc57f={'where':_0xe471ef['where']};return db[_0x3a83('0x40')][_0x3a83('0x1e')](_0x3cc57f)['then'](function(_0x5ca772){_0x18a78e[_0x3a83('0x1e')]=_0x5ca772;if(_0x3ad997[_0x3a83('0x32')][_0x3a83('0x41')]){_0xe471ef[_0x3a83('0x42')]=[{'all':!![]}];}return db[_0x3a83('0x40')]['findAll'](_0xe471ef);})[_0x3a83('0x26')](function(_0xa7f4db){_0x18a78e[_0x3a83('0x43')]=_0xa7f4db;return _0x18a78e;})[_0x3a83('0x26')](respondWithFilteredResult(_0x341916,_0xe471ef))[_0x3a83('0x44')](handleError(_0x341916,null));};exports[_0x3a83('0x45')]=function(_0x587e3e,_0xfff834){var _0x2d19cf={'raw':!![],'where':{'id':_0x587e3e['params']['id']}},_0x5020fd={};_0x5020fd[_0x3a83('0x31')]=_[_0x3a83('0x46')](db[_0x3a83('0x40')][_0x3a83('0x2e')]);_0x5020fd[_0x3a83('0x32')]=_['keys'](_0x587e3e[_0x3a83('0x32')]);_0x5020fd['filters']=_[_0x3a83('0x34')](_0x5020fd[_0x3a83('0x31')],_0x5020fd['query']);_0x2d19cf['attributes']=_[_0x3a83('0x34')](_0x5020fd['model'],qs[_0x3a83('0x36')](_0x587e3e['query'][_0x3a83('0x36')]));_0x2d19cf[_0x3a83('0x35')]=_0x2d19cf[_0x3a83('0x35')][_0x3a83('0x37')]?_0x2d19cf['attributes']:_0x5020fd['model'];if(_0x587e3e['query'][_0x3a83('0x41')]){_0x2d19cf['include']=[{'all':!![]}];}_0x2d19cf=_[_0x3a83('0x3e')]({},_0x2d19cf,_0x587e3e[_0x3a83('0x47')]);return db['SquareRecording'][_0x3a83('0x48')](_0x2d19cf)[_0x3a83('0x26')](handleEntityNotFound(_0xfff834,null))[_0x3a83('0x26')](respondWithResult(_0xfff834,null))[_0x3a83('0x44')](handleError(_0xfff834,null));};exports['create']=function(_0x406558,_0x356bc5){return db[_0x3a83('0x40')][_0x3a83('0x49')](_0x406558['body'],{})['then'](respondWithResult(_0x356bc5,0xc9))[_0x3a83('0x44')](handleError(_0x356bc5,null));};exports['update']=function(_0x41a718,_0x5c0311){if(_0x41a718[_0x3a83('0x4a')]['id']){delete _0x41a718[_0x3a83('0x4a')]['id'];}return db[_0x3a83('0x40')][_0x3a83('0x48')]({'where':{'id':_0x41a718[_0x3a83('0x4b')]['id']}})[_0x3a83('0x26')](handleEntityNotFound(_0x5c0311,null))[_0x3a83('0x26')](saveUpdates(_0x41a718['body'],null))['then'](respondWithResult(_0x5c0311,null))[_0x3a83('0x44')](handleError(_0x5c0311,null));};exports[_0x3a83('0x4c')]=function(_0x5b45ca,_0x259d52,_0x78381){var _0x3926fe=require(_0x3a83('0x4d'));var _0x15f090=![];var _0x570ddd={};if(_0x5b45ca[_0x3a83('0x32')]['type']&&_0x5b45ca['query'][_0x3a83('0x30')]===_0x3a83('0x4e')){_0x570ddd[_0x3a83('0x4e')]=_0x5b45ca[_0x3a83('0x4b')]['id'];}else{_0x570ddd['id']=_0x5b45ca['params']['id'];}return db[_0x3a83('0x40')][_0x3a83('0x48')]({'where':_0x570ddd,'attributes':['id',_0x3a83('0x4f'),'filename'],'raw':!![]})[_0x3a83('0x26')](handleEntityNotFound(_0x259d52,null))[_0x3a83('0x26')](function(_0x17361a){if(_0x17361a){var _0x543f87=_0x17361a[_0x3a83('0x4f')];var _0x537883=util[_0x3a83('0x50')]('%s.cypher',_0x543f87);if(fs['existsSync'](_0x537883)){_0x15f090=!![];return _0x3926fe[_0x3a83('0x51')](_0x537883,_0x543f87,config[_0x3a83('0x52')][_0x3a83('0x53')])['then'](function(){return _0x17361a;});}return _0x17361a;}})[_0x3a83('0x26')](function(_0x3d4927){if(_0x3d4927){var _0x4b0e00=_0x3d4927[_0x3a83('0x4f')];if(!fs[_0x3a83('0x54')](_0x4b0e00)){throw new db[(_0x3a83('0x55'))][(_0x3a83('0x56'))]('SquareRecording\x20not\x20found');}if(_0x3d4927['filename']){return _0x259d52[_0x3a83('0x4c')](_0x4b0e00,_0x3d4927[_0x3a83('0x57')]+path[_0x3a83('0x58')](_0x4b0e00),function(){if(_0x15f090){fs[_0x3a83('0x59')](_0x4b0e00);}});}else{return _0x259d52[_0x3a83('0x4c')](_0x4b0e00,function(_0x1a44f4){if(_0x15f090){fs[_0x3a83('0x59')](_0x4b0e00);}});}}})['catch'](function(_0x394020){if(_0x394020['message']==='SquareRecording\x20not\x20found'){_0x259d52['status'](0x194)[_0x3a83('0x2b')](_0x3a83('0x5a'));}else{return handleError(_0x259d52,null);}});};exports[_0x3a83('0x27')]=function(_0x5a5c02,_0xc51d55){return db['SquareRecording']['find']({'where':{'id':_0x5a5c02['params']['id']}})[_0x3a83('0x26')](function(_0x58be02){if(!_0x58be02)throw new ReferenceError('Entity\x20not\x20found');return _0x58be02;})[_0x3a83('0x26')](function(_0x361ddc){var _0x3bb873=_0x361ddc[_0x3a83('0x4f')];logger[_0x3a83('0x5b')]('cancellazione\x20fisica\x20documento\x20%s',_0x3bb873);if(!_[_0x3a83('0x5c')](_0x361ddc['savePath'])&&fs[_0x3a83('0x54')](_0x3bb873)){logger[_0x3a83('0x5b')]('File:\x20\x22'+_0x3bb873+_0x3a83('0x5d'));fs[_0x3a83('0x5e')](_0x3bb873);}_0x3bb873=_0x3bb873+_0x3a83('0x5f');if(!_[_0x3a83('0x5c')](_0x361ddc[_0x3a83('0x4f')])&&fs[_0x3a83('0x54')](_0x3bb873)){logger['info'](_0x3a83('0x60')+_0x3bb873+'\x22\x20trovato\x20eseguo\x20la\x20cancellazione');fs[_0x3a83('0x5e')](_0x3bb873);}return _0x361ddc;})[_0x3a83('0x26')](function(_0x401657){if(!_0x401657)throw new InternalError();return _0x401657[_0x3a83('0x27')]();})['then'](function(){_0xc51d55[_0x3a83('0x1c')](0xcc)[_0x3a83('0x61')]();})[_0x3a83('0x44')](handleError(_0xc51d55,null));};