// JaSCL - JAvaScript Common Library
// Copyright (C) 2006 IP Labs GmbH <http://www.iplabs.de/>
// $Id: HTMLUtils.js 84386 2009-10-01 11:47:48Z k.reimer $
function HTMLUtils(){}HTMLUtils.hasClassName=function(s,t){var _;var a;if(!s||!s.className){return false;}_=s.className.split(" ");for(a in _){if(_[a]==t){return true;}}return false;};HTMLUtils.getElementsByClassName=function(s,t,w){var a;var c;var d;var e;var f;var g;if(w===undefined){w=-1;}else if(w>=0){w--;if(w<0)return[];}d=s.childNodes;f=[];for(a=0,c=d.length;a<c;a++){e=d[a];if(e){if(HTMLUtils.hasClassName(e,t)){f.push(e);}g=HTMLUtils.getElementsByClassName(e,t,w);if(g.length>0){f=f.concat(g);}}}return f;};HTMLUtils.getElementByClassName=function(s,t,w){var h;h=HTMLUtils.getElementsByClassName(s,t,w);if(h.length>0){return h[0];}else{return null;}};HTMLUtils.removeClassName=function(s,t){var _;var a,c;if(!s||!s.className){return false;}_=s.className.split(" ");for(a=0,c=_.length;a<c;a++){if(_[a]==t){_.splice(a,1);a--;}}s.className=_.join(" ");};HTMLUtils.addClassName=function(s,t){if(!s){return false;}if(HTMLUtils.hasClassName(s,t)){return false;}if(s.className){s.className+=" "+t;}else{s.className=t;}return true;};HTMLUtils.replaceClassName=function(s,F,G){HTMLUtils.removeClassName(s,F);HTMLUtils.addClassName(s,G);};HTMLUtils.getParentByClassName=function(s,t){var l;if(typeof(s.parentNode)===undefined){return null;}l=s;do{l=l.parentNode;if(HTMLUtils.hasClassName(l,t)){return l;}}while(l.parentNode!==null);return null;};HTMLUtils.getDocumentOffset=function(s){var m;var n;m=0;n=0;while(s!==null){m+=s.offsetLeft?s.offsetLeft:0;n+=s.offsetTop?s.offsetTop:0;s=s.offsetParent;}return{"x":m,"y":n};};HTMLUtils.getSiblingByTagName=function(s,L,M){M=(M===undefined)?'forward':M;s=(M=='forward')?s.nextSibling:s.previousSibling;while(s!==null){if(s.tagName==L.toUpperCase()){return s;}s=(M=='forward')?s.nextSibling:s.previousSibling;}return null;};HTMLUtils.getClassNames=function(s){var a;var f;var _;f=new Array();if(!s||!s.className){return f;}_=s.className.split(" ");for(a in _){f.push(_[a]);}return f;};HTMLUtils.removeChildren=function(s){for(var a=s.childNodes.length-1;a>=0;a--){s.removeChild(s.childNodes[a]);};};