Skip to content

Commit

Permalink
Homepage: Added symbolic "latest Mac OS 10.6 (Unstable)" package to M…
Browse files Browse the repository at this point in the history
…ac OS page

Also separated the packages into two download_list elements, one for
stable packages and another for unstable.
  • Loading branch information
danij-deng committed Mar 30, 2012
1 parent cd09c57 commit b896b0e
Show file tree
Hide file tree
Showing 3 changed files with 103 additions and 55 deletions.
67 changes: 49 additions & 18 deletions web/plugins/pages/html/mac_os.html
@@ -1,7 +1,7 @@
<h2>Install Packages</h2>
<p>Select the package you wish to install by clicking on it. You will then be directed to our primary download server and after a few moments your download should begin automatically. Once downloaded, run the install package and follow the onsreen instructions to complete the install.</p>
<div id="downloads_list1" class="downloads_list">
</div>
<div id="downloads_list1" class="downloads_list"></div>
<div id="downloads_list2" class="downloads_list"></div>
<h3>Minimum System Requirements</h3>
<ul>
<li>Mac OS X version 10.4 (or later).</li>
Expand Down Expand Up @@ -62,7 +62,16 @@ <h3>Minimum System Requirements</h3>
cleanTitle += ' (Unstable)';
}
}
metaData += /*json.platform_name + */'Mac OS X 10.4+</span>';

if(json.platform_name == 'mac10_6-x86-x86_64')
{
metaData += 'Mac OS 10.6+';
}
else
{
metaData += 'Mac OS 10.4+';
}
metaData += '</span>';

return $('<div class="package_badge"><a class="package_name" href="' + downloadUri + '" title="Download ' + json.fulltitle + '">' + cleanTitle + '</a><br />' + metaData + '</div>');
}
Expand All @@ -71,12 +80,13 @@ <h3>Minimum System Requirements</h3>
* Called upon receipt of a new JSON package object graph to add it
* to the global list of packages.
*/
function addPackages(json, downloadUri)
function addPackages(json, downloadUri, packageListElementId)
{
var record = new Array();
var json_copy = json;
record["json"] = json_copy;
record["downloadUri"] = downloadUri;
record['json'] = json_copy;
record['downloadUri'] = downloadUri;
record['packageListElementId'] = packageListElementId;
packages.push(record);
}

Expand All @@ -85,9 +95,9 @@ <h3>Minimum System Requirements</h3>
*/
function recordSorter(recordA, recordB)
{
var a = recordA["json"];
var a = recordA['json'];
var a_is_unstable = a.hasOwnProperty('is_unstable');
var b = recordB["json"];
var b = recordB['json'];
var b_is_unstable = b.hasOwnProperty('is_unstable');

// Order stable packages first.
Expand All @@ -96,32 +106,37 @@ <h3>Minimum System Requirements</h3>
return a_is_unstable? 1 : -1;
}

// Platform ids are arranged such that latest appears last.
if(a.platform_id != b.platform_id)
{
return a.platform_id > b.platform_id? 1 : -1;
}

// Use the lexicographical difference between titles.
return a.title - b.title;
}

/**
* Update the identified DOM element attaching new HTML for each package.
*/
function populatePackages(elementId)
function populatePackages()
{
// Order packages
packages.sort(recordSorter);

// Update the named DOM element attaching new HTML for each package.
removeAllChildren(elementId);
for(var i in packages)
{
var record = packages[i];
genPackageBadgeHTML(record["json"], record["downloadUri"]).appendTo(elementId);
genPackageBadgeHTML(record['json'], record['downloadUri']).appendTo(record['packageListElementId']);
}
}

/**
* Query the latest packages, generate HTML badges and append
* them to the specified DOM object.
*/
function updateLatestPackages(requests, elementId)
function updateLatestPackages(requests)
{
// Clear the packages staging area.
packages = [];
Expand All @@ -134,13 +149,14 @@ <h3>Minimum System Requirements</h3>

// Request!
var deferred = $.ajax({
url: task["request"],
data: task["data"],
url: task['request'],
data: task['data'],
context: {
lt: task["downloadUri"]
downloadUri: task['downloadUri'],
packageListElementId: task['packageListElementId']
},
success: function(json){
addPackages(json, this.lt);
addPackages(json, this.downloadUri, this.packageListElementId);
}
});

Expand All @@ -151,7 +167,7 @@ <h3>Minimum System Requirements</h3>
// When all requests complete populate the package list.
$.when.apply(null, allDeferred).then(function()
{
populatePackages(elementId);
populatePackages();
});
}

Expand All @@ -166,6 +182,7 @@ <h3>Minimum System Requirements</h3>
platform: 'mac10_4-x86-ppc'
};
task['downloadUri'] = 'latestbuild?' + 'platform=mac10_4-x86-ppc';
task['packageListElementId'] = '#downloads_list1';
requests.push(task);

// Latest unstable packages.
Expand All @@ -177,7 +194,21 @@ <h3>Minimum System Requirements</h3>
unstable: 'yes'
};
task['downloadUri'] = 'latestbuild?' + 'platform=mac10_4-x86-ppc' + '&unstable';
task['packageListElementId'] = '#downloads_list2';
requests.push(task);

task = new Array();
task['request'] = 'latestbuild?';
task['data'] = {
graph: 'json',
platform: 'mac10_6-x86-x86_64',
unstable: 'yes'
};
task['downloadUri'] = 'latestbuild?' + 'platform=mac10_6-x86-x86_64' + '&unstable';
task['packageListElementId'] = '#downloads_list2';
requests.push(task);

