function retrieveXML() {
	
	/* go ahead and close filter list everytime */
	hideFilter();
	
	var xmlhttp=false;
	
	// JScript gives us Conditional compilation, we can cope with old IE versions.
	// and security blocked creation of the objects.
	 try {
	  xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	 } catch (e) {
	  try {
	   xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	  } catch (E) {
	   xmlhttp = false;
	  }
	 }
	if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
		try {
			xmlhttp = new XMLHttpRequest();
		} catch (e) {
			xmlhttp=false;
		}
	}
	if (!xmlhttp && window.createRequest) {
		try {
			xmlhttp = window.createRequest();
		} catch (e) {
			xmlhttp=false;
		}
	}
	test = 1;
   
   	//Div that holds Ajax return values

   	
    if (xmlhttp) {
		str1 = "";
		try {
		    var_hiddenrowId = document.getElementById("hiddenRowId");
			
		    if (var_hiddenrowId)
		    {
		        //alert("hidden row id: " + var_hiddenrowId);
		
		        if (var_hiddenrowId.value)
		        {
		
		            var_hiddenrowIdoutput = var_hiddenrowId.value
		            var_hiddenrowId.value = "";
		        }  else {
		            var_hiddenrowIdoutput = 0;
		        }
		    } else {
		            var_hiddenrowIdoutput = 0;
		    }
		    str1 = "?hiddenRowId=" + var_hiddenrowIdoutput;
		} catch(e) {
			logMyErrors(2,e)
	    }
	    try {
			var myindex  = document.getElementById("wordcategory1").selectedIndex;
			if(typeof myindex!='undefined' && myindex > 0) {
				var var_groupcategory = document.getElementById("wordcategory1").options[myindex].value;
				str1 = str1 + "&groupcategory=" + var_groupcategory;
			}
		} catch(e) {
			logMyErrors(4,e)
		}
		try {
			var myindex2  = document.getElementById("wordtype1").selectedIndex
			if(typeof myindex2!='undefined' && myindex2 > 0) {
				var var_grouptype = document.getElementById("wordtype1").options[myindex2].value;
				str1 = str1 + "&grouptype=" + var_grouptype;
			}
		} catch(e) {
			logMyErrors(5,e)
		}
		try {
			if (document.getElementById("boxRequestExample").value == "1") str1 = str1 + "&RE=1";
		} catch(e) {
			logMyErrors(6,e)
		}
		try {
			var var_wordsource = document.getElementById("hiddenTblSource").value;
			str1 = str1 + "&wordsource=" + var_wordsource;
			if (var_wordsource == "saved") {
	    	var listid = document.getElementById('hiddenListSource').value
		    	str1 = str1 + "&listid=" + listid;
		    	//alert("listid: " + listid);
		    }
		} catch(e) {
			logMyErrors(7,e)
		}
		
	    try {
	    	//var_table = document.getElementById("hiddenTblSource").value;
	    	//str1 = str1 + "&table=" + var_table;
	    	var_table = document.getElementById("hiddenTableLanguage").value;
	    	str1 = str1 + "&table=" + var_table;
	    } catch(e) {
	    	logMyErrors(8,e)
	    }
	    
	    try {
	    	//var_table = document.getElementById("hiddenTblSource").value;
	    	//str1 = str1 + "&table=" + var_table;
	    	var_GameSet = document.getElementById("hiddenGameSet").value;
	    	str1 = str1 + "&gameset=" + var_GameSet;
	    } catch(e) {
	    	logMyErrors(8,e)
	    }
	    try {
	    	var_chkbxExamples = document.getElementById("chkbxExamples");
	    	str1 = str1 + "&chkbxExamples=" + var_chkbxExamples.checked;
	    } catch(e) {
	    	logMyErrors(9,e)
	    }
	    try {
	    	var_chkbxPictures = document.getElementById("chkbxPictures");
	    	str1 = str1 + "&chkbxPictures=" + var_chkbxPictures.checked;
	    } catch(e) {
	    	logMyErrors(10,e)
	    }
	    try {
	    	var_chbxSort = document.getElementById("chbxSort");
	    	str1 = str1 + "&chbxSort=" + var_chbxSort.checked;
	    } catch(e) {
	    	logMyErrors(11,e)
	    }
	    try {
	    	var_showans = document.getElementById("showans");
	    	str1 = str1 + "&showans=" + var_showans.checked;
	    } catch(e) {
	    	logMyErrors(12,e)
	    }	
	    try {
	    	var_btnSave = document.getElementById("btnSave");
	    	str1 = str1 + "&btnSave=" + var_btnSave.value;
	    } catch(e) {
	    	logMyErrors(13,e)
	    }
	    try {
	    	var_chklevel1 = document.getElementById("2chkLevel1");
	    	var_chklevel2 = document.getElementById("2chkLevel2");
	    	var_chklevel3 = document.getElementById("2chkLevel3");
	    	var_chklevel4 = document.getElementById("2chkLevel4");
	    
	    	str1 = str1 + "&chklevel1=" + var_chklevel1.checked;
		    str1 = str1 + "&chklevel2=" + var_chklevel2.checked;
		    str1 = str1 + "&chklevel3=" + var_chklevel3.checked;
		    str1 = str1 + "&chklevel4=" + var_chklevel4.checked;

	    } catch(e) {
	    	logMyErrors(14,e)
	    }
	    try {
	    	var_chkbxStars  = document.getElementById("chkbxStars");
	    	str1 = str1 + "&chkbxStars=" + var_chkbxStars.checked;
	    } catch(e) {
	    	logMyErrors(15,e)
	    }
	    try {
	    	var_chkbxEngSound  = document.getElementById("chkbxEngSound");
	    	str1 = str1 + "&chkbxEngSound=" + var_chkbxEngSound.checked;
	    	
	    } catch(e) {
	    	logMyErrors(16,e)
	    }
	    try {
	    	var_chkbxPortSound  = document.getElementById("chkbxPortSound");
	    	str1 = str1 + "&chkbxPortSound=" + var_chkbxPortSound.checked;
	    } catch(e) {
	    	logMyErrors(17,e)
	    }
	    try {
	    	var_btnfromhistory = document.getElementById("btnfromhistory");
	    	if (var_btnfromhistory.value == 'yes') {
		        str1 = str1 + "&fromhistory=yes";
		        var_btnfromhistory.value = '';
		    }
	    } catch(e) {
	    	logMyErrors(18,e)
	    }
	    try {
	    	var_btnHideList =  document.getElementById("btnHideList");
	    	str1 = str1 + "&hidelist=" + var_btnHideList.value;
	    } catch(e) {
	    	logMyErrors(19,e)
	    }
	    try {
	    	var_btnHideFont = document.getElementById("hiddenfontsize").value;
	    	str1 = str1 + "&hidfont=" + var_btnHideFont;
	    } catch(e) {
	    	logMyErrors(20,e)
	    }
	    try {
	    	var_ClearList  = document.getElementById("btnClearList");
		    if (var_ClearList.value == 'yes') {
		        str1 = str1 + "&clearlist=yes";
		        var_ClearList.value = '';
		    }
	    } catch(e) {
	    	logMyErrors(21,e)
	    }
	    try {
	    	if (test == 1) {
	    	    var_directinput = document.getElementById("hiddenDirectInput");
		        str1 = str1 + "&rowid=" + var_directinput.value;
		        var_directinput.value = "";
		    }
	    } catch(e) {
	    	logMyErrors(22,e)
	    }
	    try {
	    	
	    } catch(e) {
	    	logMyErrors(23,e)
	    }
	    
	    
	    //alert(var_hiddenrowIdoutput);
	    //alert("grouptype" + var_grouptype + " - Groupcategory:" + var_groupcategory + " - table: " + var_table.value );
	    //alert(var_chkbxExamples.checked + " + " + var_chkbxPictures.checked + " + " + var_chbxSort.checked);
	    //alert(var_showans.checked + " + " + var_btnSave.value);
	    test = test + 1;
	    //alert(str1);
	    try {
		    url = "flashcard4.asp" + str1;
		    varform = document.getElementById("flashcardform");
		    varform.action = url;
		    varform.submit();
		    
	    } catch(e) {
	    	logMyErrors(24,e)
	    	ajaxTempDiv.innerHTML = "<font size=3><strong> There was an error loading the functions of the page.<BR>" +
			"The flashcard page does not seem to work properly for your browser.  <BR><BR>" +
			"Please contact the website about this problem.  Sorry for the inconvenience.";
	    	
	    }
		flashcardPageHeight();
	} else {
		ajaxTempDiv.innerHTML = "<font size=3><strong> There was an error loading the functions of the page.<BR>" +
			"The flashcard page does not seem to work properly for your browser.  <BR><BR>" +
			"Please contact the website about this problem.  Sorry for the inconvenience.";
	}

}

