function jsShowEvent(index, parentCtrlId)
{
	var tbl = document.getElementById(parentCtrlId+"_eventTbl");
	var dispPane = document.getElementById(parentCtrlId+"_dispPane");
	var calPane = document.getElementById(parentCtrlId+"_calPane");
	
	// inputs
	var iday = document.getElementById(parentCtrlId+"_day_2bi");
	var iname = document.getElementById(parentCtrlId+"_eventName_2bi");
	var itype = document.getElementById(parentCtrlId+"_type_2bi");
	var iinfo = document.getElementById(parentCtrlId+"_info_2bi");
	var icontact = document.getElementById(parentCtrlId+"_contact_2bi");
	var iflag = document.getElementById(parentCtrlId+"_newEvent");
	var idel = document.getElementById(parentCtrlId+"_deleteEvent");
	
	// info
	var day = tbl.rows[index].cells[0].innerHTML;
	var name = tbl.rows[index].cells[1].innerHTML;
	var type = tbl.rows[index].cells[2].innerHTML;
	var contact = tbl.rows[index].cells[3].innerHTML.replace("<!--","").replace("-->","");
	var info = tbl.rows[index].cells[4].innerHTML.replace("<!--","").replace("-->","");
	if (idel!=null) idel.style.visibility = "visible";

	iday.innerHTML = day;
	iname.innerHTML = (name.length>25) ? name.substr(0,21)+"..." : name;
	itype.innerHTML = type;
	icontact.innerHTML = contact;
	iinfo.innerHTML = info;
	
	calPane.className = "eventpane_hidden";
	dispPane.className = "eventpane_show";
}

function changeDate( ctrlId, newDate )
{
//	alert( "Hi!" );
	var dateTrans = newDate.split( "/" );
	var month = dateTrans[ 1 ]; // set month
	var year = dateTrans[ 2 ]; // set month
//	alert( "month: "+month );
	
	// set month then refresh calendar
	document.getElementById( ctrlId+"_month" ).innerText = month.toString( );
	document.getElementById( ctrlId+"_year" ).innerText = year.toString( );
//	document.getElementById( ctrlId+"_manualGoto" ).innerText = month+"/"+year; // DOESNT WORK :-(
	document.forms[0].submit( );
//	alert( "Done." );
}

function jsCreateNewEvent(parentCtrlId)
{
	var tbl = document.getElementById(parentCtrlId+"_eventTbl");
	var dispPane = document.getElementById(parentCtrlId+"_dispPane");
	var calPane = document.getElementById(parentCtrlId+"_calPane");
	
	// inputs
	var iday = document.getElementById(parentCtrlId+"_day_2bi");
	var iname = document.getElementById(parentCtrlId+"_eventName_2bi");
	var idel = document.getElementById(parentCtrlId+"_deleteEvent");
	var itype = document.getElementById(parentCtrlId+"_type_2bi");
	var iinfo = document.getElementById(parentCtrlId+"_info_2bi");
	var icontact = document.getElementById(parentCtrlId+"_contact_2bi");
	var iflag = document.getElementById(parentCtrlId+"_newEvent");

	iname.innerHTML = "Untitled Event1";
	iflag.value = "True"; // you ARE creating a *NEW* event
	
	iday.innerHTML = "1";
	itype.innerHTML = "{Type of event}";
	iinfo.innerHTML = "{Information regarding event}";
	icontact.innerHTML = "{Who to contact for further info}";
	idel.style.visibility = "hidden";
	
	calPane.className = "eventpane_hidden";
	dispPane.className = "eventpane_show";
}

function hidePane(id)
{
	var ctrlId = id.split("_")[0];
	var dispPane = document.getElementById(ctrlId+"_dispPane");
	var calPane = document.getElementById(ctrlId+"_calPane");
	
	dispPane.className = "eventpane_hidden";
	calPane.className = "eventpane_show";
}

// validate new event (returns true if okay, false if not.)
function jsValidateNewEvent(parentCtrlId)
{
	var iname = document.getElementById(parentCtrlId+"_eventName_2bi");
	var tbl = document.getElementById(parentCtrlId+"_eventTbl");
	var upd = document.getElementById(parentCtrlId+"_newEvent");
	
	var isOkay = new Boolean();
	isOkay = (iname.innerHTML != "Untitled Event1" && iname.innerHTML != "");
	
	// if still is okay ensure this name is unique
	if (isOkay) {				
		for (i=1; i<tbl.rows.length-1; i++) // this loop has taken into consideration the header and footer row.
		{
			try {
			if (tbl.rows[i].cells[1].innerText.toLowerCase() == iname.innerText.toLowerCase())
			{
				isOkay = false;
				break;
			}
			} catch(e) { }
		}
	}
	
	if (!isOkay && upd.value!="False") // make sure you are creating a new one before validating title
	{
		alert("You cannot name this event `"+iname.innerText+"` as an event already exists with this name.\nPlease decide upon another name.");
		return false;
	}
	
	return true;
}