Built motion from commit d1eab355.|2.6.28
[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 _0x4212=['order','sort','where','pick','merge','type','VIRTUAL','options','includeAll','include','findAll','rows','catch','show','find','create','body','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','UserProfileSection','autoAssociation','name','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','update','params','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','json','offset','undefined','limit','count','Content-Range','apply','save','then','destroy','Pauses','UserProfileResource','end','sendStatus','error','stack','send','index','map','Pause','fieldName','key','keys','query','filters','intersection','attributes','model','fields','length','hasOwnProperty'];(function(_0x1fa54e,_0x410468){var _0x2373c6=function(_0x5284a4){while(--_0x5284a4){_0x1fa54e['push'](_0x1fa54e['shift']());}};_0x2373c6(++_0x410468);}(_0x4212,0x1ce));var _0x2421=function(_0x550d12,_0x5384bd){_0x550d12=_0x550d12-0x0;var _0x12103d=_0x4212[_0x550d12];return _0x12103d;};'use strict';var emlformat=require(_0x2421('0x0'));var rimraf=require(_0x2421('0x1'));var zipdir=require(_0x2421('0x2'));var jsonpatch=require(_0x2421('0x3'));var rp=require(_0x2421('0x4'));var moment=require('moment');var BPromise=require(_0x2421('0x5'));var Mustache=require(_0x2421('0x6'));var util=require(_0x2421('0x7'));var path=require(_0x2421('0x8'));var sox=require('sox');var csv=require(_0x2421('0x9'));var ejs=require(_0x2421('0xa'));var fs=require('fs');var fs_extra=require(_0x2421('0xb'));var _=require(_0x2421('0xc'));var squel=require(_0x2421('0xd'));var crypto=require(_0x2421('0xe'));var jsforce=require(_0x2421('0xf'));var deskjs=require(_0x2421('0x10'));var toCsv=require(_0x2421('0x9'));var querystring=require(_0x2421('0x11'));var Papa=require(_0x2421('0x12'));var Redis=require(_0x2421('0x13'));var authService=require(_0x2421('0x14'));var qs=require(_0x2421('0x15'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x2421('0x16'));var logger=require(_0x2421('0x17'))('api');var utils=require(_0x2421('0x18'));var config=require(_0x2421('0x19'));var licenseUtil=require(_0x2421('0x1a'));var db=require(_0x2421('0x1b'))['db'];function respondWithStatusCode(_0x4ba731,_0x738dc8){_0x738dc8=_0x738dc8||0xcc;return function(_0x3343d3){if(_0x3343d3){return _0x4ba731['sendStatus'](_0x738dc8);}return _0x4ba731[_0x2421('0x1c')](_0x738dc8)['end']();};}function respondWithResult(_0x4a207b,_0x451d62){_0x451d62=_0x451d62||0xc8;return function(_0x33de16){if(_0x33de16){return _0x4a207b[_0x2421('0x1c')](_0x451d62)[_0x2421('0x1d')](_0x33de16);}};}function respondWithFilteredResult(_0x673934,_0x5dcaa3){return function(_0x20c7e2){if(_0x20c7e2){var _0x3ff606=typeof _0x5dcaa3[_0x2421('0x1e')]===_0x2421('0x1f')&&typeof _0x5dcaa3[_0x2421('0x20')]===_0x2421('0x1f');var _0x431868=_0x20c7e2['count'];var _0x288e76=_0x3ff606?0x0:_0x5dcaa3[_0x2421('0x1e')];var _0x4b4a94=_0x3ff606?_0x20c7e2[_0x2421('0x21')]:_0x5dcaa3['offset']+_0x5dcaa3[_0x2421('0x20')];var _0x2eec00;if(_0x4b4a94>=_0x431868){_0x4b4a94=_0x431868;_0x2eec00=0xc8;}else{_0x2eec00=0xce;}_0x673934[_0x2421('0x1c')](_0x2eec00);return _0x673934['set'](_0x2421('0x22'),_0x288e76+'-'+_0x4b4a94+'/'+_0x431868)[_0x2421('0x1d')](_0x20c7e2);}return null;};}function patchUpdates(_0x5f113c){return function(_0x225e9f){try{jsonpatch[_0x2421('0x23')](_0x225e9f,_0x5f113c,!![]);}catch(_0x126518){return BPromise['reject'](_0x126518);}return _0x225e9f[_0x2421('0x24')]();};}function saveUpdates(_0x287c6e,_0x42f19c){return function(_0x6e7b74){if(_0x6e7b74){return _0x6e7b74['update'](_0x287c6e)[_0x2421('0x25')](function(_0x2fc1db){return _0x2fc1db;});}return null;};}function removeEntity(_0x2d131f,_0x16c7cf){return function(_0x40ec75){if(_0x40ec75){return _0x40ec75[_0x2421('0x26')]()[_0x2421('0x25')](function(){var _0x2925d5=_0x40ec75['get']({'plain':!![]});var _0x20d77b=_0x2421('0x27');return db[_0x2421('0x28')]['destroy']({'where':{'type':_0x20d77b,'resourceId':_0x2925d5['id']}})[_0x2421('0x25')](function(){return _0x40ec75;});})[_0x2421('0x25')](function(){_0x2d131f['status'](0xcc)[_0x2421('0x29')]();});}};}function handleEntityNotFound(_0x41210f,_0x3e28ad){return function(_0x614ae9){if(!_0x614ae9){_0x41210f[_0x2421('0x2a')](0x194);}return _0x614ae9;};}function handleError(_0xb06f7c,_0x533229){_0x533229=_0x533229||0x1f4;return function(_0x28ed1e){logger[_0x2421('0x2b')](_0x28ed1e[_0x2421('0x2c')]);if(_0x28ed1e['name']){delete _0x28ed1e['name'];}_0xb06f7c[_0x2421('0x1c')](_0x533229)[_0x2421('0x2d')](_0x28ed1e);};}exports[_0x2421('0x2e')]=function(_0x5822da,_0x4eb49e){var _0x4b01b6={},_0x3f0740={},_0x270480={'count':0x0,'rows':[]};var _0x1a0366=_[_0x2421('0x2f')](db[_0x2421('0x30')]['rawAttributes'],function(_0x2bfe0a){return{'name':_0x2bfe0a[_0x2421('0x31')],'type':_0x2bfe0a['type'][_0x2421('0x32')]};});_0x3f0740['model']=_[_0x2421('0x2f')](_0x1a0366,'name');_0x3f0740['query']=_[_0x2421('0x33')](_0x5822da[_0x2421('0x34')]);_0x3f0740[_0x2421('0x35')]=_[_0x2421('0x36')](_0x3f0740['model'],_0x3f0740['query']);_0x4b01b6[_0x2421('0x37')]=_[_0x2421('0x36')](_0x3f0740[_0x2421('0x38')],qs[_0x2421('0x39')](_0x5822da[_0x2421('0x34')]['fields']));_0x4b01b6['attributes']=_0x4b01b6[_0x2421('0x37')][_0x2421('0x3a')]?_0x4b01b6[_0x2421('0x37')]:_0x3f0740['model'];if(!_0x5822da[_0x2421('0x34')][_0x2421('0x3b')]('nolimit')){_0x4b01b6[_0x2421('0x20')]=qs[_0x2421('0x20')](_0x5822da[_0x2421('0x34')][_0x2421('0x20')]);_0x4b01b6['offset']=qs[_0x2421('0x1e')](_0x5822da[_0x2421('0x34')]['offset']);}_0x4b01b6[_0x2421('0x3c')]=qs[_0x2421('0x3d')](_0x5822da[_0x2421('0x34')]['sort']);_0x4b01b6[_0x2421('0x3e')]=qs[_0x2421('0x35')](_[_0x2421('0x3f')](_0x5822da[_0x2421('0x34')],_0x3f0740[_0x2421('0x35')]),_0x1a0366);if(_0x5822da[_0x2421('0x34')]['filter']){_0x4b01b6[_0x2421('0x3e')]=_[_0x2421('0x40')](_0x4b01b6[_0x2421('0x3e')],{'$or':_[_0x2421('0x2f')](_0x1a0366,function(_0xe227d8){if(_0xe227d8[_0x2421('0x41')]!==_0x2421('0x42')){var _0x510866={};_0x510866[_0xe227d8['name']]={'$like':'%'+_0x5822da[_0x2421('0x34')]['filter']+'%'};return _0x510866;}})});}_0x4b01b6=_[_0x2421('0x40')]({},_0x4b01b6,_0x5822da[_0x2421('0x43')]);var _0x445130={'where':_0x4b01b6[_0x2421('0x3e')]};return db[_0x2421('0x30')]['count'](_0x445130)[_0x2421('0x25')](function(_0x2dfea1){_0x270480['count']=_0x2dfea1;if(_0x5822da[_0x2421('0x34')][_0x2421('0x44')]){_0x4b01b6[_0x2421('0x45')]=[{'all':!![]}];}return db[_0x2421('0x30')][_0x2421('0x46')](_0x4b01b6);})[_0x2421('0x25')](function(_0x5aac49){_0x270480[_0x2421('0x47')]=_0x5aac49;return _0x270480;})[_0x2421('0x25')](respondWithFilteredResult(_0x4eb49e,_0x4b01b6))[_0x2421('0x48')](handleError(_0x4eb49e,null));};exports[_0x2421('0x49')]=function(_0x547979,_0x90414e){var _0x5a2cb9={'raw':!![],'where':{'id':_0x547979['params']['id']}},_0x117e3a={};_0x117e3a[_0x2421('0x38')]=_[_0x2421('0x33')](db[_0x2421('0x30')]['rawAttributes']);_0x117e3a['query']=_[_0x2421('0x33')](_0x547979[_0x2421('0x34')]);_0x117e3a[_0x2421('0x35')]=_[_0x2421('0x36')](_0x117e3a[_0x2421('0x38')],_0x117e3a[_0x2421('0x34')]);_0x5a2cb9[_0x2421('0x37')]=_[_0x2421('0x36')](_0x117e3a[_0x2421('0x38')],qs[_0x2421('0x39')](_0x547979[_0x2421('0x34')]['fields']));_0x5a2cb9['attributes']=_0x5a2cb9['attributes'][_0x2421('0x3a')]?_0x5a2cb9['attributes']:_0x117e3a[_0x2421('0x38')];if(_0x547979[_0x2421('0x34')][_0x2421('0x44')]){_0x5a2cb9[_0x2421('0x45')]=[{'all':!![]}];}_0x5a2cb9=_['merge']({},_0x5a2cb9,_0x547979[_0x2421('0x43')]);return db[_0x2421('0x30')][_0x2421('0x4a')](_0x5a2cb9)[_0x2421('0x25')](handleEntityNotFound(_0x90414e,null))[_0x2421('0x25')](respondWithResult(_0x90414e,null))['catch'](handleError(_0x90414e,null));};exports[_0x2421('0x4b')]=function(_0x4a61c5,_0x81c65e){return db['Pause'][_0x2421('0x4b')](_0x4a61c5[_0x2421('0x4c')],{})[_0x2421('0x25')](function(_0x4af8ce){var _0x2d0c70=_0x4a61c5['user'][_0x2421('0x4d')]({'plain':!![]});if(!_0x2d0c70)throw new Error(_0x2421('0x4e'));if(_0x2d0c70[_0x2421('0x4f')]===_0x2421('0x50')){var _0x1f4926=_0x4af8ce[_0x2421('0x4d')]({'plain':!![]});var _0x2fca7c=_0x2421('0x27');return db[_0x2421('0x51')]['find']({'where':{'name':_0x2fca7c,'userProfileId':_0x2d0c70['userProfileId']},'raw':!![]})[_0x2421('0x25')](function(_0x1d50b7){if(_0x1d50b7&&_0x1d50b7[_0x2421('0x52')]===0x0){return db[_0x2421('0x28')][_0x2421('0x4b')]({'name':_0x1f4926[_0x2421('0x53')],'resourceId':_0x1f4926['id'],'type':_0x1d50b7[_0x2421('0x53')],'sectionId':_0x1d50b7['id']},{})['then'](function(){return _0x4af8ce;});}else{return _0x4af8ce;}})[_0x2421('0x48')](function(_0x2fdb22){logger[_0x2421('0x2b')](_0x2421('0x54'),_0x2fdb22);throw _0x2fdb22;});}return _0x4af8ce;})[_0x2421('0x25')](respondWithResult(_0x81c65e,0xc9))[_0x2421('0x48')](handleError(_0x81c65e,null));};exports[_0x2421('0x55')]=function(_0x271048,_0x9e74f){if(_0x271048['body']['id']){delete _0x271048[_0x2421('0x4c')]['id'];}return db[_0x2421('0x30')][_0x2421('0x4a')]({'where':{'id':_0x271048[_0x2421('0x56')]['id']}})[_0x2421('0x25')](handleEntityNotFound(_0x9e74f,null))[_0x2421('0x25')](saveUpdates(_0x271048[_0x2421('0x4c')],null))[_0x2421('0x25')](respondWithResult(_0x9e74f,null))[_0x2421('0x48')](handleError(_0x9e74f,null));};exports[_0x2421('0x26')]=function(_0x317a5d,_0xf33284){return db[_0x2421('0x30')][_0x2421('0x4a')]({'where':{'id':_0x317a5d[_0x2421('0x56')]['id']}})['then'](handleEntityNotFound(_0xf33284,null))[_0x2421('0x25')](removeEntity(_0xf33284,null))[_0x2421('0x48')](handleError(_0xf33284,null));};