updateLatestPackages(requests, '#downloads_list1');
removeAllChildren('#downloads_list1');
removeAllChildren('#downloads_list2');
updateLatestPackages(requests);
</script>
46 changes: 26 additions & 20 deletions web/plugins/pages/html/ubuntu.html
Expand Up @@ -79,13 +79,13 @@ <h3>Minimum System Requirements</h3>
* Called upon receipt of a new JSON package object graph to add it
* to the global list of packages.
*/
function addPackages(json, downloadUri, elementId)
function addPackages(json, downloadUri, packageListElementId)
{
var record = new Array();
var json_copy = json;
record["json"] = json_copy;
record["downloadUri"] = downloadUri;
record["elementId"] = elementId;
record['json'] = json_copy;
record['downloadUri'] = downloadUri;
record['packageListElementId'] = packageListElementId;
packages.push(record);
}

Expand All @@ -94,9 +94,9 @@ <h3>Minimum System Requirements</h3>
*/
function recordSorter(recordA, recordB)
{
var a = recordA["json"];
var a = recordA['json'];
var a_is_unstable = a.hasOwnProperty('is_unstable');
var b = recordB["json"];
var b = recordB['json'];
var b_is_unstable = b.hasOwnProperty('is_unstable');

// Order stable packages first.
Expand All @@ -105,6 +105,12 @@ <h3>Minimum System Requirements</h3>
return a_is_unstable? 1 : -1;
}

// Platform ids are arranged such that latest appears last.
if(a.platform_id != b.platform_id)
{
return a.platform_id > b.platform_id? 1 : -1;
}

// Use the lexicographical difference between titles.
return a.title - b.title;
}
Expand All @@ -121,7 +127,7 @@ <h3>Minimum System Requirements</h3>
for(var i in packages)
{
var record = packages[i];
genPackageBadgeHTML(record["json"], record["downloadUri"]).appendTo(record["elementId"]);
genPackageBadgeHTML(record['json'], record['downloadUri']).appendTo(record['packageListElementId']);
}
}

Expand All @@ -142,14 +148,14 @@ <h3>Minimum System Requirements</h3>

// Request!
var deferred = $.ajax({
url: task["request"],
data: task["data"],
url: task['request'],
data: task['data'],
context: {
downloadUri: task["downloadUri"],
elementId: task['elementId']
downloadUri: task['downloadUri'],
packageListElementId: task['packageListElementId']
},
success: function(json){
addPackages(json, this.downloadUri, this.elementId);
addPackages(json, this.downloadUri, this.packageListElementId);
}
});

Expand All @@ -175,7 +181,7 @@ <h3>Minimum System Requirements</h3>
platform: 'linux-x86'
};
task['downloadUri'] = 'latestbuild?' + 'platform=linux-x86';
task['elementId'] = '#downloads_list1';
task['packageListElementId'] = '#downloads_list1';
requests.push(task);

task = new Array();
Expand All @@ -185,7 +191,7 @@ <h3>Minimum System Requirements</h3>
platform: 'linux-x86_64'
};
task['downloadUri'] = 'latestbuild?' + 'platform=linux-x86_64';
task['elementId'] = '#downloads_list1';
task['packageListElementId'] = '#downloads_list1';
requests.push(task);

// Latest unstable Doomsday packages.
Expand All @@ -197,7 +203,7 @@ <h3>Minimum System Requirements</h3>
unstable: 'yes'
};
task['downloadUri'] = 'latestbuild?' + 'platform=linux-x86' + '&unstable';
task['elementId'] = '#downloads_list1';
task['packageListElementId'] = '#downloads_list1';
requests.push(task);

task = new Array();
Expand All @@ -208,7 +214,7 @@ <h3>Minimum System Requirements</h3>
unstable: 'yes'
};
task['downloadUri'] = 'latestbuild?' + 'platform=linux-x86_64' + '&unstable';
task['elementId'] = '#downloads_list1';
task['packageListElementId'] = '#downloads_list1';
requests.push(task);

// Latest stable FMOD Ex Plugin packages.
Expand All @@ -220,7 +226,7 @@ <h3>Minimum System Requirements</h3>
pack: 'FMOD Ex Audio Plugin'
};
task['downloadUri'] = 'latestbuild?' + 'platform=linux-x86' + '&pack=FMOD Ex Audio Plugin';
task['elementId'] = '#downloads_list2';
task['packageListElementId'] = '#downloads_list1';
requests.push(task);

task = new Array();
Expand All @@ -231,7 +237,7 @@ <h3>Minimum System Requirements</h3>
pack: 'FMOD Ex Audio Plugin'
};
task['downloadUri'] = 'latestbuild?' + 'platform=linux-x86_64' + '&pack=FMOD Ex Audio Plugin';
task['elementId'] = '#downloads_list2';
task['packageListElementId'] = '#downloads_list1';
requests.push(task);

// Latest unstable FMOD Ex Plugin packages.
Expand All @@ -244,7 +250,7 @@ <h3>Minimum System Requirements</h3>
unstable: 'yes'
};
task['downloadUri'] = 'latestbuild?' + 'platform=linux-x86' + '&pack=FMOD Ex Audio Plugin' + '&unstable';
task['elementId'] = '#downloads_list2';
task['packageListElementId'] = '#downloads_list2';
requests.push(task);

task = new Array();
Expand All @@ -256,7 +262,7 @@ <h3>Minimum System Requirements</h3>
unstable: 'yes'
};
task['downloadUri'] = 'latestbuild?' + 'platform=linux-x86_64' + '&pack=FMOD Ex Audio Plugin' + '&unstable';
task['elementId'] = '#downloads_list2';
task['packageListElementId'] = '#downloads_list2';
requests.push(task);

removeAllChildren('#downloads_list1');
Expand Down

0 comments on commit b896b0e

Please sign in to comment.