//close your eyes
var posted = false

var loaded = false

var errorState = false
var blinkFrequency = 667 //milliseconds
var blinkToggle = 0

var holdIndex = 0

var selectedBrowser

var playedHand = new Array(5)

var resStr

var selectedGameType
var selectedCard
var httpo 



var tablePath = "calc/img/cards/tablecards/"
var backPath = "calc/img/cardBacks/"
var miniPath = "calc/img/cards/minicards/grey/"
var calcFunction = "minicalc2.php"
var statsPath = "calc/img/statImg/"




function LoadFunc()
{			
	selectedBrowser = DetectBrowser()
	backPath = "calc/img/cardBacks/"
			
	selectedGameType = "Holdem"
	selectedCard = "c1p1"	
	
	httpo = CreateRequestObject()
	
	loaded = true
	if (!ProcessQuery()) SetGameType("Holdem")
	document.body.style.cursor = 'default'
		
}


function DetectBrowser()
{
	var strAgent = navigator.userAgent
	strAgent = strAgent.toLowerCase()
	if (strAgent.indexOf("msie") > 0)
		return "ie"
	else
		return "firefox"
}


function ProcessQuery()
{
	var query
	var vars
	var pair
	var txt
	var toReturn = false
	
	if (window.location.search.substring(1) == "") return
	
	query = window.location.search.substring(1)
	
	vars = query.split("&")
  
	for (var i=0;i<vars.length;i++)
	{
		pair = vars[i].split("=")
					
		if (String(pair[0]).toLowerCase() == "gametype")
		{				
			toReturn = true
			SetGameType(pair[1])
		}		
		else if (pair[0] != "")
		{			
			ProcessQuerySetCard(pair[1],pair[0])
		}
	}
	HighlightNextCard()
	return toReturn
}


function ChangeStatImg(p1,p2,p3,p4,p5,img)
{
	switch (img)
		{
			case "a":
				
				for (i=1;i<6;i++)
				{
					if (eval("p" + i))
						if (selectedBrowser == "ie"){
							document.getElementById("p"+i+"stat").style.backgroundImage = "none"
							document.getElementById("p"+i+"stat").style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='calc/img/statImg/stats1a.png', sizingMethod='scale');"
						}else{

						document.getElementById("p"+i+"stat").style.backgroundImage =	"url(calc/img/statImg/stats1a.png)"	
						}
					
				}
				break
			case "b":
				for (i=1;i<6;i++)
				{
					if (eval("p" + i))
					if (selectedBrowser == "ie"){
							document.getElementById("p"+i+"stat").style.backgroundImage = "none"
							document.getElementById("p"+i+"stat").style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='calc/img/statImg/stats1b.png', sizingMethod='scale');"
						}else{

						document.getElementById("p"+i+"stat").style.backgroundImage =	"url(calc/img/statImg/stats1b.png)"	
						}
				}
				break
			case "c":
				for (i=1;i<6;i++)
				{
					if (eval("p" + i))
					if (selectedBrowser == "ie"){
							document.getElementById("p"+i+"stat").style.backgroundImage = "none"
							document.getElementById("p"+i+"stat").style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='calc/img/statImg/stats1c.png', sizingMethod='scale');"
						}else{

						document.getElementById("p"+i+"stat").style.backgroundImage =	"url(calc/img/statImg/stats1c.png)"	
						}
				}
				break
			case "d":
				for (i=1;i<6;i++)
				{
					if (eval("p" + i))
					if (selectedBrowser == "ie"){
							document.getElementById("p"+i+"stat").style.backgroundImage = "none"
							document.getElementById("p"+i+"stat").style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='calc/img/statImg/stats1d.png', sizingMethod='scale');"
						}else{

						document.getElementById("p"+i+"stat").style.backgroundImage =	"url(calc/img/statImg/stats1d.png)"	
						}
				}
				break
		}
		
}

function HideBoard()
{
	document.getElementById("flop1").style.display="none"
	document.getElementById("flop2").style.display="none"
	document.getElementById("flop3").style.display="none"
	document.getElementById("flop4").style.display="none"
	document.getElementById("flop5").style.display="none"
	
	
	
}

function ShowBoard()
{
	document.getElementById("flop1").style.display=""
	document.getElementById("flop2").style.display=""
	document.getElementById("flop3").style.display=""
	document.getElementById("flop4").style.display=""
	document.getElementById("flop5").style.display=""
	
}



function HandleClick(e)
{		
	if (loaded == false) return
	var targ
	if (!e) var e = window.event
	if (e.target) targ = e.target
	else if (e.srcElement) targ = e.srcElement
	if (targ.nodeType == 3) 
	targ = targ.parentNode
	var tname
	tname=targ.id	

	ProcessClick(tname)	
}

