var values = [];
values[0] = "Tea party";
values[1] = "Taxes";
values[2] = "Strategy";
values[3] = "Ronald Reagan";
values[4] = "The governor";
values[5] = "George W. Bush";
values[6] = "Barack Obama";
values[7] = "9/11";
values[8] = "Invest in the future";
values[9] = "Democrats";
values[10] = "Republicans";
values[11] = "Death penalty";
values[12] = "Reference to a candidate without saying his/her name";
values[13] = "Jobs";
values[14] = "Jobs bill";
values[15] = "Social Security";
values[16] = "Ponzi scheme";
values[17] = "Average Americans";
values[18] = "Poor";
values[19] = "Obamacare";
values[20] = "On Day One";
values[21] = "Obamneycare";
values[22] = "Bargain";
values[23] = "Pledge";
values[24] = "Fed up";
values[25] = "Romneycare";
values[26] = "Perrycare";
values[27] = "Build a fence";
values[28] = "Job-killing";
values[29] = "Mandate";
values[30] = "Senior citizens"; 
values[31] = "I love _____";
values[32] = "Twitter";
values[33] = "Reach across party lines";
values[34] = "Medicare";
values[35] = "Balanced approach";
values[36] = "Failure";
values[37] = "Job creators";
values[38] = "Tax cuts";
values[39] = "Don't tax the rich";
values[40] = "Candidate touts his/her 'real-world' experience";
values[41] = "Gas prices";
values[42] = "Precious metals";
values[43] = "God";
values[44] = "Real America";
values[45] = "Candidate shakes his/her head while being verbally attacked";
values[46] = "Candidate misquotes history";
values[47] = "Never forget";
values[48] = "Take back America";
values[49] = "Minimum wage";
values[50] = "National debt";
values[51] = "Billion";
values[52] = "Trillion";
values[53] = "Recession";
values[54] = "Land of opportunity";
values[55] = "Infrastructure";
values[56] = "That's a good question";
values[57] = "Liberal media";
values[58] = "Transparency";
values[59] = "Treason";
values[60] = "Stimulus";
values[61] = "This president";
values[62] = "Small business";
values[63] = "Wall Street";
values[64] = "I was the only one";
values[65] = "Draw a line in the sand";
values[66] = "Repeal";
values[67] = "Bold solution";
values[68] = "The American people";
values[69] = "Pay-phone world";
values[70] = "Candidate compliments another candidate";
values[71] = "Candidate compliments Obama";
values[72] = "Fundamental";
values[73] = "The Obama Depression";
values[74] = "I have ___ children";
values[75] = "Socialism";
values[76] = "Any mention of religion except Islam";
values[77] = "Muslims";
values[78] = "I'm committed";
values[79] = "With all due respect";
values[80] = "Facebook";
values[81] = "Official language";
values[82] = "It's time to have a conversation";
values[83] = "Troy Davis";
values[84] = "Google";
values[85] = "YouTube";
values[86] = "Moderator interrupts a candidate";
values[87] = "Any mention of polls";
values[88] = "Front-runner";
values[89] = "My friend";
values[90] = "Conservative";
values[91] = "A true conservative";
values[92] = "Liberal";

var card;

function createBingoCard(notfirst) {
	// Local copy of the values array
    var cardvalues = values.slice();
    var row;
    var rowelem;
    var col;
	var cardID = 0;

    card = document.getElementById('cardname');
    if (!card) {
		//alert("Can't find bingocard table")
        return;
	}

	var h2 = document.createElement("h2");
	if (notfirst) {
		h2.className = "notfirst";
	}
	card.appendChild(h2);

	// IE needs this to be explicit
	var ctable = document.createElement("table");
	card.appendChild(ctable);
	if (notfirst) {
		ctable.className = "notfirst";
	}
	var tbody = document.createElement("tbody");
	ctable.appendChild(tbody);
	card = tbody;

	var headrow = document.createElement("tr");
	var cell, textelem;

	cell = document.createElement("th"); textelem = document.createTextNode("B");
	cell.appendChild(textelem); headrow.appendChild(cell);
	cell = document.createElement("th"); textelem = document.createTextNode("I");
	cell.appendChild(textelem); headrow.appendChild(cell);
	cell = document.createElement("th"); textelem = document.createTextNode("N");
	cell.appendChild(textelem); headrow.appendChild(cell);
	cell = document.createElement("th"); textelem = document.createTextNode("G");
	cell.appendChild(textelem); headrow.appendChild(cell);
	cell = document.createElement("th"); textelem = document.createTextNode("O");
	cell.appendChild(textelem); headrow.appendChild(cell);
	card.appendChild(headrow);

	for (row=0; row<5; ++row) {
		rowelem = document.createElement("tr");
		for (col=0; col<5; ++col) {
			cell = document.createElement("td"); 

			if (row === 2 && col === 2) {
				// Center space
				cell.className = 'free';
				var imgelem = document.createElement('img');
				imgelem.src = 'gop_logo.jpg';
				cell.appendChild(imgelem);
			} else {
				var v = Math.floor( Math.random() * cardvalues.length );
				var text = cardvalues.splice(v, 1);
				textelem = document.createTextNode(text);
				cell.setAttribute('id','cardNo'+cardID);
				cardID++;
				cell.appendChild(textelem);

			}

			rowelem.appendChild(cell);
		}
	card.appendChild(rowelem);
	}
}

function createManyBingoCards(n) {
	var i;
	// Clear first
	card = document.getElementById('cardname');
	if (!card) { return; }
	card.innerHTML = "";

	var num = new Number(n);
	if (num !== Number.NaN && num > 0) {
		for (i=0; i<num; ++i) {
			createBingoCard( (i!==0)?1:0 );
		}
	}
}
