function submitOnChange(e)
{
	var el = Event.element(e);
	if ($F(el) == '-1') {
		return false;
	} else {
		getFormNode(el).submit();
	}
}

function clickMe(e)
{
	var rClass = getSourceElementClass(e);
	switch(rClass) {
		case('caption'):
		if (vGroupCaption.isOn('photoCaption')) {
			vGroupCaption.setAllOff();
		} else {
			vGroupCaption.setOnExcl('photoCaption');
		}
		break;
		
		default:
		break;
	}
	
	return;
}

var touchMeReadMeOn = function (e)
{
	var rClass = getSourceElementClass(e);
	switch(rClass) {
		case('warning'):
		var h = {
				'background-color':'#f00'
				};
		Element.setStyle(Event.element(e), $H(h));
		break;

		default:
		var h = {
				'background-color':'#f90',
				'color':'#fff'
				};
		Element.setStyle(Event.element(e), $H(h));
		break;
	}
}

var touchMeReadMeOff = function (e)
{
	var rClass = getSourceElementClass(e);
	switch(rClass) {
		case('warning'):
		var h = {
				'background-color':'#fff'
				};
		Element.setStyle(Event.element(e), $H(h));
		break;

		default:
		var h = {
				'background-color':'#fff',
				'color':'#000'
				};
		Element.setStyle(Event.element(e), $H(h));
		break;
	}
}	

var highlighted = null;

var highlightRow = function (e)
{
	var ell = getPreviousNode(Event.element(e), 'td');
	var i = getElementAttribute(ell, 'id');
	if (i.substr(0,6) == 'result') {
		var parts = i.split(';');
		var table_row_id = parts[0] + "_" + parts[1] + "_" + parts[2] + "_tr";
		
		var row_obj = $(table_row_id);	
		highlighted = Element.getStyle(row_obj, 'background-color');
		Element.setStyle(table_row_id, $H(adminHighlightRow));
	}
}

var unHighlightRow = function (e)
{
	var ell = getPreviousNode(getSourceElement(e), 'td');
	var i = getElementAttribute(ell, 'id');
	if (i.substr(0,6) == 'result') {
		var parts = i.split(';');
		var table_row_id = parts[0] + "_" + parts[1] + "_" + parts[2] +"_tr";
		
		if (typeof(highlighted) != null) {
			var h = {
					'background-color':highlighted
					};
			Element.setStyle(table_row_id, $H(h));
			highlighted = null;
		}
	}
}

/*****	POP UPS
*		See http://v2studio.com/k/code/lib/
*		Adapted by Cal Smith from alistapart.com discussion "Accessible Pop-up Links"
*****/

var event_popup = function (e)
{
	link_popup(getSourceElement(e));
	if (e.preventDefault) {
		e.preventDefault();
	}
	return false;
}

function raw_popup(url, target, features) {
   if (isUndefined(features)) {
   	/* Default features */
     features =  'toolbar=1,scrollbars=1,location=1,statusbar=1,menubar=1,resizable=1,width=700,height=500';
   }
   if (isUndefined(target)) {
     target = '_blank';
   }
   var theWindow = window.open(url, target, features);
   theWindow.focus();
   return theWindow;
}

function link_popup(src, features)
{
	/* IE grabs the image element as the suorce of the link and not the surrounding a element. */
	/* It then uses the value of the image.src attribute as the .href value! */
	if (src.nodeName == 'IMG') {
		src = src.parentNode;
	}

	return raw_popup(src.getAttribute('href'), src.getAttribute('target') || '_blank', features);
}

function event_loadURL(e)
{
	var theSelect = getSourceElement(e);
	var theForm = getFormNode(theSelect);
	var theURL = theSelect[theSelect.selectedIndex].value;
	if (typeof(theURL) == 'string' && theURL != '-1') {
		setElementAttribute(theForm, 'action', theURL);
		theForm.submit();
	}
}

/************ Attach event handlers to specific tag sets ****************/
	
//$('button').bind('mouseover', touchMeReadMeOn);
//$('button').bind('mouseout', touchMeReadMeOff);
//$('button.validate_form').bind('click', validateFormInput);
var button_element = document.getElementsByTagName('button');
for(var i=0; i < button_element.length; i++){
	Event.observe(button_element[i], 'mouseover', touchMeReadMeOn);
	Event.observe(button_element[i], 'mouseout', touchMeReadMeOff);
	if (Element.hasClassName(button_element[i], 'validate_form')) {
		Event.observe(button_element[i], 'click', validateFormInput);
	}
}

//$('input.submit_button').bind('mouseover', touchMeReadMeOn);
//$('input.submit_button').bind('mouseout', touchMeReadMeOff);
var input_element = document.getElementsByTagName('input');
for(var i=0; i < input_element.length; i++){
	if (Element.hasClassName(input_element[i], 'submit_button')) {
		Event.observe(input_element[i], 'mouseover', touchMeReadMeOn);
		Event.observe(input_element[i], 'mouseout', touchMeReadMeOff);
	}
	if (Element.hasClassName(input_element[i], 'validate_form')) {
		Event.observe(input_element[i], 'click', validateFormInput);
	}
}

//$('td.administrate').bind('mouseover', highlightRow);
//$('td.administrate').bind('mouseout', unHighlightRow);
if ($('table_list_wrapper') !== null) {
	var hlRows = $('table_list_wrapper').getElementsByClassName('administrate');
	for(var i=0; i < hlRows.length; i++){
		Event.observe(hlRows[i], 'mouseover', highlightRow);
		Event.observe(hlRows[i], 'mouseout', unHighlightRow);
	}
}

//attachAnEvent('a', 'click', 'event_popup', 'popup');
var a_element = document.getElementsByTagName('a');
for(var i=0; i < a_element.length; i++){
	if (Element.hasClassName(a_element[i], 'popup')) {
		Event.observe(a_element[i], 'click', event_popup);
	}
}

var normalFormControlStyle = 
{
'background-color':'#0f0'
};

var errorFormControlStyle = 
{
'background-color':'#f00'
};

var adminHighlightRow =
{
'background-color':'#fc6'
};