function logMyErrors(varnum, e) {
	alert(varnum + ". Error message: " + e);
}
function gotoEdit(rID) {
    varSRC = "addword.asp?rowid=" + rID;
    document.getElementById("flipcardform").action = varSRC;
    document.getElementById("flipcardform").method = "post";
    document.getElementById("flipcardform").submit();


}

function setclearlist() {
    var_ClearList  = document.getElementById("btnClearList");
    var_ClearList.value = "yes"

}
function sethidelist(varIn) {
    var_HideList  = document.getElementById("btnHideList");
    var_HideList.value = varIn
}
function resetCategory() {
	document.getElementById("wordcategory1").options[0].selected=true;
}

function resetType() {
	document.getElementById("wordtype1").options[0].selected=true;
}

function resetTable() {
	document.getElementById("chkLevel1").checked = false;
    document.getElementById("chkLevel2").checked = false;
    document.getElementById("chkLevel3").checked = false;
    document.getElementById("chkLevel4").checked = false;
    setSource(document.getElementById("dictionary"));
}


function gotoNextCard() {
 	retrieveXML();
 	getIEFix();
}
function setCategory(cname) {
	var success = 0;
	//turnoffboxes();
	resetType();
   	varWordCategory = document.getElementById("wordcategory1");
   	
	for (var i=0; i < varWordCategory.length; i++)
   	{
   		//alert(document.getElementById('wordcategory1['+i+']').value);
   		if (varWordCategory.options[i].text == cname)
      	{
      		varWordCategory.selectedIndex = i;
      		success = 1;
      	}
   	}
   	if (success == 1) {
   		retrieveXML();
   	}
}
function setWordType(cname) {
	var success = 0;
	//turnoffboxes();
	resetCategory();
	
   	varWordType = document.getElementById('wordtype1');
   	//alert('varwordtype length: ' + varWordType.length);
   	//alert('selected index: ' + varWordType.selectedIndex);
   	
	for (var i=0; i < varWordType.length; i++)
   	{
   		//alert(i + 'value: ' + varWordType.options[i].text);
   		if (varWordType.options[i].text == cname)
      	{
      		varWordType.selectedIndex = i;
      		success = 1;
      	}
   	}
   	if (success == 1) {
   		retrieveXML();
   	}
}
function turnoffboxes() {
	document.getElementById('wordcategory1').selectedIndex = 0;
	document.getElementById('wordtype1').selectedIndex = 0;
 	document.getElementById("chkbxExamples").checked = false;
    document.getElementById("chkbxPictures").checked = false;
    document.getElementById("showans").checked = false;
    document.getElementById("chkbxEngSound").checked = false;
    document.getElementById("chbxSort").checked = false;
    document.getElementById("chkbxPortSound").checked = false;
    document.getElementById("chkLevel1").checked = false;
    document.getElementById("chkLevel2").checked = false;
    document.getElementById("chkLevel3").checked = false;
    document.getElementById("chkLevel4").checked = false;
    document.getElementById("chkbxStars").checked = false;
    document.getElementById("boxRequestExample").value = "";
    setSource(document.getElementById("dictionary"));
	hideStars();
	hideStars2();
}
function setDeluxe() {
	turnoffboxes();
 	document.getElementById("chkbxExamples").checked = true;
    document.getElementById("chkbxPictures").checked = true;
    document.getElementById("showans").checked = false;
    document.getElementById("chkbxEngSound").checked = true;
    
    document.getElementById("chbxSort").checked = false;
    document.getElementById("chkbxPortSound").checked = false;
    
    document.getElementById('wordcategory1').selectedIndex = 0;
    document.getElementById('wordtype1').selectedIndex = 0;
    
	gotoNextCard();
}
function setExample() {
	turnoffboxes();

	example1 = document.getElementById("boxRequestExample");
	example1.value = "1";
	//alert (example1.value);
	gotoNextCard();
	
}

