
function buy() {}
//function get() {}
function tags() {}
function comments() {}

function vote(did, ud, uk) {
	var el = document.getElementById("vote_div");
	var caller = document.getElementById("vote_" + did);
	if (caller == null) {  // check if AJAX return
	  caller = document.getElementById("get_deck" + did);
	}
	el.style.left = cx + (caller.offsetWidth / 2);
	el.style.top = cy - 50; 
	var cx = findPosX(caller);
	var cy = findPosY(caller);
	el.style.visibility = "visible";	
	el.style.left = cx + (caller.offsetWidth / 2);
	el.style.top = cy; 
	d_id = did;
	d_ud = ud;
	d_uk = uk;
	freeze_vote = false;
}  // vote()

function hide_vote() {
	var el = document.getElementById("vote_div");
	el.style.visibility = "hidden";
}  // hide_vote()

function voted() { 
	//var vote_score = document.getElementById('vote_score');
	vote_score_value = review_num;  //vote_score.value;
	var vote_comments = document.getElementById('vote_comments');
	vote_comments_value = vote_comments.value;
	//alert("Getting deck with did of " + did + "  ud of " + ud + " and uk of " + uk);
	http.open("GET", "./voted.php?did=" + escape(d_id) + "&ud=" + escape(d_ud) + "&uk=" + escape(d_uk) + "&vs=" + vote_score_value + "&vc=" + vote_comments_value, true); 
	http.onreadystatechange = voted_response; 
	http.send(null);
}  // voted()

function voted_response() {
	if (http.readyState == 4) {
		var num_stars = http.responseText;
		var table = "<table border=0 cellpadding=0 cellspacing=0><tr>";
		var src;
		for (var ii=0; ii<num_stars; ii++) {
			if ((ii % 2) == 1) {
				src = "../images/review/small_star_1_right.gif";
			} else {
				src = "../images/review/small_star_1_left.gif";
			}
			table += "<td><img src='" + src + "'></td>";
		}
		for (var ii=num_stars; ii<10; ii++) {
			if ((ii % 2) == 1) {
				src = "../images/review/small_star_0_right.gif";
			} else {
				src = "../images/review/small_star_0_left.gif";
			}
			table += "<td><img src='" + src + "'></td>";
		}
		table += "<td><img src='../images/spacer.gif' width=5></td>";
		table += "<td> <font size=-2><a href='javascript:see_review(" + d_id + ")'>See Reviews</a></font></td>";
		table += "</tr></table>";		
		var el = document.getElementById("vote_div");
		el.style.visibility = "hidden";
		el = document.getElementById("vote_" + d_id);
		el.style.visibility = "hidden";
		el = document.getElementById("no_votes_" + d_id);
		if (el)	el.style.visibility = "hidden";
		el = document.getElementById("has_votes_" + d_id);
		//el.style.visibility = "hidden";
		if (el) el.innerHTML = table;
	}
}  // voted_response()

//var review_star = new Array();
//for (var ii=0; ii<10; ii++) review_star[ii] = false;
var review_num = 0;
var freeze_vote;
function review_none() {
	if (freeze_vote) return;
	review_num = -1;
	el = document.getElementById("review_star_0");
	el.src = "../images/review/star_0_left.gif";
}  // review_none()

function review_rate() {
	if (freeze_vote) return;
	freeze_vote = true;
	review_num++;
}

function review_mouse(num) {
	if (freeze_vote) return;
	review_num = num;
	var el;
	var src;
	for (var ii=0; ii<=num; ii++) {
 		el = document.getElementById("review_star_" + ii);
 		if ((ii % 2) == 1) {
			src = "../images/review/star_1_right.gif";
		} else {
			src = "../images/review/star_1_left.gif";
		}
		el.src = src;		
	}
	for (var ii=num+1; ii<10; ii++) {
 		el = document.getElementById("review_star_" + ii);
 		if ((ii % 2) == 1) {
			src = "../images/review/star_0_right.gif";
		} else {
			src = "../images/review/star_0_left.gif";
		}
		el.src = src;
	}
	// <td><img src="../images/review/star_1_left.gif"  onMouseOver="javascript:review_mouse(0)" id=review_star_0></td>
}  // review_mouse()


