//This script © David Li 2010

var Word1 = "";
var Word2 = "";
var Winner = 0;
var TPM1 = 0;
var TPM2 = 0;

var Messages1 = new Array();
var Messages2 = new Array();
var Messages3 = new Array();
var Messages4 = new Array();

//If nothing has been changed from the original Word 1/Word 2
Messages1[0] = "This tussle has been rejected for being a waste of time.";
Messages1[1] = "Nice idea, but I don't think you've really got the hang of this yet...";
Messages1[2] = "It would help if you wrote something in the boxes...";

//If a box is empty
Messages2[0] = "Nice idea, but I don't think you've really got the hang of this yet...";
Messages2[1] = "Agreed, fighting with nothing is an interesting philosophical concept. But try it on Twitter Tussle and you'll just look like an idiot.";
Messages2[2] = "Protip: If you're going to use this site properly, make sure your vocabulary is slightly larger than one word.";

//If the words are the same
Messages3[0] = "You know, there's a reason those boxes are marked 'Word 1' and 'Word 2'. That's right, they're meant to be <u>different words</u>!";
Messages3[1] = "Yeah, and when exactly was the last time you got into a fight with yourself?";
Messages3[2] = "Protip: If you're going to use this site properly, make sure your vocabulary is slightly larger than one word.";
Messages3[3] = "You are capable of remembering two words at the same time, aren't you?";
Messages3[4] = "We love that word too, but different ones would be nice.";

//If timed out
Messages4[0] = "At this rate, the birds will die from boredom, try another tussle.";

$(document).ready(function() {
	Resize();
	GetTopTussles();
});

function FlashLoad(){
	URLTussle();
}

function Resize() {
	$("#TussleWrapper").width($(window).width());
	$("#TussleWrapper").height($("#TussleWrapper").width()/3);
}

function GetTopTussles(){
	$.get("Scripts/TopTussles.php", function(Data) {
		var TopTussles = Data.split(",,");
		var TussleVolume = TopTussles.pop();
		for (var i=0; i<TopTussles.length; i++){
			var TopTussleWords = TopTussles[i].split(",");
			TopTussleWords[0] = TopTussleWords[0].charAt(0).toUpperCase() + TopTussleWords[0].slice(1);
			TopTussleWords[1] = TopTussleWords[1].charAt(0).toUpperCase() + TopTussleWords[1].slice(1);
			$("#TopTussles").append("<p class='TopTussle'>" + TopTussleWords[0] + " vs. " + TopTussleWords[1] + "<input type='submit' value='Tussle!' class='TopTussleButton' onclick='TopTussle(\"" + TopTussleWords[0] + "\",\"" + TopTussleWords[1] + "\")'/></p>");
		}
	});
}

$(window).bind("resize", function() {
	Resize();
});

