routes.js 960 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. 'use strict';
  2. import express from 'express';
  3. import path from 'path';
  4. import fs from 'fs';
  5. import React from 'react';
  6. import Index from '../src/js/components/Index';
  7. import GameInterface from '../src/js/components/GameInterface';
  8. const router = express.Router();
  9. router.get('/', (req, res) => {
  10. res.render('index', {
  11. content: React.renderToString(<Index io={{}} />)
  12. });
  13. });
  14. router.get('/about', (req, res) => {
  15. res.render('about');
  16. });
  17. router.get('/play/:token/:time/:inc', (req, res) => {
  18. let params = [
  19. req.params.token,
  20. req.params.time,
  21. req.params.inc
  22. ];
  23. res.render('play', {
  24. content: React.renderToString(<GameInterface params={params} io={{}} />)
  25. });
  26. });
  27. router.get('/logs', (req, res) => {
  28. fs.readFile(path.join(__dirname, '../logs/games.log'), (err, data) => {
  29. if (err) {
  30. return res.redirect('/');
  31. }
  32. res.set('Content-Type', 'text/plain');
  33. res.send(data);
  34. });
  35. });
  36. export default router;