function FlashMovie(src, movie, width, height, version, quality, menu, bgcolor, flashvars)
{
	document.write("<object classid='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000' codebase='http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version="+version+",0,0,0' width='" +width+ "' height='" +height+ "' id='" +movie+ "'>");
	document.write("<param name='movie' value='" +src+ "' />");
	document.write("<param name='FlashVars' value='" +flashvars+ "'>");
	document.write("<param name='quality' value='" +quality+ "' />");
	document.write("<param name='menu' value='" +menu+ "' />");
	document.write("<param name='bgcolor' value='" +bgcolor+ "' />");
	document.write("<embed src='" +src+ "' swLiveConnect='true' menu='" +menu+ "' FlashVars='" +flashvars+ "' quality='" +quality+ "' bgcolor='" +bgcolor+ "' width='" +width+ "' height='" +height+ "' name='" +movie+ "' type='application/x-shockwave-flash' pluginspage='http://www.macromedia.com/go/getflashplayer' />");
	document.write("</object>");
}

function maxlength(element, maxvalue)
{
  var q = eval('document.forms[0].'+element+'.value.length');
  var r = q - maxvalue;
  var msg = "Ihr eingegebener Text umfasst "+q+" Zeichen. "+
            "Es sind jedoch nur "+maxvalue+" Zeichen erlaubt. Bitte kürzen Sie "+
            "Ihren Text um mindestens "+r+" Zeichen";
  if (q > maxvalue) alert(msg);
}

function restw(element, maxvalue)
{
  var inp = eval('document.forms[0].'+element+'.value');
  var len = parseInt(inp.length);
  if (len > parseInt(maxvalue)){
     alert("Die maximal erlaubte Eingabelänge von "+maxvalue+" Zeichen ist erreicht.");
     inp = inp.substr(0,(maxvalue+1));
     eval('document.forms[0].'+element+'.value = inp');
  }
}

