// JavaScript Document for CWAA club locator page

// pre-load club pin rollover images
if (document.images) {
	var pic1=new Image();
	pic1.src="art/loc-hover.gif";
	var pic2=new Image();
	pic2.src="art/loc-select.gif";
}

// Set the class of an ID'd object
function setClass(objectID,newClass) {
	var object = document.getElementById(objectID);
	object.className = newClass;
}

// global constants - set these to suit html and css
var prefix_desc = 'desc-';
var prefix_pin = 'm-';
var prefix_name = 't-';

var first_desc = 'desc-default';
var first_pin = '';
var first_name = '';

var class_desc_hide = 'hidden';
var class_desc_show = 'padded';

var class_pin_norm = 'club';
var class_pin_hover = 'club hover';
var class_pin_select = 'club selected';

var class_name_norm = '';
var class_name_hover = 'hover';
var class_name_select = 'selected';

// global variables used in the following functions
var default_desc = first_desc;
var default_pin = first_pin;
var default_name = first_name;
var this_desc;
var this_pin;
var this_name;

function setthem(location) {
	this_desc = prefix_desc+location;
	this_pin = prefix_pin+location;
	this_name = prefix_name+location;
}

// Set the clicked club as the default
function makedefault(location) {
	setthem(location);
	if (this_desc!=default_desc) 	{
		default_desc = this_desc;
		if (default_pin!=first_pin) setClass(default_pin,class_pin_norm);	
		default_pin = this_pin;
		if (default_name!=first_name) setClass(default_name,class_name_norm);	
		default_name = this_name;
	}
}

// Indicate the currently hovered club & show its description
function show(location) {
	setthem(location);
	if (this_desc!=default_desc) {
		setClass(default_desc,class_desc_hide);	
		setClass(this_desc,class_desc_show);
	}
	setClass(this_pin,class_pin_hover);
	setClass(this_name,class_name_hover);
}

// Revert to non-hovered state
function hide(location) {
	setthem(location);
	if (this_desc!=default_desc) 	{
		setClass(this_desc,class_desc_hide);
		setClass(default_desc,class_desc_show);
	}
	if (this_pin==default_pin) 
		setClass(this_pin,class_pin_select)
	else setClass(this_pin,class_pin_norm);
	if (this_name==default_name) 
		setClass(this_name,class_name_select)
	else setClass(this_name,class_name_norm);
}

