function externalLinks() { 
 if (!document.getElementsByTagName) return; 
 var anchors = document.getElementsByTagName("a"); 
 for (var i=0; i<anchors.length; i++) { 
   var anchor = anchors[i]; 
   if (anchor.getAttribute("href") && 
       anchor.getAttribute("rel") == "external") 
     anchor.target = "_blank"; 
 } 
} 
window.onload = externalLinks;

var numChecked = 0;
var maxChecked = 2;

var selChassis = "";
var selEngine = "";
var selTyre = "";

var compSelected = 0;

function checkCheck(theBox, id, price, name, type, toselect, tospend) 
{
	var Budget = document.getElementById('budget');
	var Selected = document.getElementById('selected-'+type);
	var SelectedName = document.getElementById('selectedname-'+type);

	if (theBox.checked) 
	{
    	if (numChecked == maxChecked)
		{
      		theBox.checked = false;
		}
   		else
		{
			numChecked++;

			remBudget = parseInt(Budget.innerHTML) - price;
			Budget.innerHTML = remBudget;

			if (numChecked == 1)
			{
				Selected.style.display="block";
				SelectedName.innerHTML = name+' (&pound;'+price+'m)';
			}
			else
			{
				SelectedName.innerHTML = SelectedName.innerHTML+', '+name+' (&pound;'+price+'m)';
			}

			compSelected += 1;
			// alert(remBudget);

			// Set selected class name
			document.getElementById('contcomp-'+id).className = "cont contsel";
		}
  	}
  	else
	{
		numChecked--

		remBudget = parseInt(Budget.innerHTML) + price;
		Budget.innerHTML = remBudget;

		if (numChecked == 0)
		{
			SelectedName.innerHTML = "";
			Selected.style.display="none";
		}
		else
		{
			var SelectedArray = SelectedName.innerHTML.split(', ');

			if (SelectedArray[0] == name+' (\u00A3'+price+'m)') 
			{	
				SelectedName.innerHTML = SelectedArray[1]; 
			}
			else
			{
				SelectedName.innerHTML = SelectedArray[0];
			}
		}

		compSelected -= 1;
		// alert(remBudget);

		// Remove selected class name
		document.getElementById('contcomp-'+id).className = "cont";

	}

	if (remBudget < 0)
	{
		document.getElementById('overbudget').style.display="block";
		document.getElementById('brem').className ='budgetremainred';
	}
	else
	{
		document.getElementById('overbudget').style.display="none";
		document.getElementById('brem').className ='budgetremain';	
	}

	if (compSelected == toselect && remBudget >= 0)
	{
		document.getElementById('submitbutton').style.display="block";
	}
	else if (compSelected == toselect && remBudget < 0)
	{
		document.getElementById('submitbutton').style.display="none";
	}


  	return true;
}


function setCheckedValue(radioObj, newValue, price, type, name, toselect, tospend) 
{
	var Budget = document.getElementById('budget');
	var Selected = document.getElementById('selected-'+type);
	var SelectedName = document.getElementById('selectedname-'+type);
	var prevPrice = 0;

	if (type == 'Chassis')
	{
		if (selChassis.length > 0)
		{
			selChassisIdPriceArray = selChassis.split(':');
			prevPrice = parseInt(selChassisIdPriceArray[1]);
			
			// Remove selected class name
			document.getElementById('contcomp-'+selChassisIdPriceArray[0]).className = "cont";
		}
		else
		{
			compSelected += 1;
		}

		selChassis = newValue;
	}

	else if (type == 'Engine')
	{
		if (selEngine.length > 0)
		{
			selEngineIdPriceArray = selEngine.split(':');
			prevPrice = parseInt(selEngineIdPriceArray[1]);
			
			// Remove selected class name
			document.getElementById('contcomp-'+selEngineIdPriceArray[0]).className = "cont";
		}
		else
		{
			compSelected += 1;
		}

		selEngine = newValue;
	}

	else if (type == 'Tyre')
	{
		if (selTyre.length > 0)
		{
			selTyreIdPriceArray = selTyre.split(':');
			prevPrice = parseInt(selTyreIdPriceArray[1]);			
			
			// Remove selected class name
			document.getElementById('contcomp-'+selTyreIdPriceArray[0]).className = "cont";
		}
		else
		{
			compSelected += 1;
		}

		selTyre = newValue;
	}

	var idpriceArray = newValue.split(':');

	// 0 is the id
	// 1 is the price

	// Set selected class name
	document.getElementById('contcomp-'+idpriceArray[0]).className = "cont contsel";

	var currentBudget = parseInt(Budget.innerHTML);
	var newPrice = parseInt(idpriceArray[1]);
	var remBudget = currentBudget + prevPrice - newPrice;

	// alert('Current Budget: '+currentBudget+'\nPrevious Price: '+prevPrice+'\nNew Price: '+newPrice+'\nRemaining budget: '+remBudget);

	Budget.innerHTML = remBudget;

	// alert("selChassis: "+selChassis+"\nselEngine: "+selEngine+"\nselTyre: "+selTyre);

	Selected.style.display="block";
	SelectedName.innerHTML = name+' (&pound;'+price+'m)';

	if (remBudget < 0)
	{
		document.getElementById('overbudget').style.display="block";
		document.getElementById('brem').className ='budgetremainred';			
	}
	else
	{
		document.getElementById('overbudget').style.display="none";
		document.getElementById('brem').className ='budgetremain';	
	}

	if (compSelected == toselect && remBudget >= 0)
	{
		document.getElementById('submitbutton').style.display="block";
	}
	else if (compSelected == toselect && remBudget < 0)
	{
		document.getElementById('submitbutton').style.display="none";
	}

}


function ShowComp(type)
{
	document.getElementById('comps-'+type).style.display="block";
	document.getElementById('show-'+type).style.display="none";
	document.getElementById('hide-'+type).style.display="block";
}

function HideComp(type)
{
	document.getElementById('comps-'+type).style.display="none";
	document.getElementById('show-'+type).style.display="block";
	document.getElementById('hide-'+type).style.display="none";
}

function checkSubmit()
{
	var teamName = document.getElementById("FormTeamSelect").teamname.value;
	var teamOwner = document.getElementById("FormTeamSelect").teamowner.value;
	var teamEmail = document.getElementById("FormTeamSelect").teamemail.value;
	
	// alert('Team Name: '+teamName+'\nTeam Owner: '+teamOwner+'\nTeam E-mail: '+teamEmail);

	if (teamName.length < 1 || teamOwner.length < 1 || teamEmail.length < 1)
	{
		alert("Error - Missing Data\nPlease make sure you complete all required fields");
		return false;
	}
	else if(!/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(teamEmail))
	{ 
		alert("Error - Invalid e-mail address\nThe e-mail address you entered is not valid.\nPlease enter a valid address.");
		return false;
	}
	else
	{
		return true;
	}
}


