var now = new Date();
var isNav, isIE
var adleft = 165;
var adtop = 115;
var timeMe = 0;
var sec = 0;
var min = 0;
var hrs = 0;
var timerID = null ;
var timerRunning = false ;
var totalMils = 0;
var begin = new Date();

// ** Beginning of Clock

function stopclock() {
	if (timerRunning) {
		clearTimeout(timerID);
	timerRunning = false ;
	}
}
function startclock() {
	stopclock() ;
	clicker() ;
}
function clicker() {
	sec = sec + 1;
	if ( sec > 59 ){
		sec = 0;
		min = min + 1;
	}
	if ( min > 59 ){
		min = 0;
		hrs = hrs + 1;
	}
	timerID = setTimeout("clicker()", 1000);
	timerRunning = true;
// ** Display Clock
	sec2 = sec.toString();
	min2 = min.toString();
	hrs2 = hrs.toString();
	if ( sec2.length == 1 ) sec2 = "0" + sec2;
	if ( min2.length == 1 ) min2 = "0" + min2;
	if ( hrs2.length == 1 ) hrs2 = "0" + hrs2;

	form1.thetime.value = hrs2 + ":" + min2 + ":" + sec2;
//	form1.stoptime.value = hrs2 + ":" + min2 + ":" + sec2;
}
function resettime(){
	sec = 0;
	min = 0;
	hrs = 0;
	form1.thetime.value = "00:00:00";
	timeMe = 0;
	clearTimeout(timerID);
	timerRunning = false ;
//	startclock()
}
// ** End of Clock

if (parseInt(navigator.appVersion) >= 4) {
	if (navigator.appName == "Netscape") {
		isNav = true
		alert("We are sorry to report that the Puzzle Pieces pages do not function for all versions of Netscape browsers. If you have difficulties you may want to return using Microsoft Internet Explorer, version 4.0 or later.\n\nThank you,\n\nMrKent.")
	} else {
		isIE = true
	}
}
function validatethis(){
	if(form1.thisemail.value !=""){
		if (form1.thisemail.value.indexOf("@",0) == -1 || form1.thisemail.value.indexOf(".",0) == -1){
		alert("Please Enter A Valid E-mail Address.");
		return false;
		}
	}else{
		alert("Please Enter An E-mail Address Before Clicking \"Send.\"");
		return false;
	}
}

// Set zIndex property
function setZIndex(obj, zOrder) {
	obj.zIndex = zOrder
}
// Set element background color (only works dynamically in IE)
function setBorderColor(obj, color) {
	obj.borderColor = color
}
// Position an object at a specific pixel coordinate
function shiftTo(obj, x, y) {
	if (isNav) {
		obj.moveTo(x,y)
	} else {
		obj.pixelLeft = x
		obj.pixelTop = y
	}
}

// Global holds reference to selected element
var selectedObj
// Globals hold location of click relative to element
var offsetX, offsetY

// Find out which element has been clicked on
function setSelectedElem(evt) {
	if (isNav) {
		var clickX = evt.pageX
		var clickY = evt.pageY
		var testObj
		for (var i = document.layers.length - 1; i >= 0; i--) {
			testObj = document.layers[i]
			if ((clickX > testObj.left) && 
				(clickX < testObj.left + testObj.clip.width) && 
				(clickY > testObj.top) && 
				(clickY < testObj.top + testObj.clip.height)) {
				selectedObj = testObj
				if (selectedObj) {
					setBorderColor(selectedObj, "red")
					setZIndex(selectedObj, 99)
					return
				}
			}
		}
	} else {
		var imgObj = window.event.srcElement
		selectedObj = imgObj.parentElement.style
		if (selectedObj) {
			setBorderColor(selectedObj, "red")
			setZIndex(selectedObj,99)
			return
		}
	}
	selectedObj = null
	return
}
// Drag an element
function dragIt(evt) {
	if (selectedObj) {
		if (isNav) {

			selectedObj.borderRight = "solid red 1px";
			selectedObj.borderBottom = "solid red 1px";
			shiftTo(selectedObj, (evt.pageX - offsetX), (evt.pageY - offsetY))
		} else {

			selectedObj.borderRight = "solid red 1px";
			selectedObj.borderBottom = "solid red 1px";
			shiftTo(selectedObj, (window.event.clientX - offsetX), 
			(window.event.clientY - offsetY))
			// prevent further system response to dragging
			return false
		}
	}
}
// Turn selected element on
function engage(evt) {
	if ( timeMe == 0 ) startclock();
	setSelectedElem(evt)
			selectedObj.borderright = "solid red 1px";
			selectedObj.borderbottom = "solid red 1px";
	if (selectedObj) {
		if (isNav) {
			offsetX = evt.pageX - selectedObj.left
			offsetY = evt.pageY - selectedObj.top
		} else {
			selectedObj.borderright = "solid red 1px";
			selectedObj.borderbottom = "solid red 1px";
			offsetX = window.event.offsetX + adleft;
			offsetY = window.event.offsetY;
		}
	}
	return false
}
// Turn selected element off
function release(evt) {
	if (selectedObj) {
		setZIndex(selectedObj, 3)
		setBorderColor(selectedObj, "black")
		selectedObj.border = 0;
		selectedObj = null
	}
}
// Set event capture for Netscape
function setNSEventCapture() {
	if (isNav) {
		document.captureEvents(Event.MOUSEDOWN | Event.MOUSEMOVE | Event.MOUSEUP)
	}
}

function init() {
	if (isNav) {
		setNSEventCapture()
	}
	document.onmousedown = engage
	document.onmousemove = dragIt
	document.onmouseup = release
}

