~asac/ubufox/main

76 by Alexander Sack
* reinstatiate wiki version of hybrid startpage
1
<html>
2
<head>
3
<title></title>
4
5
<script><!--
6
78 by Alexander Sack
* remove locale detection for online startpage and use constant for
7
var HOMEPAGE_ONLINE = "http://start.ubuntu.com/8.04/";
77 by Alexander Sack
* reinstantiate locale detection from useragent preference
8
var HOMEPAGE_OFFLINE = "file:///usr/share/ubuntu-artwork/home/index.html"
81 by Alexander Sack
* use translated offline page based on user agent locale if thats available.
9
var HOMEPAGE_OFFLINE_TMPL = "/usr/share/ubuntu-artwork/home/locales/index-"
10
11
var prefs = Components.classes["@mozilla.org/preferences-service;1"]
12
           .getService(Components.interfaces.nsIPrefBranch);
13
var userAgentLocaleLocalized =
14
    prefs.getComplexValue("general.useragent.locale",
15
                          Components.interfaces.nsIPrefLocalizedString);
16
var userAgentLocale = null;
17
if (userAgentLocaleLocalized) {
18
    userAgentLocale = userAgentLocaleLocalized.toString();
19
} else {
20
    userAgentLocale = prefs.getCharPref("general.useragent.locale");
21
}
22
23
function get_valid_offlinehomepage() {
24
   var canonicalLangCode = userAgentLocale.replace("-","_");
25
26
   var preferredHomepage = HOMEPAGE_OFFLINE_TMPL + canonicalLangCode + ".html";
27
28
   var file = Components.classes['@mozilla.org/file/local;1']
29
              .createInstance(Components.interfaces.nsILocalFile);
30
31
   file.initWithPath(preferredHomepage);
32
33
   if (!file.exists())
34
     return HOMEPAGE_OFFLINE;
35
   return "file://"+preferredHomepage;
36
}
77 by Alexander Sack
* reinstantiate locale detection from useragent preference
37
76 by Alexander Sack
* reinstatiate wiki version of hybrid startpage
38
function getwebsite_async() {
39
  var req = new XMLHttpRequest();
81 by Alexander Sack
* use translated offline page based on user agent locale if thats available.
40
  setTimeout("window.location=\""+get_valid_offlinehomepage()+"\"", 4000);
77 by Alexander Sack
* reinstantiate locale detection from useragent preference
41
  req.open('HEAD', HOMEPAGE_ONLINE, true);
76 by Alexander Sack
* reinstatiate wiki version of hybrid startpage
42
  req.onreadystatechange = function (aEvt) {
77 by Alexander Sack
* reinstantiate locale detection from useragent preference
43
76 by Alexander Sack
* reinstatiate wiki version of hybrid startpage
44
    if (req.readyState > 1) {
77 by Alexander Sack
* reinstantiate locale detection from useragent preference
45
      if(req.status == 200)
78 by Alexander Sack
* remove locale detection for online startpage and use constant for
46
       window.location=HOMEPAGE_ONLINE;
77 by Alexander Sack
* reinstantiate locale detection from useragent preference
47
      else
81 by Alexander Sack
* use translated offline page based on user agent locale if thats available.
48
       window.location=get_valid_offlinehomepage();
76 by Alexander Sack
* reinstatiate wiki version of hybrid startpage
49
    }
50
  };
51
  req.send(null); 
52
}
53
--></script>
54
55
</head>
56
<body onload="getwebsite_async()">
57
</body>
58
</html>