/**
 * PopupTitle.js
 * Powered by hisato http://chibinowa.net/
 */

var PopupTitle = {

	/* マウスからタイトルウィンドウまでのマージンX */
	margin_x: -320,

	/* マウスからタイトルウィンドウまでのマージンY */
	margin_y: -100,

	/* 最初のアルファ値 [0.1〜1] 0だとフェードインしない */
	startalpha: 0.1,

	/* startalphaが1以下の場合この数値まで増加させます [0.1〜1] */
	stopalpha: 1,

	/* マウスが動くたびに座標補正する(マウスにくっついて来る) [true|false] */
	remover: true,


	fi_timer: null,

	// 開くメイン
	open: function(e, obj)
	{
		var o_display = document.getElementById("MessageDummy");

		if (!obj) return;

		var msg_name = obj.text ? obj.text : (obj.innerText ? obj.innerText : "");
		var msg_title = obj.title ? obj.title : "";

		var messsage = "<strong>" + msg_name + "</strong>";
			messsage+= "<p>"+ msg_title + "</p>";

		obj.tmp_title = obj.title;
		obj.title = "";

		PopupTitle.remove(e);
		o_display.innerHTML = messsage;
		o_display.style.display = "block";

		if (ObFade.init(o_display, this.startalpha)) {
			this.fi_timer = setInterval("PopupTitle.fadein()", 15);
		}

		if (this.remover) {
			if (obj.addEventListener)
				obj.addEventListener("mousemove", PopupTitle.remove, false);
			else if (obj.attachEvent)
				obj.attachEvent("onmousemove", PopupTitle.remove);
		}
	},

	// 閉じるメイン
	close: function(obj)
	{
		var o_display = document.getElementById("MessageDummy");
		obj.title = obj.tmp_title;
		o_display.style.display = "none";
		this.clearFadeinTimer();
	},

	// 座標補正
	remove: function(e)
	{
		var o_display = document.getElementById("MessageDummy");

		var mouse_x = MousePos.getMousePosX(e);
		var mouse_y = MousePos.getMousePosY(e);

		// 左右補正
		if ((o_display.offsetWidth+PopupTitle.margin_x < document.documentElement.clientWidth)
				&& (hamihami = (mouse_x + PopupTitle.margin_x + o_display.offsetWidth - document.documentElement.clientWidth)) > -1) {
			o_display.style.left = mouse_x - hamihami + "px";
		}
		else {
			o_display.style.left = mouse_x + PopupTitle.margin_x + "px";
		}
		o_display.style.top  = mouse_y + PopupTitle.margin_y + "px";

	},

	// フェードイン
	fadein: function()
	{
		if (!ObFade.fadein(document.getElementById("MessageDummy"), this.stopalpha, 1.2)) {
			this.clearFadeinTimer();
		}
	},

	// フェード用タイマーをクリア
	clearFadeinTimer: function()
	{
		if (this.fi_timer) {
			clearInterval(this.fi_timer);
		}
	}

};