function formValidator( txt ){
  varret = true;
  // Register
	if( txt=="f1" ) {
    var email = document.getElementsByName("email")[0];
	  var pwd = document.getElementsByName("pwd")[0];
	  var varret = true;
    if( disallowBlank( document.getElementsByName("email"),"Bitte geben Sie Ihre E-Mail-Adresse ein.", true)) {
      varret = false;
      return varret;
    } 
	  if( !lengthRestrictionMin(email, 1, "Bitte geben Sie Ihre E-Mail-Adresse ein." )) {
        varret = false; 
        return varret;
    }
	  if( !lengthRestrictionMax(email, 50, "Die maximal erlaubte Länge der E-Mail-Adresse beträgt 50 Zeichen." )) {
        varret = false;
        return varret; 
    }
    if( !emailValidator(email, "Die von Ihnen eingegebene E-Mail-Adresse hat kein gültiges Format. Beispiel: peter.muster@abc.com." )) {
      varret = false;
      return varret;
    }
    if( disallowBlank( document.getElementsByName("pwd"),"Bitte geben Sie Ihr Passwort ein.", true)) {
      varret = false;
      return varret;
    } 
    if( !lengthRestrictionMin(pwd, 1, "Bitte geben Sie Ihr Passwort ein." )) {
      varret = false;
      return varret;
    }
    return varret;  
  }
  // New Regi
  if( txt=="f2" ) {
	  var email = document.getElementsByName("email")[0];
	  var varret = true;
    if( disallowBlank( document.getElementsByName("email"),"Bitte geben Sie Ihre E-Mail-Adresse ein.", true)) {
      varret = false;
      return varret;
    } 
	  if( !lengthRestrictionMin(email, 1, "Bitte geben Sie Ihre E-Mail-Adresse ein." )) {
      varret = false; 
      return varret;
    }
	  if( !lengthRestrictionMax(email, 50, "Die maximal erlaubte Länge der E-Mail-Adresse beträgt 50 Zeichen." )) {
      varret = false;
      return varret; 
    }
    if( !emailValidator(email, "Die von Ihnen eingegebene E-Mail-Adresse hat kein gültiges Format. Beispiel: peter.muster@abc.com." )) {
      varret = false;
      return varret;
    }
    return varret;
  }
  // Register
  if( txt=="f3" ) {
    var email = document.getElementsByName("email-pw")[0];
	  var varret = true;
    if( disallowBlank( document.getElementsByName("email-pw"),"Bitte geben Sie Ihre E-Mail-Adresse ein.", true)) {
      varret = false;
      return varret;
    } 
	  if( !lengthRestrictionMin(email, 1, "Bitte geben Sie Ihre E-Mail-Adresse ein." )) {
      varret = false; 
      return varret;
    }
	  if( !lengthRestrictionMax(email, 50, "Die maximal erlaubte Länge der E-Mail-Adresse beträgt 50 Zeichen." )) {
      varret = false;
      return varret; 
    }
    if( !emailValidator(email, "Die von Ihnen eingegebene E-Mail-Adresse hat kein gültiges Format. Beispiel: peter.muster@abc.com." )) {
      varret = false;
      return varret;
    }
    return varret;
  }
  // Reg Final
  if( txt=="f4" ) {
    var agb = document.getElementsByName("agb")[0];
    var email = document.getElementsByName("email-fin")[0];
	  var pwd1 = document.getElementsByName("pwd1")[0];
	  var pwd2 = document.getElementsByName("pwd2")[0];
	  var varret = true;
	  if (document.getElementsByName("agb")[0].checked == false) {
	     alert( "Bitte akzeptieren Sie die allgemeinen Geschäftsbedingungen." );
       varret = false;
       return varret;
    }
    if( disallowBlank( document.getElementsByName("pwd1"),"Bitte geben Sie Ihr Passwort ein.", true)) {
      varret = false;
      return varret;
    } 
    if( !lengthRestrictionMin(pwd1, 1, "Bitte geben Sie Ihr Passwort ein." )) {
      varret = false;
      return varret;
    }
    if( disallowBlank( document.getElementsByName("pwd2"),"Bitte geben Sie Ihr Passwort erneut ein.", true)) {
      varret = false;
      return varret;
    } 
    if( !lengthRestrictionMin(pwd2, 1, "Bitte geben Sie Ihr Passwort erneut ein." )) {
      varret = false;
      return varret;
    }
    if( pwd1.value !== pwd2.value ) {
      alert("Die Eingaben für das neue Passwort stimmen nicht überein.");
      varret = false;
      return varret; 
    }
    if( disallowBlank( document.getElementsByName("email-fin"),"Bitte geben Sie Ihre E-Mail-Adresse ein.", true)) {
      varret = false;
      return varret;
    } 
	  if( !lengthRestrictionMin(email, 1, "Bitte geben Sie Ihre E-Mail-Adresse ein." )) {
      varret = false; 
      return varret;
    }
	  if( !lengthRestrictionMax(email, 50, "Die maximal erlaubte Länge der E-Mail-Adresse beträgt 50 Zeichen." )) {
      varret = false;
      return varret; 
    }
    if( !emailValidator(email, "Die von Ihnen eingegebene E-Mail-Adresse hat kein gültiges Format. Beispiel: peter.muster@abc.com." )) {
      varret = false;
      return varret;
    }
    return varret;  
  }
  // Myw4w
  if( txt=="f5" ) {
    var pwd0 = document.getElementsByName("pwd0")[0];
	  var pwd1 = document.getElementsByName("pwd1")[0];
	  var pwd2 = document.getElementsByName("pwd2")[0];
	  var varret = true;
    if( disallowBlank( document.getElementsByName("pwd0"),"Bitte geben Sie Ihr aktuelles Passwort ein.", true)) {
      varret = false;
      return varret;
    } 
    if( !lengthRestrictionMin(pwd0, 1, "Bitte geben Sie Ihr aktuelles Passwort ein." )) {
      varret = false;
      return varret;
    }
    if( disallowBlank( document.getElementsByName("pwd1"),"Bitte geben Sie ihr neues Passwort ein.", true)) {
      varret = false;
      return varret;
    } 
    if( !lengthRestrictionMin(pwd1, 1, "Bitte geben Sie ihr neues Passwort ein." )) {
      varret = false;
      return varret;
    }
    if( disallowBlank( document.getElementsByName("pwd2"),"Bitte geben Sie ihr neues Passwort erneut ein.", true)) {
      varret = false;
      return varret;
    } 
    if( !lengthRestrictionMin(pwd2, 1, "Bitte geben Sie ihr neues Passwort erneut ein." )) {
      varret = false;
      return varret;
    }
    if( pwd1.value !== pwd2.value ) {
      alert("Die zwei eingegebenen Passworte sind unterschiedlich.");
      varret = false; 
    }
    return varret;  
  }
  // Myw4w
  if( txt=="f6" ) {
    var email1 = document.getElementsByName("email1")[0];
    var email2 = document.getElementsByName("email2")[0];
    var varret = true;
    if( disallowBlank( document.getElementsByName("email1"),"Bitte geben Sie Ihre E-Mail-Adresse ein.", true)) {
      varret = false;
      return varret;
    } 
    if( !lengthRestrictionMin(email1, 1, "Bitte geben Sie Ihre E-Mail-Adresse ein." )) {
      varret = false; 
      return varret;
    }
	  if( !lengthRestrictionMax(email1, 50, "Die maximal erlaubte Länge der E-Mail-Adresse beträgt 50 Zeichen." )) {
      varret = false; 
      return varret;
    }
    if( !emailValidator(email1, "Die von Ihnen eingegebene E-Mail-Adresse hat kein gültiges Format. Beispiel: peter.muster@abc.com." )) {
      varret = false;
      return varret;
    }
    if( disallowBlank( document.getElementsByName("email2"),"Bitte geben Sie Ihre neue E-Mail-Adresse erneut ein.", true)) {
      varret = false;
      return varret;
    } 
    if( !lengthRestrictionMin(email2, 1, "Bitte geben Sie Ihre neue E-Mail-Adresse erneut ein." )) {
      varret = false; 
      return varret;
    }
    if( email1.value !== email2.value ) {
      alert("Die zwei eingegebenen neuen E-Mail-Adressen sind unterschiedlich.");
      varret = false; 
    }
    return varret;
  }
  //Myw4w
  if( txt=="f16") {
    var varret = true;
    Check = confirm("Sind Sie sicher?\n\nDiese Anzeige löschen.");
    varret = Check;
  }

  if( txt=="f15") {
    var varret = true;
    Check = confirm("Sind Sie sicher?\n\nDer Inhalt der Felder im Bereich über mich werden sofort gelöscht.\n\nSie können sie jedoch jederzeit wieder neu aufnehmen.");
    varret = Check;
  }
  
  if( txt=="f14") {
    var varret = true;
    Check = confirm("Sind Sie sicher?\n\nAlle Ihre Daten (Passwort, Anzeigen, E-Mail-Adresse etc.) werden sofort gelöscht.\n\nSie können sich jedoch jederzeit wieder neu anmelden.");
    varret = Check;
  }
  // Advertise
  if( txt=="f7" ) {
    var title = document.getElementsByName("Title")[0];
    var advs = document.getElementsByName("Advertises")[0];
    var advb = document.getElementsByName("Advertiseb")[0];
    var varret = true;
    if( disallowBlank( document.getElementsByName("Title"),"Bitte geben Sie einen Titel (min 5 Buchstaben) ein.", true)) {
      varret = false;
      return varret;
    } 
    if( !lengthRestrictionMin(title, 5, "Bitte geben Sie einen Titel (min 5 Buchstaben) ein." )) {
      varret = false; 
      return varret;
    }
    if( !lengthRestrictionMax(title, 100, "Die maximal erlaubte Länge für den Titel beträgt 100 Zeichen." )) {
      varret = false; 
      return varret;
    }
    if( !checkDropdown(document.adv.categorys.selectedIndex, "Bitte selektieren Sie eine Kategorie für 'ICH SUCHE'")) {
      varret = false;
      return varret;
    }
    if( !checkDropdown(document.adv.categoryb.selectedIndex, "Bitte selektieren Sie eine Kategorie für 'ICH BIETE'")) {
      varret = false;
      return varret;
    }
    if( disallowBlank( document.getElementsByName("Advertises"),"Bitte geben Sie den Anzeige Text 'ICH SUCHE' (min 20 Buchstaben) ein.", true)) {
      varret = false;
      return varret;
    }
    if( !lengthRestrictionMin(advs, 20, "Bitte geben Sie den Anzeige Text 'ICH SUCHE' (min 20 Buchstaben) ein." )) {
      varret = false; 
      return varret;
    }
    if( !lengthRestrictionMax(advs, 1000, "Die maximal erlaubte Länge für den Anzeige Text 'ICH SUCHE' beträgt 1000 Zeichen." )) {
      varret = false; 
      return varret;
    }
    if( disallowBlank( document.getElementsByName("Advertiseb"),"Bitte geben Sie den Anzeige Text 'ICH BIETE' (min 20 Buchstaben) ein.", true)) {
      varret = false;
      return varret;
    }
    if( !lengthRestrictionMin(advb, 20, "Bitte geben Sie den Anzeige Text 'ICH BIETE' (min 20 Buchstaben) ein." )) {
      varret = false; 
      return varret;
    }
    if( !lengthRestrictionMax(advb, 1000, "Die maximal erlaubte Länge für den Anzeige Text 'ICH BIETE' beträgt 1000 Zeichen." )) {
      varret = false; 
      return varret;
    }
    if( !checkDropdown(document.adv.region.selectedIndex, "Bitte selektieren Sie eine Region")) {
      varret = false;
      return varret;
    }
  }
  // ModAdv
  if( txt=="f8" ) {
    var title = document.getElementsByName("Title")[0];
    var advs = document.getElementsByName("Advertises")[0];
    var advb = document.getElementsByName("Advertiseb")[0];
    var varret = true;
    if( disallowBlank( document.getElementsByName("Title"),"Bitte geben Sie einen Titel (min 5 Buchstaben) ein.", true)) {
      varret = false;
      return varret;
    } 
    if( !lengthRestrictionMin(title, 5, "Bitte geben Sie einen Titel (min 5 Buchstaben) ein." )) {
      varret = false; 
      return varret;
    }
    if( !lengthRestrictionMax(title, 100, "Die maximal erlaubte Länge für den Titel beträgt 100 Zeichen." )) {
      varret = false; 
      return varret;
    }
    if( disallowBlank( document.getElementsByName("Advertises"),"Bitte geben Sie den Anzeige Text (min 20 Buchstaben) ein.", true)) {
      varret = false;
      return varret;
    }
    if( !lengthRestrictionMin(advs, 20, "Bitte geben Sie den Anzeige Text (min 20 Buchstaben) ein." )) {
      varret = false; 
      return varret;
    }
    if( !lengthRestrictionMax(advs, 1000, "Die maximal erlaubte Länge für den Anzeige Text beträgt 1000 Zeichen." )) {
      varret = false; 
      return varret;
    }
    if( !lengthRestrictionMin(advb, 20, "Bitte geben Sie den Anzeige Text (min 20 Buchstaben) ein." )) {
      varret = false; 
      return varret;
    }
    if( !lengthRestrictionMax(advb, 1000, "Die maximal erlaubte Länge für den Anzeige Text beträgt 1000 Zeichen." )) {
      varret = false; 
      return varret;
    }
    if( !checkDropdown(document.adv.categorys.selectedIndex, "Bitte selektieren Sie eine Kategorie für 'ich suche'")) {
      varret = false;
      return varret;
    }
    if( !checkDropdown(document.adv.categoryb.selectedIndex, "Bitte selektieren Sie eine Kategorie für 'ich biete'")) {
      varret = false;
      return varret;
    }
    if( !checkDropdown(document.adv.region.selectedIndex, "Bitte selektieren Sie eine Region")) {
      varret = false;
      return varret;
    }
  }
  // Contact
  if( txt=="f9" ) {
    if( !checkDropdown(document.con.cat.selectedIndex, "Bitte selektieren Sie eine Kategorie für Betreff")) {
      varret = false;
      return varret;
    }   

	  var LN = document.getElementsByName("LN")[0];
	  var FN = document.getElementsByName("FN")[0];
    var email = document.getElementsByName("emailc")[0];
    var cmsg = document.getElementsByName("message")[0];
	  
	  var varret = true;
 	  if( !lengthRestrictionMin(LN, 1, "Bitte geben Sie Ihren Namen ein." )) {
      varret = false; 
      return varret;
    }
	  if( !lengthRestrictionMax(LN, 50, "Die maximal erlaubte Länge für den Namen beträgt 50 Zeichen." )) {
      varret = false; 
      return varret;
    }
 	  if( !lengthRestrictionMin(FN, 1, "Bitte geben Sie Ihren Vornamen ein." )) {
      varret = false; 
      return varret;
    }
	  if( !lengthRestrictionMax(FN, 50, "Die maximal erlaubte Länge für den Namen beträgt 50 Zeichen." )) {
      varret = false;
      return varret; 
    }
 	  if( !lengthRestrictionMin(email, 1, "Bitte geben Sie Ihre E-Mail-Adresse ein." )) {
      varret = false; 
      return varret;
    }
	  if( !lengthRestrictionMax(email, 50, "Die maximal erlaubte Länge der E-Mail-Adresse beträgt 50 Zeichen." )) {
      varret = false; 
      return varret;
    }
    if( !emailValidator(email, "Die von Ihnen eingegebene E-Mail-Adresse hat kein gültiges Format. Beispiel: peter.muster@abc.com." )) {
      varret = false;
      return varret;
    }
    if( disallowBlank( document.getElementsByName("emailc"),"Bitte geben Sie Ihre E-Mail-Adresse ein.", true)) {
      varret = false;
      return varret;
    }
    if( !lengthRestrictionMin(cmsg, 20, "Bitte geben Sie Ihre Mitteilung (min 20 Buchstaben) ein." )) {
      varret = false; 
      return varret;
    }
    if( !lengthRestrictionMax(cmsg, 1000, "Die maximal erlaubte Länge für die Mitteilung beträgt 1000 Zeichen." )) {
      varret = false; 
      return varret;
    }
    return varret;
  }
  // Respond
  if( txt=="f10" ) {
    var emailf = document.getElementsByName("email")[0];
    var answer = document.getElementsByName("Answer")[0];
    var varret = true;
    if( disallowBlank( document.getElementsByName("Answer"),"Bitte geben Sie Ihren Antwort Text (min 20 Buchstaben) ein.", true)) {
      varret = false;
      return varret;
    }
    if( !lengthRestrictionMin(answer, 20, "Bitte geben Sie für den Antwort Text (min 20 Buchstaben) ein." )) {
      varret = false; 
      return varret;
    }
    if( !lengthRestrictionMax(answer, 1000, "Die maximal erlaubte Länge für den Antwort Text beträgt 1000 Zeichen." )) {
      varret = false; 
      return varret;
    }
 	  if( !lengthRestrictionMin(emailf, 1, "Bitte geben Sie Ihre E-Mail-Adresse ein." )) {
      varret = false; 
      return varret;
    }
	  if( !lengthRestrictionMax(emailf, 50, "Die maximal erlaubte Länge der E-Mail-Adresse beträgt 50 Zeichen." )) {
      varret = false; 
      return varret;
    }
    if( !emailValidator(emailf, "Die von Ihnen eingegebene E-Mail-Adresse hat kein gültiges Format. Beispiel: peter.muster@abc.com." )) {
      varret = false;
      return varret;
    }
    if( disallowBlank( document.getElementsByName("email"),"Bitte geben Sie Ihre E-Mail-Adresse ein.", true)) {
      varret = false;
      return varret;
    }
 	  if (document.getElementsByName("agb")[0].checked == false) {
	     alert( "Bitte akzeptieren Sie die allgemeinen Geschäftsbedingungen." );
       varret = false;
       return varret;
    }
    return varret;
  }
  //report
	if( txt=="f11" ) {
	  var varret = true;
    if( disallowBlank( document.getElementsByName("Answer"),"Bitte geben Sie Ihren Antwort Text (min 20 Buchstaben) ein.", true)) {
      varret = false;
      return varret;
    }
    return varret;  
  }
  //message
	if( txt=="f12" ) {
    var emailto = document.getElementsByName("email-to")[0];
    var emailfrom = document.getElementsByName("email-from")[0];
	  var varret = true;
    if( disallowBlank( document.getElementsByName("email-to"),"Bitte geben Sie die E-Mail-Adresse 'An (E-Mail)' ein.", true)) {
      varret = false;
      return varret;
    } 
	  if( !lengthRestrictionMin(emailto, 1, "Bitte geben Sie Ihre E-Mail-Adresse 'An (E-Mail)' ein." )) {
        varret = false; 
        return varret;
    }
	  if( !lengthRestrictionMax(emailto, 50, "Die maximal erlaubte Länge der E-Mail-Adresse 'An (E-Mail)' beträgt 50 Zeichen." )) {
        varret = false;
        return varret; 
    }
    if( !emailValidator(emailto, "Die von Ihnen eingegebene E-Mail-Adresse 'An (E-Mail)' hat kein gültiges Format. Beispiel: peter.muster@abc.com." )) {
      varret = false;
      return varret;
    }
    if( disallowBlank( document.getElementsByName("email-from"),"Bitte geben Sie die E-Mail-Adresse 'Von (E-Mail)' ein.", true)) {
      varret = false;
      return varret;
    } 
	  if( !lengthRestrictionMin(emailfrom, 1, "Bitte geben Sie Ihre E-Mail-Adresse 'Von (E-Mail)' ein." )) {
        varret = false; 
        return varret;
    }
	  if( !lengthRestrictionMax(emailfrom, 50, "Die maximal erlaubte Länge der E-Mail-Adresse 'Von (E-Mail)' beträgt 50 Zeichen." )) {
        varret = false;
        return varret; 
    }
    if( !emailValidator(emailfrom, "Die von Ihnen eingegebene E-Mail-Adresse 'Von (E-Mail)' hat kein gültiges Format. Beispiel: peter.muster@abc.com." )) {
      varret = false;
      return varret;
    }
    if( disallowBlank( document.getElementsByName("message"),"Bitte geben Sie Ihren Mitteilungstext (min 20 Buchstaben) ein.", true)) {
      varret = false;
      return varret;
    }
    return varret;  
  }
 	if( txt=="f13" ) {
    var email = document.getElementsByName("email")[0];
	  var pwd = document.getElementsByName("pwd")[0];
	  var id = document.getElementsByName("txtid")[0];
	  var varret = true;
    if( disallowBlank( document.getElementsByName("email"),"Bitte geben Sie Ihre E-Mail-Adresse ein.", true)) {
      varret = false;
      return varret;
    } 
	  if( !lengthRestrictionMin(email, 1, "Bitte geben Sie Ihre E-Mail-Adresse ein." )) {
        varret = false; 
        return varret;
    }
	  if( !lengthRestrictionMax(email, 50, "Die maximal erlaubte Länge der E-Mail-Adresse beträgt 50 Zeichen." )) {
        varret = false;
        return varret; 
    }
    if( disallowBlank( document.getElementsByName("pwd"),"Bitte geben Sie Ihr Passwort ein.", true)) {
      varret = false;
      return varret;
    } 
    if( !lengthRestrictionMin(pwd, 1, "Bitte geben Sie Ihr Passwort ein." )) {
      varret = false;
      return varret;
    }
    if(!lengthRestrictionMin(id, 1, "Bitte geben Sie Anzeige-Nummer ein.")) {
      varret = false;
      return varret;
    }
    return varret;  
  }
  return varret;
}

