function addEvent(elm, evType, fn, useCapture)
{
	if (elm.addEventListener)
	{
		elm.addEventListener(evType, fn, useCapture);
		return true;
	}
	else if (elm.attachEvent)
	{
		var r = elm.attachEvent('on' + evType, fn);
		return r;
	}
	else
	{
		elm['on' + evType] = fn;
	}
}

function getElement(e)
{
  var el;
  if (window.event && window.event.srcElement)
  {
    el = window.event.srcElement;
  }
  if (e && e.target)
  {
    el = e.target;
  }
  
  if (!el)
  {
    return false;
  }
  else
  {
    return el;
  }
}

function addListeners()
{
	matchColumns();
}

addEvent(window, 'load', addListeners, false);

function matchColumns()
{
	var divs,contDivs,maxHeight,divHeight,d;
	
	divs = document.getElementsByTagName('div');
	contDivs = new Array();
	
	// initialize maximum height value 
	
	maxHeight=0; 
	
	// iterate over all <div> elements in the document 
	
	for(var i=0;i<divs.length;i++)
	{ 
	
	// make collection with <div> elements with class attribute 'container' 
	
		if(/\bcolumn\b/.test(divs[i].className))
		{ 
			d=divs[i]; 
	
			contDivs[contDivs.length]=d; 
	
			// determine height for <div> element 
	
			if(d.offsetHeight)
			{
				if(/\bdiv_right\b/.test(divs[i].id))
				{
					divHeight=d.offsetHeight - 105;
				}
				else
				{
					divHeight=d.offsetHeight;
				}
			}
			else if(d.style.pixelHeight)
			{
				if(/\bdiv_right\b/.test(divs[i].id))
				{
					divHeight=d.style.pixelHeight - 105;
				}
				else
				{
					divHeight=d.style.pixelHeight;
				}

			}
			// calculate maximum height 
			maxHeight=Math.max(maxHeight,divHeight);
		} 
	
	} 
	
	// assign maximum height value to all of container <div> elements 
	
	for(var i=0;i<contDivs.length;i++)
	{
		if(/\bdiv_right\b/.test(contDivs[i].id))
		{
			contDivs[i].style.height=(maxHeight + 105) + "px";
		}
		else
		{
			contDivs[i].style.height=maxHeight + "px";
		}
	}
}