function review(did) {
	window.open("./review.php?d=" + did,
				"Review", 
//				"toolbar=no, directories=no, location=no, status=yes, menubar=no, resizable=no, scrollbars=no, width=750, height=850"
				"toolbar=no, directories=no, location=no, status=yes, menubar=no, resizable=no, scrollbars=yes, width=750, height=850"
				);
}  // review()

function see_review(did) {
	window.open("./view_feedback.php?d=" + did,
				"See Reviews", 
				"toolbar=no, directories=no, location=no, status=yes, menubar=no, resizable=yes, scrollbars=yes, width=400, height=300"
				);
}  // see_review()

function edit_tags(deck_id, tags) {
	var new_tags = tags;
	//alert("Edit " + deck_id + ": " + tags);
	return new_tags;
}


function findPosX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
	return curleft;
}

function findPosY(obj)
{
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	return curtop;
}

//*********************************************
// Sample variables
//*********************************************
var current_term = 0;
var	terms = new Array(5);
var side_names = new Array(10);
var d_id, last_d_id = -1;
var d_ud, d_uk;
var showNext = 0;
var no_content = false;

//*********************************************
// Ajax Stuff for Getting decks
//*********************************************
function get(did, ud, uk) {
	var url = "./get_deck.php?did=" + escape(did) + "&ud=" + escape(ud) + "&uk=" + escape(uk);
	//alert("Getting deck with did of " + did + "  ud of " + ud + " and uk of " + uk + "\n" + url);
	http.open("GET", url, true); 
	http.onreadystatechange = getHandleHttpResponse; 
	d_id = did;
	d_ud = ud;
	d_uk = uk;
	http.send(null);
}  // get()

function getHandleHttpResponse() {
	if (http.readyState == 4) {
		var response = parseInt(http.responseText);
		if (response == 1) {
			/* do something to reflect the acquisition of deck */
			//document.getElementById('get_deck' + d_id).innerHTML = "<b><font color=#cc3344><a href='./samples/review_" + d_id + ".gif'>" + response + "</a></font></b>";
			//document.getElementById('get_deck' + d_id).innerHTML = "<b><font color=#cc3344><a href='javascript:review(" + d_id + ") onclick=''>" + response + "</a></font></b>";
			var ele = document.getElementById('get_deck' + d_id);
			ele.onclick = "'javascript:review(" + d_id + ")";
			ele.innerHTML = 
					  " <a href='javascript:review("        + d_id + ")'>Review</a>"
					+ " <a href='javascript:return_show("   + d_id + ", " + d_ud + ", " + d_uk + ")'>Return</a>"
					+ " <span id=vote_" + d_id + "><a href='javascript:vote("          + d_id + ", " + d_ud + ", " + d_uk + ")'>Rate</a> this deck</span>";

				//	  "<b><font color=#cc3344><a href='javascript:review("         + d_id + ")'>Review deck</a></font></b><br>" 
				//	+ "<b><font color=#cc3344><a href='javascript:return_show("    + d_id + ", " + d_ud + ", " + d_uk + ")'>Return deck</a></font></b>";
					//<br>"
					//+ "<b><font color=#cc3344><a href='javascript:purchase_deck("  + d_id + ")'>Purchase deck</a></font></b>";
		} else if (response < 0) {
			need_dots_show(d_id, -response);
		}		
	}
} // getHandleHttpResponse()


function schoolGet(did, ud, uk) {
	var url = "./get_deck.php?did=" + escape(did) + "&ud=" + escape(ud) + "&uk=" + escape(uk);
	//alert("Getting deck with did of " + did + "  ud of " + ud + " and uk of " + uk + "\n" + url);
	http.open("GET", url, true); 
	http.onreadystatechange = schoolGetHandleHttpResponse; 
	d_id = did;
	d_ud = ud;
	d_uk = uk;
	http.send(null);
}  // get()