function setSource(ObjIn) {
	xDict = document.getElementById("dictionary");
	xSave = document.getElementById("saved");
	xStar = document.getElementById("stars");
	xHid = document.getElementById("hiddenTblSource");
	//set all to negative pic
	xDict.src = "pageimages/delete.gif";
	xSave.src = "pageimages/delete.gif";
	xStar.src = "pageimages/delete.gif";
	//set choose obj to positive pic
	ObjIn.src="pageimages/accept.gif";
	//set hidden value to current source
	xHid.value = ObjIn.alt;
	//alert(xHid.value);
	if (ObjIn.alt != "stars") {
	hideStars();
	}
}

function showStars() {
	StarRating = document.getElementById("divStarRating");
	StarRating.style.visibility = "visible";
	StarRating.style.display = "block";
/*	document.getElementById("chkLevel1").checked = false;
    document.getElementById("chkLevel2").checked = false;
    document.getElementById("chkLevel3").checked = false;
	document.getElementById("chkLevel4").checked = true;
*/
}
function hideStars() {
	StarRating = document.getElementById("divStarRating");
	StarRating.style.visibility = "hidden";
	StarRating.style.display = "none";
	//resetStars();
}
function resetStars() {
/*	document.getElementById("chkLevel1").checked = false;
    document.getElementById("chkLevel2").checked = false;
    document.getElementById("chkLevel3").checked = false;
    document.getElementById("chkLevel4").checked = false;
*/
	document.getElementById("2chkLevel1").checked = false;
    document.getElementById("2chkLevel2").checked = false;
    document.getElementById("2chkLevel3").checked = false;
	document.getElementById("2chkLevel4").checked = false;

	
}
function showStars2() {
	StarRating4 = document.getElementById("divStarRating2");
	if (StarRating4.style.visibility == "hidden") {
		hideALL();
		StarRating4.style.visibility = "visible";
		StarRating4.style.display = "block";
	} else {
		hideALL();
	}
}
function hideStars2() {
	StarRating = document.getElementById("divStarRating2");
	StarRating.style.visibility = "hidden";
	StarRating.style.display = "none";
	//resetStars()
}
function showQuickLinks() {
	quicklinks = document.getElementById("divQuickLinks");
	if (quicklinks.style.visibility == "hidden") {
		hideALL();
		quicklinks.style.visibility = "visible";
		quicklinks.style.display = "block";
	} else {
		hideALL();
	}
}
function hideQuickLinks() {
	quicklinks = document.getElementById("divQuickLinks");
	quicklinks.style.visibility = "hidden";
	quicklinks.style.display = "none";	
}
function showLists() {
	StarRating = document.getElementById("divWordLists");
	StarRating.style.visibility = "visible";
	StarRating.style.display = "block";
	//document.getElementById("hiddenTblSource").value = "saved";
}
function showLists2() {
	StarRating = document.getElementById("divWordLists2");
	if (StarRating.style.visibility == "hidden") {
		hideALL();
		StarRating.style.visibility = "visible";
		StarRating.style.display = "block";
	} else {
		hideALL();
	}
	
}
function hideLists() {
	StarRating = document.getElementById("divWordLists");
	StarRating.style.visibility = "hidden";
	StarRating.style.display = "none";
}
function hideLists2() {
	StarRating = document.getElementById("divWordLists2");
	StarRating.style.visibility = "hidden";
	StarRating.style.display = "none";
	
}
function resetLists2() {
	document.getElementById('hiddenListSource').value='';
	var radioObj = document.flipcardform.chkSavedList0
	var radioLength = radioObj.length;
	for(var i = 0; i < radioLength; i++) {
		radioObj[i].checked = false;
		
	}
	document.getElementById("hiddenTblSource").value = "dictionary";
}
function hideCategory() {
	divShowCategory2 = document.getElementById("divShowCategory");
	divShowCategory2.style.visibility = "hidden";
	divShowCategory2.style.display = "none";

}
function showCategory() {
	divShowCategory2 = document.getElementById("divShowCategory");
	if (divShowCategory2.style.visibility == "hidden") {
		hideALL();
		divShowCategory2.style.visibility = "visible";
		divShowCategory2.style.display = "block";
		
	} else {
		hideALL();
	}
}