function GetBackgroundCard(selectedCard,highlighted)
{
	switch (selectedGameType.toLowerCase())
	{
		case "holdem":
			

			if (highlighted)
				return backPath + "hi1.png"
			else
				return backPath + "tb1.png"
			break
		case "omaha":			
		case "omahahl":
			
			if (selectedCard.substring(1,2) < 4)
			{
				if (highlighted)
				{					
					return backPath + "hi2.png"
				}
				else
					return backPath + "tb2.png"
			}
			else
			{
				if (highlighted)
					return backPath + "hi1.png"
				else
					return backPath + "tb1.png"
			}
			break
		case "stud":
		case "studhl":
			if (selectedCard.substring(1,2) == 7)
				if (highlighted)
					return backPath + "hi1.png"
				else
				{					
					return backPath + "tb1.png"
				}
			else
			{
				indexer = selectedCard.substring(1,2)
				indexer = indexer - 0
				indexer = indexer + 2
				if (highlighted)
					return backPath + "hi"+indexer+".png" 
				else									
					return backPath + "tb"+indexer+".png" 
				
			}
			break
	}
}


function HighlightNextCard()
{	
	if (selectedCard == "")
	{
		loaded = true
		document.body.style.cursor = 'pointer'
		return
	}
		
	holdIndex = document.getElementById(selectedCard).style.zIndex 
	
			if (selectedBrowser == "ie")
			{
				
				document.getElementById(selectedCard).style.backgroundImage = "url(" +backPath + "blank.png)"
				document.getElementById(selectedCard).width = "40"
				document.getElementById(selectedCard).height = "56"
				
			}
			else
				document.getElementById(selectedCard).style.backgroundImage = "url("+GetBackgroundCard(selectedCard,true)+")"
				document.getElementById(selectedCard).style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+GetBackgroundCard(selectedCard,true)+"', sizingMethod='crop');"
	
	loaded = true
	document.body.style.cursor = 'pointer'
}

function UnHighlightSelectedCard()
{
	
	if (selectedCard == "") return	
	document.getElementById(selectedCard).style.zIndex = holdIndex

		if (selectedBrowser == "ie")
		{
			
			document.getElementById(selectedCard).style.backgroundImage = "url(" +backPath + "blank.png)"
				document.getElementById(selectedCard).width = "40"
				document.getElementById(selectedCard).height = "56"
			
		}
		else
				document.getElementById(selectedCard).style.backgroundImage = "url("+GetBackgroundCard(selectedCard,false)+")"
			document.getElementById(selectedCard).style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+GetBackgroundCard(selectedCard,false)+"', sizingMethod='scale');"	
		
	
}

function ProcessBlink()
{
	if (errorState == true)
	{
		if (blinkToggle == 0)
		{
			blinkToggle = 1
			HighlightNextCard()
		}
		else
		{
			blinkToggle = 0
			UnHighlightSelectedCard()
		}
		setTimeout("ProcessBlink()",blinkFrequency);
	}
}

function SetHoleCard(holeCard,cardName)
{
	
	if (document.getElementById(holeCard).style.backgroundImage.indexOf("Back") < 0) 
	{
		var curCard = document.getElementById(holeCard).src
		curCard = curCard.substring(curCard.length-6,curCard.length-4)
		document.getElementById("card"+curCard).src = miniPath + curCard + ".gif"	
	}

	document.getElementById(holeCard).style.backgroundImage = "url(" + tablePath + cardName + ".gif)" 
	document.getElementById(holeCard).style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+ tablePath + cardName + ".gif', sizingMethod='scale');"	
}

function SetBoardCard(boardCard,cardName)
{	
	if (document.getElementById(boardCard).style.backgroundImage.indexOf("png") < 0) 
	{			
		var curCard = document.getElementById(boardCard).src			
		
		curCard = curCard.substring(curCard.length-6,curCard.length-4)
		document.getElementById("card"+curCard).src = miniPath + curCard + ".gif"		
	}
	

		document.getElementById(boardCard).style.backgroundImage = "url(" + tablePath + cardName + ".gif)"
		document.getElementById(boardCard).style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+ tablePath + cardName + ".gif', sizingMethod='scale');"	

}


function CalcNextSelectedCard()
{
	var cardNo
	var maxCard
	var nextPlayer
	var curCard	= selectedCard
	
	var maxHole = 5	
	var maxPlayer = 5
	
	do
	{
		if (curCard.indexOf("flop") >= 0 ) 
		{
			cardNo = curCard.substring(4,5)
			cardNo -= 0		
			if (cardNo == maxHole)
			{
				curCard = "c1p1"
			}
			else
			{
				cardNo += 1
				curCard = "flop" + cardNo			
			}
			if (document.getElementById(curCard).style.backgroundImage.indexOf("png") > 0) 
			{
				selectedCard = curCard
				return
			}				
		}
		else 
		{
			cardNo = curCard.substring(1,2)
						
			cardNo -= 0 
			cardNo += 1
			
			switch (selectedGameType)
			{
				case "Holdem":
					maxCard = 2
					break
				case "Omaha":
				case "OmahaHL":
					maxCard = 4
					break
				
				case "Stud":
				case "StudHL":
					maxCard = 7
					break			
			}
			
			if (cardNo <= maxCard) 
			{
				curCard = "c" + cardNo + curCard.substring(2,5)									
			}
			else
			{
				nextPlayer = curCard.substring(3,5)													
				nextPlayer -= 0
				nextPlayer += 1				
				
				if (nextPlayer > maxPlayer)
				{					
					if (selectedGameType.indexOf("Stud") < 0)
						curCard = "flop1"
					else
						curCard = "c1p1"
					
				}
				else
				{
					curCard = "c1p" + nextPlayer
				}
			}
			
			if (document.getElementById(curCard).style.backgroundImage.indexOf("png") > 0) 
			{
				selectedCard = curCard
				return
			}	
		}
	}
	while (curCard != selectedCard)
	selectedCard = "" 
}

