function DrCssTools() {
}

// get element by id, return null if not ok
DrCssTools.getEBI = function(id) {
	element = document.getElementById(id);
	if (typeof element == "undefined" || element == null)
		return null;
	return element;
}


// give "hover" class for the tags 'tagName' in the element 'elementId'
// when mouse is on this element
DrCssTools.setHoverOn = function(elementId, tagName) {

	element = DrCssTools.getEBI(elementId);
	if (element == null) return;

	elements = element.getElementsByTagName(tagName);
	for (i in elements) {
		elements[i].onmouseover = function() {
			DrCssTools.addClassTo(this, 'hover');
		}
		elements[i].onmouseout = function() {
			DrCssTools.delClassFrom(this, 'hover');
		}
	}

}

// add 'class' to element id
DrCssTools.addClassToId = function(elementId, className) {
	element = DrCssTools.getEBI(elementId);
	if (element == null) return false;
	return DrCssTools.addClassTo(element, className);
}

// remove 'className' from element id
DrCssTools.delClassFromId = function(elementId, className) {
	element = DrCssTools.getEBI(elementId);
	if (element == null) return false;
	return DrCssTools.delClassFrom(element, className);
}

// add 'class' to 'element.className'
DrCssTools.addClassTo = function(element, className) {
	classes = element.className.split(' ');
	for (i in classes)
		if (classes[i] == className)
			return false;
	classes.push(className);
	element.className = classes.join(' ');
	return true;
}

// remove 'className' from 'element.className'
DrCssTools.delClassFrom = function(element, className) {
	classes = element.className.split(' ');
	found = false;
	for (i in classes)
		if (classes[i] == className) {
			delete classes[i];
			found = true;
		}
	if (found)
		element.className = classes.join(' ');
	return found;
}

// hide element by Id
DrCssTools.hideElementId = function(elementId) {
	element = DrCssTools.getEBI(elementId);
	if (element == null) return false;
	return DrCssTools.hideElement(element);
}

// show element by Id
DrCssTools.showElementId = function(elementId) {
	element = DrCssTools.getEBI(elementId);
	if (element == null) return false;
	return DrCssTools.showElement(element);
}

// toggle element visibility by id
DrCssTools.toggleElementId = function(elementId) {
	element = DrCssTools.getEBI(elementId);
	if (element == null) return false;
	return DrCssTools.toggleElement(element);
}

// hide element
DrCssTools.hideElement = function(element) {
	element.style.display =  'none';
}

// show element
DrCssTools.showElement = function(element) {
	element.style.display =  '';
}

// toggle element visibility
DrCssTools.toggleElement = function(element) {
	if (element.style.display == 'none') {
		element.style.display =  '';
		return true;
	} else {
		element.style.display =  'none';
		return false;
	}
}



