make header box on main site more like we want it to be, also make its download box dynamic when JS is available
authorkairo@kairo.at
Fri, 31 Aug 2007 15:53:17 +0000
changeset 16 16fb610d9636154237ef147396643c6f17ada0ce
parent 15 4836bbb2a54b385d4f2d135c7c08e37456a1adc3
child 17 0f512edd95cab7a32ceb5eb29e5a4a400c770cca
push id1
push userhg
push dateTue, 07 Apr 2015 21:00:21 +0000
make header box on main site more like we want it to be, also make its download box dynamic when JS is available
src/css/artemia/content.css
src/download.js
src/images/seamonkey-screen.png
src/index.en.html
src/start/index.en.html
--- a/src/css/artemia/content.css
+++ b/src/css/artemia/content.css
@@ -165,136 +165,20 @@ p.important {
   margin: 1em 0;
   padding: 1em;
   border: 1px solid #FF9999;
   background: #FFFF99;
   color: black;
   font-size: 1.1em;
 }
 
-/* "main feature" - XXX: this is for the main page, not clear yet how we'll deal with this */
-
-  #main-feature {
-    margin-top: -24px;
-    background: #EFF3F7 url("/images/template/feature-back.png") bottom repeat-x;
-  }
-
-  #main-feature h2 {
-    margin: 10px 0 0 0;
-    border: none;
-  }
-
-  #main-feature p.product-intro {
-    margin: 0 0 10px 0;
-    line-height: 145%;
-    color: #414D66;
-  }
-
-  #main-feature .feature-contents {
-    padding: 15px 50px 65px 50px;
-    position: relative; /* this is required to absolutely position contained elements */
-    background: url("/images/home/feature-sun.png") bottom right no-repeat;
-  }
-
-  #main-feature .feature-contents { height: 250px; }
-  body>#main-feature .feature-contents { height: auto; min-height: 260px; }
-
-  #main-feature .brief-feature { height: auto !important; min-height: 10px !important; }
-  * html #main-feature .brief-feature { padding-bottom: 5px !important }
-
-  /* this hack is required for IE6 */
-  /* Hides from IE-mac \*/
-  * html #main-feature { height: 1%;}
-  /* End hide from IE-mac */
-
-  #main-feature a.download-link {
-    display: block;
-    padding: 0 0 12px 0;
-    margin-bottom: 0.2em;
-    text-decoration: none;
-    color: #256504;
-    width: 285px;
-    margin-left: -8px;
-  }
-
-  #main-feature a.download-firefox {
-    background: url("/images/template/download-firefox.png") 0 100% no-repeat;
-  }
-
-  #main-feature .brief-feature a.download-firefox {
-    background: url("/images/template/download-firefox-white.png") 0 100% no-repeat;
-    margin-right: 40px;
-    margin-left: 0;
-  }
-
-  #main-feature a.download-link span {
-    display: block;
-    padding: 9px 10px 0 58px;
-    min-height: 43px;
-  } * html #main-feature a.download-link span { height: 43px; }
-
-  #main-feature a.download-firefox span {
-    background: url("/images/template/download-firefox.png") 0 0 no-repeat;
-  }
-
-  #main-feature .brief-feature a.download-firefox span {
-    background: url("/images/template/download-firefox-white.png") 0 0 no-repeat;
-  }
-
-  #main-feature a.download-link strong {
-    font: 140% sans-serif;
-    letter-spacing: -0.02em;
-    text-decoration: underline;
-    color: #256504;
-  }
-
-  #main-feature a.download-link em {
-    font-style: normal;
-    color: #367D10;
-    letter-spacing: 0;
-    display: block;
-    padding-top: 3px;
-    font-size: 85%;
-  }
-
-  #main-feature a.download-link:hover, #main-feature a.download-link:hover span, #main-feature a.download-link:hover strong {
-    color: #143802;
-    cursor: pointer; /* need for IE6 */
-    background-position: 100% 100%;
-  }
-
-  #main-feature a.download-link:hover span {
-    background-position: 100% 0;
-  }
-
-  #main-feature .download-info {
-    font-size: 85%;
-    color: #666;
-    padding: 0;
-  }
-
-  #main-feature .download-other {
-    font-size: 85%;
-    color: #515F78;
-    padding-left: 8px;
-  }
-
-  .brief-feature .home-download {
-    float: right;
-  }
-
-  #main-feature .product-image {
-    float: right;
-    margin-left: 1.5em;
-    margin-top: 1em;
-  }
-
-  #main-feature h2, #main-feature h3, #main-feature h4 {
-    border: none;
-  }
+.shout {
+  font-size: 145%;
+  color: red;
+}
 
 /* Computers - General */
 
 kbd {
   margin: 0.1em;
   padding: 0.1em;
   border: 1px #ccc;
 }
