function checkAll(field)
{

for (i = 0; i < field.length; i++)
	field[i].checked = true ;
}

function setCheckedValue(radioObj, newValue) {
	
	if(!radioObj)
		return;
	
	var radioLength = radioObj.length;

	if(radioLength == undefined) {	
		radioObj.checked = (radioObj.value == newValue.toString());
		return;
	}
	for(var i = 0; i < radioLength; i++) {
		radioObj[i].checked = false;
		if(radioObj[i].value == newValue.toString()) {
			radioObj[i].checked = true;
		}
	}
}


function uncheckAll(field)
{
for (i = 0; i < field.length; i++)
	field[i].checked = false ;
}

function popUpMsg(text) {

	if(text.length>0) {
		alert(text);
	}
}

function DoNav(theUrl)
  {
  document.location.href = theUrl;
  }

function DoNavLinkNav(theUrl) {

	document.location.href = theUrl;
}
function ChangeColorZeb(tableRow, highLight, rtnCol) {


    if (highLight)
    {
      tableRow.style.backgroundColor = '#96CEFF';
      tableRow.style.cursor = 'pointer';
    
		//tableRow.className = 'adminhoverRow';
			
    }
    else
    {
      tableRow.style.backgroundColor = rtnCol;
      tableRow.style.cursor = 'default';
	  //tableRow.className = 'adminRow';
    }
  }

  function DoNav(theUrl)
  {
  document.location.href = theUrl;
  }
  
  
  function closeClubSearch() {
	
	document.getElementById('clubSearch').style.display = "none";
	
	//alert("Please leave the name field blank. Then populate the form below adding in the category and the club above")
	
	}

	function selectEvent(box, num, price, epId) {
		
		var name = 'epList[' + num +']';
		var elm = document.getElementById(name); 
		elm.style.display = box.checked? "":"none"; 
		
		document.getElementById('entryPackage.id').value = epId;
	
		
		if(elm.style.display == "none") {
			updateTotal("minus",price);
		} else {
			updateTotal("plus",price);
		}
		
	} 
	function updateTotal(up,price) {
		
		var total = parseFloat(document.getElementById('order.orderTotal').value);
		
		if(up=="plus") {
			if(total > 0) {
				total = total + price;
			} else {
				total = price;
			}
		} else {
			total = total - price;
		}
		document.getElementById('order.orderTotal').value = total;
		
		document.getElementById('totalPrice').innerHTML  = '<strong>£' + total + '</strong>';
	}
function saveEntrantClub() {

	var dropdownIndex = document.getElementById('clubs_found').selectedIndex;
	var dropdownValue = document.getElementById('clubs_found')[dropdownIndex].value;
	var dropdownText = document.getElementById('clubs_found')[dropdownIndex].text;
	
	//hide drop down
	document.getElementById('clubSearch').style.display = "none";
	
	if(document.getElementById('clubLookup.id') == null) {
		
		document.getElementById('clubName').value = dropdownText;
		document.getElementById('entry.club.id').value = dropdownValue;
		
	} else {
		// update hidden field with id
		document.getElementById('clubLookup.id').value = dropdownValue;
		// put text in drop down
		document.getElementById('clubLookup.name').value = dropdownText
	}
}



function ajaxClubList(field,updatediv) {
	
	//get search string
	var search = document.getElementById(field).value;
	
	search = search.replace("'","_");
		
		document.getElementById('clubSearch').style.display = "block";
		
		var params = "search=" + search;
		
		var myAjax = new Ajax.Updater(
	    			"clubSearch", 
	    			"ajaxSearch.htm?mode=club", 
	    			{method: "get", onFailure: notifyFailure, 
	    			parameters: "mode=club&search=" + search });
	    
      

}
function processContact(originalRequest) {
	
	eval(originalRequest.responseText);	
	document.getElementById('clubSearch').style.display = "none";
}
	
function notifyFailure(originalRequest)
{
  alert("Failed AJAX Request.")
    
}

function adminLoadNavItem(navId) {
	
	$j.getScript("ajaxLookup.htm?mode=nav&navId="+ navId, function(){
  		
	});
	
	
}

function adminLoadNewNavItem(siteId, sectionId, parentId, navId, level) {
	
	document.getElementById('navigationEdit.title').value =  ''; 
	document.getElementById('pageTitle').value =  '';
	document.getElementById('navigationEdit.page.id').value = '';
	document.getElementById('navigationEdit.order').value = '';
	document.getElementById('navigationEdit.url').value = '';
	
	document.getElementById('navigationEdit.level').value = level;
	document.getElementById('navigationEdit.navId').value = navId;
	document.getElementById('navigationEdit.parent.id').value = parentId;
	document.getElementById('navigationEdit.section.id').value = sectionId;
	document.getElementById('navigationEdit.site.id').value = siteId;
	alert("New Link Created - Please populate the form");
}