function Tussle(){
	Word1 = $("#Box1").val();
	Word2 = $("#Box2").val();
	if (Word1 !== "Word 1" && Word2 !== "Word 2" && Word1 !== Word2 && Word1 !== "" && Word2 !== ""){
		window.location.hash = "?" + Word1 + "&" + Word2;
		document.getElementById("TussleButton").onclick = function (){};
		$(".Box").fadeOut(500, function(){$("#Box1").val("Word 1"); $("#Box2").val("Word 2");});
		$("#TussleButton").val("VS");
		$("#TussleButton").animate({width: '40px', marginLeft: '+=30'}, 500);
		$("body").append("<div class='Word' id='Word1'>" + Word1 + "</div>");
		$("body").append("<div class='Word' id='Word2'>" + Word2 + "</div>");
		$('#Word1').animate({opacity: 1, right: '50%', marginRight: '50px'}, 500);
		$('#Word2').animate({opacity: 1, left: '50%', marginLeft: '50px'}, 500);
		GetFlashMovie('TussleSWF').Tussle();
		$.ajax({
		url: "Scripts/Tussle.php?Word1=" +  escape(Word1) + "&Word2=" + escape(Word2),
		timeout: 30000,
		success: function(Data) {
			var TPMs = Data.split(",");
			TPM1 = parseFloat(TPMs[0]);
			TPM2 = parseFloat(TPMs[1]);
			if (TPM1 >= TPM2){
				Winner = 1;
				GetFlashMovie('TussleSWF').Results(Winner);
			}else if(TPM2 > TPM1){
				Winner = 2;
				GetFlashMovie('TussleSWF').Results(Winner);
			}
			TPM1 = Math.round(TPM1*100)/100;
			TPM2 = Math.round(TPM2*100)/100;
		},
		error: function() {
			var MessageNumber4 = Math.floor(Math.random()*(Messages4.length))
			DisplayError(Messages4[MessageNumber4]);
			GetFlashMovie('TussleSWF').TussleAgain();
			$(".Word").fadeOut(500, function(){$(".Word").remove();});
			$(".Box").fadeIn(500);
			$("#TussleButton").val("Tussle!");
			document.getElementById("TussleButton").onclick = function (){Tussle();};
			$("#TussleButton").animate({width: '100px', marginLeft: '-=30'}, 500);
		}
		});
	}else{
		if (Word1 == "Word 1" && Word2 == "Word 2"){
			var MessageNumber1 = Math.floor(Math.random()*(Messages1.length))
			DisplayError(Messages1[MessageNumber1]);
		}else if (Word1 == "" || Word2 == ""){
			var MessageNumber2 = Math.floor(Math.random()*(Messages2.length))
			DisplayError(Messages2[MessageNumber2]);
		}else if (Word1 == Word2){
			var MessageNumber3 = Math.floor(Math.random()*(Messages3.length))
			DisplayError(Messages3[MessageNumber3]);
		}
	}
}

