/* info
-----------------------------------------------
Cascading JavaScript File for www.trash-news.net
FileName: common.js
Build:    2007.09.01
Author:   hachiman_cian
----------------------------------------------- */

Is_Fix = 0;

Is_ModernBlowser = CheckModernBlowser();
WindowsZeroPositionX = GetWindowsZeroPosition();

function JavaScriptGateway(){
	GetMousePositioninig();
	if(!window.AlreadyAction){
		AntiCrazyBlowser();
	}
}

function CheckModernBlowser(){
	if(window.XMLHttpRequest){
		if(window.ActiveXObject){
			// IE 7
			return 1;
		}else{
			// Opera, Safari, Firefox
			return 2;
		}
	}else{
		//IE 6 and below
		return 0;
	}
}

function GetMousePositioninig(){
	if(document.all){	// IE4 - IE7 && Opera
		document.onmousemove = GetMousePositioninig4IE;
	}else{				// Firefox2
		window.addEventListener("mousemove",GetMousePositioninig4FF,false);
	}
}

function GetInnerSize(Mode,Is_NoScrollBar){
	if(document.all){
		if(Mode == 'Width'){
			InnerSize = document.documentElement.clientWidth;
		}else{
			InnerSize = document.documentElement.clientHeight;
		}
		if(CheckModernBlowser() == 1 && Mode == 'Width' && Is_NoScrollBar == undefined){
			InnerSize -= 18;	// For IE7
		}
	}else{
		if(Mode == 'Width'){
			InnerSize = window.innerWidth;
		}else{
			InnerSize = window.innerHeight;
		}
		if(CheckModernBlowser() == 2 && Mode == 'Width' && Is_NoScrollBar == undefined){
			InnerSize -= 18;	// For FireFox
		}
	}
	if(!InnerSize){
		if(Mode == 'Width'){
			InnerSize = 1024;
		}else{
			InnerSize = 480;
		}
	}
	return InnerSize;
}

function GetWindowsZeroPosition(){
	WindowsZeroPositionX = Math.floor((GetInnerSize('Width') - 1002) / 2);
	if(WindowsZeroPositionX < 0){
		WindowsZeroPositionX = 0;
	}
	return WindowsZeroPositionX;
}

function GetScrollPosition(){
	return document.body.scrollTop || document.documentElement.scrollTop;
}

function JSSetCookie(Key,Val){
	exp = new Date();
	exp.setTime(exp.getTime()+1000*60*60*24*30*12);
	SetKey = escape(Key);
	SetVal = escape(Val);
	document.cookie = SetKey + "=" + SetVal + "; expires=" + exp.toGMTString() + "; path=/";
}
function JSGetCookie(Key){
	var Start, End;
	var CookieString = document.cookie + ";";
	var KeyPosition  = CookieString.indexOf(Key,0);
	if(KeyPosition != -1){
		CookieString = CookieString.substring(KeyPosition,CookieString.length);
		Start = CookieString.indexOf("=",0) + 1;
		End = CookieString.indexOf(";",Start);
		return(unescape(CookieString.substring(Start,End)));
	}
	return ("");
}

function OpenLayer(LayName){
	TargetLayer = document.getElementById(LayName);
	TargetLayer.style.display = (TargetLayer.style.display == "block") ? "none" : "block";
}
function OpenTopMenuList(LayNumber){
	if(!document.getElementById('SiteToolList')){
		return;
	}
	LayerLength = 4;
	Is_NeedFix = 0;
	for(i=1;i<=LayerLength;i++){
		TargetLayerID = 'JS_TopMenuList-' + i;
		TargetLayer = document.getElementById(TargetLayerID);
		if(i == LayNumber || LayNumber == 0){
			if(TargetLayer.style.display == "block"){
				TargetLayer.style.display = "none";
				if(Is_ModernBlowser == 0){
					TargetLayer.style.position = "static";
				}
			}else{
				TargetLayer.style.display = "block";
				Is_NeedFix = 1;
				if(Is_ModernBlowser == 0){
					TargetLayer.style.position = "absolute";
					TopMenuListPositionLeft = 30 + (i - 1) * 90;
					TargetLayer.style.left = TopMenuListPositionLeft + "px";
					TargetLayer.style.top = "75px";
				}
			}
		}else{
			TargetLayer.style.display = "none";
		}
	}
	if(LayNumber == 0){
		TargetLayer = document.getElementById('JS_TopMenuList-0');
		TargetLayer.style.backgroundPosition = (TargetLayer.style.backgroundPosition == "right -30px") ? "right top" : "right -30px";
	}
	if(Is_NeedFix){
		window.Is_Fix = 1;
	}else{
		window.Is_Fix = 0;
	}
}
function OpenSiteToolList(){
	if(!document.getElementById('SiteToolList')){
		return;
	}
	TargetLayer = document.getElementById('SiteToolBody');
	TargetLayer.style.display = (TargetLayer.style.display == "block") ? "none" : "block";
	if(Is_ModernBlowser == 0){
		TargetLayer.style.position = "absolute";
	}
	window.Is_Fix = (window.Is_Fix == 1) ? 0 : 1;
}

