var body = null;
var header = null;
//
var lastTweet = null;
var lastTweetContent = null;
var lastTweetComment = null;
var txtWrap = null;
var txtValue = null;
var txtWrapForTime = null;
var txtValueForTime = null;
var hoverCover = null;

var targetAnc = null;
var hoverBlock = null;

var mouseX = 0;
var mouseY = 0;

var array = new Array();

var CONSTSTRNUM = 60;

window.onload = function()
{
	init();
}

function createDom(str,strForTime)
{
	body = document.body;
	
	lastTweet = document.createElement("div");
	lastTweet.id="lastTweet";
	//
	header = document.getElementById("header");
	header.getElementsByTagName("div")[0].appendChild(lastTweet);
	//
	targetAnc = document.createElement("a");
	targetAnc.href = "http://twitter.com/dt0mj0p0";
	targetAnc.target = "blank";
	lastTweet.appendChild(targetAnc);
	//
	lastTweetContent = document.createElement("div");
	lastTweetContent.id = "lastTweetContent";
	//
	targetAnc.appendChild(lastTweetContent);
	//
	lastTweetComment = document.createElement("div");
	lastTweetComment.id = "lastTweetComment";
	lastTweetContent.appendChild(lastTweetComment);
	//
	txtWrap = document.createElement("span");
	lastTweetComment.appendChild(txtWrap);
	//
	txtValue = document.createTextNode(str);
	txtWrap.appendChild(txtValue);
	//
	txtWrapForTime = document.createElement("span");
	txtWrapForTime.id = "txtWrapForTime";
	//
	txtValueForTime = document.createTextNode(strForTime);
	txtWrapForTime.appendChild(txtValueForTime);
	//
	lastTweetComment.appendChild(txtWrapForTime);
	//
	hoverBlock = document.createElement("div");
	hoverBlock.id = "hoverBlock";
	//
	body.appendChild(hoverBlock);
	//
	lastTweetContent.onmouseover = function()
	{
		showHover(true);
		body.onmousemove = moveBox;
	}
	lastTweetContent.onmouseout = function()
	{
		showHover(false);
		body.onmousemove = null;
	}
}

function moveBox(event)
{
	if(window.opera)
	{
		array[0] = event.pageX;
		array[1] = event.pageY;
	}
	else if(document.all)
	{
		if(document.compatMode == "CSS1Compat")
		{
			array[0] = document.documentElement.scrollLeft + window.event.clientX;
			array[1] = document.documentElement.scrollTop + window.event.clientY;
		}
		else
		{
			array[0] = document.body.scrollLeft + window.event.clientX;
			array[1] = document.body.scrollTop + window.event.clientY;
		}
	}
	else if(document.layers || document.getElementById)
	{
		array[0] = event.pageX;
		array[1] = event.pageY;
	}
	
	hoverBlock.style.left = (array[0] - 80) + "px";
	hoverBlock.style.top = (array[1] + 20) + "px";
}

function showHover(flg)
{
	if(flg)
	{
		hoverBlock.style.display = "block";
		txtWrapForTime.style.textDecoration = "underline";
		txtWrap.style.textDecoration = "underline";
	}
	else
	{
		hoverBlock.style.display = "none";
		txtWrapForTime.style.textDecoration = "none";
		txtWrap.style.textDecoration = "none";
	}
}

function showComment(json)
{
	if(json && json.results[0])
	{
		var strForPass = "";
		var txtLength = json.results[0].text.length;
		
		strForPass = json.results[0].text;
		if(txtLength > CONSTSTRNUM)
		{
			strForPass = json.results[0].text.slice(0,CONSTSTRNUM);
			strForPass+="…";
		}
		
		var lastUpData = json.results[0].created_at;
		lastUpData = new Date(lastUpData);
		lastUpData = timeFormatChange(lastUpData);
		
		createDom(strForPass,lastUpData);
	}
}

function timeFormatChange(date) {
	var str = "";
	
	str += zeroFix(date.getHours()) + ":";
	str += zeroFix(date.getMinutes()) + " ";
	
	str += zeroFix(date.getDate()) + "/";
	str += zeroFix((date.getMonth()+1))+ "/";
	str += date.getFullYear();
	
	return str;
}

function zeroFix(number)
{
	var str = "";
	//
	str = "" + number + "";
	if(number < 10) str = "0" + number;
	//
	return str;
}

function init()
{
	var url="http://search.twitter.com/search.json?callback=showComment&q=from:dt0mj0p0&rpp=1";
	var s = document.createElement('script');
	var head = document.getElementsByTagName('head').item(0);
	
	s.setAttribute('type', 'text/javascript');
	s.setAttribute('src', url);
	s.setAttribute('charset', 'UTF-8');
	head.appendChild(s);
}