function TussleFinished(){
	$("#TussleButton").animate({width: '150px', top: '+=60', marginLeft: '-75px'}, 500);
	$("#TussleButton").val("Tussle Again!");
	document.getElementById("TussleButton").onclick = function (){TussleAgain();};
	if (Winner == 1){
		$('#Word1').html("1. " + Word1 + " - " + "<span style='font-size:30px'>" + TPM1 + " TPM* </span>");
		$('#Word2').html("2. " + Word2 + " - " + "<span style='font-size:20px'>" + TPM2 + " TPM </span>");
		$('#Word1').animate({fontSize: "35px", marginTop: "-=20px", marginRight: - $('#Word1').width()/2}, 1000);
		$('#Word2').animate({fontSize: "25px", marginTop: "+=22px", marginLeft: - $('#Word2').width()/2}, 1000);
		$('#SocialTools').addClass('Glow');
		$('#SocialTools').animate({left: "+=40px", top: "+=20px"}, 1000);
		$('#FollowUs').addClass('Glow');
		$('#FollowUs').animate({right: "+=40px", top: "+=20px"}, 1000);
		
		$("#TwitterIcon").parent().attr("href", "http://wd.sharethis.com/api/sharer.php?destination=twitter&url=" + escape("http://www.twittertussle.com?") + escape(Word1) + escape("&") + escape(Word2) + "&title=" + escape("Twitter Tussle -") + escape(Word1) + escape(" vs. ") + escape(Word2) + "&publisher=ff7fb5a8-c2e5-4220-a97e-302674f3d6ba");
		$("#FacebookIcon").parent().attr("href", "http://wd.sharethis.com/api/sharer.php?destination=facebook&url=" + escape("http://www.twittertussle.com?") + escape(Word1) + escape("&") + escape(Word2) + "&title=" + escape("Twitter Tussle -") + escape(Word1) + escape(" vs. ") + escape(Word2) + "&publisher=ff7fb5a8-c2e5-4220-a97e-302674f3d6ba");
		$("#MySpaceIcon").parent().attr("href", "http://wd.sharethis.com/api/sharer.php?destination=myspace&url=" + escape("http://www.twittertussle.com?") + escape(Word1) + escape("&") + escape(Word2) + "&title=" + escape("Twitter Tussle -") + escape(Word1) + escape(" vs. ") + escape(Word2) + "&publisher=ff7fb5a8-c2e5-4220-a97e-302674f3d6ba");
		$("#DiggIcon").parent().attr("href", "http://wd.sharethis.com/api/sharer.php?destination=digg&url=" + escape("http://www.twittertussle.com?") + escape(Word1) + escape("&") + escape(Word2) + "&title=" + escape("Twitter Tussle -") + escape(Word1) + escape(" vs. ") + escape(Word2) + "&publisher=ff7fb5a8-c2e5-4220-a97e-302674f3d6ba");
		$("#DeliciousIcon").parent().attr("href", "http://wd.sharethis.com/api/sharer.php?destination=delicious&url=" + escape("http://www.twittertussle.com?") + escape(Word1) + escape("&") + escape(Word2) + "&title=" + escape("Twitter Tussle -") + escape(Word1) + escape(" vs. ") + escape(Word2) + "&publisher=ff7fb5a8-c2e5-4220-a97e-302674f3d6ba");
		$("#StumbleUponIcon").parent().attr("href", "http://wd.sharethis.com/api/sharer.php?destination=stumbleupon&url=" + escape("http://www.twittertussle.com?") + escape(Word1) + escape("&") + escape(Word2) + "&title=" + escape("Twitter Tussle -") + escape(Word1) + escape(" vs. ") + escape(Word2) + "&publisher=ff7fb5a8-c2e5-4220-a97e-302674f3d6ba");

	}else if (Winner == 2){
		$('#Word2').html("1. " + Word2 + " - " + "<span style='font-size:30px'>" + TPM2 + " TPM* </span>");
		$('#Word1').html("2. " + Word1 + " - " + "<span style='font-size:20px'>" + TPM1 + " TPM </span>");
		$('#Word2').animate({fontSize: "35px", marginTop: "-=20px", marginLeft: -$('#Word2').width()/2}, 1000);
		$('#Word1').animate({fontSize: "25px", marginTop: "+=22px", marginRight: -$('#Word1').width()/2}, 1000);
		$('#SocialTools').addClass('Glow');
		$('#SocialTools').animate({left: "+=40px", top: "+=20px"}, 1000);
		$('#FollowUs').addClass('Glow');
		$('#FollowUs').animate({right: "+=40px", top: "+=20px"}, 1000);
		
		$("#TwitterIcon").parent().attr("href", "http://wd.sharethis.com/api/sharer.php?destination=twitter&url=" + escape("http://www.twittertussle.com?") + escape(Word1) + escape("&") + escape(Word2) + "&title=" + escape("Twitter Tussle -") + escape(Word1) + escape(" vs. ") + escape(Word2) + "&publisher=ff7fb5a8-c2e5-4220-a97e-302674f3d6ba");
		$("#FacebookIcon").parent().attr("href", "http://wd.sharethis.com/api/sharer.php?destination=facebook&url=" + escape("http://www.twittertussle.com?") + escape(Word1) + escape("&") + escape(Word2) + "&title=" + escape("Twitter Tussle -") + escape(Word1) + escape(" vs. ") + escape(Word2) + "&publisher=ff7fb5a8-c2e5-4220-a97e-302674f3d6ba");
		$("#MySpaceIcon").parent().attr("href", "http://wd.sharethis.com/api/sharer.php?destination=myspace&url=" + escape("http://www.twittertussle.com?") + escape(Word1) + escape("&") + escape(Word2) + "&title=" + escape("Twitter Tussle -") + escape(Word1) + escape(" vs. ") + escape(Word2) + "&publisher=ff7fb5a8-c2e5-4220-a97e-302674f3d6ba");
		$("#DiggIcon").parent().attr("href", "http://wd.sharethis.com/api/sharer.php?destination=digg&url=" + escape("http://www.twittertussle.com?") + escape(Word1) + escape("&") + escape(Word2) + "&title=" + escape("Twitter Tussle -") + escape(Word1) + escape(" vs. ") + escape(Word2) + "&publisher=ff7fb5a8-c2e5-4220-a97e-302674f3d6ba");
		$("#DeliciousIcon").parent().attr("href", "http://wd.sharethis.com/api/sharer.php?destination=delicious&url=" + escape("http://www.twittertussle.com?") + escape(Word1) + escape("&") + escape(Word2) + "&title=" + escape("Twitter Tussle -") + escape(Word1) + escape(" vs. ") + escape(Word2) + "&publisher=ff7fb5a8-c2e5-4220-a97e-302674f3d6ba");
		$("#StumbleUponIcon").parent().attr("href", "http://wd.sharethis.com/api/sharer.php?destination=stumbleupon&url=" + escape("http://www.twittertussle.com?") + escape(Word1) + escape("&") + escape(Word2) + "&title=" + escape("Twitter Tussle -") + escape(Word1) + escape(" vs. ") + escape(Word2) + "&publisher=ff7fb5a8-c2e5-4220-a97e-302674f3d6ba");
	}
}

