var LastTarget = Array();

function is_numeric (mixed_var) {
    return (typeof(mixed_var) === 'number' || typeof(mixed_var) === 'string') && mixed_var !== '' && !isNaN(mixed_var);
}

function selectBoxClose(parent)
{
	for(var i=0; i < parent.childNodes.length; i++)
	{
		if(parent.childNodes.item(i).tagName == "SELECT")
		{
			parent.childNodes.item(i).style.display = "none";
			parent.childNodes.item(i).selectedIndex = 0;
		}
	}
}

function selectShow(selectBox,targetBox)
{
	var test = false;
	
	for(var i=0; i < LastTarget.length; i++)
	{
		if(LastTarget[i] == targetBox)
		{
			test = i;
		}
	}
    
	if (!is_numeric(test))
	{
		LastTarget.push(targetBox);
	}
	
	if (is_numeric(test) && test < (LastTarget.length-1))
	{
		while(test < (LastTarget.length-1))
		{
			selectBoxClose(document.getElementById(LastTarget[LastTarget.length-1]));
			LastTarget.pop();
		}
	}
    
	var box;
    
    if(typeof(selectBox) == 'object')
    {
        box = selectBox;
    }else if(typeof(document.getElementById(selectBox)) == 'object')
    {
        box = document.getElementById(selectBox);
    }else{
        box = false;
    }
    
    if(box !== false)
    {
    	var target;
        
    	if(document.getElementById(box.options[box.selectedIndex].text))
    	{
    		target = document.getElementById(box.options[box.selectedIndex].text);
    	}else{
    		target = false;
    	}
        
    	var parent;
    	if(target)
    	{
    		parent = target.parentNode;
    	}else{
    		parent = document.getElementById(targetBox);
    	}
    	
    	selectBoxClose(parent);
    	
    	if(target)
    	{
    		target.style.display = "block";
    	}else{
    		//parent.childNodes.item(1).style.display = "Block";
    	}
     }
}
