/* --------------------------------------------------------------------------------
 *
 *		メールアドレスライブラリ
 *
 *		Copyright(c) 2004-2008 Atsushi Oguma  <aog206rc@qj9.so-net.ne.jp>
 *		OG-Works
 *		3-11-8-203 Tsumada-kita, Atsugi-shi, Kanagawa-ken 243-0812, Japan
 *
 *		Copyright(c) 2004-2008 Atsushi Oguma
 *		Panorama snow academy ski school
 *		6666-703 Fujimi, Fujimi-cho, Suwa-gun, Nagano-ken 399-0211, Japan
 *
 * -------------------------------------------------------------------------------- */



/*
 *	メールアドレスが正しいか判定する。
 *
 *	@param	addr	メールアドレス
 *
 *	@return		判定結果
 *				true	正しい
 *				false	不正
 */
function checkEMailAddressFormatValidity(address) {
	return( (address.match(/^[\w._-]+@[\w._-]+$/)) ? true : false ) ;
}


/*
 *	メールアドレスに含まれる不正文字リストを取得する
 *
 *	@param	addr	メールアドレス
 *
 *	@output	list	不正文字リスト
 */
function getEMailAddressIllegalCharaList(addr,list) {
	var		ii, jj, fExist;

	for( ii=0; ii<addr.length; ii++ ) {
		ch = addr.charAt(ii) ;
		if( !(ch.match(/[\w@\-_.]/)) ) {
			fExist = false ;
			for( jj=0; jj<list.length; jj++ ) {
				if( ch==list[jj] ) {
					fExist = true ;
					break ;
				}
			}
			if( !fExist ) {
				list.push( ch ) ;
			}
		}
	}
}


/*
 *	メールアドレスが不正であることを警告ダイアログで表示する。
 *
 *	@param	addr	メールアドレス
 */
alertIllegalEmailAddressFormat = function (address) {
	var		list = new Array();
	var		msg="" ;
	var		max=8;
	getEMailAddressIllegalCharaList(address,list) ;
	if( list.length>0 ) {
		msg += "[ "
		for( ii=0; ii<list.length; ii++ ) {
			if( ii>max ) {
				msg += "... " ;
				break ;
			}
			msg += list[ii] ;
			if( ii<list.length-1 ) {
				msg += " "
			}
		}
		this.alert( "メールアドレスに不正な文字が含まれています。\n\n"+msg+"]" ) ;
	}
	else {
		this.alert( "メールアドレスの書式が不正です。\n\n・全角文字で入力されている\n・＠マークがない\nなど" ) ;
	}
}