// ===================================================================
// Source ==> Author: Matt Kruse <matt@mattkruse.com>
// WWW: http://www.mattkruse.com/
// ===================================================================

//-------------------------------------------------------------------
// Trim functions
//   Returns string with whitespace trimmed
//-------------------------------------------------------------------
function LTrim(str){
	if (str==null){return null;}
	for(var i=0;str.charAt(i)==" ";i++);
	return str.substring(i,str.length);
	}
function RTrim(str){
	if (str==null){return null;}
	for(var i=str.length-1;str.charAt(i)==" ";i--);
	return str.substring(0,i+1);
	}
function Trim(str){return LTrim(RTrim(str));}
function LTrimAll(str) {
	if (str==null){return str;}
	for (var i=0; str.charAt(i)==" " || str.charAt(i)=="\n" || str.charAt(i)=="\t"; i++);
	return str.substring(i,str.length);
	}
function RTrimAll(str) {
	if (str==null){return str;}
	for (var i=str.length-1; str.charAt(i)==" " || str.charAt(i)=="\n" || str.charAt(i)=="\t"; i--);
	return str.substring(0,i+1);
	}
function TrimAll(str) {
	return LTrimAll(RTrimAll(str));
	}
//-------------------------------------------------------------------
// isNull(value)
//   Returns true if value is null
//-------------------------------------------------------------------
function isNull(val){return(val==null);}

//-------------------------------------------------------------------
// isBlank(value)
//   Returns true if value only contains spaces
//-------------------------------------------------------------------
function isBlank(val){
	if(val==null){return true;}
	for(var i=0;i<val.length;i++) {
		if ((val.charAt(i)!=' ')&&(val.charAt(i)!="\t")&&(val.charAt(i)!="\n")&&(val.charAt(i)!="\r")){return false;}
		}
	return true;
	}

//-------------------------------------------------------------------
// isInteger(value)
//   Returns true if value contains all digits
//-------------------------------------------------------------------
function isInteger(val){
	if (isBlank(val)){return false;}
	for(var i=0;i<val.length;i++){
		if(!isDigit(val.charAt(i))){return false;}
		}
	return true;
	}

//-------------------------------------------------------------------
// isNumeric(value)
//   Returns true if value contains a positive float value
//-------------------------------------------------------------------
function isNumeric(val){return(parseFloat(val,10)==(val*1));}

//-------------------------------------------------------------------
// isArray(obj)
// Returns true if the object is an array, else false
//-------------------------------------------------------------------
function isArray(obj){return(typeof(obj.length)=="undefined")?false:true;}

//-------------------------------------------------------------------
// isDigit(value)
//   Returns true if value is a 1-character digit
//-------------------------------------------------------------------
function isDigit(num) {
	if (num.length>1){return false;}
	var string="1234567890";
	if (string.indexOf(num)!=-1){return true;}
	return false;
	}

//-------------------------------------------------------------------
// setNullIfBlank(input_object)
//   Sets a form field to "" if it isBlank()
//-------------------------------------------------------------------
function setNullIfBlank(obj){if(isBlank(obj.value)){obj.value="";}}

//-------------------------------------------------------------------
// setFieldsToUpperCase(input_object)
//   Sets value of form field toUpperCase() for all fields passed
//-------------------------------------------------------------------
function setFieldsToUpperCase(){
	for(var i=0;i<arguments.length;i++) {
		arguments[i].value = arguments[i].value.toUpperCase();
		}
	}

//-------------------------------------------------------------------
// disallowBlank(input_object[,message[,true]])
//   Checks a form field for a blank value. Optionally alerts if 
//   blank and focuses
//-------------------------------------------------------------------
function disallowBlank(obj){
	var msg=(arguments.length>1)?arguments[1]:"";
	var dofocus=(arguments.length>2)?arguments[2]:false;
	if (isBlank(getInputValue(obj))){
		if(!isBlank(msg)){alert(msg);}
		if(dofocus){
			if (isArray(obj) && (typeof(obj.type)=="undefined")) {obj=obj[0];}
			if(obj.type=="text"||obj.type=="textarea"||obj.type=="password") { obj.select(); }
			obj.focus();
			}
		return true;
		}
	return false;
	}

