Commit abdb4dbe authored by Andrew Gerrand's avatar Andrew Gerrand

cmd/godoc: inform users that the playground doesn't work via local godoc

R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/5843065
parent 58aac1d0
......@@ -166,10 +166,13 @@ function playground(opts) {
}
pre.text(out);
},
error: function() {
output.addClass("error").text(
"Error communicating with remote server."
);
error: function(xhr) {
var text = "Error communicating with remote server.";
console.log(xhr.status);
if (xhr.status == 501) {
text = xhr.responseText;
}
output.addClass("error").text(text);
}
});
}
......@@ -190,6 +193,10 @@ function playground(opts) {
type: "POST",
complete: function(xhr) {
sharing = false;
if (xhr.status == 501) {
alert(xhr.responseText);
return;
}
if (xhr.status != 200) {
alert("Server error; try again.");
return;
......
......@@ -274,6 +274,10 @@ func main() {
registerPublicHandlers(http.DefaultServeMux)
// Playground handlers are not available in local godoc.
http.HandleFunc("/compile", disabledHandler)
http.HandleFunc("/share", disabledHandler)
// Initialize default directory tree with corresponding timestamp.
// (Do it in a goroutine so that launch is quick.)
go initFSTree()
......@@ -450,3 +454,9 @@ type httpWriter struct {
func (w *httpWriter) Header() http.Header { return w.h }
func (w *httpWriter) WriteHeader(code int) { w.code = code }
// disabledHandler serves a 501 "Not Implemented" response.
func disabledHandler(w http.ResponseWriter, r *http.Request) {
w.WriteHeader(http.StatusNotImplemented)
fmt.Fprint(w, "This functionality is not available via local godoc.")
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment