function BreakItUp(frm,FieldName)
{
  var FormLimit = 102399;
  var FieldObj = document.getElementById(FieldName);
  if (!FieldObj) return;
  var TempVar = new String;
  TempVar = FieldObj.value;

  if (TempVar.length > FormLimit) {
    FieldObj.value = TempVar.substr(0, FormLimit);
    TempVar = TempVar.substr(FormLimit);

    while (TempVar.length > 0) {
      var objInp = document.createElement("INPUT");
      objInp.name = FieldName;
      objInp.type = "hidden";
      objInp.value = TempVar.substr(0, FormLimit);
      frm.appendChild(objInp);
      TempVar = TempVar.substr(FormLimit);
    }
  }
}

function isAlphanumeric (s) { 
  return /^[\sa-zA-Z0-9_-]+$/.test(s);
}

function emptyField(textObj) {
	if (textObj.value.length == 0) return true;
	for (var i=0; i<textObj.value.length; ++i)  {
		var ch = textObj.value.charAt(i);
		if (ch != ' ' && ch != '\t') return false;
	}
	return true;
}
				
function getYear(d) { 
	return (d < 1000) ? d + 2000 : d;
}

function isDate (day, month, year) {
	// month argument must be in the range 1 - 12
	month = month - 1;  // javascript month range : 0- 11
	var tempDate = new Date(year,month,day);
	year = getYear(year);
	if ( (getYear(tempDate.getYear()) == year) && (month == tempDate.getMonth()) && (day == tempDate.getDate()) ) return true;
	else return false;
}

function checkEmptyText(textName,ErrMsg) {
	var textObj =  document.getElementById(textName);
	
	if (emptyField(textObj)) {
		alert(ErrMsg);
		textObj.focus();
		return true;
	}
	return false;
}

function isValidEmail(str) {
   return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
}

function checkEmail(textName,ErrMsg) {	
    textObj =  document.getElementById(textName);
 	if (!isValidEmail(textObj.value)) {
		alert(ErrMsg);
		textObj.focus();
		return true;
	}
	return false;
}

function TrackCount(fieldObj,countFieldName,maxChars) {
	var countField = eval("fieldObj.form."+countFieldName);
	var diff = maxChars - fieldObj.value.length;
	// Need to check & enforce limit here also in case user pastes data
	if (diff < 0) {
		fieldObj.value = fieldObj.value.substring(0,maxChars);
		diff = maxChars - fieldObj.value.length;
	}
	countField.value = diff;
}

function LimitText(fieldObj,maxChars) {
	var result = true;
	if (fieldObj.value.length >= maxChars) result = false;
	if (window.event) window.event.returnValue = result;
	return result;
}

function DisplayOnOff(id,OnValue,CrntValue) {
	if (CrntValue == OnValue)  document.getElementById(id).style.display = '';
	else document.getElementById(id).style.display = 'none';	
}

function TestFileType( fileName ,Extstr)  {
	fileName = fileName.toLowerCase();
	if (!fileName) return false;
	dots = fileName.split(".")
	fileType = "." + dots[dots.length-1];
	return (Extstr.indexOf(fileType) != -1) ? true : false;
}

function TestFileName(file) {	
	file = file.replace(/\//gi,"\\");
	while (file.indexOf("\\") != -1) file = file.slice(file.indexOf("\\") + 1);
	if (file.length > 200 ) return false;
	var exp =/[^a-zA-Z0-9_\s\.\-\(\)]/;
	return !exp.test(file);
}
function isServerScript(textobj,SSArr) {
	if( !textobj ) return false;
	var text = textobj.value;
	for (var i= 0; i< SSArr.length; i++ )  {
		if (text.toLowerCase().indexOf(SSArr[i].toLowerCase()) != -1)	return true;
	}	
	return false;
}

function CheckServerScript(fieldName,SSArr,Err) {
	var textobj =  document.getElementById(fieldName);
	if (isServerScript(textobj,SSArr) ) {	
		alert(Err);
		return true;
	}
	return false;
}

function IsValidChars(textObj) {
	strng = textObj.value;
	if (strng == "") return false;
	var illegalChars = /\W/;
	if (illegalChars.test(strng)) return false;
	return true;
}

function trim(str) {
	return str.replace(/^\s*|\s*$/g,"");
}

function lessthanmax(textObj, max) {
	var count=0;
	if (textObj.value.length < max) return true;
	for (var i=0; i<textObj.value.length; ++i) {
		var ch = textObj.value.charAt(i);
		if (ch != ' ' && ch != '\t')
			count++;
		}
	if (count>=max) return false;
	return true;
}
