Built motion from commit (unavailable).|2.5.25
[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 _0x231d=['sort','where','pick','merge','filter','includeAll','include','findAll','catch','show','params','keys','rawAttributes','length','options','find','create','user','role','UserProfileSection','autoAssociation','error','body','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','util','sox','to-csv','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','end','count','offset','limit','set','Content-Range','apply','save','update','then','destroy','get','UserProfileResource','name','send','index','map','Pause','fieldName','type','model','query','filters','intersection','attributes','fields','hasOwnProperty','nolimit'];(function(_0x5a303d,_0x32a1d6){var _0x25bced=function(_0x571f1e){while(--_0x571f1e){_0x5a303d['push'](_0x5a303d['shift']());}};_0x25bced(++_0x32a1d6);}(_0x231d,0x64));var _0xd231=function(_0x4565bf,_0x5ad9d6){_0x4565bf=_0x4565bf-0x0;var _0x5610ba=_0x231d[_0x4565bf];return _0x5610ba;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0xd231('0x0'));var rimraf=require(_0xd231('0x1'));var zipdir=require(_0xd231('0x2'));var jsonpatch=require(_0xd231('0x3'));var rp=require(_0xd231('0x4'));var moment=require('moment');var BPromise=require(_0xd231('0x5'));var Mustache=require('mustache');var util=require(_0xd231('0x6'));var path=require('path');var sox=require(_0xd231('0x7'));var csv=require(_0xd231('0x8'));var ejs=require('ejs');var fs=require('fs');var _=require(_0xd231('0x9'));var squel=require(_0xd231('0xa'));var crypto=require(_0xd231('0xb'));var jsforce=require(_0xd231('0xc'));var deskjs=require(_0xd231('0xd'));var toCsv=require(_0xd231('0x8'));var querystring=require(_0xd231('0xe'));var Papa=require(_0xd231('0xf'));var Redis=require(_0xd231('0x10'));var authService=require('../../components/auth/service');var qs=require(_0xd231('0x11'));var as=require(_0xd231('0x12'));var hardwareService=require(_0xd231('0x13'));var logger=require('../../config/logger')(_0xd231('0x14'));var utils=require(_0xd231('0x15'));var config=require(_0xd231('0x16'));var licenseUtil=require(_0xd231('0x17'));var db=require(_0xd231('0x18'))['db'];function respondWithStatusCode(_0x17b70e,_0x2bf103){_0x2bf103=_0x2bf103||0xcc;return function(_0x5aa368){if(_0x5aa368){return _0x17b70e['sendStatus'](_0x2bf103);}return _0x17b70e[_0xd231('0x19')](_0x2bf103)[_0xd231('0x1a')]();};}function respondWithResult(_0x477243,_0x484c8d){_0x484c8d=_0x484c8d||0xc8;return function(_0x2ad32b){if(_0x2ad32b){return _0x477243[_0xd231('0x19')](_0x484c8d)['json'](_0x2ad32b);}};}function respondWithFilteredResult(_0x34b712,_0x39f609){return function(_0x49c72d){if(_0x49c72d){var _0x4ba590=_0x49c72d[_0xd231('0x1b')],_0x3ad701=_0x39f609[_0xd231('0x1c')],_0x41c45b=_0x39f609[_0xd231('0x1c')]+_0x39f609[_0xd231('0x1d')],_0x280084;if(_0x41c45b>=_0x4ba590){_0x41c45b=_0x4ba590;_0x280084=0xc8;}else{_0x280084=0xce;}_0x34b712[_0xd231('0x19')](_0x280084);return _0x34b712[_0xd231('0x1e')](_0xd231('0x1f'),_0x3ad701+'-'+_0x41c45b+'/'+_0x4ba590)['json'](_0x49c72d);}return null;};}function patchUpdates(_0x161ec3){return function(_0x59be03){try{jsonpatch[_0xd231('0x20')](_0x59be03,_0x161ec3,!![]);}catch(_0x42cab1){return BPromise['reject'](_0x42cab1);}return _0x59be03[_0xd231('0x21')]();};}function saveUpdates(_0x3e4b92,_0x3996f9){return function(_0xab6a0c){if(_0xab6a0c){return _0xab6a0c[_0xd231('0x22')](_0x3e4b92)[_0xd231('0x23')](function(_0x41ea5c){return _0x41ea5c;});}return null;};}function removeEntity(_0x2c7ee1,_0x162610){return function(_0x5ae807){if(_0x5ae807){return _0x5ae807[_0xd231('0x24')]()['then'](function(){var _0xf39a3=_0x5ae807[_0xd231('0x25')]({'plain':!![]});var _0xee5ff0='Pauses';return db[_0xd231('0x26')][_0xd231('0x24')]({'where':{'type':_0xee5ff0,'resourceId':_0xf39a3['id']}})[_0xd231('0x23')](function(){return _0x5ae807;});})[_0xd231('0x23')](function(){_0x2c7ee1[_0xd231('0x19')](0xcc)['end']();});}};}function handleEntityNotFound(_0x4d1c67,_0x244bdc){return function(_0x2943cd){if(!_0x2943cd){_0x4d1c67['sendStatus'](0x194);}return _0x2943cd;};}function handleError(_0x1a87d1,_0x4a067b){_0x4a067b=_0x4a067b||0x1f4;return function(_0x18496d){logger['error'](_0x18496d['stack']);if(_0x18496d[_0xd231('0x27')]){delete _0x18496d[_0xd231('0x27')];}_0x1a87d1[_0xd231('0x19')](_0x4a067b)[_0xd231('0x28')](_0x18496d);};}exports[_0xd231('0x29')]=function(_0x1a41ea,_0x4aedd0){var _0x2f27de={},_0x2ec4b3={},_0x42486f={'count':0x0,'rows':[]};var _0x5c2ee7=_[_0xd231('0x2a')](db[_0xd231('0x2b')]['rawAttributes'],function(_0x347f0c){return{'name':_0x347f0c[_0xd231('0x2c')],'type':_0x347f0c[_0xd231('0x2d')]['key']};});_0x2ec4b3[_0xd231('0x2e')]=_[_0xd231('0x2a')](_0x5c2ee7,'name');_0x2ec4b3['query']=_['keys'](_0x1a41ea[_0xd231('0x2f')]);_0x2ec4b3[_0xd231('0x30')]=_[_0xd231('0x31')](_0x2ec4b3['model'],_0x2ec4b3['query']);_0x2f27de[_0xd231('0x32')]=_[_0xd231('0x31')](_0x2ec4b3[_0xd231('0x2e')],qs[_0xd231('0x33')](_0x1a41ea[_0xd231('0x2f')][_0xd231('0x33')]));_0x2f27de[_0xd231('0x32')]=_0x2f27de[_0xd231('0x32')]['length']?_0x2f27de['attributes']:_0x2ec4b3[_0xd231('0x2e')];if(!_0x1a41ea[_0xd231('0x2f')][_0xd231('0x34')](_0xd231('0x35'))){_0x2f27de['limit']=qs[_0xd231('0x1d')](_0x1a41ea['query']['limit']);_0x2f27de[_0xd231('0x1c')]=qs[_0xd231('0x1c')](_0x1a41ea['query'][_0xd231('0x1c')]);}_0x2f27de['order']=qs[_0xd231('0x36')](_0x1a41ea[_0xd231('0x2f')][_0xd231('0x36')]);_0x2f27de[_0xd231('0x37')]=qs['filters'](_[_0xd231('0x38')](_0x1a41ea[_0xd231('0x2f')],_0x2ec4b3[_0xd231('0x30')]),_0x5c2ee7);if(_0x1a41ea[_0xd231('0x2f')]['filter']){_0x2f27de['where']=_[_0xd231('0x39')](_0x2f27de[_0xd231('0x37')],{'$or':_['map'](_0x5c2ee7,function(_0x106a07){if(_0x106a07[_0xd231('0x2d')]!=='VIRTUAL'){var _0xba7108={};_0xba7108[_0x106a07[_0xd231('0x27')]]={'$like':'%'+_0x1a41ea['query'][_0xd231('0x3a')]+'%'};return _0xba7108;}})});}_0x2f27de=_[_0xd231('0x39')]({},_0x2f27de,_0x1a41ea['options']);var _0x940683={'where':_0x2f27de['where']};return db[_0xd231('0x2b')][_0xd231('0x1b')](_0x940683)['then'](function(_0x2323ed){_0x42486f['count']=_0x2323ed;if(_0x1a41ea[_0xd231('0x2f')][_0xd231('0x3b')]){_0x2f27de[_0xd231('0x3c')]=[{'all':!![]}];}return db[_0xd231('0x2b')][_0xd231('0x3d')](_0x2f27de);})['then'](function(_0x266957){_0x42486f['rows']=_0x266957;return _0x42486f;})[_0xd231('0x23')](respondWithFilteredResult(_0x4aedd0,_0x2f27de))[_0xd231('0x3e')](handleError(_0x4aedd0,null));};exports[_0xd231('0x3f')]=function(_0x495494,_0x5ccd66){var _0x965f7d={'raw':!![],'where':{'id':_0x495494[_0xd231('0x40')]['id']}},_0x3293a9={};_0x3293a9[_0xd231('0x2e')]=_[_0xd231('0x41')](db[_0xd231('0x2b')][_0xd231('0x42')]);_0x3293a9[_0xd231('0x2f')]=_['keys'](_0x495494[_0xd231('0x2f')]);_0x3293a9['filters']=_[_0xd231('0x31')](_0x3293a9[_0xd231('0x2e')],_0x3293a9['query']);_0x965f7d[_0xd231('0x32')]=_[_0xd231('0x31')](_0x3293a9[_0xd231('0x2e')],qs['fields'](_0x495494[_0xd231('0x2f')]['fields']));_0x965f7d[_0xd231('0x32')]=_0x965f7d['attributes'][_0xd231('0x43')]?_0x965f7d[_0xd231('0x32')]:_0x3293a9[_0xd231('0x2e')];if(_0x495494['query'][_0xd231('0x3b')]){_0x965f7d[_0xd231('0x3c')]=[{'all':!![]}];}_0x965f7d=_[_0xd231('0x39')]({},_0x965f7d,_0x495494[_0xd231('0x44')]);return db[_0xd231('0x2b')][_0xd231('0x45')](_0x965f7d)['then'](handleEntityNotFound(_0x5ccd66,null))[_0xd231('0x23')](respondWithResult(_0x5ccd66,null))[_0xd231('0x3e')](handleError(_0x5ccd66,null));};exports['create']=function(_0x17d6f4,_0x5d3fbf){return db[_0xd231('0x2b')][_0xd231('0x46')](_0x17d6f4['body'],{})[_0xd231('0x23')](function(_0x5f2146){var _0x507f50=_0x17d6f4[_0xd231('0x47')][_0xd231('0x25')]({'plain':!![]});if(!_0x507f50)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x507f50[_0xd231('0x48')]===_0xd231('0x47')){var _0x3be08d=_0x5f2146[_0xd231('0x25')]({'plain':!![]});var _0x35bf9d='Pauses';return db[_0xd231('0x49')][_0xd231('0x45')]({'where':{'name':_0x35bf9d,'userProfileId':_0x507f50['userProfileId']},'raw':!![]})[_0xd231('0x23')](function(_0xb539c0){if(_0xb539c0&&_0xb539c0[_0xd231('0x4a')]===0x0){return db['UserProfileResource'][_0xd231('0x46')]({'name':_0x3be08d['name'],'resourceId':_0x3be08d['id'],'type':_0xb539c0[_0xd231('0x27')],'sectionId':_0xb539c0['id']},{})[_0xd231('0x23')](function(){return _0x5f2146;});}else{return _0x5f2146;}})[_0xd231('0x3e')](function(_0x94d264){logger[_0xd231('0x4b')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x94d264);throw _0x94d264;});}return _0x5f2146;})[_0xd231('0x23')](respondWithResult(_0x5d3fbf,0xc9))[_0xd231('0x3e')](handleError(_0x5d3fbf,null));};exports['update']=function(_0x3a0a0c,_0x1f246d){if(_0x3a0a0c[_0xd231('0x4c')]['id']){delete _0x3a0a0c['body']['id'];}return db[_0xd231('0x2b')][_0xd231('0x45')]({'where':{'id':_0x3a0a0c['params']['id']}})[_0xd231('0x23')](handleEntityNotFound(_0x1f246d,null))[_0xd231('0x23')](saveUpdates(_0x3a0a0c[_0xd231('0x4c')],null))[_0xd231('0x23')](respondWithResult(_0x1f246d,null))[_0xd231('0x3e')](handleError(_0x1f246d,null));};exports[_0xd231('0x24')]=function(_0x48a8ee,_0x102991){return db[_0xd231('0x2b')][_0xd231('0x45')]({'where':{'id':_0x48a8ee['params']['id']}})[_0xd231('0x23')](handleEntityNotFound(_0x102991,null))[_0xd231('0x23')](removeEntity(_0x102991,null))[_0xd231('0x3e')](handleError(_0x102991,null));};