mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-22 09:22:22 +00:00
Stundenangabe bei der Erstellung von Anwesenheitslisten hinzugefuegt
Beim Erfassen der Anwesenheitslisten kann nun zusätzlich per DropDown die Lehrstunde gewählt werden GUI im CIS zur Anzeige der Anwesenheiten ueberarbeitet Als Admin können nun auch Anwesenheiten von anderen eingesehen werden
This commit is contained in:
@@ -15,13 +15,13 @@
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* Authors: Robert Hofer <robert.hofer@technikum-wien.at>
|
||||
* Authors: Robert Hofer <robert.hofer@technikum-wien.at>,
|
||||
* Andreas Oestereicher <oesi@technikum-wien.at>
|
||||
*/
|
||||
|
||||
/*
|
||||
* Zeigt die bisherige Anwesenheit eines Studenten im aktuellen Semester bei LVAs
|
||||
*/
|
||||
|
||||
require_once('../../../config/cis.config.inc.php');
|
||||
require_once('../../../config/global.config.inc.php');
|
||||
require_once('../../../include/basis_db.class.php');
|
||||
@@ -32,11 +32,22 @@ require_once('../../../include/studiensemester.class.php');
|
||||
require_once('../../../include/student.class.php');
|
||||
require_once('../../../include/prestudent.class.php');
|
||||
require_once('../../../include/stundenplan.class.php');
|
||||
require_once('../../../include/datum.class.php');
|
||||
require_once('../../../include/benutzerberechtigung.class.php');
|
||||
|
||||
$datum_obj = new datum();
|
||||
$uid = get_uid();
|
||||
//$uid = 'if14b001';
|
||||
//$uid = 'wi13b120';
|
||||
//$uid = 'ia06b172';
|
||||
$uidchange=false;
|
||||
if(isset($_GET['uid']))
|
||||
{
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
if($rechte->isBerechtigt('admin'))
|
||||
{
|
||||
$uid = $_GET['uid'];
|
||||
$uidchange=true;
|
||||
}
|
||||
}
|
||||
|
||||
$benutzer = new benutzer();
|
||||
if(!$benutzer->load($uid))
|
||||
@@ -45,7 +56,7 @@ if(!$benutzer->load($uid))
|
||||
}
|
||||
|
||||
$p = new phrasen(getSprache());
|
||||
|
||||
$db = new basis_db();
|
||||
$student = new student;
|
||||
$stundenplan = new stundenplan('stundenplan');
|
||||
$anwesenheit = new anwesenheit;
|
||||
@@ -66,71 +77,87 @@ $student->get_lv($uid, $semester);
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title><?php echo $p->t('lvaliste/anwesenheit') ?></title>
|
||||
<title><?php echo $p->t('anwesenheitsliste/anwesenheit') ?></title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link rel="stylesheet" href="../../../skin/style.css.php" type="text/css">
|
||||
<link rel="stylesheet" href="../../../skin/jquery.css" type="text/css"/>
|
||||
<script type="text/javascript" src="../../../include/js/jquery.min.1.11.1.js"></script>
|
||||
</head>
|
||||
<body class="anwesenheit">
|
||||
|
||||
<?php if($student->result): ?>
|
||||
|
||||
<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; ?>
|
||||
<?php
|
||||
echo '<h1>'.$p->t('anwesenheitsliste/anwesenheit').' - '.$db->convert_html_chars($benutzer->titelpre.' '.$benutzer->vorname.' '.$benutzer->nachname.' '.$benutzer->titelpost).'</h1>';
|
||||
|
||||
echo '<form id="anwesenheitAuswahl" method="GET">';
|
||||
if($uidchange)
|
||||
echo '<input type="hidden" name="uid" value="'.$db->convert_html_chars($uid).'" />';
|
||||
echo '
|
||||
<select name="semester" id="semester">';
|
||||
foreach($alle_semester as $kurzbz => $sem)
|
||||
{
|
||||
echo '<option value="'.$kurzbz.'" '.($kurzbz === $semester ? 'selected' : '').'>'.$sem.'</option>';
|
||||
}
|
||||
echo '
|
||||
</select>
|
||||
</form>
|
||||
</form>';
|
||||
|
||||
<?php foreach($student->result as $lv):
|
||||
if($student->result)
|
||||
{
|
||||
|
||||
foreach($student->result as $lv)
|
||||
{
|
||||
|
||||
$stunden_gesamt = $stundenplan->getStunden($lv->lehreinheit_id);
|
||||
|
||||
if(!$stunden_gesamt)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
$fehlstunden = $anwesenheit->getAnwesenheit($uid, $lv->lehreinheit_id);
|
||||
$le_erledigt = $fehlstunden + $anwesenheit->getAnwesenheit($uid, $lv->lehreinheit_id, true);
|
||||
$anwesenheit_relativ = ($stunden_gesamt - $fehlstunden) / $stunden_gesamt * 100;
|
||||
?>
|
||||
|
||||
echo '
|
||||
<div class="lv">
|
||||
<div>
|
||||
<?php echo $lv->bezeichnung ?>
|
||||
(<?php echo $lv->lehrform_kurzbz ?>)
|
||||
'.$db->convert_html_chars($lv->bezeichnung).' ('.$lv->lehrform_kurzbz.')
|
||||
</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">>></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 class="progress '.$anwesenheit->getAmpel($anwesenheit_relativ).'" style="width: '.round($anwesenheit_relativ).'%;">
|
||||
|
||||
</div>
|
||||
</div>'.round($anwesenheit_relativ, 1).'%
|
||||
'.$p->t('anwesenheitsliste/leAbgeschlossen').' ['.$le_erledigt.'/'.$stunden_gesamt.']';
|
||||
|
||||
<?php endif; ?>
|
||||
if($fehlstunden)
|
||||
{
|
||||
echo '
|
||||
<span class="fehlstunden-details" title="'.$p->t('anwesenheitsliste/fehlstunden').'">>></span>
|
||||
<div style="display: none;">
|
||||
<table><tr><td>'.$p->t('global/datum').'</td><td>'.$p->t('anwesenheitsliste/fehlstunden').'</td></tr>';
|
||||
$abwesend_termine = $anwesenheit->getAbwesendTermine($uid, $lv->lehreinheit_id);
|
||||
foreach($abwesend_termine as $termin)
|
||||
{
|
||||
echo ' <tr>
|
||||
<td>'.$datum_obj->formatDatum($termin->datum,'d.m.Y').'</td>
|
||||
<td>'.(float)$termin->einheiten.'</td>
|
||||
</tr>';
|
||||
}
|
||||
echo '
|
||||
</table>
|
||||
</div>';
|
||||
}
|
||||
|
||||
echo '
|
||||
</div>
|
||||
</div>
|
||||
<?php endforeach; ?>
|
||||
<?php else: ?>
|
||||
Es konnten keine Lehrveranstaltungen gefunden werden.
|
||||
<?php endif; ?>
|
||||
</div>';
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo $p->t('anwesenheitsliste/keineLVsGefunden');
|
||||
}
|
||||
|
||||
?>
|
||||
<script type="text/javascript">
|
||||
$('span.fehlstunden-details').on('click', function() {
|
||||
$(this).next().toggle();
|
||||
|
||||
@@ -17,11 +17,9 @@
|
||||
*
|
||||
* Authors: Robert Hofer <robert.hofer@technikum-wien.at>
|
||||
*/
|
||||
|
||||
/*
|
||||
* Zeigt die bisherige Anwesenheit eines Studenten im aktuellen Semester bei LVAs
|
||||
*/
|
||||
|
||||
require_once('../../../config/cis.config.inc.php');
|
||||
require_once('../../../config/global.config.inc.php');
|
||||
require_once('../../../include/basis_db.class.php');
|
||||
@@ -32,20 +30,34 @@ require_once('../../../include/lehreinheit.class.php');
|
||||
require_once('../../../include/lehreinheitmitarbeiter.class.php');
|
||||
require_once('../../../include/stundenplan.class.php');
|
||||
require_once('../../../include/anwesenheit.class.php');
|
||||
require_once('../../../include/datum.class.php');
|
||||
require_once('../../../include/benutzerberechtigung.class.php');
|
||||
|
||||
$uid = get_uid();
|
||||
//$uid = 'himmel';
|
||||
|
||||
$uidchange=false;
|
||||
if(isset($_GET['uid']))
|
||||
{
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
if($rechte->isBerechtigt('admin'))
|
||||
{
|
||||
$uid = $_GET['uid'];
|
||||
$uidchange=true;
|
||||
}
|
||||
}
|
||||
$benutzer = new benutzer();
|
||||
if(!$benutzer->load($uid) || !check_lektor($uid))
|
||||
{
|
||||
die('nicht berechtigt');
|
||||
die('Sie haben keine Berechtigung fuer diese Seite');
|
||||
}
|
||||
|
||||
$db = new basis_db();
|
||||
$datum_obj= new datum();
|
||||
$p = new phrasen(getSprache());
|
||||
|
||||
$lehreinheitObj = new lehreinheit;
|
||||
$lema = new lehreinheitmitarbeiter;
|
||||
$lehreinheitObj = new lehreinheit();
|
||||
$lema = new lehreinheitmitarbeiter();
|
||||
$stundenplan = new stundenplan('stundenplan');
|
||||
$anwesenheit = new anwesenheit;
|
||||
$alle_semester = $lema->getSemesterZuLektor($uid);
|
||||
@@ -74,7 +86,7 @@ if($lehreinheit_id)
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title><?php echo $p->t('lvaliste/anwesenheit/studenten') ?></title>
|
||||
<title><?php echo $p->t('anwesenheitsliste/anwesenheit') ?></title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link rel="stylesheet" href="../../../skin/style.css.php" type="text/css">
|
||||
<link rel="stylesheet" href="../../../skin/jquery.css" type="text/css"/>
|
||||
@@ -83,95 +95,122 @@ if($lehreinheit_id)
|
||||
|
||||
<body class="anwesenheit">
|
||||
|
||||
<?php if(!count($alle_semester)): ?>
|
||||
<?php
|
||||
|
||||
Keine Lehreinheiten gefunden.
|
||||
echo '<h1>'.$p->t('anwesenheitsliste/anwesenheit').' - '.$db->convert_html_chars($benutzer->titelpre.' '.$benutzer->vorname.' '.$benutzer->nachname.' '.$benutzer->titelpost).'</h1>';
|
||||
|
||||
<?php else: ?>
|
||||
if(!count($alle_semester))
|
||||
{
|
||||
echo $p->t('anwesenheitsliste/keinEintraegeGefunden');
|
||||
}
|
||||
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; ?>
|
||||
echo '<form id="anwesenheitAuswahl" method="GET">';
|
||||
|
||||
if($uidchange)
|
||||
echo '<input type="hidden" name="uid" value="'.$db->convert_html_chars($uid).'" />';
|
||||
echo '
|
||||
<select name="semester" id="semester">';
|
||||
|
||||
foreach($alle_semester as $kurzbz => $sem)
|
||||
{
|
||||
echo '<option value="'.$kurzbz.'" '.($kurzbz === $semester ? 'selected' : '').'>'.$sem.'</option>';
|
||||
}
|
||||
|
||||
echo '
|
||||
</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 ?>
|
||||
<option value=""></option>';
|
||||
|
||||
foreach($lehreinheiten as $le)
|
||||
{
|
||||
echo '<option value="'.$le->lehreinheit_id.'" '.($le->lehreinheit_id === $lehreinheit_id ? 'selected' : '').'>
|
||||
'.$le->stg_kurzbzlang.' '.$le->lv_semester.' '.$le->lv_bezeichnung.' ('.($le->lv_lehrform_kurzbz ? $le->lv_lehrform_kurzbz . ', ' : '') . $le->lehreinheit_id.')
|
||||
</option>';
|
||||
}
|
||||
echo '
|
||||
</select>
|
||||
</form>
|
||||
<?php
|
||||
</form>';
|
||||
|
||||
if($lehreinheit_id)
|
||||
{
|
||||
$stunden_gesamt = $stundenplan->getStunden($lehreinheit_id);
|
||||
}
|
||||
|
||||
if(!$lehreinheit_id): ?>
|
||||
Bitte LV auswählen.
|
||||
<?php elseif(!$stunden_gesamt): ?>
|
||||
Keine Stunden eingetragen.
|
||||
<?php else:
|
||||
|
||||
foreach($studenten as $student):
|
||||
|
||||
if(!$lehreinheit_id)
|
||||
{
|
||||
echo $p->t('anwesenheitsliste/waehleLV');
|
||||
}
|
||||
elseif(!$stunden_gesamt)
|
||||
{
|
||||
echo $p->t('anwesenheitsliste/keineStundenvorhanden');
|
||||
}
|
||||
else
|
||||
{
|
||||
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;
|
||||
?>
|
||||
|
||||
|
||||
echo '
|
||||
<div class="lv">
|
||||
<div>
|
||||
<?php echo $student->nachname ?>
|
||||
<?php echo $student->vorname ?>
|
||||
'.$db->convert_html_chars($student->nachname).'
|
||||
'.$db->convert_html_chars($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 class="progress '.$anwesenheit->getAmpel($anwesenheit_relativ).'" style="width: '.(int) round($anwesenheit_relativ).'%;"></div>
|
||||
</div>
|
||||
<?php echo round($anwesenheit_relativ, 1) ?>%
|
||||
LE abgeschlossen: [<?php echo $le_erledigt ?>/<?php echo $stunden_gesamt ?>]
|
||||
'.round($anwesenheit_relativ, 1).'%
|
||||
'.$p->t('anwesenheitsliste/leAbgeschlossen').': ['.$le_erledigt.'/'.$stunden_gesamt.']';
|
||||
|
||||
<?php if($fehlstunden): ?>
|
||||
|
||||
<span class="fehlstunden-details" title="eingetragene Fehlstunden">>></span>
|
||||
if($fehlstunden)
|
||||
{
|
||||
echo '<span class="fehlstunden-details" title="'.$p->t('anwesenheitsliste/fehlstunden').'">>></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>
|
||||
<tr><td>'.$p->t('global/datum').'</td><td>'.$p->t('anwesenheitsliste/fehlstunden').'</td></tr>';
|
||||
$abwesend_termine = $anwesenheit->getAbwesendTermine($student->uid, $le->lehreinheit_id);
|
||||
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php
|
||||
endforeach;
|
||||
endif; ?>
|
||||
|
||||
<script type="text/javascript">
|
||||
$('#anwesenheitAuswahl > *').on('change', function() {
|
||||
|
||||
if(this.id === 'semester') {
|
||||
$('#lehreinheit').val('');
|
||||
foreach($abwesend_termine as $termin)
|
||||
{
|
||||
echo ' <tr>
|
||||
<td>'.$datum_obj->formatDatum($termin->datum,'d.m.Y').'</td>
|
||||
<td>'.(float)$termin->einheiten.'</td>
|
||||
</tr>';
|
||||
}
|
||||
echo ' </table>
|
||||
</div>';
|
||||
}
|
||||
|
||||
$('#anwesenheitAuswahl').trigger('submit');
|
||||
echo '
|
||||
</div>
|
||||
</div>';
|
||||
}
|
||||
}
|
||||
|
||||
echo '
|
||||
<script type="text/javascript">
|
||||
|
||||
$("span.fehlstunden-details").on("click", function() {
|
||||
$(this).next().toggle();
|
||||
});
|
||||
|
||||
$("#anwesenheitAuswahl > *").on("change", function() {
|
||||
|
||||
if(this.id === "semester") {
|
||||
$("#lehreinheit").val("");
|
||||
}
|
||||
|
||||
$("#anwesenheitAuswahl").trigger("submit");
|
||||
});
|
||||
</script>
|
||||
<?php endif; ?>
|
||||
|
||||
';
|
||||
}
|
||||
echo '
|
||||
</body>
|
||||
</html>
|
||||
</html>';
|
||||
?>
|
||||
|
||||
@@ -128,6 +128,12 @@ if(isset($_GET['von']))
|
||||
$params.='&von='.urlencode($_GET['von']);
|
||||
if(isset($_GET['bis']))
|
||||
$params.='&bis='.urlencode($_GET['bis']);
|
||||
if(isset($_GET['stundevon']))
|
||||
$params.='&stundevon='.urlencode($_GET['stundevon']);
|
||||
if(isset($_GET['stundebis']))
|
||||
$params.='&stundebis='.urlencode($_GET['stundebis']);
|
||||
if(isset($_GET['sem']))
|
||||
$params.='&sem='.urlencode($_GET['sem']);
|
||||
if(isset($_GET['lehreinheit']))
|
||||
$params.='&lehreinheit='.urlencode($_GET['lehreinheit']);
|
||||
if(isset($_GET['mitarbeiter_uid']))
|
||||
|
||||
Vendored
-1
File diff suppressed because one or more lines are too long
@@ -471,7 +471,7 @@ class lehreinheitmitarbeiter extends basis_db
|
||||
*/
|
||||
public function getLehreinheiten($mitarbeiter_uid, $studiensemester_kurzbz)
|
||||
{
|
||||
$qry = 'SELECT DISTINCT lehreinheit_id, lv_bezeichnung, lv_kurzbz, unr, lv_lehrform_kurzbz '
|
||||
$qry = 'SELECT DISTINCT lehreinheit_id, lv_bezeichnung, lv_kurzbz, unr, lv_lehrform_kurzbz, stg_kurzbzlang, lv_semester '
|
||||
. 'FROM campus.vw_lehreinheit '
|
||||
. 'WHERE mitarbeiter_uid = ' . $this->db_add_param($mitarbeiter_uid)
|
||||
. ' AND studiensemester_kurzbz = ' . $this->db_add_param($studiensemester_kurzbz)
|
||||
|
||||
@@ -7,4 +7,12 @@ $this->phrasen['anwesenheitsliste/keineStudentenVorhanden']='Derzeit sind in die
|
||||
$this->phrasen['anwesenheitsliste/erstellenDerListeKlicken']='Zum Erstellen der Liste klicken Sie bitte auf die gewünschte Gruppe!';
|
||||
$this->phrasen['anwesenheitsliste/gesamtliste']='Gesamtliste';
|
||||
$this->phrasen['anwesenheitsliste/fehlerhafteParameteruebergabe']='Fehlerhafte Parameteruebergabe. Bitte versuchen Sie es erneut';
|
||||
?>
|
||||
|
||||
$this->phrasen['anwesenheitsliste/anwesenheit']='Anwesenheit';
|
||||
$this->phrasen['anwesenheitsliste/leAbgeschlossen']='LE abgeschlossen';
|
||||
$this->phrasen['anwesenheitsliste/fehlstunden']='Fehlstunden';
|
||||
$this->phrasen['anwesenheitsliste/keineLVsGefunden']='Es konnten keine Lehrveranstaltungen gefunden werden';
|
||||
$this->phrasen['anwesenheitsliste/waehleLV']='Bitte wählen Sie eine Lehrveranstaltung aus';
|
||||
$this->phrasen['anwesenheitsliste/keineStundenvorhanden']='Derzeit sind keine Stunden eingetragen';
|
||||
$this->phrasen['anwesenheitsliste/keineEintraegeGefunden']='Es wurden keine Einträge gefunden';
|
||||
?>
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
<?php
|
||||
$this->phrasen['lvaliste/titel']='Lehrveranstaltungsübersicht';
|
||||
$this->phrasen['lvaliste/anwesenheit']='Anwesenheit';
|
||||
$this->phrasen['lvaliste/anwesenheit/studenten']='Anwesenheit der Studenten';
|
||||
$this->phrasen['lvaliste/hilfeText']='Erklärung\n\nStg-Sem: Studiengang-Semester\nGruppen: Teilnehmende Gruppen\nBlock: Blockung (1->Einzelstunden; 2->Doppelstunden; ...)\nWR: Wochenrhythmus (1->jede Woche; 2->jede 2. Woche; ...)\nStd: gesamte Semesterstunden\nKW: Kalenderwoche in der die Lehrveranstaltung startet';
|
||||
$this->phrasen['lvaliste/hilfeAnzeigen']='Hilfe anzeigen';
|
||||
|
||||
|
||||
@@ -7,4 +7,12 @@ $this->phrasen['anwesenheitsliste/keineStudentenVorhanden']='There are currently
|
||||
$this->phrasen['anwesenheitsliste/erstellenDerListeKlicken']='To create the list, please click on the desired group!';
|
||||
$this->phrasen['anwesenheitsliste/gesamtliste']='Complete List';
|
||||
$this->phrasen['anwesenheitsliste/fehlerhafteParameteruebergabe']='Incorrect parameter transfer. Please try again.';
|
||||
?>
|
||||
|
||||
$this->phrasen['anwesenheitsliste/anwesenheit']='Attendance List';
|
||||
$this->phrasen['anwesenheitsliste/leAbgeschlossen']='LE completed';
|
||||
$this->phrasen['anwesenheitsliste/fehlstunden']='Fehlstunden';
|
||||
$this->phrasen['anwesenheitsliste/keineLVsGefunden']='Es konnten keine Lehrveranstaltungen gefunden werden';
|
||||
$this->phrasen['anwesenheitsliste/waehleLV']='Bitte wählen Sie eine Lehrveranstaltung aus';
|
||||
$this->phrasen['anwesenheitsliste/keineStundenvorhanden']='Derzeit sind keine Stunden eingetragen';
|
||||
$this->phrasen['anwesenheitsliste/keineEintraegeGefunden']='Es wurden keine Einträge gefunden';
|
||||
?>
|
||||
|
||||
@@ -30,8 +30,10 @@ require_once('../include/ean13.function.php');
|
||||
// Optionen abfragen
|
||||
isset($_GET['von']) ? $von = date('Y-m-d', strtotime($_GET['von'])) : $von = NULL;
|
||||
isset($_GET['bis']) ? $bis = date('Y-m-d', strtotime($_GET['bis'])) : $bis = $von;
|
||||
isset($_GET['stundevon']) ? $stundevon = $_GET['stundevon'] : $stundevon = null;
|
||||
isset($_GET['stundebis']) ? $stundebis = $_GET['stundebis'] : $stundebis = null;
|
||||
isset($_GET['stg_kz']) ? $studiengang = $_GET['stg_kz'] : $studiengang = NULL;
|
||||
isset($_GET['ss']) ? $semester = $_GET['ss'] : $semester = NULL;
|
||||
isset($_GET['semester']) ? $semester = $_GET['semester'] : $semester = NULL;
|
||||
isset($_GET['lehreinheit']) ? $lehreinheit = $_GET['lehreinheit'] : $lehreinheit = NULL;
|
||||
|
||||
if($von)
|
||||
@@ -60,7 +62,10 @@ if($semester)
|
||||
$qry .= " AND lv.semester = " . $db->db_add_param($semester);
|
||||
if($von)
|
||||
$qry .= " AND (sp.datum >= " . $db->db_add_param($von) . "::DATE AND sp.datum <= " . $db->db_add_param($bis) . "::DATE) ";
|
||||
|
||||
if(!is_null($stundevon))
|
||||
$qry.=" AND stu.stunde>=".$db->db_add_param($stundevon);
|
||||
if(!is_null($stundebis))
|
||||
$qry.=" AND stu.stunde<=".$db->db_add_param($stundebis);
|
||||
$qry .= " ORDER BY datum, beginn";
|
||||
|
||||
if($db->db_query($qry))
|
||||
|
||||
+7
-4
@@ -1029,10 +1029,13 @@ body.anwesenheit {
|
||||
body.anwesenheit div.lv {
|
||||
margin: 10px;
|
||||
padding-top: 10px;
|
||||
padding-left: 10px;
|
||||
background-color: #f2f8ff;
|
||||
border: 1px solid #2353b2;
|
||||
}
|
||||
|
||||
body.anwesenheit div.lv + div.lv {
|
||||
border-top: 1px dashed rgb(193,193,193);
|
||||
/* border-top: 1px dashed rgb(193,193,193);*/
|
||||
}
|
||||
|
||||
body.anwesenheit div.lv > div {
|
||||
@@ -1050,15 +1053,15 @@ body.anwesenheit div.progress {
|
||||
}
|
||||
|
||||
body.anwesenheit div.progress.green {
|
||||
background-color: lightgreen;
|
||||
background-color: #008000;
|
||||
}
|
||||
|
||||
body.anwesenheit div.progress.yellow {
|
||||
background-color: yellow;
|
||||
background-color: #ffa500;
|
||||
}
|
||||
|
||||
body.anwesenheit div.progress.red {
|
||||
background-color: red;
|
||||
background-color: #dc143c;
|
||||
}
|
||||
|
||||
body.anwesenheit span.fehlstunden-details {
|
||||
|
||||
@@ -30,6 +30,8 @@ require_once('../../include/datum.class.php');
|
||||
require_once('../../include/lehreinheit.class.php');
|
||||
require_once('../../include/lehrveranstaltung.class.php');
|
||||
require_once('../../include/anwesenheit.class.php');
|
||||
require_once('../../include/studiensemester.class.php');
|
||||
require_once('../../include/lehreinheitmitarbeiter.class.php');
|
||||
|
||||
if (!$uid = get_uid())
|
||||
die('Keine UID gefunden!');
|
||||
@@ -43,12 +45,74 @@ $datum_obj = new datum();
|
||||
if(!$rechte->isBerechtigt('basis/person', null, 'suid'))
|
||||
die('Sie haben keine Berechtigung für diese Seite');
|
||||
|
||||
|
||||
if(isset($_REQUEST['work']))
|
||||
$work = $_REQUEST['work'];
|
||||
else
|
||||
$work='';
|
||||
|
||||
if($work=='getTermine')
|
||||
{
|
||||
$stg = $_POST['stg'];
|
||||
$sem = $_POST['sem'];
|
||||
$stsem = $_POST['stsem'];
|
||||
$lv = $_POST['lv'];
|
||||
|
||||
// Daten der Lehreinheiten ermitteln
|
||||
$qry = "SELECT
|
||||
le.lehreinheit_id, sp.ort_kurzbz, datum
|
||||
FROM
|
||||
lehre.tbl_lehreinheit le
|
||||
JOIN lehre.tbl_lehrveranstaltung lv ON lv.lehrveranstaltung_id = le.lehrveranstaltung_id
|
||||
JOIN lehre.tbl_stundenplan sp ON (sp.lehreinheit_id=le.lehreinheit_id)
|
||||
WHERE lv.studiengang_kz = " . $db->db_add_param($stg)."
|
||||
AND lv.lehrveranstaltung_id = " . $db->db_add_param($lv)."
|
||||
AND lv.semester = " . $db->db_add_param($sem)."
|
||||
AND le.studiensemester_kurzbz=".$db->db_add_param($stsem)." ORDER BY datum, stunde";
|
||||
|
||||
$data = array();
|
||||
$lektoren=array();
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$paddedLehreinheitId = str_pad($row->lehreinheit_id, 6, "0", STR_PAD_LEFT);
|
||||
$id = date('ymd', strtotime($row->datum)) . $paddedLehreinheitId;
|
||||
|
||||
if(!isset($lektoren[$row->lehreinheit_id]))
|
||||
{
|
||||
$le_obj = new lehreinheitmitarbeiter();
|
||||
$le_obj->getLehreinheitmitarbeiter($row->lehreinheit_id);
|
||||
$lektoren[$row->lehreinheit_id]='';
|
||||
foreach($le_obj->lehreinheitmitarbeiter as $row_lem)
|
||||
{
|
||||
$lektoren[$row->lehreinheit_id].=$row_lem->mitarbeiter_uid.' ';
|
||||
}
|
||||
}
|
||||
|
||||
$data[$id]=$datum_obj->formatDatum($row->datum,'d.m.Y').' '.$lektoren[$row->lehreinheit_id];
|
||||
}
|
||||
}
|
||||
echo json_encode($data);
|
||||
exit;
|
||||
}
|
||||
if($work=='getLVs')
|
||||
{
|
||||
$stg = $_POST['stg'];
|
||||
$sem = $_POST['sem'];
|
||||
$stsem = $_POST['stsem'];
|
||||
|
||||
$lv = new lehrveranstaltung();
|
||||
$lv->load_lva_le($stg, $stsem, $sem);
|
||||
|
||||
$data = array();
|
||||
foreach($lv->lehrveranstaltungen as $row)
|
||||
{
|
||||
$data[$row->lehrveranstaltung_id]=$row->bezeichnung;
|
||||
}
|
||||
echo json_encode($data);
|
||||
exit;
|
||||
}
|
||||
|
||||
echo '<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
@@ -72,7 +136,7 @@ echo '<!DOCTYPE HTML>
|
||||
{
|
||||
$("#t1").tablesorter(
|
||||
{
|
||||
sortList: [[4,1]],
|
||||
sortList: [[4,0]],
|
||||
widgets: ["zebra"]
|
||||
});
|
||||
});
|
||||
@@ -276,7 +340,142 @@ if($work=='')
|
||||
Bitte scannen Sie den Lehreinheiten Barcode<br>
|
||||
<input type="text" id="lvcode" name="lvcode" value="" size="13"/>
|
||||
<input type="hidden" name="work" value="loadAnwesenheit" />
|
||||
</form>';
|
||||
</form>
|
||||
';
|
||||
|
||||
|
||||
$studiengang_kz='';
|
||||
$semester='';
|
||||
$studiensemester_kurzbz='';
|
||||
$lv_id='';
|
||||
|
||||
echo '<br><hr><br>
|
||||
<form name="sendform" action="'.$_SERVER["PHP_SELF"].'" method="post">
|
||||
<input type="hidden" name="work" value="loadAnwesenheit" />';
|
||||
$studiengang = new studiengang();
|
||||
$studiengang->getAll('typ,kurzbz');
|
||||
echo 'Studiengang <select name="studiengang" id="studiengang" style="width:250px" onchange="loadListe()">';
|
||||
foreach($studiengang->result as $row)
|
||||
{
|
||||
if($studiengang_kz=='')
|
||||
$studiengang_kz=$row->studiengang_kz;
|
||||
|
||||
echo '<option value="'.$row->studiengang_kz.'">'.$row->kuerzel.' -'.$row->bezeichnung.'</option>';
|
||||
}
|
||||
echo '</select>';
|
||||
|
||||
echo 'Semester <select name="semester" id="semester" onchange="loadListe()">';
|
||||
for($i=1;$i<=10;$i++)
|
||||
{
|
||||
if($semester=='')
|
||||
$semester = $i;
|
||||
echo '<option value="'.$i.'">'.$i.'</option>';
|
||||
}
|
||||
echo '</select>';
|
||||
|
||||
$stsem = new studiensemester();
|
||||
$akt = $stsem->getAktOrNext();
|
||||
$stsem->getAll();
|
||||
echo 'Studiensemester <select name="stsem" id="stsem" onchange="loadListe()">';
|
||||
foreach($stsem->studiensemester as $row)
|
||||
{
|
||||
if($studiensemester_kurzbz=='')
|
||||
$studiensemester_kurzbz=$row->studiensemester_kurzbz;
|
||||
|
||||
if($row->studiensemester_kurzbz==$akt)
|
||||
$selected='selected';
|
||||
else
|
||||
$selected='';
|
||||
echo '<option value="'.$row->studiensemester_kurzbz.'" '.$selected.'>'.$row->studiensemester_kurzbz.'</option>';
|
||||
}
|
||||
echo '</select>';
|
||||
|
||||
$lv = new lehrveranstaltung();
|
||||
$lv->load_lva_le($studiengang_kz, $studiensemester_kurzbz, $semester);
|
||||
echo 'LV <select name="lv" id="lv" onchange="loadListe(\'lv\')">
|
||||
<option value="">--Auswahl--</option>';
|
||||
foreach($lv->lehrveranstaltungen as $row)
|
||||
{
|
||||
if($lv_id=='')
|
||||
$lv_id=$row->lehrveranstaltung_id;
|
||||
echo '<option value="'.$row->lehrveranstaltung_id.'">'.$row->bezeichnung.'</option>';
|
||||
}
|
||||
echo '</select>';
|
||||
|
||||
echo 'Termin <select name="lvcode" id="termine" >';
|
||||
|
||||
echo '</select>
|
||||
<input type="submit" />';
|
||||
|
||||
echo '<script>
|
||||
function loadListe(action)
|
||||
{
|
||||
var stg = $("#studiengang").val();
|
||||
var sem = $("#semester").val();
|
||||
var stsem = $("#stsem").val();
|
||||
var lv = $("#lv").val();
|
||||
|
||||
if(action=="lv" && lv!="")
|
||||
{
|
||||
// Termine holen
|
||||
data = {
|
||||
stg: stg,
|
||||
sem: sem,
|
||||
stsem: stsem,
|
||||
lv: lv,
|
||||
work: "getTermine"
|
||||
};
|
||||
|
||||
$.ajax({
|
||||
url: "anwesenheit.php",
|
||||
data: data,
|
||||
type: "POST",
|
||||
dataType: "json",
|
||||
success: function(data)
|
||||
{
|
||||
$("#termine").empty();
|
||||
$("#termine").append(\'<option value="">-- Auswahl --</option>\');
|
||||
$.each(data, function(i, entry){
|
||||
$("#termine").append(\'<option value="\'+i+\'">\'+entry+\'</option>\');
|
||||
});
|
||||
},
|
||||
error: function(data)
|
||||
{
|
||||
alert("Fehler beim Laden der Daten");
|
||||
}
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
// LV holen
|
||||
data = {
|
||||
stg: stg,
|
||||
sem: sem,
|
||||
stsem: stsem,
|
||||
work: "getLVs"
|
||||
};
|
||||
|
||||
$.ajax({
|
||||
url: "anwesenheit.php",
|
||||
data: data,
|
||||
type: "POST",
|
||||
dataType: "json",
|
||||
success: function(data)
|
||||
{
|
||||
$("#lv").empty();
|
||||
$("#lv").append(\'<option value="">-- Auswahl --</option>\');
|
||||
$.each(data, function(i, entry){
|
||||
$("#lv").append(\'<option value="\'+i+\'">\'+entry+\'</option>\');
|
||||
});
|
||||
},
|
||||
error: function(data)
|
||||
{
|
||||
alert("Fehler beim Laden der Daten");
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
</script>';
|
||||
}
|
||||
echo '
|
||||
</body>
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
require_once('../../config/vilesci.config.inc.php');
|
||||
require_once('../../include/functions.inc.php');
|
||||
require_once('../../include/studiengang.class.php');
|
||||
require_once('../../include/stunde.class.php');
|
||||
|
||||
$studiengang = new studiengang;
|
||||
$studiengang->getAll("typ, kurzbz");
|
||||
@@ -77,8 +78,8 @@ $studiengang->getAll("typ, kurzbz");
|
||||
<body class="Background_main">
|
||||
<h2>Anwesenheitslisten mit Barcodes</h2>
|
||||
<p id="error" style="display: none; font-weight: bold; color: red;">Die gewählte Zeitspanne darf nicht größer als 14 Tage sein!</p>
|
||||
|
||||
<form method="get" action="../../content/pdfExport.php?xsl=AnwListBarcode&output=pdf" onsubmit="return checkDates();">
|
||||
<a href="anwesenheit.php">Listen erfassen</a>
|
||||
<form method="get" action="../../content/pdfExport.php" onsubmit="return checkDates();">
|
||||
<input type="hidden" name="xsl" value="AnwListBarcode" />
|
||||
<input type="hidden" name="output" value="pdf" />
|
||||
<input type="hidden" name="xml" value="anwesenheitsliste.xml.php" />
|
||||
@@ -86,12 +87,37 @@ $studiengang->getAll("typ, kurzbz");
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>von</td>
|
||||
<td><input type="text" name="von" class="datepicker" id="von" autocomplete="off" /></td>
|
||||
<td>Von</td>
|
||||
<td><input type="text" name="von" class="datepicker" id="von" size="10" autocomplete="off" />
|
||||
<select name="stundevon">
|
||||
<?php
|
||||
$stunde = new stunde();
|
||||
$stunde->loadAll();
|
||||
foreach($stunde->stunden as $row)
|
||||
{
|
||||
echo '<option value="'.$row->stunde.'">'.$row->stunde.'. Stunde '.$row->beginn->format('H:i').' - '.$row->ende->format('H:i').'</option>';
|
||||
}
|
||||
?>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>bis</td>
|
||||
<td><input type="text" name="bis" class="datepicker" id="bis" autocomplete="off" /></td>
|
||||
<td>Bis</td>
|
||||
<td><input type="text" name="bis" class="datepicker" id="bis" size="10" autocomplete="off" />
|
||||
<select id="stundebis" name="stundebis">
|
||||
<?php
|
||||
foreach($stunde->stunden as $row)
|
||||
{
|
||||
echo '<option value="'.$row->stunde.'">'.$row->stunde.'. Stunde '.$row->beginn->format('H:i').' - '.$row->ende->format('H:i').'</option>';
|
||||
}
|
||||
?>
|
||||
</select>
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
$('#stundebis option:last-child').attr('selected', 'selected');
|
||||
});
|
||||
</script>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Studiengang</td>
|
||||
@@ -104,7 +130,8 @@ $studiengang->getAll("typ, kurzbz");
|
||||
<tr>
|
||||
<td>Ausbildungssemester</td>
|
||||
<td>
|
||||
<select name="ss">
|
||||
<select name="sem">
|
||||
<option value=''>-- Alle --</option>
|
||||
<?php for($x = 1; $x <= 10; $x++) echo "<option value='$x'>$x</option>\n"; ?>
|
||||
</select>
|
||||
</td>
|
||||
@@ -117,4 +144,4 @@ $studiengang->getAll("typ, kurzbz");
|
||||
</table>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user