// JQUERY AJAX FUNCTION

$(function() {

//$("body").css("height", $("html").css("height"));

// HIDE ALERT AND MASK ON CANCEL
	$(".nevermind").click(function() {
		$("#mask").hide();
		$(".alert").hide();
	});
	
	$("#mask").click(function() {
		$("#mask").hide();
		$(".alert").hide();
	});


// HANDLE CONTACT FORM
	$(".contactlink").click(function() {
		showPopup("contact");
		if($("#contactname").val() == "") $("#contactname").focus();
		else $("#contactemail").focus();
	})

	$(".contactsend").click(function() {
		$(".alert").hide();
		showPopup("working");
		$.ajax({ type: "POST", url: "php/ajax.php",
			data: "contactname="+$("#contactname").attr('value')+"&contactemail="+$("#contactemail").attr('value')+"&contactmessage="+$("#contactmessage").attr('value'),
			success: function(msg) {
				$("#working").css("background-position", "0 -160px");
				setTimeout("$('#working').fadeOut('fast');$('#mask').fadeOut('fast');", 1000);
	  		}
		});
	});
	
	$("#contactname").keydown(function(event) {
		cancelOnEsc(event.keyCode);
	});
	
	$("#contactemail").keydown(function(event) {
		cancelOnEsc(event.keyCode);
	});
	
	$("#contactmessage").keydown(function(event) {
		cancelOnEsc(event.keyCode);
	});
	
	


// HANDLE 'ADD' QUESTION
	$(".add").click(function() {
		$("#savingbig").show();
		$("#savingslim").show();
		$.ajax({ type: "POST", url: "php/ajax.php",
			data: "newname="+$("#newname").attr('value')+"&newanybodywho="+$("#newanybodywho").attr('value'),
			success: function(msg) {
				$("#newanybodywho").val("");
				document.cookie = "username=" + escape($("#newname").attr('value')) + ";path=/";
				$("#savingbig").css("background-position", "0 -160px");
				$("#savingslim").css("background-position", "0 -31px");
				setTimeout("$('#savingbig').fadeOut('slow');", 1500);
				setTimeout("$('#savingslim').fadeOut('slow');", 1500);
	  		}
		});	
	});


// HANDLE INAPPROPRIATE MESSAGE
	$(".inappropriate").click(function() {
		showPopup("inappropriate");
		$("#inappropriateid").attr('value', this.id);
		$("#inappropriatekeycontroller").focus();
	});
	
	$(".veryinappropriate").click(function() {
		$(".alert").hide();
		showPopup("working");
		$linkid = $("#inappropriateid").attr('value');
		$.ajax({ type: "POST", url: "php/ajax.php",
			data: "inappropriate="+$("#inappropriateid").attr('value'),
			success: function(msg) {
				$("#working").css("background-position", "0 -160px");
				setTimeout("$('#working').fadeOut('fast');$('#mask').fadeOut('fast');", 1000);
				$("#"+$linkid).html("This post has been flagged. Thank you.");
				$("#"+$linkid).css("color", "#ff9aa0");
	  		}
		});
	});
	
	$("#inappropriatekeycontroller").keydown(function(event) {
		cancelOnEsc(event.keyCode);
	});


// HANDLE DROP-DOWN MENU ANIMATION
	$(".dropdownbutton").click(function() {
		questionId = this.id.substr(14);
		$('#dropdown'+questionId).slideToggle('fast');
	});

	$(".howaboutyou").click(function() {
		questionId = this.id.substr(11);
		$('#dropdown'+questionId).slideToggle('fast');
	});

	$(document).click(function() {
		$(".optionsdropdown:not(:animated)").slideUp('fast');
	});
	
// HANDLE ME TOO BUTTONS
	$(".metoo").click(function() {
		questionId = this.id.substr(14);
	});
	
// HANDLE 'THAT'S ME'
	$(".thatsme").click(function() {
		showPopup("responsedetails");
		if($("#responsename").val() == "") $("#responsename").focus();
		else $("#responseanswer").focus();
		$("#thatsmeid").attr('value', this.id);
	
		$("#howaboutyou"+questionId).removeClass("hidden");
		$("#replacement"+questionId).addClass("hidden");
		$("#howaboutyou"+questionId).css("color", "#c66");
		$("#howaboutyou"+questionId).html("Working...");

		
		if($("#thatsmeid").attr('value').substr(0, 1)=="d") questionId = $("#thatsmeid").attr('value').substr(8);
		else questionId = $("#thatsmeid").attr('value').substr(7);
		$.ajax({ type: "POST", url: "php/ajax.php",
			data: "thatsme="+$("#thatsmeid").attr('value'),
			success: function(msg) {
				changeVote("thatsme", questionId);
	  		}
		});
		
		
	})

	$(".surethatsme").click(function() {
		$(".alert").hide();
		showPopup("working");
		if($("#thatsmeid").attr('value').substr(0, 1)=="d") questionId = $("#thatsmeid").attr('value').substr(8);
		else questionId = $("#thatsmeid").attr('value').substr(7);
		$.ajax({ type: "POST", url: "php/ajax.php",
			data: "thatsme="+$("#thatsmeid").attr('value')+"&responsename="+$("#responsename").attr('value')+"&responseanswer="+$("#responseanswer").attr('value'),
			success: function(msg) {
				$("#working").css("background-position", "0 -160px");
				setTimeout("$('#working').fadeOut('fast');$('#mask').fadeOut('fast');", 1000);
	  		}
		});
	});
	
	$(".notreally").click(function() {
		$("#mask").hide();
		$(".alert").hide();		
	});
	
	$("#responsename").keydown(function(event) {
		cancelOnEsc(event.keyCode);
	});
	
	$("#responseanswer").keydown(function(event) {
		cancelOnEsc(event.keyCode);
	});
	
	
// HANDLE 'I KNOW SOMEBODY.'
	$(".iknowsomebody").click(function() {
	
		$("#howaboutyou"+questionId).removeClass("hidden");
		$("#replacement"+questionId).addClass("hidden");
		$("#howaboutyou"+questionId).css("color", "#c66");
		$("#howaboutyou"+questionId).html("Working...");
	
		questionId = this.id.substr(13);
		$.ajax({ type: "POST", url: "php/ajax.php",
			data: "iknowsomebody="+this.id,
			success: function(msg) {				
				changeVote("iknowsomebody", questionId);
	  		}
		});
	})
	
// HANDLE 'ME NEITHER.'
	$(".meneither").click(function() {
	
		$("#howaboutyou"+questionId).removeClass("hidden");
		$("#replacement"+questionId).addClass("hidden");
		$("#howaboutyou"+questionId).css("color", "#c66");
		$("#howaboutyou"+questionId).html("Working...");
		
		questionId = this.id.substr(9);
		$.ajax({ type: "POST", url: "php/ajax.php",
			data: "meneither="+this.id,
			success: function(msg) {
				changeVote("meneither", questionId);
	  		}
		});
	})
	
// HANDLE COMMENTS
	var commentid;
	$(".addcomment").click(function() {
		$("#comment").val("");
		showPopup("addcomment");
		//$("#responseid").attr('value', this.id);
		commentid="";
	})
	
	$(".respond").click(function() {
		$("#comment").val("");
		showPopup("addcomment");
		//$("#responseid").attr('value', this.id);
		commentid = (this.id).substr(7);
	})

	$(".postcomment").click(function() {
		$(".alert").hide();
		showPopup("working");
		var responseid = $("#responseid").attr('value');
		$.ajax({ type: "POST", url: "php/ajax.php",
			data: "responseid="+$("#responseid").attr('value')+"&commentid="+commentid+"&commentname="+$("#commentname").attr('value')+"&comment="+$("#comment").attr('value'),
			success: function(msg) {
				if(commentid) {
					$("#comment"+commentid+"main").append("<hr /><p class='small'><strong>"+$("#commentname").attr('value')+"</strong> says,</p>");
					$("#comment"+commentid+"main").append("<p class='medium'>&ldquo;"+$("#comment").attr('value')+"&rdquo;</p>");
				} else {
					$("#commentcol").append("<div class='shortitem comment newcomment'><div class='top'></div><div class='main'><p class='small'><strong>"+$("#commentname").attr('value')+"</strong> says,</p><p class='medium'>&ldquo;"+$("#comment").attr('value')+"&rdquo;</p></div><div class='bottom'></div></div>");
					$(".newcomment").insertAfter("#lastcomment");
				}
				$("#working").css("background-position", "0 -160px");
				setTimeout("$('#working').fadeOut('fast');$('#mask').fadeOut('fast');", 1000);
	  		}
		});
	})

})


