function pushFooter(){
	var header = document.getElementById("header");
	var content = document.getElementById("content");
	var footer = document.getElementById("footer");
	
	var viewPort = document.documentElement.clientHeight;
	
	var pusherHeight = viewPort - header.offsetHeight - content.offsetHeight - footer.offsetHeight;
	
	if (pusherHeight > 0){
		document.getElementById("footerPusher").style.height = pusherHeight + "px";
	}
}

var baseUrl = window.location.href;
var nohttp = baseUrl.split('//')[1];
var hostPort = nohttp.split('/')[0];

var applicationPath = "http://" + hostPort + "/";
var loginVisible = false;

function membersPopUp(){
	var login = document.getElementById("membersLoginHolder");
	
	if (!readCookie("username")){
		if (!loginVisible){
			login.style.visibility = "visible";
			loginVisible = true;
		}else{
			login.style.visibility = "hidden";
			loginVisible = false;
		}
	}else{
		window.location=applicationPath + "members/";
	}
}

function membersSubmit(){
	var user = document.getElementById("membersUn").value;
	var pass = document.getElementById("membersPw").value;
	
	var submit = true;
	var errorText = "Incomplete username or password.";
	
	if (user == ""){
		submit = false;
	}
	
	if (pass == ""){
		submit = false;
	}
	
	if (submit){
		var url = applicationPath + "checkLogin.aspx?username=" + user + "&password=" + pass;
		postRequest(url);
	}else{
		document.getElementById("membersErrorText").innerHTML = errorText;
	}
}

function postRequest(strURL){
	var xmlHttp;
	
	if(window.XMLHttpRequest){ // For Mozilla, Safari, ...
		var xmlHttp = new XMLHttpRequest();
	}else if(window.ActiveXObject){ // For Internet Explorer
		var xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
	}
	
	xmlHttp.open('POST', strURL, true);
	xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	xmlHttp.onreadystatechange = function(){
		if (xmlHttp.readyState == 4){
			loginResult(xmlHttp.responseText);
		}
	}
	xmlHttp.send(strURL);
}

function loginResult(str){
	if(str=="yes"){
		membersPopUp();
		window.location=applicationPath + "members/";
	}else{
		document.getElementById("membersErrorText").innerHTML = "Invalid Username or Password! Please try again!";
	}
}

function logout(){
	eraseCookie("username");
	window.location=applicationPath;
}

function forgotPassword(){
	window.location=applicationPath + "members/forgot/"
}

function forgotPasswordSubmit(){
	var email = document.getElementById("email").value;
	
	var submit = true;
	
	if (email == "" || !isValidEmail(email)){
		submit = false;
	}
	
	if (submit){
		document.getElementById("forgotForm").submit();
	}else{
		document.getElementById("membersForgotError").innerHTML = "Invalid Email address";
	}
}

function contactSubmit(){
	var name = document.getElementById("name").value;
	var title = document.getElementById("title").value;
	var company = document.getElementById("company").value;
	var email = document.getElementById("email").value;
	var request = document.getElementById("request").value;
	var reference = document.getElementById("reference").value;
	
	var submit = true;
	var errorText = "";
	var defaultText = "<b>Please complete the following fields:</b><br/>";
	errorText += defaultText;
	
	if (name == ""){
		submit = false;
		errorText += "Name";
	}
	
	if (title == ""){
		if (errorText != defaultText){
			errorText += "<br/>";
		}
		
		submit = false;
		errorText += "Title";
	}
	
	if (company == ""){
		if (errorText != defaultText){
			errorText += "<br/>";
		}
		
		submit = false;
		errorText += "Company";
	}
	
	if (email == "" || !isValidEmail(email)){
		if (errorText != defaultText){
			errorText += "<br/>";
		}
		
		submit = false;
		errorText += "Email";
	}
	
	if (request == ""){
		if (errorText != defaultText){
			errorText += "<br/>";
		}
		
		submit = false;
		errorText += "Request";
	}
	
	if (reference == ""){
		if (errorText != defaultText){
			errorText += "<br/>";
		}
		
		submit = false;
		errorText += "Reference";
	}
	
	if (submit){
		document.getElementById("contactForm").submit();
	}else{
		document.getElementById("contactError").innerHTML = errorText;
	}
}

function suggestSubmit(){
	var name = document.getElementById("name").value;
	var email = document.getElementById("email").value;
	var description = document.getElementById("description").value;
	var why = document.getElementById("why").value;
	
	var submit = true;
	var errorText = "";
	var defaultText = "<b>Please complete the following fields:</b><br/>";
	errorText += defaultText;
	
	if (name == ""){
		submit = false;
		errorText += "Name";
	}
	
	if (email == "" || !isValidEmail(email)){
		if (errorText != defaultText){
			errorText += "<br/>";
		}
		
		submit = false;
		errorText += "Email";
	}
	
	if (description == ""){
		if (errorText != defaultText){
			errorText += "<br/>";
		}
		
		submit = false;
		errorText += "Description";
	}
	
	if (why == ""){
		if (errorText != defaultText){
			errorText += "<br/>";
		}
		
		submit = false;
		errorText += "Why?";
	}
	
	if (submit){
		document.getElementById("contactForm").submit();
	}else{
		document.getElementById("suggestError").innerHTML = errorText;
	}
}

function isValidEmail(strEmail){
	validRegExp = /^[^@]+@[^@]+.[a-z]{2,}$/i;
	if (strEmail.search(validRegExp) == -1){
		return false;
	} 
	return true; 
}

// ----------------------------------------------------------------------------------------------------------------------------------------------------------
// cookies
// ----------------------------------------------------------------------------------------------------------------------------------------------------------
function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000)); //days
		//date.setTime(date.getTime()+(hours*60*60*1000));  //hours
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}
function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}
function eraseCookie(name) {
	createCookie(name,"",-1);
}
