, * Andreas Oesterreicher and * Rudolf Hangl . */ /******************************************************************************************************* * abgabe_lektor_benotung * abgabe_lektor_benotung ist die Benotungsoberfläche des Abgabesystems * für Diplom- und Bachelorarbeiten *******************************************************************************************************/ // Pfad zu fpdf define('FPDF_FONTPATH','../../include/pdf/font/'); // library einbinden require_once('../../include/pdf/fpdf.php'); require_once('../../cis/config.inc.php'); require_once('../../include/functions.inc.php'); require_once('../../include/datum.class.php'); require_once('../../include/person.class.php'); require_once('../../include/benutzer.class.php'); require_once('../../include/mitarbeiter.class.php'); require_once('../../include/pdf.inc.php'); error_reporting(E_ALL); ini_set('display_errors','1'); //DB Verbindung herstellen if (!$conn = @pg_pconnect(CONN_STRING)) die('Es konnte keine Verbindung zum Server aufgebaut werden.'); $getuid=get_uid(); $datum_obj = new datum(); $htmlstr = ""; $qualitaet=''; $form=''; $hintergrund=''; $punkte1=0; $punkteges1=''; $punkte2=0; $punkteges2=''; $punkte3=0; $punkteges3=''; $summe1=''; $summe2=''; $note=''; $weight1=''; $weight2=''; $weight3=''; $stgbezeichnung=''; $stgtyp=''; $projektarbeit_id=''; $uid=''; $titel=''; $beurteiler=''; $ende=''; function getmax($val1,$val2) { return ($val1>$val2)?$val1:$val2; } if(!isset($_POST['projektarbeit_id'])) { $uid = (isset($_GET['uid'])?$_GET['uid']:'-1'); $projektarbeit_id = (isset($_GET['projektarbeit_id'])?$_GET['projektarbeit_id']:'-1'); $titel = (isset($_GET['titel'])?$_GET['titel']:'-1'); } else { $projektarbeit_id=(isset($_POST['projektarbeit_id'])?$_POST['projektarbeit_id']:'-1'); $uid=(isset($_POST['uid'])?$_POST['uid']:'-1'); $titel=(isset($_POST['titel'])?$_POST['titel']:''); $studiengang=(isset($_POST['studiengang'])?$_POST['studiengang']:''); $stgtyp=(isset($_POST['stgtyp'])?$_POST['stgtyp']:''); $autor=(isset($_POST['autor'])?$_POST['autor']:''); $perskz=(isset($_POST['perskz'])?$_POST['perskz']:''); $qualitaet=(isset($_POST['qualitaet'])?$_POST['qualitaet']:''); $form=(isset($_POST['form'])?$_POST['form']:''); $hintergrund=(isset($_POST['hintergrund'])?$_POST['hintergrund']:''); $punkte1=(isset($_POST['punkte1'])?$_POST['punkte1']:''); $punkteges1=(isset($_POST['punkteges1'])?$_POST['punkteges1']:''); $punkte2=(isset($_POST['punkte2'])?$_POST['punkte2']:''); $punkteges2=(isset($_POST['punkteges2'])?$_POST['punkteges2']:''); $punkte3=(isset($_POST['punkte3'])?$_POST['punkte3']:''); $punkteges3=(isset($_POST['punkteges3'])?$_POST['punkteges3']:''); $summe1=(isset($_POST['summe1'])?$_POST['summe1']:''); $summe2=(isset($_POST['summe2'])?$_POST['summe2']:''); $note=(isset($_POST['note'])?$_POST['note']:''); $ende=(isset($_POST['ende'])?$_POST['ende']:''); //Ausdruck generieren //PDF erzeugen $pdf = new PDF('P','pt'); $pdf->Open(); $pdf->AddPage(); $pdf->AliasNbPages(); $pdf->SetFillColor(111,111,111); $pdf->SetXY(30,30); //Logo $pdf->Image("../../skin/images/logo.jpg","400","25","160","54","jpg",""); $pdf->SetFont('Arial','',12); $pdf->SetFillColor(190,190,190); $pdf->SetXY(40,80); $pdf->SetFont('Arial','',10); $pdf->MultiCell(0,15,'Studiengang: '); $pdf->SetXY(40,95); $pdf->SetFont('Arial','',12); $pdf->MultiCell(0,15,$stgtyp.'studiengang '.$studiengang); $pdf->SetFont('Arial','',14); $pdf->SetXY(40,115); if($stgtyp=='Bachelor') { $pdf->MultiCell(0,15,'Beurteilung Bachelorarbeit'); } else { $pdf->MultiCell(0,15,'Beurteilung Diplomarbeit'); } $qry_beu="SELECT * FROM public.tbl_person JOIN public.tbl_benutzer using(person_id) WHERE uid='".$getuid."';"; if(!$erg_beu=pg_query($conn, $qry_beu)) { die('Fehler beim Laden des Betreuernamens'); } else { if($row_beu=@pg_fetch_object($erg_beu)) { $beurteiler=trim($row_beu->titelpre.' '.$row_beu->vorname.' '.$row_beu->nachname.' '.$row_beu->titelpost); } else { die('Betreuer nicht gefunden!'); } } //Zeile Titel $pdf->SetFont('Arial','',12); $maxY=$pdf->GetY()+5; $maxX=30; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(80,42,'Titel',1,'L',0); $maxX +=80; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(450,14,$titel,0,'L',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(450,42,'',1,'L',0); //Autor $maxY=$pdf->GetY(); $maxX=30; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(80,14,'Autor',1,'L',0); $maxX +=80; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(291,14,$autor,1,'L',0); $maxX +=291; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(159,14,trim('Personenkz.: '),1,'L',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(159,14,trim($perskz),0,'R',0); //Zeile Beurteilt von $maxY=$pdf->GetY(); $maxX=30; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(80,14,'Beurteilt von',1,'L',0); $maxX +=80; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(291,14,$beurteiler,1,'L',0); $maxX +=291; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(159,14,'Datum.: ',1,'L',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(159,14,date('d.m.Y',mktime(0, 0, 0, date("m") , date("d"), date("Y"))),1,'R',0); //Feld Beurteilung //Zeile Überschrift $pdf->SetFont('Arial','',9); $maxY=$pdf->GetY()+2; $maxX=30; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(159,36,'',1,'L',0); $maxX +=159; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(212,36,'Kurze verbale Beurteilung',1,'C',0); $maxX +=212; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,12,'Punkte (0-100)',0,'C',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,36,'',1,'L',0); $maxX +=53; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,12,'Gewicht',0,'C',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,36,'',1,'L',0); $maxX +=53; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,12,' Punkte * Gewicht',0,'C',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,36,'',1,'L',0); //Zeile Qualität $pdf->SetFont('Arial','',9); if($stgtyp=='Bachelor') { $maxY=$pdf->GetY(); $maxX=30; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(159,12,"Qualität des eigenen Beitrags\nAngewandte Methodik, z.B.\n - wissenschaftlich fundierte,\n systematische, ingenieurmäßige\n Vorgangsweise\n - Ist der eigene Beitrag\n deutlich sichtbar?\n - Qualität der Lösung",0,'L',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(159,144,'',1,'L',0); $maxX +=159; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(212,12,$qualitaet,0,'L',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(212,144,'',1,'L',0); $maxX +=212; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,12,$punkte1,0,'C',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,144,'',1,'L',0); $maxX +=53; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,12,'0.60',0,'C',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,144,'',1,'L',0); $maxX +=53; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,12,$punkteges1,0,'C',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,144,'',1,'L',0); } else { $maxY=$pdf->GetY(); $maxX=30; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(159,12,"Qualität des eigenen Beitrags\nAngewandte Methodik, z.B.\n - Projektmäßige Vorgehensweise\n - Wissenschaftlich - systematische\n Methoden in der Analyse\n bzw. Lösungsfindung",0,'L',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(159,144,'',1,'L',0); $maxX +=159; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(212,12,$qualitaet,0,'L',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(212,144,'',1,'L',0); $maxX +=212; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,12,$punkte1,0,'C',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,144,'',1,'L',0); $maxX +=53; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,12,'0.55',0,'C',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,144,'',1,'L',0); $maxX +=53; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,12,$punkteges1,0,'C',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,144,'',1,'L',0); } //Zeile Form $pdf->SetFont('Arial','',9); if($stgtyp=='Bachelor') { $maxY=$pdf->GetY(); $maxX=30; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(159,12,"Form / Stil\n - Hat die Bachelorarbeit eine\n klare Struktur, entspricht der\n Vorgabe\n - Wird einwandfrei zitiert\n - Abbildungen\n - Sprache",0,'L',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(159,144,'',1,'L',0); $maxX +=159; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(212,12,$form,0,'L',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(212,144,'',1,'L',0); $maxX +=212; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,12,$punkte2,0,'C',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,144,'',1,'L',0); $maxX +=53; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,12,'0.40',0,'C',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,144,'',1,'L',0); $maxX +=53; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,12,$punkteges2,0,'C',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,144,'',1,'L',0); } else { $maxY=$pdf->GetY(); $maxX=30; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(159,12,"Form / Stil\n - Hat die Diplomarbeit eine\n klare Struktur, entspricht der\n Vorgabe\n - Wird einwandfrei zitiert\n - Abbildungen\n - Sprache: benötigte Überarbeitung\n seitens der Betreuerin / \n des Betreuers",0,'L',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(159,144,'',1,'L',0); $maxX +=159; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(212,12,$form,0,'L',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(212,144,'',1,'L',0); $maxX +=212; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,12,$punkte2,0,'C',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,144,'',1,'L',0); $maxX +=53; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,12,'0.20',0,'C',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,144,'',1,'L',0); $maxX +=53; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,12,$punkteges2,0,'C',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,144,'',1,'L',0); } //Zeile Hintergrundinfo $pdf->SetFont('Arial','',9); if($stgtyp=='Bachelor') { } else { $maxY=$pdf->GetY(); $maxX=30; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(159,12,"Qualität der Hintergrundinformation\n - werden Gesamtzusammenhänge\n erkannt, wird Bedeutung\n und Gewicht der Einflussfaktoren\n /Daten/Informationen richtig\n bewertet\n - Intelligente Darstellung des\n relevanten Stands der Technik\n und des Firmenumfelds\n - Aufdecken und Darstellen von\n größeren (z.B. wirtschaftlichen\n oder sozialen) Zusammenhängen\n und entsprechende Diskussion",0,'L',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(159,156,'',1,'L',0); $maxX +=159; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(212,12,$hintergrund,0,'L',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(212,156,'',1,'L',0); $maxX +=212; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,12,$punkte3,0,'C',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,156,'',1,'L',0); $maxX +=53; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,12,'0.25',0,'C',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,156,'',1,'L',0); $maxX +=53; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,12,$punkteges3,0,'C',0); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,156,'',1,'L',0); } //Zeile Gesamtpunkte $maxY=$pdf->GetY(); $maxX=30; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(371,12,'Gesamtpunkte',1,'L',0); $maxX +=371; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,12,$summe1,1,'C',0); $maxX +=53; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,12,'1',1,'C',0); $maxX +=53; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(53,12,$summe2,1,'C',0); //Feld Umrechnung Punkte=>Note $pdf->SetFont('Arial','',7); if($stgtyp=='Bachelor') { $maxY=680; } else { $maxY=705; } $maxX=160; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(80,12,'0 - 50 Punkte = 5',1,'C',0); $maxX +=80; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(80,12,'51 - 64 Punkte = 4',1,'C',0); $maxX +=80; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(80,12,'65 - 77 Punkte = 3',1,'C',0); $maxX +=80; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(80,12,'78 - 90 Punkte = 2',1,'C',0); $maxX +=80; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(80,12,'91 - 100 Punkte = 1',1,'C',0); $maxY=$pdf->GetY(); $maxX=160; $pdf->SetXY($maxX,$maxY); if($stgtyp=='Bachelor') { $pdf->MultiCell(240,12,'1 Gruppe < 50 Punkte => Bachelorarbeit gesamt negativ',1,'L',0); } else { $pdf->MultiCell(240,12,'1 Gruppe < 50 Punkte => Diplomarbeit gesamt negativ',1,'L',0); } $maxX +=240; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(80,12,'',1,'C',0); $maxX +=80; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(80,12,'',1,'C',0); //Zeile Note undUnterschrift $pdf->SetFont('Arial','',10); $maxY=760; $maxX=+40; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(80,12,'Note: '.$note,0,'L',0); $maxX=+40; $maxY=$pdf->GetY(); $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(160,12,'Letzter Abgabetermin: '.$datum_obj->formatDatum($ende,'d.m.Y'),0,'L',0); $maxX +=300; $pdf->SetXY($maxX,$maxY); $pdf->MultiCell(240,12,"Unterschrift:__________________________",0,'C',0); $maxY=$pdf->GetY(); $pdf->footerset[1]=1; $pdf->Output('Beurteilung.pdf','I'); } $sql_query = "SELECT * FROM (SELECT DISTINCT ON(tbl_projektarbeit.projektarbeit_id) tbl_studiengang.bezeichnung as stgbezeichnung, tbl_studiengang.typ as stgtyp, * FROM lehre.tbl_projektarbeit LEFT JOIN lehre.tbl_projektbetreuer using(projektarbeit_id) LEFT JOIN public.tbl_benutzer on(uid=student_uid) LEFT JOIN public.tbl_student on(tbl_benutzer.uid=tbl_student.student_uid) LEFT JOIN public.tbl_person on(tbl_benutzer.person_id=tbl_person.person_id) LEFT JOIN lehre.tbl_lehreinheit using(lehreinheit_id) LEFT JOIN lehre.tbl_lehrveranstaltung using(lehrveranstaltung_id) LEFT JOIN public.tbl_studiengang on(tbl_lehrveranstaltung.studiengang_kz=tbl_studiengang.studiengang_kz) WHERE (projekttyp_kurzbz='Bachelor' OR projekttyp_kurzbz='Diplom') AND tbl_projektbetreuer.person_id IN (SELECT person_id FROM public.tbl_benutzer WHERE public.tbl_benutzer.person_id=lehre.tbl_projektbetreuer.person_id AND public.tbl_benutzer.uid='$getuid') AND lehre.tbl_projektarbeit.note IS NULL AND lehre.tbl_projektarbeit.projektarbeit_id=".$projektarbeit_id." ORDER BY tbl_projektarbeit.projektarbeit_id, betreuerart_kurzbz desc) as xy ORDER BY nachname"; if(!$erg=pg_query($conn, $sql_query)) { die('Fehler beim Laden der Betreuungen'); } else { if($row=@pg_fetch_object($erg)) { echo ' DA/BA-Benotung '; $htmlstr = "
"; $htmlstr .= "\n"; $htmlstr .= ""; $htmlstr .= ""; $htmlstr .= ""; $htmlstr .= "\n"; $htmlstr .= "\n"; if($row->projekttyp_kurzbz!='Bachelor') { $htmlstr .= ""; $weight1='0.55'; } else { $htmlstr .= ""; $weight1='0.6'; } $htmlstr .= "\n \n"; if($row->projekttyp_kurzbz!='Bachelor') { $htmlstr.=""; } else { $htmlstr.=""; } $htmlstr .="\n"; if($row->projekttyp_kurzbz!='Bachelor') { $htmlstr .= "\n"; $weight2='0.2'; } else { $htmlstr .= "\n"; $weight2='0.4'; } $htmlstr .= "\n"; if($row->projekttyp_kurzbz!='Bachelor') { $htmlstr .=""; } else { $htmlstr .=""; } $htmlstr .="\n"; if($row->projekttyp_kurzbz!='Bachelor') { $htmlstr .= "\n \n "; } else { $htmlstr .= " \n \n \n"; } $htmlstr .= ""; $htmlstr .=""; $htmlstr .= ""; $htmlstr .="
Student: ".$uid.", ".$row->vorname." ".$row->nachname."
Titel: ".$titel.""; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; if($row->stgtyp=='b') { $stgtyp='Bachelor'; } elseif($row->stgtyp=='m') { $stgtyp='Master'; } elseif($row->stgtyp=='d') { $stgtyp='Diplom'; } else { $stgtyp=''; } $htmlstr .= "\n"; $htmlstr .= "
 Kurze verbale BeurteilungPunkte (0-100)GewichtPunkte * Gewicht
