Built motion from commit c1aa34a0.|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 _0x63b2=['UserProfileResource','error','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','sox','to-csv','ejs','crypto','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','end','json','offset','undefined','limit','count','status','set','Content-Range','apply','reject','save','update','then','destroy','Pauses','send','index','map','Pause','rawAttributes','fieldName','type','key','name','query','keys','intersection','model','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filters','filter','merge','VIRTUAL','options','include','findAll','catch','show','params','includeAll','find','create','body','role','user','get','UserProfileSection','userProfileId','autoAssociation'];(function(_0x3de167,_0x1ef0fd){var _0x1ea3d=function(_0x3b3eee){while(--_0x3b3eee){_0x3de167['push'](_0x3de167['shift']());}};_0x1ea3d(++_0x1ef0fd);}(_0x63b2,0x157));var _0x263b=function(_0x4c40e6,_0x5adfe8){_0x4c40e6=_0x4c40e6-0x0;var _0x55528b=_0x63b2[_0x4c40e6];return _0x55528b;};'use strict';var emlformat=require(_0x263b('0x0'));var rimraf=require(_0x263b('0x1'));var zipdir=require(_0x263b('0x2'));var jsonpatch=require(_0x263b('0x3'));var rp=require(_0x263b('0x4'));var moment=require('moment');var BPromise=require(_0x263b('0x5'));var Mustache=require(_0x263b('0x6'));var util=require(_0x263b('0x7'));var path=require('path');var sox=require(_0x263b('0x8'));var csv=require(_0x263b('0x9'));var ejs=require(_0x263b('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require('squel');var crypto=require(_0x263b('0xb'));var jsforce=require('jsforce');var deskjs=require(_0x263b('0xc'));var toCsv=require('to-csv');var querystring=require(_0x263b('0xd'));var Papa=require('papaparse');var Redis=require(_0x263b('0xe'));var authService=require(_0x263b('0xf'));var qs=require(_0x263b('0x10'));var as=require(_0x263b('0x11'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x263b('0x12'))(_0x263b('0x13'));var utils=require(_0x263b('0x14'));var config=require(_0x263b('0x15'));var licenseUtil=require('../../config/license/util');var db=require(_0x263b('0x16'))['db'];function respondWithStatusCode(_0x5a9a8e,_0x3f37c0){_0x3f37c0=_0x3f37c0||0xcc;return function(_0x49f6c5){if(_0x49f6c5){return _0x5a9a8e[_0x263b('0x17')](_0x3f37c0);}return _0x5a9a8e['status'](_0x3f37c0)[_0x263b('0x18')]();};}function respondWithResult(_0x5b6df3,_0x2b1fbd){_0x2b1fbd=_0x2b1fbd||0xc8;return function(_0x1f7f5e){if(_0x1f7f5e){return _0x5b6df3['status'](_0x2b1fbd)[_0x263b('0x19')](_0x1f7f5e);}};}function respondWithFilteredResult(_0x4956b5,_0x5ae208){return function(_0x171793){if(_0x171793){var _0x3afee4=typeof _0x5ae208[_0x263b('0x1a')]===_0x263b('0x1b')&&typeof _0x5ae208[_0x263b('0x1c')]===_0x263b('0x1b');var _0x149d9=_0x171793[_0x263b('0x1d')];var _0x21fc6c=_0x3afee4?0x0:_0x5ae208[_0x263b('0x1a')];var _0xe8d0fe=_0x3afee4?_0x171793[_0x263b('0x1d')]:_0x5ae208[_0x263b('0x1a')]+_0x5ae208['limit'];var _0x16712e;if(_0xe8d0fe>=_0x149d9){_0xe8d0fe=_0x149d9;_0x16712e=0xc8;}else{_0x16712e=0xce;}_0x4956b5[_0x263b('0x1e')](_0x16712e);return _0x4956b5[_0x263b('0x1f')](_0x263b('0x20'),_0x21fc6c+'-'+_0xe8d0fe+'/'+_0x149d9)[_0x263b('0x19')](_0x171793);}return null;};}function patchUpdates(_0x443e27){return function(_0x16f2cc){try{jsonpatch[_0x263b('0x21')](_0x16f2cc,_0x443e27,!![]);}catch(_0x36495c){return BPromise[_0x263b('0x22')](_0x36495c);}return _0x16f2cc[_0x263b('0x23')]();};}function saveUpdates(_0x12518a,_0x5a160e){return function(_0x80a7ff){if(_0x80a7ff){return _0x80a7ff[_0x263b('0x24')](_0x12518a)[_0x263b('0x25')](function(_0x5a4033){return _0x5a4033;});}return null;};}function removeEntity(_0xf9af14,_0x4d2e6f){return function(_0x4d68bf){if(_0x4d68bf){return _0x4d68bf[_0x263b('0x26')]()['then'](function(){var _0x5b461e=_0x4d68bf['get']({'plain':!![]});var _0x3163a2=_0x263b('0x27');return db['UserProfileResource'][_0x263b('0x26')]({'where':{'type':_0x3163a2,'resourceId':_0x5b461e['id']}})[_0x263b('0x25')](function(){return _0x4d68bf;});})['then'](function(){_0xf9af14[_0x263b('0x1e')](0xcc)[_0x263b('0x18')]();});}};}function handleEntityNotFound(_0x587e96,_0x49ebbc){return function(_0x24d33b){if(!_0x24d33b){_0x587e96[_0x263b('0x17')](0x194);}return _0x24d33b;};}function handleError(_0x34bfcb,_0x1defcf){_0x1defcf=_0x1defcf||0x1f4;return function(_0x502d49){logger['error'](_0x502d49['stack']);if(_0x502d49['name']){delete _0x502d49['name'];}_0x34bfcb[_0x263b('0x1e')](_0x1defcf)[_0x263b('0x28')](_0x502d49);};}exports[_0x263b('0x29')]=function(_0x28bd0b,_0x59d6e1){var _0x48e639={},_0x129214={},_0x549dcf={'count':0x0,'rows':[]};var _0xca71b8=_[_0x263b('0x2a')](db[_0x263b('0x2b')][_0x263b('0x2c')],function(_0x3bd7ea){return{'name':_0x3bd7ea[_0x263b('0x2d')],'type':_0x3bd7ea[_0x263b('0x2e')][_0x263b('0x2f')]};});_0x129214['model']=_[_0x263b('0x2a')](_0xca71b8,_0x263b('0x30'));_0x129214[_0x263b('0x31')]=_[_0x263b('0x32')](_0x28bd0b[_0x263b('0x31')]);_0x129214['filters']=_[_0x263b('0x33')](_0x129214[_0x263b('0x34')],_0x129214[_0x263b('0x31')]);_0x48e639['attributes']=_[_0x263b('0x33')](_0x129214['model'],qs[_0x263b('0x35')](_0x28bd0b[_0x263b('0x31')][_0x263b('0x35')]));_0x48e639[_0x263b('0x36')]=_0x48e639[_0x263b('0x36')][_0x263b('0x37')]?_0x48e639['attributes']:_0x129214[_0x263b('0x34')];if(!_0x28bd0b[_0x263b('0x31')][_0x263b('0x38')](_0x263b('0x39'))){_0x48e639[_0x263b('0x1c')]=qs[_0x263b('0x1c')](_0x28bd0b[_0x263b('0x31')][_0x263b('0x1c')]);_0x48e639[_0x263b('0x1a')]=qs[_0x263b('0x1a')](_0x28bd0b[_0x263b('0x31')][_0x263b('0x1a')]);}_0x48e639[_0x263b('0x3a')]=qs[_0x263b('0x3b')](_0x28bd0b['query'][_0x263b('0x3b')]);_0x48e639[_0x263b('0x3c')]=qs['filters'](_[_0x263b('0x3d')](_0x28bd0b[_0x263b('0x31')],_0x129214[_0x263b('0x3e')]),_0xca71b8);if(_0x28bd0b[_0x263b('0x31')][_0x263b('0x3f')]){_0x48e639['where']=_[_0x263b('0x40')](_0x48e639[_0x263b('0x3c')],{'$or':_['map'](_0xca71b8,function(_0x42783b){if(_0x42783b[_0x263b('0x2e')]!==_0x263b('0x41')){var _0x2d71f5={};_0x2d71f5[_0x42783b[_0x263b('0x30')]]={'$like':'%'+_0x28bd0b[_0x263b('0x31')][_0x263b('0x3f')]+'%'};return _0x2d71f5;}})});}_0x48e639=_[_0x263b('0x40')]({},_0x48e639,_0x28bd0b[_0x263b('0x42')]);var _0x3daf31={'where':_0x48e639[_0x263b('0x3c')]};return db['Pause'][_0x263b('0x1d')](_0x3daf31)['then'](function(_0x12e8e8){_0x549dcf['count']=_0x12e8e8;if(_0x28bd0b[_0x263b('0x31')]['includeAll']){_0x48e639[_0x263b('0x43')]=[{'all':!![]}];}return db[_0x263b('0x2b')][_0x263b('0x44')](_0x48e639);})[_0x263b('0x25')](function(_0x30027e){_0x549dcf['rows']=_0x30027e;return _0x549dcf;})[_0x263b('0x25')](respondWithFilteredResult(_0x59d6e1,_0x48e639))[_0x263b('0x45')](handleError(_0x59d6e1,null));};exports[_0x263b('0x46')]=function(_0x341eeb,_0x2c9a95){var _0x42e475={'raw':!![],'where':{'id':_0x341eeb[_0x263b('0x47')]['id']}},_0x4c84ee={};_0x4c84ee[_0x263b('0x34')]=_[_0x263b('0x32')](db[_0x263b('0x2b')][_0x263b('0x2c')]);_0x4c84ee[_0x263b('0x31')]=_['keys'](_0x341eeb[_0x263b('0x31')]);_0x4c84ee[_0x263b('0x3e')]=_['intersection'](_0x4c84ee[_0x263b('0x34')],_0x4c84ee[_0x263b('0x31')]);_0x42e475[_0x263b('0x36')]=_[_0x263b('0x33')](_0x4c84ee[_0x263b('0x34')],qs[_0x263b('0x35')](_0x341eeb[_0x263b('0x31')][_0x263b('0x35')]));_0x42e475[_0x263b('0x36')]=_0x42e475['attributes'][_0x263b('0x37')]?_0x42e475[_0x263b('0x36')]:_0x4c84ee[_0x263b('0x34')];if(_0x341eeb[_0x263b('0x31')][_0x263b('0x48')]){_0x42e475[_0x263b('0x43')]=[{'all':!![]}];}_0x42e475=_[_0x263b('0x40')]({},_0x42e475,_0x341eeb[_0x263b('0x42')]);return db[_0x263b('0x2b')][_0x263b('0x49')](_0x42e475)[_0x263b('0x25')](handleEntityNotFound(_0x2c9a95,null))['then'](respondWithResult(_0x2c9a95,null))['catch'](handleError(_0x2c9a95,null));};exports[_0x263b('0x4a')]=function(_0x581429,_0x3120c6){return db[_0x263b('0x2b')][_0x263b('0x4a')](_0x581429[_0x263b('0x4b')],{})[_0x263b('0x25')](function(_0x3597c1){var _0x1bf3a=_0x581429['user']['get']({'plain':!![]});if(!_0x1bf3a)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x1bf3a[_0x263b('0x4c')]===_0x263b('0x4d')){var _0xfe13df=_0x3597c1[_0x263b('0x4e')]({'plain':!![]});var _0x5c7ed0=_0x263b('0x27');return db[_0x263b('0x4f')][_0x263b('0x49')]({'where':{'name':_0x5c7ed0,'userProfileId':_0x1bf3a[_0x263b('0x50')]},'raw':!![]})[_0x263b('0x25')](function(_0x32d7e5){if(_0x32d7e5&&_0x32d7e5[_0x263b('0x51')]===0x0){return db[_0x263b('0x52')][_0x263b('0x4a')]({'name':_0xfe13df['name'],'resourceId':_0xfe13df['id'],'type':_0x32d7e5[_0x263b('0x30')],'sectionId':_0x32d7e5['id']},{})['then'](function(){return _0x3597c1;});}else{return _0x3597c1;}})[_0x263b('0x45')](function(_0x5094d3){logger[_0x263b('0x53')](_0x263b('0x54'),_0x5094d3);throw _0x5094d3;});}return _0x3597c1;})[_0x263b('0x25')](respondWithResult(_0x3120c6,0xc9))[_0x263b('0x45')](handleError(_0x3120c6,null));};exports['update']=function(_0x24efd7,_0x30dd52){if(_0x24efd7['body']['id']){delete _0x24efd7[_0x263b('0x4b')]['id'];}return db[_0x263b('0x2b')][_0x263b('0x49')]({'where':{'id':_0x24efd7['params']['id']}})[_0x263b('0x25')](handleEntityNotFound(_0x30dd52,null))[_0x263b('0x25')](saveUpdates(_0x24efd7[_0x263b('0x4b')],null))[_0x263b('0x25')](respondWithResult(_0x30dd52,null))[_0x263b('0x45')](handleError(_0x30dd52,null));};exports['destroy']=function(_0x47add8,_0x22c99d){return db[_0x263b('0x2b')][_0x263b('0x49')]({'where':{'id':_0x47add8[_0x263b('0x47')]['id']}})[_0x263b('0x25')](handleEntityNotFound(_0x22c99d,null))['then'](removeEntity(_0x22c99d,null))[_0x263b('0x45')](handleError(_0x22c99d,null));};