summaryrefslogtreecommitdiff
path: root/src/www/minibar
diff options
context:
space:
mode:
authorhallgren <hallgren@chalmers.se>2012-02-22 14:12:31 +0000
committerhallgren <hallgren@chalmers.se>2012-02-22 14:12:31 +0000
commit2312b3c9c945bc641e2d4eb3de0410e0a069e063 (patch)
tree2d970a2b96f1ac762481829846bf0e3fdb4a8f72 /src/www/minibar
parent42410f80d214c1edcf9bd0cf52f538af023d7d5c (diff)
gfse: some refactoring
Diffstat (limited to 'src/www/minibar')
-rw-r--r--src/www/minibar/support.js26
1 files changed, 20 insertions, 6 deletions
diff --git a/src/www/minibar/support.js b/src/www/minibar/support.js
index 962426d53..08327d102 100644
--- a/src/www/minibar/support.js
+++ b/src/www/minibar/support.js
@@ -128,7 +128,7 @@ function text(s) { return document.createTextNode(s); }
function node(tag,as,ds) {
var n=document.createElement(tag);
for(var a in as) n.setAttribute(a,as[a]);
- for(var i in ds) n.appendChild(ds[i]);
+ if(ds) for(var i in ds) n.appendChild(ds[i]);
return n;
}
@@ -147,9 +147,7 @@ function span_id(id) { return empty_id("span",id); }
function wrap(tag,contents) { return node(tag,{},[contents]); }
function wrap_class(tag,cls,contents) {
- var el=empty_class(tag,cls);
- if(contents) el.appendChild(contents);
- return el;
+ return node(tag,{"class":cls},contents ? [contents] : [])
}
function span_class(cls,contents) { return wrap_class("span",cls,contents); }
@@ -177,6 +175,20 @@ function option(label,value) {
return node("option",{"value":value},[text(label)]);
}
+function hidden(name,value) {
+ return node("input",{type:"hidden",name:name,value:value},[])
+}
+
+function tda(cs) { return node("td",{},cs); }
+
+function img(src) { return empty("img","src",src); }
+
+/* --- Document modification ------------------------------------------------ */
+
+function clear(el) { replaceInnerHTML(el,""); }
+function replaceInnerHTML(el,html) { if(el) el.innerHTML=html; }
+function replaceChildren(el,newchild) { clear(el); el.appendChild(newchild); }
+
function appendChildren(el,ds) {
for(var i in ds) el.appendChild(ds[i]);
return el;
@@ -186,9 +198,11 @@ function insertFirst(parent,child) {
parent.insertBefore(child,parent.firstChild);
}
-function tda(cs) { return node("td",{},cs); }
+function insertBefore(el,ref) { ref.parentNode.insertBefore(el,ref); }
-function img(src) { return empty("img","src",src); }
+function insertAfter(el,ref) {
+ ref.parentNode.insertBefore(el,ref.nextSibling);
+}
/* --- Debug ---------------------------------------------------------------- */