function OpenNoticeReport(){
	if(Is_ModernBlowser == 0){
		OpenLayer('NoticeReportBody');
		TargetLayer = document.getElementById('NoticeReportBody');
		TargetLayer.style.position = (TargetLayer.style.position == "") ? "absolute" : "";
	}else{
		OpenLayer('NoticeReportBody');
	}
	TargetLayer = document.getElementById('NoticeReportTitle');
	TargetLayer.style.backgroundPosition = (TargetLayer.style.backgroundPosition == "left -30px") ? "left top" : "left -30px";
}

function OpenExtraInformation(ConsoleLayer,Text_Open,Text_Close){
	TargetLayer = document.getElementById('SiteInformationArea');
	TargetLayer.style.display = (TargetLayer.style.display == "block" || !TargetLayer.style.display) ? "none" : "block";
	TargetLayer = document.getElementById('MyInformationArea');
	TargetLayer.style.display = (TargetLayer.style.display == "block" || !TargetLayer.style.display) ? "none" : "block";

	if(TargetLayer.style.display == "none"){
		Is_NotOpenExtraInformation = 1;
		ConsoleLayer.innerHTML = Text_Open;
	}else{
		Is_NotOpenExtraInformation = 0;
		ConsoleLayer.innerHTML = Text_Close;
	}
	JSSetCookie("NotOpen_ExtraInformation",Is_NotOpenExtraInformation);
}

function OpenSubCategoryList(LayName,Button){
	TargetLayer = document.getElementById(LayName);
	TargetLayer.style.display = "block";
	Button.style.display = "none";
}

function SummonTopNomble(AbsolutePositionY,RelativePositionY){
	if(Is_ModernBlowser == 0){return;}
	TargetLayer = document.getElementById('TopNomble');
	BodyLayer = document.getElementById('TOP');
	if(AbsolutePositionY < 54 && RelativePositionY > 54 || window.Is_Fix){
		TargetLayer.style.position = "fixed";
		TargetLayer.style.top = 0;
		TargetLayer.style.left = WindowsZeroPositionX + "px";
		BodyLayer.style.paddingTop = "76px";
	}else{
		TargetLayer.style.position = "static";
		TargetLayer.style.top = "";
		TargetLayer.style.left = "";
		BodyLayer.style.paddingTop = "0px";
	}
}

function FixTopNomble(Flag){
	if(Flag){
		window.Is_Fix = 1;
	}else{
		window.Is_Fix = 0;
	}
}

function SummonBottomNomble(){
	if(Is_ModernBlowser == 0){return;}
	TargetLayer = document.getElementById('BottomNomble');
	TargetLayer.style.display = (TargetLayer.style.display == "block") ? "none" : "block";
	TargetLayer.style.position = (TargetLayer.style.position == "fixed") ? "static" : "fixed";
}

function HereComesABOSS(){
	TargetLayer = document.getElementById('TotalContainer');
	var HTMLSource = TargetLayer.innerHTML;
	if(HTMLSource.search(/</i) != -1){
		HTMLSource = HTMLSource.replace(/&lt;/g,"&amp;lt;").replace(/&gt;/g,"&amp;gt;");
		HTMLSource = HTMLSource.replace(/</g,"&lt;").replace(/>/g,"&gt;");
	}else{
		HTMLSource = HTMLSource.replace(/&amp;lt;/g,"&lt;").replace(/&amp;gt;/g,"&gt;");
		HTMLSource = HTMLSource.replace(/&lt;/g,"<").replace(/&gt;/g,">");
	}
	TargetLayer.innerHTML = HTMLSource;
}