function RemoveSelectCard(cardName) 
{
	if ((cardName.indexOf("c") > 0) || (cardName.indexOf("d") > 0))
		document.getElementById("card"+cardName).src = miniPath + "x1.gif"
	else
		document.getElementById("card"+cardName).src = miniPath + "x2.gif"
}

function SetHand()
{
	document.body.style.cursor = 'pointer'
}

function SetDefault()
{
	document.body.style.cursor = 'default'
}

function ProcessQuerySetCard(cardName,cardSelected)
{	
	selectedCard = cardSelected
	ProcessSetCard(cardName)
	CalcNextSelectedCard()
}

function ProcessSetCard(cardName)
{	
	
	if (selectedCard.indexOf("flop") >= 0 ) 
	{
		SetBoardCard(selectedCard,cardName)
	}
	else
	{				
		SetHoleCard(selectedCard,cardName)		
	}
	RemoveSelectCard(cardName)
	CalcNextSelectedCard()
	setTimeout("HighlightNextCard()",300)
}


function ProcessClick(clickedObject)
{		
	if (loaded == false) return
	if (clickedObject == "calcDiv") return
	
	errorState = false
	
	if (clickedObject.indexOf("card") >= 0)	//regular table card
	{		
		if (selectedCard == "") return
		loaded = false
		document.body.style.cursor = 'wait'
		if (posted) ClearResults()
		if (document.getElementById(clickedObject).src.indexOf("x") >= 0) 
		{
			loaded = true
			document.body.style.cursor = 'pointer'
			return //a card thats already out was selected
		}
		ProcessSetCard(clickedObject.substring(4,clickedObject.length))
		
		return
	}
	
	if (clickedObject.indexOf("flop") >= 0)
	{
		loaded = false
		document.body.style.cursor = 'wait'
		if (posted) ClearResults()
		
		if (document.getElementById(clickedObject).style.backgroundImage.indexOf("png") < 0) //card not empty
		{			
			ReverseBoardCard(document.getElementById(clickedObject).style.backgroundImage,clickedObject)
		}
		UnHighlightSelectedCard()
		selectedCard = clickedObject
		HighlightNextCard()
		loaded = true
		document.body.style.cursor = 'pointer'
		return
	}
	
	if (clickedObject.indexOf("c") == 0)
	{			
		var typ = selectedGameType.toLowerCase()		
		if ((typ.indexOf("omaha") >= 0) || (typ.indexOf("stud") >= 0))
		{			
			if (selectedCard.substring(4,2) == clickedObject.substring(4,2))
			{
				 var cardNo1 = selectedCard.substring(1,2)				 
				 var cardNo2 = clickedObject.substring(1,2)				 
				 //if (cardNo2 > cardNo1)
					//return				
			}
		}
		
		loaded = false
		document.body.style.cursor = 'wait'
		if (posted) ClearResults()
		
		if (document.getElementById(clickedObject).style.backgroundImage.indexOf("Back") < 0) //card not empty
		{			
			ReverseHoleCard(document.getElementById(clickedObject).style.backgroundImage,clickedObject)
		}
		UnHighlightSelectedCard()
		selectedCard = clickedObject
		HighlightNextCard()
		loaded = true
		document.body.style.cursor = 'pointer'
		return
	}
	
	if (clickedObject.indexOf("btnClear") >= 0)
	{
		loaded = false
		document.body.style.cursor = 'wait'
		ClearScreen()		
		loaded = true
		document.body.style.cursor = 'pointer'
		HighlightNextCard()
	}
	if (clickedObject.indexOf("btnCalculate") >= 0)
	{
		loaded = false
		document.body.style.cursor = 'wait'
		var st = BuildHandString()			
		
		if ((st == "-1") || (st == "-2"))
		{				
			errorState = true
			document.body.style.cursor = 'pointer'
			setTimeout("ProcessBlink()",blinkFrequency)
			loaded = true
			return
		}	
		
		urlEnd = document.location.href.indexOf("/",8)
	    coreUrl = document.location.href.substring(0,urlEnd);
		
		httpo = CreateRequestObject()
		httpo.open('get',calcFunction+'?hand='+st)
		
		httpo.onreadystatechange = HandleResults
		httpo.send(null)	
		
	}

}

function PostResults()
{	
	setTimeout("ChangeStatImg(playedHand[0],playedHand[1],playedHand[2],playedHand[3],playedHand[4],'b')",125)
	setTimeout("ChangeStatImg(playedHand[0],playedHand[1],playedHand[2],playedHand[3],playedHand[4],'c')",250)
	setTimeout("ChangeStatImg(playedHand[0],playedHand[1],playedHand[2],playedHand[3],playedHand[4],'d')",375)
	setTimeout("PrintResults()",500)
}


