Built motion from commit 9efc8423.|2.6.31
[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 _0xe99b=['reject','save','update','then','destroy','Pauses','UserProfileResource','sendStatus','error','stack','name','index','map','Pause','rawAttributes','fieldName','type','model','query','keys','attributes','intersection','fields','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','VIRTUAL','merge','includeAll','include','findAll','rows','catch','show','params','length','options','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','get','UserProfileSection','autoAssociation','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','to-csv','ejs','fs-extra','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','end','status','json','offset','undefined','count','limit','set','Content-Range','apply'];(function(_0x8c43de,_0x90ff31){var _0xa6591b=function(_0x469716){while(--_0x469716){_0x8c43de['push'](_0x8c43de['shift']());}};_0xa6591b(++_0x90ff31);}(_0xe99b,0x13b));var _0xbe99=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0xe99b[_0x3dd15e];return _0x231fd0;};'use strict';var emlformat=require(_0xbe99('0x0'));var rimraf=require(_0xbe99('0x1'));var zipdir=require(_0xbe99('0x2'));var jsonpatch=require(_0xbe99('0x3'));var rp=require(_0xbe99('0x4'));var moment=require(_0xbe99('0x5'));var BPromise=require(_0xbe99('0x6'));var Mustache=require(_0xbe99('0x7'));var util=require('util');var path=require('path');var sox=require('sox');var csv=require(_0xbe99('0x8'));var ejs=require(_0xbe99('0x9'));var fs=require('fs');var fs_extra=require(_0xbe99('0xa'));var _=require('lodash');var squel=require(_0xbe99('0xb'));var crypto=require(_0xbe99('0xc'));var jsforce=require(_0xbe99('0xd'));var deskjs=require(_0xbe99('0xe'));var toCsv=require(_0xbe99('0x8'));var querystring=require(_0xbe99('0xf'));var Papa=require(_0xbe99('0x10'));var Redis=require(_0xbe99('0x11'));var authService=require(_0xbe99('0x12'));var qs=require(_0xbe99('0x13'));var as=require(_0xbe99('0x14'));var hardwareService=require(_0xbe99('0x15'));var logger=require(_0xbe99('0x16'))(_0xbe99('0x17'));var utils=require(_0xbe99('0x18'));var config=require(_0xbe99('0x19'));var licenseUtil=require('../../config/license/util');var db=require(_0xbe99('0x1a'))['db'];function respondWithStatusCode(_0x49f54f,_0x4c8f0b){_0x4c8f0b=_0x4c8f0b||0xcc;return function(_0x33359a){if(_0x33359a){return _0x49f54f['sendStatus'](_0x4c8f0b);}return _0x49f54f['status'](_0x4c8f0b)[_0xbe99('0x1b')]();};}function respondWithResult(_0x5ac649,_0x57ba8e){_0x57ba8e=_0x57ba8e||0xc8;return function(_0x55a8d5){if(_0x55a8d5){return _0x5ac649[_0xbe99('0x1c')](_0x57ba8e)[_0xbe99('0x1d')](_0x55a8d5);}};}function respondWithFilteredResult(_0x2a809d,_0xc44139){return function(_0x3e37e4){if(_0x3e37e4){var _0x185550=typeof _0xc44139[_0xbe99('0x1e')]===_0xbe99('0x1f')&&typeof _0xc44139['limit']===_0xbe99('0x1f');var _0x4446d0=_0x3e37e4['count'];var _0x47c0e5=_0x185550?0x0:_0xc44139[_0xbe99('0x1e')];var _0x3c5184=_0x185550?_0x3e37e4[_0xbe99('0x20')]:_0xc44139[_0xbe99('0x1e')]+_0xc44139[_0xbe99('0x21')];var _0x181c14;if(_0x3c5184>=_0x4446d0){_0x3c5184=_0x4446d0;_0x181c14=0xc8;}else{_0x181c14=0xce;}_0x2a809d[_0xbe99('0x1c')](_0x181c14);return _0x2a809d[_0xbe99('0x22')](_0xbe99('0x23'),_0x47c0e5+'-'+_0x3c5184+'/'+_0x4446d0)[_0xbe99('0x1d')](_0x3e37e4);}return null;};}function patchUpdates(_0xd7b32){return function(_0x20e555){try{jsonpatch[_0xbe99('0x24')](_0x20e555,_0xd7b32,!![]);}catch(_0x727f85){return BPromise[_0xbe99('0x25')](_0x727f85);}return _0x20e555[_0xbe99('0x26')]();};}function saveUpdates(_0x2f03e3,_0x3bbd70){return function(_0x1bcdda){if(_0x1bcdda){return _0x1bcdda[_0xbe99('0x27')](_0x2f03e3)[_0xbe99('0x28')](function(_0x2f8ff6){return _0x2f8ff6;});}return null;};}function removeEntity(_0x1ef385,_0x3818a9){return function(_0x140034){if(_0x140034){return _0x140034[_0xbe99('0x29')]()[_0xbe99('0x28')](function(){var _0x43a2f8=_0x140034['get']({'plain':!![]});var _0x476228=_0xbe99('0x2a');return db[_0xbe99('0x2b')][_0xbe99('0x29')]({'where':{'type':_0x476228,'resourceId':_0x43a2f8['id']}})[_0xbe99('0x28')](function(){return _0x140034;});})[_0xbe99('0x28')](function(){_0x1ef385['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x5a0cfb,_0x188d0e){return function(_0x403453){if(!_0x403453){_0x5a0cfb[_0xbe99('0x2c')](0x194);}return _0x403453;};}function handleError(_0x3537c8,_0x5c2a76){_0x5c2a76=_0x5c2a76||0x1f4;return function(_0x5a667d){logger[_0xbe99('0x2d')](_0x5a667d[_0xbe99('0x2e')]);if(_0x5a667d[_0xbe99('0x2f')]){delete _0x5a667d['name'];}_0x3537c8['status'](_0x5c2a76)['send'](_0x5a667d);};}exports[_0xbe99('0x30')]=function(_0x8234b2,_0x12bb3c){var _0x4d253a={},_0x328f19={},_0xc6928a={'count':0x0,'rows':[]};var _0x5e13cd=_[_0xbe99('0x31')](db[_0xbe99('0x32')][_0xbe99('0x33')],function(_0x180a48){return{'name':_0x180a48[_0xbe99('0x34')],'type':_0x180a48[_0xbe99('0x35')]['key']};});_0x328f19[_0xbe99('0x36')]=_[_0xbe99('0x31')](_0x5e13cd,'name');_0x328f19[_0xbe99('0x37')]=_[_0xbe99('0x38')](_0x8234b2['query']);_0x328f19['filters']=_['intersection'](_0x328f19[_0xbe99('0x36')],_0x328f19[_0xbe99('0x37')]);_0x4d253a[_0xbe99('0x39')]=_[_0xbe99('0x3a')](_0x328f19[_0xbe99('0x36')],qs[_0xbe99('0x3b')](_0x8234b2['query'][_0xbe99('0x3b')]));_0x4d253a['attributes']=_0x4d253a[_0xbe99('0x39')]['length']?_0x4d253a[_0xbe99('0x39')]:_0x328f19['model'];if(!_0x8234b2[_0xbe99('0x37')][_0xbe99('0x3c')](_0xbe99('0x3d'))){_0x4d253a[_0xbe99('0x21')]=qs[_0xbe99('0x21')](_0x8234b2[_0xbe99('0x37')][_0xbe99('0x21')]);_0x4d253a[_0xbe99('0x1e')]=qs[_0xbe99('0x1e')](_0x8234b2['query'][_0xbe99('0x1e')]);}_0x4d253a[_0xbe99('0x3e')]=qs[_0xbe99('0x3f')](_0x8234b2[_0xbe99('0x37')][_0xbe99('0x3f')]);_0x4d253a[_0xbe99('0x40')]=qs[_0xbe99('0x41')](_[_0xbe99('0x42')](_0x8234b2['query'],_0x328f19[_0xbe99('0x41')]),_0x5e13cd);if(_0x8234b2['query'][_0xbe99('0x43')]){_0x4d253a[_0xbe99('0x40')]=_['merge'](_0x4d253a[_0xbe99('0x40')],{'$or':_[_0xbe99('0x31')](_0x5e13cd,function(_0x93c845){if(_0x93c845[_0xbe99('0x35')]!==_0xbe99('0x44')){var _0x107b3b={};_0x107b3b[_0x93c845[_0xbe99('0x2f')]]={'$like':'%'+_0x8234b2[_0xbe99('0x37')][_0xbe99('0x43')]+'%'};return _0x107b3b;}})});}_0x4d253a=_[_0xbe99('0x45')]({},_0x4d253a,_0x8234b2['options']);var _0x4f5a17={'where':_0x4d253a[_0xbe99('0x40')]};return db[_0xbe99('0x32')][_0xbe99('0x20')](_0x4f5a17)[_0xbe99('0x28')](function(_0x4a8d1e){_0xc6928a[_0xbe99('0x20')]=_0x4a8d1e;if(_0x8234b2['query'][_0xbe99('0x46')]){_0x4d253a[_0xbe99('0x47')]=[{'all':!![]}];}return db[_0xbe99('0x32')][_0xbe99('0x48')](_0x4d253a);})[_0xbe99('0x28')](function(_0x23fa73){_0xc6928a[_0xbe99('0x49')]=_0x23fa73;return _0xc6928a;})[_0xbe99('0x28')](respondWithFilteredResult(_0x12bb3c,_0x4d253a))[_0xbe99('0x4a')](handleError(_0x12bb3c,null));};exports[_0xbe99('0x4b')]=function(_0x4c047e,_0x17e837){var _0x6e0a50={'raw':!![],'where':{'id':_0x4c047e[_0xbe99('0x4c')]['id']}},_0x322b1a={};_0x322b1a[_0xbe99('0x36')]=_[_0xbe99('0x38')](db[_0xbe99('0x32')]['rawAttributes']);_0x322b1a['query']=_[_0xbe99('0x38')](_0x4c047e[_0xbe99('0x37')]);_0x322b1a[_0xbe99('0x41')]=_['intersection'](_0x322b1a[_0xbe99('0x36')],_0x322b1a[_0xbe99('0x37')]);_0x6e0a50[_0xbe99('0x39')]=_[_0xbe99('0x3a')](_0x322b1a['model'],qs[_0xbe99('0x3b')](_0x4c047e[_0xbe99('0x37')][_0xbe99('0x3b')]));_0x6e0a50[_0xbe99('0x39')]=_0x6e0a50[_0xbe99('0x39')][_0xbe99('0x4d')]?_0x6e0a50['attributes']:_0x322b1a[_0xbe99('0x36')];if(_0x4c047e[_0xbe99('0x37')][_0xbe99('0x46')]){_0x6e0a50[_0xbe99('0x47')]=[{'all':!![]}];}_0x6e0a50=_[_0xbe99('0x45')]({},_0x6e0a50,_0x4c047e[_0xbe99('0x4e')]);return db[_0xbe99('0x32')][_0xbe99('0x4f')](_0x6e0a50)[_0xbe99('0x28')](handleEntityNotFound(_0x17e837,null))[_0xbe99('0x28')](respondWithResult(_0x17e837,null))[_0xbe99('0x4a')](handleError(_0x17e837,null));};exports[_0xbe99('0x50')]=function(_0x34fd4f,_0x3d47e9){return db[_0xbe99('0x32')][_0xbe99('0x50')](_0x34fd4f[_0xbe99('0x51')],{})[_0xbe99('0x28')](function(_0x5c9620){var _0x3d81a1=_0x34fd4f[_0xbe99('0x52')]['get']({'plain':!![]});if(!_0x3d81a1)throw new Error(_0xbe99('0x53'));if(_0x3d81a1[_0xbe99('0x54')]===_0xbe99('0x52')){var _0x4c47d1=_0x5c9620[_0xbe99('0x55')]({'plain':!![]});var _0x113730=_0xbe99('0x2a');return db[_0xbe99('0x56')][_0xbe99('0x4f')]({'where':{'name':_0x113730,'userProfileId':_0x3d81a1['userProfileId']},'raw':!![]})[_0xbe99('0x28')](function(_0x50802c){if(_0x50802c&&_0x50802c[_0xbe99('0x57')]===0x0){return db[_0xbe99('0x2b')][_0xbe99('0x50')]({'name':_0x4c47d1['name'],'resourceId':_0x4c47d1['id'],'type':_0x50802c[_0xbe99('0x2f')],'sectionId':_0x50802c['id']},{})['then'](function(){return _0x5c9620;});}else{return _0x5c9620;}})['catch'](function(_0x267fee){logger[_0xbe99('0x2d')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x267fee);throw _0x267fee;});}return _0x5c9620;})[_0xbe99('0x28')](respondWithResult(_0x3d47e9,0xc9))[_0xbe99('0x4a')](handleError(_0x3d47e9,null));};exports[_0xbe99('0x27')]=function(_0x1578cf,_0x57d435){if(_0x1578cf[_0xbe99('0x51')]['id']){delete _0x1578cf[_0xbe99('0x51')]['id'];}return db['Pause'][_0xbe99('0x4f')]({'where':{'id':_0x1578cf['params']['id']}})[_0xbe99('0x28')](handleEntityNotFound(_0x57d435,null))[_0xbe99('0x28')](saveUpdates(_0x1578cf[_0xbe99('0x51')],null))[_0xbe99('0x28')](respondWithResult(_0x57d435,null))[_0xbe99('0x4a')](handleError(_0x57d435,null));};exports[_0xbe99('0x29')]=function(_0xee72c1,_0x1ec92a){return db[_0xbe99('0x32')][_0xbe99('0x4f')]({'where':{'id':_0xee72c1[_0xbe99('0x4c')]['id']}})[_0xbe99('0x28')](handleEntityNotFound(_0x1ec92a,null))[_0xbe99('0x28')](removeEntity(_0x1ec92a,null))[_0xbe99('0x4a')](handleError(_0x1ec92a,null));};