summaryrefslogtreecommitdiff
path: root/old-lib/javascript/translator.js
diff options
context:
space:
mode:
authoraarne <aarne@chalmers.se>2009-06-22 15:39:08 +0000
committeraarne <aarne@chalmers.se>2009-06-22 15:39:08 +0000
commite89fdae2fa1626348d8025824a7469252fa85e42 (patch)
treec7d46bbd0494043b4bd6f917a25a7687517d0547 /old-lib/javascript/translator.js
parent3049b59b35b25381a7c6787444165c200d66e08b (diff)
next-lib renamed to lib, lib to old-lib
Diffstat (limited to 'old-lib/javascript/translator.js')
-rw-r--r--old-lib/javascript/translator.js51
1 files changed, 51 insertions, 0 deletions
diff --git a/old-lib/javascript/translator.js b/old-lib/javascript/translator.js
new file mode 100644
index 000000000..31da04290
--- /dev/null
+++ b/old-lib/javascript/translator.js
@@ -0,0 +1,51 @@
+function formatTranslation (outputs) {
+ var dl1 = document.createElement("dl");
+ dl1.className = "fromLang";
+ for (var fromLang in outputs) {
+ var ul = document.createElement("ul");
+ addDefinition(dl1, document.createTextNode(fromLang), ul);
+ for (var i in outputs[fromLang]) {
+ var dl2 = document.createElement("dl");
+ dl2.className = "toLang";
+ for (var toLang in outputs[fromLang][i]) {
+ addDefinition(dl2, document.createTextNode(toLang), document.createTextNode(outputs[fromLang][i][toLang]));
+ }
+ addItem(ul, dl2);
+ }
+ }
+
+ return dl1;
+}
+
+/* DOM utilities for specific tags */
+
+function addDefinition (dl, t, d) {
+ var dt = document.createElement("dt");
+ dt.appendChild(t);
+ dl.appendChild(dt);
+ var dd = document.createElement("dd");
+ dd.appendChild(d);
+ dl.appendChild(dd);
+}
+
+function addItem (ul, i) {
+ var li = document.createElement("li");
+ li.appendChild(i);
+ ul.appendChild(li);
+}
+
+function addOption (select, value, content) {
+ var option = document.createElement("option");
+ option.value = value;
+ option.appendChild(document.createTextNode(content));
+ select.appendChild(option);
+}
+
+/* General DOM utilities */
+
+/* Removes all the children of a node */
+function removeChildren(node) {
+ while (node.hasChildNodes()) {
+ node.removeChild(node.firstChild);
+ }
+}