function RegTest() {
	var	eaddrs = new Array(
		  "   @  "
		, "0va25b0-78d5j7b@ezweb.ne.jp"
		, "1249yf@yuasa.co.jp"
		, "Blue_Kim2@t.vodafone.ne.jp"
		, "a_class_w169@yahoo.co.jp"
		, "akio-chikuni@v.travelss.co.jp"
		, "alfha@happy.odn.ne.jp"
		, "aog206rc@qj9.so-net.ne.jp"
		, "aroiphet@yahoo.co.jp"
		, "asato@heartlab.co.jp"
		, "atuhiko-s@m5.gyao.ne.jp"
		, "eco@newdealnet.com"
		, "eiichi0519taka@u01.gate01.com"
		, "eizi-i@a5.ctktv.ne.jp"
		, "fischer.masa.rexxam.@docomo.ne.jp"
		, "fumiko87@mbox.kyoto-inet.or.jp"
		, "fwhs1120@mb.infoweb.ne.jp"
		, "fwix4293@mb.infoweb.ne.jp"
		, "g-act@vesta.ocn.ne.jp"
		, "gakuyou@circus.ocn.ne.jp"
		, "hand.s@sirius.ocn.ne.jp"
		, "harapekoaomushi8810@gmail.com"
		, "hige－yokki@d06.itscom.net"
		, "hirodori@m2.cty-net.ne.jp"
		, "hitomis39@aol.com"
		, "hori31si09yo@sky.sannet.ne.jp"
		, "hy8179@gaia.eonet.ne.jp"
		, "ichikawa-roses@ny.thn.ne.jp"
		, "initial-n555@mail.bbexcite.jp"
		, "japanhiro@jcom.home.ne.jp"
		, "jg0ppr@hb.tp1.jp"
		, "jhorie-tky@umin.ac.jp"
		, "jtake@mac.com"
		, "jun-ma@mx2.avis.ne.jp"
		, "junuoyama@aol.com"
		, "k_tanimu@xa3.so-net.ne.jp"
		, "katonozomi@hotmail.com"
		, "kazumi@hello.email.ne.jp"
		, "ke.ohta@mg.scn-net.ne.jp"
		, "kikkawa@bg.mbn.or.jp"
		, "kin12272002@yahoo.co.jp"
		, "kodai.m@gmail.com"
		, "kopf-schilehrer@herb.ocn.ne.jp"
		, "labomba@csc.jp"
		, "m.yoshikawa@shimz.co.jp"
		, "masarukizashi@yahoo.co.jp"
		, "miki.kita@gmail.com"
		, "miyuki_m@Wd5.so-net.ne.jp"
		, "msato@yamanashi.ac.jp"
		, "myanai@kai.ed.jp"
		, "nakamura_ave@msj.biglobe.ne.jp"
		, "naomi.toku@nifty.ne.jp"
		, "nya-su@jcom.home.ne.jp"
		, "os_8trees@ybb.ne.jp"
		, "oyaji_mikan@yahoo.co.jp"
		, "qqb56f89@herb.ocn.ne.jp"
		, "quiche@d2.dion.ne.jp"
		, "sakka-kenya-meika-papa@ezweb.ne.jp"
		, "sakutyan@sky.plala.or.jp"
		, "sanraizu307mo@yahoo.co.jp"
		, "school@pluto.plala.or.jp"
		, "setoh@rainbow.dti.ne.jp"
		, "sim@inter7.jp"
		, "smile-smile-mari910@c04.itscom.net"
		, "snoopy-mayumi@msa.biglobe.ne.jp"
		, "snow.dragon-no.1@ezweb.ne.jp"
		, "snowdance241@white.plala.or.jp"
		, "so-what@beige.plala.or.jp"
		, "staff@pension-raccoon.com"
		, "sukesan.san.3@ezweb.ne.jp"
		, "t.0084.powder@nifty.com"
		, "t.murayama@marks.or.jp"
		, "t.taisei@jcom.home.ne.jp"
		, "takashi.ono@gmail.com"
		, "takashi@sgi.co.jp"
		, "tatsunoshin@leaf.ocn.ne.jp"
		, "tatsunoshin@leaf.ocn.ｎe.jp"
		, "tera-g-310710@nifty.com"
		, "tetsuyagomi@yahoo.co.jp"
		, "tkhfr918@ybb.ne.jp"
		, "tmsty@ares.eonet.ne.jp"
		, "tokuda@japan.email.ne.jp"
		, "tom12yama28@kne.biglobe.ne.jp"
		, "tomotomo321@mth.biglobe.ne.jp"
		, "toparumi@navy.plala.or.jp"
		, "toshisuzuki@mtb.biglobe.ne.jp"
		, "tyoko@bc4.so-net.ne.jp"
		, "y-aosasa@kg8.so-net.ne.jp"
		, "ynakaii@ybb.ne.jp"
		, "yoko-fm@cablenet.ne.jp"
		, "yoshiki_f@hotmail.com"
		, "ｊａｚｚｗａｖｅ２０００@ｙａｈｏｏ．ｃｏ．ｊｐ"
	);
	var		ii, msg="" ;



	this.getXXX = function (no,addr,flag)  {
		var		msg = "" ;
		var		msg2 = "" ;
		var		ii, jj ;

		msg += "<tr>" ;
		msg += "<td>" + no + "</td>" ;
		if( flag ) {
			msg += "<td>○</td>" ;
		}
		else {
			msg += "<td style='color:#ff0000;font-weight:bold;'>×</td>" ;
		}

		msg += "<td>" ;
		msg += getYYY(addr) ;
		msg += "</td>" ;
		msg += "</tr>" ;
		return( msg ) ;
	}


	this.getYYY = function (addr)  {
		var		msg = "" ;
		var		ii, jj ;
	
		for( ii=0; ii<addr.length; ii++ ) {
			ch = addr.charAt(ii) ;
			if( !(ch.match(/[\w@\-_.]/)) ) {
				msg += "<span style='color:#ff0000;font-weight:bold;'>" + ch + "</span>" ;
			}
			else {
				msg += ch ;
			}
		}
		return( msg ) ;
	}

	msg = "<table cellspacing='0' cellpadding='2' border='1'>" ;
	for( ii=0; ii<eaddrs.length; ii++ ) {
		addr = eaddrs[ii] ;

		res = addr.match(/^[\w._-]+@[\w._-]+$/) ;
		msg += getXXX(ii,addr,((res==null) ? false : true));

	}
	msg += "</table>" ;

	document.write( msg ) ;
}

