

/*-------------------------------------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------------------------------------*/
/*
////	D_Box	 //////////////////////////////////////////////////////////////////////////////////////

	☆ bt...設定ボタンクラス ※class


	
	D_Box('tabs');

*/
/*-------------------------------------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------------------------------------*/


D_Box = function(bt){

		var obj = new D_BoxEffect(bt);

		/*-----------------------------------------------------------------*/
		for(var i = 0; i < obj.D_Boxs.length; i++){
			
			
			dom.event.addEventListener(obj.D_Boxs[i], 'click', function(e){obj.zoomSet(e,obj);});
			//↑無名関数で　なんか納得いかない(引数がうまくわたらない気がする) できれば無名関数でセットしないようにする
		}
		
		obj.Z_index = 999;		
		
	}

D_BoxEffect = function(bt) {

		this.D_Boxs = getElementsByClass('document',bt);


	}

D_BoxEffect.prototype.zoomSet = function(evt){ 

	var typCheck = typeof(evt);
	if(typCheck == 'object'){
		var elm = dom.event.target(evt).parentNode.href;//イベントターゲット特定 イベント発生 elment.title
	}else{
		var elm =  evt;//---ie
	}
	

	var mask_back = document.createElement('IFRAME');
	mask_back.id = 'i_shadow';
	mask_back.style.position = 'absolute';
	mask_back.style.top = 0 + 'px';
	mask_back.style.left = 0 + 'px';
	mask_back.style.zIndex = 100;

	var wW = windowWidth();
	var wH = windowHeight();
	
	var sx;
	var sy;
	
	if(_MSIE){
		sx = document.documentElement.scrollLeft;
		sy = document.documentElement.scrollTop;
	}
	else{
		sx = window.pageXOffset;
		sy = window.pageYOffset;
	}
	var wWsx = wW + sx;
	var wHsy = wH + sy;
	
	var div_bottom = document.createElement('DIV');
	div_bottom.id = 'shadow_height';
	div_bottom.style.width = 100 + '%';
	div_bottom.style.position = 'relative';
	document.body.appendChild(div_bottom);//書き出し
	
	wHsy = document.getElementById('shadow_height').offsetTop;
	wHsy = parseInt(wHsy);
	
	mask_back.style.width = wWsx + 'px';
	mask_back.style.height = wHsy + 'px';
	document.body.appendChild(mask_back);//書き出し	
	
	var mask_div = document.createElement('DIV');
	mask_div.id = 'shadow';
	mask_div.style.position = 'absolute';
	mask_div.style.top = 0 + 'px';
	mask_div.style.left = 0 + 'px';
	mask_div.style.zIndex = 200;


	mask_div.style.width = wWsx + 'px';
	mask_div.style.height = wHsy + 'px';
	document.body.appendChild(mask_div);//書き出し
	
	//
	var w_div = document.createElement('DIV');
	w_div.id = 'white_box';
	w_div.style.position = 'absolute';
	w_div.style.top = 0 + 'px';
	w_div.style.left = 0 + 'px';
	w_div.style.width = wWsx + 'px';
	w_div.style.height = wHsy + 'px';
	w_div.style.zIndex = 9999;
	document.body.appendChild(w_div);//書き出し
	

	/* alert(dom.event.target(evt).name); */
	/* var new_imgSize = dom.event.target(evt).parentNode.name.split(","); */
	var new_imgSize = dom.event.target(evt).name.split(",");
	
	dom.event.preventDefault(evt);//<a>タグを利用する場合は、デフォルトのイベント抑止
	var obj = new Object();
	obj = this;

	//clickされた要素の作成
	var new_div = document.createElement('DIV');
	/* new_div.src = elm; */
	new_div.style.position = 'relative';
	new_div.style.top = 0 + 'px';
	new_div.style.left = 0 + 'px';
	new_div.style.width = parseInt(new_imgSize[0]) + 'px';
	new_div.style.height = parseInt(new_imgSize[1]) + 'px';
	new_div.style.padding = 20 + 'px';
	new_div.style.paddingRight = 0 + 'px';
	new_div.style.margin = 0 + 'px';	//img_true_size(new_div);
	//alert(img_true_size.height);
	
	//clickされた要素の表示box作成
		var div_pop = document.createElement('DIV');
		div_pop.style.position = 'absolute';
		div_pop.id = 'erase_box';
	div_pop.style.top = 0 + 'px';
	div_pop.style.left = 0 + 'px';
		document.body.appendChild(div_pop);//書き出し
	
		var pop_title = '';
		if(dom.event.target(evt).title){
				pop_title = dom.event.target(evt).title;
			}
		
		div_pop.innerHTML='<div class="pop"><div id="pop_title" class="pop_title">' + pop_title +'</div><div class="pop_main"></div><div class="pop_bottom"><a href="" class="popup_close" onclick="return false;">＊閉じる＊</a></div></div>';

	//clickされた要素の表示boxの特定		
	var new_pop = getElementsByClass('document','pop_main');//id設定："popupElm" + new_pop.lengtha
	new_pop[new_pop.length-1].parentNode.id = "pop_main" + new_pop.length;
	new_pop[new_pop.length-1].appendChild(new_div);//書き出し
	new_div = new_pop[new_pop.length-1].appendChild(new_div);
	
	if(new_imgSize[2] == "image"){
		if(dom.event.target(evt).href){
			var images_ad = dom.event.target(evt).href;
		}else{
			var images_ad = dom.event.target(evt).parentNode.href;
		}
		new_div.innerHTML='<img src="' + images_ad +'" alt="hotel_lineup_title" width="100%" height="100%" />';
	}else if(new_imgSize[2] == "toku"){
		if(dom.event.target(evt).alt){
			var images_ad = dom.event.target(evt).alt;
		}else{
			var images_ad = dom.event.target(evt).parentNode.href;
		}
		new_div.innerHTML='<img src="' + images_ad +'" alt="hotel_lineup_title" width="100%" height="100%" />';
	}else{
	httpOpen(new_imgSize[2],new_div);
	}
	//alert(new_pop[new_pop.length-1].offsetHeight);
	//alert(new_div.offsetHeight);
	var z_Elm = new_pop[new_pop.length-1].parentNode.parentNode;
	z_Elm.style.width = parseInt(new_imgSize[0])  + 'px';
	z_Elm.style.height = parseInt(new_imgSize[1])  + 'px';
	
	obj.Z_index = obj.Z_index + 1;

	z_Elm.style.zIndex = obj.Z_index;

	/* var zoom_ =  (new_div.offsetHeight ) / z_Elm.offsetHeight * 100; */
	var zoom_ =  100;
	
	//var href = evt.getAttribute('src');
	//alert(href);
	
	zoom("pop_main" + new_pop.length,zoom_,5,"updown",evt,this);
	//alpha("pop_main" + new_pop.length,100,7,'up',this);
	alpha("white_box" ,0,5,'up',this);
	
	//popup_close設定
	var popup_close = div_pop.getElementsByTagName('a');
		
		for(var i = 0; i < popup_close.length; i++){
			
			if(popup_close[i].className == 'popup_close') {
					dom.event.addEventListener(popup_close[i], 'click', obj.erase);
					dom.event.addEventListener(mask_div, 'click', obj.erases);
				}
		}
	
	this.next_Event = function(elm){
			var elm = document.getElementById('white_box');
			elm.parentNode.removeChild(elm);
			elm.style.opacity = 1.0;
		}
		
	//setTimeout("$(function(){$('input, textarea, select, button').uniform();});",500);
	}