Qualität des eigenen Beitrags
Angewandte Methodik, z.B.

Projektmäßige Vorgangsweise
Wissenschaftlich - systematische Methoden in der Analyse bzw. Lösungsfindung
Art der Problemlösung
Wurde das Problem tatsächlich gelöst?
Eigenständigkeit und Kreativität der Lösung
Ist der eigene Beitrag deutlich sichtbar?
Technische Qualität der Lösung
Qualität des eigenen Beitrags
Angewandte Methodik, z.B.

wissenschaftlich fundierte, systematische, ingenieurmäßige Vorgangsweise
Ist der eigene Beitrag deutlich sichtbar?
Eigenständigkeit und Kreativität der Lösung
Ist der eigene Beitrag deutlich sichtbar?
Qualität der Lösung

Buchstaben noch zur Verfügung
0.550.60
Form / Stil
Hat die Diplomarbeit eine klare Stuktur, entspricht der Vorgabe?
Wird einwandfrei zitiert?
Abbildungen
Sprache: benötigte Überarbeitungen seitens der Betreuerin / des Betreuers

Buchstaben noch zur Verfügung
Form / Stil
Hat die Bachelorarbeit eine klare Stuktur, entspricht der Vorgabe?
Wird einwandfrei zitiert?
Abbildungen
Sprache