function addPageToNav() {
		
		
		if(document.getElementById('navigationEdit.navId') == null) {
			alert("Please Select a Navigation Link on the Left Hand Side First");
		} else {
		
			// set hidden values
			var pageId = document.getElementById("pageList");
			document.getElementById("navigationEdit.page.id").value = pageId.options[pageId.selectedIndex].value;
			document.getElementById("pageTitle").value = pageId.options[pageId.selectedIndex].text;
		
		}

}

function ajaxEntryList(field,updatediv) {
	
	//get search string
	var search = document.getElementById(field).value;
	
	search = search.replace("'","_");
		
		document.getElementById('entrySearch').style.display = "block";
		
		var params = "search=" + search;
		
		var myAjax = new Ajax.Updater(
	    			"entrySearch", 
	    			"ajaxSearch.htm", 
	    			{method: "get", onFailure: notifyFailure, 
	    			parameters: "mode=ent&search=" + search });

}

function ajaxEntrantSearch() {
	
	//get search string
	var lastname = document.getElementById('entry.entrant.lastname').value;
	var firstname = document.getElementById('entry.entrant.firstname').value;
	//var dob = document.getElementById('entry.entrant.dob').value;
	
	lastname = lastname.replace("'","_");
	firstname = firstname.replace("'","_");
		
	document.getElementById('entrySearch').style.display = "block";
		
		var myAjax = new Ajax.Updater(
	    			"entrySearch", 
	    			"ajaxSearch.htm", 
	    			{method: "get", onFailure: notifyFailure, 
	    			parameters: "mode=entfull&lastname=" + lastname + "&firstname=" + firstname });

}

function getAdminEntrant(entId) {

	
	//lookup entrant
	var url="ajaxSearch.htm";
    
    	//send to the database
    
    	var params = "mode=entrant&entId=" + entId;
    
		var myAjax = new Ajax.Request(
        				url, 
        				{method: 'get', parameters: params, 
        				asynchronous: true, onSuccess: processEntrant,onFailure: notifyFailure});
}

function getEntrant() {

	var dropdownIndex = document.getElementById('entrants_found').selectedIndex;
	var dropdownValue = document.getElementById('entrants_found')[dropdownIndex].value;
	var dropdownText = document.getElementById('entrants_found')[dropdownIndex].text;
	
	//lookup entrant
	var url="ajaxSearch.htm";
    
    	//send to the database
    
    	var params = "mode=entrant&entId=" + dropdownValue;
    
		var myAjax = new Ajax.Request(
        				url, 
        				{method: 'get', parameters: params, 
        				asynchronous: true, onSuccess: processEntrant,onFailure: notifyFailure});
}
function closeEntrantSearch() {

	document.getElementById('entrySearch').style.display = "none";
}
function closeClubSearch() {

	document.getElementById('clubSearch').style.display = "none";
}

function processEntrant(originalRequest) {
	
	eval(originalRequest.responseText);	
	document.getElementById('entrySearch').style.display = "none";
}


function ajaxClubList(field,updatediv) {
	
	//get search string
	var search = document.getElementById(field).value;
	
	search = search.replace("'","_");
		
		document.getElementById('clubSearch').style.display = "block";
		
		var params = "search=" + search;
		
		var myAjax = new Ajax.Updater(
	    			"clubSearch", 
	    			"ajaxSearch.htm", 
	    			{method: "get", onFailure: notifyFailure, 
	    			parameters: "mode=club&search=" + search });

}

function updateTotals(index) {

	var lowEntryMarkup =  parseFloat(document.getElementById("lowEntryMarkup").value);
	var highEntryMarkup =  parseFloat(document.getElementById("highEntryMarkup").value);
	var lowEntryMarkupThreshold =  parseFloat(document.getElementById("lowEntryMarkupThreshold").value);
	var element = "epList[" + index + "].price";
	var markup = "epList[" + index + "].markup";
	var total = "epList[" + index + "].totalPrice";
	
	var value = parseFloat(document.getElementById(element).value);
	if(value >= lowEntryMarkupThreshold) {
		document.getElementById(markup).value = highEntryMarkup;
		var newTotal = value+highEntryMarkup;
		document.getElementById(total).value = newTotal;
	} else {
		document.getElementById(markup).value = lowEntryMarkup;
		var newTotal = value+lowEntryMarkup;
		document.getElementById(total).value = newTotal;
	}

}

