// LottoValidate.js
// Ryan Galloway: ryan@millermediadesign.com, http://www.millermediadesign.com
// Created June 2007

var RowCnt = 0
var Weeks = 0
var TotalAmount = 0



//------------------------------------------------------------------------------


function ValidatePlayFrm()
{
	if(TotalAmount > 0) {
		document.PlayFormFlag = true;
		return;
	}
	alert('Please make sure you have\r\n\t1. Added atleast one line of numbers.\r\n\t2. Selected the number of weeks to play.');
	document.PlayFormFlag = false;
}

//------------------------------------------------------------------------------


function ChkNum(obj, Item1, Item2, Item3, LineNumber)
{


	if(IsValidInput(obj, Item1, Item2, Item3)) {
		updateAll();
	}
	return;
}

//------------------------------------------------------------------------------

function updateAll() {
     updateLineCnt();
     calculateAmount();
     updateAmount();
}

//------------------------------------------------------------------------------

function calculateAmount() {
	var WeeksToPlay=document.getElementById("WeeksToPlay").value;
	TotalAmount = WeeksToPlay*RowCnt
     
}
//------------------------------------------------------------------------------

function updateAmount() {
	UpdateItemInnerHtml("PlayTotal", "&pound;"+TotalAmount)     
}

//------------------------------------------------------------------------------


function ClrLn(LineNumber)
{

	document.getElementById("Play"+LineNumber+"1").value = ''; 
	document.getElementById("Play"+LineNumber+"2").value = '';
	document.getElementById("Play"+LineNumber+"3").value = ''; 
	document.getElementById("Play"+LineNumber+"4").value = ''; 
	updateAll();
}

//------------------------------------------------------------------------------


function ChkState(LineNumber)
{

	var input1 = document.getElementById("Play"+LineNumber+"1").value;
	var input2 = document.getElementById("Play"+LineNumber+"2").value;
	var input3 = document.getElementById("Play"+LineNumber+"3").value;
	var input4 = document.getElementById("Play"+LineNumber+"4").value;
	
	if(input1=='LD' || input2=='LD' || input3=='LD' || input4=='LD')
	{
		alert('Lucky Dip must be cleared before you play your own numbers.')
		ClrLn(LineNumber)
	}
}

//------------------------------------------------------------------------------


function LD(LineNumber)
{

	document.getElementById("Play"+LineNumber+"1").value = 'LD'; 
	document.getElementById("Play"+LineNumber+"2").value = 'LD';
	document.getElementById("Play"+LineNumber+"3").value = 'LD'; 
	document.getElementById("Play"+LineNumber+"4").value = 'LD'; 
	updateAll();
}



//------------------------------------------------------------------------------

function updateLineCnt()
{
			
	
	RowCnt = 0;
	var play11=document.getElementById("Play11").value;
	var play12=document.getElementById("Play12").value;
	var play13=document.getElementById("Play13").value;
	var play14=document.getElementById("Play14").value;
	

	if(play11 != '' && play12 != '' && play13 != '' && play14 != '')
		{RowCnt++;}
	
	var play21=document.getElementById("Play21").value;
	var play22=document.getElementById("Play22").value;
	var play23=document.getElementById("Play23").value;
	var play24=document.getElementById("Play24").value;
	

	if(play21 != '' && play22 != '' && play23 != '' && play24 != '')
		{RowCnt++;}
	
	var play31=document.getElementById("Play31").value;
	var play32=document.getElementById("Play32").value;
	var play33=document.getElementById("Play33").value;
	var play34=document.getElementById("Play34").value;
	

	if(play31 != '' && play32 != '' && play33 != '' && play34 != '')
		{RowCnt++;}
	
		
	var play41=document.getElementById("Play41").value;
	var play42=document.getElementById("Play42").value;
	var play43=document.getElementById("Play43").value;
	var play44=document.getElementById("Play44").value;
	

	if(play41 != '' && play42 != '' && play43 != '' && play44 != '')
		{RowCnt++;}
	
		
	var play51=document.getElementById("Play51").value;
	var play52=document.getElementById("Play52").value;
	var play53=document.getElementById("Play53").value;
	var play54=document.getElementById("Play54").value;
	

	if(play51 != '' && play52 != '' && play53 != '' && play54 != '')
		{RowCnt++;}
	
	

}

//------------------------------------------------------------------------------

function IsValidInput(obj, Item1, Item2, Item3) {
	var NmbrVal = obj.value;
	var ObjID = obj.id;
	var Item1Val = Item1.value;
	var Item2Val = Item2.value;
	var Item3Val = Item3.value;
	
	
	fieldName = "\"" +ObjID+ "\"";
	timeOutFocus = "document.PlayLotto.elements[" +fieldName+ "].focus()";
	
	if (IsNumeric(NmbrVal))
	{
		var entNumber = parseInt(NmbrVal,10);
		if (!Is1to30(entNumber))
		{
			alert('Only values 1-30 are allowed');
			obj.value = "";
			setTimeout(timeOutFocus,1);
			obj.focus();
			return false;
		}
		
		
		if (NmbrVal == Item1Val || NmbrVal == Item2Val || NmbrVal == Item3Val)
		{
			alert('Number ' + NmbrVal + ' has already been entered, all numbers in a line must be unique.');
			obj.value = "";
			setTimeout(timeOutFocus,1);
			obj.focus();
		}
				
	}
	else
	{
		if (NmbrVal == '')	{ return true;}
			
		alert('Only values 1-30 are allowed');
		obj.value = "";
		setTimeout(timeOutFocus,1);
		obj.focus();
		return false;
	}
	
	//Succes Point
	PreceedSingleDigit(obj)
	return true;
}


//------------------------------------------------------------------------------

function IsNumeric(strString)
   //  check for valid numeric strings	
   {
   var strValidChars = "0123456789.-";
   var strChar;
   var blnResult = true;

   if (strString.length == 0) return false;

   //  test strString consists of valid characters listed above
   for (i = 0; i < strString.length && blnResult == true; i++)
      {
      strChar = strString.charAt(i);
      if (strValidChars.indexOf(strChar) == -1)
         {
         blnResult = false;
         }
      }
   return blnResult;
   }
   
//------------------------------------------------------------------------------

function Is1to30(intInput)

{
	if (intInput >= 1 && intInput <= 30 )
	{
		return true;
	}
	return false;
}
   
//------------------------------------------------------------------------------

function PreceedSingleDigit(obj)
{
	var NmbrVal = parseInt(obj.value);
	if (NmbrVal > 0 && NmbrVal < 10 )
	{
		obj.value = '0' + NmbrVal;
	}
}

//------------------------------------------------------------------------------

function UpdateItemInnerHtml(ItemID, StrHTML)
{
var ItemToUpdate = document.getElementById(ItemID);
ItemToUpdate.innerHTML = StrHTML;

}

//------------------------------------------------------------------------------