D_BoxEffect.prototype.erase = function(evt){
	var typCheck = typeof(evt);
	if(typCheck == 'object'){
		var elm = dom.event.target(evt);//イベントターゲット特定 イベント発生 elment.title
	}else{
		var elm =  evt;//---ie
	}
	dom.event.preventDefault(evt);//<a>タグを利用する場合は、デフォルトのイベント抑止
	/* var erase_elm = elm.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode; */
	var erase_elm = elm.parentNode.parentNode;
	erase_elm.parentNode.removeChild(erase_elm);
	erase_elm = document.getElementById('erase_box');
	erase_elm.parentNode.removeChild(erase_elm);
	var shadow_elm = document.getElementById('shadow');
	var i_shadow_elm = document.getElementById('i_shadow');
	shadow_elm.parentNode.removeChild(shadow_elm);
	i_shadow_elm.parentNode.removeChild(i_shadow_elm);
	
}

D_BoxEffect.prototype.erases = function(evt){

	var erase_elm = getElementsByClass('document','pop');

	erase_elm[0].parentNode.removeChild(erase_elm[0]);
	erase_elm = document.getElementById('erase_box');
	erase_elm.parentNode.removeChild(erase_elm);
	var shadow_elm = document.getElementById('shadow');
	var i_shadow_elm = document.getElementById('i_shadow');
	shadow_elm.parentNode.removeChild(shadow_elm);
	i_shadow_elm.parentNode.removeChild(i_shadow_elm);	
	
}

