var nextTweetLabs;
nextTweetLabs = false;
var labsIndex;
labsIndex = 0;
var eyeheightIndex;
eyeheightIndex = 0;
var labsTweetArray;
var eyheightTweetArray;
var updateTime;
updateTime = 10000;

function parseLabsTwitterData(jsonObj)
{
	//json is an array of tweet objects
	labsTweetArray = jsonObj;
}

function parseTwitterData(jsonObj)
{
	//json is an array of tweet objects
	eyeheightTweetArray = jsonObj;
}

var twitterWidget = function(id)
{
	this.myId = id;
}
	
function displayTweet(tweetObj, tweetSpanID, tweetUserSpanID)
{
	var tweet
	//update the user name
	tweet = "<a href='ExternalLink.asp?linkurl=http://twitter.com/" + tweetObj.user.screen_name + "' class='tweet_user' target='_blank'>@" + tweetObj.user.screen_name + "</a>";
	document.getElementById(tweetUserSpanID).innerHTML = tweet;
	// update the main link
	// update the text
	var src;
	src	= tweetObj.text;
	var dest;
	dest = "";
	var pointer;
	pointer = src.indexOf(' http://');
	var endpointer;
	endpointer = 0;
	var url;
	url = "";
	var shorturl;
	shorturl = "";
	// format url
	while (pointer != -1)
	{
		dest = dest + src.substring(0, pointer+1); // including the space
		src = src.substring(pointer+1, src.length);
		endpointer = src.indexOf(' ');
		if (endpointer == -1)
		{
			endpointer = src.length;
		}
		url = src.substring(0, endpointer); // excluding the space
		if (url.length > 33)
		{
			shorturl = url.substring(0, 30) + "...";
		}
		else
		{
			shorturl = url;
		}
		src = src.substring(endpointer, src.length);
		if (url.indexOf('www.eyeheight.com') == -1)
		{
			dest = dest + "<a class='tweet_url' href='ExternalLink.asp?linkurl=" + url + "' target='_blank'>" + shorturl + "</a>";
		}
		else
		{
			dest = dest + "<a class='tweet_url' href='" + url + "'>" + shorturl + "</a>";
		}
		pointer = src.indexOf(' http://');
	}
	dest = dest + src;
	src = dest;
	dest = "";
	// format hashtags
	pointer = src.indexOf('#')
	while (pointer != -1)
	{
		dest = dest + src.substring(0, pointer);
		src = src.substring(pointer, src.length);
		endpointer = src.indexOf(' ');
		if (endpointer == -1)
		{
			endpointer = src.length;
		}
		url = src.substring(0, endpointer); // excluding the space
		src = src.substring(endpointer, src.length);
		dest = dest + "<a class='tweet_hashtag' href='ExternalLink.asp?linkurl=http://twitter.com/#search?q=%23" + url.substring(1) + "' target='_blank'>" + url + "</a>";
		pointer = src.indexOf('#');
	}
	dest = dest + src;	
	tweet = "<span class='tweet_text'>" + dest + "</span>";
	document.getElementById(tweetSpanID).innerHTML = tweet;
}

	
function nextTweet()
{
	if (nextTweetLabs)
	{
		// are there any labs tweets
		if (labsTweetArray.length > 0)
		{
			displayTweet(labsTweetArray[labsIndex], "tweet", "tweet_user");
			//increment the pointer 
			labsIndex++;
			//check to see if greater than the size of the array
			if (labsIndex == labsTweetArray.length)
			{
				labsIndex = 0;
			}
			nextTweetLabs = false;
			setTimeout(function(){nextTweet()},updateTime); 
		}
		else
		{
			this.nextTweetLabs = false;
			setTimeout(function(){nextTweet()},0); 
		}
	}
	else
	{
		// are there any eyeheight tweets
		if (eyeheightTweetArray.length > 0)
		{
			displayTweet(eyeheightTweetArray[this.eyeheightIndex], "tweet", "tweet_user");
			//increment the pointer 
			this.eyeheightIndex++;
			//check to see if greater than the size of the array
			if (this.eyeheightIndex == eyeheightTweetArray.length)
			{
				this.eyeheightIndex = 0;
			}
			this.nextTweetLabs = true;
			setTimeout(function(){nextTweet()},updateTime); 
		}
		else
		{
			this.nextTweetLabs = true;
			setTimeout(function(){nextTweet()},0); 
		}
	}	
}




twitterWidget.prototype.start = function()
{
	nextTweet();
	//displayTweet(labsTweetArray[0], "tweet", "tweet_user");
	//setTimeout(function(){nextTweet()},updateTime); 
}	
