112 lines
2.3 KiB
JavaScript
112 lines
2.3 KiB
JavaScript
function validateDate(date) {
|
|
try {
|
|
var shortMonths = [4, 6, 9, 11];
|
|
var day = 1;
|
|
var month = 1;
|
|
var year = 1;
|
|
|
|
if(date.length === 10) {
|
|
var splitString = date.split(".");
|
|
for(var i = 0; i < splitString.length; i++) {
|
|
var number = parseInt(splitString[i], 10);
|
|
|
|
switch(i) {
|
|
case 0:
|
|
day = number;
|
|
break;
|
|
case 1:
|
|
month = number;
|
|
break;
|
|
default:
|
|
year = number;
|
|
break;
|
|
}
|
|
}
|
|
|
|
if(month > 0 && month < 13) {
|
|
if(month === 2) {
|
|
var isLeapYear = year % 4 === 0 && year % 100 !== 0 || year % 400 === 0;
|
|
|
|
if(isLeapYear) {
|
|
return day > 0 && day < 30;
|
|
} else {
|
|
return day > 0 && day < 29;
|
|
}
|
|
}
|
|
|
|
if(shortMonths.includes(month)) {
|
|
return day > 0 && day < 31;
|
|
} else {
|
|
return day > 0 && day < 32;
|
|
}
|
|
}
|
|
|
|
return false;
|
|
}
|
|
|
|
return false;
|
|
} catch (exception) {
|
|
console.log("Fehler bei validateDate: " + exception);
|
|
return false;
|
|
}
|
|
}
|
|
|
|
function doValidation(elementToValidate) {
|
|
var obj = $(elementToValidate);
|
|
|
|
var isValid = validateDate(obj.val());
|
|
|
|
obj.css("color", (isValid ? "#555" : "red"));
|
|
|
|
return isValid;
|
|
}
|
|
|
|
function validateTime(time) {
|
|
try {
|
|
var numberString = time.replace("[^0-9]", "");
|
|
|
|
if (numberString.length < 3) {
|
|
if (numberString.length < 2) {
|
|
numberString = "0" + numberString;
|
|
}
|
|
|
|
while (numberString.length < 4) {
|
|
numberString = numberString + "0";
|
|
}
|
|
} else {
|
|
while (numberString.length < 4) {
|
|
numberString = "0" + numberString;
|
|
}
|
|
}
|
|
|
|
if (numberString.length > 4) {
|
|
numberString = numberString.substring(0, 5);
|
|
}
|
|
|
|
var hours = parseInt(numberString.substring(0, 2), 10);
|
|
var minutes = parseInt(numberString.substring(3, 5), 10);
|
|
|
|
return Number.isInteger(hours) && Number.isInteger(minutes) && hours >= 0 && hours < 25 && minutes >= 0 && minutes < 60;
|
|
} catch (exception) {
|
|
console.log("Fehler bei validateTime: " + exception);
|
|
return false;
|
|
}
|
|
}
|
|
|
|
function doTimeValidation(elementToValidate) {
|
|
console.log("Rufe doTimeValidation auf...");
|
|
|
|
var obj = $(elementToValidate);
|
|
|
|
var timeString = obj.val();
|
|
|
|
if (timeString.length === 0) {
|
|
timeString = "0000";
|
|
}
|
|
|
|
var isValid = validateTime(timeString);
|
|
|
|
obj.css("color", (isValid ? "#555" : "red"));
|
|
|
|
return isValid;
|
|
} |