Verwendung von datetime-funktionen anstelle von strtotime, Adaptierung config-eintrag, update Phrasen

This commit is contained in:
ma0068
2023-10-06 12:30:14 +02:00
parent f9af5638f5
commit 23aeba4620
7 changed files with 25 additions and 39 deletions
+12 -20
View File
@@ -79,13 +79,11 @@ else if (defined('CIS_ZEITAUFZEICHNUNG_GESPERRT_BIS') && CIS_ZEITAUFZEICHNUNG_GE
else
$gesperrt_bis = '2015-08-31';
//MaxDatum für BisFeld berechnen: Default 730 Tage (2 Jahre), über Config veränderbar
$maxPeriodeBisDatum = '+730 days';
$diffTageMax = 730;
//Default-Wert für Max-Intervall in Tagen für Zeitsperre, über Config veränderbar
$maxDauerZS = 730;
if (defined('MAXTIME_FROM_ENDEDATUM') && MAXTIME_FROM_ENDEDATUM != '') {
$maxPeriodeBisDatum = MAXTIME_FROM_ENDEDATUM[0];
$diffTageMax = MAXTIME_FROM_ENDEDATUM[1];
if (defined('CIS_ZEITSPERREN_MAX_DAUER') && CIS_ZEITSPERREN_MAX_DAUER != '') {
$maxDauerZS = CIS_ZEITSPERREN_MAX_DAUER;
}
//Stundentabelleholen
@@ -258,13 +256,14 @@ function checkdatum()
diffTime = bisDatumDate.getTime() - vonDatumDate.getTime();
diff = Math.ceil(diffTime / (1000 * 60 * 60 * 24));
diffmax = $("#maxdiff").val();
diffmax = <?php echo $maxDauerZS ;?>
if (vonDatum > bisDatum) {
alert('<?php echo $p->t('zeitsperre/vonDatum');?> ' + document.getElementById('vondatum').value + ' <?php echo $p->t('zeitsperre/istGroesserAlsBisDatum');?> ' + document.getElementById('bisdatum').value);
document.getElementById('vondatum').focus();
return false;
} else if (diff > 14 && diff < diffmax) {
}
else if (diff > 14 && diff < diffmax) {
Check = confirm('<?php echo $p->t('zeitaufzeichnung/zeitraumAuffallendHoch');?>');
document.getElementById('bisdatum').focus();
if (Check == false)
@@ -276,7 +275,6 @@ function checkdatum()
document.getElementById('bisdatum').focus();
return false;
}
return true;
}
@@ -478,20 +476,15 @@ if(isset($_GET['type']) && ($_GET['type']=='edit_sperre' || $_GET['type']=='new_
$error_msg .= $p->t('zeitsperre/vonDatumGroesserAlsBisDatum').'! ';
}
//check if bis-Datum > MaxDatum
//check if bis-Datum zu weit in der Zukunft
$bis = new DateTime($bisdatum);
$von = new DateTime($vondatum);
/* $todayDate = new DateTime();
$today = strtotime($todayDate->format('Y-m-d'));*/
$vonDate = new DateTime($vondatum);
$von = strtotime($vonDate->format('Y-m-d'));
$maxBisDatum = strtotime($maxPeriodeBisDatum, $von);
if (strtotime($bis->format('Y-m-d')) > $maxBisDatum)
$intervall = $bis->diff($von);
if ($intervall->days >= $maxDauerZS)
{
$error=true;
$error_msg .= $p->t('zeitsperre/bisDatumGroesserMax',date('d.m.Y', $maxBisDatum)).' ';
$error_msg = $p->t('zeitsperre/bisDatumGroesserMax');
}
//von-datum pruefen TODO
@@ -1013,7 +1006,6 @@ echo "<td class='tdvertical'>";
echo $content_form;
echo '</td>';
echo "<td class='tdvertical'><div id='resturlaub' style='visibility:hidden;'></div></td>";
echo "<input type ='hidden' value='$diffTageMax' id=maxdiff>";
echo '</tr><tr><td colspan=2>';
echo $content_table;
echo '</td>';
-3
View File
@@ -294,7 +294,4 @@ define ('DEFAULT_ALLIN_DIENSTVERTRAG',[111]);
//Echter Dienstvertrag
define ('DEFAULT_ECHTER_DIENSTVERTRAG',[103,111]);
//Max-Ende-Datum für Zeitsperren (Parameter 1: Intervall serverside, Parameter 2: Tage clientside)
define('MAXTIME_FROM_ENDEDATUM', ['+2 years', 730]);
?>
+3
View File
@@ -47,6 +47,9 @@ define('CIS_PROFIL_STUDIENINFORMATION_ANZEIGEN',true);
// Zeitaufzeichnung gesperrt_bis Datum YYYY-MM-DD
define('CIS_ZEITAUFZEICHNUNG_GESPERRT_BIS','');
// maximale Dauer einer Zeitsperre in Tagen
define('CIS_ZEITSPERREN_MAX_DAUER', 730);
// Anzeige des Links zur Noteneingabe in der LVA Uebersicht
define('CIS_LVALISTE_NOTENEINGABE_ANZEIGEN',true);
-3
View File
@@ -289,7 +289,4 @@ define ('DEFAULT_LEHRMODUS','regulaer');
//Echter Dienstvertrag
define ('DEFAULT_ECHTER_DIENSTVERTRAG',[103,110]);
//Max-Ende-Datum für Zeitsperren (Parameter 1: Intervall serverside, Parameter 2: Tage clientside)
define('MAXTIME_FROM_ENDEDATUM', ['+2 years', 730]);
?>
+1 -1
View File
@@ -26,7 +26,7 @@ $this->phrasen['zeitsperre/vonDatumMonat']='Von-Datum Monat';
$this->phrasen['zeitsperre/bisDatumMonat']='Bis-Datum Monat';
$this->phrasen['zeitsperre/istGroesserAlsBisDatum']='ist größer als das Bis-Datum';
$this->phrasen['zeitsperre/vonDatum']='Von-Datum';
$this->phrasen['zeitsperre/bisDatumGroesserMax']='Datumswert liegt zu weit in der Zukunft, nicht zulässig!';
$this->phrasen['zeitsperre/bisDatumGroesserMax']='BisDatum liegt zu weit in der Zukunft, nicht zulässig!';
$this->phrasen['zeitsperre/resturlaubstage']='Resturlaubstage';
$this->phrasen['zeitsperre/aktuellerStand']='aktueller Stand';
+1 -1
View File
@@ -26,7 +26,7 @@ $this->phrasen['zeitsperre/vonDatumMonat']='From-date month';
$this->phrasen['zeitsperre/bisDatumMonat']='To-date month';
$this->phrasen['zeitsperre/istGroesserAlsBisDatum']='is later than To-date';
$this->phrasen['zeitsperre/vonDatum']='From-date';
$this->phrasen['zeitsperre/bisDatumGroesserMax']='Date value is too far in the future, action not permitted';
$this->phrasen['zeitsperre/bisDatumGroesserMax']='TO-Date value is too far in the future, action not permitted';
$this->phrasen['zeitsperre/resturlaubstage']='Carry-over days';
$this->phrasen['zeitsperre/aktuellerStand']='Available vacation';
+8 -11
View File
@@ -68,13 +68,12 @@ $mlAbgeschickt = '';
$sprache = getSprache();
$p = new phrasen($sprache);
//MaxDatum für BisFeld berechnen: Default 2 Jahre, über Config veränderbar
$maxPeriodeBisDatum = '+2 years';
//Default-Wert für Max-Intervall in Tagen für Zeitsperre, über Config veränderbar
$maxDauerZS = 730;
if (defined('MAXTIME_FROM_ENDEDATUM') && MAXTIME_FROM_ENDEDATUM != '') {
$maxPeriodeBisDatum = MAXTIME_FROM_ENDEDATUM[0];
if (defined('CIS_ZEITSPERREN_MAX_DAUER') && CIS_ZEITSPERREN_MAX_DAUER != '') {
$maxDauerZS = CIS_ZEITSPERREN_MAX_DAUER;
}
//prüfen, ob addon casetime aktiviert ist
$addon_obj = new addon();
$addoncasetime = $addon_obj->checkActiveAddon("casetime");
@@ -224,17 +223,15 @@ if(isset($_POST['save']))
$error=true;
}
//check if bis-Datum > MaxDatum
//Check if Bisdatum zu weit in der Zukunft
$von = new DateTime($vondatum);
$bis = new DateTime($bisdatum);
$vonTime = strtotime($von->format('Y-m-d'));
$maxBisDatum = strtotime($maxPeriodeBisDatum, $vonTime);
$maxBisDatumDate = new DateTime($maxPeriodeBisDatum);
if (strtotime($bis->format('Y-m-d')) > $maxBisDatum)
$intervall = $bis->diff($von);
if ($intervall->days > $maxDauerZS)
{
$error=true;
$errormsg = $p->t('zeitsperre/bisDatumGroesserMax',date('d.m.Y', $maxBisDatum)).' ';
$errormsg = $p->t('zeitsperre/bisDatumGroesserMax');
}
//Speichern der Daten