function showRecipe(which,status){

selection = document.getElementById(which)
theFrame = document.getElementById("recContentWindow")

	// Deselect the anchor element
	selection.blur()
	
	// Load the selected page in the iFrame
	if(status == "public") { newURL = "recipes/" + which + "/" + which + ".html" }
	else if(status == "private") { newURL = "recipes/private/" + which + "/" + which + ".html" }
	theFrame.src = newURL
	
	// Highlight the selected recipe
		// Find the parent cell
		while(selection.tagName != "TD"){ selection = selection.parentNode }

		// Deselect the selected cell.
		// First 2 lines get the first cell in the row by walking the DOM.
		parentTR = selection.parentNode
		thisTD = parentTR.firstChild
		while(thisTD.nodeType != 1){ thisTD = thisTD.nextSibling }  // Firefox whitespace fix (make sure we have an element, not a text node).
		
			// Loop until we either find a selected cell, or we go through them all without finding a match.  The test for
			// the nextSibling ensures that we stop at the end of the table row without an error.
			//alert(thisTD.className.substr("Selected"))
			//alert(eval(thisTD.className.search("Selected")))
			/* while((thisTD.className.search("Selected") == -1) && (thisTD.nextSibling)){ */   // Doesn't work in Firefox, even though an alert will show that it should work.
			while((thisTD.className != "recPicSelected") && (thisTD.className != "recPicRestrictedSelected") && (thisTD.nextSibling)){
				thisTD = thisTD.nextSibling
				while((thisTD.nodeType != 1) && (thisTD.nextSibling)){ thisTD = thisTD.nextSibling }	// Same Firefox fix, from above.
			}
			
		// Now if we've found the selected cell, deselect it.
		if(thisTD.nodeType ==1){ 
			rootclass=thisTD.className.split("Selected")
			thisTD.className = rootclass[0]
			/* The trick: you need to assign thisTD.className to 'thisTD.className - Selected' */
			
			// Find & deselect the anchor
			thisA = thisTD.firstChild
			while(thisA.nodeType != 1){ thisA = thisA.nextSibling }
			rootclass=thisA.className.split("Selected")
			thisA.className = rootclass[0]
		}
		
		// Highlight the new selection (if it's not already selected.)
		//selection.className = "recPicSelected"	- old code DELETE ME
		if(selection.className.search("Selected") == -1) {
			selection.className = eval("\"" + selection.className + "Selected\"")
		}

		
			// Find & highlight the new anchor
			thisA = selection.firstChild
			while(thisA.nodeType != 1) { thisA = thisA.nextSibling }
			//thisA.className = "recLinkSelected"      - old code DELETE ME
			if(thisA.className.search("Selected") == -1){
				thisA.className = eval("\"" + thisA.className + "Selected\"")
			}


} // End function showRecipe


/* ******************** This function to be initiated by the document in the iFrame ******************** */
function updateTitleBar(){
sWinTitle = document.getElementById("winTitle")
sWinSubtitle = document.getElementById("winSubtitle")

	theTitleDiv = recContentWindow.document.getElementById("title") /* Access the child's element from the parent's Javascript */
	theBylineDiv = recContentWindow.document.getElementById("byline") /* Ditto */
	if(theTitleDiv){ theTitle = theTitleDiv.firstChild.nodeValue }
	else{ theTitle = "A Recipe" }
	
	if(theBylineDiv){ theByline = theBylineDiv.firstChild.nodeValue }
	else{ theByline = "By: Anonymous" }
		
		// Remove any existing text nodes
		if(sWinTitle.hasChildNodes()){ sWinTitle.removeChild(sWinTitle.lastChild) }
		if(sWinSubtitle.hasChildNodes()){ sWinSubtitle.removeChild(sWinSubtitle.lastChild) }

		// Add new text nodes
		newTitle = document.createTextNode(theTitle)
		sWinTitle.appendChild(newTitle)
			newSubtitle = document.createTextNode(theByline)
			sWinSubtitle.appendChild(newSubtitle)
} // End function updateTitleBar