function PrintResults()
{	
	var lastTrue = 0	
	var linesArray = resStr.split("hand")	

	posted = true
		for (i = 0; linesArray.length; i++)				
		{			
			while (playedHand[lastTrue] == false)
			{				
				lastTrue++
				if (lastTrue > 5) return
			}

			lineArray = linesArray[i].split(",")
			var offset = lineArray.length
			
				if (selectedGameType.toLowerCase() == "omahahl" || selectedGameType.toLowerCase() == "studhl")
				{					
					highWin = (lineArray[1]/500000)*100
					highWin = highWin.toString().substring(0,4)
					lowWin = (lineArray[4]/500000)*100
					lowWin = lowWin.toString().substring(0,4)
					highLose = (lineArray[2]/500000)*100
					highLose = highLose.toString().substring(0,4)
					lowLose = (lineArray[5]/500000)*100
					lowLose = lowLose.toString().substring(0,4)
					highTie = (lineArray[3]/500000)*100
					highTie = highTie.toString().substring(0,4)
					lowTie = (lineArray[6]/500000)*100
					lowTie = lowTie.toString().substring(0,4)
					
					document.getElementById("p"+(lastTrue+1)+"win").firstChild.nodeValue = "W " + highWin + "/" + lowWin + "%"
					document.getElementById("p"+(lastTrue+1)+"lose").firstChild.nodeValue = "L " + highLose + "/" + lowLose + "%"
					document.getElementById("p"+(lastTrue+1)+"tie").firstChild.nodeValue = "T " + highTie + "/" + lowTie + "%"
					lastTrue++
					
				}
				else
				{				
					
					
					document.getElementById("p"+(lastTrue+1)+"win").innerHTML = "win " + lineArray[1] + "%"
					document.getElementById("p"+(lastTrue+1)+"lose").innerHTML = "lose " + lineArray[3] + "%"
					document.getElementById("p"+(lastTrue+1)+"tie").innerHTML = "tie " + lineArray[5] + "%"
					lastTrue++
				}
				
			loaded = true
			document.body.style.cursor = 'pointer'
		}
}

function HandleResults()
{	
	if (httpo.readyState == 4)
	{		
		resStr = httpo.responseText
		
		PostResults()		
	}
}



function ReverseBoardCard(cardSrc,boardSelected)
{
	var cleanCard = cardSrc.substring(cardSrc.length-7,cardSrc.length-5)
	
		if (selectedBrowser == "ie")
			{			
				document.getElementById(boardSelected).style.backgroundImage = "url("+backPath + "blank.png)"
				document.getElementById(boardSelected).width = "40"
				document.getElementById(boardSelected).height = "56"
			}
		else
			document.getElementById(boardSelected).style.backgroundImage = "url("+backPath + "tb1.png)"
			
			document.getElementById(selectedCard).style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+backPath + "tb1.png', sizingMethod='scale');"
		
		
		document.getElementById("card"+cleanCard).src = miniPath + cleanCard + ".gif"
	
}

function ReverseHoleCard(cardSrc,holeSelected)
{		
	
	var cleanCard = cardSrc.substring(cardSrc.length-7,cardSrc.length-5)
	
		if (selectedBrowser == "ie")
			{				
				document.getElementById(holeSelected).style.backgroundImage = "url("+backPath + "blank.png)"
				document.getElementById(holeSelected).width = "40"
				document.getElementById(holeSelected).height = "56"
			}
		else
			//document.getElementById(holeSelected).src = GetBackgroundCard(holeSelected,false)
			
				document.getElementById(holeSelected).style.backgroundImage = "url("+GetBackgroundCard(holeSelected,false)+")"
		
		document.getElementById(holeSelected).style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+GetBackgroundCard(holeSelected,false)+"', sizingMethod='scale');"
		
		document.getElementById("card"+cleanCard).src = miniPath + cleanCard + ".gif"
}
function unSetGameTypes()
{
	document.getElementById("Holdem").firstChild.nodeValue = "Holdem"
	document.getElementById("Omaha").firstChild.nodeValue = "Omaha"
	document.getElementById("OmahaHL").firstChild.nodeValue = "OmahaHL"
	document.getElementById("Stud").firstChild.nodeValue = "Stud"
	document.getElementById("StudHL").firstChild.nodeValue = "StudHL"
}
function SetGameType(gameType)
{		
	if (loaded == false) return
	
	loaded = false	
	
	if (holdIndex > 0)
		document.getElementById(selectedCard).style.zIndex = holdIndex
	
	ClearScreen()
	
	document.body.style.cursor = 'wait'	
	
	switch (gameType.toLowerCase())
	{
		case "holdem":
			document.body.style.cursor = 'wait'	
			selectedGameType = "Holdem"
			unSetGameTypes()
			document.getElementById("Holdem").firstChild.nodeValue = "*Holdem*"
			SetCardDisplay()
			SetCardsHoldem()
			ShowBoard()			
			break
		case "omaha":
			selectedGameType = "Omaha"
			unSetGameTypes()
			document.getElementById("Omaha").firstChild.nodeValue = "*Omaha*"
			SetCardDisplay()
			SetCardsOmaha()			
			ShowBoard()			
			break
		case "omahahl":
			selectedGameType = "OmahaHL"
			unSetGameTypes()
			document.getElementById("OmahaHL").firstChild.nodeValue = "*OmahaHL*"
			SetCardDisplay()
			SetCardsOmaha()
			ShowBoard()
			break
		case "stud":
			selectedGameType = "Stud"
			unSetGameTypes()
			document.getElementById("Stud").firstChild.nodeValue = "*Stud*"
			SetCardDisplay()
			SetCardsStud()
			HideBoard()
			break
		case "studhl":
			selectedGameType = "StudHL"
			unSetGameTypes()
			document.getElementById("StudHL").firstChild.nodeValue = "*StudHL*"
			SetCardDisplay()
			SetCardsStud()
			HideBoard()
			break
	}
	loaded = true
	document.body.style.cursor = 'pointer'	
	HighlightNextCard()
}

