﻿



//----------------------------------------------------------------------------------------------------------------------------------------------------------------//
//		MARES
//----------------------------------------------------------------------------------------------------------------------------------------------------------------//

/* rollover
---------------------------------------------*/

function initRollovers() {
	if (!document.getElementById) return
	
	var aPreLoad = new Array();
	var sTempSrc;
	var aImages = document.getElementsByTagName('img');

	for (var i = 0; i < aImages.length; i++) {		
		if (aImages[i].className == 'rollover') {
			var src = aImages[i].getAttribute('src');
			var ftype = src.substring(src.lastIndexOf('.'), src.length);
			var hsrc = src.replace(ftype, '_on'+ftype);

			aImages[i].setAttribute('hsrc', hsrc);
			
			aPreLoad[i] = new Image();
			aPreLoad[i].src = hsrc;
			
			aImages[i].onmouseover = function() {
				sTempSrc = this.getAttribute('src');
				this.setAttribute('src', this.getAttribute('hsrc'));
			}	
			
			aImages[i].onmouseout = function() {
				if (!sTempSrc) sTempSrc = this.getAttribute('src').replace('_on'+ftype, ftype);
				this.setAttribute('src', sTempSrc);
			}
		}
	}
}

window.onload = initRollovers;


/* BOX List ---------------------------------------------*/

var descondition = false;



function boxlist(boxelem){
/*		alert(boxelem);*/
	var itemlist = document.getElementById('boxList');
	var itembox = itemlist.getElementsByTagName('li');
	
//REGULATOR
	var regulatorboxtext = "器材に対する依存度の高いスクーバダイビングの中でも、レギュレーターは最も重要な器材です。<br />水中という特殊な環境の中で、安全で快適なダイビングをするために、レギュレーターに求められる機能が重要です。";
	var regulatorboxurl = "http://www.mares.co.jp/product/regulator/";


//GAUGE
	var gaugeboxtext = "世界中のダイバーから支持されてきたマレスゲージより使いやすく、新たな装いでデビュー。";
	var gaugeboxurl = "http://www.mares.co.jp/product/gauge/";

//BC VEST
	var bcvboxtext = "抜群のフィット感と安定した水中バランス、優れた操作性を誇るマレスのBCV。<br />厳格な基準と最先端テクノロジーを駆使し、あらゆるダイビングシーンに対応します。";
	var bcvboxurl = "http://www.mares.co.jp/product/bcv/";

//COMPUTER
	var computerboxtext = "更なる安全性の追求。マレステクノロジーは進化し続けます。<br />ダイビング中の様々な状況から安全な情報を導き出し、ダイバーを様々なストレスから解放してくれます。";
	var computerboxurl = "http://www.mares.co.jp/product/computer/";

//FIN
	var finboxtext = "器材に対する依存度の高いスクーバダイビングの中でも、レギュレーターは最も重要な器材です。<br />水中という特殊な環境の中で、安全で快適なダイビングをするために、レギュレーターに求められる機能が重要です。";
	var finboxurl = "http://www.mares.co.jp/product/fin/";

//MASK
	var maskboxtext = "マスクは水中世界を覗く「眼」となる器材。<br />自分に合ったマスクを選ぶことで、より自然で広い視界で快適なダイビングを提供してくれます。";
	var maskboxurl = "http://www.mares.co.jp/product/mask/";

//SNORKEL
	var snorkelboxtext = "スキューバダイビングではスノーケルを使っていない時間の方が長いことが多いので、使っているときだけでなく、使っていないときも抵抗の少ない構造となるよう設計しています。";
	var snorkelboxurl = "http://www.mares.co.jp/product/snorkel/";

//SUIT
	var suitboxtext = "人間工学と解剖学に基づく人体の関節・皮節のメカニズムとスーツの関係を徹底分析。<br />フィッティングと動きやすさを実現した、ダイビングスーツの革命とも言える快適さを是非体感してください。";
	var suitboxurl = "http://www.mares.co.jp/product/suit/";

//ACCESSORIES
	var accessoriesboxtext = "ダイビングをより安全、快適にするために。マレスでは様々なアクセサリーをご用意しています。";
	var accessoriesboxurl = "http://www.mares.co.jp/product/accessories/";




if(!descondition) {


	function desprocess() {
		for (var i = 0; i < itembox.length; i++) {
			if (itembox[i].className == boxelem) {//選択カテゴリー
				Element.show(itembox[i]);//対象製品の表示
//				document.descriptiontitle.src = 'img/description_' + boxelem + '_title.gif';//タイトルイメージの差し替え
//				document.body.descriptiontitle.srcElement = 'img/description_' + boxelem + '_title.gif';
//				var imagehogehoge = 'img/description_' + boxelem + '_title.gif';
//document.descriptiontitle.setAttribute('src','img/description_' + boxelem + '_title.gif');

				var hogehogehoge = 'img/description_' + boxelem + '_title.gif';
				document.getElementById("descriptiontitle").src = hogehogehoge;
				var urlObj = document.getElementById("descriptionurl");
				var urlText = boxelem + 'url';
				urlObj.setAttribute('href',eval(urlText));//URLの差し替え

				var tagObj = document.getElementById("descriptiontext");
				var textObj = boxelem + 'text';
				tagObj.innerHTML = eval(textObj);
//				Element.update(tagObj,eval(textObj));

			}else if (boxelem == 'allbox'){//全製品表示の場合
				Element.show(itembox[i]);
				

			}else{//選択カテゴリー以外
				Element.hide(itembox[i]);
			}//if_end
		}//for_end

		function desload(){
			if (boxelem == 'allbox') {//全製品表示の場合
				var descriptionArea = document.getElementById('descriptionContent');
				descriptionArea.style.display = "none";
				var IE=navigator.appName.indexOf("Microsoft") != -1;
				var flaObj= (IE) ? window['external2'] : document['external2'];
				flaObj.poxyAllbox();
			} else {//製品カテゴリー表示の場合
descondition = true;
				Effect.SlideDown('descriptionContent',{fps:85,duration:1,beforeStartInternal:function(){},afterFinishInternal: function(){descondition = false;}});
//				alert(descondition);

			}//if_end
		}//desload_end

		desload();
	}//desprocess_end

desprocess();

}

}





