mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-18 23:42:17 +00:00
Merge branch 'master' of https://github.com/FH-Complete/FHC-Core
This commit is contained in:
@@ -539,11 +539,20 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null)
|
||||
|
||||
$konto = new konto();
|
||||
$creditPoints = $konto->getCreditPointsOfStudiensemester($uid, $pruefungsfenster->studiensemester_kurzbz);
|
||||
if(($creditPoints != false) && ($lehrveranstaltung->ects > ($creditPoints - $ects_verwendet)))
|
||||
if(($creditPoints != false))
|
||||
{
|
||||
$cpVerbleibend = $creditPoints - $ects_verwendet;
|
||||
if(($lehrveranstaltung->ects > $cpVerbleibend))
|
||||
{
|
||||
$data['error'] = 'true';
|
||||
$data['errormsg'] = $p->t('pruefung/zuWenigeCreditPoints');
|
||||
return $data;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error'] = 'true';
|
||||
$data['errormsg'] = $p->t('pruefung/zuWenigeCreditPoints');
|
||||
return $data;
|
||||
$data['errormsg'] = 'Fehler beim Laden der Credit Points.';
|
||||
}
|
||||
|
||||
if(isset($data['error']) && $data['error'] = 'true')
|
||||
|
||||
@@ -291,9 +291,9 @@ if($zeugnisnote->getZeugnisnoten('',$uid,''))
|
||||
foreach($zeugnisnote->result as $row_note)
|
||||
{
|
||||
if($row_note->note!='')
|
||||
{
|
||||
{
|
||||
$noten_arr[$row_note->lehrveranstaltung_id][$row_note->studiensemester_kurzbz]=$row_note->note;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -447,14 +447,22 @@ function drawTree($tree, $depth)
|
||||
if($note_pruef_arr[$note]->positiv)
|
||||
$positiv=true;
|
||||
}
|
||||
|
||||
|
||||
if(!$positiv)
|
||||
{
|
||||
echo '<span class="error">'.$p->t('studienplan/negativ').'</span>';
|
||||
//echo '<span class="error">'.$p->t('studienplan/negativ').'</span>';
|
||||
if(count($kompatibleLVs) > 0)
|
||||
{
|
||||
checkKompatibleLvs($kompatibleLVs, $student, $row_tree, $noten_arr, $note_pruef_arr, $p, $uid, true);
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<span class="error">'.$p->t('studienplan/negativ').'</span>';
|
||||
}
|
||||
}
|
||||
elseif($lvregelExists)
|
||||
{
|
||||
if($abgeschlossen && $positiv)
|
||||
if($abgeschlossen || $positiv)
|
||||
{
|
||||
echo '<span class="ok">'.$p->t('studienplan/abgeschlossen').'</span>';
|
||||
}
|
||||
@@ -475,66 +483,7 @@ function drawTree($tree, $depth)
|
||||
//check if compatible course has grade
|
||||
elseif(count($kompatibleLVs) > 0)
|
||||
{
|
||||
$positiv = false;
|
||||
$found = false;
|
||||
$i = 0;
|
||||
while(!$found && $i < count($kompatibleLVs))
|
||||
{
|
||||
foreach($kompatibleLVs as $komp)
|
||||
{
|
||||
|
||||
$anrechnung = new anrechnung();
|
||||
$anrechnung->getAnrechnungPrestudent($student->prestudent_id, $row_tree->lehrveranstaltung_id, $komp);
|
||||
|
||||
if(count($anrechnung->result) == 1)
|
||||
{
|
||||
$lv = $anrechnung->result[0]->lehrveranstaltung_id_kompatibel;
|
||||
if(isset($noten_arr[$lv]))
|
||||
{
|
||||
$positiv=false;
|
||||
foreach($noten_arr[$lv] as $note)
|
||||
{
|
||||
if($note_pruef_arr[$note]->positiv)
|
||||
$positiv=true;
|
||||
}
|
||||
|
||||
$found = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* wenn zu mehreren kompatiblen lvs eine Anrechnung existiert
|
||||
* darf found nicht auf false gesetzt werden wenn es zuvor bereits auf true gesetzt wurde
|
||||
*/
|
||||
if(!$found)
|
||||
$found = false;
|
||||
}
|
||||
}
|
||||
$i++;
|
||||
}
|
||||
}
|
||||
|
||||
if($found)
|
||||
{
|
||||
if($positiv)
|
||||
{
|
||||
echo '<span class="ok">'.$p->t('studienplan/abgeschlossen').'</span>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<span class="error">'.$p->t('studienplan/negativ').'</span>';
|
||||
}
|
||||
}
|
||||
elseif(!$found)
|
||||
{
|
||||
if(!$row_tree->stpllv_pflicht)
|
||||
{
|
||||
echo '<span>'.$p->t('studienplan/optional').'</span>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<span>'.$p->t('studienplan/offen').'</span>';
|
||||
}
|
||||
}
|
||||
checkKompatibleLvs($kompatibleLVs, $student, $row_tree, $noten_arr, $note_pruef_arr, $p, $uid);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -708,6 +657,79 @@ function drawTree($tree, $depth)
|
||||
drawTree($row_tree->childs, $depth+1);
|
||||
}
|
||||
}
|
||||
|
||||
function checkKompatibleLvs($kompatibleLVs, $student, $row_tree, $noten_arr, $note_pruef_arr, $p, $uid, $negativeNote= null)
|
||||
{
|
||||
$positiv = false;
|
||||
$found = false;
|
||||
$i = 0;
|
||||
while(!$found && $i < count($kompatibleLVs))
|
||||
{
|
||||
foreach($kompatibleLVs as $komp)
|
||||
{
|
||||
|
||||
$anrechnung = new anrechnung();
|
||||
$anrechnung->getAnrechnungPrestudent($student->prestudent_id, $row_tree->lehrveranstaltung_id, $komp);
|
||||
|
||||
if(count($anrechnung->result) == 1)
|
||||
{
|
||||
$lv = $anrechnung->result[0]->lehrveranstaltung_id_kompatibel;
|
||||
if(isset($noten_arr[$lv]))
|
||||
{
|
||||
$positiv=false;
|
||||
foreach($noten_arr[$lv] as $note)
|
||||
{
|
||||
if($note_pruef_arr[$note]->positiv)
|
||||
$positiv=true;
|
||||
}
|
||||
|
||||
$found = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* wenn zu mehreren kompatiblen lvs eine Anrechnung existiert
|
||||
* darf found nicht auf false gesetzt werden wenn es zuvor bereits auf true gesetzt wurde
|
||||
*/
|
||||
if(!$found)
|
||||
$found = false;
|
||||
}
|
||||
}
|
||||
$i++;
|
||||
}
|
||||
}
|
||||
|
||||
if($found)
|
||||
{
|
||||
if($positiv)
|
||||
{
|
||||
echo '<span class="ok">'.$p->t('studienplan/abgeschlossen').'</span>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<span class="error">'.$p->t('studienplan/negativ').'</span>';
|
||||
}
|
||||
}
|
||||
elseif(!$found)
|
||||
{
|
||||
if(!$row_tree->stpllv_pflicht)
|
||||
{
|
||||
echo '<span>'.$p->t('studienplan/optional').'</span>';
|
||||
}
|
||||
else
|
||||
{
|
||||
if(($negativeNote!= null) && ($negativeNote == true))
|
||||
{
|
||||
echo '<span class="error">'.$p->t('studienplan/negativ').'</span>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<span>'.$p->t('studienplan/offen').'</span>';
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
echo '</table>';
|
||||
echo '<br><br>'.$p->t('studienplan/legende').':<br>
|
||||
<table>
|
||||
|
||||
+17
-14
@@ -1775,13 +1775,13 @@ function PrintStudienblatt(event)
|
||||
var studienplan_id = "";
|
||||
for (var v=0; v < items; v++)
|
||||
{
|
||||
var stsem = getTreeCellText(tree, 'student-prestudent-tree-rolle-studiensemester_kurzbz', v);
|
||||
if(stsem == ss)
|
||||
{
|
||||
studienplan_id = getTreeCellText(tree, 'student-prestudent-tree-rolle-studienplan_id', v);
|
||||
if(studienplan_id!='')
|
||||
break;
|
||||
}
|
||||
var stsem = getTreeCellText(tree, 'student-prestudent-tree-rolle-studiensemester_kurzbz', v);
|
||||
if(stsem == ss)
|
||||
{
|
||||
studienplan_id = getTreeCellText(tree, 'student-prestudent-tree-rolle-studienplan_id', v);
|
||||
if(studienplan_id!='')
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
catch(e)
|
||||
@@ -1851,7 +1851,7 @@ function PrintStudienblatt(event)
|
||||
{
|
||||
if(error>0)
|
||||
alert(error+' der ausgewaehlten Personen haben keinen Account');
|
||||
action = '<?php echo APP_ROOT; ?>content/pdfExport.php?xsl=Studienblatt&xml=studienblatt.xml.php&output='+output+'&&uid='+data+"&ss="+ss;
|
||||
action = '<?php echo APP_ROOT; ?>content/pdfExport.php?xsl=Studienblatt&xml=studienblatt.xml.php&output='+output+'&uid='+data+"&ss="+ss;
|
||||
window.open(action,'Studienblatt','height=520,width=500,left=350,top=350,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
|
||||
}
|
||||
else
|
||||
@@ -1866,6 +1866,7 @@ function PrintStudienblatt(event)
|
||||
function PrintStudienblattEnglisch(event)
|
||||
{
|
||||
var tree = document.getElementById('student-prestudent-tree-rolle');
|
||||
var ss = document.getElementById('statusbarpanel-semester').label;
|
||||
var items = tree.view.rowCount;
|
||||
|
||||
try
|
||||
@@ -1873,12 +1874,14 @@ function PrintStudienblattEnglisch(event)
|
||||
var studienplan_id = "";
|
||||
for (var v=0; v < items; v++)
|
||||
{
|
||||
var stsem = getTreeCellText(tree, 'student-prestudent-tree-rolle-studiensemester_kurzbz', v);
|
||||
if(stsem == ss)
|
||||
{
|
||||
studienplan_id = getTreeCellText(tree, 'student-prestudent-tree-rolle-studienplan_id', v);
|
||||
var stsem = getTreeCellText(tree, 'student-prestudent-tree-rolle-studiensemester_kurzbz', v);
|
||||
if(stsem == ss)
|
||||
{
|
||||
studienplan_id = getTreeCellText(tree, 'student-prestudent-tree-rolle-studienplan_id', v);
|
||||
if(studienplan_id!='')
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
@@ -1947,7 +1950,7 @@ function PrintStudienblattEnglisch(event)
|
||||
{
|
||||
if(error>0)
|
||||
alert(error+' der ausgewaehlten Personen haben keinen Account');
|
||||
action = '<?php echo APP_ROOT; ?>content/pdfExport.php?xsl=StudienblattEng&xml=studienblatt.xml.php&output='+output+'&&uid='+data;
|
||||
action = '<?php echo APP_ROOT; ?>content/pdfExport.php?xsl=StudienblattEng&xml=studienblatt.xml.php&output='+output+'&uid='+data+'&ss='+ss;
|
||||
window.open(action,'StudienblattEng','height=520,width=500,left=350,top=350,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
|
||||
}
|
||||
else
|
||||
|
||||
@@ -174,16 +174,23 @@ class pruefungsanmeldung extends basis_db {
|
||||
/**
|
||||
* Lädt alle Prüfungsanmeldungen eines Studenten
|
||||
* @param type $uid UID eines Studenten
|
||||
* @param type $studiensemester_kurbz Filter nach Studiensemester (zB 'WS2013')
|
||||
* @param type $studiensemester_kurzbz Filter nach Studiensemester (zB 'WS2013')
|
||||
* @param type $status_kurzbz Filter nach Status (zB 'angemeldet')
|
||||
* @return boolean|array false, bei Fehler; Array mit Anmeldungen
|
||||
*/
|
||||
public function getAnmeldungenByStudent($uid, $studiensemester_kurbz=null, $status_kurzbz=null)
|
||||
public function getAnmeldungenByStudent($uid, $studiensemester_kurzbz=null, $status_kurzbz=null)
|
||||
{
|
||||
$qry = 'SELECT * FROM campus.tbl_pruefungsanmeldung pa '
|
||||
. 'JOIN campus.tbl_pruefungstermin pt ON pa.pruefungstermin_id=pt.pruefungstermin_id '
|
||||
. 'JOIN campus.tbl_pruefung p ON p.pruefung_id=pt.pruefung_id '
|
||||
. 'WHERE uid='.$this->db_add_param($uid).';';
|
||||
. 'WHERE uid='.$this->db_add_param($uid);
|
||||
|
||||
if($studiensemester_kurzbz != null)
|
||||
{
|
||||
$qry .= ' AND studiensemester_kurzbz='.$this->db_add_param($studiensemester_kurzbz);
|
||||
}
|
||||
|
||||
$qry .= ';';
|
||||
|
||||
if(!$this->db_query($qry))
|
||||
{
|
||||
@@ -204,13 +211,13 @@ class pruefungsanmeldung extends basis_db {
|
||||
$anmeldung->pruefung_id = $row->pruefung_id;
|
||||
$anmeldung->von = $row->von;
|
||||
$anmeldung->bis = $row->bis;
|
||||
$anmeldung->reihung = $row->reihung;
|
||||
$anmeldung->wuensche = $row->wuensche;
|
||||
$anmeldung->kommentar = $row->kommentar;
|
||||
$anmeldung->statusupdateamum = $row->statusupdateamum;
|
||||
$anmeldung->statusupdatevon = $row->statusupdatevon;
|
||||
$anmeldung->anrechnung_id = $row->anrechnung_id;
|
||||
$anmeldung->pruefungstyp_kurzbz = $row->pruefungstyp_kurzbz;
|
||||
$anmeldung->reihung = $row->reihung;
|
||||
$anmeldung->wuensche = $row->wuensche;
|
||||
$anmeldung->kommentar = $row->kommentar;
|
||||
$anmeldung->statusupdateamum = $row->statusupdateamum;
|
||||
$anmeldung->statusupdatevon = $row->statusupdatevon;
|
||||
$anmeldung->anrechnung_id = $row->anrechnung_id;
|
||||
$anmeldung->pruefungstyp_kurzbz = $row->pruefungstyp_kurzbz;
|
||||
array_push($anmeldungen, $anmeldung);
|
||||
}
|
||||
return $anmeldungen;
|
||||
|
||||
@@ -94,7 +94,7 @@ foreach($uid_arr as $uid)
|
||||
$datum_aktuell = date('d.m.Y');
|
||||
$gebdatum = date('d.m.Y',strtotime($student->gebdatum));
|
||||
$prestudent = new prestudent($student->prestudent_id);
|
||||
$prestudent->getLastStatus($student->prestudent_id,$studiensemester,'Student');
|
||||
$prestudent->getLastStatus($student->prestudent_id,$studiensemester);
|
||||
$studienordnung = new studienordnung();
|
||||
$studienordnung->getStudienordnungFromStudienplan($prestudent->studienplan_id);
|
||||
$studiengang = new studiengang();
|
||||
@@ -180,7 +180,7 @@ foreach($uid_arr as $uid)
|
||||
echo "\t\t<studiensemester_beginn>".$studiensemester_beginn->bezeichnung."</studiensemester_beginn>";
|
||||
echo "\t\t<studiensemester_beginndatum>".date('d.m.Y',strtotime($studiensemester_beginn->start))."</studiensemester_beginndatum>";
|
||||
|
||||
$prestudent->getLastStatus($student->prestudent_id,$studiensemester,'Student');
|
||||
$prestudent->getLastStatus($student->prestudent_id,$studiensemester);
|
||||
$studiensemester_abschluss = new studiensemester();
|
||||
$abschluss = $studiensemester_abschluss->jump($prestudent->studiensemester_kurzbz, $studienplan->regelstudiendauer-$prestudent->ausbildungssemester);
|
||||
$studiensemester_abschluss->load($abschluss);
|
||||
@@ -306,7 +306,7 @@ foreach($uid_arr as $uid)
|
||||
}
|
||||
}
|
||||
$prestudent = new prestudent();
|
||||
$prestudent->getLastStatus($student->prestudent_id, null, 'Student');
|
||||
$prestudent->getLastStatus($student->prestudent_id, null);
|
||||
|
||||
if($prestudent->orgform_kurzbz!='')
|
||||
$orgform = $prestudent->orgform_kurzbz;
|
||||
|
||||
Reference in New Issue
Block a user