Built motion from commit e1760111.|2.6.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 _0x6dda=['../../mysqldb','sendStatus','end','status','json','offset','limit','undefined','count','set','Content-Range','apply','save','update','then','destroy','get','Pauses','error','name','send','index','map','Pause','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','merge','options','includeAll','include','rows','catch','find','create','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileResource','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','eml-format','rimraf','fast-json-patch','moment','bluebird','mustache','util','path','sox','to-csv','fs-extra','lodash','squel','crypto','desk.js','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util'];(function(_0x14e8ef,_0x1ea708){var _0x22a082=function(_0x55e180){while(--_0x55e180){_0x14e8ef['push'](_0x14e8ef['shift']());}};_0x22a082(++_0x1ea708);}(_0x6dda,0x124));var _0xa6dd=function(_0x11b1a2,_0x5d5add){_0x11b1a2=_0x11b1a2-0x0;var _0x221d79=_0x6dda[_0x11b1a2];return _0x221d79;};'use strict';var emlformat=require(_0xa6dd('0x0'));var rimraf=require(_0xa6dd('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xa6dd('0x2'));var rp=require('request-promise');var moment=require(_0xa6dd('0x3'));var BPromise=require(_0xa6dd('0x4'));var Mustache=require(_0xa6dd('0x5'));var util=require(_0xa6dd('0x6'));var path=require(_0xa6dd('0x7'));var sox=require(_0xa6dd('0x8'));var csv=require(_0xa6dd('0x9'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xa6dd('0xa'));var _=require(_0xa6dd('0xb'));var squel=require(_0xa6dd('0xc'));var crypto=require(_0xa6dd('0xd'));var jsforce=require('jsforce');var deskjs=require(_0xa6dd('0xe'));var toCsv=require(_0xa6dd('0x9'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0xa6dd('0xf'));var authService=require(_0xa6dd('0x10'));var qs=require(_0xa6dd('0x11'));var as=require(_0xa6dd('0x12'));var hardwareService=require(_0xa6dd('0x13'));var logger=require(_0xa6dd('0x14'))(_0xa6dd('0x15'));var utils=require(_0xa6dd('0x16'));var config=require('../../config/environment');var licenseUtil=require(_0xa6dd('0x17'));var db=require(_0xa6dd('0x18'))['db'];function respondWithStatusCode(_0x5e9624,_0x6909e9){_0x6909e9=_0x6909e9||0xcc;return function(_0x316e64){if(_0x316e64){return _0x5e9624[_0xa6dd('0x19')](_0x6909e9);}return _0x5e9624['status'](_0x6909e9)[_0xa6dd('0x1a')]();};}function respondWithResult(_0x2a1f52,_0x1f3300){_0x1f3300=_0x1f3300||0xc8;return function(_0x160fd2){if(_0x160fd2){return _0x2a1f52[_0xa6dd('0x1b')](_0x1f3300)[_0xa6dd('0x1c')](_0x160fd2);}};}function respondWithFilteredResult(_0x2576b9,_0x1b0117){return function(_0x5b61c0){if(_0x5b61c0){var _0x47acca=typeof _0x1b0117[_0xa6dd('0x1d')]==='undefined'&&typeof _0x1b0117[_0xa6dd('0x1e')]===_0xa6dd('0x1f');var _0x33a1ca=_0x5b61c0[_0xa6dd('0x20')];var _0x1aefa9=_0x47acca?0x0:_0x1b0117[_0xa6dd('0x1d')];var _0x5a5288=_0x47acca?_0x5b61c0[_0xa6dd('0x20')]:_0x1b0117[_0xa6dd('0x1d')]+_0x1b0117[_0xa6dd('0x1e')];var _0x94919e;if(_0x5a5288>=_0x33a1ca){_0x5a5288=_0x33a1ca;_0x94919e=0xc8;}else{_0x94919e=0xce;}_0x2576b9['status'](_0x94919e);return _0x2576b9[_0xa6dd('0x21')](_0xa6dd('0x22'),_0x1aefa9+'-'+_0x5a5288+'/'+_0x33a1ca)[_0xa6dd('0x1c')](_0x5b61c0);}return null;};}function patchUpdates(_0x544c73){return function(_0x41ca67){try{jsonpatch[_0xa6dd('0x23')](_0x41ca67,_0x544c73,!![]);}catch(_0x4d9634){return BPromise['reject'](_0x4d9634);}return _0x41ca67[_0xa6dd('0x24')]();};}function saveUpdates(_0x431b5e,_0x32d1d2){return function(_0x56653d){if(_0x56653d){return _0x56653d[_0xa6dd('0x25')](_0x431b5e)[_0xa6dd('0x26')](function(_0x4e4e03){return _0x4e4e03;});}return null;};}function removeEntity(_0x417aca,_0xf32acf){return function(_0x1db294){if(_0x1db294){return _0x1db294[_0xa6dd('0x27')]()['then'](function(){var _0x8e7ec1=_0x1db294[_0xa6dd('0x28')]({'plain':!![]});var _0x13b613=_0xa6dd('0x29');return db['UserProfileResource'][_0xa6dd('0x27')]({'where':{'type':_0x13b613,'resourceId':_0x8e7ec1['id']}})['then'](function(){return _0x1db294;});})[_0xa6dd('0x26')](function(){_0x417aca[_0xa6dd('0x1b')](0xcc)[_0xa6dd('0x1a')]();});}};}function handleEntityNotFound(_0x7853c8,_0x506c62){return function(_0x3c2254){if(!_0x3c2254){_0x7853c8[_0xa6dd('0x19')](0x194);}return _0x3c2254;};}function handleError(_0xce3928,_0x5241a8){_0x5241a8=_0x5241a8||0x1f4;return function(_0x35e32f){logger[_0xa6dd('0x2a')](_0x35e32f['stack']);if(_0x35e32f[_0xa6dd('0x2b')]){delete _0x35e32f[_0xa6dd('0x2b')];}_0xce3928[_0xa6dd('0x1b')](_0x5241a8)[_0xa6dd('0x2c')](_0x35e32f);};}exports[_0xa6dd('0x2d')]=function(_0x40f219,_0x321b71){var _0x326352={},_0x186601={},_0x394ad6={'count':0x0,'rows':[]};var _0x33176d=_[_0xa6dd('0x2e')](db[_0xa6dd('0x2f')][_0xa6dd('0x30')],function(_0x18e004){return{'name':_0x18e004[_0xa6dd('0x31')],'type':_0x18e004[_0xa6dd('0x32')][_0xa6dd('0x33')]};});_0x186601[_0xa6dd('0x34')]=_[_0xa6dd('0x2e')](_0x33176d,_0xa6dd('0x2b'));_0x186601[_0xa6dd('0x35')]=_[_0xa6dd('0x36')](_0x40f219[_0xa6dd('0x35')]);_0x186601[_0xa6dd('0x37')]=_[_0xa6dd('0x38')](_0x186601[_0xa6dd('0x34')],_0x186601['query']);_0x326352[_0xa6dd('0x39')]=_[_0xa6dd('0x38')](_0x186601[_0xa6dd('0x34')],qs[_0xa6dd('0x3a')](_0x40f219[_0xa6dd('0x35')][_0xa6dd('0x3a')]));_0x326352[_0xa6dd('0x39')]=_0x326352[_0xa6dd('0x39')][_0xa6dd('0x3b')]?_0x326352[_0xa6dd('0x39')]:_0x186601[_0xa6dd('0x34')];if(!_0x40f219[_0xa6dd('0x35')][_0xa6dd('0x3c')](_0xa6dd('0x3d'))){_0x326352['limit']=qs['limit'](_0x40f219[_0xa6dd('0x35')][_0xa6dd('0x1e')]);_0x326352[_0xa6dd('0x1d')]=qs[_0xa6dd('0x1d')](_0x40f219[_0xa6dd('0x35')][_0xa6dd('0x1d')]);}_0x326352[_0xa6dd('0x3e')]=qs[_0xa6dd('0x3f')](_0x40f219[_0xa6dd('0x35')]['sort']);_0x326352[_0xa6dd('0x40')]=qs[_0xa6dd('0x37')](_['pick'](_0x40f219['query'],_0x186601[_0xa6dd('0x37')]),_0x33176d);if(_0x40f219[_0xa6dd('0x35')]['filter']){_0x326352['where']=_[_0xa6dd('0x41')](_0x326352[_0xa6dd('0x40')],{'$or':_[_0xa6dd('0x2e')](_0x33176d,function(_0xf0139c){if(_0xf0139c[_0xa6dd('0x32')]!=='VIRTUAL'){var _0x1bf577={};_0x1bf577[_0xf0139c['name']]={'$like':'%'+_0x40f219['query']['filter']+'%'};return _0x1bf577;}})});}_0x326352=_[_0xa6dd('0x41')]({},_0x326352,_0x40f219[_0xa6dd('0x42')]);var _0x3c1154={'where':_0x326352[_0xa6dd('0x40')]};return db[_0xa6dd('0x2f')][_0xa6dd('0x20')](_0x3c1154)[_0xa6dd('0x26')](function(_0x1bd21e){_0x394ad6['count']=_0x1bd21e;if(_0x40f219[_0xa6dd('0x35')][_0xa6dd('0x43')]){_0x326352[_0xa6dd('0x44')]=[{'all':!![]}];}return db['Pause']['findAll'](_0x326352);})[_0xa6dd('0x26')](function(_0x3c834b){_0x394ad6[_0xa6dd('0x45')]=_0x3c834b;return _0x394ad6;})[_0xa6dd('0x26')](respondWithFilteredResult(_0x321b71,_0x326352))[_0xa6dd('0x46')](handleError(_0x321b71,null));};exports['show']=function(_0x148fd8,_0x55709f){var _0xa70b5a={'raw':!![],'where':{'id':_0x148fd8['params']['id']}},_0x386db9={};_0x386db9[_0xa6dd('0x34')]=_['keys'](db['Pause'][_0xa6dd('0x30')]);_0x386db9[_0xa6dd('0x35')]=_[_0xa6dd('0x36')](_0x148fd8[_0xa6dd('0x35')]);_0x386db9[_0xa6dd('0x37')]=_[_0xa6dd('0x38')](_0x386db9[_0xa6dd('0x34')],_0x386db9[_0xa6dd('0x35')]);_0xa70b5a[_0xa6dd('0x39')]=_['intersection'](_0x386db9[_0xa6dd('0x34')],qs[_0xa6dd('0x3a')](_0x148fd8[_0xa6dd('0x35')][_0xa6dd('0x3a')]));_0xa70b5a['attributes']=_0xa70b5a[_0xa6dd('0x39')][_0xa6dd('0x3b')]?_0xa70b5a[_0xa6dd('0x39')]:_0x386db9[_0xa6dd('0x34')];if(_0x148fd8[_0xa6dd('0x35')][_0xa6dd('0x43')]){_0xa70b5a[_0xa6dd('0x44')]=[{'all':!![]}];}_0xa70b5a=_[_0xa6dd('0x41')]({},_0xa70b5a,_0x148fd8['options']);return db[_0xa6dd('0x2f')][_0xa6dd('0x47')](_0xa70b5a)[_0xa6dd('0x26')](handleEntityNotFound(_0x55709f,null))[_0xa6dd('0x26')](respondWithResult(_0x55709f,null))['catch'](handleError(_0x55709f,null));};exports['create']=function(_0x2d2f50,_0x439adc){return db[_0xa6dd('0x2f')][_0xa6dd('0x48')](_0x2d2f50['body'],{})[_0xa6dd('0x26')](function(_0xe22b14){var _0x1bd0f6=_0x2d2f50[_0xa6dd('0x49')]['get']({'plain':!![]});if(!_0x1bd0f6)throw new Error(_0xa6dd('0x4a'));if(_0x1bd0f6[_0xa6dd('0x4b')]===_0xa6dd('0x49')){var _0xd19264=_0xe22b14['get']({'plain':!![]});var _0x5e0b2c='Pauses';return db['UserProfileSection'][_0xa6dd('0x47')]({'where':{'name':_0x5e0b2c,'userProfileId':_0x1bd0f6['userProfileId']},'raw':!![]})[_0xa6dd('0x26')](function(_0x2a9393){if(_0x2a9393&&_0x2a9393['autoAssociation']===0x0){return db[_0xa6dd('0x4c')][_0xa6dd('0x48')]({'name':_0xd19264['name'],'resourceId':_0xd19264['id'],'type':_0x2a9393['name'],'sectionId':_0x2a9393['id']},{})[_0xa6dd('0x26')](function(){return _0xe22b14;});}else{return _0xe22b14;}})[_0xa6dd('0x46')](function(_0x5a28b5){logger[_0xa6dd('0x2a')](_0xa6dd('0x4d'),_0x5a28b5);throw _0x5a28b5;});}return _0xe22b14;})['then'](respondWithResult(_0x439adc,0xc9))[_0xa6dd('0x46')](handleError(_0x439adc,null));};exports[_0xa6dd('0x25')]=function(_0x2eb789,_0x3954ec){if(_0x2eb789[_0xa6dd('0x4e')]['id']){delete _0x2eb789[_0xa6dd('0x4e')]['id'];}return db[_0xa6dd('0x2f')][_0xa6dd('0x47')]({'where':{'id':_0x2eb789['params']['id']}})[_0xa6dd('0x26')](handleEntityNotFound(_0x3954ec,null))[_0xa6dd('0x26')](saveUpdates(_0x2eb789['body'],null))[_0xa6dd('0x26')](respondWithResult(_0x3954ec,null))['catch'](handleError(_0x3954ec,null));};exports['destroy']=function(_0x1be6fd,_0x11af3e){return db[_0xa6dd('0x2f')]['find']({'where':{'id':_0x1be6fd['params']['id']}})[_0xa6dd('0x26')](handleEntityNotFound(_0x11af3e,null))['then'](removeEntity(_0x11af3e,null))[_0xa6dd('0x46')](handleError(_0x11af3e,null));};