

function mype(dataform){
if (dataform == "")
{
return
}
var i = 1;
var l = dataform.length;
var dd = 20;
var mm = 12;
var yy = 1000;
var dstat = true;

if (l != 10)
{
alert("Falsches Datumformat! (dd.mm.yyyy ist benötigt!)");
return false
}
dd = dataform.substring(0, 2);
mm = dataform.substring(3, 5);
yy = dataform.substring(6, 10);

if (IsNumeric(yy + mm + dd) != true) {
alert("Falsches Datumformat! (dd.mm.yyyy ist benötigt!)");
return false
}

if (IsDate(mm + "/" + dd + "/" + yy) != true) {
alert("Falsches Datumformat oder Datum ungültig!");
return false
}

// Alle Pruefungen sind abgeschlossen und alles stimmt bis dahin.
// Nun wird das Datum abgezogen vom Datum 1.1.1970 0:00 Uhr und die differenz in Sekunden berechnet.

var d1 = new Date(1970,00,01);
var d2 = new Date(yy + "/" + mm + "/" + dd); //Format YYYY,MM,DD wobei Januar = 0, Februar = 1 etc.
//var day = 1000 * 60 * 60 * 24;
//alert (d1 + ";?;" + d2);
// Die Datumsdifferenz wird in Millisekunden berechnet. Um Sekunden zu bekommen in diesem Fall /1000 nehmen.
var diff = Math.ceil((d2.getTime() - d1.getTime())/1000); // (day));
document.getElementById("t2").value = diff;
}

function gdate() {
var SecondBirthdate
SecondBirthdate = document.getElementById("t2").value;
if (SecondBirthdate == 0) {
document.getElementById("t1").value = "01.01.1970";
document.getElementById("t2").value = "0";
}
else {
var Milliseconds = SecondBirthdate * 1000;
var MyDate = new Date(Milliseconds); //Format: DDD MMM DD YYYY TT:TT:TT GMT+ZZZZ
var txt = MyDate.toString();
var dd = 20;
var mm = 12;
var yy = 1000;
dd = txt.substring(8, 10);
mm = txt.substring(4, 7);
yy = txt.substring(11, 15);
switch (mm) { //Monat Jan=0, Feb=1 etc.
case "Jan": { mm = "00"; break }
case "Feb": { mm = "01"; break }
case "Mar": { mm = "02"; break }
case "Apr": { mm = "03"; break }
case "May": { mm = "04"; break }
case "Jun": { mm = "05"; break }
case "Jul": { mm = "06"; break }
case "Aug": { mm = "07"; break }
case "Sep": { mm = "08"; break }
case "Oct": { mm = "09"; break }
case "Nov": { mm = "10"; break }
case "Dec": { mm = "11"; break }
}
mm = parseInt(mm) + 1;
if (mm < 10) {mm = "0" + mm; }
document.getElementById("t1").value = dd + "." + mm + "." + yy;
}
}

function IsDate(dateStr) {
var datePat = /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4})$/;
var matchArray = dateStr.match(datePat); // is the format ok?
var datestatus = true;
var month = "12";
var day = "25";
var year = "1000";
datemsg = "";

month = matchArray[1]; // p@rse date into variables
day = matchArray[3];
year = matchArray[5];

if (matchArray == null || matchArray[1] == null) {
datemsg = "----- Please enter date as mm/dd/yyyy " + "\n";
return false;
}
else {
if (matchArray[3] = null || matchArray[5] == null) {
datemsg = "----- Please enter date as mm/dd/yyyy " + "\n";
return false;
}
}

if (month < 1 || month > 12) { // check month range
datemsg = datemsg + "----- Month must be between 1 and 12." + "\n";
datestatus = false;
}

if (day < 1 || day > 31) {
datemsg = datemsg + "----- Day must be between 1 and 31." + "\n";
datestatus = false;
}

if ((month == 4 || month == 6 || month == 9 || month == 11) && day == 31) {
datemsg = datemsg + "----- Month " + month + " doesn`t have 31 days!" + "\n";
datestatus = 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)) {
datemsg = datemsg + "----- February " + year + " doesn`t have " + day + " days!" + "\n";
datestatus = false;
}
}
return datestatus;
}

function IsNumeric(sText) {
var ValidChars = "0123456789";
var IsNumber = true;
var Char;
for (i = 0; i < sText.length && IsNumber == true; i++) {
Char = sText.charAt(i);
if (ValidChars.indexOf(Char) == -1) {
IsNumber = false;
}
}
return IsNumber;
}