//-------------------------------------------------------------------
// disallowModify(input_object[,message[,true]])
//   Checks a form field for a value different than defaultValue. 
//   Optionally alerts and focuses
//-------------------------------------------------------------------
function disallowModify(obj){
	var msg=(arguments.length>1)?arguments[1]:"";
	var dofocus=(arguments.length>2)?arguments[2]:false;
	if (getInputValue(obj)!=getInputDefaultValue(obj)){
		if(!isBlank(msg)){alert(msg);}
		if(dofocus){
			if (isArray(obj) && (typeof(obj.type)=="undefined")) {obj=obj[0];}
			if(obj.type=="text"||obj.type=="textarea"||obj.type=="password") { obj.select(); }
			obj.focus();
			}
		setInputValue(obj,getInputDefaultValue(obj));
		return true;
		}
	return false;
	}

//-------------------------------------------------------------------
// commifyArray(array[,delimiter])
//   Take an array of values and turn it into a comma-separated string
//   Pass an optional second argument to specify a delimiter other than
//   comma.
//-------------------------------------------------------------------
function commifyArray(obj,delimiter){
	if (typeof(delimiter)=="undefined" || delimiter==null) {
		delimiter = ",";
		}
	var s="";
	if(obj==null||obj.length<=0){return s;}
	for(var i=0;i<obj.length;i++){
		s=s+((s=="")?"":delimiter)+obj[i].toString();
		}
	return s;
	}

//-------------------------------------------------------------------
// getSingleInputValue(input_object,use_default,delimiter)
//   Utility function used by others
//-------------------------------------------------------------------
function getSingleInputValue(obj,use_default,delimiter) {
	switch(obj.type){
		case 'radio': case 'checkbox': return(((use_default)?obj.defaultChecked:obj.checked)?obj.value:null);
		case 'text': case 'hidden': case 'textarea': return(use_default)?obj.defaultValue:obj.value;
		case 'password': return((use_default)?null:obj.value);
		case 'select-one':
			if (obj.options==null) { return null; }
			if(use_default){
				var o=obj.options;
				for(var i=0;i<o.length;i++){if(o[i].defaultSelected){return o[i].value;}}
				return o[0].value;
				}
			if (obj.selectedIndex<0){return null;}
			return(obj.options.length>0)?obj.options[obj.selectedIndex].value:null;
		case 'select-multiple': 
			if (obj.options==null) { return null; }
			var values=new Array();
			for(var i=0;i<obj.options.length;i++) {
				if((use_default&&obj.options[i].defaultSelected)||(!use_default&&obj.options[i].selected)) {
					values[values.length]=obj.options[i].value;
					}
				}
			return (values.length==0)?null:commifyArray(values,delimiter);
		}
	alert("FATAL ERROR: Field type "+obj.type+" is not supported for this function");
	return null;
	}