function SetCardDisplay()
{
	for (i = 1; i <= 5; i++)
	{
		for (j = 1; j <= 7; j++)
		{
			document.getElementById("c"+j+"p"+i).style.display = ''
		}
	}
}

function SetCardsHoldem()
{
	document.getElementById("c1p1").style.left = "0"
	document.getElementById("c1p1").style.top = "90"
	document.getElementById("c2p1").style.left = "41"
	document.getElementById("c2p1").style.top = "90"
	document.getElementById("c3p1").style.display = 'none'
	document.getElementById("c4p1").style.display = 'none'
	document.getElementById("c5p1").style.display = 'none'
	document.getElementById("c6p1").style.display = 'none'
	document.getElementById("c7p1").style.display = 'none'
	
	document.getElementById("c1p2").style.left = "100"
	document.getElementById("c1p2").style.top = "190"
	document.getElementById("c2p2").style.left = "141"
	document.getElementById("c2p2").style.top = "190"
	document.getElementById("c3p2").style.display = 'none'
	document.getElementById("c4p2").style.display = 'none'
	document.getElementById("c5p2").style.display = 'none'
	document.getElementById("c6p2").style.display = 'none'
	document.getElementById("c7p2").style.display = 'none'
	
	document.getElementById("c1p3").style.left = "210"
	document.getElementById("c1p3").style.top = "190"
	document.getElementById("c2p3").style.left = "251"
	document.getElementById("c2p3").style.top = "190"
	document.getElementById("c3p3").style.display = 'none'
	document.getElementById("c4p3").style.display = 'none'
	document.getElementById("c5p3").style.display = 'none'
	document.getElementById("c6p3").style.display = 'none'
	document.getElementById("c7p3").style.display = 'none'
	
	document.getElementById("c1p4").style.left = "320"
	document.getElementById("c1p4").style.top = "190"
	document.getElementById("c2p4").style.left = "361"
	document.getElementById("c2p4").style.top = "190"
	document.getElementById("c3p4").style.display = 'none'
	document.getElementById("c4p4").style.display = 'none'
	document.getElementById("c5p4").style.display = 'none'
	document.getElementById("c6p4").style.display = 'none'
	document.getElementById("c7p4").style.display = 'none'
		
	document.getElementById("c1p5").style.left = "430"
	document.getElementById("c1p5").style.top = "90"
	document.getElementById("c2p5").style.left = "471"
	document.getElementById("c2p5").style.top = "90"
	document.getElementById("c3p5").style.display = 'none'
	document.getElementById("c4p5").style.display = 'none'
	document.getElementById("c5p5").style.display = 'none'
	document.getElementById("c6p5").style.display = 'none'
	document.getElementById("c7p5").style.display = 'none'
	
	for (i = 1; i <= 5; i++)
	{
		for (j = 1; j <= 4; j++)
		{
			if (selectedBrowser == "ie")
			{
			document.getElementById("c"+j+"p"+i).style.backgroundImage = "url("+backPath + "blank.png)"
			document.getElementById("c"+j+"p"+i).width = "40"
			document.getElementById("c"+j+"p"+i).height = "56"
			}
			else
				document.getElementById("c"+j+"p"+i).style.backgroundImage = "url(" + backPath + "tb1.png)"
				document.getElementById("c"+j+"p"+i).style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='calc/img/cardBacks/tb1.png', sizingMethod='crop');"
				//document.getElementById("c"+j+"p"+i).style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+GetBackgroundCard("c"+j+"p"+i,false)+"', sizingMethod='scale');"
			
		}
	}
	//set statholders 
	document.getElementById("p1stat").style.top = "148"
	document.getElementById("p2stat").style.top = "248"
	document.getElementById("p3stat").style.top = "248"
	document.getElementById("p4stat").style.top = "248"
	document.getElementById("p5stat").style.top = "148"			
	
}