@@ -358,75 +242,65 @@ tr.odd {
 /* Meta */
 
 address {
   color: #666;
 }
 
 /* Product Specific CSS */
 
-.key-point h1, .key-point h3 {
+.key-point h1, .key-point h2, .key-point h3 {
   margin: 0;
 }
 
-#product-desc h2 {
-  text-indent: -700em;
-  height: 25px;
-  line-height: 2px;
-  font-size: 2px;
-}
-
 #product-desc p {
-  padding-left: 170px;
+  padding-left: 175px;
+  margin-top: 0;
 }
 
-#product-desc ul, #key-desc {
+#product-desc ul {
   padding-left: 190px;
-  margin-bottom: 0;    
+  margin-bottom: 0;
 }
 
-#product-side, #key-side, .key-info-side {
+#product-side {
+  padding-top: 85px;
+}
+
+#product-side, .key-info-side {
   margin-left: 65%;
 }
 
-#product-side ul, #key-side ul, .key-info-side ul {
+#product-side ul, .key-info-side ul {
   margin-left: 0;
   padding-bottom: 0;
   padding-left: 20px;
 }
 
-#product-side li, #key-side, .key-info-side li {
+#product-side li, .key-info-side li {
   padding-bottom: 0.2em;
 }
 
-#product-desc, #key-desc {
-  padding: 40px 0 25px 0;
+#product-desc {
+  padding: 0;
   color: #4C5C5C;
   width: 60%;
   float: left;
   line-height: 140%;
 }
 
 .key-info-desc {
   padding: 0.2em 0;
   width: 60%;
   float: left;
   line-height: 140%;
 }
 
