2 var elements = new Array();
4 for (var i = 0; i < arguments.length; i++) {
5 var element = arguments[i];
7 if (typeof element == 'string')
8 element = document.getElementById(element) || undefined;
10 if (arguments.length == 1)
13 elements.push( element );
19 function _l(l) { location.href = l + location.search; }
21 function map (func, list) {
23 for (var i = 0; i < list.length; i++) ret.push(func(list[i]));
27 function grep (func, list) {
29 for (var i = 0; i < list.length; i++) if(func(list[i])) ret.push(list[i]);
33 function getSelectedItems(tree) {
34 var start = new Object();
35 var end = new Object();
36 var numRanges = tree.view.selection.getRangeCount();
39 for (var t=0; t<numRanges; t++){
40 tree.view.selection.getRangeAt(t,start,end);
41 for (var v=start.value; v<=end.value; v++){
42 itemList.push( tree.getElementsByTagName('treeitem')[v]);
49 function findAncestor (node, name) {
50 if (node.nodeName == name) return node;
51 if (!node.parentNode) return null;
52 return findAncestor(node.parentNode, name);
55 function findAncestorStack (node, name, stack) {
56 if (node.nodeName == name) stack.push(node);
57 if (!node.parentNode) return null;
58 findAncestorStack(node.parentNode, name, stack);
61 function filterByAttribute(nodes,attrN,attrV) {
63 for ( var i = 0; i < nodes.length; i++ ) {
64 if ( nodes[i].getAttribute(attrN) == attrV ) aResponse.push(nodes[i]);
69 function filterByAttributeNS(nodes,ns,attrN,attrV) {
71 for ( var i = 0; i < nodes.length; i++ ) {
72 if ( nodes[i].getAttributeNS(ns,attrN) == attrV ) aResponse.push(nodes[i]);
77 function getKeys (hash) {
79 for (var i in hash) k.push(i);
83 /* This just lets us return an array consistent with the filterBy* functions */
84 function nodelistToArray (nodes) {
86 for ( var i = 0; i < nodes.length; i++ ) {
87 aResponse.push(nodes[i]);