Buchstaben noch zur Verfügung
0.200.40
Qualität der Hintergrundinformation
Werden Gesamtzusammenhänge erkannt, wird Bedeutung und Gewicht der Einflussfaktoren / Daten / Informationen richtig bewertet?
Intelligente Darstellung des relevanten Stands der Technik und des Firmenumfelds
Aufdecken und Darstellen von größeren (z.B. wirtschaftlichen und sozialen) Zusammenhängen und entsprechende Diskussion

Buchstaben noch zur Verfügung
0.25
Gesamtpunkte 1
Note
"; $htmlstr .= "
"; $htmlstr .= ""; if($row->projekttyp_kurzbz!='Bachelor') { $htmlstr .= ""; } else { $htmlstr .= ""; } $htmlstr .= "
0 - 50 Punkte = 551 - 64 Punkte = 465 - 77 Punkte = 378 - 90 Punkte = 291 - 100 Punkte = 1
Ein Kriterium mit weniger als 50 Punkten ⇒ Diplomarbeit gesamt negativ
Ein Kriterium mit weniger als 50 Punkten ⇒ Bachelorarbeit gesamt negativ
"; $htmlstr .= "
"; $htmlstr .=""; $htmlstr .=""; echo $htmlstr; } else { die('Betreuung nicht gefunden!'); } } echo ''; ?>