/* returns a string of the event sender id */
function getEventSenderID(evt) {
	var strSenderID = (evt.target) ? evt.target.id : ((evt.srcElement) ? evt.srcElement.id : null);
	return strSenderID;
}

/* displays an alert with teh event sender id */
function dispEventSenderID(evt) {
	var strSender = getEventSenderID(evt)
	alert( 'You clicked ' + strSender + '.');
	return;	
}

/* sets the style element styleName of the given obejct to newVal */
function objSetStyleDef(objTarget, styleName, newVal) {
	if (objTarget) objTarget.style[styleName] = newVal;
	return;
}
/* sets the style of an element with a given id to newVal */
function setStyleDef(strTargetID, styleName, newVal) {
	var objTarget = document.getElementById(strTargetID);
	if (objTarget) objSetStyleDef(objTarget, styleName, newVal);
	return;
}

/* if the item with target ide has style['display'] set to 'none' then it sets it to strDispState
	if it has style['display'] set to something else then it sets it to 'none'*/
function hideNShow(strTargetID, strDispState) {
	var objTarget = document.getElementById(strTargetID);
	if (objTarget) {
		if (objTarget.style['display'] == 'none') objSetStyleDef(objTarget, 'display', strDispState);
		else objSetStyleDef(objTarget, 'display', 'none');
		return 1;
	} else return 0;
}
/* requirements:
	master.id = whatever
	slave.id = whatever-slave
	gimp.id = whatever-gimp
	if using boolToggleButtonStyle there must be two styles defined:
		whavever - should be when slave is hidden
		whatever-a - should be for when slave is visible
*/
function hideNShowToggleHTML(evt, strDispState, boolToggleButtonHTML, boolToggleButtonStyle) {
	var strTemp;
	var strTemp2;
	var strMasterID = getEventSenderID(evt);
	objMaster = document.getElementById(strMasterID);
	if (objMaster) {
		var strSlaveID = strMasterID + "-slave";
		if (hideNShow(strSlaveID, strDispState)) {
			if (boolToggleButtonHTML) {
				var strGimpID = strMasterID + "-gimp";
				objGimp = document.getElementById(strGimpID);
				if (objGimp) {
					strTemp = objGimp.innerHTML;
					objGimp.innerHTML = objMaster.innerHTML;
					objMaster.innerHTML = strTemp;
				} else return 1;
			} 
			if (boolToggleButtonStyle) {
				strTemp = objMaster.className;
				strTemp2 = strTemp.substr(strTemp.length - 2, 2)
				if (strTemp2 == "-a") objMaster.className = strTemp.substr(0, strTemp.length -2);
				else objMaster.className = strTemp + "-a"
			}
		} else return 1;
	} else return 1;

	return 0;
}
			
				
		
		