function SetCardsOmaha()
{
	document.getElementById("c1p1").style.left = "0"
	document.getElementById("c1p1").style.top = "90"
	document.getElementById("c2p1").style.left = "13"
	document.getElementById("c2p1").style.top = "90"
	document.getElementById("c3p1").style.left = "26"
	document.getElementById("c3p1").style.top = "90"
	document.getElementById("c4p1").style.left = "39"
	document.getElementById("c4p1").style.top = "90"
	document.getElementById("c5p1").style.display = 'none'
	document.getElementById("c6p1").style.display = 'none'
	document.getElementById("c7p1").style.display = 'none'
	
	document.getElementById("c1p2").style.left = "100"
	document.getElementById("c1p2").style.top = "190"
	document.getElementById("c2p2").style.left = "113"
	document.getElementById("c2p2").style.top = "190"
	document.getElementById("c3p2").style.left = "126"
	document.getElementById("c3p2").style.top = "190"
	document.getElementById("c4p2").style.left = "139"
	document.getElementById("c4p2").style.top = "190"
	document.getElementById("c5p2").style.display = 'none'
	document.getElementById("c6p2").style.display = 'none'
	document.getElementById("c7p2").style.display = 'none'
	
	document.getElementById("c1p3").style.left = "210"
	document.getElementById("c1p3").style.top = "190"
	document.getElementById("c2p3").style.left = "223"
	document.getElementById("c2p3").style.top = "190"
	document.getElementById("c3p3").style.left = "236"
	document.getElementById("c3p3").style.top = "190"
	document.getElementById("c4p3").style.left = "249"
	document.getElementById("c4p3").style.top = "190"
	document.getElementById("c5p3").style.display = 'none'
	document.getElementById("c6p3").style.display = 'none'
	document.getElementById("c7p3").style.display = 'none'
	
	document.getElementById("c1p4").style.left = "320"
	document.getElementById("c1p4").style.top = "190"
	document.getElementById("c2p4").style.left = "333"
	document.getElementById("c2p4").style.top = "190"
	document.getElementById("c3p4").style.left = "346"
	document.getElementById("c3p4").style.top = "190"
	document.getElementById("c4p4").style.left = "359"
	document.getElementById("c4p4").style.top = "190"
	document.getElementById("c5p4").style.display = 'none'
	document.getElementById("c6p4").style.display = 'none'
	document.getElementById("c7p4").style.display = 'none'
		
	document.getElementById("c1p5").style.left = "430"
	document.getElementById("c1p5").style.top = "90"
	document.getElementById("c2p5").style.left = "443"
	document.getElementById("c2p5").style.top = "90"
	document.getElementById("c3p5").style.left = "456"
	document.getElementById("c3p5").style.top = "90"
	document.getElementById("c4p5").style.left = "469"
	document.getElementById("c4p5").style.top = "90"
	document.getElementById("c5p5").style.display = 'none'
	document.getElementById("c6p5").style.display = 'none'
	document.getElementById("c7p5").style.display = 'none'
	
	for (i = 1; i <= 5; i++)
	{
		for (j = 1; j <= 4; j++)
		{
					if (selectedBrowser == "ie")
		{
			document.getElementById("c"+j+"p"+i).style.backgroundImage = "url("+backPath + "blank.png)"
			document.getElementById("c"+j+"p"+i).width = "40"
			document.getElementById("c"+j+"p"+i).height = "56"
		}
		else
					document.getElementById("c"+j+"p"+i).style.backgroundImage = "url("+GetBackgroundCard("c"+j+"p"+i,false)+")"
			document.getElementById("c"+j+"p"+i).style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+GetBackgroundCard("c"+j+"p"+i,false)+"', sizingMethod='crop');"
		}
	}
	//set statholders 
	document.getElementById("p1stat").style.top = "148"
	document.getElementById("p2stat").style.top = "248"
	document.getElementById("p3stat").style.top = "248"
	document.getElementById("p4stat").style.top = "248"
	document.getElementById("p5stat").style.top = "148"		
}

