Built motion from commit (unavailable).|2.4.18
[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 _0xf6f7=['Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','html-pdf','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','json','count','offset','set','apply','reject','update','then','get','Pauses','UserProfileResource','destroy','end','error','stack','name','map','rawAttributes','fieldName','type','key','query','keys','attributes','model','fields','length','nolimit','limit','sort','where','filters','pick','filter','merge','VIRTUAL','options','includeAll','include','Pause','catch','show','params','intersection','find','create','body','user'];(function(_0x410f0a,_0x6ee2d){var _0x4af27d=function(_0x2c7131){while(--_0x2c7131){_0x410f0a['push'](_0x410f0a['shift']());}};_0x4af27d(++_0x6ee2d);}(_0xf6f7,0x195));var _0x7f6f=function(_0x1f7996,_0x299a14){_0x1f7996=_0x1f7996-0x0;var _0x584609=_0xf6f7[_0x1f7996];return _0x584609;};'use strict';var pdf=require(_0x7f6f('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x7f6f('0x1'));var zipdir=require(_0x7f6f('0x2'));var jsonpatch=require(_0x7f6f('0x3'));var rp=require(_0x7f6f('0x4'));var moment=require(_0x7f6f('0x5'));var BPromise=require(_0x7f6f('0x6'));var Mustache=require(_0x7f6f('0x7'));var util=require(_0x7f6f('0x8'));var path=require('path');var sox=require(_0x7f6f('0x9'));var csv=require(_0x7f6f('0xa'));var ejs=require(_0x7f6f('0xb'));var fs=require('fs');var _=require(_0x7f6f('0xc'));var squel=require(_0x7f6f('0xd'));var crypto=require(_0x7f6f('0xe'));var jsforce=require(_0x7f6f('0xf'));var deskjs=require(_0x7f6f('0x10'));var toCsv=require(_0x7f6f('0xa'));var querystring=require(_0x7f6f('0x11'));var Papa=require(_0x7f6f('0x12'));var Redis=require('ioredis');var authService=require(_0x7f6f('0x13'));var qs=require(_0x7f6f('0x14'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x7f6f('0x15'));var logger=require('../../config/logger')('api');var utils=require(_0x7f6f('0x16'));var config=require(_0x7f6f('0x17'));var db=require(_0x7f6f('0x18'))['db'];function respondWithStatusCode(_0x12a3f3,_0x4f41eb){_0x4f41eb=_0x4f41eb||0xcc;return function(_0x3cb6e1){if(_0x3cb6e1){return _0x12a3f3[_0x7f6f('0x19')](_0x4f41eb);}return _0x12a3f3['status'](_0x4f41eb)['end']();};}function respondWithResult(_0x26d679,_0x260f87){_0x260f87=_0x260f87||0xc8;return function(_0x5d7f07){if(_0x5d7f07){return _0x26d679[_0x7f6f('0x1a')](_0x260f87)[_0x7f6f('0x1b')](_0x5d7f07);}};}function respondWithFilteredResult(_0xd0c084,_0x34b687){return function(_0x16e2df){if(_0x16e2df){var _0x125a17=_0x16e2df[_0x7f6f('0x1c')],_0x1fcde9=_0x34b687['offset'],_0x5ee9ea=_0x34b687[_0x7f6f('0x1d')]+_0x34b687['limit'],_0x45551a;if(_0x5ee9ea>=_0x125a17){_0x5ee9ea=_0x125a17;_0x45551a=0xc8;}else{_0x45551a=0xce;}_0xd0c084[_0x7f6f('0x1a')](_0x45551a);return _0xd0c084[_0x7f6f('0x1e')]('Content-Range',_0x1fcde9+'-'+_0x5ee9ea+'/'+_0x125a17)['json'](_0x16e2df);}return null;};}function patchUpdates(_0x512fed){return function(_0x378784){try{jsonpatch[_0x7f6f('0x1f')](_0x378784,_0x512fed,!![]);}catch(_0x12a463){return BPromise[_0x7f6f('0x20')](_0x12a463);}return _0x378784['save']();};}function saveUpdates(_0x52f1a8,_0x5415c5){return function(_0x367ca9){if(_0x367ca9){return _0x367ca9[_0x7f6f('0x21')](_0x52f1a8)[_0x7f6f('0x22')](function(_0x24f05f){return _0x24f05f;});}return null;};}function removeEntity(_0x5b96aa,_0x5a0ee0){return function(_0x3e7770){if(_0x3e7770){return _0x3e7770['destroy']()[_0x7f6f('0x22')](function(){var _0x509bdc=_0x3e7770[_0x7f6f('0x23')]({'plain':!![]});var _0x685232=_0x7f6f('0x24');return db[_0x7f6f('0x25')][_0x7f6f('0x26')]({'where':{'type':_0x685232,'resourceId':_0x509bdc['id']}})[_0x7f6f('0x22')](function(){return _0x3e7770;});})['then'](function(){_0x5b96aa['status'](0xcc)[_0x7f6f('0x27')]();});}};}function handleEntityNotFound(_0x15b688,_0x802e7a){return function(_0x29d777){if(!_0x29d777){_0x15b688['sendStatus'](0x194);}return _0x29d777;};}function handleError(_0x478049,_0xf7c234){_0xf7c234=_0xf7c234||0x1f4;return function(_0x12ebd8){logger[_0x7f6f('0x28')](_0x12ebd8[_0x7f6f('0x29')]);if(_0x12ebd8['name']){delete _0x12ebd8[_0x7f6f('0x2a')];}_0x478049[_0x7f6f('0x1a')](_0xf7c234)['send'](_0x12ebd8);};}exports['index']=function(_0x4d19f8,_0x154329){var _0x17e71a={},_0x553030={},_0x2636bf={'count':0x0,'rows':[]};var _0x41d419=_[_0x7f6f('0x2b')](db['Pause'][_0x7f6f('0x2c')],function(_0x193a4c){return{'name':_0x193a4c[_0x7f6f('0x2d')],'type':_0x193a4c[_0x7f6f('0x2e')][_0x7f6f('0x2f')]};});_0x553030['model']=_['map'](_0x41d419,'name');_0x553030[_0x7f6f('0x30')]=_[_0x7f6f('0x31')](_0x4d19f8['query']);_0x553030['filters']=_['intersection'](_0x553030['model'],_0x553030[_0x7f6f('0x30')]);_0x17e71a[_0x7f6f('0x32')]=_['intersection'](_0x553030[_0x7f6f('0x33')],qs[_0x7f6f('0x34')](_0x4d19f8['query']['fields']));_0x17e71a[_0x7f6f('0x32')]=_0x17e71a[_0x7f6f('0x32')][_0x7f6f('0x35')]?_0x17e71a[_0x7f6f('0x32')]:_0x553030[_0x7f6f('0x33')];if(!_0x4d19f8[_0x7f6f('0x30')]['hasOwnProperty'](_0x7f6f('0x36'))){_0x17e71a['limit']=qs[_0x7f6f('0x37')](_0x4d19f8[_0x7f6f('0x30')][_0x7f6f('0x37')]);_0x17e71a[_0x7f6f('0x1d')]=qs[_0x7f6f('0x1d')](_0x4d19f8['query'][_0x7f6f('0x1d')]);}_0x17e71a['order']=qs[_0x7f6f('0x38')](_0x4d19f8[_0x7f6f('0x30')][_0x7f6f('0x38')]);_0x17e71a[_0x7f6f('0x39')]=qs[_0x7f6f('0x3a')](_[_0x7f6f('0x3b')](_0x4d19f8[_0x7f6f('0x30')],_0x553030['filters']));if(_0x4d19f8[_0x7f6f('0x30')][_0x7f6f('0x3c')]){_0x17e71a[_0x7f6f('0x39')]=_[_0x7f6f('0x3d')](_0x17e71a[_0x7f6f('0x39')],{'$or':_[_0x7f6f('0x2b')](_0x41d419,function(_0x204c20){if(_0x204c20[_0x7f6f('0x2e')]!==_0x7f6f('0x3e')){var _0x34f5e3={};_0x34f5e3[_0x204c20['name']]={'$like':'%'+_0x4d19f8[_0x7f6f('0x30')][_0x7f6f('0x3c')]+'%'};return _0x34f5e3;}})});}_0x17e71a=_[_0x7f6f('0x3d')]({},_0x17e71a,_0x4d19f8[_0x7f6f('0x3f')]);var _0x5acbb2={'where':_0x17e71a[_0x7f6f('0x39')]};return db['Pause']['count'](_0x5acbb2)[_0x7f6f('0x22')](function(_0x11f44d){_0x2636bf[_0x7f6f('0x1c')]=_0x11f44d;if(_0x4d19f8['query'][_0x7f6f('0x40')]){_0x17e71a[_0x7f6f('0x41')]=[{'all':!![]}];}return db[_0x7f6f('0x42')]['findAll'](_0x17e71a);})[_0x7f6f('0x22')](function(_0x125abe){_0x2636bf['rows']=_0x125abe;return _0x2636bf;})['then'](respondWithFilteredResult(_0x154329,_0x17e71a))[_0x7f6f('0x43')](handleError(_0x154329,null));};exports[_0x7f6f('0x44')]=function(_0x3c04d7,_0x48455c){var _0xa5578d={'raw':!![],'where':{'id':_0x3c04d7[_0x7f6f('0x45')]['id']}},_0x14b614={};_0x14b614[_0x7f6f('0x33')]=_['keys'](db['Pause'][_0x7f6f('0x2c')]);_0x14b614[_0x7f6f('0x30')]=_[_0x7f6f('0x31')](_0x3c04d7[_0x7f6f('0x30')]);_0x14b614[_0x7f6f('0x3a')]=_[_0x7f6f('0x46')](_0x14b614['model'],_0x14b614[_0x7f6f('0x30')]);_0xa5578d[_0x7f6f('0x32')]=_[_0x7f6f('0x46')](_0x14b614[_0x7f6f('0x33')],qs[_0x7f6f('0x34')](_0x3c04d7[_0x7f6f('0x30')][_0x7f6f('0x34')]));_0xa5578d['attributes']=_0xa5578d['attributes'][_0x7f6f('0x35')]?_0xa5578d[_0x7f6f('0x32')]:_0x14b614[_0x7f6f('0x33')];if(_0x3c04d7[_0x7f6f('0x30')][_0x7f6f('0x40')]){_0xa5578d['include']=[{'all':!![]}];}_0xa5578d=_[_0x7f6f('0x3d')]({},_0xa5578d,_0x3c04d7[_0x7f6f('0x3f')]);return db['Pause'][_0x7f6f('0x47')](_0xa5578d)[_0x7f6f('0x22')](handleEntityNotFound(_0x48455c,null))[_0x7f6f('0x22')](respondWithResult(_0x48455c,null))[_0x7f6f('0x43')](handleError(_0x48455c,null));};exports[_0x7f6f('0x48')]=function(_0x1c626d,_0x4affc8){return db[_0x7f6f('0x42')][_0x7f6f('0x48')](_0x1c626d[_0x7f6f('0x49')],{})[_0x7f6f('0x22')](function(_0x89374c){var _0x92a98b=_0x1c626d[_0x7f6f('0x4a')]['get']({'plain':!![]});if(!_0x92a98b)throw new Error(_0x7f6f('0x4b'));if(_0x92a98b[_0x7f6f('0x4c')]===_0x7f6f('0x4a')){var _0x3e015b=_0x89374c[_0x7f6f('0x23')]({'plain':!![]});var _0x2f49eb=_0x7f6f('0x24');return db[_0x7f6f('0x4d')][_0x7f6f('0x47')]({'where':{'name':_0x2f49eb,'userProfileId':_0x92a98b[_0x7f6f('0x4e')]},'raw':!![]})['then'](function(_0xd74d78){if(_0xd74d78&&_0xd74d78['autoAssociation']===0x0){return db[_0x7f6f('0x25')][_0x7f6f('0x48')]({'name':_0x3e015b[_0x7f6f('0x2a')],'resourceId':_0x3e015b['id'],'type':_0xd74d78['name'],'sectionId':_0xd74d78['id']},{})[_0x7f6f('0x22')](function(){return _0x89374c;});}else{return _0x89374c;}})[_0x7f6f('0x43')](function(_0xc58edc){logger[_0x7f6f('0x28')](_0x7f6f('0x4f'),_0xc58edc);throw _0xc58edc;});}return _0x89374c;})[_0x7f6f('0x22')](respondWithResult(_0x4affc8,0xc9))['catch'](handleError(_0x4affc8,null));};exports[_0x7f6f('0x21')]=function(_0x82840e,_0x23507a){if(_0x82840e[_0x7f6f('0x49')]['id']){delete _0x82840e[_0x7f6f('0x49')]['id'];}return db[_0x7f6f('0x42')][_0x7f6f('0x47')]({'where':{'id':_0x82840e[_0x7f6f('0x45')]['id']}})[_0x7f6f('0x22')](handleEntityNotFound(_0x23507a,null))[_0x7f6f('0x22')](saveUpdates(_0x82840e['body'],null))['then'](respondWithResult(_0x23507a,null))['catch'](handleError(_0x23507a,null));};exports[_0x7f6f('0x26')]=function(_0x1e3559,_0x3209bc){return db[_0x7f6f('0x42')][_0x7f6f('0x47')]({'where':{'id':_0x1e3559[_0x7f6f('0x45')]['id']}})['then'](handleEntityNotFound(_0x3209bc,null))[_0x7f6f('0x22')](removeEntity(_0x3209bc,null))[_0x7f6f('0x43')](handleError(_0x3209bc,null));};