Built motion from commit (unavailable).|2.3.1
[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 _0x3418=['crypto','desk.js','papaparse','../../config/license/hardware','ioredis','../../components/parsers/qs','../../config/logger','api','sendStatus','status','count','offset','set','Content-Range','save','then','destroy','get','Pauses','UserProfileResource','end','error','stack','name','send','index','Pause','model','keys','query','filters','intersection','attributes','hasOwnProperty','nolimit','limit','order','sort','pick','where','map','type','key','VIRTUAL','merge','options','include','rows','show','params','rawAttributes','fields','length','includeAll','catch','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','find','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','update','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','mustache','sox','to-csv','lodash','squel'];(function(_0x1c908e,_0x39024e){var _0x592a8a=function(_0x3efa7a){while(--_0x3efa7a){_0x1c908e['push'](_0x1c908e['shift']());}};_0x592a8a(++_0x39024e);}(_0x3418,0x8d));var _0x8341=function(_0x2a6320,_0x31db15){_0x2a6320=_0x2a6320-0x0;var _0x42c239=_0x3418[_0x2a6320];return _0x42c239;};'use strict';var pdf=require(_0x8341('0x0'));var emlformat=require(_0x8341('0x1'));var rimraf=require(_0x8341('0x2'));var zipdir=require(_0x8341('0x3'));var jsonpatch=require(_0x8341('0x4'));var rp=require(_0x8341('0x5'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x8341('0x6'));var util=require('util');var path=require('path');var sox=require(_0x8341('0x7'));var csv=require(_0x8341('0x8'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x8341('0x9'));var squel=require(_0x8341('0xa'));var crypto=require(_0x8341('0xb'));var jsforce=require('jsforce');var deskjs=require(_0x8341('0xc'));var toCsv=require(_0x8341('0x8'));var querystring=require('querystring');var Papa=require(_0x8341('0xd'));var authService=require('../../components/auth/service');var hardwareService=require(_0x8341('0xe'));var Redis=require(_0x8341('0xf'));var qs=require(_0x8341('0x10'));var logger=require(_0x8341('0x11'))(_0x8341('0x12'));var utils=require('../../config/utils');var config=require('../../config/environment');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x4d3478,_0x2bd291){_0x2bd291=_0x2bd291||0xcc;return function(_0x8746da){if(_0x8746da){return _0x4d3478[_0x8341('0x13')](_0x2bd291);}return _0x4d3478[_0x8341('0x14')](_0x2bd291)['end']();};}function respondWithResult(_0x1da2ff,_0x36249e){_0x36249e=_0x36249e||0xc8;return function(_0xee13db){if(_0xee13db){return _0x1da2ff['status'](_0x36249e)['json'](_0xee13db);}};}function respondWithFilteredResult(_0x1215e6,_0x14246c){return function(_0x4a3e3c){if(_0x4a3e3c){var _0x4c2737=_0x4a3e3c[_0x8341('0x15')],_0x49a19c=_0x14246c[_0x8341('0x16')],_0x53635a=_0x14246c[_0x8341('0x16')]+_0x14246c['limit'],_0x48b7cd;if(_0x53635a>=_0x4c2737){_0x53635a=_0x4c2737;_0x48b7cd=0xc8;}else{_0x48b7cd=0xce;}_0x1215e6[_0x8341('0x14')](_0x48b7cd);return _0x1215e6[_0x8341('0x17')](_0x8341('0x18'),_0x49a19c+'-'+_0x53635a+'/'+_0x4c2737)['json'](_0x4a3e3c);}return null;};}function patchUpdates(_0x18336d){return function(_0x52a171){try{jsonpatch['apply'](_0x52a171,_0x18336d,!![]);}catch(_0x7c8ab7){return BPromise['reject'](_0x7c8ab7);}return _0x52a171[_0x8341('0x19')]();};}function saveUpdates(_0x599c42,_0x305290){return function(_0x49c5ec){if(_0x49c5ec){return _0x49c5ec['update'](_0x599c42)[_0x8341('0x1a')](function(_0x252bb6){return _0x252bb6;});}return null;};}function removeEntity(_0x281047,_0x19bd6a){return function(_0x1875c8){if(_0x1875c8){return _0x1875c8[_0x8341('0x1b')]()[_0x8341('0x1a')](function(){var _0x1d4edd=_0x1875c8[_0x8341('0x1c')]({'plain':!![]});var _0x18db66=_0x8341('0x1d');return db[_0x8341('0x1e')][_0x8341('0x1b')]({'where':{'type':_0x18db66,'resourceId':_0x1d4edd['id']}})[_0x8341('0x1a')](function(){return _0x1875c8;});})[_0x8341('0x1a')](function(){_0x281047[_0x8341('0x14')](0xcc)[_0x8341('0x1f')]();});}};}function handleEntityNotFound(_0x1df429,_0x138c43){return function(_0x6e8c38){if(!_0x6e8c38){_0x1df429['sendStatus'](0x194);}return _0x6e8c38;};}function handleError(_0x111712,_0x8ebc4f){_0x8ebc4f=_0x8ebc4f||0x1f4;return function(_0x1cd26c){logger[_0x8341('0x20')](_0x1cd26c[_0x8341('0x21')]);if(_0x1cd26c['name']){delete _0x1cd26c[_0x8341('0x22')];}_0x111712['status'](_0x8ebc4f)[_0x8341('0x23')](_0x1cd26c);};}exports[_0x8341('0x24')]=function(_0x1d1c6d,_0xe5e23){var _0x489576={},_0x49e37a={},_0x329bf8={'count':0x0,'rows':[]};var _0x478c81=db[_0x8341('0x25')]['rawAttributes'];_0x49e37a[_0x8341('0x26')]=_[_0x8341('0x27')](_0x478c81);_0x49e37a['query']=_[_0x8341('0x27')](_0x1d1c6d[_0x8341('0x28')]);_0x49e37a[_0x8341('0x29')]=_[_0x8341('0x2a')](_0x49e37a['model'],_0x49e37a['query']);_0x489576[_0x8341('0x2b')]=_[_0x8341('0x2a')](_0x49e37a[_0x8341('0x26')],qs['fields'](_0x1d1c6d['query']['fields']));_0x489576['attributes']=_0x489576[_0x8341('0x2b')]['length']?_0x489576[_0x8341('0x2b')]:_0x49e37a[_0x8341('0x26')];if(!_0x1d1c6d[_0x8341('0x28')][_0x8341('0x2c')](_0x8341('0x2d'))){_0x489576[_0x8341('0x2e')]=qs[_0x8341('0x2e')](_0x1d1c6d[_0x8341('0x28')][_0x8341('0x2e')]);_0x489576[_0x8341('0x16')]=qs[_0x8341('0x16')](_0x1d1c6d[_0x8341('0x28')]['offset']);}_0x489576[_0x8341('0x2f')]=qs[_0x8341('0x30')](_0x1d1c6d[_0x8341('0x28')][_0x8341('0x30')]);_0x489576['where']=qs['filters'](_[_0x8341('0x31')](_0x1d1c6d['query'],_0x49e37a[_0x8341('0x29')]));if(_0x1d1c6d[_0x8341('0x28')]['filter']){_0x489576[_0x8341('0x32')]=_['merge'](_0x489576['where'],{'$or':_[_0x8341('0x33')](_0x478c81,function(_0x19c5bd){if(_0x19c5bd[_0x8341('0x34')][_0x8341('0x35')]!==_0x8341('0x36')){var _0x5d01c5={};_0x5d01c5[_0x19c5bd['field']]={'$like':'%'+_0x1d1c6d[_0x8341('0x28')]['filter']+'%'};return _0x5d01c5;}})});}_0x489576=_[_0x8341('0x37')]({},_0x489576,_0x1d1c6d[_0x8341('0x38')]);var _0x334922={'where':_0x489576[_0x8341('0x32')]};return db[_0x8341('0x25')]['count'](_0x334922)[_0x8341('0x1a')](function(_0xb94e2f){_0x329bf8[_0x8341('0x15')]=_0xb94e2f;if(_0x1d1c6d[_0x8341('0x28')]['includeAll']){_0x489576[_0x8341('0x39')]=[{'all':!![]}];}return db[_0x8341('0x25')]['findAll'](_0x489576);})['then'](function(_0xa45054){_0x329bf8[_0x8341('0x3a')]=_0xa45054;return _0x329bf8;})['then'](respondWithFilteredResult(_0xe5e23,_0x489576))['catch'](handleError(_0xe5e23,null));};exports[_0x8341('0x3b')]=function(_0x1db7fc,_0x106968){var _0x2b10f2={'raw':!![],'where':{'id':_0x1db7fc[_0x8341('0x3c')]['id']}},_0x4cd838={};_0x4cd838['model']=_[_0x8341('0x27')](db['Pause'][_0x8341('0x3d')]);_0x4cd838['query']=_[_0x8341('0x27')](_0x1db7fc['query']);_0x4cd838[_0x8341('0x29')]=_[_0x8341('0x2a')](_0x4cd838[_0x8341('0x26')],_0x4cd838[_0x8341('0x28')]);_0x2b10f2[_0x8341('0x2b')]=_[_0x8341('0x2a')](_0x4cd838[_0x8341('0x26')],qs[_0x8341('0x3e')](_0x1db7fc[_0x8341('0x28')]['fields']));_0x2b10f2['attributes']=_0x2b10f2[_0x8341('0x2b')][_0x8341('0x3f')]?_0x2b10f2[_0x8341('0x2b')]:_0x4cd838[_0x8341('0x26')];if(_0x1db7fc['query'][_0x8341('0x40')]){_0x2b10f2['include']=[{'all':!![]}];}_0x2b10f2=_[_0x8341('0x37')]({},_0x2b10f2,_0x1db7fc[_0x8341('0x38')]);return db['Pause']['find'](_0x2b10f2)[_0x8341('0x1a')](handleEntityNotFound(_0x106968,null))[_0x8341('0x1a')](respondWithResult(_0x106968,null))[_0x8341('0x41')](handleError(_0x106968,null));};exports['create']=function(_0x14404b,_0x3661ec){return db[_0x8341('0x25')][_0x8341('0x42')](_0x14404b[_0x8341('0x43')],{})[_0x8341('0x1a')](function(_0x2e47ea){var _0x3fce4b=_0x14404b[_0x8341('0x44')][_0x8341('0x1c')]({'plain':!![]});if(!_0x3fce4b)throw new Error(_0x8341('0x45'));if(_0x3fce4b[_0x8341('0x46')]===_0x8341('0x44')){var _0xdc96c2=_0x2e47ea[_0x8341('0x1c')]({'plain':!![]});var _0x29d310=_0x8341('0x1d');return db[_0x8341('0x47')][_0x8341('0x48')]({'where':{'name':_0x29d310,'userProfileId':_0x3fce4b['userProfileId']},'raw':!![]})[_0x8341('0x1a')](function(_0x420b27){if(_0x420b27&&_0x420b27[_0x8341('0x49')]===0x0){return db[_0x8341('0x1e')][_0x8341('0x42')]({'name':_0xdc96c2[_0x8341('0x22')],'resourceId':_0xdc96c2['id'],'type':_0x420b27[_0x8341('0x22')],'sectionId':_0x420b27['id']},{})[_0x8341('0x1a')](function(){return _0x2e47ea;});}else{return _0x2e47ea;}})[_0x8341('0x41')](function(_0x21857e){logger[_0x8341('0x20')](_0x8341('0x4a'),_0x21857e);throw _0x21857e;});}return _0x2e47ea;})['then'](respondWithResult(_0x3661ec,0xc9))[_0x8341('0x41')](handleError(_0x3661ec,null));};exports[_0x8341('0x4b')]=function(_0x41f351,_0x3d9e19){if(_0x41f351[_0x8341('0x43')]['id']){delete _0x41f351[_0x8341('0x43')]['id'];}return db['Pause'][_0x8341('0x48')]({'where':{'id':_0x41f351['params']['id']}})[_0x8341('0x1a')](handleEntityNotFound(_0x3d9e19,null))[_0x8341('0x1a')](saveUpdates(_0x41f351[_0x8341('0x43')],null))['then'](respondWithResult(_0x3d9e19,null))[_0x8341('0x41')](handleError(_0x3d9e19,null));};exports[_0x8341('0x1b')]=function(_0x59aea2,_0x12d6b6){return db['Pause'][_0x8341('0x48')]({'where':{'id':_0x59aea2[_0x8341('0x3c')]['id']}})[_0x8341('0x1a')](handleEntityNotFound(_0x12d6b6,null))['then'](removeEntity(_0x12d6b6,null))[_0x8341('0x41')](handleError(_0x12d6b6,null));};