function SetCardsStud()
{

	document.getElementById("c1p1").style.left = "0"
	document.getElementById("c1p1").style.top = "90"
	document.getElementById("c2p1").style.left = "13"
	document.getElementById("c2p1").style.top = "90"
	document.getElementById("c3p1").style.left = "26"
	document.getElementById("c3p1").style.top = "90"
	document.getElementById("c4p1").style.left = "39"
	document.getElementById("c4p1").style.top = "90"
	document.getElementById("c5p1").style.left = "7"
	document.getElementById("c5p1").style.top = "124"
	document.getElementById("c6p1").style.left = "20"
	document.getElementById("c6p1").style.top = "124"
	document.getElementById("c7p1").style.left = "33"
	document.getElementById("c7p1").style.top = "124"
	
	document.getElementById("c1p2").style.left = "100"
	document.getElementById("c1p2").style.top = "190"
	document.getElementById("c2p2").style.left = "113"
	document.getElementById("c2p2").style.top = "190"
	document.getElementById("c3p2").style.left = "126"
	document.getElementById("c3p2").style.top = "190"
	document.getElementById("c4p2").style.left = "139"
	document.getElementById("c4p2").style.top = "190"
	document.getElementById("c5p2").style.left = "107"
	document.getElementById("c5p2").style.top = "224"
	document.getElementById("c6p2").style.left = "120"
	document.getElementById("c6p2").style.top = "224"
	document.getElementById("c7p2").style.left = "133"
	document.getElementById("c7p2").style.top = "224"
	
	document.getElementById("c1p3").style.left = "210"
	document.getElementById("c1p3").style.top = "190"
	document.getElementById("c2p3").style.left = "223"
	document.getElementById("c2p3").style.top = "190"
	document.getElementById("c3p3").style.left = "236"
	document.getElementById("c3p3").style.top = "190"
	document.getElementById("c4p3").style.left = "249"
	document.getElementById("c4p3").style.top = "190"
	document.getElementById("c5p3").style.left = "217"
	document.getElementById("c5p3").style.top = "224"
	document.getElementById("c6p3").style.left = "230"
	document.getElementById("c6p3").style.top = "224"
	document.getElementById("c7p3").style.left = "243"
	document.getElementById("c7p3").style.top = "224"
	
	document.getElementById("c1p4").style.left = "320"
	document.getElementById("c1p4").style.top = "190"
	document.getElementById("c2p4").style.left = "333"
	document.getElementById("c2p4").style.top = "190"
	document.getElementById("c3p4").style.left = "346"
	document.getElementById("c3p4").style.top = "190"
	document.getElementById("c4p4").style.left = "359"
	document.getElementById("c4p4").style.top = "190"
	document.getElementById("c5p4").style.left = "327"
	document.getElementById("c5p4").style.top = "224"
	document.getElementById("c6p4").style.left = "340"
	document.getElementById("c6p4").style.top = "224"
	document.getElementById("c7p4").style.left = "353"
	document.getElementById("c7p4").style.top = "224"
		
	document.getElementById("c1p5").style.left = "430"
	document.getElementById("c1p5").style.top = "90"
	document.getElementById("c2p5").style.left = "443"
	document.getElementById("c2p5").style.top = "90"
	document.getElementById("c3p5").style.left = "456"
	document.getElementById("c3p5").style.top = "90"
	document.getElementById("c4p5").style.left = "469"
	document.getElementById("c4p5").style.top = "90"
	document.getElementById("c5p5").style.left = "437"
	document.getElementById("c5p5").style.top = "124"
	document.getElementById("c6p5").style.left = "450"
	document.getElementById("c6p5").style.top = "124"
	document.getElementById("c7p5").style.left = "463"
	document.getElementById("c7p5").style.top = "124"
	
	for (i = 1; i <= 5; i++)
	{
		for (j = 1; j <= 7; j++)
		{
			if (selectedBrowser == "ie")
				{			
					document.getElementById("c"+j+"p"+i).width = "40"
					document.getElementById("c"+j+"p"+i).height = "56"
					document.getElementById("c"+j+"p"+i).style.backgroundImage = "url("+backPath + "blank.png)"
				}
			else
				
				document.getElementById("c"+j+"p"+i).style.backgroundImage = "url("+GetBackgroundCard("c"+j+"p"+i,false)+")"
				document.getElementById("c"+j+"p"+i).style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+GetBackgroundCard("c"+j+"p"+i,false)+"', sizingMethod='crop');"
		}
	}
//set statholders lower
	document.getElementById("p1stat").style.top = "182"
	document.getElementById("p2stat").style.top = "282"
	document.getElementById("p3stat").style.top = "282"
	document.getElementById("p4stat").style.top = "282"
	document.getElementById("p5stat").style.top = "182"
	
}

function ClearScreen()
{
	var maxCard
	var typeString
	var i
	var j
	var suits = new Array(4)
	suits[0] = "c"
	suits[1] = "d"
	suits[2] = "h"
	suits[3] = "s"
	
	var cards = new Array(13)
	cards[0] = "2"
	cards[1] = "3"
	cards[2] = "4"
	cards[3] = "5"
	cards[4] = "6"
	cards[5] = "7"
	cards[6] = "8"
	cards[7] = "9"
	cards[8] = "T"
	cards[9] = "J"
	cards[10] = "Q"
	cards[11] = "K"
	cards[12] = "A"
	
	if ((holdIndex > 0) && (selectedCard != ""))
	{		
		
		document.getElementById(selectedCard).style.zIndex = holdIndex			
	}
	
	errorState = false
		
	switch (selectedGameType.toLowerCase())
	{
		case "holdem":
			maxCard = 2
			typeString = "h"
			break
		case "omaha":
			maxCard = 4
			typeString = "o"
			break
		case "omahahl":
			maxCard = 4
			typeString = "o"
			break
		case "stud":
			maxCard = 7
			typeString = "s"
			break
		case "studhl":
			maxCard = 7
			typeString = "s"
			break
	}		
	
	for (i=1;i<=5;i++) //reset all user cards
	{
		for (j=1;j<=maxCard;j++)
		{			
			if (selectedBrowser == "ie")
			{				
				document.getElementById("c"+j+"p"+i).style.backgroundImage = "url("+backPath + "blank.png)"
				document.getElementById("c"+j+"p"+i).width = "40"
				document.getElementById("c"+j+"p"+i).height = "56"
			}
			else
			{				
			document.getElementById("c"+j+"p"+i).style.backgroundImage = "url("+GetBackgroundCard("c"+j+"p"+i,false)+")"
			}
			document.getElementById("c"+j+"p"+i).style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+GetBackgroundCard("c"+j+"p"+i,false)+"', sizingMethod='scale');"		
		
		}
	}	
	
	for (i=0; i < 4 ;i++)
	{
		for (j = 0; j < 13; j++)
		{			
			document.getElementById("card"+cards[j]+suits[i]).src = miniPath + cards[j] + suits[i] + ".gif"
		}
	}
	
	
	for (i=1; i <= 5; i++)
	{
		if (selectedBrowser == "ie")
		{
			document.getElementById("flop"+i).style.backgroundImage = "url(" +backPath + "blank.png)"
			document.getElementById("flop"+i).width = "40"
			document.getElementById("flop"+i).height = "56"
		}
		else
			document.getElementById("flop"+i).style.backgroundImage = "url(" +backPath + "tb1.png)"
			
		document.getElementById("flop"+i).style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+backPath+"tb1.png', sizingMethod='scale');"
	}
	selectedCard = "c1p1"
	
	ClearResults()	
	
}

