﻿var correctHeight = 52;
var correctWidth = 25;

function gradient(id, level)
{
	var box = document.getElementById(id);
	box.style.opacity = level;
	box.style.MozOpacity = level;
	box.style.KhtmlOpacity = level;
	box.style.filter = "alpha(opacity=" + level+ ")";
	box.style.display="block";
	return;
}

function fadein(id) 
{
	var level = 0;
	while(level <= 1)
	{
		setTimeout( "gradient('" + id + "'," + level + ")", (level* 1000) + 10);
		level += 0.01;
	}
}

// Open the lightbox 
function openboxsimple(id, fadin, width, height)
{
  width = width - correctWidth;
  height = height - correctHeight;
  
  var box = document.getElementById(id); 
  document.getElementById('filter').style.display='block';
  document.getElementById('filter').style.height=getDocHeight() + 'px';
   
  box.style.left= center()-(width/2)+'px';
  box.style.top= verticalCenter() + getScrollXY() - (height/2) +'px';
  
  if(fadin)
  {
	 gradient(id, 0);
	 fadein(id);
  }
  else
  { 	
    box.style.display='block';
    box.style.height=height +'px';
    box.style.width=width +'px';
  }  	
}	

// Open the lightbox 
function openbox(id, fadin, width, height, textid, text, button, action)
{
  width = width - correctWidth;
  height = height - correctHeight;
  
  var box = document.getElementById(id); 
  document.getElementById('filter').style.display='block';
  document.getElementById('filter').style.height=getDocHeight() + 'px';
   
  box.style.left= center()-(width/2)+'px';
  box.style.top= verticalCenter() + getScrollXY() - (height/2) +'px';  
  
  document.getElementById(textid).innerHTML = formatText(text);
  document.getElementById(button).onclick = new Function(action);
  
  if(fadin)
  {
	 gradient(id, 0);
	 fadein(id);
  }
  else
  { 	
    box.style.display='block';
    box.style.height=height +'px';
    box.style.width=width +'px';
  }  	
}	

// Close the lightbox

function closebox(id)
{
   document.getElementById(id).style.display='none';
   document.getElementById('filter').style.display='none';
}

// Get document height
function getDocHeight() 
{
    var D = document;
    return Math.max(
        Math.max(D.body.scrollHeight, D.documentElement.scrollHeight),
        Math.max(D.body.offsetHeight, D.documentElement.offsetHeight),
        Math.max(D.body.clientHeight, D.documentElement.clientHeight)
    );
}

//returns horizontal center viewport
function center() 
{
  var vpWidth = document.viewport.getWidth();
  return (vpWidth/2)
}

//returns vertical center viewport
function verticalCenter() 
{
  var vpHeight = document.viewport.getHeight();
  return (vpHeight/2)
}

function getScrollXY() {
  var scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
    //Netscape compliant
    scrOfY = window.pageYOffset;
  } else if( document.body && ( document.body.scrollTop ) ) {
    //DOM compliant
    scrOfY = document.body.scrollTop;
  } else if( document.documentElement && ( document.documentElement.scrollTop ) ) {
    //IE6 standards compliant mode
    scrOfY = document.documentElement.scrollTop;
  }
  return scrOfY;
}

function formatText(text) {
  text = text.replace(/\n/g,"<br/>");
  text = text.replace(/b#/g,"</b>");
  text = text.replace(/#b/g,"<b>");
  return text;
}


