Built motion from commit (unavailable).|2.5.5
[motion2.git] / server / api / schedule / schedule.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 _0xef0f=['order','sort','where','pick','merge','VIRTUAL','filter','options','includeAll','include','catch','params','intersection','find','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','userProfileId','autoAssociation','create','error','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','../../config/schedule','html-pdf','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','path','sox','to-csv','ejs','lodash','squel','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','count','offset','set','Content-Range','json','apply','reject','save','then','destroy','get','Scheduler','UserProfileResource','stack','name','send','index','Schedule','fieldName','type','keys','query','filters','attributes','model','fields','length','hasOwnProperty','nolimit','limit'];(function(_0xf64e7a,_0x55a492){var _0x2e2ab1=function(_0x9bf292){while(--_0x9bf292){_0xf64e7a['push'](_0xf64e7a['shift']());}};_0x2e2ab1(++_0x55a492);}(_0xef0f,0x168));var _0xfef0=function(_0x318b69,_0x5ae387){_0x318b69=_0x318b69-0x0;var _0x3e53b5=_0xef0f[_0x318b69];return _0x3e53b5;};'use strict';var pdf=require(_0xfef0('0x0'));var emlformat=require('eml-format');var rimraf=require(_0xfef0('0x1'));var zipdir=require(_0xfef0('0x2'));var jsonpatch=require(_0xfef0('0x3'));var rp=require('request-promise');var moment=require(_0xfef0('0x4'));var BPromise=require(_0xfef0('0x5'));var Mustache=require(_0xfef0('0x6'));var util=require('util');var path=require(_0xfef0('0x7'));var sox=require(_0xfef0('0x8'));var csv=require(_0xfef0('0x9'));var ejs=require(_0xfef0('0xa'));var fs=require('fs');var _=require(_0xfef0('0xb'));var squel=require(_0xfef0('0xc'));var crypto=require('crypto');var jsforce=require(_0xfef0('0xd'));var deskjs=require('desk.js');var toCsv=require(_0xfef0('0x9'));var querystring=require(_0xfef0('0xe'));var Papa=require(_0xfef0('0xf'));var Redis=require(_0xfef0('0x10'));var authService=require(_0xfef0('0x11'));var qs=require(_0xfef0('0x12'));var as=require(_0xfef0('0x13'));var hardwareService=require(_0xfef0('0x14'));var logger=require(_0xfef0('0x15'))(_0xfef0('0x16'));var utils=require(_0xfef0('0x17'));var config=require(_0xfef0('0x18'));var licenseUtil=require(_0xfef0('0x19'));var db=require(_0xfef0('0x1a'))['db'];function respondWithStatusCode(_0x546c7a,_0x3135ab){_0x3135ab=_0x3135ab||0xcc;return function(_0x2f4e23){if(_0x2f4e23){return _0x546c7a[_0xfef0('0x1b')](_0x3135ab);}return _0x546c7a[_0xfef0('0x1c')](_0x3135ab)[_0xfef0('0x1d')]();};}function respondWithResult(_0x45599a,_0xa9f040){_0xa9f040=_0xa9f040||0xc8;return function(_0x573ae7){if(_0x573ae7){return _0x45599a[_0xfef0('0x1c')](_0xa9f040)['json'](_0x573ae7);}};}function respondWithFilteredResult(_0x4b5bcf,_0x5acdd0){return function(_0x118b8d){if(_0x118b8d){var _0x284b6d=_0x118b8d[_0xfef0('0x1e')],_0x3510a7=_0x5acdd0[_0xfef0('0x1f')],_0x1bce2f=_0x5acdd0[_0xfef0('0x1f')]+_0x5acdd0['limit'],_0x2a96d9;if(_0x1bce2f>=_0x284b6d){_0x1bce2f=_0x284b6d;_0x2a96d9=0xc8;}else{_0x2a96d9=0xce;}_0x4b5bcf[_0xfef0('0x1c')](_0x2a96d9);return _0x4b5bcf[_0xfef0('0x20')](_0xfef0('0x21'),_0x3510a7+'-'+_0x1bce2f+'/'+_0x284b6d)[_0xfef0('0x22')](_0x118b8d);}return null;};}function patchUpdates(_0x1ad020){return function(_0x55912f){try{jsonpatch[_0xfef0('0x23')](_0x55912f,_0x1ad020,!![]);}catch(_0x4e24de){return BPromise[_0xfef0('0x24')](_0x4e24de);}return _0x55912f[_0xfef0('0x25')]();};}function saveUpdates(_0x28dee1,_0x48408a){return function(_0x2be956){if(_0x2be956){return _0x2be956['update'](_0x28dee1)[_0xfef0('0x26')](function(_0x394fbc){return _0x394fbc;});}return null;};}function removeEntity(_0x52b93b,_0x4897af){return function(_0x4b8b22){if(_0x4b8b22){return _0x4b8b22[_0xfef0('0x27')]()['then'](function(){var _0x1f9970=_0x4b8b22[_0xfef0('0x28')]({'plain':!![]});var _0x1a8d66=_0xfef0('0x29');return db[_0xfef0('0x2a')][_0xfef0('0x27')]({'where':{'type':_0x1a8d66,'resourceId':_0x1f9970['id']}})['then'](function(){return _0x4b8b22;});})['then'](function(){_0x52b93b[_0xfef0('0x1c')](0xcc)[_0xfef0('0x1d')]();});}};}function handleEntityNotFound(_0x924f6e,_0x34ca65){return function(_0xab231c){if(!_0xab231c){_0x924f6e[_0xfef0('0x1b')](0x194);}return _0xab231c;};}function handleError(_0x5df04f,_0x168b98){_0x168b98=_0x168b98||0x1f4;return function(_0x391279){logger['error'](_0x391279[_0xfef0('0x2b')]);if(_0x391279[_0xfef0('0x2c')]){delete _0x391279[_0xfef0('0x2c')];}_0x5df04f[_0xfef0('0x1c')](_0x168b98)[_0xfef0('0x2d')](_0x391279);};}exports[_0xfef0('0x2e')]=function(_0x3e3c4c,_0x3e026a){var _0x26cb9a={},_0x213a91={},_0x3ee42f={'count':0x0,'rows':[]};var _0x3ffea0=_['map'](db[_0xfef0('0x2f')]['rawAttributes'],function(_0x4eaf74){return{'name':_0x4eaf74[_0xfef0('0x30')],'type':_0x4eaf74[_0xfef0('0x31')]['key']};});_0x213a91['model']=_['map'](_0x3ffea0,'name');_0x213a91['query']=_[_0xfef0('0x32')](_0x3e3c4c[_0xfef0('0x33')]);_0x213a91[_0xfef0('0x34')]=_['intersection'](_0x213a91['model'],_0x213a91['query']);_0x26cb9a[_0xfef0('0x35')]=_['intersection'](_0x213a91[_0xfef0('0x36')],qs[_0xfef0('0x37')](_0x3e3c4c[_0xfef0('0x33')]['fields']));_0x26cb9a[_0xfef0('0x35')]=_0x26cb9a['attributes'][_0xfef0('0x38')]?_0x26cb9a[_0xfef0('0x35')]:_0x213a91[_0xfef0('0x36')];if(!_0x3e3c4c[_0xfef0('0x33')][_0xfef0('0x39')](_0xfef0('0x3a'))){_0x26cb9a[_0xfef0('0x3b')]=qs[_0xfef0('0x3b')](_0x3e3c4c['query'][_0xfef0('0x3b')]);_0x26cb9a[_0xfef0('0x1f')]=qs[_0xfef0('0x1f')](_0x3e3c4c[_0xfef0('0x33')][_0xfef0('0x1f')]);}_0x26cb9a[_0xfef0('0x3c')]=qs[_0xfef0('0x3d')](_0x3e3c4c[_0xfef0('0x33')][_0xfef0('0x3d')]);_0x26cb9a[_0xfef0('0x3e')]=qs[_0xfef0('0x34')](_[_0xfef0('0x3f')](_0x3e3c4c[_0xfef0('0x33')],_0x213a91['filters']),_0x3ffea0);if(_0x3e3c4c[_0xfef0('0x33')]['filter']){_0x26cb9a[_0xfef0('0x3e')]=_[_0xfef0('0x40')](_0x26cb9a[_0xfef0('0x3e')],{'$or':_['map'](_0x3ffea0,function(_0x3f1597){if(_0x3f1597[_0xfef0('0x31')]!==_0xfef0('0x41')){var _0x5537c8={};_0x5537c8[_0x3f1597[_0xfef0('0x2c')]]={'$like':'%'+_0x3e3c4c[_0xfef0('0x33')][_0xfef0('0x42')]+'%'};return _0x5537c8;}})});}_0x26cb9a=_['merge']({},_0x26cb9a,_0x3e3c4c[_0xfef0('0x43')]);var _0x492b90={'where':_0x26cb9a['where']};return db[_0xfef0('0x2f')]['count'](_0x492b90)['then'](function(_0xbf6ddd){_0x3ee42f[_0xfef0('0x1e')]=_0xbf6ddd;if(_0x3e3c4c[_0xfef0('0x33')][_0xfef0('0x44')]){_0x26cb9a[_0xfef0('0x45')]=[{'all':!![]}];}return db[_0xfef0('0x2f')]['findAll'](_0x26cb9a);})[_0xfef0('0x26')](function(_0x2a5779){_0x3ee42f['rows']=_0x2a5779;return _0x3ee42f;})['then'](respondWithFilteredResult(_0x3e026a,_0x26cb9a))[_0xfef0('0x46')](handleError(_0x3e026a,null));};exports['show']=function(_0x1fc518,_0x22c940){var _0x3c100c={'raw':![],'where':{'id':_0x1fc518[_0xfef0('0x47')]['id']}},_0x1abcfb={};_0x1abcfb[_0xfef0('0x36')]=_[_0xfef0('0x32')](db[_0xfef0('0x2f')]['rawAttributes']);_0x1abcfb[_0xfef0('0x33')]=_['keys'](_0x1fc518['query']);_0x1abcfb[_0xfef0('0x34')]=_[_0xfef0('0x48')](_0x1abcfb['model'],_0x1abcfb[_0xfef0('0x33')]);_0x3c100c['attributes']=_[_0xfef0('0x48')](_0x1abcfb[_0xfef0('0x36')],qs[_0xfef0('0x37')](_0x1fc518[_0xfef0('0x33')]['fields']));_0x3c100c[_0xfef0('0x35')]=_0x3c100c[_0xfef0('0x35')]['length']?_0x3c100c['attributes']:_0x1abcfb[_0xfef0('0x36')];if(_0x1fc518['query'][_0xfef0('0x44')]){_0x3c100c[_0xfef0('0x45')]=[{'all':!![]}];}_0x3c100c=_[_0xfef0('0x40')]({},_0x3c100c,_0x1fc518[_0xfef0('0x43')]);return db[_0xfef0('0x2f')][_0xfef0('0x49')](_0x3c100c)['then'](handleEntityNotFound(_0x22c940,null))[_0xfef0('0x26')](respondWithResult(_0x22c940,null))['catch'](handleError(_0x22c940,null));};exports['create']=function(_0x2f11cb,_0x25da1b){return db[_0xfef0('0x2f')]['create'](_0x2f11cb[_0xfef0('0x4a')],{})['then'](function(_0x5dd26b){var _0x51f207=_0x2f11cb[_0xfef0('0x4b')][_0xfef0('0x28')]({'plain':!![]});if(!_0x51f207)throw new Error(_0xfef0('0x4c'));if(_0x51f207[_0xfef0('0x4d')]===_0xfef0('0x4b')){var _0xa23cc8=_0x5dd26b[_0xfef0('0x28')]({'plain':!![]});var _0x3853bb=_0xfef0('0x29');return db['UserProfileSection']['find']({'where':{'name':_0x3853bb,'userProfileId':_0x51f207[_0xfef0('0x4e')]},'raw':!![]})[_0xfef0('0x26')](function(_0x34e9ed){if(_0x34e9ed&&_0x34e9ed[_0xfef0('0x4f')]===0x0){return db[_0xfef0('0x2a')][_0xfef0('0x50')]({'name':_0xa23cc8[_0xfef0('0x2c')],'resourceId':_0xa23cc8['id'],'type':_0x34e9ed[_0xfef0('0x2c')],'sectionId':_0x34e9ed['id']},{})['then'](function(){return _0x5dd26b;});}else{return _0x5dd26b;}})[_0xfef0('0x46')](function(_0x19e449){logger[_0xfef0('0x51')](_0xfef0('0x52'),_0x19e449);throw _0x19e449;});}return _0x5dd26b;})[_0xfef0('0x26')](respondWithResult(_0x25da1b,0xc9))['catch'](handleError(_0x25da1b,null));};exports['update']=function(_0x523763,_0x445f3f){if(_0x523763[_0xfef0('0x4a')]['id']){delete _0x523763[_0xfef0('0x4a')]['id'];}return db[_0xfef0('0x2f')]['find']({'where':{'id':_0x523763[_0xfef0('0x47')]['id']}})[_0xfef0('0x26')](handleEntityNotFound(_0x445f3f,null))[_0xfef0('0x26')](saveUpdates(_0x523763[_0xfef0('0x4a')],null))[_0xfef0('0x26')](respondWithResult(_0x445f3f,null))[_0xfef0('0x46')](handleError(_0x445f3f,null));};exports[_0xfef0('0x27')]=function(_0x4cd0fd,_0x3458b0){return db[_0xfef0('0x2f')]['find']({'where':{'id':_0x4cd0fd[_0xfef0('0x47')]['id']}})['then'](handleEntityNotFound(_0x3458b0,null))[_0xfef0('0x26')](removeEntity(_0x3458b0,null))[_0xfef0('0x46')](handleError(_0x3458b0,null));};exports['run']=function(_0x1e1c02,_0x49ec3c,_0x5da063){var _0x4812c7=require(_0xfef0('0x53'));return db[_0xfef0('0x2f')][_0xfef0('0x49')]({'where':{'id':_0x1e1c02[_0xfef0('0x47')]['id']},'raw':!![]})[_0xfef0('0x26')](handleEntityNotFound(_0x49ec3c,null))[_0xfef0('0x26')](function(){_0x4812c7['run'](_0x1e1c02[_0xfef0('0x47')]['id']);})[_0xfef0('0x26')](respondWithStatusCode(_0x49ec3c,null))[_0xfef0('0x46')](handleError(_0x49ec3c,null));};