function schoolGetHandleHttpResponse() {
	if (http.readyState == 4) {
		var response = parseInt(http.responseText);
		if (response == 1) {
			/* do something to reflect the acquisition of deck */
			//document.getElementById('get_deck' + d_id).innerHTML = "<b><font color=#cc3344><a href='./samples/review_" + d_id + ".gif'>" + response + "</a></font></b>";
			//document.getElementById('get_deck' + d_id).innerHTML = "<b><font color=#cc3344><a href='javascript:review(" + d_id + ") onclick=''>" + response + "</a></font></b>";
			var ele = document.getElementById('school_deck_' + d_id);
			ele.onclick = "'javascript:review(" + d_id + ")";
			ele.innerHTML = 
					  " <a href='javascript:review("        + d_id + ")'>Review</a>"
					+ " <a href='javascript:school_return_show("   + d_id + ", " + d_ud + ", " + d_uk + ")'>Return</a>"
					+ " <span id=vote_" + d_id + "><a href='javascript:vote("          + d_id + ", " + d_ud + ", " + d_uk + ")'>Rate</a> this deck</span>";

				//	  "<b><font color=#cc3344><a href='javascript:review("         + d_id + ")'>Review deck</a></font></b><br>" 
				//	+ "<b><font color=#cc3344><a href='javascript:return_show("    + d_id + ", " + d_ud + ", " + d_uk + ")'>Return deck</a></font></b>";
					//<br>"
					//+ "<b><font color=#cc3344><a href='javascript:purchase_deck("  + d_id + ")'>Purchase deck</a></font></b>";
		} else if (response < 0) {
			need_dots_show(d_id, -response);
		}		
	}
} // getHandleHttpResponse()



//*********************************************
// Ajax Stuff for Returning decks
//*********************************************
var d_ud;
var d_uk;
function return_deck(did, ud, uk, reason) {

	//-------- Allow a deck to be returned if
	//--------   the request is made within the time limit (deck_transactions.review_left > 0)
	//-------- If okay, then 
	//--------   set deck_transactions.returned = 1
	//--------   credit users account with the proper credit (regular or gold)
	http.open("GET", "./return_deck.php?did=" + escape(did) + "&ud=" + escape(ud) + "&uk=" + escape(uk) + "&reason=" + reason, true); 
	http.onreadystatechange = return_response; 
	d_id = did;
	d_ud = ud;
	d_uk = uk;
	http.send(null);
}  // return_deck()


function return_response() {
	if (http.readyState == 4) {
		var response = http.responseText;
		if (response != '1') {
			var ele = document.getElementById('get_deck' + d_id);
			//ele.onclick = "'javascript:review(" + d_id + ")";
			ele.innerHTML = 
				 "<span id=get_deck" + d_id 
				+ " onclick='confirm_show(" + d_id + ", " + d_ud  + ", " + d_uk + ")'"
				+ ">"
				+ "<img src='../images/get.gif' align=absmiddle> "
				+ ( (response != '0') ? ("for " + response + " dot" + (response=='1'?"":"s")) : " for Free!" )
				+ "</span>";
			
		}		
	}
}  // return_response()



function school_return_deck(did, ud, uk, reason) {

	//-------- Allow a deck to be returned if
	//--------   the request is made within the time limit (deck_transactions.review_left > 0)
	//-------- If okay, then 
	//--------   set deck_transactions.returned = 1
	//--------   credit users account with the proper credit (regular or gold)
	http.open("GET", "./return_deck.php?did=" + escape(did) + "&ud=" + escape(ud) + "&uk=" + escape(uk) + "&reason=" + reason, true); 
	http.onreadystatechange = school_return_response; 
	d_id = did;
	d_ud = ud;
	d_uk = uk;
	http.send(null);
}  // school_return_deck()


function school_return_response() {
	if (http.readyState == 4) {
		var response = http.responseText;
		if (response != '1') {
			var ele = document.getElementById('school_deck_' + d_id);
			//ele.onclick = "'javascript:review(" + d_id + ")";
			ele.innerHTML = 
				 "<span id=school_deck_" + d_id 
				+ " onclick='school_confirm_show(" + d_id + ", " + d_ud  + ", " + d_uk + ")'"
				+ ">"
				+ " <a href='javascript:school_show(" + d_id + ', ' + d_ud + ', ' + d_uk + ")'>Get this</a> " // <img src='../images/get.gif' align=absmiddle> "
				+ ( (response != '0') ? ("for " + response + " dot" + (response=='1'?"":"s")) : " for Free!" )
				+ "</span>";
			
		}		
	}
}  // school_return_response()