function slowhide(element) {
	setTimeout("$('#"+element+"').slideUp('fast');", 200);
}

/// CENTER EDIT POPUPS AND DISPLAY THEM
function showPopup(element) {
	$("#"+element).show(); 
	if (window.innerHeight) {
		pageheight = window.innerHeight;
		pagewidth = window.innerWidth;
	} else if (document.documentElement && document.documentElement.clientHeight) {
		pageheight = document.documentElement.clientHeight;
		pagewidth = document.documentElement.clientWidth;
	} else if (document.body) {
		pageheight = document.body.clientHeight;
		pagewidth = document.body.clientWidth;
	}
	
	if( typeof( window.pageYOffset ) == 'number' ) {
		scrollY = window.pageYOffset;
	} else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
		scrollY = document.body.scrollTop;
	} else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
		scrollY = document.documentElement.scrollTop;
	}

	height = document.getElementById(element).offsetHeight;
	if(!height) height = 200;
	var newtop = ( pageheight / 2 ) + scrollY - (height/2);
	$("#"+element).css("top", newtop);
	
	if($("body").height() > pageheight) $("#mask").css("height", $("body").height());
	else $("#mask").css("height", pageheight);
	if($("body").width() > pageheight) $("#mask").css("width", $("body").width());
	else $("#mask").css("width", pagewidth);
	
	$("#mask").show();
}



