function getUrlVars(url)
{
	var vars = [], hash;
	var hashes = url.slice(url.indexOf('?') + 1).split('&');
 
	for(var i = 0; i < hashes.length; i++)
	{
	hash = hashes[i].split('=');
	vars.push(hash[0]);
	vars[hash[0]] = hash[1];
	}
 
	return vars;
}

function getRealChildren(element)
{
  var children = new Array();
  var count = 0;

//commented section doesn't work in Safari
/*  for(var child in element.childNodes)
  {
    if(typeof(element.childNodes[child].tagName)!='undefined')
    {
      children[count] = element.childNodes[child];
      count++;
    }
  }*/

  var clength = element.childNodes.length;

  for(var i=0;i<clength;i++)
  {
    if(typeof(element.childNodes[i].tagName)!='undefined')
    {
      children[count] = element.childNodes[i];
      count++;
    }
  }      

  return children;
}

function findPosition(obj)
{
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curleft,curtop];
}

function getElementsByClassName(searchClass,node,tag)
{
    if(document.getElementsByClassName)
    {
        return document.getElementsByClassName(searchClass);
    }
    var classElements = new Array();
    if ( node == null )
        node = document;
    if ( tag == null )
        tag = '*';
    var els = node.getElementsByTagName(tag);
    var elsLen = els.length;
    var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
    for (i = 0, j = 0; i < elsLen; i++)
    {
        if ( pattern.test(els[i].className) )
        {
            classElements[j] = els[i];
            j++;
        }
    }
    return classElements;
}
