/************************************************************
 common.js
 JavaScript外部ファイル
 
 改版履歴：
 	2006.02.20：新規作成
 
 画面概要：
	JavaScriptの各functionにて以下の処理を行う。
	・サブウインドウオープン処理
	・ウインドウクロース処理
	・ウインドウプリント処理
	・値書き込み処理
	・店舗選択処理
	・店舗名表示処理
	・画像切替処理
	・メニュー表示・非表示処理
************************************************************/

	//--------------------------------------------------------------------------
	// サブウインドウオープン処理
	// 引数：obj	htmlファイル名
	//		 w		ウィンドウwidth値
	//		 h		ウィンドウheight値
	// 戻値：なし
	//--------------------------------------------------------------------------
	function window_open(obj,w,h){
		// 別ウィンドウでファイルオープン（メニューバー・ツールバーなし）
		window.open(obj + ".html","_blank","menubar=no,toolbar=no,width=" + w +
					",height=" + h + ",resizable=no,scrollbars=yes");
		return;
	}


//--------------------------------------------------------------------------
	// ウインドウクロース処理
	// 引数：なし
	// 戻値：なし
	//--------------------------------------------------------------------------
	function window_cls(){
		// ウィンドウクローズ
		window.close();
		return;
	}


	//--------------------------------------------------------------------------
	// ウインドウプリント処理
	// 引数：なし
	// 戻値：なし
	//--------------------------------------------------------------------------
	function window_pnt(){
		// ウィンドウプリント
		window.print();
		return;
	}


	//--------------------------------------------------------------------------
	// 値書き込み処理(オブジェクトを引数に変更する予定)
	// 引数：obj	書き込み対象オブジェクト
	//		 value	書き込み値
	//--------------------------------------------------------------------------
	function write_value() {
		document.order.shop.value = document.order.s_shopnm.value;
		return;
	}

	//--------------------------------------------------------------------------
	// 店舗選択処理
	// 引数：value	選択index値
	//--------------------------------------------------------------------------
	function select_chk(value) {
		//店舗インデックスセット
		document.order.s_shopnm[value].selected = true;
		//hidden項目店舗インデックスセット
		write_value();
		return;
	}

	
	//--------------------------------------------------------------------------
	// 店舗名表示処理
	// 引数：index	選択index値
	//--------------------------------------------------------------------------
	function conv_nm(index) {
		
		var shopnm;
		
		switch(index) {
			case "1":
				shopnm = "キャプテンズプラザ　松山店";
				break;
			case "2":
				shopnm = "キャプテンズイン　国際通り店";
				break;
			case "3":
				shopnm = "キャプテンズイン　松尾店";
				break;
			case "4":
				shopnm = "キャプテンズイン　美浜店";
				break;
			case "5":
				shopnm = "山原家名護店";
				break;
			case "0":
			default:
				shopnm = "error!!";
				break;
		}
		document.order.shopnm.value = shopnm;
		return shopnm;
	}


	//--------------------------------------------------------------------------
	// 画像切替処理
	// 引数：name		切替画像オブジェクト
	// 	   imgsrc	切替画像
	//--------------------------------------------------------------------------
	function setImage(name,imgsrc) {
		document.images[name].src = imgsrc;
	}



	//--------------------------------------------------------------------------
	// メニュー表示・非表示
	// 引数：id	処理対象オブジェクトid
	//--------------------------------------------------------------------------
	function showhide(id){
	    if (document.getElementById) {
	        if (document.getElementById(id).style.display == "block")
	            document.getElementById(id).style.display = "none";
	        else
	            document.getElementById(id).style.display = "block";
	    }
	}





function getCookie(){		//クッキーを取り出す関数
tmp = document.cookie + ";";
index1 = tmp.indexOf("hyoji",0);
if(index1 != -1){
	tmp = tmp.substring(index1,tmp.length);
	index2 = tmp.indexOf("=",0) + 1;
	index3 = tmp.indexOf(";",index2);
	return(unescape(tmp.substring(index2,index3)));
	}
else return ("00");	//子メニューの数だけ0を増やす
}


function setCookie(val){	//クッキーをセットする関数
	myExp = new Date();
	myExp.setTime(myExp.getTime()+(365*24*60*60*1000));
	tmp = "hyoji=" + escape(val) + ";";
	tmp += "expires=" + myExp.toGMTString();
	document.cookie = tmp;
}

