// JavaScript Document
//requires functions-DHTMLapi-inc.js... maybe not
function getStyle(id) {
	var obj;
//alert('getStyle(\''+id+'\') called');//testing
	obj=document.getElementById(id);
//	alert('getStyle(\''+id+'\') found a type '+typeof(obj));//testing
	return obj.style;
	}

function set_display_for_ids(state) {
//first parameter is 'show' or 'hide'; rest of parameters are database pkey ids for the records.
//unknown number of parameters passed
	for(i=1;i<arguments.length;i++) {
		toggle_display(arguments[i],state);
		}
	}//f

function toggle_display(id) {
//provide a raw ID number (as a string) from the database
//optional second parameter is desired state: 'show'/'hide'
	if (arguments.length > 1 && arguments[1]=='show') {
		show_hide_one('itemDetail'+id,'block');
		set_actuator_image('itemActuator'+id,'/images/btn_minus.gif');
		return 'show';
		}
	if (arguments.length > 1 && arguments[1]=='hide') {
		show_hide_one('itemDetail'+id,'none');
		set_actuator_image('itemActuator'+id,'/images/btn_plus.gif');
		return 'hide';
		}
	show_hide_one('itemDetail'+id);
	set_actuator_image('itemActuator'+id);
	return 'toggle';
}

function show_hide_one(id) {
	//optional second parameter is desired state
	var state;
	var theStyle=getStyle(id);
//alert('Called show_hide_one(\''+id+'\')');//testing

	if (typeof(theStyle) != 'object') { 
//alert('Could not find style of '+id);//testing
		return false;
		}
	
	state = ((theStyle.display=='none' || theStyle.display=='')?'block':'none');
	if  (arguments.length > 1)  state=arguments[1];
	theStyle.display=state;
//alert ('Set element '+id+' to '+state);//testing
	return state;
	}
	
function set_actuator_image(id) {
//
	var image;
	var currentImage;
	var theElement=document.getElementById(id);
	if (typeof(theElement) != 'object') { 
//	alert('Could not find document element '+id);//testing
		return false;
		}

	switch(theElement.tagName) {
		case 'IMG':
			currentImage=theElement.src;
			break;
		default:
			currentImage=theElement.style.backgroundImage;
			break;
		}

	image = ((currentImage.indexOf('btn_plus.gif')>-1 || currentImage=='')?'/images/btn_minus.gif':'/images/btn_plus.gif');
//alert("Current: '"+currentImage+"'; "+image + ' selected');//testing
	if  (arguments.length > 1)  image=arguments[1];
	switch(theElement.tagName) {
		case 'IMG':
			theElement.src=image;
			break;
		default:
			theElement.style.backgroundImage='url('+image+')';
			break;
		}
//alert ('Set element '+id+' to '+image);//testing
	return image;
	}
