/*********************************************
 *		Twitter Widget
 *********************************************/

/**
 *	Twitter Class
 *	@param The id of the div where the widget is
 *	@param This widget's analytics object
 *	@param Twitter screen name
 *	@param If true, the widget has an image, so we don't need to download one.
 */    
function twitter_widget (widget_id, screen_name, hasImage)
{
	var screen_name = screen_name;
	var analytics = ToolbarAnalytics.getAnalytics(widget_id);
	var widget_id = widget_id;
	var twitter = new Twitter();
	var dropdown = DropdownManager.get_toggle(widget_id, null, null, false);
	
	/**********************	
	 *	READY FUNCTION				 
	 **********************/	
	jQuery(document).ready(function() {

		if(!screen_name)
		{
			$("#" + widget_id + "_dropdown div.dropdown-middle").html('<div class="tweet-container"><div class="tweet-text">Tweets unavailable</div></div>');
			return;
		}

		if(!hasImage)
		{
			$.ajax( {
				type: "GET",
				url: "/parks/get_twitter_image_url/" + screen_name,
				success: function(data) {
					if (data != null && data != '')
						$("#" + widget_id + " img.image").attr("src", data);
				}
			} );
		}

		$.getJSON("http://search.twitter.com/search.json?from=" + screen_name + "&lang=all&rpp=15&callback=?",
			function (data)
			{
				if(data && data.results && data.results.length > 0)
				{
					data = data['results'];

					var tweet_counter = 0;
					var container = $("#" + widget_id + "_dropdown div.dropdown-middle");

					for (var tweet in data)
					{
						var msg = $('<div class="tweet-container"><img class="tweet-avatar" src="' + data[tweet].profile_image_url + '" /><div class="tweet-text">' + data[tweet].text.linkify() + '</div></div>');
						container.append(msg);
						tweet_counter++;
					}

					container.find('a').click( function() {
						analytics.click(this.href);
					});

					twitter.set_hovercards("#" + widget_id + "_dropdown div.dropdown-middle");
				}
				else
				{
					$("#" + widget_id + "_dropdown div.dropdown-middle").html('<div class="tweet-container"><div class="tweet-text">No recent tweets.</div></div>');
				}

			}
		);
		
		$("#" + widget_id + "_dropdown div.dropdown-top div.close").click(dropdown.raise); 
		$("#" + widget_id + " div.container").click(dropdown.toggle);
				             		
		twitter.set_hovercards("#" + widget_id + " div.image");
		analytics.load("twitter");
	});				
}

