function changeContent(strInput, strString, objTextarea) {
		if (strInput!="") {
			addAString(objTextarea, strString);
		}else {
			removeAString(objTextarea, strString);
		}
	}

	function addAString(objTextarea, strString) {
		removeAString(objTextarea, strString);
		if (objTextarea.value != "") {objTextarea.value = objTextarea.value + ", " ; }
		objTextarea.value = objTextarea.value + strString;
	}
	
	function removeAString(objTextarea, strString) {
	//alert('remove a string:' + "\n" + objTextarea.name + "\n" + strString);
		objTextarea.value = replaceCharacters(objTextarea.value, ', ' + strString + ', ', '');
		objTextarea.value = replaceCharacters(objTextarea.value, strString + ', ' ,'');
		objTextarea.value = replaceCharacters(objTextarea.value,strString,'');
	}

	function replaceCharacters(conversionString,inChar,outChar)
	{
	  var convertedString = conversionString.split(inChar);
	  convertedString = convertedString.join(outChar);
	  return convertedString;
	}
	
function checkSelected( objSel ) {
	var isok = false;
	var n;
	if (objSel!=null){
		if (objSel.type=='select-one'||objSel.type=='select-multiple'){
			var selected = objSel.selectedIndex;
			if (objSel.options[selected].value != '' ) {
					isok = true;
			}
			//alert(objSel.form.name + ': ' + objSel.name + ': ' + selected + ': ' + objSel.options[selected].value);
		}else {//alert("Failed wrong type:" + objSel.type);
		}
	}else {//alert("Failed on null");
	}
	return isok;
}


function checkFieldEmail( objEmail )
{
	if (!objEmail) return true;
	if (objEmail.value == '') return true;
	var theString = objEmail.value;
    var splitted = theString.match("^(.+)@(.+)$");
    if(splitted == null) return false;
	
    if(splitted[1] != null )
    {
      var regexp_user=/^\"?[\w-_\.]*\"?$/;
      if(splitted[1].match(regexp_user) == null) return false;
    }

    if(splitted[2] != null)
    {
      var regexp_domain=/^[\w-\.]*\.[A-Za-z]{2,4}$/;
      if(splitted[2].match(regexp_domain) == null) 
      {
	    var regexp_ip =/^\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]$/;
	    if(splitted[2].match(regexp_ip) == null) return false;
      }// end  if
      return true;
    }
return false;
}
function checkFieldNotEmpty( objValue )
{ 
var isok = true;
if (!objValue) return true;
if (objValue.value == '') return false;
   if(eval(objValue.value.length) == 0) 
   { 
	  isok = false; 
   }// end if 
  return isok;
}// end function


function checkFieldIsAlphaNumber( objValue )
{ 
var isok = true;
if (!objValue) return true;
  var charpos = objValue.value.search("[^A-Za-z0-9]"); 
  if(objValue.value.length > 0 &&  charpos >= 0) 
  { 
	//alert(strError + "\n [Error character position " + eval(charpos+1)+"]"); 
	isok = false; 
  }// end if 
  return isok;
}// end function

function checkFieldIsNumber( objValue )
{ 
var isok = true;
if (!objValue) return true;
  var charpos = objValue.value.search("[^0-9]"); 
  if(objValue.value.length > 0 &&  charpos >= 0) 
  { 
	//alert(strError + "\n [Error character position " + eval(charpos+1)+"]"); 
	isok = false; 
  }// end if 
  return isok;
}// end function

function checkFieldIsAlpha( objValue )
{ 
var isok = true;
if (!objValue) return true;
  var charpos = objValue.value.search("[^A-Za-z]"); 
  if(objValue.value.length > 0 &&  charpos >= 0) 
  { 
	//alert(strError + "\n [Error character position " + eval(charpos+1)+"]"); 
	isok = false; 
  }// end if 
  return isok;
}// end function

function checkFieldIsAlphaNumHyphen( objValue )
{ 
var isok = true;
if (!objValue) return true;
  var charpos = objValue.value.search("[^A-Za-z0-9\-_]"); 
  if(objValue.value.length > 0 &&  charpos >= 0) 
  { 
	//alert(strError + "\n [Error character position " + eval(charpos+1)+"]"); 
	isok = false; 
  }// end if 			
  return isok;
}// end function

function isValidDateUK( objValue ) 
{
// Checks for the following valid date formats:
// DD/MM/YY   DD/MM/YYYY   DD-MM-YY   DD-MM-YYYY
// Also separates date into  day, month, and year variables

var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{2}|\d{4})$/;
// To require a 4 digit year entry, use this line instead:

//	var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{4})$/;
var isok = true;
if (!objValue) return true;
var dateStr = objValue.value;
var matchArray = dateStr.match(datePat); // is the format ok?

	if (matchArray == null) 
		{
		//	alert("Date is not in a valid format. (dd/mm/yy)")
			return false;
		}

	day = matchArray[1];
	month = matchArray[3]; // parse date into variables
	year = matchArray[4];
	//alert("Date Parsed:" + " \nDay:" + day + " \nMonth:" + month + " \nYear:" + year );
	
	if (month < 1 || month > 12) 
		{ // check month range
		//	alert("Month must be between 1 and 12.");
			return false;
		}
	
	if (day < 1 || day > 31) 
		{
		//	alert("Day must be between 1 and 31.");
			return false;
		}
	
	if ((month==4 || month==6 || month==9 || month==11) && day==31) 
		{
		//	alert("Month "+month+" doesn't have 31 days!")
			return false;
		}
	
	if (month == 2) 
		{ // check for february 29th
			var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
			if (day>29 || (day==29 && !isleap)) 
				{
		//			alert("February " + year + " doesn't have " + day + " days!");
					return false;
				}
		}
	return true;  // date is valid
}

function isValidDateUS( objValue ) 
{
// Checks for the following valid date formats:
// DD/MM/YY   DD/MM/YYYY   DD-MM-YY   DD-MM-YYYY
// Also separates date into  day, month, and year variables

var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{2}|\d{4})$/;
// To require a 4 digit year entry, use this line instead:

//	var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{4})$/;
var isok = true;
if (!objValue) return true;
var dateStr = objValue.value;
var matchArray = dateStr.match(datePat); // is the format ok?

	if (matchArray == null) 
		{
		//	alert("Date is not in a valid format. (dd/mm/yy)")
			return false;
		}

	day = matchArray[2];
	month = matchArray[1]; // parse date into variables
	year = matchArray[4];
	//alert("Date Parsed:" + " \nDay:" + day + " \nMonth:" + month + " \nYear:" + year );
	
	if (month < 1 || month > 12) 
		{ // check month range
		//	alert("Month must be between 1 and 12.");
			return false;
		}
	
	if (day < 1 || day > 31) 
		{
		//	alert("Day must be between 1 and 31.");
			return false;
		}
	
	if ((month==4 || month==6 || month==9 || month==11) && day==31) 
		{
		//	alert("Month "+month+" doesn't have 31 days!")
			return false;
		}
	
	if (month == 2) 
		{ // check for february 29th
			var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
			if (day>29 || (day==29 && !isleap)) 
				{
		//			alert("February " + year + " doesn't have " + day + " days!");
					return false;
				}
		}
	return true;  // date is valid
}

