|
|
@@ -2,7 +2,8 @@ var app = require('http').createServer(handler)
|
|
2
|
2
|
, sockets = require('./sockets.js')
|
|
3
|
3
|
, fs = require('fs')
|
|
4
|
4
|
, path = require('path')
|
|
5
|
|
- , nodestatic = require("node-static");
|
|
|
5
|
+ , nodestatic = require("node-static")
|
|
|
6
|
+ , createSVG = require("./createSVG.js");
|
|
6
|
7
|
|
|
7
|
8
|
|
|
8
|
9
|
var io = sockets.start(app);
|
|
|
@@ -73,6 +74,17 @@ function handler (request, response) {
|
|
73
|
74
|
response.statusCode = 404;
|
|
74
|
75
|
response.end("ERROR: Unable to serve history file\n");
|
|
75
|
76
|
});
|
|
|
77
|
+ } else if (parts[0] === "preview") {
|
|
|
78
|
+ var boardName = encodeURIComponent(parts[1]),
|
|
|
79
|
+ history_file = path.join(__dirname, "..", "server-data", "board-" + boardName + ".json");
|
|
|
80
|
+ createSVG.renderBoard(history_file, function(err, svg) {
|
|
|
81
|
+ if (err) {
|
|
|
82
|
+ response.writeHead(404, {'Content-Type': 'application/json'});
|
|
|
83
|
+ response.end(JSON.stringify(err));
|
|
|
84
|
+ }
|
|
|
85
|
+ response.writeHead(200, {"Content-Type": "image/svg+xml"});
|
|
|
86
|
+ response.end(svg);
|
|
|
87
|
+ });
|
|
76
|
88
|
} else {
|
|
77
|
89
|
fileserver.serve(request, response, function (err, res){
|
|
78
|
90
|
if (err) serveError(request, response, err);
|