diff --git a/cis/private/lehre/anwesenheitsliste.php b/cis/private/lehre/anwesenheitsliste.php index af6380f69..0b9f4c10b 100644 --- a/cis/private/lehre/anwesenheitsliste.php +++ b/cis/private/lehre/anwesenheitsliste.php @@ -84,6 +84,7 @@ if($error==0) { $aw_content=''; + $awbild_content=''; $nt_content=''; //Content fuer Anwesenheitslisten erstellen @@ -97,6 +98,7 @@ $lv = new lehrveranstaltung($conn, $lvid); $aw_content .= "Gesamtliste $lv->bezeichnung"; + $awbild_content .= "Gesamtliste $lv->bezeichnung"; $nt_content .= "Gesamtliste $lv->bezeichnung"; @@ -132,6 +134,7 @@ } $aw_content .= "   $kurzbz - $lehrform - $gruppen ($lektoren)"; + $awbild_content .= "   $kurzbz - $lehrform - $gruppen ($lektoren)"; $nt_content .= "   $kurzbz - $lehrform - $gruppen ($lektoren)"; $lastlehreinheit = $row->lehreinheit_id; @@ -166,6 +169,7 @@ } $aw_content .= "   $kurzbz - $lehrform - $gruppen ($lektoren)"; + $awbild_content .= "   $kurzbz - $lehrform - $gruppen ($lektoren)"; $nt_content .= "   $kurzbz - $lehrform - $gruppen ($lektoren)"; } } @@ -180,6 +184,11 @@ $aw_content = "".$aw_content."
Anwesenheitslisten
"; else $aw_content = "Derzeit sind in diesem Studiengang / Semester keine Studenten vorhanden"; + + if($awbild_content!='') + $awbild_content = "".$awbild_content."
Anwesenheitslisten mit Bildern
"; + else + $awbild_content = "Derzeit sind in diesem Studiengang / Semester keine Studenten vorhanden"; if($nt_content!='') $nt_content = "".$nt_content."
Notenlisten
"; @@ -193,6 +202,14 @@ $aw_content $nt_content + +   + + + + $awbild_content + + "; } } diff --git a/cis/private/lehre/anwesenheitsliste_bilder.pdf.php b/cis/private/lehre/anwesenheitsliste_bilder.pdf.php new file mode 100644 index 000000000..2bf1b076b --- /dev/null +++ b/cis/private/lehre/anwesenheitsliste_bilder.pdf.php @@ -0,0 +1,102 @@ +, + * Andreas Oesterreicher and + * Rudolf Hangl . + */ + /** + * anwesenheitsliste.pdf.php + * + * Erstellt eine Anwesenheitsliste im PDF-Format + * + */ + + setlocale(LC_ALL, "de"); + // Pfad zu fpdf + define('FPDF_FONTPATH','../../../include/pdf/font/'); + // library einbinden + require_once('../../../include/pdf/fpdf.php'); + + require_once('../../config.inc.php'); + require_once('../../../include/person.class.php'); + require_once('../../../include/studiengang.class.php'); + require_once('../../../include/studiensemester.class.php'); + require_once('../../../include/lehrveranstaltung.class.php'); + require_once('../../../include/pdf.inc.php'); + error_reporting(E_ALL); + ini_set('display_errors','1'); + + if(!$conn=pg_pconnect(CONN_STRING)) + die('Fehler beim Herstellen der Datenbankverbindung'); + + //Uebergabeparameter abpruefen + if(isset($_GET['stg'])) //Studiengang + { + if(is_numeric($_GET['stg'])) + $stg=$_GET['stg']; + else + die('Fehler bei der Parameteruebergabe'); + } + else + $stg=''; + if(isset($_GET['sem'])) //Semester + { + if(is_numeric($_GET['sem'])) + $sem=$_GET['sem']; + else + die('Fehler bei der Parameteruebergabe'); + } + else + $sem=''; + + if(isset($_GET['verband'])) //Verband + $verband=$_GET['verband']; + else + $verband=''; + if(isset($_GET['gruppe'])) //Gruppe + $gruppe=$_GET['gruppe']; + else + $gruppe=''; + if(isset($_GET['gruppe_kurzbz'])) //Einheit + $gruppe_kurzbz = $_GET['gruppe_kurzbz']; + else + $gruppe_kurzbz=''; + + if(isset($_GET['lvid']) && is_numeric($_GET['lvid'])) + $lvid = $_GET['lvid']; + else + die('Fehler bei der Parameteruebergabe'); + + if(isset($_GET['stsem'])) + $stsem = $_GET['stsem']; + else + die('Studiensemester wurde nicht uebergeben'); + + $lehreinheit_id = (isset($_GET['lehreinheit_id'])?$_GET['lehreinheit_id']:''); +/** + * liefert den groesseren der beiden werte + * + */ +function getmax($val1,$val2) +{ + return ($val1>$val2)?$val1:$val2; + +} + +require_once('../../../include/'.EXT_FKT_PATH.'/anwesenheitsliste_bilder.inc.php'); +?> diff --git a/cis/private/profile/urlaubsfreigabe.php b/cis/private/profile/urlaubsfreigabe.php index 229d0c825..c0269cff0 100644 --- a/cis/private/profile/urlaubsfreigabe.php +++ b/cis/private/profile/urlaubsfreigabe.php @@ -244,9 +244,17 @@ if($uid!='') echo ""; echo ""; echo ""; echo ""; echo ""; diff --git a/cis/public/bibliothek_elektronischeressourcen.html b/cis/public/bibliothek_elektronischeressourcen.html index cffea699c..0d194b8c5 100644 --- a/cis/public/bibliothek_elektronischeressourcen.html +++ b/cis/public/bibliothek_elektronischeressourcen.html @@ -34,26 +34,29 @@

