Built motion from commit d5e4af8c.|2.6.23
[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 _0x325d=['../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','limit','undefined','count','Content-Range','apply','reject','save','update','then','destroy','get','Pauses','UserProfileResource','error','stack','name','send','index','map','Pause','rawAttributes','type','key','model','query','keys','filters','intersection','attributes','fields','hasOwnProperty','nolimit','sort','where','pick','merge','VIRTUAL','includeAll','include','findAll','rows','show','options','find','catch','create','body','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','params','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware'];(function(_0x37756b,_0x24db76){var _0x46efec=function(_0x319807){while(--_0x319807){_0x37756b['push'](_0x37756b['shift']());}};_0x46efec(++_0x24db76);}(_0x325d,0x1a1));var _0xd325=function(_0x3ab9a,_0xac46f){_0x3ab9a=_0x3ab9a-0x0;var _0x33947f=_0x325d[_0x3ab9a];return _0x33947f;};'use strict';var emlformat=require(_0xd325('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xd325('0x1'));var jsonpatch=require(_0xd325('0x2'));var rp=require(_0xd325('0x3'));var moment=require(_0xd325('0x4'));var BPromise=require(_0xd325('0x5'));var Mustache=require(_0xd325('0x6'));var util=require(_0xd325('0x7'));var path=require(_0xd325('0x8'));var sox=require('sox');var csv=require(_0xd325('0x9'));var ejs=require(_0xd325('0xa'));var fs=require('fs');var fs_extra=require(_0xd325('0xb'));var _=require(_0xd325('0xc'));var squel=require(_0xd325('0xd'));var crypto=require(_0xd325('0xe'));var jsforce=require(_0xd325('0xf'));var deskjs=require(_0xd325('0x10'));var toCsv=require(_0xd325('0x9'));var querystring=require(_0xd325('0x11'));var Papa=require(_0xd325('0x12'));var Redis=require(_0xd325('0x13'));var authService=require(_0xd325('0x14'));var qs=require('../../components/parsers/qs');var as=require(_0xd325('0x15'));var hardwareService=require(_0xd325('0x16'));var logger=require(_0xd325('0x17'))(_0xd325('0x18'));var utils=require(_0xd325('0x19'));var config=require(_0xd325('0x1a'));var licenseUtil=require(_0xd325('0x1b'));var db=require(_0xd325('0x1c'))['db'];function respondWithStatusCode(_0x4f7daf,_0xeec044){_0xeec044=_0xeec044||0xcc;return function(_0x5cbada){if(_0x5cbada){return _0x4f7daf[_0xd325('0x1d')](_0xeec044);}return _0x4f7daf[_0xd325('0x1e')](_0xeec044)[_0xd325('0x1f')]();};}function respondWithResult(_0xcbb74d,_0x492446){_0x492446=_0x492446||0xc8;return function(_0x2722dc){if(_0x2722dc){return _0xcbb74d[_0xd325('0x1e')](_0x492446)[_0xd325('0x20')](_0x2722dc);}};}function respondWithFilteredResult(_0xb3cdc4,_0x2e5273){return function(_0x446d60){if(_0x446d60){var _0x111b20=typeof _0x2e5273[_0xd325('0x21')]==='undefined'&&typeof _0x2e5273[_0xd325('0x22')]===_0xd325('0x23');var _0x2bb5a3=_0x446d60[_0xd325('0x24')];var _0x4fde96=_0x111b20?0x0:_0x2e5273[_0xd325('0x21')];var _0x2c81db=_0x111b20?_0x446d60[_0xd325('0x24')]:_0x2e5273[_0xd325('0x21')]+_0x2e5273[_0xd325('0x22')];var _0x403b4f;if(_0x2c81db>=_0x2bb5a3){_0x2c81db=_0x2bb5a3;_0x403b4f=0xc8;}else{_0x403b4f=0xce;}_0xb3cdc4['status'](_0x403b4f);return _0xb3cdc4['set'](_0xd325('0x25'),_0x4fde96+'-'+_0x2c81db+'/'+_0x2bb5a3)[_0xd325('0x20')](_0x446d60);}return null;};}function patchUpdates(_0x58ae8c){return function(_0x3fc3c2){try{jsonpatch[_0xd325('0x26')](_0x3fc3c2,_0x58ae8c,!![]);}catch(_0x2e29bb){return BPromise[_0xd325('0x27')](_0x2e29bb);}return _0x3fc3c2[_0xd325('0x28')]();};}function saveUpdates(_0x53c1dd,_0xf32d0){return function(_0x306d29){if(_0x306d29){return _0x306d29[_0xd325('0x29')](_0x53c1dd)[_0xd325('0x2a')](function(_0x52948e){return _0x52948e;});}return null;};}function removeEntity(_0x2799d1,_0x143048){return function(_0x24b9c4){if(_0x24b9c4){return _0x24b9c4[_0xd325('0x2b')]()[_0xd325('0x2a')](function(){var _0x7261d9=_0x24b9c4[_0xd325('0x2c')]({'plain':!![]});var _0x365a19=_0xd325('0x2d');return db[_0xd325('0x2e')][_0xd325('0x2b')]({'where':{'type':_0x365a19,'resourceId':_0x7261d9['id']}})['then'](function(){return _0x24b9c4;});})[_0xd325('0x2a')](function(){_0x2799d1[_0xd325('0x1e')](0xcc)['end']();});}};}function handleEntityNotFound(_0x4c42d7,_0x5b8201){return function(_0x499d1d){if(!_0x499d1d){_0x4c42d7[_0xd325('0x1d')](0x194);}return _0x499d1d;};}function handleError(_0x28dc79,_0x25dd6b){_0x25dd6b=_0x25dd6b||0x1f4;return function(_0x3b828d){logger[_0xd325('0x2f')](_0x3b828d[_0xd325('0x30')]);if(_0x3b828d[_0xd325('0x31')]){delete _0x3b828d[_0xd325('0x31')];}_0x28dc79['status'](_0x25dd6b)[_0xd325('0x32')](_0x3b828d);};}exports[_0xd325('0x33')]=function(_0x4ace9d,_0x539115){var _0x500d4f={},_0x1fb25d={},_0x47174a={'count':0x0,'rows':[]};var _0x56de36=_[_0xd325('0x34')](db[_0xd325('0x35')][_0xd325('0x36')],function(_0x2cc4be){return{'name':_0x2cc4be['fieldName'],'type':_0x2cc4be[_0xd325('0x37')][_0xd325('0x38')]};});_0x1fb25d[_0xd325('0x39')]=_['map'](_0x56de36,'name');_0x1fb25d[_0xd325('0x3a')]=_[_0xd325('0x3b')](_0x4ace9d[_0xd325('0x3a')]);_0x1fb25d[_0xd325('0x3c')]=_[_0xd325('0x3d')](_0x1fb25d['model'],_0x1fb25d[_0xd325('0x3a')]);_0x500d4f[_0xd325('0x3e')]=_[_0xd325('0x3d')](_0x1fb25d[_0xd325('0x39')],qs['fields'](_0x4ace9d[_0xd325('0x3a')][_0xd325('0x3f')]));_0x500d4f['attributes']=_0x500d4f['attributes']['length']?_0x500d4f['attributes']:_0x1fb25d[_0xd325('0x39')];if(!_0x4ace9d[_0xd325('0x3a')][_0xd325('0x40')](_0xd325('0x41'))){_0x500d4f[_0xd325('0x22')]=qs[_0xd325('0x22')](_0x4ace9d[_0xd325('0x3a')][_0xd325('0x22')]);_0x500d4f[_0xd325('0x21')]=qs[_0xd325('0x21')](_0x4ace9d[_0xd325('0x3a')][_0xd325('0x21')]);}_0x500d4f['order']=qs['sort'](_0x4ace9d[_0xd325('0x3a')][_0xd325('0x42')]);_0x500d4f[_0xd325('0x43')]=qs[_0xd325('0x3c')](_[_0xd325('0x44')](_0x4ace9d[_0xd325('0x3a')],_0x1fb25d[_0xd325('0x3c')]),_0x56de36);if(_0x4ace9d[_0xd325('0x3a')]['filter']){_0x500d4f[_0xd325('0x43')]=_[_0xd325('0x45')](_0x500d4f[_0xd325('0x43')],{'$or':_[_0xd325('0x34')](_0x56de36,function(_0x1ee704){if(_0x1ee704['type']!==_0xd325('0x46')){var _0xb295a={};_0xb295a[_0x1ee704[_0xd325('0x31')]]={'$like':'%'+_0x4ace9d[_0xd325('0x3a')]['filter']+'%'};return _0xb295a;}})});}_0x500d4f=_[_0xd325('0x45')]({},_0x500d4f,_0x4ace9d['options']);var _0x4743b3={'where':_0x500d4f[_0xd325('0x43')]};return db[_0xd325('0x35')][_0xd325('0x24')](_0x4743b3)[_0xd325('0x2a')](function(_0x4b3f56){_0x47174a['count']=_0x4b3f56;if(_0x4ace9d[_0xd325('0x3a')][_0xd325('0x47')]){_0x500d4f[_0xd325('0x48')]=[{'all':!![]}];}return db[_0xd325('0x35')][_0xd325('0x49')](_0x500d4f);})[_0xd325('0x2a')](function(_0x241703){_0x47174a[_0xd325('0x4a')]=_0x241703;return _0x47174a;})[_0xd325('0x2a')](respondWithFilteredResult(_0x539115,_0x500d4f))['catch'](handleError(_0x539115,null));};exports[_0xd325('0x4b')]=function(_0x54a9a8,_0xefbc61){var _0x48ab1b={'raw':!![],'where':{'id':_0x54a9a8['params']['id']}},_0x1cf4e4={};_0x1cf4e4[_0xd325('0x39')]=_[_0xd325('0x3b')](db[_0xd325('0x35')]['rawAttributes']);_0x1cf4e4['query']=_[_0xd325('0x3b')](_0x54a9a8[_0xd325('0x3a')]);_0x1cf4e4['filters']=_[_0xd325('0x3d')](_0x1cf4e4[_0xd325('0x39')],_0x1cf4e4['query']);_0x48ab1b[_0xd325('0x3e')]=_[_0xd325('0x3d')](_0x1cf4e4[_0xd325('0x39')],qs[_0xd325('0x3f')](_0x54a9a8[_0xd325('0x3a')]['fields']));_0x48ab1b[_0xd325('0x3e')]=_0x48ab1b[_0xd325('0x3e')]['length']?_0x48ab1b[_0xd325('0x3e')]:_0x1cf4e4['model'];if(_0x54a9a8[_0xd325('0x3a')][_0xd325('0x47')]){_0x48ab1b[_0xd325('0x48')]=[{'all':!![]}];}_0x48ab1b=_[_0xd325('0x45')]({},_0x48ab1b,_0x54a9a8[_0xd325('0x4c')]);return db[_0xd325('0x35')][_0xd325('0x4d')](_0x48ab1b)['then'](handleEntityNotFound(_0xefbc61,null))[_0xd325('0x2a')](respondWithResult(_0xefbc61,null))[_0xd325('0x4e')](handleError(_0xefbc61,null));};exports['create']=function(_0x23bd23,_0x563ac3){return db[_0xd325('0x35')][_0xd325('0x4f')](_0x23bd23[_0xd325('0x50')],{})['then'](function(_0x8c53a2){var _0x2e575a=_0x23bd23['user'][_0xd325('0x2c')]({'plain':!![]});if(!_0x2e575a)throw new Error(_0xd325('0x51'));if(_0x2e575a[_0xd325('0x52')]==='user'){var _0x1e5e96=_0x8c53a2[_0xd325('0x2c')]({'plain':!![]});var _0x2cae12='Pauses';return db[_0xd325('0x53')][_0xd325('0x4d')]({'where':{'name':_0x2cae12,'userProfileId':_0x2e575a[_0xd325('0x54')]},'raw':!![]})[_0xd325('0x2a')](function(_0x19d6f5){if(_0x19d6f5&&_0x19d6f5[_0xd325('0x55')]===0x0){return db['UserProfileResource'][_0xd325('0x4f')]({'name':_0x1e5e96[_0xd325('0x31')],'resourceId':_0x1e5e96['id'],'type':_0x19d6f5[_0xd325('0x31')],'sectionId':_0x19d6f5['id']},{})[_0xd325('0x2a')](function(){return _0x8c53a2;});}else{return _0x8c53a2;}})[_0xd325('0x4e')](function(_0x246760){logger[_0xd325('0x2f')](_0xd325('0x56'),_0x246760);throw _0x246760;});}return _0x8c53a2;})['then'](respondWithResult(_0x563ac3,0xc9))[_0xd325('0x4e')](handleError(_0x563ac3,null));};exports[_0xd325('0x29')]=function(_0x41de87,_0x1c0bf4){if(_0x41de87[_0xd325('0x50')]['id']){delete _0x41de87['body']['id'];}return db[_0xd325('0x35')][_0xd325('0x4d')]({'where':{'id':_0x41de87[_0xd325('0x57')]['id']}})[_0xd325('0x2a')](handleEntityNotFound(_0x1c0bf4,null))[_0xd325('0x2a')](saveUpdates(_0x41de87['body'],null))[_0xd325('0x2a')](respondWithResult(_0x1c0bf4,null))[_0xd325('0x4e')](handleError(_0x1c0bf4,null));};exports[_0xd325('0x2b')]=function(_0x1aa2fc,_0x564378){return db[_0xd325('0x35')][_0xd325('0x4d')]({'where':{'id':_0x1aa2fc['params']['id']}})[_0xd325('0x2a')](handleEntityNotFound(_0x564378,null))['then'](removeEntity(_0x564378,null))[_0xd325('0x4e')](handleError(_0x564378,null));};