function checktype (Obj,ObjType,Title) {
   if (document.getElementById("statusmsg")) 
      document.getElementById("statusmsg").innerHTML = "";

   switch(ObjType) {
   case "vUInt":
        if (!((Obj.value >= 0) && (Obj.value <= 4294967295))) {
           Obj.value = '';
           if (Title)
              alertmsg(Title);
        }
        break;
   case "vAuto":
        if (!((Obj.value >= 0) && (Obj.value <= 4294967295))) {
           Obj.value = '';
           if (Title)
              alertmsg(Title);
        }
        break;
   case "vInt":
        if (!((Obj.value >= -2147483648) && (Obj.value <= 2147483647))) {
           Obj.value = '';
           if (Title)
              alertmsg(Title);
        }
        break;
   case "vDouble":
        if (!(((Obj.value >= -1.7976931348623157E+308) && (Obj.value <= -2.2250738585072014E-308)) || ((Obj.value >= 2.2250738585072014E-308) && (Obj.value <= 1.7976931348623157E+308)) || 0)) { 
           Obj.value = '';
           if (Title)
              alertmsg(Title);
        }
        break;
   case "vFloat":
        if (Obj.value == 0) {
        } else if (!(((Obj.value >= -3.402823466E+38) && (Obj.value <= -1.175494351E-38)) || ((Obj.value >= 1.175494351E-38) && (Obj.value <= 3.402823466E+38)))) {
           Obj.value = '';
           if (Title)
              alertmsg(Title);
        }
        break;
   case "dd":
        if (!((Obj.value > 0) && (Obj.value <= 31))) {
           Obj.value = 1;
           if (Title)
              alertmsg(Title);
        }
        break;
   case "mm":
        if (!((Obj.value > 0) && (Obj.value <= 12))) {
           Obj.value = 1;
           if (Title)
              alertmsg(Title);
        }
        break;
   case "yyyy":
        if (!((Obj.value > 1900) && (Obj.value <= 2500))) {
           Obj.value = '';
           if (Title)
              alertmsg(Title);
        }
        break;
   case "hh":
        if (!((Obj.value >= 0) && (Obj.value <= 24))) {
           Obj.value = 0;
           if (Title)
              alertmsg(Title);
        }
        break;
   case "mi":
        if (!((Obj.value >= 0) && (Obj.value < 60))) {
           Obj.value = 0;
           if (Title)
              alertmsg(Title);
        }
        break;
   case "email":
	if (Obj.value == '')
		break;
        var emtext = Obj.value;
        emtext1 = emtext.replace(/^.*\@/, "");
        emtext = emtext.replace(/\@/, "");
        if ((emtext != Obj.value) && (emtext1.length > 3)) {
           emtext = Obj.value;
           emtext = emtext.replace(/^.*</, "");
           emtext = emtext.replace(/>/, "");
           var emtextsp = emtext.replace(/\s/, "");
           if (emtext == emtextsp) {
              Obj.value = emtext;
           } else {
              Obj.value = '';
           }
        } else {
           Obj.value = '';
           if (Title)
              alertmsg(Title);
        }
        break;
   case "birthdate":
	if (Obj.value == '')
		break;
	var today = new Date();
	var year = today.getYear();
	if (year < 999)
		year += 1900;
	var dtext = Obj.value;
	var dt = dtext.split("\.");
	if (!((dt[0] >= 1) && (dt[0] <= 31) && (dt[1] >= 1) && (dt[1] <= 12) && (dt[2] >= 1900) && (dt[2] <= year))) {
		Obj.value = '';
		if (Title)
			alertmsg(Title);
	}
	break;
   case "intphone":
	Obj = intPhone(Obj);
	if (!((Obj.value.length >= 10) && (Obj.value.length <= 20))) {
		Obj.value = '';
	} 
	break;
   case "mmyyyy":
	if (Obj.value == '')
		break;
	var today = new Date();
	var year = today.getYear();
	if (year < 999)
		year += 1900;
	var dtext = Obj.value;
	var dt = dtext.split("\.");
	if (!((dt[0] >= 1) && (dt[0] <= 12) && (dt[1] >= 1900))) {
		Obj.value = '';
		if (Title)
			alertmsg(Title);
	}
	break;
   default:
        break;
  }
}

function intPhone(Obj) {
    Obj.value = Obj.value.replace(/^\+\+/g, "00");
    Obj.value = Obj.value.replace(/^\+/g, "00");
    Obj.value = Obj.value.replace(/\D/g, "");
    Obj.value = Obj.value.replace(/^0([123456789])/g, "0041$1");

    return Obj;
}


function alertmsg(Title) {
	if (document.getElementById("statusmsg")) {
		document.getElementById("statusmsg").innerHTML = "Füllen Sie bitte das Feld '"+ Title + "' richtig aus!";
	} else {
		alert("Füllen Sie bitte das Feld '"+ Title + "' richtig aus!");
	}
}

function go() {
   var error = "";
   var allarg = go.arguments;
   for (var i=0; i<go.arguments.length; i=i+2) {
       if (go.arguments[i]) {
          var myarg = go.arguments[i];
          if ((go.arguments[i][0]) && (go.arguments[i][0].type == "checkbox") && (go.arguments[i][0].value == "morgens")) {
              var chbox = go.arguments[i];
              var chboxerror = true;
              for (var p=0; p < chbox.length; p++) {
                   if (chbox[p].checked == true) {
                      chboxerror = false;
                   }
              }
              if (chboxerror == true) {
                 if (error.length > 0)
                    error = error + ", " + "Telefonisch am besten erreichbar";
                 else
                    error = "Telefonisch am besten erreichbar";
              }
          } else if (!(go.arguments[i].value.length > 0)) {
             if (error.length > 0)
                error = error + ", " + go.arguments[i+1];
             else
                error = go.arguments[i+1];
          }
       }
   }
   if (error.length > 0) {
      error = "Folgende Felder müssen noch ausgefüllt werden:\n" + error;
      alert(error);
      return false;
   }
   return true;
}

function goor() {
	var error = "";
	var catchit = 0;
	for (var i=0; i<goor.arguments.length; i=i+2) {
		if ((goor.arguments[i]) && (goor.arguments[i].type != 'hidden')) {
			if (error.length > 0) {
				error = error + ", " + goor.arguments[i+1];
			} else {
				error = goor.arguments[i+1];
			}
			if (goor.arguments[i].value.length > 0) {
				catchit = 1;
			}
		}
	}
	if (catchit == 1) {
		error = "";
	}
	if (error.length > 0) {
		error = "Eines folgender Felder muss noch ausgef\xfcllt werden:\n" + error;
		alert(error);
		return false;
	}
	return true;
}

function checkteltext() {
	var checkit = false;
	for (var i=0; i<checkteltext.arguments.length; i=i+2) {
		if ((checkteltext.arguments[i]) && (checkteltext.arguments[i].type != 'hidden')) {
			checkit = true;
		}
	}
	if (!checkit) {
		if (document.getElementById("teltext")) {
			document.getElementById("teltext").style.visibility = "visible";
			document.getElementById("teltext").style.display = "none";
		}
	}
}

function checkmusttext() {
	var checkit = false;
	for (var i=0; i<checkmusttext.arguments.length; i=i+2) {
		if ((checkmusttext.arguments[i]) && (checkmusttext.arguments[i].type != 'hidden')) {
			checkit = true;
		}
	}
	if (!checkit) {
		if (document.getElementById("musttext")) {
			document.getElementById("musttext").style.visibility = "visible";
			document.getElementById("musttext").style.display = "none";
		}
	}
}
