/*
 * @(#) base.js
 *
 * 基本のJavaScript
 * @author tsukada@tdc
 * Copyright (c) 2009 SolidWorks Japan K.K. All Rights Reserved.
 */
// 指定されたFormの要素全てをdisabledにする。
function disabledAllForm(form) {

	if (form != null) {

		for (var i = 0; i < form.elements.length; i++) {
			if (
//				form.elements[i].type == 'text' ||
//				form.elements[i].type == 'radio' ||
//				form.elements[i].type == 'select-one' ||
//				form.elements[i].type == 'select-multiple' ||
//				form.elements[i].type == 'textarea'||
//				form.elements[i].type == 'file' ||
				form.elements[i].type == 'button' ||
				form.elements[i].type == 'submit'
			){
				form.elements[i].disabled='true';
			}
		}
	}

	// 2009/11/24 塚田更新 機能改修：通信中メッセージの削除
	//submitinfoOn();
}

// 指定されたFormの要素全てをundisabledにする。
function undisabledAllForm(form) {
	if (form != null) {
		for (var i = 0; i < form.elements.length; i++) {
			if (
//				form.elements[i].type == 'text' ||
//				form.elements[i].type == 'radio' ||
//				form.elements[i].type == 'select-one' ||
//				form.elements[i].type == 'select-multiple' ||
//				form.elements[i].type == 'textarea' ||
//				form.elements[i].type == 'file' ||
				form.elements[i].type == 'button' ||
				form.elements[i].type == 'submit'
			){
				form.elements[i].disabled='';
			}
		}
	}

	// 2009/11/24 塚田更新 機能改修：通信中メッセージの削除
	//submitinfoOff();
}

// 通信中のメッセージを表示する
function submitinfoOn() {
	var load = document.getElementById( 'loading' );
  	if( load ){
  		document.getElementById( 'loading' ).style.display = 'block';
  	}
}

// 通信中のメッセージを表示を消す
function submitinfoOff() {
  	var load = document.getElementById( 'loading' );
  	if( load ){
  		document.getElementById( 'loading' ).style.display = 'none';
  	}

}

// 文字列のバイト数を取得する
function getByte(text){
	count = 0;
	for ( var i=0; i<text.length; i++){
		var n = escape(text.charAt(i));
		if (n.length < 4){
			count++;
		}else{
			count+=2;
		}
	}
	return count;
}

function logout() {

	if(window.confirm('ログアウトしますか？')){
		var dynaForm = document.createElement("form");

		var form = dynaForm;
		document.body.appendChild(form);
		form.method = "POST";
		form.action = "logout.action";

		form.submit();
	}
}


// Eメールアドレスをチェックする
function checkEmail( mail ){

	// Eメールアドレスをローカル部とドメイン部に分ける
	var str = mail.split("@");

	// @マークが1つ以上もしくは0の場合
	if( str.length != 2 ){
		return false;
	}

	// ローカル部

	// 0文字以上
	if( str[0].length == 0 ){
		return false;
	}
	// 40文字以下
	if( str[0].length > 40 ){
		return false;
	}

	var tmp_domain = str[0].match("^[0-9A-Za-z.!#$%&'*+/=?^_`{|}~-]+$");
	if (tmp_domain != str[0]){
		return false;
	}
	// ピリオドは先頭及び最後には使えない
	if( str[0].charAt(0) == "." ){
		return false;
	}
	if( str[0].charAt( (str[0].length - 1) ) == "." ){
		return false;
	}

	// ドメイン部
	// 0文字以上
	if( str[1].length == 0 ){
		return false;
	}
	var tmp_domain = str[1].match("^[0-9A-Za-z.-]+$");
	if (tmp_domain != str[1]){
		return false;
	}
	// ピリオドは先頭及び最後には使えない
	if( str[1].charAt(0) == "." ){
		return false;
	}
	if( str[1].charAt( (str[1].length - 1) ) == "." ){
		return false;
	}
	// ピリオドは1つ以上含まれている必要がある
	if( str[1].indexOf( "." ) == -1 ){
		return false;
	}
	// ピリオドは連続で使えない
	if( str[1].indexOf( ".." ) != -1 ){
		return false;
	}



	return true;

}

