﻿/***************************/
//@Author: Adrian "yEnS" Mato Gondelle
//@website: www.yensdesign.com
//@email: yensamg@gmail.com
//@license: Feel free to use it, but keep this credits please!					
/***************************/

//SETTING UP OUR POPUP
//0 means disabled; 1 means enabled;
var popupStatus = 0;

//loading popup with jQuery magic!
function loadPopup(){
	//loads popup only if it is disabled
	if(popupStatus==0){
		$("#backgroundPopup").css({
			"opacity": "0.7"
		});
		$("#backgroundPopup").fadeIn("slow");
		$("#popupContact").fadeIn("slow");
		popupStatus = 1;
	}
}

//disabling popup with jQuery magic!
function disablePopup(){
	//disables popup only if it is enabled
	if(popupStatus==1){
		$("#backgroundPopup").fadeOut("slow");
		$("#popupContact").fadeOut("slow");
		popupStatus = 0;
	}
}

//centering popup 
function getScrollXY() { 
var scrOfX = 0, scrOfY = 0; 
if( typeof( window.pageYOffset ) == 'number' ) { 
  //Netscape compliant 
  scrOfY = window.pageYOffset; 
  scrOfX = window.pageXOffset; 
} else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) { 
  //DOM compliant 
  scrOfY = document.body.scrollTop; 
  scrOfX = document.body.scrollLeft; 
} else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) { 
  //IE6 standards compliant mode 
  scrOfY = document.documentElement.scrollTop; 
  scrOfX = document.documentElement.scrollLeft; 
} 
return {X:scrOfX, Y:scrOfY}; 
} 

function getWindowSize() { 
 var myWidth = 0, myHeight = 0; 
 if( typeof( window.innerWidth ) == 'number' ) { 
   //Non-IE 
   myWidth = window.innerWidth; 
   myHeight = window.innerHeight; 
 } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) { 
   //IE 6+ in 'standards compliant mode' 
   myWidth = document.documentElement.clientWidth; 
   myHeight = document.documentElement.clientHeight; 
 } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) { 
   //IE 4 compatible 
   myWidth = document.body.clientWidth; 
   myHeight = document.body.clientHeight; 
 } 
 return{X:myWidth, Y:myHeight} 
} 

//centering popup 
function centerPopup(){ 
//request data for centering 
var windowDim = getWindowSize(); 
var popupHeight = $("#popupContact").height(); 
var popupWidth = $("#popupContact").width(); 
var scroll = getScrollXY(); 
//centering 
$("#popupContact").css({ 
"position": "absolute", 
"top": windowDim.Y/2-popupHeight/2 + scroll.Y-15, 
"left": windowDim.X/2-popupWidth/2 + scroll.X-15 
}); 
//only need force for IE6 

$("#backgroundPopup").css({ 
"height": windowDim.Y 
}); 
//window.alert("\npopup.Height="+popupHeight+"\nInner Height="+windowDim.Y); 
}


//CONTROLLING EVENTS IN jQuery
$(document).ready(function(){
	
	//LOADING POPUP
	//Click the button event!
	$("#button").click(function(){
		//centering with css
		centerPopup();
		//load popup
		loadPopup();
	});
				
	//CLOSING POPUP
	//Click the x event!
	$("#popupContactClose").click(function(){
		disablePopup();
	});
	//Click out event!
	$("#backgroundPopup").click(function(){
		disablePopup();
	});
	//Press Escape event!
	$(document).keypress(function(e){
		if(e.keyCode==27 && popupStatus==1){
			disablePopup();
		}
	});

});