		var activeModal = null;
		var modalBacker = null;
		var closeButton = null;
		var modalOnClose = null;	// Event handling
		
		function showModal(name) {
			var dialogItem = document.getElementById(name);
			dialogItem.style.display="block";
			// Get width and height, please!
			var w= dialogItem.style.pixelWidth;
			var h= dialogItem.style.pixelHeight;
			newleft = (document.body.clientWidth - w)/2;
			newtop = document.documentElement.scrollTop + 50;
			dialogItem.style.posTop = newtop;
			dialogItem.style.posLeft = newleft;
			
			
			activeModal = name;
			showModalBack();
			
			// Add a Close button
			if (!closeButton) {
				closeButton = document.createElement("img");
				closeButton.src="/f/close.png";
				closeButton.style.border = "none";
				closeButton.onclick = function() { hideModal();return false; }
				closeButton.style.position = "absolute";
			}
			closeButton.style.posLeft = newleft + dialogItem.style.posWidth - 60;
			closeButton.style.posTop = newtop - 20;
			closeButton.style.display = "block";
			document.body.appendChild(closeButton);
		}
		
		function hideModal() {
			document.getElementById(activeModal).style.display="none";
			closeButton.style.display = "none";
			hideModalBack();
			if (modalOnClose) modalOnClose();
		}
		
		function showModalBack() {
			if (!modalBacker) {
				modalBacker = document.createElement('div');
				modalBacker.style.position = 'absolute';
				modalBacker.style.width = "100%";
				modalBacker.style.left = "0px";
				modalBacker.style.top = "0px";
				
				modalBacker.style.filter = "alpha(opacity=60)";
				modalBacker.style.opacity = .6;
				modalBacker.style.backgroundColor = "#000000";
				modalBacker.innerText = "snow";
				document.body.appendChild(modalBacker);
			}

			var totalHeight = document.body.offsetHeight;
			modalBacker.style.posHeight = totalHeight+30;
			modalBacker.style.display = "block";
		}

		function hideModalBack() {
			modalBacker.style.display = "none";
		}
		
