function getGOPness(twitter_name){
	
    var url = "http://twitter.com/statuses/user_timeline/"+twitter_name+".json?count=200&callback=?";

    $.jsonp({
            type: "GET",
            url: url,
            data: {},
            async:true,
            contentType: "application/json; charset=utf-8",
            dataType: "jsonp",
            success: function(data) {
                    ProcessData(data,twitter_name);
            },
            error: function (XMLHttpRequest, textStatus, errorThrown) {
                    ShowError(XMLHttpRequest, textStatus, errorThrown);
            }
            
	});
	  
}

function ProcessData(data, twitter_name){
			  NoCount=0;
	          YesCount=0;
	          
	          $.each(data, function(i,item){
	          	
	             
	             tweet = item.text;
	
	             fndNo = tweet.match(/\bno\b/ig);
	
	             if (fndNo!=null){
	             	NoCount=NoCount+fndNo.length;
	             }
	             
	             fndYes = tweet.match(/\byes\b/ig);
	
	             if (fndYes!=null){
	             	YesCount=YesCount+fndYes.length;
	             }
	             
	          });
	          
	          if (NoCount==0){
	          	Perc=0;
	          } else {
	          	Perc=Math.round(NoCount/(NoCount+YesCount)*100);
	          	
	          }
	          
	          switch(true)
				{
				case Perc==0:
				  $gop = "PARTY DISGRACE"
				  break;
				case (Perc>0)&&(Perc<10): //1-9%
				  $gop = "CLOSET DEM";
				  break;
				case (Perc>9)&&(Perc<20): //10-19%
				  $gop = "BRISTOL PALIN";
				  break;
				case (Perc>19)&&(Perc<30): //20-29%
				  $gop = "GOP AID";
				  break;
				case (Perc>29)&&(Perc<40): //30-39%
				  $gop = "FIRST TERMER";
				  break;
				case (Perc>39)&&(Perc<50): //40-49%
				  $gop = "DON NICKLES";
				  break;
				case (Perc>49)&&(Perc<60): //50-59%
				  $gop = "FLIP FLOPPER";
 				  break;
				case (Perc>59)&&(Perc<70): //60-69%
				  $gop = "LIMBAUGH FAN";
				  break;
				case (Perc>69)&&(Perc<80): //70-79%
				  $gop = "TEABAGGER";
				  break;
				case (Perc>79)&&(Perc<90): //80-89%
				  $gop = "SARAH PALIN";
				  break;
				case (Perc>89)&&(Perc<100): //90-99%
				  $gop = "MITCH MCCONNELL";
				  break;
				case Perc==100:
				  $gop = "JIM BUNNING"
				  break;
				default:
					$gop = "wtf";
	            }
	          
	          $('#percent').html(Perc+"%");
	          $('#gopness_score').html($gop);
	          $('#resultsfor').html(twitter_name.toUpperCase());
	          $('#needle').attr("style","background: url(http://chart.apis.google.com/chart?chs=200x100&chf=bg,s,00000000&cht=gom&chd=t:"+Perc+"&chco=FFFFFF00,FFFFFF00,FFFFFF00&chls=3|0) no-repeat center -20px;");
	          
	          $('#btnShare').attr("href", "http://twitter.com/home?status=@"+twitter_name+"'s+GOPness+is+"+Perc+"%25:+"+$gop+".+What's+yours?+http%3A%2F%2FGOPness.com");
	          
	          $('#pageload').fadeOut('fast', function() {
				$('#page2').fadeIn('fast');
			  });
}

function ShowError(XMLHttpRequest, textStatus, errorThrown){
	$('#pageload').fadeOut('fast', function() {
			$('#pageerror').fadeIn('fast');
	});
}



$(document).ready(function() {
	$('#btnNext').click(function() {
	  pageTracker._trackPageview('/gopness/'+$('input#twittername').val());
	  $.address.value($('input#twittername').val());
	  $('#page1').fadeOut('fast', function() {
		$('#pageload').fadeIn('fast');
	    getGOPness($('input#twittername').val());

	  });
	});
	
	$('#btnStartOver').click(function() {
	    $.address.value('/');
	    pageTracker._trackPageview('/');
		$('#page2').fadeOut('fast', function() {
			$('#page1').fadeIn('fast');
	    	$('#twittername').val('');
	    	egAccounts();
	    });
	});
	
	$('#lnkStartOver').click(function() {
		$.address.value('/');
		pageTracker._trackPageview('/');
		$('#pageerror').fadeOut('fast', function() {
			$('#page1').fadeIn('fast');
	    	$('#twittername').val('');
	    	egAccounts();
	    });
	});
	

	if ($.address.path()!='/') {
		$('#page1').fadeOut('fast', function() {
		$('#pageload').fadeIn('fast');
		path = $.address.path();
		twitter_name = path.substring(1,path.length);
		pageTracker._trackPageview('/gopness/'+twitter_name);
	    getGOPness(twitter_name);

	  });			
		
	}
	
	egAccounts();
	
});

function egAccounts(){

				var accounts = new Array();
				accounts[0] = "<a href='#' name='PerezHilton'>@PerezHilton</a>, <a href='#' name='BarackObama'>@BarackObama</a>, <a href='#' name='FoxNews'>@FoxNews</a>";
				accounts[1] = "<a href='#' name='DrDrew'>@DrDrew</a>, <a href='#' name='SarahPalinUSA'>@SarahPalinUSA</a>, <a href='#' name='JohnCMayer'>@JohnCMayer</a>";
				accounts[2] = "<a href='#' name='Oprah'>@Oprah</a>, <a href='#' name='TeamMcCain'>@TeamMcCain</a>, <a href='#' name='StephenColbert'>@StephenColbert</a>";


				
				var rannum = Math.floor(Math.random()*accounts.length);
				$('#eg').html("<strong>eg:</strong> " + accounts[rannum]);
				
	$('#eg a').address(function(){
		$('#twittername').val($(this).attr('name'));
		$('#btnNext').click();
	});		
}


