// common.js
// REQUIRES: prototype.js, scriptaculous.js

var sitePath = '/';

Event.observe( window, 'load', function(){
	setRollOver();
	inputDefault('searchword');
});



// *************************************************
// 汎用関数
// *************************************************


// eventSetter
var isIE = isIE = (document.documentElement.getAttribute("style") == document.documentElement.style);

function eventSetter(obj,eventType,func){
	if(isIE) {
		obj.setAttribute(eventType,new Function(func));
	} else {
		obj.setAttribute(eventType,func);
	}
}


// open new window
function newWindow(uri,width,height){
	var myWindow = window.open(uri, 'newWindow', 'resizable=yes,scrollbars=yes,status=0,width='+width+',height='+height);
	if (myWindow.focus!=null) {
		myWindow.focus();
	}
}


// print window
function printWindow(){
	if(document.getElementById || document.layers){
		window.print();
	}
}


// Ajax recover UTF-8 (for Safari)
function recover_utf8(text){
	if(navigator.appVersion.indexOf('KHTML') > -1){
		var esc = escape(text);
		if(esc.indexOf('%u') < 0 && esc.indexOf('%') > -1){
			text = decodeURIComponent(esc);
		}
	}
	return text;
}


// 検索フォーム
function inputClear(element){
	if ($(element).value == '探したい言葉を入力') {
		$(element).value = '';
		$(element).style.color = 'black';
	}
}

function inputDefault(element){
	if ($(element).value == '') {
		$(element).value = '探したい言葉を入力';
		$(element).style.color = 'gray';
	}
	if ($(element).value == '探したい言葉を入力') {
		$(element).style.color = 'gray';
	}
}

function cleardefaultvalue() {
	var text_searchword = document.getElementById("searchword");
	if (text_searchword.value == text_searchword.defaultValue) {
		text_searchword.value = '';
	}
	return true;
}


// scroll to top
function scrollToTop() {
	new Effect.ScrollTo("top",{duration: 0.5});
}



// *************************************************
// 画像ロールオーバー
// *************************************************

var ImgRollOver = Class.create();
ImgRollOver.prototype = {
	initialize: function(img,type){
		this.img = img;
		this.outImgSrc = img.src;
		var imgSrcArray = img.src.split('.');
		var fileType = imgSrcArray[imgSrcArray.length - 1];
		this.overImgSrc = img.src.split('.' + fileType)[0] + '_o.' + fileType;
		if(type == "img"){
			Event.observe(
				img.parentNode,
				'mouseover',
				this.mouseOver.bindAsEventListener(this)
			);
			Event.observe(
				img.parentNode,
				'mouseout',
				this.mouseOut.bindAsEventListener(this)
			);
		}else if(type == "input"){
			Event.observe(
				img,
				'mouseover',
				this.mouseOver.bindAsEventListener(this)
			);
			Event.observe(
				img,
				'mouseout',
				this.mouseOut.bindAsEventListener(this)
			);
		}
		var preImage = new Image();
		preImage.src = this.overImgSrc;
	},
	mouseOver: function(){
		this.img.src = this.overImgSrc;
	},
	mouseOut: function(){
		this.img.src = this.outImgSrc;
	}
}

function setRollOver(){
	var imgs = document.getElementsByTagName('img');
	var inputs = document.getElementsByTagName('input');
	var preImages = new Array();
	var preInputs = new Array();
	if(imgs){
		for(var i = 0,num = imgs.length;i < num;i++){
			img = imgs[i];
			if(Element.hasClassName(img, "roll")){
				new ImgRollOver(img,"img");
			}
		}
	}
	if(inputs){
		for(var i = 0,num = inputs.length;i < num;i++){
			input = inputs[i];
			if(input.type == 'image' && Element.hasClassName(input, "roll")){
				new ImgRollOver(input,"input");
			}
		}
	}
}



// *************************************************
// 感想をお寄せください
// *************************************************

function sendUsefulCheck() {
	Form.disable('useful_evaluate');
	var value = '';
	var inputs = Form.getInputs('useful_evaluate','radio');
	inputs.each(
		function(val,idx){
			if(val.checked == true){
				value = val.value;
			}
		}
	)
	if(value == ''){
		alert('感想を選んでください。');
		Form.enable('useful_evaluate');
	} else {
		var articleId = Form.Element.getValue('article_id');
		var dispmode  = Form.Element.getValue('disp_mode');
		var parameter = $H({article_id: articleId, useful: value,disp_mode: dispmode}).toQueryString();
		new Ajax.Request(
			'enquete',{
				method: 'post',
				postBody: parameter//,
//				onSuccess: function(httpObject){
//					var res = httpObject.responseText;
//					if(res == "TRUE"){
//						$('useful_submit').style.display = 'none';
//						$('useful_thanks').style.display = 'block';
//					} else {
//						$('useful_check_msg').innerHTML = '回答の値が正しくありません。';
//						Form.enable('useful_evaluate');
//					}
//				},
//				onFailure: function(){
//					$('useful_check_msg').innerHTML = '送信エラーが発生しました。';
//					Form.enable('useful_evaluate');
//				}
			}
		);
		$('useful_submit').style.display = 'none';
		$('useful_thanks').style.display = 'block';
	}
}

function clearUsefulCheck() {
	Form.reset('useful_evaluate');
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