//*********************************************
// Ajax Stuff for Purchasing decks
//*********************************************
function purchase_deck(did, ud, uk) {
	//-------- Allow a deck to be returned if
	//--------   the request is made within the time limit (deck_transactions.review_left > 0)
	//-------- If okay, then 
	//--------   set deck_transactions.returned = 1
	//--------   credit users account with the proper credit (regular or gold)
	http.open("GET", "./purchase_deck.php?did=" + escape(did) + "&ud=" + escape(ud) + "&uk=" + escape(uk), true); 
	http.onreadystatechange = purchase_response; 
	d_id = did;
	d_ud = ud;
	d_uk = uk;
	http.send(null);
}  // purchase_deck()


function purchase_response() {
	if (http.readyState == 4) {
		var response = http.responseText;
		if (response == '1') {
			var ele = document.getElementById('get_deck' + d_id);
			//ele.onclick = "'javascript:review(" + d_id + ")";
			ele.innerHTML = "<span id=get_deck" + d_id + "><b><font color=#3344cc>You got this deck!</font></b><br></span>";
		}		
	}
}  // purchase_response()

//*********************************************
// Ajax Stuff for the Sampler
//*********************************************
var url = "get_sample.php"; // The server-side script
var is_cube = false;

function sampleHandleHttpResponse() {
	if (http.readyState == 4) {
		var stuff = http.responseText;
		var code = stuff.charAt(0);
		stuff = stuff.substr(1);
		switch (code) {
			case '0':
				// problem!
				break;
			case '1':
				// Flash card deck
				is_cube = false;
				var lines = stuff.split("\r\n");
				for (var line in lines) {
					terms[line] = lines[line].split("\t");
				}
				no_content = (lines[1] == undefined)?true:false;
				//alert("CARD: sampleFill");
				sampleFill(d_id);
				break;
			case '2':
				// Flash cube deck
				is_cube = true;
				var lines = stuff.split("\r\n");
				var getting_side_names = true;
				var numnum = 0;
				for (var line in lines) {
				numnum++;
					if (getting_side_names) {
						getting_side_names = false;
						side_names = lines[line].split("\t");
						num_sides = side_names[0];
					} else {
						terms[line-1] = lines[line].split("\t");
					}
				}
				//alert("Did " + numnum);
				no_content = (lines[1] == undefined)?true:false;
				sampleFill(d_id);
				break;
		}
	}
}

function getSampleData(did) {
	http.open("GET", url + "?did=" + escape(did), true); 
	d_id=did;
	http.onreadystatechange = sampleHandleHttpResponse; 
	http.send(null);
}


function getHTTPObject() { 
	var xmlhttp; 
	/*@cc_on 
	@if (@_jscript_version >= 5) 
		try { 
			xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); 
		} catch (e) { 
			try { 
				xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 
			} catch (E) { 
				xmlhttp = false; 
			} 
		} 
	@else xmlhttp = false; 
	@end @*/  
	if (!xmlhttp && typeof XMLHttpRequest != 'undefined') { 
		try { 
			xmlhttp = new XMLHttpRequest(); 
		} catch (e) { 
			xmlhttp = false; 
		} 
	} 
	return xmlhttp; 
} 
var http = getHTTPObject(); // We create the HTTP Object 

//*********************************************
// Sample stuff
//*********************************************
var sampleShowState = 0;

function setDid(did) {
	sampleHide();
	d_id = did;
	sampleShow();
}
/*
function sampleToggle(did) {
	if (sampleShowState == 0) {
		sampleShow(did);
	} else {
		sampleHide();
	}
}  // sampleToggle()
*/
function sampleHide() {
	var el = document.getElementById("sample_div");
	sampleShowState = 0;
	el.style.visibility = "hidden";
	document.getElementById("question").style.visibility = "hidden";
	document.getElementById("screen_half").style.visibility = "hidden";
	document.getElementById("soft").style.visibility = "hidden";
	hide_help();
	//el.style.display = "none";
}  // sampleHide()