- Science Direct College Edition (Physical Sciences and Engineering):
- Online-Recherche in mehr als 650 renommierten Fachzeitschriften. Die - Zugriffsrechte auf die Volltexte der subskribierten Zeitschriften - reichen großteils bis 1.1.1995 zurück. Artikel, die nicht im - Volltext abrufbar sind, können Sie beim Dokumenten-Lieferdienst - Subito (siehe `Weitere Recherchetipps´) bestellen.
+ Science Direct College Edition
+ Das Technikum hat den Bereich Physical Sciences and Engineering lizenziert, der Zugang ist derzeit nur von hausinternen Rechnern möglich. +
+ Sie können online in mehr als 650 renommierten Fachzeitschriften und über 2,5 Millionen Artikeln recherchieren. Die Zugriffsrechte auf die + Volltexte der subskribierten Zeitschriften reichen großteils bis 1.1.1995 zurück. Artikel, die nicht im Volltext abrufbar sind, können + Sie beim Dokumenten-Lieferdienst Subito (siehe `Online Katalog / Recherche´) bestellen. + Die Online-Tutorials in verschiedenen Sprachen informieren Sie über die Benutzung von Science Direct: + http://www.info.sciencedirect.com/using/ +

Elektronische Zeitschriftenbibliothek
Die Elektronische Zeitschriftenbibliothek ist ein Service der Universtitätsbibliothek Regensburg zur effektiven Nutzung wissenschaftlicher Volltextzeitschriften im Internet. - Sie umfaßt ca. 40.000 verschiedene Titel, mehr als 19000 Fachzeitschriften sind im Volltext frei zugänglich. + Sie umfaßt ca. 40.000 verschiedene Titel, mehr als 19000 Fachzeitschriften sind im Volltext frei verfügbar. + Der Zugang ist derzeit nur von hausinternen Rechnern möglich

+ + Gratis e-books von verschiedenen Anbietern
O'Reilly Open Books
-
Galileo Computing Open Books
-
- Datenbanken und Zeitschriften mit medizinischem Schwerpunkt
-
Wikibooks

