menu entry, attendance view for lectors

- removed hardcoded menu entry (will be added using cms)
- attendance view fix for lectors without lessons
This commit is contained in:
Robert Hofer
2015-02-03 15:57:10 +01:00
parent 8c0c9dc964
commit 934cd2f2a0
2 changed files with 82 additions and 85 deletions
+82 -75
View File
@@ -83,88 +83,95 @@ if($lehreinheit_id)
<body class="anwesenheit">
<form id="anwesenheitAuswahl" method="GET">
<select name="semester" id="semester">
<?php foreach($alle_semester as $kurzbz => $sem): ?>
<option value="<?php echo $kurzbz ?>" <?php echo $kurzbz === $semester ? 'selected' : '' ?>>
<?php echo $sem ?>
</option>
<?php endforeach; ?>
</select>
<select name="lehreinheit" id="lehreinheit">
<option value=""></option>
<?php foreach($lehreinheiten as $le): ?>
<option value="<?php echo $le->lehreinheit_id ?>" <?php echo $le->lehreinheit_id === $lehreinheit_id ? 'selected' : '' ?>>
<?php echo $le->lv_bezeichnung ?>
(<?php echo ($le->lv_lehrform_kurzbz ? $le->lv_lehrform_kurzbz . ', ' : '') . $le->unr ?>)
</option>
<?php endforeach ?>
</select>
</form>
<?php
if($lehreinheit_id)
{
$stunden_gesamt = $stundenplan->getStunden($lehreinheit_id);
}
<?php if(!count($alle_semester)): ?>
if(!$lehreinheit_id): ?>
Bitte LV auswählen.
<?php elseif(!$stunden_gesamt): ?>
Keine Stunden eingetragen.
<?php else:
Keine Lehreinheiten gefunden.
foreach($studenten as $student):
$fehlstunden = $anwesenheit->getAnwesenheit($student->uid, $lehreinheit_id);
$le_erledigt = $fehlstunden + $anwesenheit->getAnwesenheit($student->uid, $lehreinheit_id, true);
$anwesenheit_relativ = ($stunden_gesamt - $fehlstunden) / $stunden_gesamt * 100;
?>
<div class="lv">
<div>
<?php echo $student->nachname ?>
<?php echo $student->vorname ?>
</div>
<div>
<div class="progress-wrapper">
<div class="progress <?php echo $anwesenheit->getAmpel($anwesenheit_relativ) ?>" style="width: <?php echo (int) round($anwesenheit_relativ) ?>%;"></div>
</div>
<?php echo round($anwesenheit_relativ, 1) ?>%
LE abgeschlossen: [<?php echo $le_erledigt ?>/<?php echo $stunden_gesamt ?>]
<?php if($fehlstunden): ?>
<span class="fehlstunden-details" title="eingetragene Fehlstunden">&gt;&gt;</span>
<div style="display: none;">
<?php $abwesend_termine = $anwesenheit->getAbwesendTermine($uid, $lv->lehreinheit_id); ?>
<table>
<?php foreach($abwesend_termine as $termin): ?>
<tr>
<td><?php echo $termin->datum ?></td>
<td><?php echo $termin->einheiten ?></td>
</tr>
<?php endforeach; ?>
</table>
</div>
<?php endif; ?>
</div>
</div>
<?php else: ?>
<form id="anwesenheitAuswahl" method="GET">
<select name="semester" id="semester">
<?php foreach($alle_semester as $kurzbz => $sem): ?>
<option value="<?php echo $kurzbz ?>" <?php echo $kurzbz === $semester ? 'selected' : '' ?>>
<?php echo $sem ?>
</option>
<?php endforeach; ?>
</select>
<select name="lehreinheit" id="lehreinheit">
<option value=""></option>
<?php foreach($lehreinheiten as $le): ?>
<option value="<?php echo $le->lehreinheit_id ?>" <?php echo $le->lehreinheit_id === $lehreinheit_id ? 'selected' : '' ?>>
<?php echo $le->lv_bezeichnung ?>
(<?php echo ($le->lv_lehrform_kurzbz ? $le->lv_lehrform_kurzbz . ', ' : '') . $le->unr ?>)
</option>
<?php endforeach ?>
</select>
</form>
<?php
endforeach;
endif; ?>
if($lehreinheit_id)
{
$stunden_gesamt = $stundenplan->getStunden($lehreinheit_id);
}
<script type="text/javascript">
$('#anwesenheitAuswahl > *').on('change', function() {
if(!$lehreinheit_id): ?>
Bitte LV auswählen.
<?php elseif(!$stunden_gesamt): ?>
Keine Stunden eingetragen.
<?php else:
if(this.id === 'semester') {
$('#lehreinheit').val('');
}
foreach($studenten as $student):
$('#anwesenheitAuswahl').trigger('submit');
});
</script>
$fehlstunden = $anwesenheit->getAnwesenheit($student->uid, $lehreinheit_id);
$le_erledigt = $fehlstunden + $anwesenheit->getAnwesenheit($student->uid, $lehreinheit_id, true);
$anwesenheit_relativ = ($stunden_gesamt - $fehlstunden) / $stunden_gesamt * 100;
?>
<div class="lv">
<div>
<?php echo $student->nachname ?>
<?php echo $student->vorname ?>
</div>
<div>
<div class="progress-wrapper">
<div class="progress <?php echo $anwesenheit->getAmpel($anwesenheit_relativ) ?>" style="width: <?php echo (int) round($anwesenheit_relativ) ?>%;"></div>
</div>
<?php echo round($anwesenheit_relativ, 1) ?>%
LE abgeschlossen: [<?php echo $le_erledigt ?>/<?php echo $stunden_gesamt ?>]
<?php if($fehlstunden): ?>
<span class="fehlstunden-details" title="eingetragene Fehlstunden">&gt;&gt;</span>
<div style="display: none;">
<?php $abwesend_termine = $anwesenheit->getAbwesendTermine($uid, $lv->lehreinheit_id); ?>
<table>
<?php foreach($abwesend_termine as $termin): ?>
<tr>
<td><?php echo $termin->datum ?></td>
<td><?php echo $termin->einheiten ?></td>
</tr>
<?php endforeach; ?>
</table>
</div>
<?php endif; ?>
</div>
</div>
<?php
endforeach;
endif; ?>
<script type="text/javascript">
$('#anwesenheitAuswahl > *').on('change', function() {
if(this.id === 'semester') {
$('#lehreinheit').val('');
}
$('#anwesenheitAuswahl').trigger('submit');
});
</script>
<?php endif; ?>
</body>
</html>
-10
View File
@@ -80,11 +80,6 @@ class menu_addon_meinelv extends menu_addon
);
}
}
$this->items[] = array('title'=>$p->t("lvaliste/anwesenheit"),
'target'=>'content',
'link'=>'private/profile/anwesenheit.php',
'name'=>$p->t("lvaliste/anwesenheit"));
}
else
echo "Fehler beim Auslesen der LV";
@@ -114,11 +109,6 @@ class menu_addon_meinelv extends menu_addon
'link'=>'private/profile/lva_liste.php',
'name'=>$p->t("lvaliste/titel"));
$this->items[] = array('title'=>$p->t("lvaliste/anwesenheit/studenten"),
'target'=>'content',
'link'=>'private/profile/anwesenheit.php',
'name'=>$p->t("lvaliste/anwesenheit/studenten"));
while($row = $this->db_fetch_object($result))
{
$lv_obj = new lehrveranstaltung();