-#key-desc {
-  padding: 0;
-}
-
-#key-side {
-  color: #4C5C5C;
-}
-
 .product-seamonkey {
-  background: url("/images/project-seamonkey-screen.png") no-repeat;
+  background: url("/images/seamonkey-screen.png") 7px 93px no-repeat;
 }
 
 .download h3 {
   color: #1D9101;
   font-weight: bold;
   border: none;
   margin: 0;
   font-size: 140%;
@@ -446,16 +320,17 @@ address {
   padding: 0;
   margin: 0;
 }
 .download ul {
   margin-top: 0;
   margin-bottom: 0;
   padding-bottom: 0;
 }
+
 .download:before {
   line-height: 0.1;
   font-size: 1px;
   margin: -15px -15px 0 -15px;
   height: 15px;
   display: block;
   border: none;
   content: url("/images/box/download_tl.gif");
@@ -471,61 +346,45 @@ address {
   padding-top: 15px;
   line-height: 0.1;
   font-size: 1px;
   content:  url("/images/box/download_bl.gif");
   margin: -10px -45px -15px -15px;
   height: 8px;
   background: transparent url("/images/box/download_br.gif") scroll no-repeat bottom right ;
 }
+
 .key-point .download:before {
   content: url("/images/box/key-download_tl.gif");
 }
 .key-point .download {
   background-image: url("/images/box/key-download_back.gif");
 }
 .key-point .download:after {
   content:  url("/images/box/key-download_bl.gif");
   background-image: url("/images/box/key-download_br.gif");
 }
+
 .download .other a:link, .download .other a:visited { color: #666; }
 .download .other a:hover { color: #000; }
 .download .other {
   padding-top: 3px;
   font-size: 75%;
   font-style: italic;
 }
+
 .download .main {
   font-weight: bold;
 }
 
 .configParent {
   display: block;
   font-size: 85%;
 }
 
-/* Simple Logo Boxes - XXX: this section needs to be figured out still */
-
-.firefox-logo {
-  padding-left: 72px;
-  min-height: 70px;
-  margin-bottom: 1em;
-  display: block; /* so this can be used for links */
-}
-
-* html .firefox-logo { height: 70px; } /* min-height for IE */
-
-.firefox-logo h2, .firefox-logo h3, .firefox-logo h4 {
-  border-bottom: none;
-}
-
-.firefox-logo {
-  background: url("/images/firefox-logo-64x64.png") no-repeat;
-}
-
 /* release pages */
 
 .release-date {
   text-align: right;
   margin-top: 0;
 }
 
 #old {
new file mode 100644
--- /dev/null
+++ b/src/download.js
@@ -0,0 +1,212 @@
+var gPlatform = PLATFORM_WINDOWS;
+
+var PLATFORM_OTHER    = 0;
+var PLATFORM_WINDOWS  = 1;
+var PLATFORM_LINUX    = 2;
+var PLATFORM_MACOSX   = 3;
+var PLATFORM_MAC      = 4;
+
+if (navigator.platform.indexOf("Win32") != -1)
+  gPlatform = PLATFORM_WINDOWS;
+else if (navigator.platform.indexOf("Linux") != -1)
+  gPlatform = PLATFORM_LINUX;
+else if (navigator.userAgent.indexOf("Mac OS X") != -1)
+  gPlatform = PLATFORM_MACOSX;
+else if (navigator.userAgent.indexOf("MSIE 5.2") != -1)
+  gPlatform = PLATFORM_MACOSX;
+else if (navigator.platform.indexOf("Mac") != -1)
+  gPlatform = PLATFORM_MAC;
+else
+  gPlatform = PLATFORM_OTHER;
+
+// "" for a version means it should be "Not Yet Available" on all.html,
+// null means it should not be listed
+// A region code of "-" means that no region code should be used.
+var gLanguages = {
+  "af":  { "za": { version: null,      name: "Afrikaans",                localName: "Afrikaans" } },
+  "ast": { "es": { version: null,      name: "Asturian",                 localName: "Asturianu" } },
+  "ar":  { "-":  { version: null,      name: "Arabic",                   localName: "\u0639\u0631\u0628\u064A" } },
+  "be":  { "-":  { version: null,      name: "Byelorussian",             localName: "\u0411\u0435\u043B\u0430\u0440\u0443\u0441\u043A\u0430\u044F" } },
+  "bg":  { "-":  { version: null,      name: "Bulgarian",                localName: "\u0411\u044A\u043B\u0433\u0430\u0440\u0441\u043A\u0438" } },
+  "br":  { "fr": { version: null,      name: "Breton",                   localName: "Brezhoneg" } },
+  "ca":  { "-":  { version: null,      name: "Catalan",                  localName: "Catal\u00E0" } },
+  "cs":  { "-":  { version: null,      name: "Czech",                    localName: "\u010Ce\u0161tina" } },
+  "cy":  { "gb": { version: null,      name: "Welsh",                    localName: "Cymraeg" } },
+  "da":  { "-":  { version: null,      name: "Danish",                   localName: "Dansk" } },
+  "de":  { "-":  { version: null,      name: "German",                   localName: "Deutsch" } },
+  "el":  { "-":  { version: null,      name: "Greek",                    localName: "\u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AE" } },
+  "en":  { "us": { version: "1.1.4",   name: "English",                  localName: "English" },
+           "gb": { version: null,      name: "English (British)",        localName: "English (British)" } },
+  "es":  { "ar": { version: null,      name: "Spanish (Latin American)", localName: "Espa\u00F1ol (de Am\u00E9rica)" },
+           "es": { version: null,      name: "Spanish (Spain)",          localName: "Espa\u00F1ol (de Espa\u00F1a)" } },
+  "eu":  { "-":  { version: null,      name: "Basque",                   localName: "Euskara" } },
+  "fi":  { "-":  { version: null,      name: "Finnish",                  localName: "Suomi" } },
+  "fr":  { "-":  { version: null,      name: "French",                   localName: "Fran\u00e7ais" } },
+  "fy":  { "nl": { version: null,      name: "Frisian",                  localName: "Frysk" } },
+  "ga":  { "ie": { version: null,      name: "Irish",                    localName: "Gaeilge" } },
+  "gu":  { "in": { version: null,      name: "Gujarati",                 localName: "\u0A97\u0AC1\u0A9C\u0AB0\u0ABE\u0AA4\u0AC0" } },
+  "he":  { "-":  { version: null,      name: "Hebrew",                   localName: "\u05E2\u05D1\u05E8\u05D9\u05EA" } },
+  "hu":  { "-":  { version: null,      name: "Hungarian",                localName: "Magyar" } },
+  "hy":  { "am": { version: null,      name: "Armenian",                 localName: "\u0540\u0561\u0575\u0565\u0580\u0565\u0576" } },
+  "it":  { "-":  { version: null,      name: "Italian",                  localName: "Italiano" } },
+  "ja":  { "-":  { version: null,      name: "Japanese",                 localName: "\u65e5\u672c\u8a9e" } },
+  "ko":  { "-":  { version: null,      name: "Korean",                   localName: "\uD55C\uAD6D\uC5B4" } },
+  "lt":  { "-":  { version: null,      name: "Lithuanian",               localName: "Lietuvi\u0173" } },
+  "mk":  { "-":  { version: null,      name: "Macedonian",               localName: "\u041C\u0430\u043A\u0435\u0434\u043E\u043D\u0441\u043A\u0438" } },
+  "mn":  { "-":  { version: null,      name: "Mongolian",                localName: "\u041C\u043E\u043D\u0433\u043E\u043B" } },
+  "nb":  { "no": { version: null,      name: "Norwegian (Bokm\u00E5l)",  localName: "Norsk bokm\u00E5l" } },
+  "nn":  { "no": { version: null,      name: "Norwegian (Nynorsk)",      localName: "Norsk nynorsk" } },
+  "nl":  { "-":  { version: null,      name: "Dutch",                    localName: "Nederlands" } },
+  "pa":  { "in": { version: null,      name: "Punjabi",                  localName: "\u0A2A\u0A70\u0A1C\u0A3E\u0A2C\u0A40" } },
+  "pl":  { "-":  { version: null,      name: "Polish",                   localName: "Polski" } },
+  "pt":  { "br": { version: null,      name: "Portuguese (Brazilian)",   localName: "Portugu\u00EAs (do Brasil)" },
+           "pt": { version: null,      name: "Portuguese (Portugal)",    localName: "Portugu\u00EAs (Europeu)" } },
+  "ro":  { "-":  { version: null,      name: "Romanian",                 localName: "Rom\u00E2n\u0103" } },
+  "ru":  { "-":  { version: null,      name: "Russian",                  localName: "\u0420\u0443\u0441\u0441\u043A\u0438\u0439" } },
+  "sk":  { "-":  { version: null,      name: "Slovak",                   localName: "Slovensk\u00FD" } },
+  "sl":  { "-":  { version: null,      name: "Slovenian",                localName: "Slovensko" } },
+  "sq":  { "-":  { version: null,      name: "Albanian",                 localName: "Shqipe" } },
+  "sv":  { "se": { version: null,      name: "Swedish",                  localName: "Svenska" } },
+  "tr":  { "-":  { version: null,      name: "Turkish",                  localName: "T\u00FCrk\u00E7e" } },
+  "zh":  { "cn": { version: null,      name: "Chinese (Simplified)",     localName: "\u4E2D\u6587 (\u7B80\u4F53)" },
+           "tw": { version: null,      name: "Chinese (Traditional)",    localName: "\u6b63\u9ad4\u4e2d\u6587 (\u7E41\u9AD4)" } }
+};
+
+function LanguageID(aAB, aCD, aBuild)
+{
+  if (aCD == "-")
+    this.abCD = aAB;
+  else
+    this.abCD = aAB + "-" + aCD.toUpperCase();
+  for (var prop in aBuild)
+    this[prop] = aBuild[prop]
+}
+
+function buildValidForPlatform(aLangID, aPlatform)
+{
+  if ((aLangID.abCD == "gu-IN" || aLangID.abCD == "pa-IN") &&
+      aPlatform == PLATFORM_MACOSX)
+    return false;
+
+  return true;
+}
+
+function getLanguageID()
+{
+  var language = "";
+  if (navigator.language)
+    language = navigator.language;
+  else if (navigator.userLanguage)
+    language = navigator.userLanguage;
+  else if (navigator.systemLanguage)
+    language = navigator.systemLanguage;
+
+  // Convert "en" to "en-US" as well since en-US build is the canonical
+  // translation, and thus better tested.
+  if (language == "" || language == "en")
+    language = "en-US";
+
+  // Konqueror uses '_' where other browsers use '-'.
+  if (language.indexOf("_") != -1)
+    language = language.split("_").join("-");
+
+  language = language.toLowerCase();
+  var languageCode = language.split("-")[0];
+  var regionCode = language.split("-")[1];
+
+  // String comparison actually works for version numbers.
+  var currentVersion = gLanguages["en"]["us"]["version"];
+  var bestVersion = "";
+  var id = null;
+
+  if (gLanguages[languageCode]) {
+    var region;
+    var build;
+    var langid;
+
+    for (region in gLanguages[languageCode]) {
+      build = gLanguages[languageCode][region];
+      if (build["version"] && regionCode == region) {
+        langid = new LanguageID(languageCode, regionCode, build);
+        if (buildValidForPlatform(langid, gPlatform)) {
+          id = langid;
+          bestVersion = build["version"];
+        }
+      }
+    }
+
+    // We have a localized build for this language, but not this region.
+    // use the first available region with the highest version
+
+    if (bestVersion != currentVersion) {
+      var bestRegionVersion = "";
+      for (region in gLanguages[languageCode]) {
+        build = gLanguages[languageCode][region];
+        if (build["version"] > bestVersion) {
+          langid = new LanguageID(languageCode, region, build);
+          if (buildValidForPlatform(langid, gPlatform) &&
+              (build["version"] > bestRegionVersion)) {
+            id = langid;
+            bestRegionVersion = build["version"];
+          }
+        }
+      }
+      if (bestRegionVersion > bestVersion)
+        bestVersion = bestRegionVersion;
+    }
+  }
+  if (bestVersion != currentVersion) {
+    id = new LanguageID("en", "us", gLanguages["en"]["us"]);
+  }
+
+  return id;
+}
+
+function highlightDownload(aIdBase)
+{
+  if (gPlatform == PLATFORM_WINDOWS) {
+    document.getElementById(aIdBase + "-win").className = "main";
+    document.getElementById(aIdBase + "-linux").style.display = "none";
+    document.getElementById(aIdBase + "-mac").style.display = "none";
+  }
+  else if (gPlatform == PLATFORM_LINUX) {
+    document.getElementById(aIdBase + "-win").style.display = "none";
+    document.getElementById(aIdBase + "-linux").className = "main";
+    document.getElementById(aIdBase + "-mac").style.display = "none";
+  }
+  else if (gPlatform == PLATFORM_MACOSX) {
+    document.getElementById(aIdBase + "-win").style.display = "none";
+    document.getElementById(aIdBase + "-linux").style.display = "none";
+    document.getElementById(aIdBase + "-mac").className = "main";
+  }
+  else {
+    document.getElementById(aIdBase + "-win").style.display = "none";
+    document.getElementById(aIdBase + "-linux").style.display = "none";
+    document.getElementById(aIdBase + "-mac").style.display = "none";
+    document.getElementById(aIdBase + "-other").className = "main";
+  }
+
+  // see if we need to change download box for localized version
+  var languageID = getLanguageID();
+  if (languageID.abCD != "en-US") {
+    // Japanese for Mac needs special rules
+    var mac_abCD = languageID.abCD;
+    if (mac_abCD == "ja-JP")
+        mac_abCD = "ja-JPM";
+    if (mac_abCD == "ja")
+        mac_abCD = "ja-JP-mac";
+
+    // download URLs - we only support bouncer URLs here!
+    document.getElementById(aIdBase + "-win-link").href =
+      document.getElementById(aIdBase + "-win-link").href.replace(/lang=en-US/, "lang=" + languageID.abCD);
+    document.getElementById(aIdBase + "-linux-link").href =
+      document.getElementById(aIdBase + "-linux-link").href.replace(/lang=en-US/, "lang=" + languageID.abCD);
+    document.getElementById(aIdBase + "-mac-link").href =
+      document.getElementById(aIdBase + "-mac-link").href.replace(/lang=en-US/, "lang=" + languageID.abCD);
+
+    // download language name
+    document.getElementById(aIdBase + "-win-lang").firstChild.data = languageID.name;
+    document.getElementById(aIdBase + "-linux-lang").firstChild.data = languageID.name;
+    document.getElementById(aIdBase + "-mac-lang").firstChild.data = languageID.name;
+  }
+}
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..d739755b72177e95e7796a65a22183a5e62f63b8
GIT binary patch
literal 28346
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
V;p>cW3)=ty002ovPDHLkV1fYEqCEfr
--- a/src/index.en.html
+++ b/src/index.en.html
@@ -1,57 +1,70 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
 <html lang="en">
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
 <meta http-equiv="Content-Language" content="en">
 <meta http-equiv="Content-Style-Type" content="text/css">
 
 <link rel="maintainer" title="Robert Kaiser" href="mailto:kairo@kairo.at">
-
 <link rel="top" href="./" title="SeaMonkey Project">
 <!-- link rel="up" href="./" title="Home" -->
 
+<script type="text/javascript" src="/download.js"></script>
+
 <title>The SeaMonkey&reg; Project</title>
 </head>
 <body>
 <div class="key-point">
   <div id="product-desc" class="product-seamonkey">
-    <h2>[% releasename %]</h2>
+    <h2><img src="/images/seamonkey_logo.gif" height="105" width="340" alt="[% releasename %]"></h2>
     <p>
       Web-browser, advanced e-mail and newsgroup client, IRC chat client, and
       HTML editing made simple -- all your Internet needs in one application.
     </p>
     <ul>
       <li><a href="doc/features">Features</a></li>
 
       <li><a href="[% relnotes %]">Release Notes</a><!-- /
           <a href="seamonkey-faq" title="frequently asked questions">FAQ</a> --></li>
     </ul>
   </div>
   <div id="product-side">
     <div class="download">
       <h3>Download Now</h3>
       <b>[% releasename %]</b>
       <ul>
-       <li><a href="[% download_win %]"
-              id="download-win32" title="[% download_win_mb * 2.44 %] min @ 56k/s"
-              >Windows, English ([% download_win_mb %] MB)</a></li>
-       <li><a href="[% download_linux %]"
-              id="download-linux" title="[% download_linux_mb * 2.44 %] min @ 56k/s"
-              >Linux GTK2, English ([% download_linux_mb %] MB)</a></li>
-       <li><a href="[% download_mac %]"
-              id="download-macosx" title="[% download_mac_mb * 2.44 %] min @ 56k/s"
-              >Mac OS X, English ([% download_mac_mb %] MB)</a></li>
-       <li><a href="[% download_more %]">Other Systems &amp; Languages</a></li>
+       <li id="download-win" class=""><a href="[% download_win %]"
+             title="[% download_win_mb * 2.44 %] min @ 56k/s"
+             id="download-win-link">Windows,
+           <span id="download-win-lang">English</span>
+           ([% download_win_mb %] MB)</a></li>
+       <li id="download-linux" class=""><a href="[% download_linux %]"
+             title="[% download_linux_mb * 2.44 %] min @ 56k/s"
+             id="download-linux-link">Linux GTK2,
+           <span id="download-linux-lang">English</span>
+           ([% download_linux_mb %] MB)</a></li>
+       <li id="download-mac" class=""><a href="[% download_mac %]"
+             title="[% download_mac_mb * 2.44 %] min @ 56k/s"
+             id="download-mac-link">Mac OS X,
+           <span id="download-mac-lang">English</span>
+           ([% download_mac_mb %] MB)</a></li>
+       <li id="download-other" class="other"><a href="[% download_more %]">Other
+           Systems &amp; Languages</a></li>
        <!-- 2.44 min/MB @ 56 k/s -->
       </ul>
     </div>
   </div>
 </div>
+<script type="text/javascript">
+  <!--
+  highlightDownload("download");
+  // -->
+</script>
 
 <h1>The SeaMonkey<sup>&reg;</sup> Project</h1>
 
 <p>
 The SeaMonkey project is a community effort to deliver production-quality
 releases of code derived from the application formerly known as
 "Mozilla Application Suite".
 Whereas the main focus of the Mozilla Corporation has shifted to Firefox,
--- a/src/start/index.en.html
+++ b/src/start/index.en.html
@@ -6,16 +6,18 @@
 <meta http-equiv="Content-Language" content="en">
 <meta http-equiv="Content-Style-Type" content="text/css">
 <meta http-equiv="Content-Script-Type" content="text/javascript">
 
 <link rel="maintainer" href="mailto:kairo@kairo.at" title="Robert Kaiser">
 <link rel="top" href="../" title="SeaMonkey Project">
 <link rel="up" href="../" title="Home">
 
+<script type="text/javascript" src="/download.js"></script>
+
 <title>Welcome to SeaMonkey</title>
 </head>
 <body>
 <h1>Welcome to SeaMonkey</h1>
 
 <script type="text/javascript"> <!--
   function buildTest() {
     var ua = navigator.userAgent;
@@ -24,16 +26,17 @@
     // var ua="Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.6) Gecko/20070802 SeaMonkey/1.1.4"
     // var ua="Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9a8pre) Gecko/2007082021 SeaMonkey/2.0a1pre"
     // var ua="Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.0rc3) Gecko/20020523"
 
     // Search for the Gecko build date in the User Agent string
     const buildID = ua.match(/Gecko\/(\d{8,10}) SeaMonkey/);
     if (!buildID) {
       // not SeaMonkey, display a "get SeaMonkey" box
+      highlightDownload("download");
       document.getElementById("stable").style.display = "none";
       document.getElementById("getseamonkey").style.display = "block";
       return;
     }
 
     const smver = ua.match(/SeaMonkey\/([^ ]+)/);
     // stable builds only have digits and dots in their version number!
     if (smver[1].match(/^[\d\.]+$/)) {
@@ -45,37 +48,19 @@
       const curver_parts = curver.split(".");
       var oldversion = false;
       for (var i = 0; i < curver_parts.length; i++) {
         if (parseInt(curver_parts[i]) > parseInt(smver_parts[i])) {
           oldversion = true;
         }
       }
       if (oldversion) {
-        if (navigator.platform.indexOf("Win32") != -1) {
-          document.getElementById("dlnew-win").className = "main";
-          document.getElementById("dlnew-linux").style.display = "none";
-          document.getElementById("dlnew-mac").style.display = "none";
-        }
-        else if (navigator.platform.indexOf("Linux") != -1) {
-          document.getElementById("dlnew-win").style.display = "none";
-          document.getElementById("dlnew-linux").className = "main";
-          document.getElementById("dlnew-mac").style.display = "none";
-        }
-        else if (navigator.platform.indexOf("Mac") != -1) {
-          document.getElementById("dlnew-win").style.display = "none";
-          document.getElementById("dlnew-linux").style.display = "none";
-          document.getElementById("dlnew-mac").className = "main";
-        }
-        else {
-          document.getElementById("dlnew-win").style.display = "none";
-          document.getElementById("dlnew-linux").style.display = "none";
-          document.getElementById("dlnew-mac").style.display = "none";
-          document.getElementById("dlnew-other").className = "main";
-        }
+        highlightDownload("dlnew");
+        var vertext = document.createTextNode(" (" + smver[1] + ")");
+        document.getElementById("oldvernumber").appendChild(vertext);
         document.getElementById("stable").style.display = "none";
         document.getElementById("oldstable").style.display = "block";
       }
     }
     else {
       // unstable build, test if nagging box should be displayed
       document.getElementById("stable").style.display = "none";
       document.getElementById("unstable").style.display = "block";
@@ -98,76 +83,83 @@
     }
   }
 
   addEventListener("load", buildTest, true);
   // -->
 </script>
 
 <div id="nagBox" class="important" style="display: none;">
-   <p><span style='font-size: 145%; color: red;'>Hey!</span> Your copy of
-      SeaMonkey is more than four weeks old. Unless you are using the latest
-      release or nightly build, bug reports get rapidly less useful the older
-      your copy is.</p>
+   <p><span class="shout">Hey!</span> Your copy of SeaMonkey is more than four
+      weeks old. Unless you are using the latest release or nightly build, bug
+      reports get rapidly less useful the older your copy is.</p>
    <p>So <b>if you're not running the <a href="../releases/">latest release</a>
       ([% releasename %])</b>, we could use your help testing either that or the
       <a href="http://ftp.mozilla.org/pub/mozilla.org/seamonkey/nightly/latest-trunk/">latest
       nightly build</a>. (Be warned that nightly builds are development software,
       and there is no guarantee that they won't fry your processor, insult your
       mother, or cause you to break out in a nasty rash.)</p>
 </div>
 
 <div id="stable" class="key-point">
 <strong class="very-strong">Congratulations!</strong> You've downloaded
 (or compiled) a stable version of SeaMonkey.
 
-<p>If you want to help making this application even better, we would encourage you
-to <a href="http://www.mozilla.org/dev/get-involved.html">take part in the SeaMonkey testing community</a>.
+<p>If you want to help making this application even better, we would encourage
+you to <a href="../dev/get-involved">take part in the SeaMonkey testing
+community</a>.
 Helping out won't take much of your time, doesn't require special skills,
 and will help improve SeaMonkey.
 </p>
 </div>
 
 <div id="oldstable" style="display: none;" class="key-point">
   <div class="key-info-desc">
-    <strong class="very-strong">Warning!</strong> You're using an old stable
-    version of SeaMonkey, while we offer a newer version which probably contains
+    <strong class="very-strong shout">Warning!</strong> You're using an old
+    stable version of SeaMonkey<span id="oldvernumber"></span>, while we offer
+    a newer version which probably contains
     <a href="http://www.mozilla.org/projects/security/known-vulnerabilities.html#SeaMonkey">important
     security fixes</a>.
 
     <p>We encourage you to <strong>download the newer version</strong> linked
     in the download box at the right to be safe from know vulnerabilites and be
     able to use the newest features in a stable SeaMonkey release.</p>
   </div>
   <div class="key-info-side">
     <div class="download">
       <h3>Download Now</h3>
       <b>[% releasename %]</b>
       <ul>
-       <li id="dlnew-win" class="hidden"><a href="[% download_win %]"
-              title="[% download_win_mb * 2.44 %] min @ 56k/s"
-              >Windows, English ([% download_win_mb %] MB)</a></li>
-       <li id="dlnew-linux" class="hidden"><a href="[% download_linux %]"
-              title="[% download_linux_mb * 2.44 %] min @ 56k/s"
-              >Linux GTK2, English ([% download_linux_mb %] MB)</a></li>
-       <li id="dlnew-mac" class="hidden"><a href="[% download_mac %]"
-              title="[% download_mac_mb * 2.44 %] min @ 56k/s"
-              >Mac OS X, English ([% download_mac_mb %] MB)</a></li>
+       <li id="dlnew-win" class=""><a href="[% download_win %]"
+             title="[% download_win_mb * 2.44 %] min @ 56k/s"
+             id="dlnew-win-link">Windows,
+           <span id="dlnew-win-lang">English</span>
+           ([% download_win_mb %] MB)</a></li>
+       <li id="dlnew-linux" class=""><a href="[% download_linux %]"
+             title="[% download_linux_mb * 2.44 %] min @ 56k/s"
+             id="dlnew-linux-link">Linux GTK2,
+           <span id="dlnew-linux-lang">English</span>
+           ([% download_linux_mb %] MB)</a></li>
+       <li id="dlnew-mac" class=""><a href="[% download_mac %]"
+             title="[% download_mac_mb * 2.44 %] min @ 56k/s"
+             id="dlnew-mac-link">Mac OS X,
+           <span id="dlnew-mac-lang">English</span>
+           ([% download_mac_mb %] MB)</a></li>
        <li id="dlnew-other" class="other"><a href="[% download_more %]">Other
-              Systems &amp; Languages</a></li>
+           Systems &amp; Languages</a></li>
        <!-- 2.44 min/MB @ 56 k/s -->
       </ul>
     </div>
   </div>
 </div>
 
 <div id="unstable" style="display: none;" class="key-point">
 <strong class="very-strong">Congratulations!</strong> You've downloaded
 (or compiled) a copy of SeaMonkey. This means that you've volunteered to
-<a href="http://www.mozilla.org/dev/get-involved.html">become part of the SeaMonkey testing community</a>.
+<a href="../dev/get-involved">become part of the SeaMonkey testing community</a>.
 
 <p>If that doesn't sound like something you meant to do, you might be better off
 with one of our <a href="../releases/">stable releases</a>.
 Otherwise, welcome aboard! Helping out won't take much of your time, doesn't
 require special skills, and will help improve SeaMonkey.</p>
 </div>
 
 <div id="getseamonkey" style="display: none;" class="key-point">
@@ -177,26 +169,33 @@ require special skills, and will help im
     <p>You can get the SeaMonkey suite, including browser, mail and more, for
     free download from the links shown on the right.</p>
   </div>
   <div class="key-info-side">
     <div class="download">
       <h3>Download Now</h3>
       <b>[% releasename %]</b>
       <ul>
-       <li><a href="[% download_win %]"
-              id="download-win32" title="[% download_win_mb * 2.44 %] min @ 56k/s"
-              >Windows, English ([% download_win_mb %] MB)</a></li>
-       <li><a href="[% download_linux %]"
-              id="download-linux" title="[% download_linux_mb * 2.44 %] min @ 56k/s"
-              >Linux GTK2, English ([% download_linux_mb %] MB)</a></li>
-       <li><a href="[% download_mac %]"
-              id="download-macosx" title="[% download_mac_mb * 2.44 %] min @ 56k/s"
-              >Mac OS X, English ([% download_mac_mb %] MB)</a></li>
-       <li><a href="[% download_more %]">Other Systems &amp; Languages</a></li>
+       <li id="download-win" class=""><a href="[% download_win %]"
+             title="[% download_win_mb * 2.44 %] min @ 56k/s"
+             id="download-win-link">Windows,
+           <span id="download-win-lang">English</span>
+           ([% download_win_mb %] MB)</a></li>
+       <li id="download-linux" class=""><a href="[% download_linux %]"
+             title="[% download_linux_mb * 2.44 %] min @ 56k/s"
+             id="download-linux-link">Linux GTK2,
+           <span id="download-linux-lang">English</span>
+           ([% download_linux_mb %] MB)</a></li>
+       <li id="download-mac" class=""><a href="[% download_mac %]"
+             title="[% download_mac_mb * 2.44 %] min @ 56k/s"
+             id="download-mac-link">Mac OS X,
+           <span id="download-mac-lang">English</span>
+           ([% download_mac_mb %] MB)</a></li>
+       <li id="download-other" class="other"><a href="[% download_more %]">Other
+           Systems &amp; Languages</a></li>
        <!-- 2.44 min/MB @ 56 k/s -->
       </ul>
     </div>
   </div>
 </div>
 
 <div style="width: 49%; float: right;">
   <h3 style="margin-top:0">Resources</h3>