Hotfix/4.0.2 (#64)

* hotfix 4.0.2: implement playback router
* hotfix 4.0.2: fix studio clock styles
* hotfix 4.0.2: broadcast clock always
* hotfix 4.0.2: fix overflow in timer control
This commit is contained in:
Carlos Valente
2021-12-14 22:39:01 +01:00
committed by GitHub
parent 3582ce18e1
commit 52f02f153c
10 changed files with 87 additions and 79 deletions
+4 -2
View File
@@ -57,6 +57,7 @@ await db.write();
import { router as eventsRouter } from './routes/eventsRouter.js';
import { router as eventRouter } from './routes/eventRouter.js';
import { router as ontimeRouter } from './routes/ontimeRouter.js';
import { router as playbackRouter } from './routes/playbackRouter.js';
// Global Objects
import { EventTimer } from './classes/EventTimer.js';
@@ -81,11 +82,12 @@ app.use('/uploads', express.static('uploads'));
app.use('/events', eventsRouter);
app.use('/event', eventRouter);
app.use('/ontime', ontimeRouter);
app.use('/playback', playbackRouter);
// serve react
app.use(
express.static(
path.join(__dirname, env == 'prod' ? '../' : '../../', 'client/build')
path.join(__dirname, env === 'prod' ? '../' : '../../', 'client/build')
)
);
@@ -93,7 +95,7 @@ app.get('*', (req, res) => {
res.sendFile(
path.resolve(
__dirname,
env == 'prod' ? '../' : '../../',
env === 'prod' ? '../' : '../../',
'client',
'build',
'index.html'
+14 -2
View File
@@ -234,10 +234,22 @@ export class EventTimer extends Timer {
}
update() {
// if there is nothing selected, do nothing
if (this.selectedEventId == null && this.state !== 'roll') return;
const now = this._getCurrentTime();
// if there is nothing selected, update only clock
if (this.selectedEventId == null && this.state !== 'roll') {
this.clock = now;
this.broadcastThis('timer', {
clock: now,
running: Timer.toSeconds(this.current),
secondary: Timer.toSeconds(this.secondaryTimer),
durationSeconds: Timer.toSeconds(this.duration),
expectedFinish: this._getExpectedFinish(),
startedAt: this._startedAt,
});
return;
}
// only implement roll here
if (this.state !== 'roll') {
super.update();
+26 -13
View File
@@ -1,38 +1,51 @@
import express from 'express';
export const router = express.Router();
// import event controller
const playbackController = require('../controllers/playbackController');
// import playback controllers
import {
pbGet,
onAir,
offAir,
pbStart,
pbPause,
pbStop,
pbRoll,
pbPrevious,
pbNext,
pbUnload,
pbReload
} from '../controllers/playbackController.js';
// create route between controller and '/playback/' endpoint
router.get('/', playbackController.pbGet);
router.get('/', pbGet);
// create route between controller and '/playback/onAir' endpoint
router.get('/onAir', playbackController.onAir);
router.get('/onAir', onAir);
// create route between controller and '/playback/offAir' endpoint
router.get('/offAir', playbackController.offAir);
router.get('/offAir', offAir);
// create route between controller and '/playback/start' endpoint
router.get('/start', playbackController.pbStart);
router.get('/start', pbStart);
router.get('/play', pbStart);
// create route between controller and '/playback/pause' endpoint
router.get('/pause', playbackController.pbPause);
router.get('/pause', pbPause);
// create route between controller and '/playback/stop' endpoint
router.get('/stop', playbackController.pbStop);
router.get('/stop', pbStop);
// create route between controller and '/playback/roll' endpoint
router.get('/roll', playbackController.pbRoll);
router.get('/roll', pbRoll);
// create route between controller and '/playback/previous' endpoint
router.get('/previous', playbackController.pbPrevious);
router.get('/previous', pbPrevious);
// create route between controller and '/playback/next' endpoint
router.get('/next', playbackController.pbNext);
router.get('/next', pbNext);
// create route between controller and '/playback/unload' endpoint
router.get('/unload', playbackController.pbUnload);
router.get('/unload', pbUnload);
// create route between controller and '/playback/reload' endpoint
router.get('/reload', playbackController.pbReload);
router.get('/reload', pbReload);