function isNumeric(num) {
	var exp = new RegExp("^[0-9-.]*$","g");
	return exp.test(num);
}

function verifNumeric(obj) {
	if ( ( !(isNumeric(obj.value))) || ( obj.value == '' ) ) {
		alert('This field must be a decimal number.');
		return false;
	}
	return true;
}

function verifForm() {
	var messageError = '';
	var placeTitle = document.getElementById("placeTitle").value;
	var placeDescription = document.getElementById("placeDescription").value;
	var placeObjectivesAndExceptedResults = document.getElementById("placeObjectivesAndExceptedResults").value;
	var placeKeyword = document.getElementById("placeKeyword").value;
	var placeWFDObjective = document.getElementById("placeWFDObjective").value;
	var placeIWRMTheme = document.getElementById("placeIWRMTheme").value;
	var placeOther = document.getElementById("placeOther").value;
	var ST_ST = document.getElementById("ST_ST").value;
	var ST_GT = document.getElementById("ST_GT").value;
	var ST_RT = document.getElementById("ST_RT").value;
	var ST_UT = document.getElementById("ST_UT").value;
	var ST_UFT = document.getElementById("ST_UFT").value;
	var GT_ST = document.getElementById("GT_ST").value;
	var GT_GT = document.getElementById("GT_GT").value;
	var GT_RT = document.getElementById("GT_RT").value;
	var GT_UT = document.getElementById("GT_UT").value;
	var GT_UFT = document.getElementById("GT_UFT").value;
	var RT_ST = document.getElementById("RT_ST").value;
	var RT_GT = document.getElementById("RT_GT").value;
	var RT_RT = document.getElementById("RT_RT").value;
	var RT_UT = document.getElementById("RT_UT").value;
	var RT_UFT = document.getElementById("RT_UFT").value;
	var UT_ST = document.getElementById("UT_ST").value;
	var UT_GT = document.getElementById("UT_GT").value;
	var UT_RT = document.getElementById("UT_RT").value;
	var UT_UT = document.getElementById("UT_UT").value;
	var UT_UFT = document.getElementById("UT_UFT").value;
	var UFT_ST = document.getElementById("UFT_ST").value;
	var UFT_GT = document.getElementById("UFT_GT").value;
	var UFT_RT = document.getElementById("UFT_RT").value;
	var UFT_UT = document.getElementById("UFT_UT").value;
	var UFT_UFT = document.getElementById("UFT_UFT").value;

	if ( ( !(isNumeric(placeTitle))) || ( placeTitle == '' ) ) {
		messageError = messageError + 'The title coefficient must be a decimal number.\n';
	}
	if ( ( !(isNumeric(placeDescription))) || ( placeDescription == '' ) ) {
		messageError = messageError + 'The description coefficient must be a decimal number.\n';
	}
	if ( ( !(isNumeric(placeObjectivesAndExceptedResults))) || ( placeObjectivesAndExceptedResults == '' ) ) {
		messageError = messageError + 'The objectives and expected results coefficient must be a decimal number.\n';
	}
	if ( ( !(isNumeric(placeKeyword))) || ( placeKeyword == '' ) ) {
		messageError = messageError + 'The keyword coefficient must be a decimal number.\n';
	}
	if ( ( !(isNumeric(placeWFDObjective))) || ( placeWFDObjective == '' ) ) {
		messageError = messageError + 'The WFD objective coefficient must be a decimal number.\n';
	}
	if ( ( !(isNumeric(placeIWRMTheme))) || ( placeIWRMTheme == '' ) ) {
		messageError = messageError + 'The IWRM theme coefficient must be a decimal number.\n';
	}
	if ( ( !(isNumeric(placeOther))) || ( placeOther == '' ) ) {
		messageError = messageError + 'The other coefficient must be a decimal number.\n';
	}
	if ( ( !(isNumeric(ST_ST))) || ( ST_ST == '' ) ) {
		messageError = messageError + 'The value in the ST row and ST column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(ST_GT))) || ( ST_GT == '' ) ) {
		messageError = messageError + 'The value in the ST row and GT column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(ST_RT))) || ( ST_RT == '' ) ) {
		messageError = messageError + 'The value in the ST row and RT column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(ST_UT))) || ( ST_UT == '' ) ) {
		messageError = messageError + 'The value in the ST row and UT column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(ST_UFT))) || ( ST_UFT == '' ) ) {
		messageError = messageError + 'The value in the ST row and UFT column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(GT_ST))) || ( GT_ST == '' ) ) {
		messageError = messageError + 'The value in the GT row and ST column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(GT_GT))) || ( GT_GT == '' ) ) {
		messageError = messageError + 'The value in the GT row and GT column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(GT_RT))) || ( GT_RT == '' ) ) {
		messageError = messageError + 'The value in the GT row and RT column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(GT_UT))) || ( GT_UT == '' ) ) {
		messageError = messageError + 'The value in the GT row and UT column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(GT_UFT))) || ( GT_UFT == '' ) ) {
		messageError = messageError + 'The value in the GT row and UFT column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(RT_ST))) || ( RT_ST == '' ) ) {
		messageError = messageError + 'The value in the RT row and ST column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(RT_GT))) || ( RT_GT == '' ) ) {
		messageError = messageError + 'The value in the RT row and GT column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(RT_RT))) || ( RT_RT == '' ) ) {
		messageError = messageError + 'The value in the RT row and RT column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(RT_UT))) || ( RT_UT == '' ) ) {
		messageError = messageError + 'The value in the RT row and UT column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(RT_UFT))) || ( RT_UFT == '' ) ) {
		messageError = messageError + 'The value in the RT row and UFT column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(UT_ST))) || ( UT_ST == '' ) ) {
		messageError = messageError + 'The value in the UT row and ST column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(UT_GT))) || ( UT_GT == '' ) ) {
		messageError = messageError + 'The value in the UT row and GT column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(UT_RT))) || ( UT_RT == '' ) ) {
		messageError = messageError + 'The value in the UT row and RT column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(UT_UT))) || ( UT_UT == '' ) ) {
		messageError = messageError + 'The value in the UT row and UT column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(UT_UFT))) || ( UT_UFT == '' ) ) {
		messageError = messageError + 'The value in the UT row and UFT column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(UFT_ST))) || ( UFT_ST == '' ) ) {
		messageError = messageError + 'The value in the UFT row and ST column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(UFT_GT))) || ( UFT_GT == '' ) ) {
		messageError = messageError + 'The value in the UFT row and GT column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(UFT_RT))) || ( UFT_RT == '' ) ) {
		messageError = messageError + 'The value in the UFT row and RT column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(UFT_UT))) || ( UFT_UT == '' ) ) {
		messageError = messageError + 'The value in the UFT row and UT column must be a decimal number.\n';
	}
	if ( ( !(isNumeric(UFT_ST))) || ( UFT_ST == '' ) ) {
		messageError = messageError + 'The value in the UFT row and UFT column must be a decimal number.\n';
	}
	if ( messageError != '' ) {
		alert(messageError);
		return false;
	}
	return true;
}


function verifFormAddSynonym() {
	var messageError = '';
	var synonym = document.getElementById("SYNONYM_SINGULAR").value;
	var word = document.getElementById("WORD").value;

	if ( synonym == '' ) {
		messageError = messageError + 'The field synonym mustn\'t be empty.\n';
	}
	if ( word == 0 ) {
		messageError = messageError + 'The word reference should be chosen.\n';
	}
	if ( messageError != '' ) {
		alert(messageError);
		return false;
	}
	
	return true;
}

function verifFormAddRule() {
	var messageError = '';
	var synonym = document.getElementById("conditionChoice").value;
	var word = document.getElementById("keyWord_0").value;

	if ( synonym == 'selectRule' ) {
		messageError = messageError + 'The rule definition must be indicated\n';
	}
	if ( word == 'selectKeyword' ) {
		messageError = messageError + 'There should be at least one word selected.\n';
	}
	if ( messageError != '' ) {
		alert(messageError);
		return false;
	}
	
	return true;
}