// JavaScript Document
function onSearch(mode, id)
{
	var form = document.forms['busket'];
	form.mode = mode;
	form.id = id;
	form.action = '/list';
	form.submit();
}
function onSearchPurpose()
{
	var form = document.forms['busket'];
	form.mode.value = 1;
	form.id.value = form.purpose.value;
	form.action = '/list';
	form.submit();
}
function onSearchGenre1()
{
	var form = document.forms['busket'];
	form.mode.value = 2;
	form.id.value = form.genre1.value;
	form.action = '/list';
	form.submit();
}
function onSearchGenre2()
{
	var form = document.forms['busket'];
	form.mode.value = 2;
	form.id.value = form.genre2.value;
	form.action = '/list';
	form.submit();
}
function onSearchArea1()
{
	var form = document.forms['busket'];
	form.mode.value = 3;
	form.id.value = form.area1.value;
	form.action = '/list';
	form.submit();
}
function onSearchArea2()
{
	var form = document.forms['busket'];
	form.mode.value = 3;
	form.id.value = form.area2.value;
	form.action = '/list';
	form.submit();
}

// disable BackSpace key
function CancelBS()
{
	if (event.keyCode == 8) {
		if (event.srcElement.tagName != "INPUT") {
			event.returnValue  = false;
		}
	}
}

// disable ExecButton
function disableExecButton()
{
	button = document.form1.execButton;
	if (!button.disabled) {
		button.disabled = true;
	}
	for (i=0; i<button.length; i++) {
		button[i].disabled = true;
	}
}

// enable ExecButoon
function enableExecButton()
{
	button = document.form1.execButton;
	if (button.disabled) {
		button.disabled = false;
	}
	for (i=0; i<button.length; i++) {
		button[i].disabled = false;
	}
}

// numeric check type 1
function IsNumeric(s)
{
	for (var i=0; i<s.length; i++) {
		var c = s.charAt(i);
		if (c<'0' || '9'<c) {
			return false
		}
	}
	return true
}
// mail address check type 1
function IsMailAddress(s)
{
	var mailStr = "0123456789" +
		"ABCDEFGHIJKLMNOPQRSTUVWXYZ" +
		"abcdefghijklmnopqrstuvwxyz" +
		"!#$%&'*+-./=?^_`{|}~@";
	var flag = 0;
	for (var i=0; i<s.length; i++) {
		var c = s.charAt(i);
		var offset = mailStr.indexOf(c);
		if (offset == -1) {
			return false;
		}
		if (c == '@') {
			if (i>0 && flag == 0) {
				flag = 1;
			}
			else {
				return false;
			}
		}
		if (flag == 1 && c == '.') flag = 2;
	}
	if (flag == 2) return true;
	return false;
}

// numeric check type 2(allow minus sign)
function IsNumeric2(s)
{
	for (var i=0; i<s.length; i++) {
		var c = s.charAt(i);
		if (c!='-') {
			if (c<'0' || '9'<c) {
				return false
			}
		}
	}
	return true
}

// alphabet or numeric check
function IsAlphaNumeric(s)
{
	for (var i=0; i<s.length; i++) {
		var c = s.charCodeAt(i);
		if (!(0x0020<=c && c<=0x007e)) return false;
	}
	return true;
}

// furigana check
function IsFurigana(s)
{
	var allowStr = "アイウエオカキクケコサシスセソタチツテトナニヌネノ" +
		"ハヒフヘホマミムメモヤユヨラリルレロワヲンァィゥェォッャュョ" +
		"ガギグゲゴザジズゼゾダヂヅデドバビブベボパピプペポヮヰヱヴヵヶ" +
		"あいうえおかきくけこさしすせそたちつてとなにぬねの" +
		"はひふへほまみむめもやゆよらりるれろわをんぁぃぅぇぉっゃゅょ" +
		"がぎぐげござじずぜぞだぢづでどばびぶべぼぱぴぷぺぽゎゐゑ" +
		"　゛゜ー ｦｧｨｩｪｫｬｭｮｯｰｱｲｳｴｵｶｷｸｹｺｻｼｽｾｿﾀﾁﾂﾃﾄﾅﾆﾇﾈﾉﾊﾋﾌﾍﾎﾏﾐﾑﾒﾓﾔﾕﾖﾗﾘﾙﾚﾛﾜﾝﾞﾟ";
	for (var i=0; i<s.length; i++) {
		var c = s.charAt(i);
		var offset = allowStr.indexOf(c);
		if (offset == -1) {
			return false;
		}
	}
	return true;
}

