gerrit/website/releases/index.html
David Pursehouse 1f470bbbe8 Update release website index to use new documentation site
Update the index page to link to release notes on the new
documentation site.

Also add links to the documentation for each release.

Change-Id: Ia98b7a5cd8182af6537dc43f9647064c3194d631
2013-10-17 17:07:30 +09:00

165 lines
4.1 KiB
HTML

<html>
<head>
<title>Gerrit Code Review - Releases</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>
<style>
#diffy_logo {
float: left;
width: 75px;
height: 70px;
margin-right: 20px;
}
#download_container table {
border-spacing: 0;
}
#download_container td {
padding-right: 5px;
}
.latest-release {
background-color: lightgreen;
}
.rc {
padding-left: 1em;
font-style: italic;
}
.size {
text-align: right;
}
</style>
</head>
<body>
<h1>Gerrit Code Review - Releases</h1>
<a href="http://code.google.com/p/gerrit">
<img id="diffy_logo" src="https://gerrit-review.googlesource.com/static/diffy1.cache.png">
</a>
<div id='download_container'>
</div>
<script>
$.getJSON(
'https://www.googleapis.com/storage/v1beta2/b/gerrit-releases/o?projection=noAcl&fields=items(name%2Csize)&callback=?',
function(data) {
var doc = document;
var frg = doc.createDocumentFragment();
var rx = /^gerrit(?:-full)?-([0-9.]+(?:-rc[0-9]+)?)[.]war/;
var docs = 'https://gerrit-documentation.storage.googleapis.com/';
var src = 'https://gerrit.googlesource.com/gerrit/+/'
data.items.sort(function(a,b) {
var av = rx.exec(a.name);
var bv = rx.exec(b.name);
if (!av || !bv) {
return a.name > b.name ? 1 : -1;
}
var an = av[1].replace('-rc', '.rc').split('.')
var bn = bv[1].replace('-rc', '.rc').split('.')
while (an.length < bn.length) an.push('0');
while (an.length > bn.length) bn.push('0');
for (var i = 0; i < an.length; i++) {
var ai = an[i].indexOf('rc') == 0
? parseInt(an[i].substring(2))
: 1000 + parseInt(an[i]);
var bi = bn[i].indexOf('rc') == 0
? parseInt(bn[i].substring(2))
: 1000 + parseInt(bn[i]);
if (ai != bi) {
return ai > bi ? -1 : 1;
}
}
return 0;
});
var latest = false;
for (var i = 0; i < data.items.length; i++) {
var f = data.items[i];
var v = rx.exec(f.name);
if ('index.html' == f.name) {
continue;
}
var tr = doc.createElement('tr');
var td = doc.createElement('td');
var a = doc.createElement('a');
a.href = f.name;
if (v) {
a.appendChild(doc.createTextNode('Gerrit ' + v[1]));
} else {
a.appendChild(doc.createTextNode(f.name));
}
if (f.name.indexOf('-rc') > 0) {
td.className = 'rc';
} else if (!latest) {
latest = true;
tr.className='latest-release';
}
td.appendChild(a);
tr.appendChild(td);
td = doc.createElement('td');
td.className = 'size';
if (f.size/(1024*1024) < 1) {
sizeText = Math.round(f.size/1024*10)/10 + ' KiB';
} else {
sizeText = Math.round(f.size/(1024*1024)*10)/10 + ' MiB';
}
td.appendChild(doc.createTextNode(sizeText));
tr.appendChild(td);
td_rel = doc.createElement('td');
td_doc = doc.createElement('td');
if (v && f.name.indexOf('-rc') < 0) {
// Release notes link
a = doc.createElement('a');
a.href = docs + 'ReleaseNotes/ReleaseNotes-' + v[1] + '.html';
a.appendChild(doc.createTextNode('Release Notes'));
td_rel.appendChild(a);
// Documentation link
a = doc.createElement('a');
a.href = docs + 'Documentation/' + v[1] + '/index.html';
a.appendChild(doc.createTextNode('Documentation'));
td_doc.appendChild(a);
}
tr.appendChild(td_rel);
tr.appendChild(td_doc);
td = doc.createElement('td');
if (v) {
a = doc.createElement('a');
a.href = src + 'v' + v[1];
a.appendChild(doc.createTextNode('src'));
td.appendChild(a);
}
tr.appendChild(td);
frg.appendChild(tr);
}
var tr = doc.createElement('tr');
var th = doc.createElement('th');
th.appendChild(doc.createTextNode('File'));
tr.appendChild(th);
th = doc.createElement('th');
th.appendChild(doc.createTextNode('Size'));
tr.appendChild(th);
tr.appendChild(doc.createElement('th'));
tr.appendChild(doc.createElement('th'));
var table = doc.createElement('table');
table.appendChild(tr);
table.appendChild(frg);
doc.getElementById('download_container').appendChild(table);
});
</script>
</body>
</html>