cUtils.prototype.Dom = {};

// finds element this specific tag name in object childNodes. 
// returns first or last 
cUtils.prototype.Dom.getTag = function (obj, tag, first)
{   
    if (first == null)
        first = true;
    var start = first? 0 : obj.childNodes.length-1;
    var inc = first? 1 : -1;
    for(var i= start ; first? i < obj.childNodes.length : i > 0; i += inc)
    {
        if (obj.childNodes[i].tagName != null && obj.childNodes[i].tagName.toLowerCase() == tag.toLowerCase())
            return obj.childNodes[i];
    }
    return null;
}

// returns postions and size of element
cUtils.prototype.Dom.getBounds = function(element) 
{
  var left = element.offsetLeft;
  var top = element.offsetTop;
  for (var parent = element.offsetParent; parent; parent = parent.offsetParent)
  {
    left += parent.offsetLeft - parent.scrollLeft;
    top += parent.offsetTop - parent.scrollTop;
  }
  return {left: left, top: top, width: element.offsetWidth, height: element.offsetHeight};
}

cUtils.prototype.Dom.widthToInt = function(str) 
{
    return parseInt(str.replace("px",""));
}

cUtils.prototype.Dom.enableClass = function(id, className) 
{
    
    $(id).className = $(id).className.replace(className, "");
    $(id).className += " "+className
}

cUtils.prototype.Dom.disableClass = function(id, className) 
{
    $(id).className = $(id).className.replace(className, "");
}

cUtils.prototype.Dom.changeClass = function(id, oldClassName, newClassName) 
{
    this.disableClass(id,oldClassName);
    this.enableClass(id,newClassName);
}

