document.getElementsByClassName = function(class_name) {
    var docList = this.all || this.getElementsByTagName('*');
    var matchArray = new Array();

    /*Create a regular expression object for class*/
    var re = new RegExp("(?:^|\\s)"+class_name+"(?:\\s|$)");
    for (var i = 0; i < docList.length; i++) {
        if (re.test(docList[i].className) ) {
            matchArray[matchArray.length] = docList[i];
        }
    }

	return matchArray;
}//eof annonymous function


function calculatePosition(calculateFor, calculateFrom, calculateFrom2)
{
	var offset = {x : 0, y : 0};
	GetOffset (document.getElementById(calculateFrom), offset);
	
	document.getElementById(calculateFor).style.top = document.getElementById(calculateFrom2).offsetTop + 
													document.getElementById(calculateFrom).offsetHeight + 'px';
	document.getElementById(calculateFor).style.left = document.getElementById(calculateFrom).offsetLeft - 30 + 'px';
}

function GetOffset (object, offset) {
	
	if (!object)
		return;
	offset.x += object.offsetLeft;
	offset.y += object.offsetTop;

	GetOffset (object.offsetParent, offset);
}


var timeout	= 250;
var closetimer	= 0;
var ddmenuitem	= 0;
var menuitem = 0;

var container = '';

// open hidden layer
function mopen(id,eid,n)
{	
	// cancel close timer
	mcancelclosetime();

	// close old layer
	if(ddmenuitem) { 
		ddmenuitem.style.visibility = 'hidden'; 
	}
		
	// get new layer and show it
	menuitem = document.getElementById(eid);
	
	ddmenuitem = document.getElementById(id);
	ddmenuitem.style.visibility = 'visible';
	
	container = id;
	if(ddmenuitem.innerHTML != '' )
	{
		//menuitem.className = 'menu_selected'+n; 
		menuitem.style.backgroundPosition = "0 -29px";
	}

}
// close showed layer
function mclose()
{
	if(ddmenuitem) {
		ddmenuitem.style.visibility = 'hidden';
		menuitem.style.backgroundPosition = "0 0";		
	}	
}

// go close timer
function mclosetime()
{
	closetimer = window.setTimeout(mclose, timeout);
}

// cancel close timer
function mcancelclosetime() 
{
	if(closetimer)
	{
		window.clearTimeout(closetimer);
		closetimer = null;
	}
}

// close layer when click-out
document.onclick = mclose;  


/*
function createXMLHttpRequest() {
   try { return new XMLHttpRequest(); } catch(e) {}
   try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) {}
   try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {}
   alert("XMLHttpRequest not supported");
   return null;}
var BOCPxhReq = createXMLHttpRequest();

var div_id = null;

function AJCALL(para, div)
{
	div_id = div;
	var url='./loc_select.html&div_id='+div_id+para;
	BOCPxhReq.open('GET', url, true);
	BOCPxhReq.onreadystatechange = AJ_RESP;
	BOCPxhReq.send(null);
	//window.scrollTo(0,0);
}

function AJ_RESP() {
if (BOCPxhReq.readyState != 4)  { return; }
document.getElementById(div_id).innerHTML = BOCPxhReq.responseText;
var ob = document.getElementById(div_id).getElementsByTagName('script');
for(var i=0; i<ob.length; i++){if(ob[i].text!=null) {eval(ob[i].text);}
}
}
*/
//AJCALL('<?php if ($rootcat>1) echo "&mcat=$rootcat"?><?php if ($c_main_cat>1) echo "&scat=$c_main_cat"?>');