function updateMarkup(index) {

	var element = "epList[" + index + "].price";
	var markup = "epList[" + index + "].markup";
	var total = "epList[" + index + "].totalPrice";

	var value = parseFloat(document.getElementById(element).value);
	varNewMarkup = parseFloat(document.getElementById(markup).value);
	var newTotal = value+varNewMarkup;
	document.getElementById(total).value = newTotal;
}

function setSelectedIndex(s, v) {

    for ( var i = 0; i < s.options.length; i++ ) {

        if ( s.options[i].value == v ) {
            s.options[i].selected = true;
            return;
        }
    }
}

function setDate(field, component, hiddenField) {
	
	var updateval = document.getElementById(field).value;
	var currentdate = document.getElementById(hiddenField).value;
	
	var mydate = new Array();
	mydate = currentdate.split('/');
	
	if(mydate.length != 3) {
		mydate = ['01','01','1900'];
	}
	
	if (component=='d') {
		mydate[0] = updateval;
	} else if (component=='m') {
		mydate[1] = updateval;
	} else if (component=='y') {
		mydate[2] = updateval;
	}

	document.getElementById(hiddenField).value = mydate[0] + '/' + mydate[1] + '/' + mydate[2];
	
}

function validateEventSearchForm() {

 if(document.getElementById("searchInfo.dateFrom").value == 'dd/mm/yyyy') {
 	document.getElementById("searchInfo.dateFrom").value = '';
 }
 if(document.getElementById("searchInfo.dateTo").value == 'dd/mm/yyyy') {
 	document.getElementById("searchInfo.dateTo").value = '';
 }
 
}


function copyValidate(field) {
	
	var newEntrant = "entrant." + field;
	var extEntrant = "validationInfo.existingEntrant." + field;
		
	if(field == 'dob') {
		
		var newday = "dob.day";
		var exday = "dob2.day";
		
		// day
		var dropdownIndex = document.getElementById(newday).selectedIndex;
		var dropdownValue = document.getElementById(newday)[dropdownIndex].value;
		
		setSelectedIndex(document.getElementById(exday),dropdownValue);
		
		// month
		var newmth = "dob.mth";
		var exdmth = "dob2.mth";
		dropdownIndex = document.getElementById(newmth).selectedIndex;
		dropdownValue = document.getElementById(newmth)[dropdownIndex].value;
		
		setSelectedIndex(document.getElementById(exdmth),dropdownValue);
		
		// year
		var newyr = "dob.yr";
		var exyr = "dob2.yr";
		dropdownIndex = document.getElementById(newyr).selectedIndex;
		dropdownValue = document.getElementById(newyr)[dropdownIndex].value;
		
		setSelectedIndex(document.getElementById(exyr),dropdownValue);
		
		// hidden fields
		document.getElementById(extEntrant).value = document.getElementById(newEntrant).value;
		
	} else if (field == 'gender') {
		
		len = document.getElementById(newEntrant).length;
		alert(len)
		 for (i = 0; i <len; i++) {
			if (document.getElementById(newEntrant)[i].checked) {
				chosen = document.getElementById(newEntrant)[i].value
			}
		}
		
		len = document.getElementById(extEntrant).length;
		
		for (i = 0; i <len; i++) {
			if (document.getElementById(extEntrant)[i].value == chosen) {
				document.getElementById(newEntrant)[i].checked = true;
			}
		}
		
	} else {
		
			
		
		document.getElementById(extEntrant).value = document.getElementById(newEntrant).value;
		
	} 
}

function validate_email(field,alerttxt)
{
with (field)
  {
  apos=value.indexOf("@");
  dotpos=value.lastIndexOf(".");
  if (apos<1||dotpos-apos<2)
    {alert(alerttxt);return false;}
  else {return true;}
  }
}

function validate_required(field,alerttxt)
{
with (field)
  {
  if (value==null||value=="")
    {
    alert(alerttxt);return false;
    }
  else
    {
    return true;
    }
  }
}

function validate_create_form(thisform)
{
with (thisform)
  {
  if (validate_required(message,"Please enter an email address")==false)
  {message.focus();return false;}
  
  if (validate_email(message,"Please enter a valid email address")==false)
  {message.focus();return false;}
  }
}


function addProductToOrder(box, count,price) {

	var name = 'productItemList[' + count +']';
	var elm = document.getElementById(name); 
	elm.style.display = box.checked? "":"none"; 
		
		
		if(elm.style.display == "none") {
			updateTotal("minus",price);
		} else {
			updateTotal("plus",price);
		}
		
}

function addProditemItemToOrder(dropDown, price) {

	var dropdownIndex = dropDown.selectedIndex;
	var dropdownValue = dropDown[dropdownIndex].value;
	
	
	if(dropdownValue == 0) {
		updateTotal("minus",price);
	} else {
		updateTotal("plus",price);
	}
	
}
