/***********************************************************
* uts_iframe.js for utsuru.jp
* 
* 
* 
* 
***********************************************************/
//SWFobject
swfobject.embedSWF("./common/swf/utsuru.swf", "flashContents", "1050", "750", "9.0.0.0", "./common/swf/expressInstall.swf",null,{allowScriptAccess:'sameDomain',wmode:'transparent'});

//openFramePage framework
var openFramePage;
var nowPreloaded = "";
(function() {
var config = {
	target: "contents",
	width: 600, //px
	height: 750,//px
	pos_x: 316, //px
	pos_y: 0  //px
}

//utility shortcut
var $d = function(id) {
	if(!document.getElementById(id)) return false;
	return document.getElementById(id);
}

//setting
var targetUrl = function(target) {
	switch(target) {
		case "news":
		return "http://utsuru0821.blog35.fc2.com/blog-category-0.html";
		break;
		
		case "seisaku":
		return "http://utsuru0821.blog35.fc2.com/blog-category-1.html";
		break;
		
		case "campaign":
		return "http://utsuru0821.blog35.fc2.com/blog-category-2.html";
		break;
		
		default:
		return "http://utsuru0821.blog35.fc2.com/";
	}
}

//remove iframe
var removeFramePage = function() {
	nowPreloaded = "";
	if(!$d("utsIframeWrapper")) return;
	var utsIframeWrapper = $d("utsIframeWrapper");
	utsIframeWrapper.style.top="-9999em";
	utsIframeWrapper.style.left="-9999em";
	var allIframes = utsIframeWrapper.getElementsByTagName("iframe");
	for(var i=0;i<allIframes.length;i++) {
		allIframes[i].style.height = "1px";
		allIframes[i].style.width  = "1px";
		allIframes[i].style.display  = "none";
	}
	return this;
};

//first preload iframe wrapper
var preloadFramePage = function(target) {
	var dummyblock = document.createElement("div");
	dummyblock.innerHTML = '<div id="utsIframeWrapper" style="position: absolute; top: -9999em; left: -9999em; width: 1px; height: 1px;"><iframe scrolling="auto" id="utsIframeBody_news" src="http://utsuru0821.blog35.fc2.com/blog-category-0.html" style="width: 600px; height: 750px; position: absolute; top: 0; left: 0;display:none;"></iframe><iframe scrolling="auto" id="utsIframeBody_campaign" src="http://utsuru0821.blog35.fc2.com/blog-category-2.html" style="width: 600px; height: 750px; position: absolute; top: 0; left: 0;display:none;"></iframe><iframe scrolling="auto" id="utsIframeBody_seisaku" src="http://utsuru0821.blog35.fc2.com/blog-category-1.html" style="width: 600px; height: 750px; position: absolute; top: 0; left: 0;display:none;"></iframe></div>'
	$d(config.target).appendChild(dummyblock);
	return $d("utsIframeWrapper");
};

//first preload iframe body
var preloadFrameBody = function(target) {
	nowPreloaded = target;

		if(window.ActiveXObject)
		$d("utsIframeBody_"+target).contentWindow.location.replace(targetUrl(target));

	return $d("utsIframeBody_"+target);
}

//display iframe
var displayFramePage = function(targetEnd) {
	var target = nowPreloaded;
	if(!$d("utsIframeWrapper")) preloadFramePage(target);
	var targetWrapper = $d("utsIframeWrapper");
	var targetBody    = $d("utsIframeBody_"+target);
	
	
	targetWrapper.style.width    = config.width+"px";
	targetWrapper.style.height   = config.height+"px";
	targetWrapper.style.top      = config.pos_y+"px";
	targetWrapper.style.left     = config.pos_x+"px";
	
	targetBody.style.width    = config.width+"px";
	targetBody.style.height   = config.height+"px";
	targetBody.style.top      = "0px";
	targetBody.style.left     = "0px";
	targetBody.style.display  = "block";
	
	var allIframes = targetWrapper.getElementsByTagName("iframe");
	var flag = false;
	for(var i=0;i<allIframes.length;i++) {
		if(allIframes[i].style.display == "block") flag = true;
	}
	if(!flag) displayFramePage(targetEnd);
	
	
	nowPreloaded = "";
	
	return target;
};
var debug_log = function(string) {
	if(!$d("debug_log")) return;
	$d("debug_log").innerHTML = $d("debug_log").innerHTML+"<br />"+string;
	return this;
}
openFramePage = function(target,status) {
	//bind preload
	if(status == "preload") {
		removeFramePage();
		preloadFramePage();
		preloadFrameBody(target);
	}
	//bind display 
	else if(status == "display") {
		displayFramePage(target);
	}
	else if(target == "remove") {
		removeFramePage();
	}
	//not match
	else {
		return false;
	}
	//end of function
	return;
};

})();