diff --git a/content/ToDo_FASo.html b/content/ToDo_FASo.html
index 0efd09aa1..14aca2bec 100644
--- a/content/ToDo_FASo.html
+++ b/content/ToDo_FASo.html
@@ -13,6 +13,8 @@
+ - Anwesenheitslisten/Kontrolllisten mit Fotos
+
- Gruppierung von Interessenten
- Projektarbeit - "Betreuer einer Projekt- und Diplomarbeit"
diff --git a/content/pdfExport.php b/content/pdfExport.php
index 0f2a5299e..0a1addac0 100644
--- a/content/pdfExport.php
+++ b/content/pdfExport.php
@@ -82,6 +82,8 @@ if(isset($_GET['uid']))
$params.='&uid='.$_GET['uid'];
if(isset($_GET['person_id']))
$params.='&person_id='.$_GET['person_id'];
+if(isset($_GET['prestudent_id']))
+ $params.='&prestudent_id='.$_GET['prestudent_id'];
if(isset($_GET['buchungsnummern']))
$params.='&buchungsnummern='.$_GET['buchungsnummern'];
if(isset($_GET['stg_kz']))
diff --git a/content/statistik/anwesenheitsliste.php b/content/statistik/anwesenheitsliste.php
new file mode 100644
index 000000000..9b0bdc359
--- /dev/null
+++ b/content/statistik/anwesenheitsliste.php
@@ -0,0 +1,141 @@
+,
+ * Andreas Oesterreicher and
+ * Rudolf Hangl .
+ */
+/*
+ * Generiert eine Anwesenheitsliste mit Fotos
+ */
+require_once('../../vilesci/config.inc.php');
+require_once('../../include/functions.inc.php');
+require_once('../../include/datum.class.php');
+require_once('../../include/studiengang.class.php');
+
+if (!$conn = pg_pconnect(CONN_STRING))
+ $error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!';
+
+$stg_obj = new studiengang($conn);
+$stg_obj->getAll('typ, kurzbzlang', false);
+
+ //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']:'');
+
+if(isset($_GET['prestudent_id']))
+{
+ $ids = explode(';',$_GET['prestudent_id']);
+ $idstring='';
+
+ foreach ($ids as $id)
+ {
+ if($idstring!='')
+ $idstring.=',';
+ $idstring.="'$id'";
+ }
+ $qry = "SELECT * FROM (SELECT distinct on(person_id) foto, vorname, nachname, person_id, prestudent_id, tbl_prestudent.studiengang_kz, semester, verband, gruppe FROM public.tbl_person JOIN public.tbl_prestudent USING(person_id) LEFT JOIN public.tbl_student USING(prestudent_id) WHERE prestudent_id in($idstring)) foo ORDER BY nachname, vorname";
+}
+else
+{
+ $qry = "SELECT * FROM (SELECT
+ distinct on(person_id) foto, vorname, nachname, person_id, tbl_studentlehrverband.studiengang_kz, tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe
+ 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 person_id) foo ORDER BY nachname, vorname';
+}
+
+echo '
+Anwesenheitsliste
+
+';
+
+if($result = pg_query($conn, $qry))
+{
+ echo '
';
+ echo '| Foto | Nachname | Vorname | Gruppe |
';
+ $i=0;
+ while($row = pg_fetch_object($result))
+ {
+ $i++;
+ echo '';
+ if($row->foto!='')
+ echo " | ";
+ else
+ echo " | ";
+ echo "$row->nachname | ";
+ echo "$row->vorname | ";
+ echo "".$stg_obj->kuerzel_arr[$row->studiengang_kz]."-$row->semester$row->verband$row->gruppe | ";
+
+ echo '
';
+ }
+ echo '
';
+}
+
+echo '';
+?>
\ No newline at end of file
diff --git a/include/xslfo2pdf/fo_block.php b/include/xslfo2pdf/fo_block.php
index f7dc2534c..baba76300 100644
--- a/include/xslfo2pdf/fo_block.php
+++ b/include/xslfo2pdf/fo_block.php
@@ -209,7 +209,10 @@ class FO_ExternalGraphic extends FO_Block
$height = $this->getContext("height");
$x = $this->getContext("posx");
$y = $this->getContext("posy");
-
+ if($x=='')
+ $x = $this->getContext("x")+1;
+ if($y=='')
+ $y = $this->getContext("y")+1;
$pdf->Image($src, $x, $y, $width, $height, "jpg","");
}
}
diff --git a/include/xslfo2pdf/fpdf/myfpdf.php b/include/xslfo2pdf/fpdf/myfpdf.php
index 70e713c9d..5ea829a36 100644
--- a/include/xslfo2pdf/fpdf/myfpdf.php
+++ b/include/xslfo2pdf/fpdf/myfpdf.php
@@ -225,7 +225,7 @@ class MyPdf extends FPDF {
$showLine = substr($line, 0, $noc);
$textWidth = $this->GetStringWidth($showLine);
//echo "showline: $showLine
";
- // echo "wmax:$nb:$x:$w:$textWidth:$showLine
";
+ //echo "nb:$nb x:$x w:$w textwidth:$textWidth showline:$showLine
";
switch ($align)
{
case "R":