Blame | Last modification | View Log | RSS feed
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd"><html><head><title>Dijit I18N Demo</title><script>var djConfig = {parseOnLoad: true, isDebug: true},locale,lang,bidi;// read in HREF argumentsif(window.location.href.indexOf("?") > -1){var str = window.location.href.substr(window.location.href.indexOf("?")+1);var ary = str.split(/&/);for(var i=0; i<ary.length; i++){var split = ary[i].split(/=/),key = split[0],value = split[1];switch(key){case "locale":djConfig.locale = locale = value;lang = locale.replace(/-.*/, "");break;case "dir":document.getElementsByTagName("html")[0].dir = value;bidi = value;break;}}}</script><style type="text/css">@import "../../dojo/resources/dojo.css";@import "../themes/tundra/tundra.css";@import "../themes/tundra/tundra_rtl.css";@import "../tests/css/dijitTests.css";@import "i18n/flags.css";</style><script type="text/javascript" src="../../dojo/dojo.js"></script><script language="JavaScript" type="text/javascript">dojo.require("dojo.data.ItemFileReadStore");dojo.require("dijit.Tree");dojo.require("dijit._Calendar");dojo.require("dijit.form.DateTextBox");dojo.require("dijit.form.CurrencyTextBox");dojo.require("dijit.form.NumberSpinner");dojo.require("dijit.form.ComboBox");dojo.require("dijit.Menu");dojo.require("dojo.parser");dojo.addOnLoad(function(){dojo.byId("locale").innerHTML = locale || "default";dojo.byId("dir").innerHTML = bidi || "default";});</script></head><body class="tundra"><div dojoType="dojo.data.ItemFileReadStore" jsId="store"url="i18n/data.json"></div><h1 class="testTitle" dir="ltr">Dijit I18N Demo (locale=<span id="locale"></span> dir=<span id="dir"></span>)</h1><table width="100%"><tr><td width="30%" style="vertical-align: top;"><div dojoType="dijit.Tree" id="mytree" store="store" label="Continents" childrenAttr="languages"><!-- Override all the data access functions to work from the I18N data store --><script type="dojo/method" event="getItemChildren" args="item, onComplete">switch(item ? store.getValue(item, "type") : "top"){case "top":return store.fetch({query: {type:'continent'}, onComplete: onComplete});case "continent":return store.fetch({query: {continent: store.getValue(item, "iso")}, onComplete: onComplete});case "country":return dijit.Tree.prototype.getItemChildren.apply(this, arguments);}</script><script type="dojo/method" event="mayHaveChildren" args="item">if(!item){ return true; } // top levelvar type = store.getValue(item, "type");return (type == "continent" || type == "country");</script><!-- override functions for display of each node --><script type="dojo/method" event="getIconClass" args="item">var icon =(item && store.getValue(item, "type") == "country") ?("countryIcon country" + store.getValue(item, "iso") + "Icon") :null;return icon;</script><script type="dojo/method" event="getLabel" args="item">var localizedName = lang && store.getValue(item, lang);return localizedName || (store.getLabel(item) + " \u202b" + "(" + store.getIdentity(item) + ")\u202c");</script><!-- clicking a node refreshes the page with new locale setting --><script type="dojo/method" event="onClick" args="item, node">var type = store.getValue(item, "type");if(type == "language"){var lang = store.getIdentity(item),locale = lang + "-" + store.getIdentity(node.getParent().item).toLowerCase(),dir = /ar|fa|he|ps|ur|yi/i.test(lang) ? "rtl" : "ltr";window.location.href = window.location.href.replace(/\?.*/, "") + "?locale=" + locale + "&dir=" + dir;}else{alert("Please click a language, not a country or continent.");}</script></div></td><td style="vertical-align: top;"><p dir="ltr">Use the tree to select a language or a language/country combo; the page will reloadin the specified locale. Note that tree is also rerendered using the specified language for top level tree items.Arabic and Hebrew display right-to-left so be sure to try those.</p><input dojoType="dijit._Calendar"/><p>Some form controls:</p><label for="date">Date:</label><input id="date" dojoType="dijit.form.DateTextBox" value="2006-07-04"/><br/><label for="spinner">Number spinner:</label><input id="spinner" dojoType="dijit.form.NumberSpinner" value="123456789"/><br/><label for="currency">Currency:</label><input id="currency" type="text" name="income1" value="54775.53"dojoType="dijit.form.CurrencyTextBox"required="true"constraints="{fractional:true}"currency="USD"/><br/><label for="combo1">Simple Combo:</label><select id="combo1" dojoType="dijit.form.ComboBox"><option>option #1</option><option>option #2</option><option>option #3</option></select><br/><label for="combo2">Combo on languages and countries:</label><input id="combo2" dojoType="dijit.form.ComboBox"value=""store="store"searchAttr="name"name="anything"/></td></tr></table></body></html>