// Set zIndex property
var zOrder = 100
function setZIndex(obj) {
	zOrder = zOrder + 10
	obj.zIndex = zOrder
	return true
}

// Position an object at a specific pixel coordinate
features='resizable=0,scrollbars=0,status=0,location=0,menubar=0,toolbar=0'

function shiftTo(obj, x, y) {
	if (is.nav && !is.ns6) { //window.status=x
		// set x boundry:
		if (x > 0) {
			obj.left = x 
		}
		// set y boundry:
		if (y > 0) {
			obj.top = y 
		}
	}
	else if (is.ns6) {
		document.getElementById(obj).style.left = x
		document.getElementById(obj).style.top = y
	}
	else {
		// detach to left: //if (obj.pixelLeft < -60) { detachwin('wwdo') } // else {}
		// set x boundry:
		if (x > 0) {
			obj.pixelLeft = x-22 // offset for ie/mac ? check on pc
		}
		// set y boundry:
		if (y > 0) {
			obj.pixelTop = y // offset for ie/mac ? check on pc
		}
		//else {
		//	obj.pixelTop = 182
		//}
	}
}
// //
function detachwin(win) {
	if (win=="wwdo") {
		if (is.nav && !is.ns6) {document.releaseEvents(Event.MOUSEDOWN | Event.MOUSEMOVE | Event.MOUSEUP)}
		release();
		wwdo.blur();
		window.open('images/win_whatwedo.gif','wwdoPop','width=210,height=190,'+features);
		obj.pixelTop = 247;	obj.pixelLeft = 556;
	}
}

// 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
//we have to go through all the layers to see if the element is being clicked in navigator

function setSelectedElem(evt) {
	if (is.nav && !is.ns6) {
		var clickX = evt.pageX
		var clickY = evt.pageY
		var testObj
		for (var i = document.layers.length - 1; i >= 0; i--) { // document.layers[0].
			testObj = document.layers[i] // document.layers[0].
			if ((clickX > testObj.left) && (clickX < testObj.left + testObj.clip.width) && (clickY > testObj.top) && (clickY < testObj.top + testObj.clip.height)) { 
			     //alert(document.layers[0].document.layers[i].name);
				selectedObj = testObj
				if (selectedObj) { //alert(selectedObj.name);
					setZIndex(selectedObj)
					return
				}
			}
		}
	}
	else if (is.ns6) {
		selectedObj = "winmove";
		return
	}

	else {
		var imgObj = window.event.srcElement
		if (imgObj.src) { //alert(imgObj.parentElement.name);
			//selectedObj = imgObj.parentElement.style // if on div tag
			selectedObj = imgObj.parentElement.parentElement.style; // if on image
			//selectedObj = imgObj.parentElement.parentElement.parentElement.parentElement.parentElement.style
			setZIndex(selectedObj);
			return;
		}
		else {
			selectedObj = null;
			return;
		}
	}
	return
}

// Drag an element
function dragIt(evt) {
	if (selectedObj) {
		if (is.nav && !is.ns6) {
 			shiftTo(selectedObj, (evt.pageX - offsetX), (evt.pageY - offsetY))
		} 
		else if (is.ns6) {
			shiftTo(selectedObj, (evt.pageX - offsetX), (evt.pageY - offsetY))
			return
		} 
		else {
			shiftTo(selectedObj, (window.event.clientX - offsetX), (window.event.clientY - offsetY))
			return false
		}
	}
}

// Turn selected element on
function engage(evt) {
	setSelectedElem(evt)
	if (selectedObj) {
		if (is.nav && !is.ns6) {
			offsetX = evt.pageX - selectedObj.left
			offsetY = evt.pageY - selectedObj.top
		}
		else if (is.ns6) {
			offsetX = evt.pageX - parseInt(document.getElementById("winmove").style.left)
			offsetY = evt.pageY - parseInt(document.getElementById("winmove").style.top)
		}
		else {
			offsetX = window.event.offsetX
			offsetY = window.event.offsetY
		}
	}

	return false
}

// Turn selected element off

function release(evt) {
	if (selectedObj) {
		selectedObj.zIndex = (zOrder-1)
		selectedObj = null

		document.onmousedown = null
		document.onmousemove = null
		document.onmouseup = null
	}
}

// Set event capture for Navigator

function setNSEventCapture() {
	if (is.nav) {
		document.captureEvents(Event.MOUSEDOWN | Event.MOUSEMOVE | Event.MOUSEUP)
	}
}

// Assign event handlers used by both Navigator and IE
function init() {
	if (is.nav) {
		setNSEventCapture()
	}
//
	if (is.ns6) {
		var winmoveObj
		winmoveObj = document.getElementById("winmove");
		winmoveObj.addEventListener("mousedown", engage, true)
		winmoveObj.addEventListener("mousemove", dragIt, true)
		winmoveObj.addEventListener("mouseup", release, true)
	}
	else {
		document.onmousedown = engage;
		document.onmousemove = dragIt;
		document.onmouseup = release;
	}
}
              
function endDrag() {
	if (is.nav && !is.ns6) {
		document.releaseEvents(Event.MOUSEDOWN | Event.MOUSEMOVE | Event.MOUSEUP)
	}
}
// ######################
winpos=1;
main=0;
function winshade(w) { //alert(w);
	if (w=='wwdo')  { var xW=229; var yC=12; var yO=208; main=1 }	
	if (w=='caseS' || w=='latest') { var xW=117; var yC=13; var yO=60; main=1 }
	if (w=='historyW') { var xW=503; var yC=13; var yO=240 }
	if (w=='teamW') { var xW=503; var yC=13; var yO=460 }
	if (w=='processW') { var xW=356; var yC=13; var yO=395 }
	if (w=='feature1W' || w=='feature2W') { var xW=285; var yC=13; var yO=110 }
	if (w=='feature3W' || w=='case2W') { var xW=285; var yC=13; var yO=140 }
	if (w=='experienceW') { var xW=285; var yC=13; var yO=840 }
	if (w=='contact1W') { var xW=285; var yC=13; var yO=340 }

	if (winpos==1) { winpos=0;
		(is.ns4)? parent.document[w].clip.bottom=yC : eval(w).style.clip='rect(0,'+xW+','+yC+',0)'
		if (is.ie&&main) { if(is.ie){wwdoWin.blur();} }
	}
	else { winpos=1;
		(is.ns4)? parent.document[w].clip.bottom=yO : eval(w).style.clip='rect(0,'+xW+','+yO+',0)'
		if (is.ie&&main) { if(is.ie){wwdoWin.blur();} }
		//init()
		//endDrag()
	}	
}