var showing_side = 1;
function do_key(key_num) {
	if (is_cube) {
		if (key_num <= num_sides) {
			//if (showNext == 1) {
				if (showNext == 1) current_term++;
				showNext = 0;
				//qterm.innerHTML = "<font color=#ff0000>" + terms[current_term][0] + "</font>";
				//if (is_cube)
//	var qterm = document.getElementById('question');
//					var aterm = document.getElementById('tarea');
	//var scmd = document.getElementById('sample_cmd');
	var scmd = document.getElementById('left_soft');
	//				aterm.innerHTML = "[" + side_names[showing_side] + "]\n" + terms[current_term][showing_side];
				//else
					//aterm.innerHTML = terms[current_term][showing_side];
				//sterm.innerHTML = "<font color=#ff0000>" + terms[current_term][0] + "</font><br><font color=#00aa00>" + terms[current_term][1] + "</font>";
				scmd.innerHTML = "next";
			//}
			//change_help();
			var aterm = document.getElementById('tarea');
			//aterm.innerHTML = "<font color=#0000aa>[" + side_names[key_num] + "]<br><font color=#00aa00>" + terms[current_term][key_num] + "</font>";
			aterm.innerHTML = "[" + side_names[key_num] + "]\n" + terms[current_term-1][key_num];
			showing_side = key_num;
		}
	}
}


function sampleShow(/* did */) {
	var el = document.getElementById("sample_div");
	sampleShowState = 1;		
	//showNext = 0;  // reset flashcard state
	//current_term = 0;  // reset flashcard number
	el.style.visibility = "visible";
	document.getElementById("question").style.visibility = "visible";
	document.getElementById("screen_half").style.visibility = "visible";
	document.getElementById("soft").style.visibility = "visible";
	//el.style.display = "block";
	
//	if (is_cube) {
		/*
		var num_pad_str = "";
		for (var ii=1; ii<=num_sides; ii++) {
			//num_pad_str += "<span id=" + ii + "_key onclick='alert(" + ii + ")'>" + ii + "</span> ";
			num_pad_str += "<a border=0 onMouseDown='javascript:do_key(" + ii + ")'><img src='../images/blue_phone/" + ii + ".gif'></a>";
			//num_pad_str += ii; //"<span id=" + ii + "_key" onclick=\"alert('hoho')\">" + ii + "</span> ";
		}
		document.getElementById("num_pad").innerHTML = num_pad_str;
		*/
		//document.getElementById("num_pad").style.visibility = "visible";
	//} else {
		//document.getElementById("num_pad").style.visibility = "hidden";
	//}
	
	show_help();
	
	if (d_id != last_d_id) {
		getSampleData(d_id);
		last_d_id = d_id;
	}
}  // sampleShow()

function sampleFill(did) {

	showing_side = 1;	// reset cubes to side 1 (also cards but that only has one side)
	var el = document.getElementById("sample_div");
	var el2 = document.getElementById("card_help");
	var el3 = document.getElementById("cube_help");
	var caller = document.getElementById("sample_" + did);
	var cx = findPosX(caller);
	var cy = findPosY(caller);
	/*
	el.style.backgroundColor = '#777777';
	el.style.bgColor ='#777777';
	el.style.background = '#777777';
	*/
	el.style.left = cx + (caller.offsetWidth / 2);
	el.style.top = cy - 50; 
	el2.style.left = cx + (caller.offsetWidth / 2);
	el2.style.top = cy - 50 + 227 + 5; 
	el3.style.left = cx + (caller.offsetWidth / 2);
	el3.style.top = cy - 50 + 227 + 30; 

	/*
	for (var ii=0; ii<10; ii+=2) {
		terms[ii] = "<font color=#ff0000>" + terms[0] + "</font>";
		terms[ii+1] = terms[ii] + "<br><font color=#00cc00>" + terms[ii+1] + "</font>";
	}
	*/
	showNext = 1;
	current_term = 0;	
	//var sel = document.getElementById("sample_content");
	var sel = document.getElementById("question");
	var aterm = document.getElementById('tarea');
	//sel.innerHTML = "<span id=sample_term>" + terms[current_term] + "</span>";
	//sel.innerHTML = terms[current_term][0];
	sel.innerHTML = "<tt><font color=#ff0000>" + terms[current_term][0] + "</font></tt>";
	//sel.innerHTML = "<font color=#ff0000>" + terms[current_term][0] + "</font>";
	if (!no_content) {
		//sel = document.getElementById("sample_cmd_outer");
		//sel.innerHTML = "<a href='javascript:ss()'><div id=sample_cmd>show</div></a>";
		sel = document.getElementById("left_soft").innerHTML = "Show";
		aterm.innerHTML = "";
	}
	
}