//-------------------------------------------------------------------
// getSingleInputText(input_object,use_default,delimiter)
//   Utility function used by others
//-------------------------------------------------------------------
function getSingleInputText(obj,use_default,delimiter) {
	switch(obj.type){
		case 'radio': case 'checkbox': 	return "";
		case 'text': case 'hidden': case 'textarea': return(use_default)?obj.defaultValue:obj.value;
		case 'password': return((use_default)?null:obj.value);
		case 'select-one':
			if (obj.options==null) { return null; }
			if(use_default){
				var o=obj.options;
				for(var i=0;i<o.length;i++){if(o[i].defaultSelected){return o[i].text;}}
				return o[0].text;
				}
			if (obj.selectedIndex<0){return null;}
			return(obj.options.length>0)?obj.options[obj.selectedIndex].text:null;
		case 'select-multiple': 
			if (obj.options==null) { return null; }
			var values=new Array();
			for(var i=0;i<obj.options.length;i++) {
				if((use_default&&obj.options[i].defaultSelected)||(!use_default&&obj.options[i].selected)) {
					values[values.length]=obj.options[i].text;
					}
				}
			return (values.length==0)?null:commifyArray(values,delimiter);
		}
	alert("FATAL ERROR: Field type "+obj.type+" is not supported for this function");
	return null;
	}

//-------------------------------------------------------------------
// setSingleInputValue(input_object,value)
//   Utility function used by others
//-------------------------------------------------------------------
function setSingleInputValue(obj,value) {
	switch(obj.type){
		case 'radio': case 'checkbox': if(obj.value==value){obj.checked=true;return true;}else{obj.checked=false;return false;}
		case 'text': case 'hidden': case 'textarea': case 'password': obj.value=value;return true;
		case 'select-one': case 'select-multiple': 
			var o=obj.options;
			for(var i=0;i<o.length;i++){
				if(o[i].value==value){o[i].selected=true;}
				else{o[i].selected=false;}
				}
			return true;
		}
	alert("FATAL ERROR: Field type "+obj.type+" is not supported for this function");
	return false;
	}

//-------------------------------------------------------------------
// getInputValue(input_object[,delimiter])
//   Get the value of any form input field
//   Multiple-select fields are returned as comma-separated values, or
//   delmited by the optional second argument
//   (Doesn't support input types: button,file,reset,submit)
//-------------------------------------------------------------------
function getInputValue(obj,delimiter) {
	var use_default=(arguments.length>2)?arguments[2]:false;
	if (isArray(obj) && (typeof(obj.type)=="undefined")) {
		var values=new Array();
		for(var i=0;i<obj.length;i++){
			var v=getSingleInputValue(obj[i],use_default,delimiter);
			if(v!=null){values[values.length]=v;}
			}
		return commifyArray(values,delimiter);
		}
	return getSingleInputValue(obj,use_default,delimiter);
	}

//-------------------------------------------------------------------
// getInputText(input_object[,delimiter])
//   Get the displayed text of any form input field
//   Multiple-select fields are returned as comma-separated values, or
//   delmited by the optional second argument
//   (Doesn't support input types: button,file,reset,submit)
//-------------------------------------------------------------------
function getInputText(obj,delimiter) {
	var use_default=(arguments.length>2)?arguments[2]:false;
	if (isArray(obj) && (typeof(obj.type)=="undefined")) {
		var values=new Array();
		for(var i=0;i<obj.length;i++){
			var v=getSingleInputText(obj[i],use_default,delimiter);
			if(v!=null){values[values.length]=v;}
			}
		return commifyArray(values,delimiter);
		}
	return getSingleInputText(obj,use_default,delimiter);
	}

//-------------------------------------------------------------------
// getInputDefaultValue(input_object[,delimiter])
//   Get the default value of any form input field when it was created
//   Multiple-select fields are returned as comma-separated values, or
//   delmited by the optional second argument
//   (Doesn't support input types: button,file,password,reset,submit)
//-------------------------------------------------------------------
function getInputDefaultValue(obj,delimiter){return getInputValue(obj,delimiter,true);}

//-------------------------------------------------------------------
// isChanged(input_object)
//   Returns true if input object's value has changed since it was
//   created.
//-------------------------------------------------------------------
function isChanged(obj){return(getInputValue(obj)!=getInputDefaultValue(obj));}

//-------------------------------------------------------------------
// setInputValue(obj,value)
//   Set the value of any form field. In cases where no matching value
//   is available (select, radio, etc) then no option will be selected
//   (Doesn't support input types: button,file,password,reset,submit)
//-------------------------------------------------------------------
function setInputValue(obj,value) {
	var use_default=(arguments.length>1)?arguments[1]:false;
	if(isArray(obj)&&(typeof(obj.type)=="undefined")){
		for(var i=0;i<obj.length;i++){setSingleInputValue(obj[i],value);}
		}
	else{setSingleInputValue(obj,value);}
	}
	
