var availableSelectBox = new Array();

var lastSelectBoxOpenName = '';
var lastSelectBoxOpenTime = 0;

function positionSelectionAreaItems() {
	var labelLayer;
	var typeSelectionBox;
	var extraSelectionBox;
	var dateSelectBox;
	var x = 20;
	var maxWidth;
	var i;
	
	for(i=0;true;i++) {
		labelLayer = document.all['selectionAreaLabel' + i];
		if(!labelLayer) break;
		
		labelLayer.style.left = x;
		x += labelLayer.clientWidth;
		
		labelLayer.style.top = (30 - labelLayer.clientHeight) / 2;
		
		labelLayer.style.visibility = 'visible';
	}
	
	typeSelectionBox = document.all['selectionAreaTypeBox'];
	if(typeSelectionBox) typeSelectionBox.style.left = x;
	
	resizeSelectBox('selectionAreaTypeBox');
	
	if(typeSelectionBox) x += typeSelectionBox.clientWidth + 20;
	
	for(i=0;true;i++) {
		labelLayer = document.all['selectionAreaExtraLabel' + i];
		if(!labelLayer) break;
		
		labelLayer.style.left = x;
		x += labelLayer.clientWidth;
		
		labelLayer.style.top = (30 - labelLayer.clientHeight) / 2;
		
		labelLayer.style.visibility = 'visible';
	}
	
	extraSelectionBox = document.all['selectionAreaExtraBox'];
	if(extraSelectionBox) extraSelectionBox.style.left = x;
	
	resizeSelectBox('selectionAreaExtraBox');
	
	x = 700;
	
	resizeSelectBox('selectionAreaDateBox');
	
	dateSelectBox = document.all['selectionAreaDateBox'];
	if(dateSelectBox) {
		x -= document.all['selectionAreaDateBoxM'].clientWidth + 5 + 21;
		dateSelectBox.style.left = x;
	}
	
	labelLayer = document.all['selectionAreaDateLabel'];
	if(labelLayer) {
		labelLayer.style.top = (30 - labelLayer.clientHeight) / 2;
		labelLayer.style.left = x - labelLayer.clientWidth;
		
		labelLayer.style.visibility = 'visible';
	}
}

function resizeSelectBox(name) {
	var layer;
	var itemLayer;
	var maxWidth = 0;
	var i;
	
	for(i=0;true;i++) {
		itemLayer = document.all[name + 'Item' + i];
		if(!itemLayer) break;
		
		if(itemLayer.clientWidth > maxWidth) maxWidth = itemLayer.clientWidth;
	}
	
	layer = document.all[name + 'M'];
	if(layer) layer.style.width = maxWidth;
	
	for(i=0;true;i++) {
		itemLayer = document.all[name + 'Item' + i];
		if(!itemLayer) break;
		
		itemLayer.style.width = maxWidth;
	}
	
	layer = document.all[name + 'R'];
	if(layer) layer.style.left = maxWidth + 5;
	
	layer = document.all[name];
	if(layer) {
		layer.style.width = maxWidth + 5 + 21;
		layer.style.visibility = 'visible';
	}
}

function openCloseSelectBox(name) {
	var itmeLayer;
	var i;
	
	for(i=0;true;i++) {
		itemLayer = document.all[name + 'Item' + i];
		if(!itemLayer) break;
		
		itemLayer.style.visibility = itemLayer.style.visibility == 'visible' ? 'hidden' : 'visible';
	}
	
	lastSelectBoxOpenName = name;
	lastSelectBoxOpenTime = new Date().getTime();
}

function selectBoxItemSelected(name, index) {
	openCloseSelectBox(name);
	
	document.all[name + 'M'].innerHTML = document.all[name + 'Item' + index].innerHTML;
	
	document.location.href = selectBoxURLs[name][index];
}

function closeAllSelectBox(){
	var time = new Date().getTime();
	
	for( var k = 0; k < availableSelectBox.length; k++ ){
		if(time < lastSelectBoxOpenTime + 10 && availableSelectBox[k] == lastSelectBoxOpenName) continue;
	
		for( i = 0; true; i++ ){
			itemLayer = document.all[availableSelectBox[k] + 'Item' + i];
			if( !itemLayer ) break;
			if( itemLayer.style.visibility == 'hidden' ) break;
			itemLayer.style.visibility = 'hidden';
		}
	}
}