function TussleAgain(){
	GetFlashMovie('TussleSWF').TussleAgain();
	$(".Word").fadeOut(500, function(){$(".Word").remove();});
	$(".Box").fadeIn(500);
	$("#TussleButton").val("Tussle!");
	document.getElementById("TussleButton").onclick = function (){Tussle();};
	$("#TussleButton").animate({width: '100px', top: '-=60', marginLeft: '-50px'}, 500);
	$('#SocialTools').removeClass('Glow');
	$('#SocialTools').animate({left: "-=40px", top: "-=20px"}, 1000);
	$('#FollowUs').removeClass('Glow');
	$('#FollowUs').animate({right: "-=40px", top: "-=20px"}, 1000);		
	
	$("#TwitterIcon").parent().attr("href", "http://wd.sharethis.com/api/sharer.php?destination=twitter&url=http://twittertussle.com&title=Twitter Tussle&publisher=ff7fb5a8-c2e5-4220-a97e-302674f3d6ba");
	$("#FacebookIcon").parent().attr("href", "http://wd.sharethis.com/api/sharer.php?destination=twitter&url=http://twittertussle.com&title=Twitter Tussle&publisher=ff7fb5a8-c2e5-4220-a97e-302674f3d6ba");
	$("#MySpaceIcon").parent().attr("href", "http://wd.sharethis.com/api/sharer.php?destination=twitter&url=http://twittertussle.com&title=Twitter Tussle&publisher=ff7fb5a8-c2e5-4220-a97e-302674f3d6ba");
	$("#DiggIcon").parent().attr("href", "http://wd.sharethis.com/api/sharer.php?destination=twitter&url=http://twittertussle.com&title=Twitter Tussle&publisher=ff7fb5a8-c2e5-4220-a97e-302674f3d6ba");
	$("#DeliciousIcon").parent().attr("href", "http://wd.sharethis.com/api/sharer.php?destination=twitter&url=http://twittertussle.com&title=Twitter Tussle&publisher=ff7fb5a8-c2e5-4220-a97e-302674f3d6ba");
	$("#StumbleUponIcon").parent().attr("href", "http://wd.sharethis.com/api/sharer.php?destination=twitter&url=http://twittertussle.com&title=Twitter Tussle&publisher=ff7fb5a8-c2e5-4220-a97e-302674f3d6ba");
}

function URLTussle(){
	var URL = window.location.href;
	var Query = URL.split("?")[1];
	if (Query){
		var URLWord1 = unescape(Query.split("&")[0]);
		var URLWord2 = unescape(Query.split("&")[1]);
		if (URLWord1 && URLWord2){
			$("#Box1").val(URLWord1);
			$("#Box2").val(URLWord2);
			Tussle();
		}
	}
}

function TopTussle(Word1, Word2){
	if ($(".Word").length == 0){
		$('body').animate({scrollTop:0}, 1000, function(){
			$("#Box1").val(Word1);
			$("#Box2").val(Word2);
			Tussle();
		});
	}
}

function GetFlashMovie(MovieName){
	if(window.document[MovieName]){
		return window.document[MovieName];
	}else{
		return document.getElementById(MovieName);
	}
}

function DisplayError(ErrorText){
	if ($(".Error").length == 0){
		$("body").append("<div class='Error'>" + ErrorText + "</div>");
		$(".Error").fadeIn(300);
		setTimeout("$('.Error').fadeOut(300, function(){$('.Error').remove() })", 5000)
	}
}


$(document).keydown(function(Event) {
	if (Event.keyCode == 13){
		Word1 = $("#Box1").val();
		Word2 = $("#Box2").val();
		if (Word1 !== "Word 1" && Word2 !== "Word 2" && Word1 !== Word2 && Word1 !== "" && Word2 !== ""){
			Tussle();
		}else if ($("#TussleButton").val() == "Tussle Again!"){
			TussleAgain();
		}
	}
});
