function GetTopLeft(elm)
{
	var x, y = 0;
	
	//set x to elm’s offsetLeft
	x = elm.offsetLeft;
	//set y to elm’s offsetTop
	y = elm.offsetTop;
	//set elm to its offsetParent
	elm = elm.offsetParent;

	while(elm != null)
	{
		x = parseInt(x) + parseInt(elm.offsetLeft);
		y = parseInt(y) + parseInt(elm.offsetTop);
		elm = elm.offsetParent;
	}
	
	return {Top:y, Left: x};
}


function ShowPopup(hoveritem, contentId)
{
	hp = document.getElementById("hoverpopup");
	// Set position of hover-over popup
	
	offsets = GetTopLeft(hoveritem);
	
	hp.style.top = offsets.Top + 18 + 'px';
	hp.style.left = offsets.Left + + 80 + 120 + 'px';

	hp.innerHTML = document.getElementById(contentId+'_desc').innerHTML;

	// Set popup to visible
	hp.style.display = "block";
}


function HidePopup()
{
	//overLabel = false;
	var hp = document.getElementById("hoverpopup");
	hp.style.display = "none";
	return true;
}


// Moves Price Quote Box down when page is scrolled.
function recursiveMove() {
	var fq = document.getElementById("features_quote");
	var extrOffset = document.getElementById('features_selection').offsetTop;
	
	if (window.pageYOffset > extrOffset) {
		fq.style.top = 260 + window.pageYOffset - extrOffset + 45 + "px";
	}
	else {
		fq.style.top = '260px';
	}

	setTimeout('recursiveMove()', 500);
}
addEvent(window, 'load', recursiveMove);






// Features Price Quote Calculator
var setupPrice = 575.00;
var setupPrice = 0;
var baseMemberPrice = 0;
var featurePrice = 0;
var totalPrice = 0;

var numMembers = 0;

var featurePrices = [
		['presence_wizard',			0.10],
		['deluxe_presence',			1.50],
		['teams',					0.50],
		['resume',					0.15],
		['org_calendar',			0.05],
		['erg',						0.50]
	];


function setNumberOfMembers(input) {
	numMembers = 1;

	totalPrice = 0;
	featurePrice = 0;
	setupPrice = 575; // Set up fee
	setupPrice = 0; // Set up fee
	baseMemberPrice = 2.5 * numMembers; // Base price per member.
	
	for(i=0; i<featurePrices.length; i++) {
		if ( document.getElementById(featurePrices[i][0]).checked == true )
			featurePrice += featurePrices[i][1] * numMembers;
	}

	totalPrice = setupPrice + baseMemberPrice + featurePrice;

	var showPrice = 0;

	showPrice = baseMemberPrice.toFixed(2);
	showPrice = addCommas(showPrice);
	document.getElementById('baseMemberPrice').innerHTML = "$"+showPrice;
	

	showPrice = featurePrice.toFixed(2);
	showPrice = addCommas(showPrice);
	document.getElementById('featuresPrice').innerHTML = "$"+showPrice;
	

	showPrice = totalPrice.toFixed(2);
	showPrice = addCommas(showPrice);
	document.getElementById('totalPrice').innerHTML = "$"+showPrice;
}


function adjustPrice(checkbox) {
	var name = checkbox.id;
	var cost = 0;
	
	for(i=0; i<featurePrices.length; i++) {
		if (featurePrices[i][0] == name) {
		
			cost = featurePrices[i][1];
			cost = cost * numMembers;
		
			if (checkbox.checked == true)
				featurePrice += cost;
			else
				featurePrice -= cost;
			
			break;
		}
	}
	
	totalPrice = setupPrice + baseMemberPrice + featurePrice;

	var showPrice = 0;
	
	showPrice = featurePrice.toFixed(2);
	showPrice = addCommas(showPrice);
	document.getElementById('featuresPrice').innerHTML = "$"+showPrice;

	showPrice = totalPrice.toFixed(2);
	showPrice = addCommas(showPrice);
	document.getElementById('totalPrice').innerHTML = "$"+showPrice;
}

	
function addCommas(nStr)
{
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 1 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ',' + '$2');
	}
	return x1 + x2;
}


function addEvent(obj, evType, fn) { 
	if (obj.addEventListener) { 
		obj.addEventListener(evType, fn, false);
		return true; 
	} else if (obj.attachEvent) { 
		var r = obj.attachEvent("on"+evType, fn); 
		return r; 
	} else { 
		return false; 
	} 
}


function initCosts() {
	setNumberOfMembers(document.getElementById('member_cnt'));
}

addEvent(window, 'load', initCosts);