// CANCEL CHANGES WHEN USER HITS ESCAPE
function cancelOnEsc(keycode) {
	if (keycode == 27) {
		$("#mask").hide();
		$(".alert").hide();
	}
}


function changeVote(option, questionId) {

	if(option=="thatsme") {
		var buttonname = "bhatsme";
		var text = "That's me!";
	} else if(option=="iknowsomebody") {
		var buttonname = "bknowsomebody";
		var text = "I know somebody.";
	} else if(option=="meneither") {
		var buttonname = "beneither";
		var text = "Me neither.";
	}
	
	$("#replacement"+questionId).html(text);
	$("#replacement"+questionId).removeClass("hidden");
	
	$("#thatsme"+questionId).removeClass("hidden");
	$("#iknowsomebody"+questionId).removeClass("hidden");
	$("#meneither"+questionId).removeClass("hidden");

	$("#"+option+questionId).addClass("hidden");



	if($("#bhatsme"+questionId).hasClass("hidden")) $("#thatsmestats").html(parseInt($("#iknowsomebodystats").html())-1);
	if($("#bknowsomebody"+questionId).hasClass("hidden")) $("#iknowsomebodystats").html(parseInt($("#iknowsomebodystats").html())-1);
	if($("#beneither"+questionId).hasClass("hidden")) $("#meneitherstats").html(parseInt($("#meneitherstats").html())-1);
	$("#"+option+"stats").html(parseInt($("#"+option+"stats").html())+1);
	
	$("#bhatsme"+questionId).removeClass("hidden");
	$("#replacementthatsme"+questionId).addClass("hidden");
	$("#bknowsomebody"+questionId).removeClass("hidden");
	$("#replacementiknowsomebody"+questionId).addClass("hidden");
	$("#beneither"+questionId).removeClass("hidden");
	$("#replacementmeneither"+questionId).addClass("hidden");
	
	$("#"+buttonname+questionId).addClass("hidden");
	$("#replacement"+option+questionId).removeClass("hidden");
	
}

