function check_form( form_object ){
	if( form_object ){
		for( i=0 ; i<form_object.elements.length ; i++ ){
			form_item = form_object.elements[ i ];
			form_value = form_item.value;
			form_length = form_value.length;

			if( form_item.attributes.getNamedItem( "minlength" ) && !form_item.disabled ){
				if( !isNaN( form_item.attributes.getNamedItem( "minlength" ).value )  ){
					if( form_length < form_item.attributes.getNamedItem( "minlength" ).value ){
						if( form_item.attributes.getNamedItem( "minlength_error" ) ){ alert( form_item.attributes.getNamedItem( "minlength_error" ).value ); }
							form_item.focus();
							return false;
					}
				}
			}

			if( form_item.attributes.getNamedItem( "url" ) && !form_item.disabled ){
//				url_reg = reg_exp( form_value , /^(http\:\/\/)?[\w|\/|\.|\~|\-]+$/gim );
				url_reg = reg_exp( form_value , /^http\:\/\/(www)?(.*)\.(.*)$/gim );
				error_flag = false;
				if( form_item.attributes.getNamedItem( "required" ) && !url_reg ){ error_flag = true; }
				else { if( form_length > 0 && !url_reg ){ error_flag = true; } }
				if( error_flag ){
					if( form_item.attributes.getNamedItem( "url_error" ) ){ if( form_item.attributes.getNamedItem( "url_error" ).value.length > 0 ){ alert( form_item.attributes.getNamedItem( "url_error" ).value ); } }
					form_item.value = "";
					form_item.focus();
					return false;
				}
			}

			if( form_item.attributes.getNamedItem( "email" ) && !form_item.disabled ){
				email_reg = reg_exp( form_value , /^[\w\.\-]+@[\w\.]+$/gim );
				error_flag = false;
				if( form_item.attributes.getNamedItem( "required" ) && !email_reg ){ error_flag = true; }
				else { if( form_length > 0 && !email_reg ){ error_flag = true; } }
				if( error_flag ){
					if( form_item.attributes.getNamedItem( "email_error" ) ){ if( form_item.attributes.getNamedItem( "email_error" ).value.length > 0 ){ alert( form_item.attributes.getNamedItem( "email_error" ).value ); } }
					form_item.value = "";
					form_item.focus();
					return false;
				}
			}

			if( form_item.attributes.getNamedItem("notempty") && !form_item.disabled ){
				if( form_length == 0 ){
					if( form_item.attributes.getNamedItem( "notempty_error" ) ){
						if( form_item.attributes.getNamedItem( "notempty_error" ).value.length > 0 ){
							alert( form_item.attributes.getNamedItem( "notempty_error" ).value );
						}
					}
				form_item.focus();
				return false;
				}
			}

			if( form_item.attributes.getNamedItem("maxlength") && !form_item.disabled ){
				if( form_length > form_item.attributes.getNamedItem("maxlength").value ){
					if( form_item.attributes.getNamedItem( "maxlength_error" ) ){ alert( form_item.attributes.getNamedItem( "maxlength_error" ).value ); }
					fstr = "";
					for( q=0; q < form_item.attributes.getNamedItem( "maxlength" ).value; q++ ){ fstr += form_value.charAt( q ); }
					form_item.value = "";
					form_item.value = fstr;
					form_item.focus();
					return false;
				}
			}

			if( form_item.attributes.getNamedItem( "number" ) && !form_item.disabled ){
				if( form_item.attributes.getNamedItem( "required" ) ){
					if( isNaN( form_value ) ){
						if( form_item.attributes.getNamedItem( "number_error" ) ){ alert( form_item.attributes.getNamedItem( "number_error" ).value ); }
						form_item.value = "";
						form_item.focus();
						return false;
					}
				}
				else{
					if( form_length > 0 ){
						if( isNaN( form_value ) ){
							if( form_item.attributes.getNamedItem( "number_error" ) ){ alert( form_item.attributes.getNamedItem( "number_error" ).value ); }
							form_item.value = "";
							form_item.focus();
							return false;
						}
					}
				}
			}


			if( form_item.attributes.getNamedItem("radiocollection") && !form_item.disabled ){
				if( form_item.attributes.getNamedItem("radiocollection").value.length > 0 ){
					radio_col = document.getElementsByName( form_item.attributes.getNamedItem( "radiocollection" ).value );
					radio_checked_count = 0;
					for( q=0 ; q<radio_col.length ; q++ ){ if( radio_col[q].checked ){ radio_checked_count++; } }
					if( radio_checked_count == 0 ){
						if( form_item.attributes.getNamedItem("radiocollection_error") ){ alert( form_item.attributes.getNamedItem("radiocollection_error").value ); }
						return false;
					}
				}
			}


		}
	}
	else{
		alert( "check html code! (return check_form(this);)" );
		return false;
	}

//	return false;
}

function reg_exp( source_string , reg_pattern ){
	var reg = new RegExp( reg_pattern );
	return ( reg.test( source_string ) );
}