function GetMousePositioninig4IE(){
	var AbsolutePositionY = window.event.clientY;
	var RelativePositionY = document.body.scrollTop || document.documentElement.scrollTop;
	SummonTopNomble(AbsolutePositionY,RelativePositionY);
}

function GetMousePositioninig4FF(evt){
	var AbsolutePositionY = evt.clientY;
	var RelativePositionY = document.body.scrollTop || document.documentElement.scrollTop;
	SummonTopNomble(AbsolutePositionY,RelativePositionY);
}

function OnmouseSiteToolList(TargetLayer,Is_OnMouse){
	if(TargetLayer.style.backgroundColor != "#ccddff"){
		if(Is_OnMouse){
			TargetLayer.style.backgroundColor = "#ddeeff";
		}else{
			TargetLayer.style.backgroundColor = "#ffffff";
		}
	}
}

function AlterFontSize(Size,Is_FromForm){
	Is_ValidArgument = 0;
	FontSizeTypeArray = new Array('10px','12px','14px');
	TargetLayerIDBase = "JS_AlterFontSize_";
	if(Is_FromForm == 1){
		TargetLayerIDBase += "Form_";
	}
	for(var i in FontSizeTypeArray){
		TargetLayer = document.getElementById(TargetLayerIDBase + FontSizeTypeArray[i]);
		TargetLayer.style.backgroundColor = "#ffffff";
		if(FontSizeTypeArray[i] == Size){
			Is_ValidArgument = 1;
		}
	}
	if(!Is_ValidArgument){
		return;
	}
	BodyLayer = document.getElementById('TOP');
	BodyLayer.style.fontSize = Size;
	TargetLayer = document.getElementById(TargetLayerIDBase + Size);
	TargetLayer.style.backgroundColor = "#ccddff";
	JSSetCookie("FontSize",Size);
}
function AlterFontFamily(FamilyName,FamilyNumber){
	Is_ValidArgument = 0;
	FontFamilyTypeArray = new Array('1','2','3');
	TargetLayerIDBase = "JS_AlterFontFamily_Form_";
	for(var i in FontFamilyTypeArray){
		TargetLayer = document.getElementById(TargetLayerIDBase + FontFamilyTypeArray[i]);
		TargetLayer.style.backgroundColor = "#ffffff";
		if(FontFamilyTypeArray[i] == FamilyNumber){
			Is_ValidArgument = 1;
		}
	}
	if(!Is_ValidArgument){
		return;
	}
	BodyLayer = document.getElementById('TOP');
	BodyLayer.style.fontFamily = "'" + FamilyName + "'," + BodyLayer.style.fontFamily;
	TargetLayer = document.getElementById(TargetLayerIDBase + FamilyNumber);
	TargetLayer.style.backgroundColor = "#ccddff";
	JSSetCookie("FontFamily",FamilyNumber);
}


function AlterColumnsLayout(AlterColumnsType){
/*	// CSS Rendaring Error ? (Maybe "Cause of Order")

	TargetLayer_1 = document.getElementById('BodyColumns_Main');
	TargetLayer_2 = document.getElementById('BodyColumns_Extra_Base');
	TargetLayer_3 = document.getElementById('BodyColumns_BottomSide_Base');

	// At First, Reset to Default Settings
	TargetLayer_1.style.marginLeft = "198px";
	TargetLayer_1.style.marginRight = "238px";
	TargetLayer_2.style.clear = "none";
	TargetLayer_2.style.float = "left";
	TargetLayer_2.style.marginRight = "0px";
	TargetLayer_3.style.display = "block";

	switch(AlterColumnsType){
		case 2 : 
			TargetLayer_1.style.marginLeft = "0px";
			TargetLayer_2.style.clear = "right";
			TargetLayer_2.style.float = "right";
			TargetLayer_2.style.marginRight = "15px";
			TargetLayer_3.style.display = "none";
			break;
		case 3.1 : 
			TargetLayer_1.style.marginLeft = "0px";
			TargetLayer_1.style.marginRight = "420px";
			TargetLayer_2.style.float = "right";
			TargetLayer_2.style.marginRight = "10px";
			TargetLayer_3.style.display = "none";
			break;
		case 3 : 
		default : 
			AlterColumnsType = 3;
			break;
	}
*/
	if(Is_ModernBlowser == 1 && AlterColumnsType == 3.1){
		return;
	}
	JSSetCookie("ColumnsLayout",AlterColumnsType);
	location.reload();
}

