/*
 * CTipop - JS/jQuery imagemap tooltipper
 * requires: jQuery 1.3.1
 * TODO: - ctipshow to left or right side according to available space or options
 */

//on page load (as soon as its ready) call JT_init

$(document).ready( function() { ct_init(); } );

function ct_init(){
	$(".prtipcms").hide();
	$(".prtip").hover( function() { $(this).addClass('prhoverbg'); }, function(eve) { $(this).removeClass('prhoverbg') } )
	.click( function(eve) {
		var dstate = $(eve.target).children(".prtipcms").css("display");
		$(".prtipcms").hide("slow");

		if (dstate == "none") {
			$(eve.target).children(".prtipcms").show("fast"); 
		}

	} ); 
}

function prctips(event) { //show cms containers
	//alert("e: " + event);

	var $target=$(event.target);
	if ($target.is("div.prtip")) {
		//toggle content
		$(target).children(".prtipcms").show("fast");
	}
}

//Helpers
function getElementWidth(objectId) {
 x = document.getElementById(objectId);
 return x.offsetWidth;
}

function getAbsoluteLeft(objectId) {
 // Get an object left position from the upper left viewport corner
 o = document.getElementById(objectId)
 oLeft = o.offsetLeft // Get left position from the parent object
 while(o.offsetParent!=null) { // Parse the parent hierarchy up to the document element
 oParent = o.offsetParent // Get parent object reference
 oLeft += oParent.offsetLeft // Add parent left position
 o = oParent
 }
 return oLeft
}

function getAbsoluteTop(objectId) {
 // Get an object top position from the upper left viewport corner
 o = document.getElementById(objectId)
 oTop = o.offsetTop // Get top position from the parent object
 while(o.offsetParent!=null) { // Parse the parent hierarchy up to the document element
 oParent = o.offsetParent // Get parent object reference
 oTop += oParent.offsetTop // Add parent top position
 o = oParent
 }
 return oTop
}

function parseQuery ( query ) {
 var Params = new Object ();
 if ( ! query ) return Params; // return empty object
 var Pairs = query.split(/[;&]/);
 for ( var i = 0; i < Pairs.length; i++ ) {
 var KeyVal = Pairs[i].split('=');
 if ( ! KeyVal || KeyVal.length != 2 ) continue;
 var key = unescape( KeyVal[0] );
 var val = unescape( KeyVal[1] );
 val = val.replace(/\+/g, ' ');
 Params[key] = val;
 }
 return Params;
}

function blockEvents(evt) {
 if(evt.target){
 evt.preventDefault();
 }else{
 evt.returnValue = false;
 }
}

