From 1a1940c8703351ded9b16d29cefb79539b289088 Mon Sep 17 00:00:00 2001 From: Andrew Gerrand Date: Wed, 22 Feb 2012 09:16:54 +1100 Subject: [PATCH] doc: support redirect-on-share R=golang-dev, rsc CC=golang-dev https://golang.org/cl/5689056 --- doc/play/playground.js | 21 +++++++++++++++------ doc/root.html | 12 ++++++------ 2 files changed, 21 insertions(+), 12 deletions(-) diff --git a/doc/play/playground.js b/doc/play/playground.js index 6f1a5c7a2ee..e060e203c4a 100644 --- a/doc/play/playground.js +++ b/doc/play/playground.js @@ -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,11 +188,16 @@ 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(); } - var url = origin(window.location) + "/p/" + - xhr.responseText; - shareURL.show().val(url).focus().select(); } }); }); diff --git a/doc/root.html b/doc/root.html index 20bd62b2741..1c6bcd101c7 100644 --- a/doc/root.html +++ b/doc/root.html @@ -113,12 +113,12 @@ function init() { // Set up playground. playground({ - "simple": true, - "codeEl": "#code", - "outputEl": "#output", - "runEl": "#run", - "shareEl": "#share", - "shareURLEl": "#shareURL" + "simple": true, + "codeEl": "#code", + "outputEl": "#output", + "runEl": "#run", + "shareEl": "#share", + "shareRedirect": "http://play.golang.org/" }); }