D_BoxEffect.prototype.z_index = function(evt){
	
	var typCheck = typeof(evt);
	if(typCheck == 'object'){
		var elm = dom.event.target(evt).parentNode.parentNode.parentNode.parentNode;//イベントターゲット特定 イベント発生 elment.title
	}else{
		var elm =  evt;//---ie
	}
	
	dom.event.preventDefault(evt);//<a>タグを利用する場合は、デフォルトのイベント抑止	
	this.Z_index = this.Z_index + 1;	
	
	elm.style.zIndex = this.Z_index;
	
}

		
//======================================================

//======================================================



//======================================================
//bodyElementより特定のｃlassElementを取得
//引き数：searchClass:エレメントclass名
//戻り値：classElements:指定class.item() ※配列
//
//bodyElementより特定のｃlassElementを取得
//引き数：searchClass:エレメントclass名
//戻り値：classElements:指定class.item() ※配列
//
function getElementsByClass(tagetElements,searchClass) {
    var classElements = new Array();
	if(tagetElements == "document"){
		var tagetElements = "document";
		var allElements = document.getElementsByTagName("*");
	}else{
		var tagetElements = document.getElementById(tagetElements);
		var allElements = tagetElements.getElementsByTagName("*");
	}
    for (i = 0, j = 0; i < allElements.length; i++) {
	if (allElements[i].className == searchClass) {
	    classElements[j] = allElements[i];
	    j++;
	}
    }
    return classElements;
}

function getElementsByClass_RegExp(tagetElements,searchClass) {

    var classElements = new Array();
	if(tagetElements == "document"){
		var tagetElements = "document";
		var allElements = document.getElementsByTagName("*");
	}else{
		var tagetElements = document.getElementById(tagetElements);
		var allElements = tagetElements.getElementsByTagName("*");
	}
	matchObj = new RegExp(searchClass);
    for (i = 0, j = 0; i < allElements.length; i++) {
	if (allElements[i].className.match(matchObj)) {
	    classElements[j] = allElements[i];
	    j++;
	}
    }
    return classElements;
}





//外部ファイルを読み込むオブジェクト----------------------------------------------
function httpOpen(file,displayObj){
	//読み込みを行うhttpRequestオブジェクト
	
	var httpObject;
	
	if(_MSIE){
		httpObject = new ActiveXObject("Msxml2.XMLHTTP");
	}
	else{
		httpObject = new XMLHttpRequest();
	}
	
	//読み込み状態が変化したときに呼び出される動作設定
	httpObject.onreadystatechange = function(){
		//readyStateが完全読み込みの場合（４）
		if(httpObject.readyState == 4){
			//読み込み後の内容格納
			var filestr;
			
			switch(httpObject.status){
				//読み込み完了
				case 200:
					filestr = httpObject.responseText;

				break;
				//ファイルが存在しない
				case 404:
					filestr = '指定されたファイルがありません';
				break;
			}
			//ウィンドウエレメントに表示
			//alert(filestr);
			displayObj.innerHTML = filestr;
		}
	}
	
	//指定ファイルのオープン
	httpObject.open('GET',file,true);
	httpObject.send(null);
}


//===============================================================================
//making by www.dtop.jp
//=============================================================================== 基本の設定
//ブラウザ判別グローバル変数格納
var _MSIE = (navigator.userAgent.indexOf('MSIE') != -1);		//Windows IE（対応ブラウザはIE6以上）
var _Gecko = (navigator.userAgent.indexOf('Gecko') != -1);		//Firefox
var _Safari = (navigator.userAgent.indexOf('Safari') != -1);	//Safari

//windowに関する関数---------------------------------------------------------------
//windowの横幅
//引き数：
//戻り値：windowの横幅
function windowWidth(){
	if(_MSIE){
		return document.documentElement.clientWidth;
	}
	else{
		return window.innerWidth;
	}
}

//windowの縦幅
//引き数：
//戻り値：windowの縦幅
function windowHeight(){
	if(_MSIE){
		return document.documentElement.clientHeight;
	}
	else{
		return window.innerHeight;
	}
}


function resizeCheck(evt) {
	var wW = windowWidth();
	var wH = windowHeight();
	var sx;
	var sy;
	
	if(_MSIE){
		sx = document.documentElement.scrollLeft;
		sy = document.documentElement.scrollTop;
	}
	else{
		sx = window.pageXOffset;
		sy = window.pageYOffset;
	}
	if(document.getElementById('shadow')){
		var wH = document.getElementById('footer').offsetTop;
		var sy = document.getElementById('footer').offsetHeight;
		var wHsy = parseInt(wH + sy);
		//alert(wHsy);
		document.getElementById('shadow').style.width = wW + sx + 'px';
		document.getElementById('i_shadow').style.width = wW + sx + 'px';
		document.getElementById('shadow').style.height = wHsy + 'px';
		document.getElementById('i_shadow').style.height = wHsy + 'px';
	}
}



