/* 複数の画像を変更 */
/* 最初の画像のマウスを変更 */
function multiMouseOver() {
	var ar = new Array(multiMouseOver.arguments.length);
	ar = multiMouseOver.arguments

	if (ar[0] == '0') {
		/* 最初の画像だけ特別 */
		mouseOver(ar[1], ar[2]);
	}
	else {
		changeImage(ar[1], ar[2]);
	}

	for (i = 3; i < ar.length; i++) {
		changeImage(ar[i], ar[i+1]);
		i++;
	}
}

function multiMouseOut() {
	var ar = new Array(multiMouseOut.arguments.length);
	ar = multiMouseOut.arguments

	/* 最初の画像だけ特別 */
	mouseOut(ar[0], ar[1]);

	for (i = 2; i < ar.length; i++) {
		changeImage(ar[i], ar[i+1]);
		i++;
	}
}

function mouseOver(imgID, imgFile) {
	var img;
	var cursor;

	cursor = "hand";

	changeImage(imgID, imgFile);
	changeCursor(imgID, cursor);
}

function mouseOut(imgID, imgFile) {
	var img;
	var cursor;

	cursor = "default";

	changeImage(imgID, imgFile);
	changeCursor(imgID, cursor);
}

function changeImage(imgID, img) {
	document.getElementById(imgID).src = img;
}

function changeCursor(imgID, cursor) {
	document.getElementById(imgID).style.cursor = cursor;
}

function mouseClick(url, target) {
	window.target = target;
	window.location = url;
}
function showPopup(e, msg) {
	if (!document.getElementById) return;

	var obj = document.getElementById("popup");
	var x = e.clientX + scrollLeft();
	var y = e.clientY + scrollTop();
	var left = x - 60;
	var top = y + 16;

	obj.style.left = x + "px";
	obj.style.top = top + "px";
	obj.innerHTML = msg;
	obj.style.visibility = "visible";
}

function closePopup() {
	if (!document.getElementById) return;

	var obj = document.getElementById("popup");
	obj.style.visibility = "hidden";
}

function scrollTop() {
	if (window.pageYOffset) {
		return window.pageYOffset;
	} else if (document.compatMode == "CSS1Compat") {
		return document.body.parentNode.scrollTop;
	} else if (document.body.scrollTop) {
		return document.body.scrollTop;
	}

	return 0;
}

function scrollLeft() {
	if (window.pageXOffset) {
		return window.pageXOffset;
	} else if (document.compatMode == "CSS1Compat") {
		return document.body.parentNode.scrollLeft;
	} else if (document.body.scrollLeft) {
		return document.body.scrollLeft;
	}

	return 0;
}

// メッセージ文字列
var messageValue = "";
// 選択Value
var checkedValue = "";

/************************************************************************
	入力チェック用Script
************************************************************************/
// 必須チェック(テキストボックス)
function isEmpty(value) {
	if (value == "") {
		return true;
	}
	return false;
}
// 必須チェック(セレクトボックス)
function isSelect(obj) {
	if (obj.options[obj.selectedIndex].value == "") {
		return false;
	}
	return true;
}
// 必須チェック(チェックボックス)
function isCheck(obj) {
	if (obj.checked == true) {
		return true;
	}
	return false;
}
// 必須チェック(ラジオボタン)
function isRadio(obj) {
	checkedValue = "";
	// チェックボタンが一つの場合
	if (obj.length == 1) {
		if (obj.checked) {
			return true;
		}
		return false;
	}
	// チェックボタンが複数の場合
	else {
		for (var i = 0; i < obj.length; i++) {
			if (obj[i].checked) {
				checkedValue = obj[i].value;
				return true;
			}
		}
		return false;
	}
}
// 選択済みValue取得
function getCheckedValue(obj) {
	return checkedValue;
}
// 全角チェック
function isZenkaku(value) {
	for (var i = 0; i < value.length; i++) {
		var c = value.charCodeAt(i);
		if (c < 256 || (c >=0xff61 && c <=0xff9f)) {
			return false;
		}
	}
	return true;
}
// 全角ひらがなチェック
function isHiragana(value) {
	if (value.match(/^[ぁ-ん゛゜ー 　]+$/) == null) {
		return false;
	}
	return true;

}
// 数値チェック
function isNumeric(value) {
	return (value.match(/[0-9]+/g) == value);
}
// 数値n以上チェック
function isNumericMore(value, more) {
	if (value > more) {
		return true;
	}
	else {
		return false;
	}
}
// 数値範囲チェック
function isNumericRange(value, from, to) {
	if (from > value && value > to) {
		return false;
	}
	return true;
}
// 電話番号チェック
function isTelephonNumber(value) {
	data1 = value.match(/^[0-9-]{6,9}$|^[0-9-]{12}$/);
	data2 = value.match(/^\d{1,4}-\d{4}$|^\d{2,5}-\d{1,4}-\d{4}$/);
	if (!data1 && !data2) {
		return false;
	}
	return true;
}
// メッセージ登録
function setMessage(value) {
	if (isEmpty(messageValue) == true) {
		messageValue = value;
	}
	else {
		messageValue = messageValue + "\n";
		messageValue = messageValue + value;
	}
}
// メッセージ出力
function getMessage() {
	return messageValue;
}
// メッセージ初期化
function clearMeaasge() {
	messageValue = "";
}
// 日付形式チェック
function checkDateFormat(value) {
	if (! value.match(/^[0-9]{4}\/[0-9]{2}\/[0-9]{2}$/)) {
		setMessage("引数が yyyy/mm/dd 形式ではありません");
		return false;
	}
	return true; 
}
// 暦日チェック
function checkDate(value) {
	var s=value.split("/")
	var y=s[0];
	var m=s[1];
	var d=s[2];

	if (checkDateFormat(value) == false) {
		return false;
	}

	if (isNaN(y) || isNaN(m) || isNaN(d)) {
		setMessage("数字以外の文字が含まれています");
		return false;
	}
	else if (y.length != 4) {
		setMessage("年は西暦４桁で入力してください");
		return false;
	}
	else if (m < 1 || m > 12) {
		setMessage("月は１〜１２の数字を入力してください");
		return false;
	}
	else if (d<=0 || d>30+((m==4||m==6||m==9||m==11)?0:1) || (m==2&&d>28+(((y%4==0&&y%100!=0)||y%400==0)?1:0))) {
		setMessage(y+"年"+m+"月"+d+"日はありえない日付です");
		return false;
	}

	return true;
} 
// 日付編集
function to2(value) {
	var val = "" + value;
	if (val.length == 1) {
		return "0" + val;
	}
	else {
		return val;
	}
}
// メールアドレスチェック
function isMail(value) {
	data = value.match(/^\S+@\S+\.\S+$/);

	if (!data) {
		return false;
	}
	return true;
}

