aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Gerrand <adg@golang.org>2015-09-01 22:26:20 +0000
committerandroid-build-merger <android-build-merger@google.com>2015-09-01 22:26:20 +0000
commit77cd3cba62016621705b5986a1b93f1b772449a7 (patch)
tree443633d9df48ebabd9f86e8620ca84fc5c867113
parent23e833b3b21720316e883d4d9e52c4b4e6736fb0 (diff)
parent46829bf9ceb11ec1aae81c0acc62f59c5a27b1e5 (diff)
downloadtools-77cd3cba62016621705b5986a1b93f1b772449a7.tar.gz
godoc/static: dynamically adjust install instructions for a given download
automerge: 46829bf * commit '46829bf9ceb11ec1aae81c0acc62f59c5a27b1e5': godoc/static: dynamically adjust install instructions for a given download
-rw-r--r--godoc/static/godocs.js39
-rw-r--r--godoc/static/static.go39
2 files changed, 78 insertions, 0 deletions
diff --git a/godoc/static/godocs.js b/godoc/static/godocs.js
index 27d2699..eee508d 100644
--- a/godoc/static/godocs.js
+++ b/godoc/static/godocs.js
@@ -245,6 +245,44 @@ function toggleHash() {
}
}
+function personalizeInstallInstructions() {
+ var prefix = '?download=';
+ var s = window.location.search;
+ if (!s.startsWith(prefix)) {
+ // No 'download' query string; bail.
+ return;
+ }
+
+ var filename = s.substr(prefix.length);
+ var filenameRE = /^go1\.\d+(\.\d+)?([a-z0-9]+)?\.([a-z0-9]+)-([a-z0-9]+)\.(.+)$/
+ $('.downloadFilename').text(filename);
+ $('.hideFromDownload').hide();
+ var m = filenameRE.exec(filename);
+ if (!m) {
+ // Can't interpret file name; bail.
+ return;
+ }
+
+ var os = m[3];
+ var ext = m[5];
+ if (ext != 'tar.gz') {
+ $('#tarballInstructions').hide();
+ }
+ if (os != 'darwin' || ext != 'pkg') {
+ $('#darwinPackageInstructions').hide();
+ }
+ if (os != 'windows') {
+ $('#windowsInstructions').hide();
+ } else {
+ if (ext != 'msi') {
+ $('#windowsInstallerInstructions').hide();
+ }
+ if (ext != 'zip') {
+ $('#windowsZipInstructions').hide();
+ }
+ }
+}
+
$(document).ready(function() {
bindSearchEvents();
generateTOC();
@@ -260,6 +298,7 @@ $(document).ready(function() {
setupTypeInfo();
setupCallgraphs();
toggleHash();
+ personalizeInstallInstructions();
// godoc.html defines window.initFuncs in the <head> tag, and root.html and
// codewalk.js push their on-page-ready functions to the list.
diff --git a/godoc/static/static.go b/godoc/static/static.go
index 5c42fd0..49d5420 100644
--- a/godoc/static/static.go
+++ b/godoc/static/static.go
@@ -810,6 +810,44 @@ function toggleHash() {
}
}
+function personalizeInstallInstructions() {
+ var prefix = '?download=';
+ var s = window.location.search;
+ if (!s.startsWith(prefix)) {
+ // No 'download' query string; bail.
+ return;
+ }
+
+ var filename = s.substr(prefix.length);
+ var filenameRE = /^go1\.\d+(\.\d+)?([a-z0-9]+)?\.([a-z0-9]+)-([a-z0-9]+)\.(.+)$/
+ $('.downloadFilename').text(filename);
+ $('.hideFromDownload').hide();
+ var m = filenameRE.exec(filename);
+ if (!m) {
+ // Can't interpret file name; bail.
+ return;
+ }
+
+ var os = m[3];
+ var ext = m[5];
+ if (ext != 'tar.gz') {
+ $('#tarballInstructions').hide();
+ }
+ if (os != 'darwin' || ext != 'pkg') {
+ $('#darwinPackageInstructions').hide();
+ }
+ if (os != 'windows') {
+ $('#windowsInstructions').hide();
+ } else {
+ if (ext != 'msi') {
+ $('#windowsInstallerInstructions').hide();
+ }
+ if (ext != 'zip') {
+ $('#windowsZipInstructions').hide();
+ }
+ }
+}
+
$(document).ready(function() {
bindSearchEvents();
generateTOC();
@@ -825,6 +863,7 @@ $(document).ready(function() {
setupTypeInfo();
setupCallgraphs();
toggleHash();
+ personalizeInstallInstructions();
// godoc.html defines window.initFuncs in the <head> tag, and root.html and
// codewalk.js push their on-page-ready functions to the list.