function TouchWindowConsole(Mode){
	TargetLayer = document.getElementById('WindowConsole');
	switch(Mode){
		case 0 : 
			TargetLayer.style.backgroundPosition = '0px 0px';
			break;
		case 1 : 
			TargetLayer.style.backgroundPosition = '0px -100px';
			break;
		case 2 : 
			TargetLayer.style.backgroundPosition = '0px -200px';
			break;
		case 3 : 
			TargetLayer.style.backgroundPosition = '0px -300px';
			break;
	}
}

function ActWindowConsole(Mode){
	switch(Mode){
		case 0 : 
			break;
		case 1 : 
			TargetLayer = document.getElementsByTagName('Body');
			if(TargetLayer[0].style.marginTop == 0){
				TargetLayer[0].style.marginTop = GetScrollPosition() + screen.availHeight + "px";
			}else{
				TargetLayer[0].style.marginTop = 0;
			}
			break;
		case 2 : 
/*			window.moveTo(0,0);
			window.resizeTo(screen.availWidth,screen.availHeight);	*/
			GoTopWithScrolling();
/*			SummonBottomNomble();*/
			break;
		case 3 : 
			HereComesABOSS();
			break;
	}
}

function AntiCrazyBlowser(){
	if(Is_ModernBlowser == 1){
		if(TargetLayer = document.getElementById('JS_AlterColumnsLayout_3.1')){
			TargetLayer.style.backgroundColor = "#dddddd";
			TargetLayer.style.backgroundImage = "none";
			TargetLayer.style.color = '#999999';
			TargetLayer.innerHTML = "<del>" + TargetLayer.innerHTML + "</del>(x IE7)";
		}
	}else if(Is_ModernBlowser == 0){
		if(TargetLayer = document.getElementById('JS_AlterColumnsLayout_2')){
			TargetLayer.innerHTML = "<del>" + TargetLayer.innerHTML + "</del>(x IE6)";
			TargetLayer = document.getElementById('JS_AlterColumnsLayout_3');
			TargetLayer.innerHTML = "<del>" + TargetLayer.innerHTML + "</del>(x IE6)";
			TargetLayer = document.getElementById('JS_AlterColumnsLayout_3.1');
			TargetLayer.innerHTML = "<del>" + TargetLayer.innerHTML + "</del>(x IE6)";
		}
	}
	window.AlreadyAction = 1;
}

function GoTopWithScrolling(){
	var NowPositionY = GetScrollPosition();
	window.scrollTo(0,Math.floor(NowPositionY * 0.8));
	if(NowPositionY > 0) {
		window.setTimeout("GoTopWithScrolling()",10);
		return false;
	}else{
		return true;
	}
}

function SwitchMyInformationList(TargetThis,TabID){
	if(TargetThis.getElementsByTagName('span')){
		TargetLayerParent = document.getElementById("MyInformationList");
		TargetLayerArray = TargetLayerParent.getElementsByTagName('dt');
		for(i = 0; i < TargetLayerArray.length; i++){
			TargetLayerData = TargetLayerArray[i].getElementsByTagName('strong');
			if(TargetLayerData[0]){
				TargetLayerString = TargetLayerData[0].innerHTML;
				TargetLayerArray[i].innerHTML = "<span>" + TargetLayerString + "</span>";
				TargetLayer = document.getElementById('MyInformationListPage_' + i);
				TargetLayer.style.display = "none";
				break;
			}
		}
		TargetLayer = TargetThis.getElementsByTagName('span');
		TargetThis.innerHTML = "<strong>" + TargetLayer[0].innerHTML + "</strong>";
		TargetLayer = document.getElementById('MyInformationListPage_' + TabID);
		TargetLayer.style.display = "block";
	}else{
		return false;
	}
}

function OpenImagePopup(Image){
	ImagePageLink = Image.src.replace(/\-thumb\-.+/g,".html");
	window.open(ImagePageLink,'popup','width=640,height=480,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=50,top=50');
	return false;
}
function OpenSubWindowPopup(SubWindowLink){
	window.open(SubWindowLink,'popup','width=640,height=480,scrollbars=yes,resizable=yes,toolbar=yes,directories=no,location=no,menubar=yes,status=yes,left=50,top=50');
	return false;
}

