mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-28 09:29:38 +00:00
Merge branch 'master' of https://github.com/FH-Complete/FHC-Core
This commit is contained in:
@@ -10,6 +10,8 @@
|
||||
- **[CIS]** LVPlan Export für Excel
|
||||
- **[FAS]** Termine Karteireiter im FAS zeigt die Anmerkung aus dem LVPlan an
|
||||
- **[CIS]** Onlinebewerbungstool greift auf mehrsprachige Statusbezeichnungen zu.
|
||||
- **[CIS]** Config-Einträge für die Tabellenspalten beim Eintragen der Gesamtnote hinzugefügt.
|
||||
- **[CIS]** Prüfungsverwaltung: Config-Eintrag hinzugefügt um die Accordion-Elemente ein- und auszublenden.
|
||||
|
||||
### Changed
|
||||
- **[FAS]** Dokumente Menü im FAS neu sortiert um den Lebenszyklus des Studierenden abzubilden
|
||||
@@ -18,6 +20,8 @@
|
||||
- **[CIS]** LVPlan Begrenzung der 4er Blockung aufgehoben.
|
||||
- **[CIS]** Im Menü 'Zeitsperren' Link zu Resturlaubsübersicht entfernt. Falls benötigt Verlinkung über CMS möglich.
|
||||
- **[CORE]** Removed NOT NULL constraint on 'verfasser\_uid' from public.tbl\_notiz
|
||||
- **[CIS]** Studienplanansicht: Wenn eine LV nicht benotet ist, aber eine kompatible LV mit vorhandener Anrechnung benotet ist wird diese Note angezeigt.
|
||||
- **[FAS]** Die RDF-Schnittstelle für das Zeugnis prüft bei Anrechnungen ob, die ECTS-Punkte übereinstimmen und wählt bei ungleichen Werten jene der angerechneten LV.
|
||||
|
||||
### Updateinfo
|
||||
- **[FAS]** Für Lehraufträge muss eine Unoconv-Vorlage erstellt werden, da der für xsl-fo notwendige Seitenumbruch-Tag aus dem RDF entfernt wurde.
|
||||
|
||||
@@ -840,9 +840,15 @@ echo "
|
||||
<th></th>
|
||||
<th>".$p->t('global/uid')."</th>
|
||||
<th>".$p->t('global/nachname')."</th>
|
||||
<th>".$p->t('global/vorname')."</th>
|
||||
<th>".($grade_from_moodle?''.$p->t('benotungstool/moodleNote').'':''.$p->t('benotungstool/leNoten').' (LE-ID)')."</th>
|
||||
<th>".$p->t('benotungstool/punkte').' / '.$p->t('benotungstool/note')."</th>
|
||||
<th>".$p->t('global/vorname')."</th>";
|
||||
|
||||
if(defined("CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE") && CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE)
|
||||
{
|
||||
echo "<th>".($grade_from_moodle?''.$p->t('benotungstool/moodleNote').'':''.$p->t('benotungstool/leNoten').' (LE-ID)')."</th>";
|
||||
}
|
||||
|
||||
|
||||
echo "<th>".$p->t('benotungstool/punkte').' / '.$p->t('benotungstool/note')."</th>
|
||||
<th rowspan=2>".$p->t('benotungstool/lvNote')."<br>
|
||||
<input type='button' onclick='GradeImport()' value='".$p->t('benotungstool/importieren')."'>
|
||||
</th>
|
||||
@@ -853,26 +859,38 @@ echo "
|
||||
<br><input type='submit' name='frei' value='Freigabe'>
|
||||
</form>
|
||||
</th>
|
||||
<th>".$p->t('benotungstool/zeugnisnote')."</th>
|
||||
<th colspan='2'>".$p->t('benotungstool/nachpruefung')."</th>";
|
||||
<th>".$p->t('benotungstool/zeugnisnote')."</th>";
|
||||
|
||||
if(defined('CIS_GESAMTNOTE_PRUEFUNG_TERMIN2') && CIS_GESAMTNOTE_PRUEFUNG_TERMIN2)
|
||||
{
|
||||
echo "<th colspan='2'>".$p->t('benotungstool/nachpruefung')."</th>";
|
||||
}
|
||||
if(defined('CIS_GESAMTNOTE_PRUEFUNG_TERMIN3') && CIS_GESAMTNOTE_PRUEFUNG_TERMIN3)
|
||||
{
|
||||
echo "<th colspan='2' nowrap>".$p->t('benotungstool/nachpruefung2')."</th>";
|
||||
}
|
||||
if(defined('CIS_GESAMTNOTE_PRUEFUNG_KOMMPRUEF') && CIS_GESAMTNOTE_PRUEFUNG_KOMMPRUEF)
|
||||
{
|
||||
echo "<th colspan='2'>".$p->t('benotungstool/kommissionellePruefung')."</th>";
|
||||
}
|
||||
echo "
|
||||
<th colspan='2'>".$p->t('benotungstool/kommissionellePruefung')."</th>
|
||||
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan='9'> </th>
|
||||
<th colspan='2'>
|
||||
<table>
|
||||
<tr>
|
||||
<td class='td_datum'>".$p->t('global/datum')."</td>
|
||||
<td class='td_note'>".$p->t('benotungstool/note')."</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</th>";
|
||||
<th colspan='9'> </th>";
|
||||
if(defined('CIS_GESAMTNOTE_PRUEFUNG_TERMIN2') && CIS_GESAMTNOTE_PRUEFUNG_TERMIN2)
|
||||
{
|
||||
echo "<th colspan='2'>
|
||||
<table>
|
||||
<tr>
|
||||
<td class='td_datum'>".$p->t('global/datum')."</td>
|
||||
<td class='td_note'>".$p->t('benotungstool/note')."</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</th>";
|
||||
}
|
||||
|
||||
if(defined('CIS_GESAMTNOTE_PRUEFUNG_TERMIN3') && CIS_GESAMTNOTE_PRUEFUNG_TERMIN3)
|
||||
{
|
||||
echo "<th colspan='2'>
|
||||
@@ -885,66 +903,73 @@ echo "
|
||||
</table>
|
||||
</th>";
|
||||
}
|
||||
echo "
|
||||
<th colspan='2'>
|
||||
<table>
|
||||
<tr>
|
||||
<td class='td_datum'>".$p->t('global/datum')."</td>
|
||||
<td class='td_note'>".$p->t('benotungstool/note')."</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</th>
|
||||
|
||||
if(defined('CIS_GESAMTNOTE_PRUEFUNG_KOMMPRUEF') && CIS_GESAMTNOTE_PRUEFUNG_KOMMPRUEF)
|
||||
{
|
||||
echo "
|
||||
<th colspan='2'>
|
||||
<table>
|
||||
<tr>
|
||||
<td class='td_datum'>".$p->t('global/datum')."</td>
|
||||
<td class='td_note'>".$p->t('benotungstool/note')."</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</th>";
|
||||
}
|
||||
echo "
|
||||
</tr>
|
||||
";
|
||||
|
||||
if(defined("CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE") && CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE)
|
||||
{
|
||||
if($grade_from_moodle)
|
||||
{
|
||||
flush();
|
||||
ob_flush();
|
||||
|
||||
if($grade_from_moodle)
|
||||
{
|
||||
flush();
|
||||
ob_flush();
|
||||
$moodle24 = new moodle24_course();
|
||||
$moodle24->loadNoten($lvid, $stsem);
|
||||
|
||||
$moodle24 = new moodle24_course();
|
||||
$moodle24->loadNoten($lvid, $stsem);
|
||||
$moodle24_course_bezeichnung=array();
|
||||
|
||||
$moodle24_course_bezeichnung=array();
|
||||
if(count($moodle24->result)>0)
|
||||
{
|
||||
// Bezeichnungen der Moodlekurse laden
|
||||
foreach($moodle24->result as $obj)
|
||||
{
|
||||
if(!isset($moodle24_course_bezeichnung[$obj->mdl_course_id]))
|
||||
{
|
||||
$moodle24course = new moodle24_course();
|
||||
$moodle24course->load($obj->mdl_course_id);
|
||||
|
||||
if(count($moodle24->result)>0)
|
||||
{
|
||||
// Bezeichnungen der Moodlekurse laden
|
||||
foreach($moodle24->result as $obj)
|
||||
{
|
||||
if(!isset($moodle24_course_bezeichnung[$obj->mdl_course_id]))
|
||||
{
|
||||
$moodle24course = new moodle24_course();
|
||||
$moodle24course->load($obj->mdl_course_id);
|
||||
$moodle24_course_bezeichnung[$obj->mdl_course_id]=$moodle24course->mdl_shortname;
|
||||
}
|
||||
|
||||
$moodle24_course_bezeichnung[$obj->mdl_course_id]=$moodle24course->mdl_shortname;
|
||||
}
|
||||
if(!isset($moodle24_course_gewicht[$obj->mdl_course_id]))
|
||||
{
|
||||
$mdl_obj = new moodle24_course();
|
||||
$mdl_lehreinheiten=$mdl_obj->getLeFromCourse($obj->mdl_course_id);
|
||||
|
||||
if(!isset($moodle24_course_gewicht[$obj->mdl_course_id]))
|
||||
{
|
||||
$mdl_obj = new moodle24_course();
|
||||
$mdl_lehreinheiten=$mdl_obj->getLeFromCourse($obj->mdl_course_id);
|
||||
foreach($mdl_lehreinheiten as $row_mdl_lehreinheit)
|
||||
{
|
||||
if($row_mdl_lehreinheit!='')
|
||||
{
|
||||
$lehreinheit_gewicht_obj = new lehreinheit();
|
||||
$lehreinheit_gewicht_obj->load($row_mdl_lehreinheit);
|
||||
|
||||
foreach($mdl_lehreinheiten as $row_mdl_lehreinheit)
|
||||
{
|
||||
if($row_mdl_lehreinheit!='')
|
||||
{
|
||||
$lehreinheit_gewicht_obj = new lehreinheit();
|
||||
$lehreinheit_gewicht_obj->load($row_mdl_lehreinheit);
|
||||
|
||||
if($lehreinheit_gewicht_obj->gewicht!='')
|
||||
{
|
||||
$moodle24_course_gewicht[$obj->mdl_course_id]=$lehreinheit_gewicht_obj->gewicht;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if($lehreinheit_gewicht_obj->gewicht!='')
|
||||
{
|
||||
$moodle24_course_gewicht[$obj->mdl_course_id]=$lehreinheit_gewicht_obj->gewicht;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// studentenquery
|
||||
$qry_stud = "SELECT
|
||||
@@ -978,165 +1003,168 @@ echo "
|
||||
$note_le_gewichtet=0;
|
||||
$gewichtsumme=0;
|
||||
$note=0;
|
||||
if($grade_from_moodle)
|
||||
{
|
||||
//Moodle 1.9
|
||||
if(defined("CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE") && CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE)
|
||||
{
|
||||
if($grade_from_moodle)
|
||||
{
|
||||
//Moodle 1.9
|
||||
|
||||
// Alle Moodlekursdaten zu Lehreinheit und Semester lesen wenn noch nicht belegt.
|
||||
if (is_null($mdldaten) && defined('CONN_STRING_MOODLE'))
|
||||
{
|
||||
//Noten aus Moodle
|
||||
if (!isset($moodle_course))
|
||||
$moodle_course = new moodle19_course();
|
||||
// Alle Moodlekursdaten zu Lehreinheit und Semester lesen wenn noch nicht belegt.
|
||||
if (is_null($mdldaten) && defined('CONN_STRING_MOODLE'))
|
||||
{
|
||||
//Noten aus Moodle
|
||||
if (!isset($moodle_course))
|
||||
$moodle_course = new moodle19_course();
|
||||
|
||||
if (!$mdldaten = $moodle_course->loadNoten($lvid, $stsem, '', true,$debg))
|
||||
$mdldaten='';
|
||||
}
|
||||
// Verarbeitet die Kursdaten
|
||||
if (!is_null($mdldaten) && is_array($mdldaten))
|
||||
{
|
||||
reset($mdldaten);
|
||||
$title="";
|
||||
$mdl_shortname='';
|
||||
for ($imdldaten=0;$imdldaten<count($mdldaten) ;$imdldaten++)
|
||||
{
|
||||
if (!$mdldaten = $moodle_course->loadNoten($lvid, $stsem, '', true,$debg))
|
||||
$mdldaten='';
|
||||
}
|
||||
// Verarbeitet die Kursdaten
|
||||
if (!is_null($mdldaten) && is_array($mdldaten))
|
||||
{
|
||||
reset($mdldaten);
|
||||
$title="";
|
||||
$mdl_shortname='';
|
||||
for ($imdldaten=0;$imdldaten<count($mdldaten) ;$imdldaten++)
|
||||
{
|
||||
|
||||
$mdldata=$mdldaten[$imdldaten]->result;
|
||||
$kursArr=(isset($mdldata[2])?$mdldata[2]:array());
|
||||
$kursasObj=(isset($mdldata[3])?$mdldata[3]:array());
|
||||
$kursname=(isset($mdldata[7])?$mdldata[7]:'');
|
||||
$shortname=(isset($mdldata[8])?$mdldata[8]:'');
|
||||
$mdldata=$mdldaten[$imdldaten]->result;
|
||||
$kursArr=(isset($mdldata[2])?$mdldata[2]:array());
|
||||
$kursasObj=(isset($mdldata[3])?$mdldata[3]:array());
|
||||
$kursname=(isset($mdldata[7])?$mdldata[7]:'');
|
||||
$shortname=(isset($mdldata[8])?$mdldata[8]:'');
|
||||
|
||||
$note=0;
|
||||
$userGef=false;
|
||||
$note=0;
|
||||
$userGef=false;
|
||||
|
||||
reset($kursArr);
|
||||
for ($iKurs=0;$iKurs<count($kursArr) ;$iKurs++)
|
||||
{
|
||||
if (isset($kursArr[$iKurs]) && isset($kursArr[$iKurs][2]) && isset($kursArr[$iKurs][6]) && strtolower(trim($row_stud->uid))==strtolower(trim($kursArr[$iKurs][2])) )
|
||||
{
|
||||
$note=trim($kursArr[$iKurs][6]);
|
||||
$userGef=true;
|
||||
reset($kursArr);
|
||||
for ($iKurs=0;$iKurs<count($kursArr) ;$iKurs++)
|
||||
{
|
||||
if (isset($kursArr[$iKurs]) && isset($kursArr[$iKurs][2]) && isset($kursArr[$iKurs][6]) && strtolower(trim($row_stud->uid))==strtolower(trim($kursArr[$iKurs][2])) )
|
||||
{
|
||||
$note=trim($kursArr[$iKurs][6]);
|
||||
$userGef=true;
|
||||
|
||||
if (is_numeric($note) || $debg)
|
||||
{
|
||||
if (is_numeric($note))
|
||||
{
|
||||
$note_le += $note;
|
||||
$note_le_gewichtet +=$note*$gewichtung;
|
||||
$gewichtsumme+=$gewichtung;
|
||||
$le_anz += 1;
|
||||
}
|
||||
if ($note == 5)
|
||||
$leneg = " style='color:red; font-weight:bold'";
|
||||
else
|
||||
$leneg = " style='font-weight:bold'";
|
||||
if (is_numeric($note) || $debg)
|
||||
{
|
||||
if (is_numeric($note))
|
||||
{
|
||||
$note_le += $note;
|
||||
$note_le_gewichtet +=$note*$gewichtung;
|
||||
$gewichtsumme+=$gewichtung;
|
||||
$le_anz += 1;
|
||||
}
|
||||
if ($note == 5)
|
||||
$leneg = " style='color:red; font-weight:bold'";
|
||||
else
|
||||
$leneg = " style='font-weight:bold'";
|
||||
|
||||
$mdl_shortname=$mdldaten[$imdldaten]->mdl_shortname;
|
||||
$title="\r\nMoodle 1.9 KursID: ".$mdldaten[$imdldaten]->mdl_course_id ."\r\n\r\n".$kursname.', '.$mdl_shortname."\r\n";
|
||||
foreach ($kursasObj[$iKurs] as $key => $value)
|
||||
{
|
||||
$title.=$key."=>".$value."\r\n";
|
||||
}
|
||||
$mdl_shortname=$mdldaten[$imdldaten]->mdl_shortname;
|
||||
$title="\r\nMoodle 1.9 KursID: ".$mdldaten[$imdldaten]->mdl_course_id ."\r\n\r\n".$kursname.', '.$mdl_shortname."\r\n";
|
||||
foreach ($kursasObj[$iKurs] as $key => $value)
|
||||
{
|
||||
$title.=$key."=>".$value."\r\n";
|
||||
}
|
||||
|
||||
|
||||
$note_les_str .= "<span ".$leneg.">".$note."</span> <span title='".$title."' style='font-size:10px'>(".$mdl_shortname.")</span> ";
|
||||
}
|
||||
} // ende If Richtiger User
|
||||
$note_les_str .= "<span ".$leneg.">".$note."</span> <span title='".$title."' style='font-size:10px'>(".$mdl_shortname.")</span> ";
|
||||
}
|
||||
} // ende If Richtiger User
|
||||
|
||||
if ($userGef)
|
||||
{
|
||||
$iKurs=count($kursArr)+1; // diesen USER for beenden - user wurde gefunden
|
||||
}
|
||||
if ($userGef)
|
||||
{
|
||||
$iKurs=count($kursArr)+1; // diesen USER for beenden - user wurde gefunden
|
||||
}
|
||||
|
||||
} // ende Kursschleife
|
||||
} // MoodleKurse abarbeiten
|
||||
} // ende Kursschleife
|
||||
} // MoodleKurse abarbeiten
|
||||
|
||||
#echo "<p><h1> $title Anzahl Noten gef. $le_anz $note_le </h1></p>";
|
||||
}
|
||||
else
|
||||
{
|
||||
if(defined('CONN_STRING_MOODLE'))
|
||||
{
|
||||
//den Error nur einmal anzeigen und nicht fuer jeden Studenten
|
||||
$moodle_course->errormsg=trim($moodle_course->errormsg);
|
||||
if(!$errorshown && !empty($moodle_course->errormsg) )
|
||||
{
|
||||
//echo '<br><b>'.$moodle_course->errormsg.'</b><br>';
|
||||
$errorshown=true;
|
||||
}
|
||||
}
|
||||
}
|
||||
#echo "<p><h1> $title Anzahl Noten gef. $le_anz $note_le </h1></p>";
|
||||
}
|
||||
else
|
||||
{
|
||||
if(defined('CONN_STRING_MOODLE'))
|
||||
{
|
||||
//den Error nur einmal anzeigen und nicht fuer jeden Studenten
|
||||
$moodle_course->errormsg=trim($moodle_course->errormsg);
|
||||
if(!$errorshown && !empty($moodle_course->errormsg) )
|
||||
{
|
||||
//echo '<br><b>'.$moodle_course->errormsg.'</b><br>';
|
||||
$errorshown=true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Moodle 2.4
|
||||
if(isset($moodle24) && count($moodle24->result)>0)
|
||||
{
|
||||
foreach($moodle24->result as $moodle24_noten)
|
||||
{
|
||||
if($moodle24_noten->uid==$row_stud->uid)
|
||||
{
|
||||
$gewichtung=1;
|
||||
$note_le+=$moodle24_noten->note;
|
||||
if(isset($moodle24_course_gewicht[$moodle24_noten->mdl_course_id]))
|
||||
$gewichtung=$moodle24_course_gewicht[$moodle24_noten->mdl_course_id];
|
||||
// Moodle 2.4
|
||||
if(isset($moodle24) && count($moodle24->result)>0)
|
||||
{
|
||||
foreach($moodle24->result as $moodle24_noten)
|
||||
{
|
||||
if($moodle24_noten->uid==$row_stud->uid)
|
||||
{
|
||||
$gewichtung=1;
|
||||
$note_le+=$moodle24_noten->note;
|
||||
if(isset($moodle24_course_gewicht[$moodle24_noten->mdl_course_id]))
|
||||
$gewichtung=$moodle24_course_gewicht[$moodle24_noten->mdl_course_id];
|
||||
|
||||
if($gewichtung=='')
|
||||
$gewichtung=1;
|
||||
$note_le_gewichtet+=$moodle24_noten->note*$gewichtung;
|
||||
$gewichtsumme+=$gewichtung;
|
||||
$le_anz+=1;
|
||||
//if ($moodle24_noten->note == 5)
|
||||
// $leneg = " style='color:red; font-weight:bold'";
|
||||
//else
|
||||
$leneg = ' style="font-weight: bold;"';
|
||||
$title="Moodle KursID: ".$moodle24_noten->mdl_course_id.
|
||||
"\nKursbezeichnung: ".$moodle24_course_bezeichnung[$moodle24_noten->mdl_course_id].
|
||||
"\nUser: ".$moodle24_noten->uid.
|
||||
"\nNote: ".$moodle24_noten->note;
|
||||
if(defined('CIS_GESAMTNOTE_GEWICHTUNG') && CIS_GESAMTNOTE_GEWICHTUNG)
|
||||
$title.="\nGewichtung: ".$gewichtung;
|
||||
$note_les_str .= "<br><span".$leneg.">".$moodle24_noten->note."</span><span title='".$title."' style='font-size:10px'> (".$moodle24_course_bezeichnung[$moodle24_noten->mdl_course_id].")</span> ";
|
||||
if($gewichtung=='')
|
||||
$gewichtung=1;
|
||||
$note_le_gewichtet+=$moodle24_noten->note*$gewichtung;
|
||||
$gewichtsumme+=$gewichtung;
|
||||
$le_anz+=1;
|
||||
//if ($moodle24_noten->note == 5)
|
||||
// $leneg = " style='color:red; font-weight:bold'";
|
||||
//else
|
||||
$leneg = ' style="font-weight: bold;"';
|
||||
$title="Moodle KursID: ".$moodle24_noten->mdl_course_id.
|
||||
"\nKursbezeichnung: ".$moodle24_course_bezeichnung[$moodle24_noten->mdl_course_id].
|
||||
"\nUser: ".$moodle24_noten->uid.
|
||||
"\nNote: ".$moodle24_noten->note;
|
||||
if(defined('CIS_GESAMTNOTE_GEWICHTUNG') && CIS_GESAMTNOTE_GEWICHTUNG)
|
||||
$title.="\nGewichtung: ".$gewichtung;
|
||||
$note_les_str .= "<br><span".$leneg.">".$moodle24_noten->note."</span><span title='".$title."' style='font-size:10px'> (".$moodle24_course_bezeichnung[$moodle24_noten->mdl_course_id].")</span> ";
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//Noten aus Uebungstool
|
||||
$le = new lehreinheit();
|
||||
$le->load_lehreinheiten($lvid, $stsem);
|
||||
foreach($le->lehreinheiten as $l)
|
||||
{
|
||||
$legesamtnote = new legesamtnote($l->lehreinheit_id);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//Noten aus Uebungstool
|
||||
$le = new lehreinheit();
|
||||
$le->load_lehreinheiten($lvid, $stsem);
|
||||
foreach($le->lehreinheiten as $l)
|
||||
{
|
||||
$legesamtnote = new legesamtnote($l->lehreinheit_id);
|
||||
|
||||
if (!$legesamtnote->load($row_stud->uid,$l->lehreinheit_id))
|
||||
{
|
||||
//$note_les_str .= "- (".$l->lehreinheit_id.")";
|
||||
}
|
||||
else
|
||||
{
|
||||
$note_le += $legesamtnote->note;
|
||||
if (!$legesamtnote->load($row_stud->uid,$l->lehreinheit_id))
|
||||
{
|
||||
//$note_les_str .= "- (".$l->lehreinheit_id.")";
|
||||
}
|
||||
else
|
||||
{
|
||||
$note_le += $legesamtnote->note;
|
||||
|
||||
$gewicht = $l->gewicht;
|
||||
if($l->gewicht=='')
|
||||
$gewicht = 1;
|
||||
$note_le_gewichtet+=$legesamtnote->note*$gewicht;
|
||||
$gewichtsumme+=$gewicht;
|
||||
$gewicht = $l->gewicht;
|
||||
if($l->gewicht=='')
|
||||
$gewicht = 1;
|
||||
$note_le_gewichtet+=$legesamtnote->note*$gewicht;
|
||||
$gewichtsumme+=$gewicht;
|
||||
|
||||
$le_anz += 1;
|
||||
if ($legesamtnote->note == 5)
|
||||
$leneg = " style='color:red; font-weight:bold'";
|
||||
else
|
||||
$leneg = "";
|
||||
if(defined('CIS_GESAMTNOTE_GEWICHTUNG') && CIS_GESAMTNOTE_GEWICHTUNG)
|
||||
$title='Gewichtung: '.$l->gewicht;
|
||||
else
|
||||
$title='';
|
||||
$note_les_str .= '<span title="'.$title.'"><span'.$leneg.'>'.$legesamtnote->note.'</span> ('.$l->lehreinheit_id.') </span>';
|
||||
}
|
||||
}
|
||||
}
|
||||
$le_anz += 1;
|
||||
if ($legesamtnote->note == 5)
|
||||
$leneg = " style='color:red; font-weight:bold'";
|
||||
else
|
||||
$leneg = "";
|
||||
if(defined('CIS_GESAMTNOTE_GEWICHTUNG') && CIS_GESAMTNOTE_GEWICHTUNG)
|
||||
$title='Gewichtung: '.$l->gewicht;
|
||||
else
|
||||
$title='';
|
||||
$note_les_str .= '<span title="'.$title.'"><span'.$leneg.'>'.$legesamtnote->note.'</span> ('.$l->lehreinheit_id.') </span>';
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ($lvgesamtnote = new lvgesamtnote($lvid,$row_stud->uid,$stsem))
|
||||
{
|
||||
@@ -1190,8 +1218,10 @@ echo "
|
||||
else
|
||||
$znote = null;
|
||||
|
||||
|
||||
echo "<td style='white-space: nowrap;'>".$note_les_str." </td>";
|
||||
if(defined("CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE") && CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE)
|
||||
{
|
||||
echo "<td style='white-space: nowrap;'>".$note_les_str." </td>";
|
||||
}
|
||||
|
||||
if (key_exists($row_stud->uid,$studpruef_arr))
|
||||
$hide = "style='display:none;visibility:hidden;'";
|
||||
@@ -1275,43 +1305,46 @@ echo "
|
||||
if(isset($noten_array[$znote]) && $noten_array[$znote]['positiv']==false)
|
||||
$summe_ng++;
|
||||
|
||||
// Pruefung 2. Termin
|
||||
if (key_exists($row_stud->uid, $studpruef_arr))
|
||||
if(defined('CIS_GESAMTNOTE_PRUEFUNG_TERMIN2') && CIS_GESAMTNOTE_PRUEFUNG_TERMIN2)
|
||||
{
|
||||
echo "<td colspan='2'>";
|
||||
echo "<span id='span_Termin2_".$row_stud->uid."'>";
|
||||
echo "<table>";
|
||||
$le_id_arr = array();
|
||||
$le_id_arr = array_keys($studpruef_arr[$row_stud->uid]);
|
||||
foreach ($le_id_arr as $le_id_stud)
|
||||
{
|
||||
$pr_note = $studpruef_arr[$row_stud->uid][$le_id_stud]["note"];
|
||||
$pr_punkte = $studpruef_arr[$row_stud->uid][$le_id_stud]["punkte"];
|
||||
$pr_datum = $studpruef_arr[$row_stud->uid][$le_id_stud]["datum"];
|
||||
$pr_le_id = $le_id_stud;
|
||||
// Pruefung 2. Termin
|
||||
if (key_exists($row_stud->uid, $studpruef_arr))
|
||||
{
|
||||
echo "<td colspan='2'>";
|
||||
echo "<span id='span_Termin2_".$row_stud->uid."'>";
|
||||
echo "<table>";
|
||||
$le_id_arr = array();
|
||||
$le_id_arr = array_keys($studpruef_arr[$row_stud->uid]);
|
||||
foreach ($le_id_arr as $le_id_stud)
|
||||
{
|
||||
$pr_note = $studpruef_arr[$row_stud->uid][$le_id_stud]["note"];
|
||||
$pr_punkte = $studpruef_arr[$row_stud->uid][$le_id_stud]["punkte"];
|
||||
$pr_datum = $studpruef_arr[$row_stud->uid][$le_id_stud]["datum"];
|
||||
$pr_le_id = $le_id_stud;
|
||||
|
||||
if($pr_punkte!='')
|
||||
$pr_notenbezeichnung = $noten_array[$pr_note]['bezeichnung'].' ('.number_format($pr_punkte,2).')';
|
||||
else
|
||||
$pr_notenbezeichnung = $noten_array[$pr_note]['bezeichnung'];
|
||||
if($pr_punkte!='')
|
||||
$pr_notenbezeichnung = $noten_array[$pr_note]['bezeichnung'].' ('.number_format($pr_punkte,2).')';
|
||||
else
|
||||
$pr_notenbezeichnung = $noten_array[$pr_note]['bezeichnung'];
|
||||
|
||||
echo '<tr>
|
||||
<td class="td_datum">'.$pr_datum.'</td>
|
||||
<td class="td_note">'.$pr_notenbezeichnung.'</td>
|
||||
<td><input type="button" name="anlegen" value="'.$p->t('global/aendern').'" onclick="pruefungAnlegen(\''.$row_stud->uid.'\',\''.$pr_datum.'\',\''.$pr_note.'\',\''.$pr_le_id.'\',\''.$pr_punkte.'\')"><td>
|
||||
</tr>';
|
||||
}
|
||||
echo "</table>";
|
||||
echo "</span>";
|
||||
echo "</td>";
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!is_null($note_lv) || !is_null($znote))
|
||||
echo "<td colspan='2'><span id='span_Termin2_".$row_stud->uid."'><input type='button' name='anlegen' value='".$p->t('benotungstool/anlegen')."' onclick='pruefungAnlegen(\"".$row_stud->uid."\",\"\",\"\",\"\",\"\")'></span></td>";
|
||||
else
|
||||
echo "<td colspan='2'></td>";
|
||||
}
|
||||
echo '<tr>
|
||||
<td class="td_datum">'.$pr_datum.'</td>
|
||||
<td class="td_note">'.$pr_notenbezeichnung.'</td>
|
||||
<td><input type="button" name="anlegen" value="'.$p->t('global/aendern').'" onclick="pruefungAnlegen(\''.$row_stud->uid.'\',\''.$pr_datum.'\',\''.$pr_note.'\',\''.$pr_le_id.'\',\''.$pr_punkte.'\')"><td>
|
||||
</tr>';
|
||||
}
|
||||
echo "</table>";
|
||||
echo "</span>";
|
||||
echo "</td>";
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!is_null($note_lv) || !is_null($znote))
|
||||
echo "<td colspan='2'><span id='span_Termin2_".$row_stud->uid."'><input type='button' name='anlegen' value='".$p->t('benotungstool/anlegen')."' onclick='pruefungAnlegen(\"".$row_stud->uid."\",\"\",\"\",\"\",\"\")'></span></td>";
|
||||
else
|
||||
echo "<td colspan='2'></td>";
|
||||
}
|
||||
}
|
||||
|
||||
if(defined('CIS_GESAMTNOTE_PRUEFUNG_TERMIN3') && CIS_GESAMTNOTE_PRUEFUNG_TERMIN3)
|
||||
{
|
||||
@@ -1354,39 +1387,42 @@ echo "
|
||||
}
|
||||
}
|
||||
|
||||
// komm Pruefung
|
||||
if (key_exists($row_stud->uid,$studpruef_komm))
|
||||
if(defined('CIS_GESAMTNOTE_PRUEFUNG_KOMMPRUEF') && CIS_GESAMTNOTE_PRUEFUNG_KOMMPRUEF)
|
||||
{
|
||||
echo "<td colspan='2'>";
|
||||
echo "<span id='span_".$row_stud->uid."'>";
|
||||
echo "<table>";
|
||||
$le_id_arr = array();
|
||||
$le_id_arr = array_keys($studpruef_komm[$row_stud->uid]);
|
||||
foreach ($le_id_arr as $le_id_stud)
|
||||
{
|
||||
$pr_note = $studpruef_komm[$row_stud->uid][$le_id_stud]["note"];
|
||||
$pr_punkte = $studpruef_komm[$row_stud->uid][$le_id_stud]["punkte"];
|
||||
$pr_datum = $studpruef_komm[$row_stud->uid][$le_id_stud]["datum"];
|
||||
$pr_le_id = $le_id_stud;
|
||||
// komm Pruefung
|
||||
if (key_exists($row_stud->uid,$studpruef_komm))
|
||||
{
|
||||
echo "<td colspan='2'>";
|
||||
echo "<span id='span_".$row_stud->uid."'>";
|
||||
echo "<table>";
|
||||
$le_id_arr = array();
|
||||
$le_id_arr = array_keys($studpruef_komm[$row_stud->uid]);
|
||||
foreach ($le_id_arr as $le_id_stud)
|
||||
{
|
||||
$pr_note = $studpruef_komm[$row_stud->uid][$le_id_stud]["note"];
|
||||
$pr_punkte = $studpruef_komm[$row_stud->uid][$le_id_stud]["punkte"];
|
||||
$pr_datum = $studpruef_komm[$row_stud->uid][$le_id_stud]["datum"];
|
||||
$pr_le_id = $le_id_stud;
|
||||
|
||||
if($pr_punkte!='')
|
||||
$pr_notenbezeichnung = $noten_array[$pr_note]['bezeichnung'].' ('.number_format($pr_punkte,2).')';
|
||||
else
|
||||
$pr_notenbezeichnung = $noten_array[$pr_note]['bezeichnung'];
|
||||
if($pr_punkte!='')
|
||||
$pr_notenbezeichnung = $noten_array[$pr_note]['bezeichnung'].' ('.number_format($pr_punkte,2).')';
|
||||
else
|
||||
$pr_notenbezeichnung = $noten_array[$pr_note]['bezeichnung'];
|
||||
|
||||
echo '<tr>
|
||||
<td class="td_datum">'.$pr_datum.'</td>
|
||||
<td class="td_note">'.$pr_notenbezeichnung.'</td>
|
||||
</tr>';
|
||||
}
|
||||
echo "</table>";
|
||||
echo "</span>";
|
||||
echo "</td>";
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "<td colspan='2'></td>";
|
||||
}
|
||||
echo '<tr>
|
||||
<td class="td_datum">'.$pr_datum.'</td>
|
||||
<td class="td_note">'.$pr_notenbezeichnung.'</td>
|
||||
</tr>';
|
||||
}
|
||||
echo "</table>";
|
||||
echo "</span>";
|
||||
echo "</td>";
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "<td colspan='2'></td>";
|
||||
}
|
||||
}
|
||||
|
||||
echo "</tr>";
|
||||
$i++;
|
||||
@@ -1397,12 +1433,27 @@ echo "
|
||||
echo "
|
||||
<tr style='font-weight:bold;' align='center'>
|
||||
<th style='font-weight:bold;'>Σ</th>
|
||||
<th style='font-weight:bold;' title='".$p->t('benotungstool/anzahlDerStudenten')."'>$summe_stud</th>
|
||||
<th colspan='6'></td>
|
||||
<th style='color:red; font-weight:bold;' title='".$p->t('benotungstool/anzahlNegativerBeurteilungen')."'>$summe_ng</th>
|
||||
<th style='font-weight:bold;' colspan='2' title='".$p->t('benotungstool/anzahlNachpruefungen')."'>$summe_t2</th>
|
||||
<th style='font-weight:bold;' colspan='2' title='".$p->t('benotungstool/anzahlNachpruefungen')."'>$summe_t3</th>
|
||||
<th style='font-weight:bold;' colspan='2' title='".$p->t('benotungstool/anzahlKommisionellePruefungen')."'>$summe_komm</th>
|
||||
<th style='font-weight:bold;' title='".$p->t('benotungstool/anzahlDerStudenten')."'>$summe_stud</th>";
|
||||
if(defined("CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE") && (!CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE))
|
||||
{
|
||||
echo "<th colspan='5'></td>";
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "<th colspan='6'></td>";
|
||||
}
|
||||
echo "<th style='color:red; font-weight:bold;' title='".$p->t('benotungstool/anzahlNegativerBeurteilungen')."'>$summe_ng</th>";
|
||||
|
||||
if(defined('CIS_GESAMTNOTE_PRUEFUNG_TERMIN2') && CIS_GESAMTNOTE_PRUEFUNG_TERMIN2): ?>
|
||||
<th style='font-weight:bold;' colspan='2' title='"<?php echo $p->t('benotungstool/anzahlNachpruefungen'); ?>"'>$summe_t2</th>;
|
||||
<?php endif;
|
||||
if(defined('CIS_GESAMTNOTE_PRUEFUNG_TERMIN3') && CIS_GESAMTNOTE_PRUEFUNG_TERMIN3): ?>
|
||||
<th style='font-weight:bold;' colspan='2' title='"<?php echo $p->t('benotungstool/anzahlNachpruefungen'); ?>"'>$summe_t3</th>";
|
||||
<?php endif;
|
||||
if(defined('CIS_GESAMTNOTE_PRUEFUNG_KOMMPRUEF') && CIS_GESAMTNOTE_PRUEFUNG_KOMMPRUEF): ?>
|
||||
<th style='font-weight:bold;' colspan='2' title='"<?php echo $p->t('benotungstool/anzahlKommisionellePruefungen'); ?>"'>$summe_komm</th>
|
||||
<?php endif;
|
||||
echo "
|
||||
</tr>
|
||||
</table>
|
||||
</td></tr>
|
||||
|
||||
@@ -589,6 +589,8 @@ function resetForm()
|
||||
*/
|
||||
function setTablesorter(tableId)
|
||||
{
|
||||
if($("#"+tableId).length != 0)
|
||||
{
|
||||
if($("#"+tableId)[0].hasInitialized !== true)
|
||||
{
|
||||
$("#"+tableId).tablesorter({
|
||||
@@ -602,6 +604,7 @@ function setTablesorter(tableId)
|
||||
var sorting = [[1,0],[0,0]];
|
||||
$("#"+tableId).trigger("sorton",[sorting]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -688,7 +691,6 @@ function showAnmeldungen(pruefungstermin_id, lehrveranstaltung_id)
|
||||
|
||||
function writeAnmeldungen(data)
|
||||
{
|
||||
console.log(data);
|
||||
if(data.error === 'false')
|
||||
{
|
||||
var terminId = data.result.anmeldungen[0].pruefungstermin_id;
|
||||
|
||||
@@ -633,19 +633,22 @@ function resetForm()
|
||||
*/
|
||||
function setTablesorter(tableId)
|
||||
{
|
||||
if($("#"+tableId)[0].hasInitialized !== true)
|
||||
{
|
||||
$("#"+tableId).tablesorter({
|
||||
widgets: ["zebra"],
|
||||
sortList: [[1,0]]
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
$("#"+tableId).trigger("updateAll");
|
||||
var sorting = [[1,0],[0,0]];
|
||||
$("#"+tableId).trigger("sorton",[sorting]);
|
||||
}
|
||||
if($("#"+tableId).length != 0)
|
||||
{
|
||||
if($("#"+tableId)[0].hasInitialized !== true)
|
||||
{
|
||||
$("#"+tableId).tablesorter({
|
||||
widgets: ["zebra"],
|
||||
sortList: [[1,0]]
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
$("#"+tableId).trigger("updateAll");
|
||||
var sorting = [[1,0],[0,0]];
|
||||
$("#"+tableId).trigger("sorton",[sorting]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -732,7 +735,6 @@ function showAnmeldungen(pruefungstermin_id, lehrveranstaltung_id)
|
||||
|
||||
function writeAnmeldungen(data)
|
||||
{
|
||||
console.log(data);
|
||||
if(data.error === 'false')
|
||||
{
|
||||
var terminId = data.result.anmeldungen[0].pruefungstermin_id;
|
||||
|
||||
@@ -486,8 +486,8 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null)
|
||||
{
|
||||
if($termin->teilnehmer_max > $termin->getNumberOfParticipants() || $termin->teilnehmer_max == NULL)
|
||||
{
|
||||
$pruefung = new pruefungCis();
|
||||
$reihung = $pruefung->getLastOfReihung($_REQUEST["termin_id"]);
|
||||
$pruefung = new pruefungCis();
|
||||
$reihung = $pruefung->getLastOfReihung($_REQUEST["termin_id"]);
|
||||
$anmeldung = new pruefungsanmeldung();
|
||||
$anmeldung->lehrveranstaltung_id = $_REQUEST["lehrveranstaltung_id"];
|
||||
$anmeldung->pruefungstermin_id = $_REQUEST["termin_id"];
|
||||
@@ -500,6 +500,7 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null)
|
||||
|
||||
$konto = new konto();
|
||||
$creditpoints = $konto->getCreditPoints($uid, $aktStudiensemester);
|
||||
|
||||
if($creditpoints !== false)
|
||||
{
|
||||
if($creditpoints < $lehrveranstaltung->ects)
|
||||
@@ -547,6 +548,10 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null)
|
||||
$person->getPersonFromBenutzer($uid);
|
||||
$prestudent = new prestudent();
|
||||
$prestudent->getPrestudenten($person->person_id);
|
||||
$studiensemester = new studiensemester();
|
||||
$stdsem = $studiensemester->getaktorNext();
|
||||
if ($aktStudiensemester)
|
||||
$stdsem = $aktStudiensemester;
|
||||
|
||||
if(count($prestudent->result) > 0)
|
||||
{
|
||||
@@ -563,58 +568,65 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null)
|
||||
}
|
||||
if($prestudent_id != "")
|
||||
{
|
||||
$anrechungSaveResult = false;
|
||||
if(!defined('CIS_PRUEFUNGSANMELDUNG_ANRECHNUNG') || CIS_PRUEFUNGSANMELDUNG_ANRECHNUNG == true)
|
||||
{
|
||||
$anrechnung->lehrveranstaltung_id = $lehrveranstaltung->lehrveranstaltung_id;
|
||||
$anrechnung->lehrveranstaltung_id_kompatibel = $lv_komp->lehrveranstaltung_id;
|
||||
$anrechnung->prestudent_id = $prestudent_id;
|
||||
$anrechnung->begruendung_id = "2";
|
||||
$anrechnung->genehmigt_von = CIS_PRUEFUNGSANMELDUNG_USER;
|
||||
$anrechnung->new = true;
|
||||
$anrechungSaveResult = $anrechnung->save();
|
||||
}
|
||||
else
|
||||
{
|
||||
$anrechungSaveResult = true;
|
||||
}
|
||||
$anrechungSaveResult = false;
|
||||
if(!defined('CIS_PRUEFUNGSANMELDUNG_ANRECHNUNG') || CIS_PRUEFUNGSANMELDUNG_ANRECHNUNG == true)
|
||||
{
|
||||
if($lv_komp->lehrveranstaltung_id != null && ($lv_komp->lehrveranstaltung_id != $lehrveranstaltung->lehrveranstaltung_id))
|
||||
{
|
||||
$anrechnung->lehrveranstaltung_id = $lv_komp->lehrveranstaltung_id;
|
||||
$anrechnung->lehrveranstaltung_id_kompatibel = $lehrveranstaltung->lehrveranstaltung_id;
|
||||
$anrechnung->prestudent_id = $prestudent_id;
|
||||
$anrechnung->begruendung_id = "2";
|
||||
$anrechnung->genehmigt_von = CIS_PRUEFUNGSANMELDUNG_USER;
|
||||
$anrechnung->new = true;
|
||||
$anrechungSaveResult = $anrechnung->save();
|
||||
}
|
||||
else
|
||||
{
|
||||
$anrechungSaveResult = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$anrechungSaveResult = true;
|
||||
}
|
||||
|
||||
if($anrechungSaveResult)
|
||||
{
|
||||
if($anrechnung->anrechnung_id == "")
|
||||
$anmeldung->anrechnung_id = null;
|
||||
else
|
||||
$anmeldung->anrechnung_id = $anrechnung->anrechnung_id;
|
||||
|
||||
if($anmeldung->save(true))
|
||||
{
|
||||
$pruefung = new pruefungCis($termin->pruefung_id);
|
||||
if(defined('CIS_PRUEFUNG_MAIL_EMPFAENGER_ANMEDLUNG') && (CIS_PRUEFUNG_MAIL_EMPFAENGER_ANMEDLUNG !== ""))
|
||||
$to = CIS_PRUEFUNG_MAIL_EMPFAENGER_ANMEDLUNG."@".DOMAIN;
|
||||
if($anrechnung->anrechnung_id == "")
|
||||
$anmeldung->anrechnung_id = null;
|
||||
else
|
||||
$to = $pruefung->mitarbeiter_uid."@".DOMAIN;
|
||||
$from = "noreply@".DOMAIN;
|
||||
$subject = $p->t('pruefung/emailLektorSubjectAnmeldung');
|
||||
$mail = new mail($to, $from, $subject, $p->t('pruefung/emailBodyBitteHtmlSicht'));
|
||||
$anmeldung->anrechnung_id = $anrechnung->anrechnung_id;
|
||||
|
||||
$student = new student($uid);
|
||||
$datum = new datum();
|
||||
if($anmeldung->save(true))
|
||||
{
|
||||
$pruefung = new pruefungCis($termin->pruefung_id);
|
||||
if(defined('CIS_PRUEFUNG_MAIL_EMPFAENGER_ANMEDLUNG') && (CIS_PRUEFUNG_MAIL_EMPFAENGER_ANMEDLUNG !== ""))
|
||||
$to = CIS_PRUEFUNG_MAIL_EMPFAENGER_ANMEDLUNG."@".DOMAIN;
|
||||
else
|
||||
$to = $pruefung->mitarbeiter_uid."@".DOMAIN;
|
||||
$from = "noreply@".DOMAIN;
|
||||
$subject = $p->t('pruefung/emailLektorSubjectAnmeldung');
|
||||
$mail = new mail($to, $from, $subject, $p->t('pruefung/emailBodyBitteHtmlSicht'));
|
||||
|
||||
$lv = new lehrveranstaltung($anmeldung->lehrveranstaltung_id);
|
||||
$student = new student($uid);
|
||||
$datum = new datum();
|
||||
|
||||
$html = $p->t('pruefung/emailLektorStudentIn')." ".$student->vorname." ".$student->nachname." ".$p->t('pruefung/emailLektorHatSichZurPruefung')." ".$lv->bezeichnung." ".$p->t('pruefung/emailLektorAm')." ".$datum->formatDatum($termin->von, "m.d.Y")." ".$p->t('pruefung/emailLektorVon')." ".$datum->formatDatum($termin->von,"h:i")." ".$p->t('pruefung/emailLektorUhrBis')." ".$datum->formatDatum($termin->bis,"h:i")." ".$p->t('pruefung/emailLektorUhrAngemeldet');
|
||||
$mail->setHTMLContent($html);
|
||||
$mail->send();
|
||||
$lv = new lehrveranstaltung($anmeldung->lehrveranstaltung_id);
|
||||
|
||||
$data['result'] = $p->t('pruefung/anmeldungErfolgreich');
|
||||
$data['error']='false';
|
||||
$data['errormsg']='';
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']=$anmeldung->errormsg;
|
||||
}
|
||||
$html = $p->t('pruefung/emailLektorStudentIn')." ".$student->vorname." ".$student->nachname." ".$p->t('pruefung/emailLektorHatSichZurPruefung')." ".$lv->bezeichnung." ".$p->t('pruefung/emailLektorAm')." ".$datum->formatDatum($termin->von, "m.d.Y")." ".$p->t('pruefung/emailLektorVon')." ".$datum->formatDatum($termin->von,"h:i")." ".$p->t('pruefung/emailLektorUhrBis')." ".$datum->formatDatum($termin->bis,"h:i")." ".$p->t('pruefung/emailLektorUhrAngemeldet');
|
||||
$mail->setHTMLContent($html);
|
||||
$mail->send();
|
||||
|
||||
$data['result'] = $p->t('pruefung/anmeldungErfolgreich');
|
||||
$data['error']='false';
|
||||
$data['errormsg']='';
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']=$anmeldung->errormsg;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -230,6 +230,7 @@ $studiensemester->getAll();
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<?php if(!defined('CIS_PRUEFUNGSANMELDUNG_LEHRVERANSTALTUNGEN_AUS_STUDIENGANG') || CIS_PRUEFUNGSANMELDUNG_LEHRVERANSTALTUNGEN_AUS_STUDIENGANG == true): ?>
|
||||
<h2><?php echo $p->t('pruefung/lvVonStudiengang'); ?></h2>
|
||||
<div>
|
||||
<table id="table2" class="tablesorter">
|
||||
@@ -246,6 +247,7 @@ $studiensemester->getAll();
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
<h2><?php echo $p->t('pruefung/lvAlle'); ?></h2>
|
||||
<div>
|
||||
<table id="table3" class="tablesorter">
|
||||
|
||||
@@ -66,7 +66,7 @@ $rechte->getBerechtigungen($uid);
|
||||
min-height: 297mm;
|
||||
padding: 20mm;
|
||||
margin: 10mm auto;
|
||||
border: 1px #D3D3D3 solid;
|
||||
border: 1px #ffffff solid;
|
||||
border-radius: 5px;
|
||||
background: white;
|
||||
box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
|
||||
@@ -75,7 +75,7 @@ $rechte->getBerechtigungen($uid);
|
||||
|
||||
#subpage {
|
||||
padding: 10mm;
|
||||
border: 1px black solid;
|
||||
border: 1px white solid;
|
||||
height: 256mm;
|
||||
outline: 20mm
|
||||
}
|
||||
|
||||
@@ -231,7 +231,8 @@ if(!isset($begin) || !isset($ende))
|
||||
}
|
||||
}
|
||||
|
||||
if($ende-$begin>31536000)
|
||||
|
||||
if($ende-$begin>34560000) // = 400 Tage
|
||||
{
|
||||
die($p->t('lvplan/datumsbereichZuGross')."!");
|
||||
}
|
||||
|
||||
+728
-689
File diff suppressed because it is too large
Load Diff
@@ -215,6 +215,9 @@ define('CIS_PRUEFUNGSANMELDUNG_USER','p.pruefungsanmeldung');
|
||||
// Soll für die Prüfungsanmeldungen eine Anrechnung erstellt werden
|
||||
define('CIS_PRUEFUNGSANMELDUNG_ANRECHNUNG', true);
|
||||
|
||||
//Gibt an, ob der Bereich zur Anmeldung zu Pruefungen des gesamten Studiengangs angezeigt werden soll
|
||||
define('CIS_PRUEFUNGSANMELDUNG_LEHRVERANSTALTUNGEN_AUS_STUDIENGANG', true);
|
||||
|
||||
//Gibt an, wie viele Semester aus der Vergangenheit unter Meine LV angezeigt werden
|
||||
define('CIS_MEINELV_ANZAHL_SEMESTER_PAST', 3);
|
||||
|
||||
|
||||
@@ -59,9 +59,20 @@ define('CIS_GESAMTNOTE_UEBERSCHREIBEN',true);
|
||||
// Gewichtung der Lehreinheiten bei Noteneintragung true|false
|
||||
define('CIS_GESAMTNOTE_GEWICHTUNG', true);
|
||||
|
||||
// Bei Gesamtnote eine zusaetzliche Spalte fuer den 2. Termin anzeigen
|
||||
define('CIS_GESAMTNOTE_PRUEFUNG_TERMIN2',true);
|
||||
|
||||
// Bei Gesamtnote eine zusaetzliche Spalte fuer den 3. Termin anzeigen
|
||||
define('CIS_GESAMTNOTE_PRUEFUNG_TERMIN3',true);
|
||||
|
||||
// Bei Gesamtnote eine zusaetzliche Spalte fuer die kommissionelle Pruefung anlegen
|
||||
define('CIS_GESAMTNOTE_PRUEFUNG_KOMMPRUEF', true);
|
||||
|
||||
// Bei Gesamtnote eine zusaetzliche Spalte fuer die kommissionelle Pruefung anlegen
|
||||
define('CIS_GESAMTNOTE_PRUEFUNG_MOODLE_NOTE', true);
|
||||
|
||||
// Bei Gesamtnote die Spalte fuer die Quelle der Noten anzeigen (Moodle oder LE)
|
||||
define('CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE', true);
|
||||
|
||||
// Gibt an ob im FAS bei den Lehrveranstaltungsnoten ein zusaetzliches Formular angezeigt wird um
|
||||
// Vertraege fuer Pruefungshonorare anzulegen
|
||||
|
||||
@@ -291,6 +291,9 @@ class dokument_export
|
||||
|
||||
if($download)
|
||||
{
|
||||
if(headers_sent())
|
||||
exit('Header wurden bereits gesendet -> Abbruch');
|
||||
|
||||
switch($this->outputformat)
|
||||
{
|
||||
case 'pdf':
|
||||
@@ -310,6 +313,8 @@ class dokument_export
|
||||
header('Content-Disposition: attachment; filename="'.$this->filename.'.odt"');
|
||||
header('Content-Length: '.$fsize);
|
||||
break;
|
||||
default:
|
||||
exit('Outputformat is not defined');
|
||||
}
|
||||
|
||||
while (!feof($handle))
|
||||
@@ -389,5 +394,11 @@ class dokument_export
|
||||
}
|
||||
return $_xml_data->asXML();
|
||||
}
|
||||
|
||||
public function getXML()
|
||||
{
|
||||
$this->xml_data->formatOutput=true;
|
||||
return $this->xml_data->saveXML();
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -1761,7 +1761,9 @@ class prestudent extends person
|
||||
|
||||
if($stg_obj->typ=='m')
|
||||
{
|
||||
$qry = "SELECT DISTINCT prestudent_id, vorname, nachname, gebdatum, rt_gesamtpunkte, tbl_prestudent.studiengang_kz, bis.tbl_zgvgruppe.bezeichnung, get_rolle_prestudent(prestudent_id, null) as laststatus
|
||||
$qry = "SELECT DISTINCT prestudent_id, vorname, nachname, gebdatum, rt_gesamtpunkte, tbl_prestudent.studiengang_kz, bis.tbl_zgvgruppe.bezeichnung, get_rolle_prestudent(prestudent_id, null) as laststatus,
|
||||
(Select anmerkung from public.tbl_prestudentstatus where prestudent_id=tbl_prestudent.prestudent_id AND studiensemester_kurzbz=". $this->db_add_param($studiensemester_kurzbz)."
|
||||
AND status_kurzbz='Bewerber') as anmerkung
|
||||
FROM
|
||||
public.tbl_prestudent
|
||||
JOIN public.tbl_person USING(person_id)
|
||||
@@ -1787,7 +1789,9 @@ class prestudent extends person
|
||||
}
|
||||
else
|
||||
{
|
||||
$qry = "SELECT DISTINCT prestudent_id, vorname, nachname, gebdatum, rt_gesamtpunkte, tbl_prestudent.studiengang_kz, bis.tbl_zgvgruppe.bezeichnung, get_rolle_prestudent(prestudent_id, null) as laststatus
|
||||
$qry = "SELECT DISTINCT prestudent_id, vorname, nachname, gebdatum, rt_gesamtpunkte, tbl_prestudent.studiengang_kz, bis.tbl_zgvgruppe.bezeichnung, get_rolle_prestudent(prestudent_id, null) as laststatus,
|
||||
(Select anmerkung from public.tbl_prestudentstatus where prestudent_id=tbl_prestudent.prestudent_id AND studiensemester_kurzbz=". $this->db_add_param($studiensemester_kurzbz)."
|
||||
AND status_kurzbz='Bewerber') as anmerkung
|
||||
FROM
|
||||
public.tbl_prestudent
|
||||
JOIN public.tbl_person USING(person_id)
|
||||
|
||||
@@ -46,7 +46,7 @@ $this->phrasen['pruefung/anmeldenMoeglichBis'] = 'Possibilità di iscrizione ent
|
||||
$this->phrasen['pruefung/stornoNichtMehrMoeglich'] = 'Non è più possibile annullare l’iscrizione.';
|
||||
$this->phrasen['pruefung/zurLvAnmeldung'] = 'iscriversi al corso';
|
||||
$this->phrasen['pruefung/zuerstPruefungAuswaehlen'] = 'Scegliere prima l’esame.';
|
||||
$this->phrasen['pruefung/bemerkungVonLektorHinzugefuegt'] = 'inserito da docente';
|
||||
$this->phrasen['pruefung/bemerkungVonLektorHinzugefuegt'] = 'iscrizione da segreteria';
|
||||
$this->phrasen['pruefung/bestaetigen'] = 'Confermare';
|
||||
$this->phrasen['pruefung/anmerkungDesStudenten'] = 'Osservazioni dello studente:</br>';
|
||||
$this->phrasen['pruefung/bestaetigt'] = 'confermato';
|
||||
@@ -102,7 +102,7 @@ $this->phrasen['pruefung/keineLvAngegeben'] = 'Nessun corso definito.';
|
||||
$this->phrasen['pruefung/kollisionMitAnderemTermin'] = 'Date sovrapposte.';
|
||||
$this->phrasen['pruefung/terminNichtInDerVergangenheit'] = 'La data dell’appello non è nel passato.';
|
||||
$this->phrasen['pruefung/keineLehreinheitenVorhanden'] = 'Nessun corso disponibile.';
|
||||
$this->phrasen['pruefung/keineAnmeldungenVorhanden'] = 'Nessuna registrazione disponibile.';
|
||||
$this->phrasen['pruefung/keineAnmeldungenVorhanden'] = 'Nessuna studente iscritto.';
|
||||
|
||||
// anmeldungen Verwalten
|
||||
$this->phrasen['pruefung/anmeldungenVerwaltenTitle'] = 'Gestione delle prenotazioni degli appelli';
|
||||
|
||||
@@ -300,6 +300,8 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
|
||||
$stg = new studiengang();
|
||||
$stg->load($lvstg);
|
||||
|
||||
$xml .= " <stg_studiengang_bezeichnung>".$stg_oe_obj->bezeichnung."</stg_studiengang_bezeichnung>";
|
||||
$xml .= " <lv_studiengang_bezeichnung>".$stg->bezeichnung."</lv_studiengang_bezeichnung>";
|
||||
$xml .= " <lv_studiengang_typ>".$stg->typ."</lv_studiengang_typ>";
|
||||
$xml .= " <lv_studiengang_kennzahl>".sprintf('%04s',$lvstg)."</lv_studiengang_kennzahl>";
|
||||
@@ -315,7 +317,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
$xml .= " <lehrform_kurzbz>".$lehrform_kurzbz."</lehrform_kurzbz>";
|
||||
$xml .= " <lehrform_bezeichnung>".$lehrform_bezeichnung."</lehrform_bezeichnung>";
|
||||
$xml .= " <sws>".($sws==0?'':number_format(sprintf('%.1F',$sws),1))."</sws>";
|
||||
$xml .= " <ects>".number_format($ects,1)."</ects>";
|
||||
|
||||
$xml .= " <lvleiter>".$leiter_titel." ".$leiter_vorname." ".$leiter_nachname.($leiter_titelpost!=''?', '.$leiter_titelpost:'')."</lvleiter>";
|
||||
$xml .= " <lehrinhalte><![CDATA[".clearHtmlTags($lehrinhalte)."]]></lehrinhalte>";
|
||||
$xml .= " <kompatible_lvs>";
|
||||
@@ -327,6 +329,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
}
|
||||
|
||||
$xml .= " </kompatible_lvs>";
|
||||
|
||||
|
||||
$anrechnung = new anrechnung();
|
||||
$anrechnung->getAnrechnungPrestudent($student->prestudent_id, null, $lehrveranstaltung_id);
|
||||
@@ -339,6 +342,17 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
$xml .= $anrechnung->result[0]->lehrveranstaltung_bez;
|
||||
}
|
||||
$xml .= "</studienverpflichtung>";
|
||||
|
||||
if($lehrveranstaltung_id_kompatibel != "")
|
||||
{
|
||||
$lv = new lehrveranstaltung($lehrveranstaltung_id_kompatibel);
|
||||
if(($lv->ects !== $ects) && ($lv->ects != "") && ($lv->ects != null))
|
||||
{
|
||||
$ects = $lv->ects;
|
||||
}
|
||||
}
|
||||
|
||||
$xml .= " <ects>".number_format($ects,1)."</ects>";
|
||||
|
||||
$lehrveranstaltung->loadLehrveranstaltungStudienplan($studienplan_id);
|
||||
|
||||
|
||||
+17
-2
@@ -33,6 +33,7 @@ require_once('../include/datum.class.php');
|
||||
require_once('../include/note.class.php');
|
||||
require_once('../include/studiengang.class.php');
|
||||
require_once('../include/mitarbeiter.class.php');
|
||||
require_once('../include/anrechnung.class.php');
|
||||
|
||||
$datum = new datum();
|
||||
$db = new basis_db();
|
||||
@@ -241,6 +242,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
$obj->getZeugnisnoten($lehrveranstaltung_id=null, $uid_arr[$i], $studiensemester_kurzbz);
|
||||
|
||||
$ects_gesamt = 0;
|
||||
$prestudent_id = $row->prestudent_id;
|
||||
foreach ($obj->result as $row)
|
||||
{
|
||||
if($row->zeugnis)
|
||||
@@ -368,7 +370,20 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
$xml .= " <note>".$note2."</note>";
|
||||
$xml .= " <sws>".($row->semesterstunden==0?'':number_format(sprintf('%.1F',$row->semesterstunden/$wochen),1))."</sws>";
|
||||
$ectspunkte='';
|
||||
|
||||
|
||||
|
||||
$anrechnung = new anrechnung();
|
||||
$anrechnung->getAnrechnungPrestudent($prestudent_id, null, $row->lehrveranstaltung_id);
|
||||
|
||||
if($anrechnung->result != null)
|
||||
{
|
||||
$lv = new lehrveranstaltung($anrechnung->result[0]->lehrveranstaltung_id);
|
||||
if(($lv->ects !== $row->ects) && ($lv->ects != "") && ($lv->ects != null))
|
||||
{
|
||||
$row->ects = $lv->ects;
|
||||
}
|
||||
}
|
||||
|
||||
if($row->ects==0 || $row->ects=='')
|
||||
$ectspunkte='';
|
||||
else
|
||||
@@ -379,7 +394,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
else
|
||||
$ectspunkte=number_format($row->ects,2);
|
||||
}
|
||||
$ects_gesamt+=$ectspunkte;
|
||||
$ects_gesamt+=$ectspunkte;
|
||||
|
||||
$xml .= " <ects>".$ectspunkte."</ects>";
|
||||
$xml .= " <lv_lehrform_kurzbz>".$row->lv_lehrform_kurzbz."</lv_lehrform_kurzbz>";
|
||||
|
||||
@@ -1702,6 +1702,42 @@ $error_msg='';
|
||||
$error_msg.=$db->db_last_error().' '.$sql_querys;
|
||||
}
|
||||
|
||||
$sql_query.=" AND uid NOT IN (SELECT uid FROM public.tbl_benutzergruppe WHERE gruppe_kurzbz='$mlist_name')";
|
||||
if(!($result_oe = $db->db_query($sql_query)))
|
||||
$error_msg.=$db->db_last_error().' '.$sql_query;
|
||||
// Personen holen die nicht im Verteiler sind
|
||||
while($row_oe = $db->db_fetch_object($result_oe))
|
||||
{
|
||||
$sql_query="INSERT INTO public.tbl_benutzergruppe(uid, gruppe_kurzbz, insertamum, insertvon) VALUES ('$row_oe->uid','".$mlist_name."', now(), 'mlists_generate')";
|
||||
if(!$db->db_query($sql_query))
|
||||
{
|
||||
$error_msg.=$db->db_last_error().$sql_query;
|
||||
}
|
||||
}
|
||||
|
||||
// **************************************************************
|
||||
// Alle MA mit Funktion Leitung oder stvLeitung oder gfLtg
|
||||
$mlist_name='TW_LEITUNG';
|
||||
|
||||
$grp = new gruppe();
|
||||
setGeneriert($mlist_name);
|
||||
|
||||
// Personen holen die nicht mehr in den Verteiler gehoeren
|
||||
echo '<br>'.$mlist_name.' wird abgeglichen!';
|
||||
flush();
|
||||
|
||||
$sql_query = "SELECT DISTINCT uid FROM tbl_person JOIN tbl_benutzer
|
||||
USING (person_id) JOIN tbl_benutzerfunktion USING (uid)
|
||||
WHERE funktion_kurzbz in('Leitung','stvLtg','gLtg')
|
||||
AND (tbl_benutzerfunktion.datum_von<=now() OR tbl_benutzerfunktion.datum_von is null)
|
||||
AND (tbl_benutzerfunktion.datum_bis>=now() OR tbl_benutzerfunktion.datum_bis is null)";
|
||||
|
||||
$sql_querys="DELETE FROM public.tbl_benutzergruppe WHERE gruppe_kurzbz='$mlist_name' AND uid NOT IN ($sql_query)";
|
||||
if(!$db->db_query($sql_querys))
|
||||
{
|
||||
$error_msg.=$db->db_last_error().' '.$sql_querys;
|
||||
}
|
||||
|
||||
$sql_query.=" AND uid NOT IN (SELECT uid FROM public.tbl_benutzergruppe WHERE gruppe_kurzbz='$mlist_name')";
|
||||
if(!($result_oe = $db->db_query($sql_query)))
|
||||
$error_msg.=$db->db_last_error().' '.$sql_query;
|
||||
|
||||
@@ -74,6 +74,7 @@
|
||||
aqr.studiengaenge = [];
|
||||
aqr.studiensemester = [];
|
||||
aqr.studienplaetze = [];
|
||||
aqr.zgvElems = [];
|
||||
aqr.actualSequence = 1;
|
||||
SERVICE_TARGET = "aliquote_reduktion.json.php";
|
||||
|
||||
@@ -112,6 +113,12 @@
|
||||
if(!confirm("Es wurden zu viel Studenten gewählt!"))
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
if(!confirm("Sind Sie sicher, dass Sie die ausgewählten Personen aufnehmen wollen?"))
|
||||
return;
|
||||
}
|
||||
|
||||
var prestudent_ids = [];
|
||||
|
||||
aqr.studenten.forEach(function(i)
|
||||
@@ -190,7 +197,7 @@
|
||||
aqr.studenten=res;
|
||||
aqr.studenten.forEach(function(i)
|
||||
{
|
||||
if(i.laststatus=='Wartender'||i.laststatus=='Bewerber')
|
||||
if((i.laststatus=='Wartender'||i.laststatus=='Bewerber') && i.rt_gesamtpunkte !== null && i.rt_gesamtpunkte > 0)
|
||||
i.applicant = true;
|
||||
else if(i.laststatus=='Student'||i.laststatus=='Aufgenommener')
|
||||
i.selected=true;
|
||||
@@ -212,12 +219,12 @@
|
||||
return ret;
|
||||
}
|
||||
|
||||
aqr.getAcceptedCount = function()
|
||||
aqr.getAcceptedCount = function(zgvGruppe)
|
||||
{
|
||||
var ret = 0;
|
||||
aqr.studenten.forEach(function(i)
|
||||
{
|
||||
if(i.laststatus=='Student'||i.laststatus=='Aufgenommener')
|
||||
if((i.laststatus=='Student'||i.laststatus=='Aufgenommener') && (zgvGruppe === undefined || zgvGruppe === i.bezeichnung))
|
||||
ret++;
|
||||
});
|
||||
return ret;
|
||||
@@ -225,24 +232,60 @@
|
||||
|
||||
aqr.doPreselection = function()
|
||||
{
|
||||
if(parseInt(aqr.selectedStudienplatz.apz) >= 0)
|
||||
aqr.zgvElems = [];
|
||||
if(parseInt(aqr.selectedStudienplatz.apz) >= 0) // we only preselect, if we have an APZ
|
||||
{
|
||||
aqr.studenten.sort(sortStudentenRTP);
|
||||
|
||||
var zgvs = aqr.getZGVArray();
|
||||
var neededStudentsCount = aqr.selectedStudienplatz.apz - aqr.getAcceptedCount();
|
||||
var perZGV = parseInt(neededStudentsCount / zgvs.length);
|
||||
var perZGV = aqr.studenten.length;
|
||||
var zgvElems = [];
|
||||
var allApplicants = [];
|
||||
|
||||
aqr.studenten.forEach(function(j)
|
||||
{
|
||||
if(j.applicant)
|
||||
allApplicants.push(j);
|
||||
});
|
||||
|
||||
var applicantCount = aqr.selectedStudienplatz.apz;
|
||||
if(applicantCount > allApplicants.length)
|
||||
applicantCount = allApplicants.length;
|
||||
|
||||
|
||||
zgvs.forEach(function(i)
|
||||
{
|
||||
zgvElems.push({name:i,needed:perZGV});
|
||||
var applicantsFromZGV = [];
|
||||
aqr.studenten.forEach(function(j)
|
||||
{
|
||||
if(j.applicant && j.bezeichnung === i)
|
||||
applicantsFromZGV.push(j);
|
||||
});
|
||||
|
||||
// calculate the aliquote reduction for every ZGV
|
||||
var percent = applicantsFromZGV.length / allApplicants.length * 100;
|
||||
var neededFromZGV = (applicantCount / 100 * percent) - aqr.getAcceptedCount(i);
|
||||
|
||||
if(neededFromZGV < 0)
|
||||
neededFromZGV = 0;
|
||||
|
||||
zgvElems.push({name:i, needed:neededFromZGV, percent:percent, accepted: aqr.getAcceptedCount(i), neededSum: (applicantCount / 100 * percent)});
|
||||
});
|
||||
var residual = perZGV * zgvs.length;
|
||||
aqr.zgvElems = JSON.parse(JSON.stringify(zgvElems));
|
||||
|
||||
// calculate the already distributed students
|
||||
var residual = 0;
|
||||
zgvElems.forEach(function(i)
|
||||
{
|
||||
residual += i.needed;
|
||||
});
|
||||
|
||||
// calculate the difference from needed to already distributed
|
||||
var resDiff = neededStudentsCount - residual;
|
||||
|
||||
// distribute the remaining places on the present ZGVs
|
||||
while(resDiff > 0)
|
||||
while(resDiff > 0 && zgvElems.length > 0/*if there are no zgvs(to prevent a deadlock)*/)
|
||||
{
|
||||
zgvElems.forEach(function(i)
|
||||
{
|
||||
@@ -276,7 +319,7 @@
|
||||
{
|
||||
var beginNeeded = needed;
|
||||
|
||||
//distribute the remainig applicants to the present ZGVs
|
||||
//distribute the applicants to the present ZGVs
|
||||
for(var i=0; i < zgvElems.length; i++)
|
||||
{
|
||||
for(var j in aqr.studenten)
|
||||
@@ -284,9 +327,11 @@
|
||||
if(
|
||||
aqr.studenten[j].laststatus!='Abgewiesener'
|
||||
&& aqr.studenten[j].laststatus!='Abbrecher'
|
||||
&& zgvElems[i].needed > 0
|
||||
&& parseInt(zgvElems[i].needed) > 0
|
||||
&& aqr.studenten[j].bezeichnung == zgvElems[i].name
|
||||
&& !aqr.studenten[j].seqPlace)
|
||||
&& !aqr.studenten[j].seqPlace
|
||||
&& !aqr.studenten[j].selected
|
||||
&& aqr.studenten[j].applicant)
|
||||
{
|
||||
aqr.setSequence(aqr.studenten[j]);
|
||||
zgvElems[i].needed --;
|
||||
@@ -303,7 +348,7 @@
|
||||
//distribute the rest of the applicants, WITH a ZGV group
|
||||
for(var j in aqr.studenten)
|
||||
{
|
||||
if(!aqr.studenten[j].selected && aqr.studenten[j].bezeichnung)
|
||||
if(!aqr.studenten[j].selected && aqr.studenten[j].bezeichnung && aqr.studenten[j].applicant)
|
||||
{
|
||||
aqr.setSequence(aqr.studenten[j]);
|
||||
if(needed > 0 && (aqr.studenten[j].laststatus=='Wartender'||aqr.studenten[j].laststatus=='Bewerber'))
|
||||
@@ -316,7 +361,7 @@
|
||||
//distribute the rest of the applicants, WITHOUT a ZGV group
|
||||
for(var j in aqr.studenten)
|
||||
{
|
||||
if(!aqr.studenten[j].selected && !aqr.studenten[j].bezeichnung)
|
||||
if(!aqr.studenten[j].selected && !aqr.studenten[j].bezeichnung && aqr.studenten[j].applicant)
|
||||
{
|
||||
aqr.setSequence(aqr.studenten[j]);
|
||||
if(needed > 0 && (aqr.studenten[j].laststatus=='Wartender'||aqr.studenten[j].laststatus=='Bewerber'))
|
||||
@@ -403,6 +448,7 @@
|
||||
<th ts-criteria="seqPlace|parseInt" ts-default="ascending">Reihung</th>
|
||||
<th ts-criteria="rt_gesamtpunkte|parseFloat" ts-default="ascending">RT Gesamt</th>
|
||||
<th ts-criteria="interviewbogen">Interviewbogen</th>
|
||||
<th ts-criteria="anmerkung">Anmerkung/Prio</th>
|
||||
<th ts-criteria="laststatus">Status</th>
|
||||
<th ng-if="aqr.selectedStudienplatz.apz">{{aqr.choosenStuds}}/{{aqr.selectedStudienplatz.apz}}</th>
|
||||
<th ng-if="!aqr.selectedStudienplatz.apz">{{aqr.choosenStuds}}/Keine APZ</th>
|
||||
@@ -418,6 +464,7 @@
|
||||
<td>{{stud.seqPlace}}</td>
|
||||
<td>{{stud.rt_gesamtpunkte}}</td>
|
||||
<td>{{stud.interviewbogen?'vorhanden':'nicht vorhanden'}}</td>
|
||||
<td>{{stud.anmerkung}}</td>
|
||||
<td>{{stud.laststatus}}</td>
|
||||
<td>
|
||||
<input ng-if="stud.applicant" type="checkbox" ng-model="stud.selected"/>
|
||||
@@ -429,8 +476,36 @@
|
||||
|
||||
<input style="float:right;" type="button" value="Annehmen" ng-click="aqr.submit()"/>
|
||||
<input style="float:right;" type="button" value="Download" ng-click="aqr.download()"/>
|
||||
<h3>ZGV Informationen</h3>
|
||||
<table ts-wrapper>
|
||||
<thead>
|
||||
<tr>
|
||||
<th ts-criteria="name" ts-default="ascending">Name</th>
|
||||
<th ts-criteria="percent">Prozent</th>
|
||||
<th ts-criteria="neededSum">Insgesamt benötigt</th>
|
||||
<th ts-criteria="accepted">Bereits aufgenommen</th>
|
||||
<th ts-criteria="needed">Noch benötigte Personen</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr ng-repeat="zgv in aqr.zgvElems" ts-repeat ts-hide-no-data>
|
||||
<td>{{zgv.name}}</td>
|
||||
<td>{{zgv.percent | number: 2}}%</td>
|
||||
<td>{{zgv.neededSum | parseInt}}</td>
|
||||
<td>{{zgv.accepted}}</td>
|
||||
<td>{{zgv.needed | parseInt}}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Gesamt</th>
|
||||
<th></th>
|
||||
<th>{{aqr.selectedStudienplatz.apz}}</th>
|
||||
<th>{{aqr.getAcceptedCount()}}</th>
|
||||
<th>{{aqr.selectedStudienplatz.apz - aqr.getAcceptedCount()}}</th>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h3>Bereits aufgenommene</h3>
|
||||
<h3>Restliche Studenten</h3>
|
||||
<table ts-wrapper>
|
||||
<thead>
|
||||
<tr>
|
||||
@@ -441,6 +516,7 @@
|
||||
<th ts-criteria="seqPlace|parseInt" ts-default="ascending">Reihung</th>
|
||||
<th ts-criteria="rt_gesamtpunkte|parseFloat">RT Gesamt</th>
|
||||
<th ts-criteria="interviewbogen">Interviewbogen</th>
|
||||
<th ts-criteria="anmerkung">Anmerkung/Prio</th>
|
||||
<th ts-criteria="laststatus">Status</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
@@ -455,6 +531,7 @@
|
||||
<td>{{stud.seqPlace}}</td>
|
||||
<td>{{stud.rt_gesamtpunkte}}</td>
|
||||
<td>{{stud.interviewbogen?'vorhanden':'nicht vorhanden'}}</td>
|
||||
<td>{{stud.anmerkung}}</td>
|
||||
<td>{{stud.laststatus}}</td>
|
||||
<td>
|
||||
<input ng-if="stud.applicant" type="checkbox" ng-model="stud.selected"/>
|
||||
|
||||
Reference in New Issue
Block a user