function ss() { 
	//var sterm = document.getElementById('sample_term');
	//var sterm = document.getElementById('sample_content');
	change_help();
	var qterm = document.getElementById('question');
	var aterm = document.getElementById('tarea');
	//var scmd = document.getElementById('sample_cmd');
	var scmd = document.getElementById('left_soft');
	if (current_term >= 5) {
		//qterm.innerHTML = "<p><center><font color=#ff0000><em>Done!</em><br>(<a href='javascript:ss()'>reset</a> to go again)</font></center>";
		qterm.innerHTML = "<p><center><font color=#ff0000><em>Done!</em></font></center>";
		aterm.innerHTML = "Reset to go again";
		scmd.innerHTML = "reset";
		current_term = 0;
		showNext = 0;
	} else {
		if (showNext==0) {
			showNext = 1;
			qterm.innerHTML = "<tt><font color=#ff0000>" + terms[current_term][0] + "</font></tt>";
			//qterm.innerHTML = "<pre><font color=#ff0000>" + terms[current_term][0] + "</font></pre>";
			//qterm.innerHTML = "<pre>" + terms[current_term][0] + "</pre>";
			aterm.innerHTML = "";
			scmd.innerHTML = "show";
		} else {
			showNext = 0;
			//qterm.innerHTML = "<font color=#ff0000>" + terms[current_term][0] + "</font>";
			if (is_cube)
				aterm.innerHTML = "[" + side_names[showing_side] + "]\n" + terms[current_term][showing_side];
			else
				aterm.innerHTML = terms[current_term][showing_side];
			//sterm.innerHTML = "<font color=#ff0000>" + terms[current_term][0] + "</font><br><font color=#00aa00>" + terms[current_term][1] + "</font>";
			scmd.innerHTML = "next";
			current_term++;
		}
	}
}

function show_help() {
	document.getElementById("card_help").style.visibility = "visible";
}

function change_help() {	// changes to cube help if necessary
	if (is_cube) {
		document.getElementById("card_help").style.visibility = "hidden";
		document.getElementById("cube_help").style.visibility = "visible";
	}
}

function hide_help() {
	document.getElementById("cube_help").style.visibility = "hidden";
	document.getElementById("card_help").style.visibility = "hidden";
}

function scroll_down() {
	change_help();
	var screen = document.getElementById('tarea');
	screen.scrollTop += 10;
}

function scroll_up() {
	change_help();
	var screen = document.getElementById('tarea');
	screen.scrollTop -= 10;
}

//*********************************************
//*********************************************
var pooShow = 0;
function pooShow() {
	var el = document.getElementById(poo);
	el.style.visibility = "visible";
	pooShow = 1;
}
	
