1
0
mirror of https://github.com/golang/go synced 2024-11-21 15:44:44 -07:00

doc: support redirect-on-share

R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/5689056
This commit is contained in:
Andrew Gerrand 2012-02-22 09:16:54 +11:00
parent d36426995a
commit 1a1940c870
2 changed files with 21 additions and 12 deletions

View File

@ -8,6 +8,7 @@
// runEl - run button element
// shareEl - share button element (optional)
// shareURLEl - share URL text input element (optional)
// shareRedirect - base URL to redirect to on share (optional)
// preCompile - callback to mutate request data before compiling
// postCompile - callback to read response data after compiling
// simple - use plain textarea instead of CodeMirror.
@ -163,7 +164,7 @@ function playground(opts) {
}
$(opts['runEl']).click(run);
if (opts['shareEl'] == null || opts['shareURLEl'] == null) {
if (opts['shareEl'] == null || (opts['shareURLEl'] == null && opts['shareRedirect'] == null)) {
return editor;
}
@ -171,7 +172,10 @@ function playground(opts) {
return (""+href).split("/").slice(0, 3).join("/");
}
var shareURL = $(opts['shareURLEl']).hide();
var shareURL;
if (opts['shareURLEl']) {
shareURL = $(opts['shareURLEl']).hide();
}
var sharing = false;
$(opts['shareEl']).click(function() {
if (sharing) return;
@ -184,12 +188,17 @@ function playground(opts) {
sharing = false;
if (xhr.status != 200) {
alert("Server error; try again.");
return
return;
}
if (opts['shareRedirect']) {
window.location = opts['shareRedirect'] + xhr.responseText;
}
if (shareURL) {
var url = origin(window.location) + "/p/" +
xhr.responseText;
shareURL.show().val(url).focus().select();
}
}
});
});

View File

@ -118,7 +118,7 @@ function init() {
"outputEl": "#output",
"runEl": "#run",
"shareEl": "#share",
"shareURLEl": "#shareURL"
"shareRedirect": "http://play.golang.org/"
});
}