// JavaScript Document
function addEvent(obj, eventType, fn)
{
	if (obj.addEventListener) {
		obj.addEventListener(eventType, fn, false);
		return true;
	} else if (obj.attachEvent) {
		var r = obj.attachEvent('on'+eventType, fn);
		return r;
	} else {
		return false;
	}
}

function checkColumnWidth(minWidth)
{
	var objWidth;
	if (document.all) { // Microsoft?
		objWidth = document.body.clientWidth;
	} else {
		objWidth = document.getElementById('pageContainer').clientWidth;
	}
	var el = document.getElementById('contentContainer');
	if (objWidth<minWidth) {
		el.className = 'small';
	} else {
		el.className = 'width';
	}
}

function ascendDOM(e, target)
{
  while (e.nodeName.toLowerCase() != target &&
      e.nodeName.toLowerCase() != 'html')
    e = e.parentNode;

  return (e.nodeName.toLowerCase() == 'html') ? null : e;
}

function getElementsByClassName(oElm, strTagName, strClassName){
    var arrElements = (strTagName == '*' && document.all)? document.all : oElm.getElementsByTagName(strTagName);
    var arrReturnElements = new Array();
    strClassName = strClassName.replace(/\-/g, '\\-');
    var oRegExp = new RegExp('(^|\\s)' + strClassName + '(\\s|$)');
    var oElement;
    for(var i=0; i<arrElements.length; i++){
        oElement = arrElements[i];      
        if(oRegExp.test(oElement.className)){
            arrReturnElements.push(oElement);
        }   
    }
    return (arrReturnElements)
}


function ascendDOMByClassName(e,className) {
	while (e.className != className && e.nodeName.toLowerCase() != 'html') {
		e = e.parentNode;
	}
	return (e.nodeName.toLowerCase() == 'html') ? null : e;
}


function showProductInfo(e) {
	if (e) {
		var nodeRef = ascendDOMByClassName(e, 'product');
		if (nodeRef) {
			nodeRef.className = 'product open';
		} else {
			return false;
		}
	}
}

function hideProductInfo(e) {
	if (e) {
		var nodeRef = ascendDOMByClassName(e, 'product open');
		if (nodeRef) {
			nodeRef.className = 'product';
		} else {
			return false;
		}
	}
}

function enableFormPartByClassName(e, className) {
	var formElement = ascendDOM(e, 'form');
	var state = e.checked;
	var elements=getElementsByClassName(formElement, '*', className);
	if (state) {
		for(i=0; i<elements.length; i++) {
			elements[i].style.display='block';
			if (elements[i].className.indexOf('required')!=-1) {
				var newAttr = document.createAttribute("required");
				if (elements[i].getElementsByTagName('INPUT')[0].name.indexOf('email')!=-1) {
					newAttr.value = "email";
				} else if (elements[i].getElementsByTagName('INPUT')[0].name.indexOf('zipcode')!=-1) {
					newAttr.value = "postalcode";
				} else {
					newAttr.value = "required";
				}
				elements[i].setAttributeNode(newAttr);
			}
		}
	} else {
		for(i=0; i<elements.length; i++) {
			elements[i].style.display='block';
			if (elements[i].className.indexOf('required')!=-1) {
				elements[i].removeAttribute('required');
			}
		}
	}
}

function addtobasket() {
	urchinTracker('/webshop/addproducttobasket.html');
}


