$(document).ready(function()
{
	
	// Set selection
	$("input[name='greeting']").click(function()
	{
	
		$(".selection label").removeClass("active");
		
		var id = $(".selection input[name='greeting']:checked").attr("id");;
		$(".selection label[for='" + id + "']").addClass("active");
	
	});
	
	// Submit button
	$("button").click(function() {
		setStage();
	});
	
	// Set stage manually
	$(".first").click(function()
	{
		if( $(this).hasClass("done") ) setStage(1);
	});
	
	$(".second").click(function()
	{
		if( $(this).hasClass("done") ) setStage(2);
	});
	
	$(".third").click(function()
	{
		if( $(this).hasClass("done") ) setStage(3);
	});
	
	// Set stage
	function setStage(nr) {
		if( nr==undefined ) {
			if( $(".first").hasClass("done") ) nr = 1;
			if( $(".second").hasClass("done") ) nr = 2;
			if( $(".third").hasClass("done") ) nr = 3;
			
			if( nr!=2 || nr==2 && $(".selection label").hasClass("active") )
				nr = nr==undefined ? 1 : nr+1;
		}
		
		switch(nr)
		{
			case 1:
				$(".first").addClass("done");
				$(".second").removeClass("done");
				$(".third").removeClass("done");
				
				$(".next").removeClass("send");
				
				$(".first .on").fadeIn(200);
				$(".second .on").fadeOut(200);
				$(".third .on").fadeOut(200);
				
				var visible = $('.selection').is(':hidden') ? $(".result") : $(".selection");
				$(visible).fadeOut(175, function() {
					$(".input").fadeIn(250);
				});
			break;
			
			case 2:
				$(".first").addClass("done");
				$(".second").addClass("done");
				$(".third").removeClass("done");
				
				$(".next").removeClass("send");
				
				$(".first .on").fadeIn(200);
				$(".second .on").fadeIn(200);
				$(".third .on").fadeOut(200);
				
				var visible = $('.result').is(':hidden') ? $(".input") : $(".result");
				$(visible).fadeOut(175, function() {
					$(".selection").fadeIn(250);
				});
			break;
			
			case 3:
				$(".first").addClass("done");
				$(".second").addClass("done");
				$(".third").addClass("done");
				
				
				$(".next").addClass("send");
				
				$(".first .on").fadeIn(200);
				$(".second .on").fadeIn(200);
				$(".third .on").fadeIn(200);
				
				var visible = $('.input').is(':hidden') ? $(".selection") : $(".input");
				$(visible).fadeOut(175, function() {
					$(".result").fadeIn(250);
				});
			break;
			
			case 4:
				$(".steps").fadeOut(175);
				$(".next").fadeOut(175);
				
				$(".next").fadeOut(175);
				$(".result").fadeOut(175, function() {
					$(".advertisement").fadeIn(250);
					$(".thanks").fadeIn(250);
				});
				
				send();
			break;
		}
	}
	
	// Send to twitter
	function send()
	{
		var input	= $("#user").val();
		var msg		= $("input[@name='greeting']:checked").val();
		
		$.get("/include/call.php", { user: input, message: msg } );
	}
	
	// Javascript to Flash call
	$("#user").keyup(function(e) { JStoSWF(); });
});

// Javascript to Flash call
function JStoSWF()
{
	var input	= $("#user").val();
	var msg		= $("input[@name='greeting']:checked").val();
	
	if( $("#swf").is(':visible') )
	{
		var swf		= $("#swf")[0];
		swf.applyValue(input + "_" + msg);
	}
	
	if( $("#result").is(':visible') )
	{
		var result	= $("#result")[0];
		result.applyValue(input + "_" + msg);
	}
}

// Flash to Javascript call
function SWFtoJS(value)
{
	$("#user").val(value);
}
