
//-------------------------
// public メンバ
//-------------------------

function adjustSize(kind){
	winWid = getWindowWidth();
	winHei = getWindowHeight();
	switch (kind){
		case "text":
			adjustTextSize();
		break;
		case "publications":
			adjustPublicationSize();
		break;
	}
}

//-------------------------
// purivate メンバ
//-------------------------


function adjustTextSize(){
	// 高さ
	var headObj = document.getElementById("head");
	var scale = calcScale();
	var margin = calcBaseLine(scale) - FLASH_HEIGHT;
	var contenaObj = document.getElementById("contena");
	contenaObj.style.marginTop = margin + "px";
	// 横
	var wallObj = document.getElementById("wallpaper");
	//wallObj.style.textAlign = "right";
	var marginR = winWid - rightOffset() - 15;	// ずれるので、15px右にずらす
	contenaObj.style.marginRight = marginR + "px";
	
	// タイトル下マージン
	var h1Obj = document.getElementsByTagName("h1");
	var marginH1 = Math.floor(scale * 20);
	h1Obj[0].style.marginBottom = marginH1 + "px";
}

function adjustPublicationSize(){
	LEFT_BALANCE = 849;
	LEFT_YOKONAGA_BALANCE = 829;
	OFFSET_RIGHT = 51;
	// 高さ
	var headObj = document.getElementById("head");
	var scale = calcScale();
	var margin = calcBaseLine(scale) - FLASH_HEIGHT;
	var contenaObj = document.getElementById("contena");
	contenaObj.style.marginTop = margin + "px";
	// 幅
//	contenaObj.style.width = (winWid - (158 * 2 + 15)) + "px";
	// 横
//	var marginR = winWid - rightOffset();
//	contenaObj.style.marginRight = marginR + "px";
//	contenaObj.style.marginLeft = "auto";

	// タイトル下マージン
	var h1Obj = document.getElementsByTagName("h1");
	var marginH1 = Math.floor(scale * 28);
	h1Obj[0].style.marginBottom = marginH1 + "px";
}

function calcScale(){
	// 幅によってサイズを かえる
	if(winWid > ORGINAL_STAGE_W){				// デフォルトより大きいときは、画面にあわせてサイズを変える
		// 幅のバランスからサイズを割り出す
		var stageW = Math.min(winWid, RESIZE_MAX_W);		// 幅サイズ制限
		var sizeW = stageW/ORGINAL_STAGE_W;
		// 高さのバランスからサイズを割り出す
		var stageH = Math.min(winHei, RESIZE_MAX_H);		// 高さサイズ制限
		var sizeH = stageH/ORGINAL_STAGE_H;
		if(sizeH < sizeW){
			balanceHeiWid = BALANCE_HEI;
			return sizeH;
		}else{
			balanceHeiWid = BALANCE_WID;
			return sizeW;
		}
	}
	return 1;
}

function calcBaseLine(scale){
	var add_y = ADD_Y;
	if(isYokonaga() && winWid < 1440) add_y = ADD_Y * 2/29;
	return Math.floor(OFFSET_Y + (scale * ORGINAL_STAGE_W - ORGINAL_STAGE_W) * add_y);
}

function isYokonaga(){					// 画面が横長
	return (winWid/winHei > 1230/748);
}

function rightOffset(){
	if(balanceHeiWid == BALANCE_WID){
		return Math.floor(winWid - OFFSET_RIGHT - (winWid - ORGINAL_STAGE_W) * ADD_RIGHT);
	}else{
		var barance = LEFT_BALANCE;
		if(isYokonaga()) barance = LEFT_YOKONAGA_BALANCE;	// 画面が横長
		return Math.floor(winWid * barance / 900);
	}
}


// 定数
var OFFSET_Y = 74;
var ADD_Y = 21/(1280 - 900);		// 画面の大きさに合わせて、y座標を大きくするパラメータ
var ORGINAL_STAGE_W = 900;			// リサイズ最大最小値
var ORGINAL_STAGE_H = 596;
var RESIZE_MAX_W = 1440;
var RESIZE_MAX_H = 900;
var FLASH_HEIGHT = 69;

// 使うのは右寄せのみ
var ADD_RIGHT = 29/(1280 - 900);		// 画面の大きさに合わせて、右余白を大きくするパラメータ
var OFFSET_RIGHT = 113;

var balanceHeiWid;
var BALANCE_HEI = 0;
var BALANCE_WID = 1;
var LEFT_BALANCE = 787;
var LEFT_YOKONAGA_BALANCE = 787;


// 変数
var winWid, winHei;

///////////////////////////////// クラスブラウザ
// ウィンドウの内幅
function getWindowWidth(){
	if(window.innerWidth) return window.innerWidth; // Mozilla, Opera, NN4
	if(document.documentElement && document.documentElement.clientWidth){ // 以下 IE
		return document.documentElement.clientWidth;
	}
	else if(document.body && document.body.clientWidth){
		return document.body.clientWidth;
	}
	return 0;
}

// ウィンドウの内高
function getWindowHeight(){
	if(window.innerHeight) return window.innerHeight; // Mozilla, Opera, NN4
	if(document.documentElement && document.documentElement.clientHeight){ // 以下 IE
		return document.documentElement.clientHeight;
	}
	else if(document.body && document.body.clientHeight){
		return document.body.clientHeight;
	}
	return 0;
}