function showFilter() {
	divFilter2 = document.getElementById("divFilter");
	if (divFilter2.style.visibility == "hidden") {
		hideALL();
		divFilter2.style.visibility = "visible";
		divFilter2.style.display = "block";
		
	} else {
		hideALL();
	}
}
function hideFilter() {
/*	divFilter2 = document.getElementById("divFilter");
	divFilter2.style.visibility = "hidden";
	divFilter2.style.display = "none";
*/
}
function hideALL() {
/*	hideStars();
	hideStars2();
	hideLists();
	hideLists2();
	hideCategory();
	hideFilter();
	hideQuickLinks()
*/
}
function resetALL() {
    resetStars();    
    resetLists2();
    resetType();
    resetCategory()
    resetTable();
    document.getElementById("boxRequestExample").value = "";
    setSource(document.getElementById("dictionary"));
}
// -->
function hideoptions() {
temp3 = document.getElementById("main_navigation");
temp3.style.visibility = "hidden";
temp3.style.display = "none";

temp4 = document.getElementById("main_content");
temp4.style.float = "none";
temp4.style.padding = "0 0 0 125px";

temp5 = document.getElementById("divhideoptions");
temp5.style.visibility = "hidden";
temp5.style.display = "none";

temp6 = document.getElementById("divshowoptions");
temp6.style.visibility = "visible";
temp6.style.display = "block";
}
function showoptions() {
temp3 = document.getElementById("main_navigation");
temp3.style.visibility = "visible";
temp3.style.display = "inline";

temp4 = document.getElementById("main_content");
temp4.style.float = "left";
temp4.style.padding = "0 0 0 0px";

temp5 = document.getElementById("divshowoptions");
temp5.style.visibility = "hidden";
temp5.style.display = "none";

temp6 = document.getElementById("divhideoptions");
temp6.style.visibility = "visible";
temp6.style.display = "block";

}