//-------------------------------------------------------------------
// isFormModified(form_object,hidden_fields,ignore_fields)
//   Check to see if anything in a form has been changed. By default
//   it will check all visible form elements and ignore all hidden 
//   fields. 
//   You can pass a comma-separated list of field names to check in
//   addition to visible fields (for hiddens, etc).
//   You can also pass a comma-separated list of field names to be
//   ignored in the check.
//-------------------------------------------------------------------
function isFormModified(theform,hidden_fields,ignore_fields){
	if(hidden_fields==null){hidden_fields="";}
	if(ignore_fields==null){ignore_fields="";}
	var hiddenFields=new Object();
	var ignoreFields=new Object();
	var i,field;
	var hidden_fields_array=hidden_fields.split(',');
	for (i=0;i<hidden_fields_array.length;i++) {
		hiddenFields[Trim(hidden_fields_array[i])]=true;
		}
	var ignore_fields_array=ignore_fields.split(',');
	for (i=0;i<ignore_fields_array.length;i++) {
		ignoreFields[Trim(ignore_fields_array[i])]=true;
		}
	for (i=0;i<theform.elements.length;i++) {
		var changed=false;
		var name=theform.elements[i].name;
		if(!isBlank(name)){
			var type=theform.elements[i].type;
			if(!ignoreFields[name]){
				if(type=="hidden"&&hiddenFields[name]){changed=isChanged(theform[name]);}
				else if(type=="hidden"){changed=false;}
				else {changed=isChanged(theform[name]);}
				}
			}
		if(changed){return true;}
		}
		return false;
	}

function isEmpty(elem, helperMsg){
	if( elem.value.length == 0 ){
		alert(helperMsg);
		elem.focus(); // set the focus to this input
		return true;
	} else {
	  return false;
  }
}

function isNummeric(elem, helperMsg){
	var numericExpression = /^[0-9]+$/;
	if( elem.value.match(numericExpression) ){
		return true;
	} else {
		alert(helperMsg);
		elem.focus();
		return false;
	}
}

function isAlphabet(elem, helperMsg){
	var alphaExp = /^[a-zA-Z]+$/;
	if( elem.value.match(alphaExp)){
		return true;
	} else {
		alert(helperMsg);
		elem.focus();
		return false;
	}
}

function isAlphanumeric(elem, helperMsg){
	var alphaExp = /^[0-9a-zA-Z]+$/;
	if( elem.value.match(alphaExp) ){
		return true;
	} else {
		alert(helperMsg);
		elem.focus();
		return false;
	}
}

function lengthRestrictionMax(elem, max, helperMsg ){
	var uInput = elem.value;
	if( uInput.length <= max ){
		return true;
	} else {
		alert(helperMsg);
		elem.focus();
		return false;
	}
}

function lengthRestrictionMin(elem, min, helperMsg ){
	var uInput = elem.value;
	if( uInput.length >= min ){
		return true;
	} else {
		alert(helperMsg);
		elem.focus();
		return false;
	}
}

function madeSelection(elem, strvalue, helperMsg){
	if( elem.value == strvalue ){
		alert(helperMsg);
		elem.focus();
		return false;
	} else {
		return true;
	}
}

function emailValidator(elem, helperMsg) {
  var proto  = "(mailto:)?";
  var usr    = "([a-zA-Z0-9][a-zA-Z0-9_.-]*|\"([^\\\\\x80-\xff\015\012\"]|\\\\[^\x80-\xff])+\")";
  var domain = "([a-zA-Z0-9][a-zA-Z0-9._-]*\\.)*[a-zA-Z0-9][a-zA-Z0-9._-]*\\.[a-zA-Z]{2,5}";
  var regex  = "^" + usr + "\@" + domain + "$";
  var rgx    = new RegExp(regex);
  if (rgx.exec(elem.value)) {
     return true;
  } else {
    alert (helperMsg);
    elem.focus();
    return false;
  }
}

function checkDropdown(choice, helperMsg) {
  if (choice == 0) {
     alert( helperMsg);
     return false;
  } else {
    return true;
  }
}    

function externalLinks() {
 if (!document.getElementsByTagName) return;
 var anchors = document.getElementsByTagName("a");
 for (var i=0; i < anchors.length; i++) {
   var anchor = anchors[i];
   if (anchor.getAttribute("href") &&
       anchor.getAttribute("rel") == "external")
     anchor.target = "_blank";
 }
}
window.onload = externalLinks;

function OpenWindow (Address) {
  var window1;
  window1 = window.open(Address, "_blank", "toolbar=no,location=no,directories=no,status=no,menubar=no,resizable=no,scrollbars=no,width=799,height=600");
  window1.focus();
}

function OpenWindowScroll (Address) {
  var window2;
  window2 = window.open(Address, "_blank", "toolbar=no,location=no,directories=no,status=no,menubar=no,resizable=yes,scrollbars=yes,width=799,height=600");
  window2.focus();
}

