Built motion from commit (unavailable).|2.5.3
[motion2.git] / server / api / pause / pause.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 _0x3e4a=['mustache','sox','to-csv','ejs','lodash','squel','crypto','jsforce','papaparse','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','sendStatus','end','status','json','count','offset','limit','set','apply','reject','save','update','then','destroy','get','Pauses','UserProfileResource','stack','name','index','rawAttributes','fieldName','key','model','keys','intersection','query','attributes','fields','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','VIRTUAL','merge','options','Pause','includeAll','include','rows','params','length','catch','create','Unable\x20to\x20retrieve\x20the\x20current\x20user','user','UserProfileSection','find','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird'];(function(_0x5c59f0,_0x222e3d){var _0x1c87e8=function(_0x5ecba3){while(--_0x5ecba3){_0x5c59f0['push'](_0x5c59f0['shift']());}};_0x1c87e8(++_0x222e3d);}(_0x3e4a,0xe0));var _0xa3e4=function(_0x52a6bc,_0x2ee065){_0x52a6bc=_0x52a6bc-0x0;var _0x4a9d71=_0x3e4a[_0x52a6bc];return _0x4a9d71;};'use strict';var pdf=require(_0xa3e4('0x0'));var emlformat=require(_0xa3e4('0x1'));var rimraf=require(_0xa3e4('0x2'));var zipdir=require(_0xa3e4('0x3'));var jsonpatch=require(_0xa3e4('0x4'));var rp=require('request-promise');var moment=require(_0xa3e4('0x5'));var BPromise=require(_0xa3e4('0x6'));var Mustache=require(_0xa3e4('0x7'));var util=require('util');var path=require('path');var sox=require(_0xa3e4('0x8'));var csv=require(_0xa3e4('0x9'));var ejs=require(_0xa3e4('0xa'));var fs=require('fs');var _=require(_0xa3e4('0xb'));var squel=require(_0xa3e4('0xc'));var crypto=require(_0xa3e4('0xd'));var jsforce=require(_0xa3e4('0xe'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0xa3e4('0xf'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0xa3e4('0x10'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xa3e4('0x11'));var logger=require(_0xa3e4('0x12'))(_0xa3e4('0x13'));var utils=require(_0xa3e4('0x14'));var config=require(_0xa3e4('0x15'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x446ae9,_0x2fa3a2){_0x2fa3a2=_0x2fa3a2||0xcc;return function(_0x3e4cd7){if(_0x3e4cd7){return _0x446ae9[_0xa3e4('0x16')](_0x2fa3a2);}return _0x446ae9['status'](_0x2fa3a2)[_0xa3e4('0x17')]();};}function respondWithResult(_0xfce646,_0x19e9b6){_0x19e9b6=_0x19e9b6||0xc8;return function(_0x4e1d1c){if(_0x4e1d1c){return _0xfce646[_0xa3e4('0x18')](_0x19e9b6)[_0xa3e4('0x19')](_0x4e1d1c);}};}function respondWithFilteredResult(_0xebe8c8,_0x3149e2){return function(_0x3f7c1b){if(_0x3f7c1b){var _0x2492fc=_0x3f7c1b[_0xa3e4('0x1a')],_0x1a8ac0=_0x3149e2['offset'],_0x43ddad=_0x3149e2[_0xa3e4('0x1b')]+_0x3149e2[_0xa3e4('0x1c')],_0x4598fd;if(_0x43ddad>=_0x2492fc){_0x43ddad=_0x2492fc;_0x4598fd=0xc8;}else{_0x4598fd=0xce;}_0xebe8c8['status'](_0x4598fd);return _0xebe8c8[_0xa3e4('0x1d')]('Content-Range',_0x1a8ac0+'-'+_0x43ddad+'/'+_0x2492fc)[_0xa3e4('0x19')](_0x3f7c1b);}return null;};}function patchUpdates(_0x3901f4){return function(_0x3fcd36){try{jsonpatch[_0xa3e4('0x1e')](_0x3fcd36,_0x3901f4,!![]);}catch(_0x197078){return BPromise[_0xa3e4('0x1f')](_0x197078);}return _0x3fcd36[_0xa3e4('0x20')]();};}function saveUpdates(_0x53ffd9,_0x58e78a){return function(_0x12b234){if(_0x12b234){return _0x12b234[_0xa3e4('0x21')](_0x53ffd9)[_0xa3e4('0x22')](function(_0x118475){return _0x118475;});}return null;};}function removeEntity(_0x2b86ec,_0x313999){return function(_0x55d17e){if(_0x55d17e){return _0x55d17e[_0xa3e4('0x23')]()[_0xa3e4('0x22')](function(){var _0x166acf=_0x55d17e[_0xa3e4('0x24')]({'plain':!![]});var _0x42d39b=_0xa3e4('0x25');return db[_0xa3e4('0x26')][_0xa3e4('0x23')]({'where':{'type':_0x42d39b,'resourceId':_0x166acf['id']}})[_0xa3e4('0x22')](function(){return _0x55d17e;});})[_0xa3e4('0x22')](function(){_0x2b86ec[_0xa3e4('0x18')](0xcc)[_0xa3e4('0x17')]();});}};}function handleEntityNotFound(_0x3b527a,_0x1a942a){return function(_0x55d953){if(!_0x55d953){_0x3b527a[_0xa3e4('0x16')](0x194);}return _0x55d953;};}function handleError(_0x1b6e2a,_0x379065){_0x379065=_0x379065||0x1f4;return function(_0x3f4177){logger['error'](_0x3f4177[_0xa3e4('0x27')]);if(_0x3f4177[_0xa3e4('0x28')]){delete _0x3f4177[_0xa3e4('0x28')];}_0x1b6e2a['status'](_0x379065)['send'](_0x3f4177);};}exports[_0xa3e4('0x29')]=function(_0x272632,_0x119d1d){var _0x518b77={},_0x479ee0={},_0x504400={'count':0x0,'rows':[]};var _0x582ce=_['map'](db['Pause'][_0xa3e4('0x2a')],function(_0x4b5a9e){return{'name':_0x4b5a9e[_0xa3e4('0x2b')],'type':_0x4b5a9e['type'][_0xa3e4('0x2c')]};});_0x479ee0[_0xa3e4('0x2d')]=_['map'](_0x582ce,_0xa3e4('0x28'));_0x479ee0['query']=_[_0xa3e4('0x2e')](_0x272632['query']);_0x479ee0['filters']=_[_0xa3e4('0x2f')](_0x479ee0[_0xa3e4('0x2d')],_0x479ee0[_0xa3e4('0x30')]);_0x518b77[_0xa3e4('0x31')]=_[_0xa3e4('0x2f')](_0x479ee0[_0xa3e4('0x2d')],qs[_0xa3e4('0x32')](_0x272632[_0xa3e4('0x30')]['fields']));_0x518b77[_0xa3e4('0x31')]=_0x518b77[_0xa3e4('0x31')]['length']?_0x518b77[_0xa3e4('0x31')]:_0x479ee0['model'];if(!_0x272632['query'][_0xa3e4('0x33')](_0xa3e4('0x34'))){_0x518b77['limit']=qs[_0xa3e4('0x1c')](_0x272632['query'][_0xa3e4('0x1c')]);_0x518b77[_0xa3e4('0x1b')]=qs[_0xa3e4('0x1b')](_0x272632[_0xa3e4('0x30')][_0xa3e4('0x1b')]);}_0x518b77[_0xa3e4('0x35')]=qs['sort'](_0x272632[_0xa3e4('0x30')][_0xa3e4('0x36')]);_0x518b77[_0xa3e4('0x37')]=qs[_0xa3e4('0x38')](_[_0xa3e4('0x39')](_0x272632[_0xa3e4('0x30')],_0x479ee0['filters']),_0x582ce);if(_0x272632[_0xa3e4('0x30')][_0xa3e4('0x3a')]){_0x518b77[_0xa3e4('0x37')]=_['merge'](_0x518b77[_0xa3e4('0x37')],{'$or':_['map'](_0x582ce,function(_0x425be6){if(_0x425be6['type']!==_0xa3e4('0x3b')){var _0x2a2889={};_0x2a2889[_0x425be6[_0xa3e4('0x28')]]={'$like':'%'+_0x272632[_0xa3e4('0x30')][_0xa3e4('0x3a')]+'%'};return _0x2a2889;}})});}_0x518b77=_[_0xa3e4('0x3c')]({},_0x518b77,_0x272632[_0xa3e4('0x3d')]);var _0xc85b42={'where':_0x518b77['where']};return db[_0xa3e4('0x3e')][_0xa3e4('0x1a')](_0xc85b42)[_0xa3e4('0x22')](function(_0x43dba7){_0x504400[_0xa3e4('0x1a')]=_0x43dba7;if(_0x272632[_0xa3e4('0x30')][_0xa3e4('0x3f')]){_0x518b77[_0xa3e4('0x40')]=[{'all':!![]}];}return db[_0xa3e4('0x3e')]['findAll'](_0x518b77);})['then'](function(_0x348ef6){_0x504400[_0xa3e4('0x41')]=_0x348ef6;return _0x504400;})['then'](respondWithFilteredResult(_0x119d1d,_0x518b77))['catch'](handleError(_0x119d1d,null));};exports['show']=function(_0x51b06c,_0x2f2cd3){var _0x58fd38={'raw':!![],'where':{'id':_0x51b06c[_0xa3e4('0x42')]['id']}},_0x55b866={};_0x55b866[_0xa3e4('0x2d')]=_[_0xa3e4('0x2e')](db['Pause'][_0xa3e4('0x2a')]);_0x55b866[_0xa3e4('0x30')]=_[_0xa3e4('0x2e')](_0x51b06c[_0xa3e4('0x30')]);_0x55b866[_0xa3e4('0x38')]=_[_0xa3e4('0x2f')](_0x55b866['model'],_0x55b866['query']);_0x58fd38[_0xa3e4('0x31')]=_[_0xa3e4('0x2f')](_0x55b866[_0xa3e4('0x2d')],qs[_0xa3e4('0x32')](_0x51b06c['query'][_0xa3e4('0x32')]));_0x58fd38['attributes']=_0x58fd38[_0xa3e4('0x31')][_0xa3e4('0x43')]?_0x58fd38['attributes']:_0x55b866[_0xa3e4('0x2d')];if(_0x51b06c[_0xa3e4('0x30')][_0xa3e4('0x3f')]){_0x58fd38['include']=[{'all':!![]}];}_0x58fd38=_[_0xa3e4('0x3c')]({},_0x58fd38,_0x51b06c[_0xa3e4('0x3d')]);return db[_0xa3e4('0x3e')]['find'](_0x58fd38)[_0xa3e4('0x22')](handleEntityNotFound(_0x2f2cd3,null))[_0xa3e4('0x22')](respondWithResult(_0x2f2cd3,null))[_0xa3e4('0x44')](handleError(_0x2f2cd3,null));};exports[_0xa3e4('0x45')]=function(_0xbba672,_0x5d38f9){return db[_0xa3e4('0x3e')][_0xa3e4('0x45')](_0xbba672['body'],{})[_0xa3e4('0x22')](function(_0x19d525){var _0x3c81c1=_0xbba672['user'][_0xa3e4('0x24')]({'plain':!![]});if(!_0x3c81c1)throw new Error(_0xa3e4('0x46'));if(_0x3c81c1['role']===_0xa3e4('0x47')){var _0x69f520=_0x19d525[_0xa3e4('0x24')]({'plain':!![]});var _0x567767=_0xa3e4('0x25');return db[_0xa3e4('0x48')][_0xa3e4('0x49')]({'where':{'name':_0x567767,'userProfileId':_0x3c81c1['userProfileId']},'raw':!![]})['then'](function(_0x27e520){if(_0x27e520&&_0x27e520[_0xa3e4('0x4a')]===0x0){return db[_0xa3e4('0x26')][_0xa3e4('0x45')]({'name':_0x69f520[_0xa3e4('0x28')],'resourceId':_0x69f520['id'],'type':_0x27e520[_0xa3e4('0x28')],'sectionId':_0x27e520['id']},{})[_0xa3e4('0x22')](function(){return _0x19d525;});}else{return _0x19d525;}})[_0xa3e4('0x44')](function(_0x543cee){logger['error'](_0xa3e4('0x4b'),_0x543cee);throw _0x543cee;});}return _0x19d525;})[_0xa3e4('0x22')](respondWithResult(_0x5d38f9,0xc9))['catch'](handleError(_0x5d38f9,null));};exports[_0xa3e4('0x21')]=function(_0x4f426d,_0x1a6bfb){if(_0x4f426d['body']['id']){delete _0x4f426d[_0xa3e4('0x4c')]['id'];}return db['Pause'][_0xa3e4('0x49')]({'where':{'id':_0x4f426d['params']['id']}})[_0xa3e4('0x22')](handleEntityNotFound(_0x1a6bfb,null))[_0xa3e4('0x22')](saveUpdates(_0x4f426d[_0xa3e4('0x4c')],null))[_0xa3e4('0x22')](respondWithResult(_0x1a6bfb,null))['catch'](handleError(_0x1a6bfb,null));};exports[_0xa3e4('0x23')]=function(_0x2eecd7,_0x2bd985){return db[_0xa3e4('0x3e')][_0xa3e4('0x49')]({'where':{'id':_0x2eecd7[_0xa3e4('0x42')]['id']}})['then'](handleEntityNotFound(_0x2bd985,null))[_0xa3e4('0x22')](removeEntity(_0x2bd985,null))['catch'](handleError(_0x2bd985,null));};