Built motion from commit (unavailable).|2.3.97
[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 _0x85c3=['findAll','rows','catch','show','include','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','UserProfileResource','error','params','html-pdf','rimraf','fast-json-patch','bluebird','util','path','sox','to-csv','lodash','squel','desk.js','papaparse','../../components/auth/service','../../config/license/hardware','ioredis','../../components/parsers/qs','../../config/environment','../../mysqldb','sendStatus','status','end','count','offset','limit','set','Content-Range','json','apply','save','update','then','destroy','get','Pauses','stack','name','send','index','rawAttributes','model','keys','query','filters','intersection','attributes','fields','hasOwnProperty','order','sort','where','pick','filter','merge','map','type','key','field','Pause','includeAll'];(function(_0x344756,_0x281c84){var _0x1824f2=function(_0x9b0c09){while(--_0x9b0c09){_0x344756['push'](_0x344756['shift']());}};_0x1824f2(++_0x281c84);}(_0x85c3,0xa6));var _0x385c=function(_0x359397,_0x3792b4){_0x359397=_0x359397-0x0;var _0x2b2bbd=_0x85c3[_0x359397];return _0x2b2bbd;};'use strict';var pdf=require(_0x385c('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x385c('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x385c('0x2'));var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0x385c('0x3'));var Mustache=require('mustache');var util=require(_0x385c('0x4'));var path=require(_0x385c('0x5'));var sox=require(_0x385c('0x6'));var csv=require(_0x385c('0x7'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x385c('0x8'));var squel=require(_0x385c('0x9'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x385c('0xa'));var toCsv=require(_0x385c('0x7'));var querystring=require('querystring');var Papa=require(_0x385c('0xb'));var authService=require(_0x385c('0xc'));var hardwareService=require(_0x385c('0xd'));var Redis=require(_0x385c('0xe'));var qs=require(_0x385c('0xf'));var logger=require('../../config/logger')('api');var utils=require('../../config/utils');var config=require(_0x385c('0x10'));var db=require(_0x385c('0x11'))['db'];function respondWithStatusCode(_0x4ecc71,_0xd3ca1){_0xd3ca1=_0xd3ca1||0xcc;return function(_0x138e16){if(_0x138e16){return _0x4ecc71[_0x385c('0x12')](_0xd3ca1);}return _0x4ecc71[_0x385c('0x13')](_0xd3ca1)[_0x385c('0x14')]();};}function respondWithResult(_0x2f09ad,_0x46663b){_0x46663b=_0x46663b||0xc8;return function(_0x2db87d){if(_0x2db87d){return _0x2f09ad['status'](_0x46663b)['json'](_0x2db87d);}};}function respondWithFilteredResult(_0x320009,_0x36e5b1){return function(_0x76d116){if(_0x76d116){var _0x5dad76=_0x76d116[_0x385c('0x15')],_0x242f85=_0x36e5b1[_0x385c('0x16')],_0x5781bd=_0x36e5b1[_0x385c('0x16')]+_0x36e5b1[_0x385c('0x17')],_0x1e17a6;if(_0x5781bd>=_0x5dad76){_0x5781bd=_0x5dad76;_0x1e17a6=0xc8;}else{_0x1e17a6=0xce;}_0x320009[_0x385c('0x13')](_0x1e17a6);return _0x320009[_0x385c('0x18')](_0x385c('0x19'),_0x242f85+'-'+_0x5781bd+'/'+_0x5dad76)[_0x385c('0x1a')](_0x76d116);}return null;};}function patchUpdates(_0x44881d){return function(_0x31538c){try{jsonpatch[_0x385c('0x1b')](_0x31538c,_0x44881d,!![]);}catch(_0x3e37e0){return BPromise['reject'](_0x3e37e0);}return _0x31538c[_0x385c('0x1c')]();};}function saveUpdates(_0x10e80d,_0x52ae2a){return function(_0x234714){if(_0x234714){return _0x234714[_0x385c('0x1d')](_0x10e80d)[_0x385c('0x1e')](function(_0xad1615){return _0xad1615;});}return null;};}function removeEntity(_0x4436ba,_0x19bfc8){return function(_0x4aacc4){if(_0x4aacc4){return _0x4aacc4[_0x385c('0x1f')]()[_0x385c('0x1e')](function(){var _0x10668f=_0x4aacc4[_0x385c('0x20')]({'plain':!![]});var _0x516416=_0x385c('0x21');return db['UserProfileResource']['destroy']({'where':{'type':_0x516416,'resourceId':_0x10668f['id']}})['then'](function(){return _0x4aacc4;});})[_0x385c('0x1e')](function(){_0x4436ba['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x196bc1,_0x290e58){return function(_0x1ffd3f){if(!_0x1ffd3f){_0x196bc1['sendStatus'](0x194);}return _0x1ffd3f;};}function handleError(_0x5281e1,_0xaeee10){_0xaeee10=_0xaeee10||0x1f4;return function(_0x20fa60){logger['error'](_0x20fa60[_0x385c('0x22')]);if(_0x20fa60[_0x385c('0x23')]){delete _0x20fa60[_0x385c('0x23')];}_0x5281e1[_0x385c('0x13')](_0xaeee10)[_0x385c('0x24')](_0x20fa60);};}exports[_0x385c('0x25')]=function(_0x35dacf,_0x1b201a){var _0x3d8c24={},_0x4f97f7={},_0x4da7ae={'count':0x0,'rows':[]};var _0x4ed28a=db['Pause'][_0x385c('0x26')];_0x4f97f7[_0x385c('0x27')]=_[_0x385c('0x28')](_0x4ed28a);_0x4f97f7[_0x385c('0x29')]=_[_0x385c('0x28')](_0x35dacf['query']);_0x4f97f7[_0x385c('0x2a')]=_[_0x385c('0x2b')](_0x4f97f7[_0x385c('0x27')],_0x4f97f7[_0x385c('0x29')]);_0x3d8c24[_0x385c('0x2c')]=_[_0x385c('0x2b')](_0x4f97f7['model'],qs[_0x385c('0x2d')](_0x35dacf[_0x385c('0x29')][_0x385c('0x2d')]));_0x3d8c24[_0x385c('0x2c')]=_0x3d8c24[_0x385c('0x2c')]['length']?_0x3d8c24[_0x385c('0x2c')]:_0x4f97f7[_0x385c('0x27')];if(!_0x35dacf[_0x385c('0x29')][_0x385c('0x2e')]('nolimit')){_0x3d8c24[_0x385c('0x17')]=qs[_0x385c('0x17')](_0x35dacf['query'][_0x385c('0x17')]);_0x3d8c24[_0x385c('0x16')]=qs[_0x385c('0x16')](_0x35dacf[_0x385c('0x29')]['offset']);}_0x3d8c24[_0x385c('0x2f')]=qs[_0x385c('0x30')](_0x35dacf['query'][_0x385c('0x30')]);_0x3d8c24[_0x385c('0x31')]=qs['filters'](_[_0x385c('0x32')](_0x35dacf[_0x385c('0x29')],_0x4f97f7['filters']));if(_0x35dacf[_0x385c('0x29')][_0x385c('0x33')]){_0x3d8c24[_0x385c('0x31')]=_[_0x385c('0x34')](_0x3d8c24[_0x385c('0x31')],{'$or':_[_0x385c('0x35')](_0x4ed28a,function(_0x26a67c){if(_0x26a67c[_0x385c('0x36')][_0x385c('0x37')]!=='VIRTUAL'){var _0x905ee0={};_0x905ee0[_0x26a67c[_0x385c('0x38')]]={'$like':'%'+_0x35dacf[_0x385c('0x29')][_0x385c('0x33')]+'%'};return _0x905ee0;}})});}_0x3d8c24=_['merge']({},_0x3d8c24,_0x35dacf['options']);var _0x718e96={'where':_0x3d8c24[_0x385c('0x31')]};return db[_0x385c('0x39')][_0x385c('0x15')](_0x718e96)[_0x385c('0x1e')](function(_0x5d48b1){_0x4da7ae[_0x385c('0x15')]=_0x5d48b1;if(_0x35dacf[_0x385c('0x29')][_0x385c('0x3a')]){_0x3d8c24['include']=[{'all':!![]}];}return db[_0x385c('0x39')][_0x385c('0x3b')](_0x3d8c24);})['then'](function(_0x4077d8){_0x4da7ae[_0x385c('0x3c')]=_0x4077d8;return _0x4da7ae;})[_0x385c('0x1e')](respondWithFilteredResult(_0x1b201a,_0x3d8c24))[_0x385c('0x3d')](handleError(_0x1b201a,null));};exports[_0x385c('0x3e')]=function(_0x403a03,_0x5dd1e0){var _0x24e5d5={'raw':!![],'where':{'id':_0x403a03['params']['id']}},_0x13f35a={};_0x13f35a['model']=_[_0x385c('0x28')](db[_0x385c('0x39')][_0x385c('0x26')]);_0x13f35a[_0x385c('0x29')]=_[_0x385c('0x28')](_0x403a03[_0x385c('0x29')]);_0x13f35a[_0x385c('0x2a')]=_[_0x385c('0x2b')](_0x13f35a[_0x385c('0x27')],_0x13f35a['query']);_0x24e5d5[_0x385c('0x2c')]=_[_0x385c('0x2b')](_0x13f35a['model'],qs['fields'](_0x403a03[_0x385c('0x29')][_0x385c('0x2d')]));_0x24e5d5['attributes']=_0x24e5d5['attributes']['length']?_0x24e5d5[_0x385c('0x2c')]:_0x13f35a['model'];if(_0x403a03[_0x385c('0x29')][_0x385c('0x3a')]){_0x24e5d5[_0x385c('0x3f')]=[{'all':!![]}];}_0x24e5d5=_[_0x385c('0x34')]({},_0x24e5d5,_0x403a03['options']);return db[_0x385c('0x39')][_0x385c('0x40')](_0x24e5d5)[_0x385c('0x1e')](handleEntityNotFound(_0x5dd1e0,null))[_0x385c('0x1e')](respondWithResult(_0x5dd1e0,null))[_0x385c('0x3d')](handleError(_0x5dd1e0,null));};exports[_0x385c('0x41')]=function(_0x434aec,_0x43b3f5){return db[_0x385c('0x39')][_0x385c('0x41')](_0x434aec[_0x385c('0x42')],{})[_0x385c('0x1e')](function(_0x46aa0d){var _0x545d9f=_0x434aec[_0x385c('0x43')][_0x385c('0x20')]({'plain':!![]});if(!_0x545d9f)throw new Error(_0x385c('0x44'));if(_0x545d9f[_0x385c('0x45')]==='user'){var _0xab63e3=_0x46aa0d['get']({'plain':!![]});var _0x245dae=_0x385c('0x21');return db[_0x385c('0x46')]['find']({'where':{'name':_0x245dae,'userProfileId':_0x545d9f[_0x385c('0x47')]},'raw':!![]})[_0x385c('0x1e')](function(_0x5c05a9){if(_0x5c05a9&&_0x5c05a9['autoAssociation']===0x0){return db[_0x385c('0x48')][_0x385c('0x41')]({'name':_0xab63e3['name'],'resourceId':_0xab63e3['id'],'type':_0x5c05a9[_0x385c('0x23')],'sectionId':_0x5c05a9['id']},{})[_0x385c('0x1e')](function(){return _0x46aa0d;});}else{return _0x46aa0d;}})['catch'](function(_0xc472d3){logger[_0x385c('0x49')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0xc472d3);throw _0xc472d3;});}return _0x46aa0d;})['then'](respondWithResult(_0x43b3f5,0xc9))[_0x385c('0x3d')](handleError(_0x43b3f5,null));};exports['update']=function(_0x3ecdbf,_0x11503b){if(_0x3ecdbf[_0x385c('0x42')]['id']){delete _0x3ecdbf[_0x385c('0x42')]['id'];}return db['Pause'][_0x385c('0x40')]({'where':{'id':_0x3ecdbf['params']['id']}})['then'](handleEntityNotFound(_0x11503b,null))[_0x385c('0x1e')](saveUpdates(_0x3ecdbf['body'],null))[_0x385c('0x1e')](respondWithResult(_0x11503b,null))[_0x385c('0x3d')](handleError(_0x11503b,null));};exports[_0x385c('0x1f')]=function(_0x2af9e0,_0x40a61d){return db[_0x385c('0x39')][_0x385c('0x40')]({'where':{'id':_0x2af9e0[_0x385c('0x4a')]['id']}})[_0x385c('0x1e')](handleEntityNotFound(_0x40a61d,null))['then'](removeEntity(_0x40a61d,null))[_0x385c('0x3d')](handleError(_0x40a61d,null));};