var Status;

var yOffset;
var xOffset;

var isWin9X = (navigator.appVersion.toLowerCase().indexOf('windows 98')+1);
var isIE = (navigator.appName.toLowerCase().indexOf('internet explorer')+1?1:0);
var isOpera = (navigator.userAgent.toLowerCase().indexOf('opera')+1?1:0);
if (isOpera) isIE = false;
var isSafari = (navigator.appVersion.toLowerCase().indexOf('safari')+1?1:0);


// スクロール量 ---------------------------------
function getScrollPosition() {
	var obj = new Object();

	obj.x = document.documentElement.scrollLeft || document.body.scrollLeft;
	obj.y = document.documentElement.scrollTop  || document.body.scrollTop;

	if(isSafari){
//		obj.x = document.body.scrollLeft;
//		obj.y = document.body.scrollTop;
	}
	
	return obj;
}

// 表示領域サイズ -------------------------------		
function getScreenSize() {
	var obj = new Object();

	if (!isSafari && !isOpera) {
		obj.x = document.documentElement.clientWidth  || document.body.clientWidth  || document.body.scrollWidth;
		obj.y = document.documentElement.clientHeight || document.body.clientHeight || document.body.scrollHeight;
	}
	else {
		obj.x = window.innerWidth;
		obj.y = window.innerHeight;
	}
	
	obj.mx = parseInt((obj.x)/2);
	obj.my = parseInt((obj.y)/2);

	return obj;
}

// マウス位置 -------------------------------		
function getMousePosition(e) {
	var obj = new Object();
	
	if(e) {
		obj.msx = e.pageX;
		obj.msy = e.pageY;
	}
	else {
		obj.msx=event.clientX+(document.body.scrollLeft || document.documentElement.scrollLeft);
		obj.msy=event.clientY+(document.body.scrollTop || document.documentElement.scrollTop);
	}

	return obj;
}

function setValue(){
	window.document.onmousemove = function(e){
		var SETX = getScreenSize().mx + getScrollPosition().x - getMousePosition(e).msx;
		var SETY = getScreenSize().my + getScrollPosition().y - getMousePosition(e).msy;
		if(SETX >= 0 && SETY >= 0) {
			xOffset = 20;
			yOffset = -20;
			Status = 1;
		}
		else if(SETX >= 0 && SETY < 0) {
			xOffset = 20;
			yOffset = -380;
			Status = 2;
		}
		else if(SETX < 0 && SETY >= 0) {
			xOffset = -390;
			yOffset = -20;
			Status = 3;
		}
		else {
			xOffset = -390;
			yOffset = -380;
			Status = 4;
		}
	}
	setTimeout( function(){setValue()},100 );
}




/*		if(status == 1) {
			yOffset = 20;
			xOffset = 20;
		}
		else if(status == 2) {
			yOffset = 20;
			xOffset = -380;
		}
		else if(status == 3) {
			yOffset = -380;
			xOffset = 20;
		}
		else(status == 4) {
			yOffset = -380;
			xOffset = -380;
		}*/

 
this.screenshotPreview = function(){	
	/* CONFIG */
		// these 2 variable determine popup's distance from the cursor
		// you might want to adjust to get the right result

	/* END CONFIG */
	$("a.screenshot").hover(function(e){																												
		this.t = this.title;
		this.title = "";	
		var c = (this.t != "") ? "" + this.t : "";
		$("body").append("<div id='screenshot'><table><tr><td id='status"+ Status +"'><table border='0' cellspacing='0' cellpadding='0'><tr><td><img src='"+ this.rel +"' alt='url preview' /></td></tr><tr><td>"+ c +"</td></tr></table></td></tr></table></div>");								 
		$("#screenshot")
			.css("top",(e.pageY + yOffset) + "px")
			.css("left",(e.pageX + xOffset) + "px")
			.fadeIn("fast");						
    },
	function(){
		this.title = this.t;	
		$("#screenshot").remove();
    });	
	$("a.screenshot").mousemove(function(e){
		$("#screenshot")
			.css("top",(e.pageY + yOffset) + "px")
			.css("left",(e.pageX + xOffset) + "px");
	});			
};


// starting the script on page load
$(document).ready(function(){
	screenshotPreview();
});