function pooToggle(poo, butt) {
	var el = document.getElementById(poo);
//	if (el.style) { el = el.style; }
	var caller = document.getElementById(butt);
	//if (caller.style) { caller = caller.style; }
	//alert("1 caller is " + caller + "  [" + el.left + ", " + el.top + "] ["+ caller.offsetLeft + " + " + caller.offsetWidth + ", " + caller.offsetTop + "]");
	var cx = findPosX(caller);
	var cy = findPosY(caller);
	
	el.style.backgroundColor = '#0000ff';
	el.style.bgColor ='#ff0000';
	el.style.background = '#00aa00';
	//el.style.left = caller.offsetLeft + caller.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.offsetLeft + caller.offsetWidth;
	//el.style.top = caller.offsetTop + caller.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.offsetTop;
	el.style.left = cx + caller.offsetWidth;
	el.style.top = cy; //caller.y;
	el.innerHTML = "caller=[" + cx + ", " + cy + "], el.style=[" + el.style.left + ", " + el.style.top + "]";
	if (pooShow == 0) {
		pooShow = 1;		
		el.style.visibility = "visible";
	} else {
		pooShow = 0;
		el.style.visibility = "hidden";
	}
}  // pooToggle()


//****************************************
// Get Confirmation
//****************************************
function confirm_show(did, user, key) {
	var el = document.getElementById("confirm_box");
	var caller = document.getElementById("get_deck" + did);
	var cx = findPosX(caller);
	var cy = findPosY(caller);
	el.style.left = cx + (caller.offsetWidth / 2);
	el.style.top = cy - 50; 
	confirm_did = did;
	confirm_user = user;
	confirm_key = key;
	document.getElementById("confirm_box").style.visibility = "visible";
}

function confirm_get() {
	get(confirm_did, confirm_user, confirm_key);
}

function confirm_hide() {
	document.getElementById("confirm_box").style.visibility = "hidden";
}

function quiz_get(did, user, key) {
	get(did, user, key);
	document.getElementById('quiz_' + did).innerHTML = "&nbsp;<b> Got it!</b>";
}

function school_return_show(did, user, key) {
	var el = document.getElementById("school_return_box");
	var caller = document.getElementById("school_deck_" + did);
	var cx = findPosX(caller);
	var cy = findPosY(caller);
	el.style.left = cx + (caller.offsetWidth / 2);
	el.style.top = cy - 50; 
	confirm_did = did;
	confirm_user = user;
	confirm_key = key;
	el.style.visibility = "visible";
}

function school_return_get() {
	var reason = document.getElementById("return_reason").value;
	school_return_deck(confirm_did, confirm_user, confirm_key, reason);
}

function school_return_hide() {
	document.getElementById("school_return_box").style.visibility = "hidden";
}


function return_show(did, user, key) {
	var el = document.getElementById("return_box");
	var caller = document.getElementById("get_deck" + did);
	var cx = findPosX(caller);
	var cy = findPosY(caller);
	el.style.left = cx + (caller.offsetWidth / 2);
	el.style.top = cy - 50; 
	confirm_did = did;
	confirm_user = user;
	confirm_key = key;
	el.style.visibility = "visible";
}

function return_get() {
	var reason = document.getElementById("return_reason").value;
	return_deck(confirm_did, confirm_user, confirm_key, reason);
}

function return_hide() {
	document.getElementById("return_box").style.visibility = "hidden";
}

function need_dots_hide() {
	document.getElementById("need_dots_box").style.visibility = "hidden";
}

function need_dots_show(did, x) {
	var el = document.getElementById("need_dots_box");
	var caller = document.getElementById("get_deck" + did);
	var needed = document.getElementById("need_dots_amt");
	needed.innerHTML = x + " dot" + (x==1?"":"s") + "<br>";
	var cx = findPosX(caller);
	var cy = findPosY(caller);
	el.style.left = cx + (caller.offsetWidth / 2);
	el.style.top = cy - 50; 
	el.style.visibility = "visible";
}


function school_show(did, user, key, price) {
	if (price == 0) {
		get(did, user, key);
	} else {
		var el = document.getElementById("school_confirm_box");
		var caller = document.getElementById("school_deck_" + did);
		var cx = findPosX(caller);
		var cy = findPosY(caller);
		el.style.left = cx + (caller.offsetWidth / 2);
		el.style.top = cy - 50; 
		confirm_did = did;
		confirm_user = user;
		confirm_key = key;
		document.getElementById("school_confirm_box").style.visibility = "visible";
	}
}

function school_confirm_get() {
	get(confirm_did, confirm_user, confirm_key);
}

function school_confirm_hide() {
	document.getElementById("school_confirm_box").style.visibility = "hidden";
}