+ Datenbanken und Zeitschriften mit medizinischem Schwerpunkt
diff --git a/cis/public/bild.php b/cis/public/bild.php new file mode 100644 index 000000000..c66b81eb5 --- /dev/null +++ b/cis/public/bild.php @@ -0,0 +1,63 @@ +, + * Andreas Oesterreicher and + * Rudolf Hangl . + */ +// Holt den Hexcode eines Bildes aus der DB wandelt es in Zeichen +// um und gibt das ein Bild zurueck. +// Aufruf mit foto=='') + echo hexstr('ffd8ffe000104a46494600010101004800480000ffe100164578696600004d4d002a00000008000000000000fffe0017437265617465642077697468205468652047494d50ffdb0043000503040404030504040405050506070c08070707070f0b0b090c110f1212110f111113161c1713141a1511111821181a1d1d1f1f1f13172224221e241c1e1f1effdb0043010505050706070e08080e1e1411141e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1effc00011080001000103012200021101031101ffc4001500010100000000000000000000000000000008ffc40014100100000000000000000000000000000000ffc40014010100000000000000000000000000000000ffc40014110100000000000000000000000000000000ffda000c03010002110311003f00b2c007ffd9'); + else + echo hexstr($row->foto); + } +} +?> \ No newline at end of file diff --git a/include/konto.class.php b/include/konto.class.php index 62eaa678e..a8348d84c 100644 --- a/include/konto.class.php +++ b/include/konto.class.php @@ -505,7 +505,7 @@ class konto { if ($row->differenz == 0) { - $this->buchungsdatum = $buch_date[1]; + $this->buchungsdatum = isset($buch_date[1])?$buch_date[1]:''; return true; } else diff --git a/include/tw/anwesenheitsliste.inc.php b/include/tw/anwesenheitsliste.inc.php index bedec4a8e..df24e6aa3 100644 --- a/include/tw/anwesenheitsliste.inc.php +++ b/include/tw/anwesenheitsliste.inc.php @@ -33,7 +33,7 @@ $pdf->SetXY(30,40); $stgobj=new studiengang($conn); $stgobj->load($stg); //Logo -$pdf->Image("../../../skin/images/tw_logo_02.jpg","430","55","120","35","jpg",""); +$pdf->Image("../../../skin/images/logo.jpg","430","55","120","35","jpg",""); //$pdf->Image("../../../skin/images/tw_logo_02.jpg","400","30","116","43","jpg",""); $lvobj = new lehrveranstaltung($conn, $lvid); @@ -70,7 +70,11 @@ if($result = pg_query($conn, $qry)) $gruppen.=$row->gruppe_kurzbz; } } -$pdf->MultiCell(0,20,'Gruppe: '.$gruppen.' Studiensemester: '.$stsem); +if(strlen($gruppen)>50) + $linebreak="\n"; +else + $linebreak=' '; +$pdf->MultiCell(0,15,'Gruppe: '.$gruppen.$linebreak.'Studiensemester: '.$stsem); $maxY=$pdf->GetY(); $maxY=getmax($maxY,$pdf->GetY()); diff --git a/include/tw/anwesenheitsliste_bilder.inc.php b/include/tw/anwesenheitsliste_bilder.inc.php new file mode 100644 index 000000000..02a56baf1 --- /dev/null +++ b/include/tw/anwesenheitsliste_bilder.inc.php @@ -0,0 +1,214 @@ +, + * Andreas Oesterreicher and + * Rudolf Hangl . + */ + +//PDF fuer die Anwesenheitsliste auf CIS + +//PDF erzeugen +$pdf = new PDF('P','pt'); +$pdf->Open(); +$pdf->AddPage(); +$pdf->AliasNbPages(); + +$pdf->SetFillColor(111,111,111); +$pdf->SetXY(30,40); +$stgobj=new studiengang($conn); +$stgobj->load($stg); +//Logo +$pdf->Image("../../../skin/images/logo.jpg","430","55","120","35","jpg",""); +//$pdf->Image("../../../skin/images/tw_logo_02.jpg","400","30","116","43","jpg",""); + +$lvobj = new lehrveranstaltung($conn, $lvid); + +$pdf->SetFont('Arial','',16); +$pdf->MultiCell(0,20,'Anwesenheitsliste '.$lvobj->bezeichnung,0,'L',0); + +$pdf->SetFont('Arial','',10); +$pdf->SetFillColor(190,190,190); +//Bei langen Namen muss der Gruppenname etwas weiter unten angezeigt werden da er +//sonst von der zweiten Zeile des Titels ueberschrieben wird. +if(strlen($lvobj->bezeichnung)>50) +$pdf->SetXY(30,75); +else +$pdf->SetXY(30,60); + +//$stsem_obj = new studiensemester($conn); +//$stsem = $stsem_obj->getaktorNext(); + +$qry = "SELECT distinct on(kuerzel, semester, verband, gruppe, gruppe_kurzbz) UPPER(stg_typ::varchar(1) || stg_kurzbz) as kuerzel, semester, verband, gruppe, gruppe_kurzbz from campus.vw_lehreinheit WHERE lehrveranstaltung_id='".addslashes($lvid)."' AND studiensemester_kurzbz='".addslashes($stsem)."'"; +if($lehreinheit_id!='') + $qry.=" AND lehreinheit_id='".addslashes($lehreinheit_id)."'"; + +$gruppen=''; +if($result = pg_query($conn, $qry)) +{ + while($row = pg_fetch_object($result)) + { + if($gruppen!='') + $gruppen.=', '; + if($row->gruppe_kurzbz=='') + $gruppen.=trim($row->kuerzel.'-'.$row->semester.$row->verband.$row->gruppe); + else + $gruppen.=$row->gruppe_kurzbz; + } +} +$pdf->MultiCell(0,20,'Gruppe: '.$gruppen); +$pdf->MultiCell(0,20,'Studiensemester: '.$stsem); + +$maxY=$pdf->GetY(); +$maxY=getmax($maxY,$pdf->GetY()); + + +$pdf->SetFont('Arial','B',12); + +//Studenten +$pdf->SetFont('Arial','B',10); +$maxY=$pdf->GetY(); +$maxX=30; +$pdf->SetXY($maxX,$maxY); + +$maxY=$pdf->GetY(); +$pdf->tablewidths = array(20,140,60,60,60); //Spaltenbreiten setzen +$pdf->SetLeftMargin(30); +$pdf->SetTopMargin(100); // Auch in der Funktion Header umstellen!!! + +$aligns = array('R','L','C','C','C'); //Ausrichtung der Tabellen festlegen +$maxY+=10; +$pdf->SetFont('Arial','',8); +$pdf->SetXY(30,$maxY); +$lineheight=10; +//Studenten holen + + +$pdf->SetFont('Arial','',8); + $maxY=$pdf->GetY(); + $maxX=30; + $pdf->SetXY($maxX,$maxY); + $pdf->MultiCell(20,$lineheight,'',1,'R',0); + $maxX +=20; + $pdf->SetXY($maxX,$maxY); + $pdf->SetFont('Arial','B',8); + $pdf->MultiCell(130,$lineheight,'Hörer/Name',1,'L',0); + $maxX +=130; + $pdf->SetXY($maxX,$maxY); + $pdf->MultiCell(65,$lineheight,'Kennzeichen',1,'C',0); + $maxX +=65; + $pdf->SetXY($maxX,$maxY); + $pdf->MultiCell(65,$lineheight,'Gruppe',1,'C',0); + $maxX +=65; + //$pdf->SetXY($maxX,$maxY); + //$pdf->MultiCell(80,$lineheight,'Foto',1,'C',0); + +$qry = "SELECT + distinct vorname, nachname, matrikelnr, person_id, + tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe, + (SELECT rolle_kurzbz FROM public.tbl_prestudentrolle WHERE prestudent_id=tbl_student.prestudent_id ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status + FROM + campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid) + JOIN public.tbl_person USING(person_id) JOIN public.tbl_student ON(uid=student_uid) + LEFT JOIN public.tbl_studentlehrverband USING(student_uid) + WHERE + lehrveranstaltung_id='".addslashes($lvid)."' AND + vw_student_lehrveranstaltung.studiensemester_kurzbz='".addslashes($stsem)."' AND + tbl_studentlehrverband.studiensemester_kurzbz='".addslashes($stsem)."'"; + +if($lehreinheit_id!='') + $qry.=" AND lehreinheit_id='".addslashes($lehreinheit_id)."'"; + +$qry.=' ORDER BY nachname, vorname'; +$lineheight=80; +if($result = pg_query($conn, $qry)) +{ + $i=0; + while($elem = pg_fetch_object($result)) + { + //Abbrecher und Unterbrecher nicht anzeigen + if($elem->status!='Abbrecher' && $elem->status!='Unterbrecher') + { + $i++; + if($i%2) + $pdf->SetFillColor(190,190,190); + else + $pdf->SetFillColor(255,255,255); + + $pdf->SetFont('Arial','',10); + $maxY=$pdf->GetY(); + if($maxY>660) + { + $pdf->AddPage(); + $maxY=$pdf->GetY(); + } + + $maxX=30; + $pdf->SetXY($maxX,$maxY); + $pdf->MultiCell(20,$lineheight,$i,1,'R',1); + $maxX +=20; + $pdf->SetXY($maxX,$maxY); + $pdf->SetFont('Courier','B',10); + $pdf->MultiCell(130,$lineheight,$elem->nachname,1,'L',1); + $pdf->SetFont('Arial','',10); + $pdf->SetXY($maxX+strlen($elem->nachname)*6+2,$maxY); + if($elem->status=='Incoming') + $inc=' (i)'; + else + $inc=''; + $pdf->MultiCell(130,$lineheight,$elem->vorname.$inc,0,'L',0); + $maxX +=130; + $pdf->SetXY($maxX,$maxY); + $pdf->SetFont('Arial','',10); + $pdf->MultiCell(65,$lineheight,trim($elem->matrikelnr),1,'C',1); + $maxX +=65; + $pdf->SetXY($maxX,$maxY); + $pdf->MultiCell(65,$lineheight,$elem->semester.$elem->verband.$elem->gruppe,1,'C',1); + $maxX +=65; +// $pdf->SetXY($maxX,$maxY); +// $pdf->MultiCell(80,$lineheight,'',0,'L',1); + $pdf->Image(APP_ROOT."cis/public/bild.php?src=person&person_id=$elem->person_id",$maxX+1,$maxY+1,0,"78","jpg",""); + + $inhalt[]=array($i,$elem->nachname.' '.$elem->vorname,trim($elem->matrikelnr),$elem->semester.$elem->verband.$elem->gruppe,''); + } + } +} +$lineheight=10; +//Fussnote +$maxY=$pdf->GetY()+5; +$maxX=30; +$pdf->SetXY($maxX,$maxY); +$pdf->SetFont('Arial','',8); +$pdf->MultiCell(520,$lineheight,'(i) ... Incoming',0,'L',0); + +//FHStg +$maxY=$pdf->GetY()+5; +$maxX=30; +$pdf->SetXY($maxX,$maxY); +$pdf->SetFont('Arial','B',8); +$pdf->MultiCell(520,$lineheight,'Fachhochschulstudiengang ('.strtoupper($stgobj->typ).') '.$stgobj->bezeichnung,0,'L',0); + +//FHStg +$maxY=$pdf->GetY(); +$maxX=30; +$pdf->SetXY($maxX,$maxY); +$pdf->SetFont('Arial','',8); +$pdf->MultiCell(520,$lineheight,'Fehlt ein Student länger als 2 Wochen, bitte um einen deutlichen Vermerk auf der Anwesenheitsliste. Die Anwesenheitsliste bitte am Ende des Monats im Sekretariat abgeben! Bitte achten Sie darauf, dass Sie nur VOLLSTÄNDIG AUSGEFÜLLTE LISTEN abgeben!',0,'L',0); + + +$pdf->Output('anwesenheitsliste.pdf','I'); +?> \ No newline at end of file diff --git a/skin/images/tw_logo.gif b/skin/images/tw_logo.gif deleted file mode 100644 index 771015974..000000000 Binary files a/skin/images/tw_logo.gif and /dev/null differ diff --git a/skin/images/tw_logo.jpg b/skin/images/tw_logo.jpg deleted file mode 100644 index 3d7fe6815..000000000 Binary files a/skin/images/tw_logo.jpg and /dev/null differ

Urlaub im Geschäftsjahr $geschaeftsjahr

Anspruch$anspruch Tage   ( jährlich )
+ Resturlaub"; - echo "
"; - echo " Tage"; - echo ""; + if(date('m')>8 && date('m')<11) + { + echo ""; + echo " Tage"; + echo ""; + echo "
"; + } + else + { + echo "$resturlaubstage Tage"; + } echo "
   ( Stichtag: $datum_beginn )
- aktuell gebuchter Urlaub $gebuchterurlaub Tage   ( $datum_beginn - $datum_ende )
aktueller Stand".($anspruch+$resturlaubstage-$gebuchterurlaub)." Tage   ( Stichtag: $datum_ende )