function flashcardPageHeight() {
/*	xHeight = document.getElementById("tblgame2");
	mainnav = document.getElementById("main_content");
	var winW = 630, winH = 460;
	
	if (parseInt(navigator.appVersion)>3) {
	 if (navigator.appName=="Netscape") {
	  winW = window.innerWidth;
	  winH = window.innerHeight;
	 }
	 if (navigator.appName.indexOf("Microsoft")!=-1) {
	  winW = document.body.offsetWidth;
	  winH = document.body.offsetHeight;
	 }
	}
	oldmainheight = xHeight.offsetHeight;
	var newHeight;
	newHeight = winH -210;
	//alert("main_div height: " + oldmainheight + "winH: " + winH);
	if (oldmainheight  > newHeight) {
		newHeight = oldmainheight;
	}
*/	
		//yHeight = document.getElementById("ajaxflipcard");
		//yHeight.style.height = newHeight + "px";
	
	
	//yHeight = document.getElementById("tblGame");
	//zHeight = document.getElementById("tbl_framepage");
	//yHeight.style.height = newHeight + "px";
}
function setFontSizeFlashCard(varSize) {
	varCurrentFont = document.getElementById('spanAnswer').style.fontSize;
	btnSize = document.getElementById("hiddenfontsize");
	varQ = document.getElementById('spanQuestion');
	varA = document.getElementById('spanAnswer');
	varS = "";
	switch (varCurrentFont)
	{
	case (varCurrentFont = "10px"):
	  if (varSize == 'increase') {
	  	varS = "20";
	  } else {
	  	varS = "10";
	  }
	break
	case (varCurrentFont = "20px"):
	  if (varSize == 'increase') {
	  	varS = "30";
	  } else {
	  	varS = "10";
	  }
	break
	case (varCurrentFont = "30px"):
	  if (varSize == 'increase') {
	  	varS = "40";
	  } else {
	  	varS = "20";
	  }	break
	case (varCurrentFont = "40px"):
	  if (varSize == 'increase') {
	  	varS = "50";
	  } else {
	  	varS = "30";
	  }
	break
	case (varCurrentFont = "50px"):
	  if (varSize == 'increase') {
	  	varS = "60";
	  } else {
	  	varS = "40";
	  }
	break
	case (varCurrentFont = "60px"):
	  if (varSize == 'increase') {
	  	varS = "70";
	  } else {
	  	varS = "50";
	  }
	break
	case (varCurrentFont = "70px"):
	  if (varSize == 'increase') {
	  	varS = "80";
	  } else {
	  	varS = "60";
	  }
	break
	case (varCurrentFont = "80px"):
	  if (varSize == 'increase') {
	  	varS = "90";
	  } else {
	  	varS = "70";
	  }
	break
	case (varCurrentFont = "90px"):
	  if (varSize == 'increase') {
	  	varS = "100";
	  } else {
	  	varS = "80";
	  }
	break
	case (varCurrentFont = "100px"):
	  if (varSize == 'increase') {
	  	varS = "100";
	  } else {
	  	varS = "90";
	  }
	break
	default:
		varS = "30";
	  alert("There was an error setting the fontsize.  The font is being reset");
	break
	}  
	
	btnSize.value = parseInt(varS);
	document.getElementById('spanQuestion').style.fontSize= varS + 'px';
	document.getElementById('spanAnswer').style.fontSize= varS + 'px';
	
	//gotoNextCard();
	//alert(document.getElementById('spanAnswer').style.fontSize);
	
}

