//	--------------------------------------------------------------------------------------//
//		Setup
//	--------------------------------------------------------------------------------------//
var contentsRoot = 'http://www.mascaramagazine.com/';
//		Import
document.write('<script type="text/javascript" src="http://www.mascaramagazine.com/blogtool/koi_uranai/js/JavaScriptFlashGateway.js"></script>');
document.write('<script type="text/javascript" src="http://www.mascaramagazine.com/common/js/swfobject.js"></script>');
//	--------------------------------------------------------------------------------------//
//		INIT
//	--------------------------------------------------------------------------------------//
function koi_uranai_init(_w, _h ,_htmlcall, _quickstart ){
	//	--------------------------------------------------------------------------------------//
	//		* Setup
	//	--------------------------------------------------------------------------------------//
	var projectName = 'koi_uranai';
	//	--------------------------------------------------------------------------------------//
	//		Options
	//	--------------------------------------------------------------------------------------//
	//	Global options
	var bHideScrollBar = true;
	var bHideScrollBar_excludeFirefox = false;
	
	//	Blogparts options
	var blogpartsName = 'blogparts';
	var bSingleSWF = true;
	var bTransparentBlogparts = true;
	var blogpartsBackgroundColor = '#FFFFFF';
	
	//	Fullscreen options
	var fullscreenSWFName = 'effect.swf';
	var fullscreenContainerDepth = '10001';
	
	
	//	Main options
	var mainFullscreenSWFName = 'main.swf';
	var mainFullscreenContainerDepth = '10000';
	//	Auto start (mille second)
	var autoStartTime = 100;	
	//	--------------------------------------------------------------------------------------//
	//		UNIQUE
	//	--------------------------------------------------------------------------------------//
	this[projectName + '_' + _w] = new Object();
	var myProject_Object = this[projectName + '_' + _w];
	myProject_Object.objectName = projectName + '_' + _w;
	myProject_Object.contentsRoot = contentsRoot+'blogtool/koi_uranai/'; // ここを直書き
	myProject_Object.bHideScrollBar = bHideScrollBar;
	myProject_Object.bHideScrollBar_excludeFirefox = bHideScrollBar_excludeFirefox;
	myProject_Object.blogpartsBackgroundColor = blogpartsBackgroundColor;
	myProject_Object.bTransparent = bTransparentBlogparts;
	myProject_Object.bSingleSWF = bSingleSWF;
	myProject_Object.fullscreenContainerDepth = fullscreenContainerDepth;
	
	myProject_Object.mainFullscreenContainerDepth = mainFullscreenContainerDepth;
	//	--------------------------------------------------------------------------------------//
	//		PROXY
	//	--------------------------------------------------------------------------------------//
	//	Project name
	myProject_Object.projectName = projectName;
	
	//	BlogParts swf name
	myProject_Object.blogpartsName = blogpartsName;
	//	Blogparts id	
	myProject_Object.blogpartsID = myProject_Object.projectName + '_' + myProject_Object.blogpartsName + '_' + _w;
	//	Blogparts name full (blogparts_suffix.swf)
	if (myProject_Object.bSingleSWF) {
		myProject_Object.blogpartsNameFull = myProject_Object.blogpartsName + '.swf';
	}
	else {
		myProject_Object.blogpartsNameFull = myProject_Object.blogpartsName + '_' + _w + '.swf';
	}
	//	Blogparts unique
	myProject_Object.blogpartsUnique = myProject_Object.blogpartsName + '_' + _w + '_' + new Date().getTime();
	//	Blogparts proxy
	myProject_Object.pxyBlogparts = new FlashProxy(myProject_Object.blogpartsUnique, myProject_Object.contentsRoot + 'swf/JavaScriptFlashGateway.swf');
	
	//	Fullscreen name
	myProject_Object.fullscreenName = 'effect';
	//	Fullscreen id
	myProject_Object.fullscreenID = myProject_Object.projectName + '_' + myProject_Object.fullscreenName;
	//	Fullscreen name full (fullscreen.swf)
	myProject_Object.fullscreenNameFull = fullscreenSWFName;
	//	Fullscreen unique
	myProject_Object.fullscreenUnique = myProject_Object.fullscreenName + '_' + new Date().getTime();
	//	Fullscreen proxy
	myProject_Object.pxyFullscreen = new FlashProxy(myProject_Object.fullscreenUnique, myProject_Object.contentsRoot + 'swf/JavaScriptFlashGateway.swf');
	
	
	//	MainFullscreen name
	myProject_Object.mainFullscreenName = 'main';
	//	MainFullscreen id
	myProject_Object.mainFullscreenID = myProject_Object.projectName + '_' + myProject_Object.mainFullscreenName;
	//	MainFullscreen name full (fullscreen.swf)
	myProject_Object.mainFullscreenNameFull = mainFullscreenSWFName;
	//	MainFullscreen unique
	myProject_Object.mainFullscreenUnique = myProject_Object.mainFullscreenName + '_' + new Date().getTime();
	//	MainFullscreen proxy
	myProject_Object.pxyMainFullscreen = new FlashProxy(myProject_Object.mainFullscreenUnique, myProject_Object.contentsRoot + 'swf/JavaScriptFlashGateway.swf');
	
	
		
	myProject_Object.quickstart = _quickstart;
	myProject_Object.htmlcall = _htmlcall;
	

	myProject_Object.otherSwfContainerList = new Array();
	myProject_Object.bNotResize = false;
	myProject_Object.movieWidth = _w;
	myProject_Object.movieHeight = _h;
	myProject_Object.bIE = /*@cc_on!@*/ false;
	myProject_Object.ua = navigator.userAgent;
	myProject_Object.bSafari = (myProject_Object.ua.indexOf('Safari') != -1);
	if (myProject_Object.ua.indexOf('Windows') > -1) {
		myProject_Object.bWin = true;
	}
	if (myProject_Object.ua.match(/Gecko/)) {
		if (myProject_Object.ua.match(/(Firebird|Firefox)\/([\.\d]+)/)) {
			myProject_Object.bFoxy = true;
		}
	}
	if (window.opera) {
		myProject_Object.bOpera = true;
	}
	if (myProject_Object.bIE && typeof document.body.style.maxHeight != 'undefined') {
		myProject_Object.bIE7 = true;
	}
	myProject_Object.body = document['CSS1Compat' == document.compatMode ? 'documentElement' : 'body'];
	//	--------------------------------------------------------------------------------------//
	//		ATTACH BLOG PARTS
	//	--------------------------------------------------------------------------------------//
	var linkNodes = document.getElementsByTagName('LINK');
	var appliType = new Array('application/atom+xml', 'application/rss+xml', 'application/rsd+xml');
	var feedPath;
	var bFound = false;
	for(var i = 0; i<linkNodes.length; i++){
		for(var ii = 0; ii<appliType.length; ii++){
			if(linkNodes[i].getAttribute('type') == appliType[ii]){
				feedPath = linkNodes[i].getAttribute('href');
				bFound = true;
			}
		}
		if(bFound){
			break;
		}
	}
	
	myProject_Object.attachBlogparts = function(){
		this.bBlogpartsAppended = true;
		var htmlBuffer = this.blogpartsID;
		var so = new SWFObject(this.contentsRoot + 'swf/' + this.blogpartsNameFull, this.blogpartsID, this.movieWidth, this.movieHeight, '8', this.blogpartsBackgroundColor);
		so.addParam('allowScriptAccess', 'always');
		so.addVariable('lcId', myProject_Object.blogpartsUnique);
		so.addVariable('objectName', myProject_Object.objectName);
		so.addVariable('jsFullScreenOpenFunctionName', 'f2jsOpenFullscreen');
		so.addVariable('movieWidth', myProject_Object.movieWidth);
		if (this.bTransparent) {
			so.addParam('wmode', 'transparent');
		}
		so.addParam('menu', 'false');
		so.addVariable('feedPath', feedPath);
		so.write(htmlBuffer);
	}
	//	--------------------------------------------------------------------------------------//
	//		ATTACH FULLSCREEN
	//	--------------------------------------------------------------------------------------//
	myProject_Object.attachFullscreen = function(){
		var fullscreenContainer = document.createElement('div');
		fullscreenContainer.setAttribute('id', this.projectName + '_fullscreen');
		
		fullscreenContainer.style.zIndex = this.fullscreenContainerDepth;
		
		fullscreenContainer.style.position = 'absolute';
		fullscreenContainer.style.width = this.getWidth() + 'px';
		fullscreenContainer.style.height = this.getHeight() + 'px';
		document.body.appendChild(fullscreenContainer);
		var soFull = new SWFObject(this.contentsRoot + 'swf/' + this.fullscreenNameFull, this.fullscreenName, '100%', '100%', '8', '#E898A0');
		soFull.addParam('allowScriptAccess', 'always');
		soFull.addParam('wmode', 'transparent');
		soFull.addParam('menu', 'false');
		soFull.addVariable('lcId', myProject_Object.fullscreenUnique);
		soFull.addVariable('objectName', myProject_Object.objectName);
		soFull.addVariable('jsAttachMainFunctionName', 'f2jsOpenMainFullscreen');
		
		
		document.getElementById(myProject_Object.projectName + '_fullscreen').innerHTML = soFull.getSWFHTML();
		
		if (window.addEventListener) {
			window.addEventListener('resize', this.replaceResize, false);
			window.addEventListener('scroll', this.replaceResize, false);
		}
		if (window.attachEvent) {
			window.attachEvent('onresize', this.replaceResize);
			window.attachEvent('onscroll', this.replaceResize);
		}
		//
		this.replaceResize();
		//setTimeout(myProject_Object.replaceResize, 1000);
	}

	//	--------------------------------------------------------------------------------------//
	//		ATTACH MAIN
	//	--------------------------------------------------------------------------------------//
	myProject_Object.attachMain = function(){
		var mainContainer = document.createElement('div');
		mainContainer.setAttribute('id', this.projectName + '_main');
		mainContainer.style.zIndex = this.mainFullscreenContainerDepth;
		mainContainer.style.position = 'absolute';
		mainContainer.style.width = this.getWidth() + 'px';
		mainContainer.style.height = this.getHeight() + 'px';
		document.body.appendChild(mainContainer);
		/*if(this.bIE7){
			mainContainer.style.left = "-9999px";
			//this.bNotResize = true;
		}else	if(!this.bIE){
			mainContainer.style.visibility='hidden';
		}
		*/
		if(this.bIE7){
			mainContainer.style.left = "-9999px";

		}else	if(!this.bIE){
			mainContainer.style.visibility='hidden';
		}
		
		var soMain = new SWFObject(this.contentsRoot + 'swf/' + this.mainFullscreenNameFull, this.mainFullscreenName, '100%', '100%', '8', '#E898A0');
		soMain.addParam('allowScriptAccess', 'always');
		soMain.addParam('menu', 'false');
		soMain.addVariable('lcId', myProject_Object.mainFullscreenUnique);
		soMain.addVariable('objectName', myProject_Object.objectName);
		soMain.addVariable('jsMainFullScreenCloseFunctionName', 'f2jsCloseMainFullscreen');
		soMain.addVariable('jsSwitchMainFunctionName', 'f2jsSwitchMainFullscreen');

		document.getElementById(myProject_Object.projectName + '_main').innerHTML = soMain.getSWFHTML();
		
		if (window.addEventListener) {
			window.addEventListener('resize', this.replaceResize, false);
			window.addEventListener('scroll', this.replaceResize, false);
		}
		if (window.attachEvent) {
			window.attachEvent('onresize', this.replaceResize);
			window.attachEvent('onscroll', this.replaceResize);
		}
		
		this.replaceResize();
	}
	//	--------------------------------------------------------------------------------------//
	//		SWITCH
	//	--------------------------------------------------------------------------------------//
	myProject_Object.f2jsSwitchMainFullscreen = function(){
		var mainContainer = document.getElementById(myProject_Object.projectName + '_main');
		/*mainContainer.style.left = "0px";
		mainContainer.style.visibility='visible';*/
		if(myProject_Object.bIE7){
			mainContainer.style.left = "0px";
			setTimeout(function(){myProject_Object.removeFullscreen();}, 500);
			//myProject_Object.bNotResize = false;
		}else	if(!this.bIE){
			mainContainer.style.visibility='visible';
			setTimeout(function(){myProject_Object.removeFullscreen();}, 200);
		}
		myProject_Object.replaceResize();
	}
	//	--------------------------------------------------------------------------------------//
	//		REMOVE MAIN FULLSCREEN
	//	--------------------------------------------------------------------------------------//
	myProject_Object.removeMainFullscreen = function(){
		var mainContainer = document.getElementById(myProject_Object.projectName + '_main');
		while (mainContainer.firstChild) {
			mainContainer.removeChild(mainContainer.firstChild);
		}
		document.body.removeChild(mainContainer);
	}
	//	--------------------------------------------------------------------------------------//
	//		REMOVE FULLSCREEN
	//	--------------------------------------------------------------------------------------//
	myProject_Object.removeFullscreen = function(){
		var fullscreenContainer = document.getElementById(myProject_Object.projectName + '_fullscreen');
		while (fullscreenContainer.firstChild) {
			fullscreenContainer.removeChild(fullscreenContainer.firstChild);
		}
		document.body.removeChild(fullscreenContainer);
	}
	//	--------------------------------------------------------------------------------------//
	//		IN/VISIBLE OTHER OBJECT
	//	--------------------------------------------------------------------------------------//
	myProject_Object.hideOther = function(){
		this.hideOtherObject(document.getElementsByTagName('object'));
		this.hideOtherObject(document.getElementsByTagName('embed'));
		this.hideOtherObject(document.getElementsByTagName('select'));
		this.hideOtherObject(document.getElementsByTagName('iframe'));
	}
	//	--------------------------------------------------------------------------------------//
	//		INVISIBLE OTHER OBJECT
	//	--------------------------------------------------------------------------------------//
	myProject_Object.hideOtherObject = function(_arg){
		var tmpList = _arg.length;
		for (var i = 0; i < tmpList; i++) {
			if (_arg[i].style.visibility != 'hidden') {
				myProject_Object.otherSwfContainerList.push(_arg[i]);
				_arg[i].style.visibility = 'hidden';
				
			}
		}
	}
	//	--------------------------------------------------------------------------------------//
	//		INVISIBLE OTHER OBJECT
	//	--------------------------------------------------------------------------------------//
	myProject_Object.respawnOtherObject = function(){
		for (var i = 0; i < myProject_Object.otherSwfContainerList.length; i++) {
			myProject_Object.otherSwfContainerList[i].style.visibility = 'visible';
		}
	}
	//	--------------------------------------------------------------------------------------//
	//		SWF -> JS	(Open)
	//	--------------------------------------------------------------------------------------//
	myProject_Object.f2jsOpenFullscreen = function(){
		if (myProject_Object.bHideScrollBar) {
			if (!myProject_Object.bHideScrollBar_excludeFirefox) {
				myProject_Object.orginalOverHidden = myProject_Object.body.style.overflow;
				myProject_Object.body.style.overflow = 'hidden';
			}else{
				if (!myProject_Object.bFoxy) {
					myProject_Object.orginalOverHidden = myProject_Object.body.style.overflow;
					myProject_Object.body.style.overflow = 'hidden';
				}
			}
			
		}
		myProject_Object.hideOther();
		myProject_Object.attachFullscreen();
		document.getElementById(myProject_Object.blogpartsID).style.visibility = 'hidden';
	}
	//	--------------------------------------------------------------------------------------//
	//		SWF -> JS	(Open)
	//	--------------------------------------------------------------------------------------//
	myProject_Object.f2jsOpenMainFullscreen = function(){
		myProject_Object.attachMain();
	}
	//	--------------------------------------------------------------------------------------//
	//		HTML -> JS -> SWF	(Open)
	//	--------------------------------------------------------------------------------------//
	myProject_Object.openFullscreenFromA = function(){
		//myProject_Object.pxyBlogparts.call('funcJStoSWF');
	}
	//	--------------------------------------------------------------------------------------//
	//		SWF -> JS	(Close)
	//	--------------------------------------------------------------------------------------//
	myProject_Object.f2jsCloseMainFullscreen = function(){
		if (myProject_Object.bHideScrollBar) {
			myProject_Object.body.style.overflow = myProject_Object.orginalOverHidden;
		}
		myProject_Object.respawnOtherObject();
		myProject_Object.removeMainFullscreen();
		document.getElementById(myProject_Object.blogpartsID).style.visibility = 'visible';
		if(!myProject_Object.bBlogpartsAppended){
			myProject_Object.attachBlogparts();
		}
		//myProject_Object.pxyBlogparts.call('resumeBlogparts');
	}
	//	--------------------------------------------------------------------------------------//
	//		GET SCROLL X
	//	--------------------------------------------------------------------------------------//
	myProject_Object.getScrollX = function(){
		var returnVal;
		if (this.bOpera) {
			returnVal = window.pageXOffset;
		}
		else 
			if (document.all && document.getElementById && (document.compatMode == 'CSS1Compat')) {
				returnVal = document.documentElement.scrollLeft;
			}
			else 
				if (document.all) {
					returnVal = document.body.scrollLeft;
				}
				else 
					if (!document.all && (document.layers || document.getElementById)) {
						returnVal = window.pageXOffset;
					}
		return returnVal;
	}
	//	--------------------------------------------------------------------------------------//
	//		GET SCROLL Y
	//	--------------------------------------------------------------------------------------//
	myProject_Object.getScrollY = function(){
		var returnVal;
		if (this.bOpera) {
			returnVal = window.pageYOffset;
		}
		else 
			if (document.all && document.getElementById && (document.compatMode == 'CSS1Compat')) {
				returnVal = document.documentElement.scrollTop;
			}
			else 
				if (document.all) {
					returnVal = document.body.scrollTop;
				}
				else 
					if (!document.all && (document.layers || document.getElementById)) {
						returnVal = window.pageYOffset;
					}
		return returnVal;
	}
	//	--------------------------------------------------------------------------------------//
	//		GET WIDTH
	//	--------------------------------------------------------------------------------------//
	myProject_Object.getWidth = function(){
		var returnVal;
		if (this.bOpera) {
			returnVal = document.body.clientWidth;
		}
		else 
			if (this.bSafari) {
				returnVal = document.body.clientWidth;
			}
			else 
				if (document.all && document.getElementById && (document.compatMode == 'CSS1Compat')) {
					returnVal = document.documentElement.clientWidth;
				}
				else 
					if (document.all) {
						returnVal = document.body.clientWidth;
					}
					else 
						if (!document.all && (document.layers || document.getElementById)) {
							returnVal = document.body.clientWidth;
						}
		return returnVal;
	}
	//	--------------------------------------------------------------------------------------//
	//		GET HEIGHT
	//	--------------------------------------------------------------------------------------//
	myProject_Object.getHeight = function(){
		var returnVal;
		if (this.bOpera) {
			returnVal = document.body.clientHeight;
		}
		else 
			if (document.all && document.getElementById && (document.compatMode == 'CSS1Compat')) {
				returnVal = document.documentElement.clientHeight;
			}
			else 
				if (document.all) {
					returnVal = document.body.clientHeight;
				}
				else 
					if (!document.all && (document.layers || document.getElementById)) {
						returnVal = window.innerHeight;
					}
		return returnVal;
	}
	//	--------------------------------------------------------------------------------------//
	//		RESIZE REPLACE
	//	--------------------------------------------------------------------------------------//
	myProject_Object.replaceResize = function(){
		var fullscreenContainer = document.getElementById(myProject_Object.projectName + '_fullscreen');
		var mainContainer = document.getElementById(myProject_Object.projectName + '_main');
		//		if(fullscreenContainer && !this.bNotResize){	
		if (fullscreenContainer) {
			fullscreenContainer.style.top = myProject_Object.getScrollY() + 'px';
			fullscreenContainer.style.left = myProject_Object.getScrollX() + 'px';
			fullscreenContainer.style.width = myProject_Object.getWidth() + 'px';
			fullscreenContainer.style.height = myProject_Object.getHeight() + 'px';
		}
		if (mainContainer) {
			mainContainer.style.top = myProject_Object.getScrollY() + 'px';
			mainContainer.style.left = myProject_Object.getScrollX() + 'px';
			mainContainer.style.width = myProject_Object.getWidth() + 'px';
			mainContainer.style.height = myProject_Object.getHeight() + 'px';
		}
	}
	//	--------------------------------------------------------------------------------------//
	//		START
	//	--------------------------------------------------------------------------------------//
	if (_quickstart) {
		setTimeout(function(){myProject_Object.f2jsOpenFullscreen();}, autoStartTime);
	} else if (!_htmlcall) {
		myProject_Object.attachBlogparts();
	}
}