Files
BeWoPlaner/BeWoPlanerMobil/Scripts/ownSoft-Scripts/utils/dateUtils.js
Lyndon Jetten 1df62f4183 MoK:
- Löschrechtprüfung an FaC angepasst.
- Ziele und Maßnahmen sind alphabetisch absteigend sortiert wie im FaC.
- Reports bei Klienten verbessert.
- Bargeldtransaktionshistorie eingebaut.
2024-02-20 14:42:04 +01:00

140 lines
3.5 KiB
JavaScript

function parseTimeInputToIntegerArray(timeString) {
var hoursToMinutes = timeString.split(":");
var hours = parseInt(hoursToMinutes[0]);
var minutes = parseInt(hoursToMinutes[1]);
return [hours, minutes];
}
function getDateFromPicker(pickerId) {
try {
var picker = $("#" + pickerId);
if(picker.length > 0) {
picker.datetimepicker("show");
picker.datetimepicker("hide");
var unixTime = picker.datetimepicker("date");
var targetDate = new Date(unixTime);
if(isValidDate(targetDate)) {
return targetDate;
}
}
return new Date();
} catch(error) {
showErrorPopup(error);
} finally {
return new Date();
}
}
function getTimeFromPicker(pickerId) {
var result = new Date();
try {
var picker = $("#" + pickerId);
if (picker.length > 0) {
var timeString = picker.val();
if (timeString.length === 5) {
var hours = timeString.substring(0, 2);
var minutes = timeString.substring(3);
result.setHours(hours);
result.setMinutes(minutes);
var date = result.getDate();
var month = result.getMonth();
var year = result.getYear();
return new Date(year, month, date, hours, minutes, 0, 0);
}
}
} catch (error) {
showErrorPopup(error);
} finally {
return result;
}
}
function dateToShortDateString(date) {
try {
logInfo2("Konvertiere Datum zu kurzem Datum: " + date);
if (isValidDate(date)) {
var ddNum = date.getDate();
var mmNum = date.getMonth();
var yyyyNum = date.getFullYear();
var dd = ddNum.toString();
var mm = mmNum.toString();
var yyyy = yyyyNum.toString();
if (ddNum < 10) {
dd = "0" + dd;
}
if (mmNum < 10) {
mm = "0" + mm;
}
if (yyyyNum < 10) {
yyyy = "000" + yyyyNum;
} else if (yyyyNum < 100) {
yyyy = "00" + yyyyNum;
} else if (yyyyNum < 1000) {
yyyy = "0" + yyyyNum;
}
return dd + "." + mm + "." + yyyy;
}
} catch (error) {
showErrorPopup(error);
}
}
function mergeDateAndTime(date, time) {
var result = new Date();
try {
if (isValidDate(date) && isValidDate(time)) {
var day = date.getDate();
var month = date.getMonth();
var year = date.getFullYear();
var hours = time.getHours();
var minutes = time.getMinutes();
result = new Date(year, month, day, hours, minutes, 0, 0);
}
} catch (error) {
showErrorPopup(error);
} finally {
return result;
}
}
// ToDo: Löst Exception aus bei einem Wert von z.B. "06.02.2023".
function isValidDate(date) {
return Object.prototype.toString.call(date) === "[object Date]" && !isNaN(date);
}
function ddMMyyyyToyyyyMMdd(dateString)
{
if (dateString === undefined || dateString === null || typeof dateString != "string" || dateString.length !== 10) {
return null;
}
var dayMonthYear = dateString.split(".");
if(dayMonthYear.length !== 3) {
return null;
}
var dd = dayMonthYear[0];
var mm = dayMonthYear[1];
var yyyy = dayMonthYear[2];
return `${yyyy}-${mm}-${dd}`;
}