//----------------
// tools.js
//
// writeen by Michiyo Beauduin
//-----------------


//----------------------
//
//allConfirm
//
//<input type="button" name="submitButtonName" value=\"word_del" onClick="allConfirm('path','name');">
//----------------------
function allConfirm(path, msg1, msg2) {
	
	if(prompt(msg1 + " : " + msg2 + "\nIf you realy want to do it, please type YES.", "CANCEL") == 'YES') {
		location.href=path;
	}
}

//----------------------
//
//matches_re
//
//matches_re(email, false)
//----------------------
function matches_re(str, re, silent, msg) {

	if ((str == null) || (typeof(str) != "string")|| (str.length == 0)){
		silent || alert(msg + ": '" + str + "'");
		return false;
	}

	var result = re.exec(str);

	if ((result == null) || (result[0].length != str.length)) {
		silent || alert(msg + ": '" + str + "'");
		return false;
	}else {
		return true;
	}
}

//----------------------
//
//isEmail
//
//isEmail(email, false)
//----------------------
function isEmail(str, silent) {
	var email_re = /^[\.A-Za-z0-9_\-]+@[A-Za-z0-9_\-]+\.[\.A-Za-z0-9\-]+$/;
	var errmsg =  '正確にEmailアドレスを記入ください。';

	return matches_re(str, email_re,silent, errmsg);
}



//----------------------
//
//chkCheckBox
//
//chkCheckBox(Name)
//chkCheckbox(/Info/)
//----------------------
function chkCheckbox(str){
	checkboxflg=0;
	for(i=0;i<document.op.length;i++){
		if(str.test(document.op.elements[i].name)){
			if(document.op.elements[i].checked == true){
				checkboxflg=1;
			}
		}
	}

	return checkboxflg;
}


//----------------------
//
//getElementIndexByName
//
//getElementIndexByName("op","email")
// return 3
//----------------------
function getElementIndexByName(form_object,element_name) {
	var index = 0;

	for (var i = 0; i < form_object.elements.length; i++) {
		if (form_object.elements[i].name == element_name) {
			index = i;
			break;
		}
	}

	// alert("getElementIndexByName: element = " + element_name + ", index = " + index);
	return index;
}

//----------------------
//
//checkVide
//checknames=new array("email","url");
//checkVide("op",checknames)
// 
//----------------------
function checkVide(form_object,names,renames,escape) {
	var index = 0;
	var element_names = names.split(",");
	var element_renames = renames.split(",");
	var videnames = new Array();
	var j=0;
	for (var i = 0; i < form_object.elements.length; i++) {
		for( j=0; j < element_names.length; j++){
			if (form_object.elements[i].name == element_names[j] && (form_object.elements[i].value=="" || form_object.elements[i].value==" ")) {
				if (escape != 1){
					videnames[index]=element_renames[j];
					index++;
				} else {
					form_object.elements[i].value = " ";
				}
			}
		}
	}

	if (index !=0) {
		alert("Missing data in following fields\nInformation manquante dans les champs suivants\n------------------------------------------\n- " + videnames.join("\n- ") + "\n------------------------------------------");
		return false;
	}else {
		return true;
	}
}


//----------------------
//
//GoSubmit
// 
//----------------------
//function GoSubmit(this_form,names,renames,escape){

//	if(checkVide(this_form,names,renames,escape)){
//		this_form.submit();
//	}


function GoSubmit(this_form){
	var index = 0;
	var videnames = new Array();

	if(this_form.name.value==""){
		videnames[index]="- お名前をご記入ください。";
		index++;
	}
	if(!isEmail(this_form.from.value, 1)){
		videnames[index]="- 正確にEmailをご記入ください。";
		index++;
	}



	if(index==0){
		this_form.submit();
	}else{
	alert(videnames.join("\n"));
	}

}