/* Scroll ---------------------------------------------*/

function SmoothScroll(targetID){
  if( !document.getElementById ) {return true;}
  var step=10;
  var max=500;
  var accel=5;
  var interval=20;
  var current_y = document.body.scrollTop  || document.documentElement.scrollTop;
  var element=document.getElementById(targetID);
  if (!element){return true;}
  var target_y = 0;
  for (i = element;i.offsetParent;i=i.offsetParent ){
    target_y += i.offsetTop;
  }
  var count=0;
  if ( current_y > target_y ){ step = -(step); accel = -(accel);}
  var timerid = setInterval( function(){
    if (step<max) step += (count*accel);
    if ( Math.abs(current_y-target_y) < Math.abs(step) ){
      window.scrollTo((document.body.scrollTop  || document.documentElement.scrollTop),target_y);
      clearInterval(timerid);
      return false;
    }else{
      window.scrollBy(0,step);
      current_y += step;
      count++;
    }
  },interval);
  return false;
}



/* HeightLine ---------------------------------------------*/ 

new function(){
	
	function heightLine(){
	
		this.className="heightLine";
		this.parentClassName="heightLineParent"
		reg = new RegExp(this.className+"-([a-zA-Z0-9-_]+)", "i");
		objCN =new Array();
		var objAll = document.getElementsByTagName ? document.getElementsByTagName("*") : document.all;
		for(var i = 0; i < objAll.length; i++) {
			var eltClass = objAll[i].className.split(/\s+/);
			for(var j = 0; j < eltClass.length; j++) {
				if(eltClass[j] == this.className) {
					if(!objCN["main CN"]) objCN["main CN"] = new Array();
					objCN["main CN"].push(objAll[i]);
					break;
				}else if(eltClass[j] == this.parentClassName){
					if(!objCN["parent CN"]) objCN["parent CN"] = new Array();
					objCN["parent CN"].push(objAll[i]);
					break;
				}else if(eltClass[j].match(reg)){
					var OCN = eltClass[j].match(reg)
					if(!objCN[OCN]) objCN[OCN]=new Array();
					objCN[OCN].push(objAll[i]);
					break;
				}
			}
		}
		
		//check font size
		var e = document.createElement("div");
		var s = document.createTextNode("S");
		e.appendChild(s);
		e.style.visibility="hidden"
		e.style.position="absolute"
		e.style.top="0"
		document.body.appendChild(e);
		var defHeight = e.offsetHeight;
		
		changeBoxSize = function(){
			for(var key in objCN){
				if(key == "parent CN"){
					for(var i=0 ; i<objCN[key].length ; i++){
						var max_height=0;
						var CCN = objCN[key][i].childNodes;
						for(var j=0 ; j<CCN.length ; j++){
							if(CCN[j] && CCN[j].nodeType == 1){
								CCN[j].style.height="auto";
								max_height = max_height>CCN[j].offsetHeight?max_height:CCN[j].offsetHeight;
							}
						}
						for(var j=0 ; j<CCN.length ; j++){
							if(CCN[j].style)CCN[j].style.height = max_height + "px";
						}
					}
				}else{
					var max_height=0;
//					for(var i=0 ; i<objCN[key].length ; i++){
//						objCN[key][i].style.height="auto";
//						max_height = max_height>objCN[key][i].offsetHeight?max_height:objCN[key][i].offsetHeight;
//					}
//					for(var i=0 ; i<objCN[key].length ; i++){
//						objCN[key][i].style.height = max_height + "px";
//					}
				}
			}
		}
		
		checkBoxSize = function(){
			if(defHeight != e.offsetHeight){
				changeBoxSize();
				defHeight= e.offsetHeight;
			}
		}
		changeBoxSize();
		setInterval(checkBoxSize,1000)
	}
	
	function addEvent(elm,listener,fn){
		try{
			elm.addEventListener(listener,fn,false);
		}catch(e){
			elm.attachEvent("on"+listener,fn);
		}
	}
	addEvent(window,"load",heightLine);
}


function refererCheck() {
//リンク元URL
var linkHistory = document.referrer;
if(linkHistory.match(/regulator/)){
	boxlist('regulatorbox');
}else if(linkHistory.match(/gauge/)){
	boxlist('gaugebox');
}else if(linkHistory.match(/bcv/)){
	boxlist('bcvbox');
}else if(linkHistory.match(/computer/)){
	boxlist('computerbox');
}else if(linkHistory.match(/fin/)){
	boxlist('finbox');
}else if(linkHistory.match(/mask/)){
	boxlist('maskbox');
}else if(linkHistory.match(/snorkel/)){
	boxlist('snorkelbox');
}else if(linkHistory.match(/suit/)){
	boxlist('suitbox');
}else if(linkHistory.match(/accessories/)){
	boxlist('accessoriesbox');
}else{
	boxlist('allbox');
}

}


/* Get Mailto ---------------------------------------------*/

function getMailto(user,domain){
	locationstring = "mailto:" + user + "@" + domain;
	window.location = locationstring;
}
