X-Git-Url: https://jasonwoof.com/gitweb/?a=blobdiff_plain;f=server.coffee;h=7d8063c7be86f633a92d5918244c19d11501be21;hb=b1e502e556615044a56abbff26a58298d5680fbe;hp=1ce56f235f68ed6455029ad638b1b6835913c7fa;hpb=387a29e812d34804ee5f424d00d1b9f68eb2ea91;p=peach-cgt.git diff --git a/server.coffee b/server.coffee index 1ce56f2..7d8063c 100644 --- a/server.coffee +++ b/server.coffee @@ -104,7 +104,7 @@ js_handler = (args, out, request, url_parts) -> html_handler = (args, out, request, url_parts) -> fs.readFile 'index.html', 'utf8', (err, data) -> if err - return out.end 'Server failed to read index.html' + return out.end "Server failed to read index.html: #{err}" out.end data clean_pathname_regex = new RegExp('[^a-zA-Z/_.-]') @@ -115,9 +115,9 @@ clean_pathname = (str) -> str = str.replace clean_pathname_regex2, '/_' return str.replace clean_pathname_regex3, '_' -# serve javascript files from within /usr/share/javascript -javascript_handler = (args, out, request, url_parts) -> - filename = clean_pathname "/usr/share/#{url_parts.pathname}" +# serve javascript files from within external/ +external_javascript_handler = (args, out, request, url_parts) -> + filename = clean_pathname "external/#{url_parts.pathname.substr 10}" fs.readFile filename, 'utf8', (err, data) -> if err out.writeHead 404 @@ -274,8 +274,8 @@ http_server = http.createServer (req, res) -> rel_path = url_parts.pathname.substr 1 - if rel_path.substr(0, 11) is 'javascript/' - return javascript_handler url_parts.query, res, req, url_parts + if rel_path.substr(0, 9) is 'external/' + return external_javascript_handler url_parts.query, res, req, url_parts else if rel_path.substr(rel_path.length - 4) is '.css' res.writeHead 200, 'Content-Type': 'text/css' return css_handler url_parts.query, res, req, url_parts @@ -301,6 +301,10 @@ http_server = http.createServer (req, res) -> return html_handler url_parts.query, res, req, url_parts +################## INIT #################### +# make sure the current working directory is correct +process.chdir __dirname + setInterval expire_old_games, 2 * 60 * 1000 # check every 2 minutes for expired games http_server.listen listen_port, "127.0.0.1"