mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-21 08:52:21 +00:00
- rt sperre vor dem login moeglich
This commit is contained in:
@@ -362,6 +362,8 @@ if ((isset($_SESSION['prestudent_id']) && !isset($_SESSION['pruefling_id']) &&
|
||||
$pruefling->idnachweis = '';
|
||||
$pruefling->registriert = date('Y-m-d H:i:s');
|
||||
$pruefling->prestudent_id = $_SESSION['prestudent_id'];
|
||||
$pruefling->gesperrt = $pruefling->isGesperrt(null, $_SESSION['prestudent_id']);
|
||||
|
||||
if ($pruefling->save())
|
||||
{
|
||||
$_SESSION['pruefling_id']=$pruefling->pruefling_id;
|
||||
@@ -385,6 +387,7 @@ if (isset($_POST['save']) && isset($_SESSION['prestudent_id']))
|
||||
$pruefling->registriert = date('Y-m-d H:i:s');
|
||||
$pruefling->prestudent_id = $_SESSION['prestudent_id'];
|
||||
$pruefling->semester = $_POST['semester'];
|
||||
$pruefling->gesperrt = $pruefling->isGesperrt(null, $_SESSION['prestudent_id']);
|
||||
if ($pruefling->save())
|
||||
{
|
||||
$_SESSION['pruefling_id']=$pruefling->pruefling_id;
|
||||
|
||||
@@ -108,12 +108,13 @@ class pruefling extends basis_db
|
||||
|
||||
if($this->new) //Wenn new true ist dann ein INSERT absetzen ansonsten ein UPDATE
|
||||
{
|
||||
$qry = 'BEGIN;INSERT INTO testtool.tbl_pruefling (studiengang_kz, idnachweis, registriert, prestudent_id, semester) VALUES('.
|
||||
$qry = 'BEGIN;INSERT INTO testtool.tbl_pruefling (studiengang_kz, idnachweis, registriert, prestudent_id, semester, gesperrt) VALUES('.
|
||||
$this->db_add_param($this->studiengang_kz).",".
|
||||
$this->db_add_param($this->idnachweis).",".
|
||||
$this->db_add_param($this->registriert).",".
|
||||
$this->db_add_param($this->prestudent_id).",".
|
||||
$this->db_add_param($this->semester).");";
|
||||
$this->db_add_param($this->semester).",".
|
||||
$this->db_add_param($this->gesperrt, FHC_BOOLEAN).");";
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -122,7 +123,8 @@ class pruefling extends basis_db
|
||||
' idnachweis='.$this->db_add_param($this->idnachweis).','.
|
||||
' registriert='.$this->db_add_param($this->registriert).','.
|
||||
' semester='.$this->db_add_param($this->semester).','.
|
||||
' prestudent_id='.$this->db_add_param($this->prestudent_id, FHC_INTEGER).
|
||||
' prestudent_id='.$this->db_add_param($this->prestudent_id, FHC_INTEGER).','.
|
||||
' gesperrt='.$this->db_add_param($this->gesperrt, FHC_BOOLEAN).
|
||||
" WHERE pruefling_id=".$this->db_add_param($this->pruefling_id, FHC_INTEGER, false).";";
|
||||
}
|
||||
|
||||
@@ -558,18 +560,30 @@ class pruefling extends basis_db
|
||||
}
|
||||
}
|
||||
|
||||
public function isGesperrt($pruefling_id)
|
||||
public function isGesperrt($pruefling_id = null, $prestudent_id = null)
|
||||
{
|
||||
if (is_null($pruefling_id) && is_null($prestudent_id))
|
||||
{
|
||||
$this->errormsg = 'Falsche Parameterübergabe';
|
||||
return false;
|
||||
}
|
||||
|
||||
$qry = "SELECT spruefling.gesperrt
|
||||
FROM testtool.tbl_pruefling
|
||||
JOIN public.tbl_prestudent USING(prestudent_id)
|
||||
RIGHT JOIN public.tbl_prestudent USING(prestudent_id)
|
||||
JOIN public.tbl_person USING (person_id)
|
||||
JOIN public.tbl_prestudent pss ON pss.person_id = tbl_person.person_id
|
||||
JOIN testtool.tbl_pruefling spruefling ON pss.prestudent_id = spruefling.prestudent_id
|
||||
WHERE tbl_pruefling.pruefling_id = ".$this->db_add_param($pruefling_id, FHC_INTEGER)."
|
||||
AND spruefling.gesperrt
|
||||
LIMIT 1";
|
||||
WHERE spruefling.gesperrt";
|
||||
|
||||
if (!is_null($pruefling_id))
|
||||
$qry .= " AND tbl_pruefling.pruefling_id = ".$this->db_add_param($pruefling_id, FHC_INTEGER);
|
||||
|
||||
if (!is_null($prestudent_id))
|
||||
$qry .= " AND tbl_prestudent.prestudent_id = ".$this->db_add_param($prestudent_id, FHC_INTEGER);
|
||||
|
||||
$qry .= " LIMIT 1";
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if ($this->db_num_rows($result) == 0)
|
||||
|
||||
@@ -501,46 +501,55 @@ if ($rtprueflingEntSperren)
|
||||
WHERE person_id = ". $db->db_add_param($_POST['person_id']) . "
|
||||
)";
|
||||
|
||||
|
||||
if ($result = $db->db_query($qry))
|
||||
{
|
||||
|
||||
if ($db->db_num_rows($result) === 0)
|
||||
{
|
||||
echo json_encode(array(
|
||||
'status' => 'warning',
|
||||
'msg' => 'Kein Pruefling gefunden!'
|
||||
));
|
||||
exit();
|
||||
$ps = new prestudent();
|
||||
$ps->getPrestudenten($_POST['person_id']);
|
||||
|
||||
$prestudent = new prestudent($ps->result[0]->prestudent_id);
|
||||
$prestudent->getLastStatus($prestudent->prestudent_id);
|
||||
|
||||
$pruefling = new pruefling();
|
||||
$pruefling->new = true;
|
||||
$pruefling->studiengang_kz = $prestudent->studiengang_kz;
|
||||
$pruefling->registriert = date('Y-m-d H:i:s');
|
||||
$pruefling->semester = $prestudent->ausbildungssemester;
|
||||
$pruefling->prestudent_id = $prestudent->prestudent_id;
|
||||
$pruefling->gesperrt = true;
|
||||
|
||||
$resultSperre = $pruefling->save();
|
||||
}
|
||||
else
|
||||
{
|
||||
$pruefling_ids = array();
|
||||
|
||||
while ($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$pruefling_ids[] = $row->pruefling_id;
|
||||
}
|
||||
|
||||
|
||||
$qry = "UPDATE testtool.tbl_pruefling SET gesperrt =" . $db->db_add_param($_POST['art'], 'BOOLEAN') . "
|
||||
|
||||
$qry = "UPDATE testtool.tbl_pruefling
|
||||
SET gesperrt =" . $db->db_add_param($_POST['art'], 'BOOLEAN') . "
|
||||
WHERE pruefling_id IN (" . $db->db_implode4SQL($pruefling_ids) . ")";
|
||||
|
||||
if ($result_update = $db->db_query($qry))
|
||||
{
|
||||
$msg = $_POST['art'] === 'false' ? 'Pruefling wurde gesperrt' : 'Pruefling wurde freigeschaltet';
|
||||
echo json_encode(array(
|
||||
'status' => 'ok',
|
||||
'msg' => $msg));
|
||||
exit();
|
||||
}
|
||||
else
|
||||
{
|
||||
echo json_encode(array(
|
||||
'status' => 'fehler',
|
||||
'msg' => 'Fehler beim speichern der Daten'
|
||||
));
|
||||
exit();
|
||||
}
|
||||
|
||||
$resultSperre = $db->db_query($qry);
|
||||
}
|
||||
|
||||
if ($resultSperre)
|
||||
{
|
||||
$msg = $_POST['art'] === 'false' ? 'Pruefling wurde gesperrt' : 'Pruefling wurde freigeschaltet';
|
||||
echo json_encode(array(
|
||||
'status' => 'ok',
|
||||
'msg' => $msg));
|
||||
exit();
|
||||
}
|
||||
else
|
||||
{
|
||||
echo json_encode(array(
|
||||
'status' => 'fehler',
|
||||
'msg' => 'Fehler beim speichern der Daten'
|
||||
));
|
||||
exit();
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user