/* Visualization Hovers */

var x, y, xVal, yVal, newID, el;
var evt = evt || window.event;

function mouseX(evt) { return evt.clientX ? evt.clientX + (document.documentElement.scrollLeft || document.body.scrollLeft) : evt.pageX; }
function mouseY(evt) { return evt.clientY ? evt.clientY + (document.documentElement.scrollTop || document.body.scrollTop) : evt.pageY; }

function showVcard(id,evt) {
	newID = "hcard-"+ id;
	el = document.getElementById(newID);
	el.style.display="block";
	el.style.position="absolute";
	
	// Set position of bubble pointer at mouse-click	
	x = mouseX(evt);
	y = mouseY(evt);
	if (uA == 'ie8') {
		if (parseInt(y-100) < 0) yVal = 0;
		else yVal = parseInt(y-100);
		el.style.top=parseInt(yVal) + "px";
	} else {
		if (parseInt(y-80) < 0) yVal = 0;
		else yVal = parseInt(y-80);
		el.style.top=parseInt(yVal) + "px";
	}
	if (parseInt(x-310) < 0) xVal = 0;
	else xVal = parseInt(x-310);
	el.style.left=parseInt(xVal) + "px";
	
	//el.style.left=parseInt(x-310) + "px";		
}

function hideVcard(id) {
	newID = "hcard-"+ id;
	el = document.getElementById(newID);
	el.style.display="none";
	el.style.position="relative";
}

function listHover(id,type,evt) {
	var el = document.getElementById(id +'-hover');
	
	function showIt()
	{
		var uLink = document.getElementById(id);
		el.style.display = 'block';
		el.style.position = 'absolute';
		el.style.width = '200px';
		if (navigator.userAgent.search('MSIE 7.0') > 0) var posTop = parseInt(uLink.offsetTop+200);
		else var posTop = parseInt(uLink.offsetTop-80);
		if (navigator.userAgent.search('MSIE 7.0') > 0)  {
			if (id.indexOf('c') > 0 || id.indexOf('d') > 0) var posLeft = parseInt(uLink.offsetLeft);
			else var posLeft = parseInt(uLink.offsetLeft+document.getElementById('main-content-area rt-well-300').offsetWidth-300);
		} else {
			if (parseInt(uLink.offsetLeft-75) < 5) var posLeft = 5;
			else var posLeft = parseInt(uLink.offsetLeft-75);
		}
		el.style.top = posTop + 'px';
		el.style.left = posLeft + 'px';
		el.style.zIndex = '1000';
	}
	
	if (type == 'show') showIt(id); // setTimeout('showIt('+id+')',2000);
	else if (type == 'hide') el.style.display = 'none';// hideIt(id,evt);
}

/* Lightboxes */

function openIt(id,extra,url) {
	
	// Calculate size & location of screen overlay & lightbox
	if (document.body.clientHeight != 'undefined') docH = document.body.clientHeight;
	else docH = document.height;
	
	if (window.pageYOffset) scrollPos = window.pageYOffset;
	else if (document.documentElement.scrollTop) scrollPos = document.documentElement.scrollTop;
	else scrollPos = document.body.scrollTop;

	// Set size & location of screen overlay & lightbox
	var e = document.getElementById(id);
	var f = document.getElementById('fade');
	
	f.style.display='block';
	f.style.height=docH+'px';

	e.style.display='block';
	e.style.left = '20%';
	e.style.top = parseInt(scrollPos+100) + 'px';
	
	if (id == 'edit-relationship') document.getElementById('dynamic-relationship').innerHTML = extra;	
	if (extra == 'company/privacy' || extra == 'company/terms_of_service' || extra == 'sign-up-thank-you') document.getElementById(id).innerHTML = '<div class="close-button"><img src="' + iconPath + '/close_button.png" alt="close" onclick="closeIt(\'text\');" /></div><iframe id="'+extra+'" src="'+url+'" style="overflow:scroll"/>';
}

function closeIt(id) {
	var e = document.getElementById(id);
	if (e.className == 'lightbox')
	{
		document.getElementById('fade').style.display='none';
		e.style.display='none';
	}
	handleForm(id+'-form','');
}

function createNew(what,type,count) {
	if (type == 'source')
	{
		if (what == 'input')
		{
			document.getElementById('add-source-fields').innerHTML = document.getElementById('add-source-fields').innerHTML + '<input type="text" class="lightbox-field firstName" id="source-field-'+ parseInt(count+1) + '" name="source-field-'+ parseInt(count+1) + '" value="Provide source information here" onfocus="activateInput(this.id);" onblur="deactivateInput(this.id,\'Provide source information here\');" />';
			document.getElementById('add-another-source').onclick.value = "createNew('input','source',count++); return false;";
		}
	}
}

