mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 12:19:28 +00:00
Fix Bug Fehlermeldung, Ergänzung Zeittypen Covid, Ergänzung Dropdown um OE-Auswahl Leitung
This commit is contained in:
@@ -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;
|
||||
|
||||
@@ -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 '<tr><td nowrap>'.$p->t("zeitaufzeichnung/organisationseinheiten").'</td>
|
||||
<td colspan="3"><SELECT '.$oestyle.' name="oe_kurzbz_1">';
|
||||
$oe = new organisationseinheit();
|
||||
$oe->getFrequent($user,'180','3',true, array('oezuordnung', 'fachzuordnung', 'kstzuordnung'));
|
||||
$oe->getFrequent($user,'180','3',true, array('oezuordnung', 'fachzuordnung', 'kstzuordnung', 'Leitung'));
|
||||
$trennlinie = true;
|
||||
|
||||
echo '<option value="">-- '.$p->t("zeitaufzeichnung/keineAuswahl").' --</option>';
|
||||
@@ -1790,53 +1788,6 @@ if ($projekt->getProjekteMitarbeiter($user, true))
|
||||
echo '<a href="?normal" style="text-decoration:none"><input type="button" value="'.$p->t('zeitaufzeichnung/xTageAnsicht', array($angezeigte_tage)).'"></a>';
|
||||
else
|
||||
echo '<a href="?alle" style="text-decoration:none"><input type="button" value="'.$p->t('zeitaufzeichnung/alleAnzeigen').'"></a>';
|
||||
//echo '<input type="submit" value="'.($alle===true?$p->t('zeitaufzeichnung/xTageAnsicht', array(fehlt!)):$p->t('zeitaufzeichnung/alleAnzeigen')).'" name="'.($alle===true?'normal':'alle').'">';
|
||||
|
||||
// $test = '2022-02-01';
|
||||
// echo "hello " . $test . "<br>";
|
||||
//
|
||||
// $zs = new zeitsperre();
|
||||
// $sperreVorhanden = false;
|
||||
// $stunde = '09';
|
||||
// $zs->getSperreByDate($user, $test, $stunde);
|
||||
|
||||
//var_dump($zs->result);
|
||||
|
||||
// foreach ($zs->result as $z)
|
||||
// {
|
||||
// if ($z->zeitsperretyp_kurzbz)
|
||||
// {
|
||||
// $sperreVorhanden = true;
|
||||
// echo "zeitsperre vorhanden: ". $z->zeitsperretyp_kurzbz . " am: " . $test;
|
||||
// }
|
||||
// else {
|
||||
// echo "zeitsperre nicht vorhanden";
|
||||
// }
|
||||
// }
|
||||
//Testausgaben
|
||||
// echo '
|
||||
// <tr>
|
||||
// <td> </td>
|
||||
// <td colspan="1">
|
||||
// <span id="testausgaben">
|
||||
// TESTAUSGABEN
|
||||
// </span>
|
||||
// </td>
|
||||
// </tr>
|
||||
//
|
||||
// ';
|
||||
//
|
||||
// echo '
|
||||
// <tr>
|
||||
// <td> </td>
|
||||
// <td colspan="1">
|
||||
// <span id="outputTest" style="color:red" >
|
||||
// TESTAUSGABEN
|
||||
// </span>
|
||||
// </td>
|
||||
// </tr>
|
||||
// ';
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -28,14 +28,6 @@ require_once('../../../include/globals.inc.php');
|
||||
require_once('../../../include/phrasen.class.php');
|
||||
require_once('../../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../../include/zeitsperre.class.php');
|
||||
//require_once('../../../include/datum.class.php');
|
||||
// require_once('../../../include/Excel/excel.php');
|
||||
//require_once('../../../include/benutzer.class.php');
|
||||
|
||||
// require_once('../../../include/mitarbeiter.class.php');
|
||||
//require_once('../../../include/zeitaufzeichnung.class.php');
|
||||
// require_once('../../../include/projekt.class.php');
|
||||
|
||||
|
||||
|
||||
$sprache = getSprache();
|
||||
@@ -82,6 +74,5 @@ if ((isset($_GET['uid'])) && (isset($_GET['day'])))
|
||||
$result_obj[] = $item;
|
||||
}
|
||||
}
|
||||
//var_dump($result_obj);
|
||||
echo json_encode($result_obj);
|
||||
}
|
||||
|
||||
@@ -812,15 +812,63 @@ or not exists
|
||||
|
||||
$qry = "select max(datum) from addon.tbl_casetime_timesheet where ".$where." and abgeschicktamum is not null";
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if ($result = $this->db_query($qry))
|
||||
{
|
||||
$datum = $this->db_fetch_object($result);
|
||||
return $datum->max;
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Prüft, ob es für einen bestimmten User für einen bestimmten Tag eine Zeitaufzeichnung gibt
|
||||
* @param string $user Uid des zu prüfenden Users.
|
||||
* @param date $vonDay Startdatum des zu prüfenden Zeitraumes im Format d.m.Y.
|
||||
* @param date $bisDay Enddatum des zu prüfenden Zeitraumes im Format d.m.Y.
|
||||
* @return boolean true, wenn vorhanden, sonst false
|
||||
*/
|
||||
public function existsZeitaufzeichnung($user, $vonDay, $bisDay)
|
||||
{
|
||||
$datum = date($vonDay);
|
||||
$year = substr($datum, 6, 4);
|
||||
$month = substr($datum, 3, 2);
|
||||
$day = substr($datum, 0, 2);
|
||||
|
||||
$datumbisDay = date($bisDay);
|
||||
$yearbisDay = substr($datumbisDay, 6, 4);
|
||||
$monthbisDay = substr($datumbisDay, 3, 2);
|
||||
$daybisDay = substr($datumbisDay, 0, 2);
|
||||
|
||||
$bisDay = date("Y-m-d", (mktime(0, 0, 0, $monthbisDay, $daybisDay + 1, $yearbisDay)));
|
||||
$datum = date("Y-m-d", (mktime(0, 0, 0, $month, $day, $year)));
|
||||
|
||||
$qry = "
|
||||
SELECT *
|
||||
FROM campus.tbl_zeitaufzeichnung
|
||||
WHERE uid = ". $this->db_add_param($user). "
|
||||
AND start >= ". $this->db_add_param($datum). "
|
||||
AND ende < ". $this->db_add_param($bisDay). ";
|
||||
";
|
||||
|
||||
if ($this->db_query($qry))
|
||||
{
|
||||
$num_rows = $this->db_num_rows();
|
||||
if ($num_rows >= 1)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -44,4 +44,7 @@ $this->phrasen['zeitsperre/legendeDurchwahl']='(123)...Durchwahl';
|
||||
$this->phrasen['zeitsperre/vertretungNichtKorrekt']='Die angegebene Vertretung kann nicht gefunden werden. Bitte prüfen Sie die Vertretung und versuchen Sie es erneut.';
|
||||
$this->phrasen['zeitsperre/vorSperrdatum']='Datum liegt vor dem Sperrdatum der Zeitliste';
|
||||
$this->phrasen['zeitsperre/abwesend']='Abwesend';
|
||||
$this->phrasen['zeitsperre/zeitaufzeichnungVorhanden']='Es existiert mindestens eine Zeitaufzeichnung im angegebenen Zeitraum.';
|
||||
$this->phrasen['zeitsperre/zeitsperreEingetragen']='Für den <strong>%s</strong> existiert bereits eine Zeitsperre vom Typ <strong>%s</strong>.
|
||||
Bitte löschen Sie diese bevor Sie eine neue für diesen Tag eintragen!';
|
||||
?>
|
||||
|
||||
@@ -44,4 +44,7 @@ $this->phrasen['zeitsperre/legendeDurchwahl']='(123)...Extension';
|
||||
$this->phrasen['zeitsperre/vertretungNichtKorrekt']='The selected substitute is invalid. Please check the substitute an try again.';
|
||||
$this->phrasen['zeitsperre/vorSperrdatum']='Date is before last open timesheet date';
|
||||
$this->phrasen['zeitsperre/abwesend']='absent';
|
||||
$this->phrasen['zeitsperre/zeitaufzeichnungVorhanden']='It exists at least one time record in the specified period.';
|
||||
$this->phrasen['zeitsperre/zeitsperreEingetragen']='There already exists an unavailability on the <strong>%s</strong> of the type <strong>%s</strong>.
|
||||
Please delete the existing before creating a new one for this date!';
|
||||
?>
|
||||
|
||||
Reference in New Issue
Block a user