function oritatami(id){		//クリックしたときに動作する関数
	state = getCookie();
	cli = id.substring(1,2);	//クリックされたidの番号を取得
	hai = state.match(/[01]/g);	//0か1にmatchさせて配列にする
	obj=(document.all)?document.all(id):((document.getElementById)?document.getElementById(id):null);
	if(obj)	obj.style.display=(hai[cli]=="0")?"block":"none";
	hai[cli] = "" + ((eval(hai[cli]))^1);	//クリックされた部分の0か1を反転
	state = "";	//いったん空にする
	for(i=0;i<hai.length;i++) state += hai[i];	//stateに再び0と1の状態を格納
	setCookie(state);
}

function syoki(){	//画面が表示されたときに開閉状態をセットする関数
	state = getCookie();
	hai = state.match(/[01]/g);
	for(i=0;i<hai.length;i++){
		obj=(document.all)?document.all('o'+i):((document.getElementById)?document.getElementById('o'+i):null);
		if(obj)	obj.style.display=(hai[i]=="0")?"none":"block";
		}
}


//png透過用java
/*
 * IE PNG Fix v1.4
 *
 * Copyright (c) 2006 Takashi Aida http://www.isella.com/aod2/
 *
 */

// IE5.5+ PNG Alpha Fix v1.0RC4
// (c) 2004-2005 Angus Turnbull http://www.twinhelix.com

// This is licensed under the CC-GNU LGPL, version 2.1 or later.
// For details, see: http://creativecommons.org/licenses/LGPL/2.1/

if (typeof IEPNGFIX == 'undefined') {
//--============================================================================

var IEPNGFIX = {
	blank:  'http://www.isella.com/aod2/images/blank.gif',
	filter: 'DXImageTransform.Microsoft.AlphaImageLoader',

	fixit: function (elem, src, method) {
		if (elem.filters[this.filter]) {
			var filter = elem.filters[this.filter];
			filter.enabled = true;
			filter.src = src;
			filter.sizingMethod = method;
		}
		else {
			elem.style.filter = 'progid:' + this.filter +
				'(src="' + src + '",sizingMethod="' + method + '")';
		}
	},

	fixwidth: function(elem) {
		if (elem.currentStyle.width == 'auto' &&
			elem.currentStyle.height == 'auto') {
			elem.style.width = elem.offsetWidth + 'px';
		}
	},

	fixchild: function(elem, recursive) {
		if (!/MSIE (5\.5|6\.|7\.)/.test(navigator.userAgent)) return;

		for (var i = 0, n = elem.childNodes.length; i < n; i++) {
			var childNode = elem.childNodes[i];
			if (childNode.style) {
				if (childNode.style.position) {
					childNode.style.position = childNode.style.position;
				}
				else {
					childNode.style.position = 'relative';
				}
			}
			if (recursive && childNode.hasChildNodes()) {
				this.fixchild(childNode, recursive);
			}
		}
	},

	fix: function(elem) {
		if (!/MSIE (5\.5|6\.|7\.)/.test(navigator.userAgent)) return;

		var bgImg =
			elem.currentStyle.backgroundImage || elem.style.backgroundImage;

		if (elem.tagName == 'IMG') {
			if ((/\.png$/i).test(elem.src)) {
				this.fixwidth(elem);
				this.fixit(elem, elem.src, 'scale');
				elem.src = this.blank;
				elem.runtimeStyle.behavior = 'none';
			}
		}
		else if (bgImg && bgImg != 'none') {
			if (bgImg.match(/^url[("']+(.*\.png)[)"']+$/i)) {
				var s = RegExp.$1;
				this.fixwidth(elem);
				elem.style.backgroundImage = 'none';
				this.fixit(elem, s, 'scale'); // crop | image | scale

				if (elem.tagName == 'A' && elem.style) {
					if (!elem.style.cursor) {
						elem.style.cursor = 'pointer';
					}
				}

				this.fixchild(elem);
				elem.runtimeStyle.behavior = 'none';
			}
		}
	},

	hover: function(elem, hvImg) {
		var bgImg = elem.style.backgroundImage;

		if (!bgImg && elem.currentStyle) bgImg = elem.currentStyle.backgroundImage;

		if (elem.tagName == 'IMG' && hvImg) {
			var image = elem.src;
			elem.onmouseover = function() {
				elem.src = hvImg;
				IEPNGFIX.fix(elem);
			};
			elem.onmouseout = function() {
				elem.src = image;
				IEPNGFIX.fix(elem);
			};
		}
		else if (bgImg && bgImg != 'none' && hvImg) {
			elem.onmouseover = function() {
				elem.style.backgroundImage = 'url(' + hvImg + ')';
				IEPNGFIX.fix(elem);
			};
			elem.onmouseout = function() {
				elem.style.backgroundImage = bgImg;
				IEPNGFIX.fix(elem);
			};
		}

		IEPNGFIX.fix(elem);
	}
};

//--============================================================================
} // end if (typeof IEPNGFIX == 'undefined')