function changeRow(type,to,which) {
	if (type == 'settings')
	{	
		if (to == 'show') 
		{
		  var iMax = parseInt(document.getElementById('num-rows').value);
		  for (i=1;i<=iMax;i++) 
		  {
			  document.getElementById('row'+i).style.display = "block";
			  document.getElementById('row'+i+'e').style.display = "none";
		  }
		
			document.getElementById('row'+which).style.display = "none";
			document.getElementById('row'+which+'e').style.display = "block";
		
		} else if (to == 'hide') 
		{
			document.getElementById('row'+which).style.display = "block";
			document.getElementById('row'+which+'e').style.display = "none";
		} else if (to == 'highlight')
		{
			var row = document.getElementById(which);
			row.getElementsByTagName('div')[0].className = row.getElementsByTagName('div')[0].className + " highlight";
			row.getElementsByTagName('div')[1].className = row.getElementsByTagName('div')[1].className + " highlight";
		} else if (to == 'lowlight')
		{
			var row = document.getElementById(which);
			row.getElementsByTagName('div')[0].className = row.getElementsByTagName('div')[0].className = "row label";
			row.getElementsByTagName('div')[1].className = row.getElementsByTagName('div')[1].className = "row data";
		}
	}
	else if (type == 'notifications')
	{	
		if (to == 'show') 
		{
		  var iMax = parseInt(document.getElementById('num-rows').value);
		  for (i=1;i<=iMax;i++) { 
		  	document.getElementById('row'+i+'e').className = "row-inactive"; 
			document.getElementById('notifier'+i).className = "notifier inactive sans-serif inline";
		  }
		  document.getElementById('row'+which+'e').className = "row-active";
		  document.getElementById('notifier'+which).className = "notifier active sans-serif inline";
		} else if (to == 'hide') {
			document.getElementById('row'+which+'e').className = "row-inactive";
			document.getElementById('notifier'+which).className = "notifier inactive sans-serif inline";
		}
	}
	else if (type == 'faq') {
		var iMax = to;
		for (i=1;i<iMax;i++) { 
			document.getElementById('faq'+i).className = 'faq-inactive'; 
		}
		document.getElementById('faq'+which).className = 'faq-active';
	}
}

function scroll(page,scroller,type,el,counter,countMax) {
	var i = document.getElementById(counter);
	var sL = document.getElementById('scroll'+scroller+'-left');
	var sR = document.getElementById('scroll'+scroller+'-right');
	var iVal = parseInt(i.value);
	if (page == 'gallery') 
	{
		var e = document.getElementById(el);
		var j = document.getElementById('image-num');
		var jVal = parseInt(j.value-1);
		var scrlSrc = '';
		var pL = document.getElementById('previous-image');
		var pR = document.getElementById('next-image');
	} else if (page == 'family' || page == 'dashboard')
	{
		var scrlSrc = '2';
		var scrlVis = document.getElementById('scrollVis'+scroller);
	}
	
	if (type == 'next')
   {
		var iNext = iVal + 1;
		var iPrev = iVal - 1;

		if (iVal < (countMax-1)) 
		{
			i.value = iNext;
			sL.src = iconPath + '/scroll-left'+scrlSrc+'.png';

			if (page == 'gallery') 
			{
				j.value = parseInt(iNext+1);
				e.src = iconPath + "/placeholder-600x400-"+ iNext +".gif";
				e.onclick = "scroll('"+page+"','"+scroller+"','"+type+"','"+el+"',"+ iNext +",'"+countMax+"');";
				pL.className = "button green inline";
			} else if (page == 'family') 
			{
				if (navigator.userAgent.search('MSIE 8.0') > 0) var moveLeft = parseInt(iNext*110);
				else var moveLeft = parseInt(iNext*120);
				scrlVis.style.marginLeft = '-' + moveLeft + 'px';
			} else if (page == 'dashboard') 
			{
				var moveLeft = parseInt(iNext*100);
				scrlVis.style.marginLeft = '-' + moveLeft + 'px';
			}
		} 
		if (iNext == (countMax-1))
		{
			sR.src = iconPath + "/scroll-right-none"+scrlSrc+".png";
			if (page == 'gallery') pR.className = "button gray inline";
		}
	  } else if (type == 'previous')
	  {
		  var iNext = iVal + 1;
		  var iPrev = iVal - 1;

		  if (iVal > 0) 
		  {
			  i.value = iPrev;
			  sR.src = iconPath + '/scroll-right'+scrlSrc+'.png';

			  if (page == 'gallery')
			  {
				  j.value = parseInt(iPrev+1);
				  e.src = iconPath + "/placeholder-600x400-"+ iPrev +".gif";
				  e.onclick = "scroll('"+page+"','"+type+"','"+el+"',"+ iPrev +",'"+countMax+"');";
				  pR.className = "button green inline";
			  } else if (page == 'family') 
			  {
				  if (navigator.userAgent.search('MSIE 8.0') > 0) var moveRight = parseInt(iPrev*110);
				  else var moveRight = parseInt(iPrev*120);
				  scrlVis.style.marginLeft = '-' + moveRight + 'px';
			  } else if (page == 'dashboard') 
			  {
				  var moveRight = parseInt(iPrev*100);
				  scrlVis.style.marginLeft = '-' + moveRight + 'px';
			  }
		  }  
		  if (iPrev == 0) 
		  {
			  sL.src = iconPath + "/scroll-left-none"+scrlSrc+".png";
			  if (page == 'gallery') pL.className = "button gray inline";
		  }
	  } else if (type == 'jump' && page == 'gallery')
	  {
		  if  (j.value < 1 || j.value > countMax) 
		  {
			  alert('Photo number must be between 1 and '+countMax);
		  } else {
			  i.value = jVal;	
			  e.src = iconPath + "/placeholder-600x400-"+ jVal +".gif";

			  if (j.value == countMax)
			  {
				  sL.src = iconPath + "/scroll-left"+scrlSrc+".png";
				  sR.src = iconPath + "/scroll-right-none"+scrlSrc+".png";
				  pR.className = "button gray inline";
				  pL.className = "button green inline";
			  } else if  (j.value == 1) 
			  {
				  sL.src = iconPath + "/scroll-left-none"+scrlSrc+".png";
				  sR.src = iconPath + "/scroll-right"+scrlSrc+".png";
				  pL.className = "button gray inline";
				  pR.className = "button green inline";
			  } else 
			  {
				  sR.src = iconPath + "/scroll-right"+scrlSrc+".png";
				  sL.src = iconPath + "/scroll-left"+scrlSrc+".png";
				  pR.className = "button green inline";
				  pL.className = "button green inline";
			  }
		  }
	  }
  }
