diff --git a/cis/private/profile/zeitsperre_resturlaub.php b/cis/private/profile/zeitsperre_resturlaub.php
index 6ceaff350..079d4a62f 100644
--- a/cis/private/profile/zeitsperre_resturlaub.php
+++ b/cis/private/profile/zeitsperre_resturlaub.php
@@ -45,7 +45,7 @@ $uid = get_uid();
$PHP_SELF = $_SERVER['PHP_SELF'];
-$typen_arr = array("Urlaub", "PflegeU", "ZA", "Krank", "DienstF", "DienstV");
+$typen_arr = array("Urlaub", "PflegeU", "ZA", "Krank", "DienstF", "DienstV", "CovidSB", "CovidKS");
if(isset($_GET['type']))
$type=$_GET['type'];
@@ -69,8 +69,8 @@ $datum_obj = new datum();
$ma= new mitarbeiter();
// definiert bis zu welchem Datum die Eintragung nicht mehr möglich ist
-$zasperre = new zeitaufzeichnung();
-if ($sperrdat = $zasperre->getEintragungGesperrtBisForUser($uid))
+$zaufzeichnung = new zeitaufzeichnung();
+if ($sperrdat = $zaufzeichnung->getEintragungGesperrtBisForUser($uid))
$gesperrt_bis = $sperrdat;
else if (defined('CIS_ZEITAUFZEICHNUNG_GESPERRT_BIS') && CIS_ZEITAUFZEICHNUNG_GESPERRT_BIS != '')
$gesperrt_bis = CIS_ZEITAUFZEICHNUNG_GESPERRT_BIS;
@@ -138,7 +138,15 @@ $( document ).ready(function()
rows: 4,
});
+ $("#vondatum").change(
+ function()
+ {
+ $(".error").text("");
+ }
+ )
+
});
+
// set holidays function which is configured in beforeShowDay
function setHoliDays(date) {
for (i = 0; i < holiDays.length; i++) {
@@ -302,7 +310,9 @@ function showHideStudeDropDown()
|| dd.options[dd.selectedIndex].value == 'Urlaub'
|| dd.options[dd.selectedIndex].value == 'Krank'
|| dd.options[dd.selectedIndex].value == 'DienstF'
- || dd.options[dd.selectedIndex].value == 'DienstV')
+ || dd.options[dd.selectedIndex].value == 'DienstV'
+ || dd.options[dd.selectedIndex].value == 'CovidSB'
+ || dd.options[dd.selectedIndex].value == 'CovidKS')
{
document.getElementById('vonStd').style.visibility = 'hidden';
document.getElementById('bisStd').style.visibility = 'hidden';
@@ -350,6 +360,35 @@ if(isset($_GET['type']) && ($_GET['type']=='edit_sperre' || $_GET['type']=='new_
$error_msg .= $p->t('zeitsperre/bisDatumUngueltig').' ';
}
+ //Prüfen auf vorhandene Zeitaufzeichnung
+ if (isset($_POST['bisdatum']) && isset($_POST['vondatum']) && $zaufzeichnung->existsZeitaufzeichnung($uid, $_POST['vondatum'], $_POST['bisdatum']))
+ {
+ $error = true;
+ $error_msg .= $p->t('zeitsperre/zeitaufzeichnungVorhanden');
+ }
+
+ //Prüfen auf vorhandene Zeitsperre
+ if (isset($_POST['bisdatum']) && isset($_POST['vondatum']))
+ {
+ $von = $_POST['vondatum'];
+ $von2 = new DateTime($von);
+ $von2 = $von2->format('Y-m-d');
+ $zeitsperre = new zeitsperre();
+
+ if ($zeitsperre->getSperreByDate($uid, $von2, null))
+ {
+ foreach ($zeitsperre->result as $z)
+ {
+ if ($z->zeitsperretyp_kurzbz)
+ {
+ $typ = $z->zeitsperretyp_kurzbz;
+ }
+ $error = true;
+ $error_msg .= $p->t('zeitsperre/zeitsperreEingetragen', [$von, $typ]);
+ }
+ }
+ }
+
//von - bis-datum pruefen von darf nicht groesser als bis sein
// 09.02.2009 simane
$vondatum=0;
diff --git a/cis/private/tools/zeitaufzeichnung.php b/cis/private/tools/zeitaufzeichnung.php
index 1a830ea99..a61d43acd 100644
--- a/cis/private/tools/zeitaufzeichnung.php
+++ b/cis/private/tools/zeitaufzeichnung.php
@@ -299,6 +299,7 @@ echo '
{
var uid = $("#uidpass").val();
var Datum = $(this).val();
+ $("#triggerPhasenReset").text("");
Tag=Datum.substring(0,2);
Monat=Datum.substring(3,5);
Jahr=Datum.substring(6,10);
@@ -802,17 +803,14 @@ echo '
output = "Für den Tag " + json[i].day + " ist bereits eine Zeitsperre vom Typ " + json[i].typ + " eingetragen!";
alert("'.$p->t("zeitaufzeichnung/zeitsperreVorhanden1").'");
$("#buttonSave").attr("disabled","disabled");
- $("#triggerPhasenReset").hide();
}
}
else
{
$("#buttonSave").prop("disabled",false);
- output = "";
+ output = "";
}
$("#outputZeitsperren").html(output);
-
-
}
});
}
@@ -1494,7 +1492,7 @@ if ($projekt->getProjekteMitarbeiter($user, true))
echo '
| '.$p->t("zeitaufzeichnung/organisationseinheiten").' |
|