function CreateRequestObject(){
	var request_o
	var browser = navigator.appName
	if(browser == "Microsoft Internet Explorer"){
		
		request_o = new ActiveXObject("Microsoft.XMLHTTP")
	}else{
		
		request_o = new XMLHttpRequest()
	}
	return request_o
}

function ClearResults()
{
	posted = false
	try
		{
			for (i=1; i <= 5; i++)
			{
				document.getElementById("p"+i+"win").firstChild.nodeValue = "player" +i
				document.getElementById("p"+i+"win").style.display = "inline"
				document.getElementById("p"+i+"lose").firstChild.nodeValue = ""
				document.getElementById("p"+i+"win").style.display = "inline"
				document.getElementById("p"+i+"tie").firstChild.nodeValue= ""
				document.getElementById("p"+i+"win").style.display = "inline"
				
				playedHand[i] = false
			}
			
			ChangeStatImg(true,true,true,true,true,"a")			
		}
	catch(err) 
	{
		
	}
}

function GetCardFromSource(crdSrc)
{	
	return crdSrc.substring(crdSrc.length-7,crdSrc.length-5)		
}

function BuildHandString()
{
	var handXml = "./pokenum "
	var cardCount
	var i
	var j
	
	var playerCount = 5
	
	switch (selectedGameType.toLowerCase())
	{
		case "holdem":
			handXml += "-h "
			cardCount = 2
			break
		case "omaha":
			handXml += "-mc 500000 -o "
			cardCount = 4
			break
		case "omahahl":
			handXml += "-mc 500000 -h8 "
			cardCount = 4
			break
		case "stud":
			handXml += "-mc 500000 -7s " 
			cardCount = 7
			break
		case "studhl":
			handXml += "-mc 500000 -7s8 "
			cardCount = 7
			break
	}
	
	for (i=1;i<=playerCount;i++)
	{		
		for (j=1;j<=cardCount;j++)
		{
			
			if (document.getElementById("c"+j+"p"+i).style.backgroundImage.indexOf("Back") < 0)
			{
				handXml += GetCardFromSource(document.getElementById("c"+j+"p"+i).style.backgroundImage) + " " 
				playedHand[i-1] = true
			}
			else
			{				
				if (j == 1)
				{
					j = cardCount + 1
					playedHand[i-1] = false					
				}
				else
				{
					if (selectedGameType.toLowerCase() != "stud" && selectedGameType.toLowerCase() != "studhl")
						return "-1"
					else
						j = cardCount + 1
				}
			}
		}
		handXml += " - "
	}
	
	handXml += " -- "
	
	if (document.getElementById("flop1").style.backgroundImage.indexOf("png") < 0)
	{
		if ((document.getElementById("flop2").style.backgroundImage.indexOf("png") < 0) && (document.getElementById("flop3").style.backgroundImage.indexOf("png") < 0))
		{
			handXml += GetCardFromSource(document.getElementById("flop1").style.backgroundImage) + " "
			handXml += GetCardFromSource(document.getElementById("flop2").style.backgroundImage) + " "
			handXml += GetCardFromSource(document.getElementById("flop3").style.backgroundImage) + " "
			if (document.getElementById("flop4").style.backgroundImage.indexOf("png") < 0)
			{
				handXml += GetCardFromSource(document.getElementById("flop4").style.backgroundImage) + " "
				
					if (document.getElementById("flop5").style.backgroundImage.indexOf("png") < 0)
					{
						handXml += " " + GetCardFromSource(document.getElementById("flop5").style.backgroundImage)
					}
					else
					{
						
					}
				
			
			}
			else
			{
				
					if (document.getElementById("flop5").style.backgroundImage.indexOf("png") < 0)
						return "-2"		
				
					
			}
		}
		else
		{
			//incomplete flop
			return "-2"
		}

	}
	else
	{
		
			if ((document.getElementById("flop2").style.backgroundImage.indexOf("png") < 0) || (document.getElementById("flop3").style.backgroundImage.indexOf("png") < 0) || (document.getElementById("flop4").style.backgroundImage.indexOf("png") < 0) || (document.getElementById("flop5").style.backgroundImage.indexOf("png") < 0))
				return "-2"
		
	
			
	}	
	
	return handXml 
}


var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};
