Built motion from commit 88aa8522.|2.5.37
[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 _0xfaba=['then','destroy','get','Pauses','UserProfileResource','error','stack','name','index','map','Pause','rawAttributes','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','order','sort','where','filter','merge','VIRTUAL','includeAll','include','findAll','catch','params','options','find','create','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','update','body','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','fs-extra','lodash','squel','jsforce','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','offset','undefined','count','limit','set','json','apply','save'];(function(_0x179ce4,_0x3e1218){var _0x486146=function(_0x47ef6e){while(--_0x47ef6e){_0x179ce4['push'](_0x179ce4['shift']());}};_0x486146(++_0x3e1218);}(_0xfaba,0xd4));var _0xafab=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0xfaba[_0x3dd15e];return _0x231fd0;};'use strict';var emlformat=require(_0xafab('0x0'));var rimraf=require(_0xafab('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xafab('0x2'));var rp=require(_0xafab('0x3'));var moment=require(_0xafab('0x4'));var BPromise=require(_0xafab('0x5'));var Mustache=require(_0xafab('0x6'));var util=require(_0xafab('0x7'));var path=require(_0xafab('0x8'));var sox=require(_0xafab('0x9'));var csv=require(_0xafab('0xa'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xafab('0xb'));var _=require(_0xafab('0xc'));var squel=require(_0xafab('0xd'));var crypto=require('crypto');var jsforce=require(_0xafab('0xe'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0xafab('0xf'));var Redis=require(_0xafab('0x10'));var authService=require(_0xafab('0x11'));var qs=require('../../components/parsers/qs');var as=require(_0xafab('0x12'));var hardwareService=require(_0xafab('0x13'));var logger=require(_0xafab('0x14'))(_0xafab('0x15'));var utils=require(_0xafab('0x16'));var config=require(_0xafab('0x17'));var licenseUtil=require(_0xafab('0x18'));var db=require(_0xafab('0x19'))['db'];function respondWithStatusCode(_0x3c2fcd,_0x363ee3){_0x363ee3=_0x363ee3||0xcc;return function(_0x19fde9){if(_0x19fde9){return _0x3c2fcd[_0xafab('0x1a')](_0x363ee3);}return _0x3c2fcd[_0xafab('0x1b')](_0x363ee3)[_0xafab('0x1c')]();};}function respondWithResult(_0x35cb47,_0x2b038a){_0x2b038a=_0x2b038a||0xc8;return function(_0x30374a){if(_0x30374a){return _0x35cb47['status'](_0x2b038a)['json'](_0x30374a);}};}function respondWithFilteredResult(_0x4f5e8d,_0x2b7827){return function(_0x29c135){if(_0x29c135){var _0x2cc82f=typeof _0x2b7827[_0xafab('0x1d')]==='undefined'&&typeof _0x2b7827['limit']===_0xafab('0x1e');var _0x17644d=_0x29c135[_0xafab('0x1f')];var _0x4a21f4=_0x2cc82f?0x0:_0x2b7827[_0xafab('0x1d')];var _0x4dd013=_0x2cc82f?_0x29c135['count']:_0x2b7827['offset']+_0x2b7827[_0xafab('0x20')];var _0x316d70;if(_0x4dd013>=_0x17644d){_0x4dd013=_0x17644d;_0x316d70=0xc8;}else{_0x316d70=0xce;}_0x4f5e8d[_0xafab('0x1b')](_0x316d70);return _0x4f5e8d[_0xafab('0x21')]('Content-Range',_0x4a21f4+'-'+_0x4dd013+'/'+_0x17644d)[_0xafab('0x22')](_0x29c135);}return null;};}function patchUpdates(_0x3f575d){return function(_0x1e2e2a){try{jsonpatch[_0xafab('0x23')](_0x1e2e2a,_0x3f575d,!![]);}catch(_0x4ff583){return BPromise['reject'](_0x4ff583);}return _0x1e2e2a[_0xafab('0x24')]();};}function saveUpdates(_0x367a26,_0x2d6648){return function(_0x4f10bc){if(_0x4f10bc){return _0x4f10bc['update'](_0x367a26)[_0xafab('0x25')](function(_0x1678c2){return _0x1678c2;});}return null;};}function removeEntity(_0x1066b0,_0x53c1b4){return function(_0x40e382){if(_0x40e382){return _0x40e382[_0xafab('0x26')]()['then'](function(){var _0x563200=_0x40e382[_0xafab('0x27')]({'plain':!![]});var _0x5a2b5f=_0xafab('0x28');return db[_0xafab('0x29')][_0xafab('0x26')]({'where':{'type':_0x5a2b5f,'resourceId':_0x563200['id']}})[_0xafab('0x25')](function(){return _0x40e382;});})[_0xafab('0x25')](function(){_0x1066b0[_0xafab('0x1b')](0xcc)['end']();});}};}function handleEntityNotFound(_0x500e84,_0x50b3c5){return function(_0x38aa0d){if(!_0x38aa0d){_0x500e84['sendStatus'](0x194);}return _0x38aa0d;};}function handleError(_0x5ab6fd,_0x4fd3e3){_0x4fd3e3=_0x4fd3e3||0x1f4;return function(_0x3a44bb){logger[_0xafab('0x2a')](_0x3a44bb[_0xafab('0x2b')]);if(_0x3a44bb['name']){delete _0x3a44bb[_0xafab('0x2c')];}_0x5ab6fd[_0xafab('0x1b')](_0x4fd3e3)['send'](_0x3a44bb);};}exports[_0xafab('0x2d')]=function(_0x493324,_0x445e21){var _0x4e0618={},_0x24cb4e={},_0x340949={'count':0x0,'rows':[]};var _0x1b7315=_[_0xafab('0x2e')](db[_0xafab('0x2f')][_0xafab('0x30')],function(_0x27b44a){return{'name':_0x27b44a['fieldName'],'type':_0x27b44a[_0xafab('0x31')][_0xafab('0x32')]};});_0x24cb4e[_0xafab('0x33')]=_[_0xafab('0x2e')](_0x1b7315,'name');_0x24cb4e[_0xafab('0x34')]=_[_0xafab('0x35')](_0x493324[_0xafab('0x34')]);_0x24cb4e[_0xafab('0x36')]=_[_0xafab('0x37')](_0x24cb4e[_0xafab('0x33')],_0x24cb4e[_0xafab('0x34')]);_0x4e0618[_0xafab('0x38')]=_['intersection'](_0x24cb4e[_0xafab('0x33')],qs[_0xafab('0x39')](_0x493324[_0xafab('0x34')]['fields']));_0x4e0618[_0xafab('0x38')]=_0x4e0618[_0xafab('0x38')][_0xafab('0x3a')]?_0x4e0618[_0xafab('0x38')]:_0x24cb4e[_0xafab('0x33')];if(!_0x493324[_0xafab('0x34')][_0xafab('0x3b')]('nolimit')){_0x4e0618['limit']=qs[_0xafab('0x20')](_0x493324[_0xafab('0x34')][_0xafab('0x20')]);_0x4e0618[_0xafab('0x1d')]=qs[_0xafab('0x1d')](_0x493324[_0xafab('0x34')][_0xafab('0x1d')]);}_0x4e0618[_0xafab('0x3c')]=qs[_0xafab('0x3d')](_0x493324[_0xafab('0x34')]['sort']);_0x4e0618[_0xafab('0x3e')]=qs[_0xafab('0x36')](_['pick'](_0x493324[_0xafab('0x34')],_0x24cb4e['filters']),_0x1b7315);if(_0x493324[_0xafab('0x34')][_0xafab('0x3f')]){_0x4e0618[_0xafab('0x3e')]=_[_0xafab('0x40')](_0x4e0618[_0xafab('0x3e')],{'$or':_[_0xafab('0x2e')](_0x1b7315,function(_0x183d12){if(_0x183d12[_0xafab('0x31')]!==_0xafab('0x41')){var _0xabf1c0={};_0xabf1c0[_0x183d12['name']]={'$like':'%'+_0x493324[_0xafab('0x34')][_0xafab('0x3f')]+'%'};return _0xabf1c0;}})});}_0x4e0618=_[_0xafab('0x40')]({},_0x4e0618,_0x493324['options']);var _0x56b6ee={'where':_0x4e0618[_0xafab('0x3e')]};return db[_0xafab('0x2f')][_0xafab('0x1f')](_0x56b6ee)[_0xafab('0x25')](function(_0x2493fa){_0x340949['count']=_0x2493fa;if(_0x493324[_0xafab('0x34')][_0xafab('0x42')]){_0x4e0618[_0xafab('0x43')]=[{'all':!![]}];}return db[_0xafab('0x2f')][_0xafab('0x44')](_0x4e0618);})[_0xafab('0x25')](function(_0x4a958a){_0x340949['rows']=_0x4a958a;return _0x340949;})['then'](respondWithFilteredResult(_0x445e21,_0x4e0618))[_0xafab('0x45')](handleError(_0x445e21,null));};exports['show']=function(_0x267164,_0xa39633){var _0x3e5713={'raw':!![],'where':{'id':_0x267164[_0xafab('0x46')]['id']}},_0x5053d0={};_0x5053d0['model']=_[_0xafab('0x35')](db[_0xafab('0x2f')][_0xafab('0x30')]);_0x5053d0[_0xafab('0x34')]=_[_0xafab('0x35')](_0x267164[_0xafab('0x34')]);_0x5053d0[_0xafab('0x36')]=_[_0xafab('0x37')](_0x5053d0[_0xafab('0x33')],_0x5053d0['query']);_0x3e5713[_0xafab('0x38')]=_[_0xafab('0x37')](_0x5053d0[_0xafab('0x33')],qs['fields'](_0x267164[_0xafab('0x34')][_0xafab('0x39')]));_0x3e5713['attributes']=_0x3e5713['attributes'][_0xafab('0x3a')]?_0x3e5713[_0xafab('0x38')]:_0x5053d0[_0xafab('0x33')];if(_0x267164[_0xafab('0x34')][_0xafab('0x42')]){_0x3e5713[_0xafab('0x43')]=[{'all':!![]}];}_0x3e5713=_[_0xafab('0x40')]({},_0x3e5713,_0x267164[_0xafab('0x47')]);return db[_0xafab('0x2f')][_0xafab('0x48')](_0x3e5713)[_0xafab('0x25')](handleEntityNotFound(_0xa39633,null))['then'](respondWithResult(_0xa39633,null))['catch'](handleError(_0xa39633,null));};exports[_0xafab('0x49')]=function(_0x494b41,_0x25487c){return db['Pause'][_0xafab('0x49')](_0x494b41['body'],{})[_0xafab('0x25')](function(_0x2f5d60){var _0x415f6d=_0x494b41[_0xafab('0x4a')][_0xafab('0x27')]({'plain':!![]});if(!_0x415f6d)throw new Error(_0xafab('0x4b'));if(_0x415f6d[_0xafab('0x4c')]===_0xafab('0x4a')){var _0x188b54=_0x2f5d60[_0xafab('0x27')]({'plain':!![]});var _0x26b880=_0xafab('0x28');return db[_0xafab('0x4d')][_0xafab('0x48')]({'where':{'name':_0x26b880,'userProfileId':_0x415f6d[_0xafab('0x4e')]},'raw':!![]})['then'](function(_0x3bfbf1){if(_0x3bfbf1&&_0x3bfbf1[_0xafab('0x4f')]===0x0){return db[_0xafab('0x29')][_0xafab('0x49')]({'name':_0x188b54[_0xafab('0x2c')],'resourceId':_0x188b54['id'],'type':_0x3bfbf1[_0xafab('0x2c')],'sectionId':_0x3bfbf1['id']},{})[_0xafab('0x25')](function(){return _0x2f5d60;});}else{return _0x2f5d60;}})['catch'](function(_0x187948){logger[_0xafab('0x2a')](_0xafab('0x50'),_0x187948);throw _0x187948;});}return _0x2f5d60;})[_0xafab('0x25')](respondWithResult(_0x25487c,0xc9))[_0xafab('0x45')](handleError(_0x25487c,null));};exports[_0xafab('0x51')]=function(_0x245eea,_0x1f8041){if(_0x245eea['body']['id']){delete _0x245eea[_0xafab('0x52')]['id'];}return db['Pause'][_0xafab('0x48')]({'where':{'id':_0x245eea[_0xafab('0x46')]['id']}})[_0xafab('0x25')](handleEntityNotFound(_0x1f8041,null))[_0xafab('0x25')](saveUpdates(_0x245eea[_0xafab('0x52')],null))[_0xafab('0x25')](respondWithResult(_0x1f8041,null))[_0xafab('0x45')](handleError(_0x1f8041,null));};exports[_0xafab('0x26')]=function(_0x127a98,_0x2d7ab3){return db['Pause'][_0xafab('0x48')]({'where':{'id':_0x127a98[_0xafab('0x46')]['id']}})[_0xafab('0x25')](handleEntityNotFound(_0x2d7ab3,null))[_0xafab('0x25')](removeEntity(_0x2d7ab3,null))[_0xafab('0x45')](handleError(_0x2d7ab3,null));};