// half-width kana check
function IsAlphaNumeric2(s)
{
	for (var i=0; i<s.length; i++) {
		var d = s.charCodeAt(i);
		// 全角文字は不可
		if (!(0x0020<=d && d<=0x007e) && !(0xff60<=d && d<=0xff9f)) return false;
		var c = s.charAt(i);
		// 半角英字は不可
		if ('a'<=c && c<='z') return false;
	}
	return true;
}

// full-width check
function IsZenkaku(s)
{
	for (var i=0; i<s.length; i++){
		var c = s.charCodeAt(i);
		if (c<128 || (0xff60<=c && c<=0xff9f)) {
			return false;
		}
	}
	return true;
}

// full-width check
function IsZenkaku2(s)
{
	for (var i=0; i<s.length; i++){
		var c = s.charCodeAt(i);
		if (c == 32) continue;
		if (c<128 || (0xff60<=c && c<=0xff9f)) {
			return false;
		}
	}
	return true;
}

// column width check
function WidthCheck(s, n)
{
	var w = 0;
	for (var i=0; i<s.length; i++) {
		if (w >= n) {
			return false;
		}
		var c = s.charCodeAt(i);
		if (c<128 || (0xff60<=c && c<=0xff9f)) {
			w++;
		}
		else {
			w+=2;
		}
	}
	return true;
}

// password check
function PasswordCheck(s, n)
{
	var passwdStr = "0123456789" +
		"ABCDEFGHIJKLMNOPQRSTUVWXYZ" +
		"abcdefghijklmnopqrstuvwxyz" +
		"!$&()*+,-./:;=?@_[]\\^<>`";
	var l = s.length;
	if (l == 0) return 1;
	if (l < n) return 2;
	for (var i=0; i<l; i++) {
		var c = s.charAt(i);
		var offset = passwdStr.indexOf(c);
		if (offset == -1) {
			return 3;
		}
	}
	return 0;
}


// password check
function PasswordCheck2(s, n)
{
	var passwdStr = "0123456789" +
		"ABCDEFGHIJKLMNOPQRSTUVWXYZ" +
		"abcdefghijklmnopqrstuvwxyz" +
		"!$&()*+,-./:;=?@_";
	var l = s.length;
	if (l == 0) return 1;
	if (l < n) return 2;
	for (var i=0; i<l; i++) {
		var c = s.charAt(i);
		var offset = passwdStr.indexOf(c);
		if (offset == -1) {
			return 3;
		}
	}
	return 0;
}

// null check
function NullCheck(value, name)
{
	if (value.length == 0) {
		alert(name + "が入力されていません");
		return false;
	}
	return true;
}

// range check
function RangeCheck(value, minvalue, maxvalue, message)
{
	var v = eval(value);
	if (v < minvalue || v > maxvalue) {
		var msg = message.replace(new RegExp("\\$1", "g"), minvalue);
		msg = msg.replace(new RegExp("\\$2", "g"), maxvalue);
		alert(msg);
		return false;
	}
	return true;
}

// trimming
function Trim(str)
{
	return str.replace(new RegExp("^ +| +$", "g"), "")
}

// write mail address cookie
function CookieWrite(mailAddress)
{
	expDate = new Date();
	expDate.setTime(expDate.getTime()+(1000*24*60*60*1000));
	document.cookie = "MYCOM_Mail_and_Point_Bank=" + escape(mailAddress.value) +
		";expires=" + expDate.toGMTString() + ";domain=ptja.jp;path=/";
}

// read mail address cookie
function CookieRead(mailAddress)
{
	cookieStr = document.cookie + ";";
	offset = cookieStr.indexOf("MYCOM_Mail_and_Point_Bank=");
	if (offset == -1) return;
	s = offset + 26;
	e = cookieStr.indexOf(";", s);
	v = unescape(cookieStr.substring(s, e));
	if (v != "undefined") mailAddress.value = v;
}

// set the focus
function SetFocus(obj)
{
	obj.focus();
	if (obj.type=="text" || obj.type=="password") obj.select();
	return false;
}

// close window
function CallWindowClose()
{
	window.close();
}

