Abgabetool anpassung an Mehrsprachigkeit

Planner - Phasen bearbeiten
This commit is contained in:
Andreas Österreicher
2011-08-18 14:59:42 +00:00
parent 9a40db812f
commit a5dc46e4b5
20 changed files with 934 additions and 615 deletions
+56 -55
View File
@@ -26,25 +26,28 @@
* fuer Diplom- und Bachelorarbeiten
*******************************************************************************************************/
require_once('../../../config/cis.config.inc.php');
require_once('../../../config/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/phrasen.class.php');
// ------------------------------------------------------------------------------------------
// Datenbankanbindung
// ------------------------------------------------------------------------------------------
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');
if (!$db = new basis_db())
die('Fehler beim Herstellen der Datenbankverbindung');
$getuid=get_uid();
$htmlstr = "";
$showall=isset($_GET['showall']);
if (!$db = new basis_db())
die('Fehler beim Herstellen der Datenbankverbindung');
$sql_query = "SELECT * FROM (SELECT DISTINCT ON(tbl_projektarbeit.projektarbeit_id) * FROM lehre.tbl_projektarbeit LEFT JOIN lehre.tbl_projektbetreuer using(projektarbeit_id)
$getuid=get_uid();
$sprache = getSprache();
$p = new phrasen($sprache);
$htmlstr = "";
$showall=isset($_GET['showall']);
$sql_query = "SELECT * FROM (SELECT DISTINCT ON(tbl_projektarbeit.projektarbeit_id) * 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(public.tbl_benutzer.uid=public.tbl_student.student_uid)
LEFT JOIN public.tbl_person on(tbl_benutzer.person_id=tbl_person.person_id)
@@ -54,7 +57,7 @@
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 public.tbl_benutzer.uid='".addslashes($getuid)."')
AND public.tbl_benutzer.aktiv ".($showall?'':' AND lehre.tbl_projektarbeit.note IS NULL ')."
AND (betreuerart_kurzbz='Betreuer' OR betreuerart_kurzbz='Begutachter' OR betreuerart_kurzbz='Erstbegutachter'
OR betreuerart_kurzbz='Zweitbegutachter' OR betreuerart_kurzbz='Erstbetreuer')
@@ -63,23 +66,22 @@
if(!$erg=$db->db_query($sql_query))
{
$errormsg='Fehler beim Laden der Betreuungen';
$errormsg=$p->t('global/fehlerBeimLesenAusDatenbank');
}
else
{
//$htmlstr .= "<form name='formular'><input type='hidden' name='check' value=''></form>";
$htmlstr .= "<form name='multitermin' action='abgabe_lektor_multitermin.php' title='Serientermin' target='al_detail' method='POST'>";
$htmlstr .= "<table id='t1' class='liste table-autosort:4 table-stripeclass:alternate table-autostripe'>\n";
$htmlstr .= "<thead><tr class='liste'>\n";
$htmlstr .= "<th></th><th class='table-sortable:default'>UID / Personenkennz.</th>
<th>Email</th>
<th class='table-sortable:default'>Vorname</th>
<th class='table-sortable:alphanumeric'>Nachname</th>";
$htmlstr .= "<th class='table-sortable:alphanumeric'>Typ</th>
<th class='table-sortable:alphanumeric'>Stg.</th>
<th class='table-sortable:alphanumeric'>Sem.</th>
<th>Titel</th>
<th class='table-sortable:alphanumeric'>Betreuerart</th>";
$htmlstr .= "<th></th><th class='table-sortable:default'>".$p->t('global/uid').' / '.$p->t('global/personenkz')."</th>
<th>".$p->t('global/mail')."</th>
<th class='table-sortable:default'>".$p->t('global/vorname')."</th>
<th class='table-sortable:alphanumeric'>".$p->t('global/nachname')."</th>";
$htmlstr .= "<th class='table-sortable:alphanumeric'>".$p->t('abgabetool/typ')."</th>
<th class='table-sortable:alphanumeric'>".$p->t('global/stg')."</th>
<th class='table-sortable:alphanumeric'>".$p->t('global/sem')."</th>
<th>".$p->t('abgabetool/titel')."</th>
<th class='table-sortable:alphanumeric'>".$p->t('abgabetool/betreuerart')."</th>";
$htmlstr .= "</tr></thead><tbody>\n";
$i = 0;
while($row=$db->db_fetch_object($erg))
@@ -99,38 +101,37 @@ else
$i++;
}
$htmlstr .= "</tbody></table>\n";
$htmlstr .= "<table><tr><td rowspan=3><input type='submit' name='multi' value='Terminserie anlegen' title='Termin f&uuml;r mehrere Personen anlegen.'></td></tr></table>\n";
$htmlstr .= "<table><tr><td rowspan=3><input type='submit' name='multi' value='".$p->t('abgabetool/terminserieAnlegen')."' title='".$p->t('abgabetool/terminserieAnlegenHelp')."'></td></tr></table>\n";
$htmlstr .= "</form>";
}
?>
echo '
<html>
<head>
<title>Abgabesystem_Lekorensicht</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../../include/js/tablesort/table.css" type="text/css">
<script src="../../../include/js/tablesort/table.js" type="text/javascript"></script>
<script language="JavaScript" type="text/javascript">
function confdel()
{
if(confirm("Diesen Datensatz wirklick loeschen?"))
return true;
return false;
}
</script>
</head>
<head>
<title>'.$p->t('abgabetool/abgabetool').'</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../../include/js/tablesort/table.css" type="text/css">
<script src="../../../include/js/tablesort/table.js" type="text/javascript"></script>
<script language="JavaScript" type="text/javascript">
function confdel()
{
if(confirm("'.$p->t('global/warnungWirklichLoeschen').'"))
return true;
return false;
}
</script>
</head>
<body class="background_main">
<?php
echo "<h2>Bachelor-/Diplomarbeitsbetreuungen ($getuid) <div style='float:right'><a href='../../private/info/handbuecher/abgabetool_lektoren.pdf' target='_blank'><img src='../../../skin/images/information.png' alt='Anleitung' title='Anleitung BaDa-Abgabe' border=0>&nbsp;Handbuch</a></div></h2>";
<body class="background_main">';
echo "<h2><div style='float: left'>".$p->t('abgabetool/ueberschrift')." ($getuid) </div><div style='text-align:right'><a href='../../private/info/handbuecher/abgabetool_lektoren.pdf' target='_blank'><img src='../../../skin/images/information.png' alt='Anleitung' title='Anleitung BaDa-Abgabe' border=0>&nbsp;".$p->t('global/handbuch')."</a></div></h2>";
echo $htmlstr;
echo '<a href="'.$_SERVER['PHP_SELF'].'?showall">- alle betreuten Arbeiten anzeigen</a><br />';
echo '<a href="abgabe_lektor_terminuebersicht.php" target="_blank">- Terminübersicht anzeigen</a>';
?>
echo '<a href="'.$_SERVER['PHP_SELF'].'?showall">- '.$p->t('abgabetool/alleArbeitenAnzeigen').'</a><br />';
echo '<a href="abgabe_lektor_terminuebersicht.php" target="_blank">- '.$p->t('abgabetool/terminuebersichtAnzeigen').'</a>';
</body>
</html>
echo '</body>
</html>';
?>
+78 -64
View File
@@ -37,8 +37,12 @@ require_once('../../../include/datum.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/mail.class.php');
if (!$db = new basis_db())
$db=false;
require_once('../../../include/phrasen.class.php');
if (!$db = new basis_db())
$db=false;
$sprache = getSprache();
$p = new phrasen($sprache);
$fixtermin=false;
@@ -100,28 +104,28 @@ if(isset($_GET['id']) && isset($_GET['uid']))
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Abgabe Lektor Details</title>
<link rel="stylesheet" href="../../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../../include/js/tablesort/table.css" type="text/css">
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<script src="../../../include/js/tablesort/table.js" type="text/javascript"></script>
<script language="Javascript">
function confdel()
{
return confirm("Wollen Sie diesen Eintrag wirklich loeschen");
}
</script>
</head>
<head>
<title>'.$p->t('abgabetool/abgabetool').'</title>
<link rel="stylesheet" href="../../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../../include/js/tablesort/table.css" type="text/css">
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<script src="../../../include/js/tablesort/table.js" type="text/javascript"></script>
<script language="Javascript">
function confdel()
{
return confirm("'.$p->t('global/warnungWirklichLoeschen').'");
}
</script>
</head>
<body class="Background_main" style="background-color:#eeeeee;">
<h3>Abgabe Lektorenbereich</h3>';
<h3>'.$p->t('abgabetool/abgabeLektorenbereich').'</h3>';
// Speichern eines Termines
if(isset($_POST["schick"]))
{
if($datum)
{
$qry_std="SELECT * FROM campus.vw_benutzer where uid='$uid'";
$qry_std="SELECT * FROM campus.vw_benutzer where uid='".addslashes($uid)."'";
if(!$result_std=$db->db_query($qry_std))
{
echo "<font color=\"#FF0000\">Student konnte nicht gefunden werden!</font><br>&nbsp;";
@@ -132,7 +136,7 @@ if(isset($_POST["schick"]))
if($command=='insert')
{
$qrychk="SELECT * FROM campus.tbl_paabgabe
WHERE projektarbeit_id='$projektarbeit_id' AND paabgabetyp_kurzbz='$paabgabetyp_kurzbz' AND fixtermin=".($fixtermin==1?'true':'false')." AND datum='$datum' AND kurzbz='$kurzbz'";
WHERE projektarbeit_id='".addslashes($projektarbeit_id)."' AND paabgabetyp_kurzbz='".addslashes($paabgabetyp_kurzbz)."' AND fixtermin=".($fixtermin==1?'true':'false')." AND datum='".addslashes($datum)."' AND kurzbz='".addslashes($kurzbz)."'";
if($result=$db->db_query($qrychk))
{
if($db->db_num_rows($result)>0)
@@ -143,16 +147,16 @@ if(isset($_POST["schick"]))
{
//neuer Termin
$qry="INSERT INTO campus.tbl_paabgabe (projektarbeit_id, paabgabetyp_kurzbz, fixtermin, datum, kurzbz, abgabedatum, insertvon, insertamum, updatevon, updateamum)
VALUES ('$projektarbeit_id', '$paabgabetyp_kurzbz', ".($fixtermin==1?'true':'false').", '$datum', '$kurzbz', NULL, '$user', now(), NULL, NULL)";
VALUES ('".addslashes($projektarbeit_id)."', '".addslashes($paabgabetyp_kurzbz)."', ".($fixtermin==1?'true':'false').", '".addslashes($datum)."', '".addslashes($kurzbz)."', NULL, '".addslashes($user)."', now(), NULL, NULL)";
//echo $qry;
if(!$result=$db->db_query($qry))
{
echo "<font color=\"#FF0000\">Termin konnte nicht eingetragen werden!</font><br>&nbsp;";
echo "<span class=\"error\">".$p->t('global/fehleraufgetreten')."</span><br>&nbsp;";
}
else
{
$row=@$db->db_fetch_object($result);
$qry_typ="SELECT bezeichnung FROM campus.tbl_paabgabetyp WHERE paabgabetyp_kurzbz='".$paabgabetyp_kurzbz."'";
$qry_typ="SELECT bezeichnung FROM campus.tbl_paabgabetyp WHERE paabgabetyp_kurzbz='".addslashes($paabgabetyp_kurzbz)."'";
if($result_typ=$db->db_query($qry_typ))
{
$row_typ=@$db->db_fetch_object($result_typ);
@@ -165,11 +169,11 @@ if(isset($_POST["schick"]))
"Sehr geehrte".($row_std->anrede=="Herr"?"r":"")." ".$row_std->anrede." ".trim($row_std->titelpre." ".$row_std->vorname." ".$row_std->nachname." ".$row_std->titelpost)."!\n\nIhr(e) Betreuer(in) hat einen neuen Termin angelegt:\n".$datum_obj->formatDatum($datum,'d.m.Y').", ".$row_typ->bezeichnung.", ".$kurzbz."\n\nMfG\nIhr(e) Betreuer(in)\n\n--------------------------------------------------------------------------\nDies ist ein vom Bachelor-/Diplomarbeitsabgabesystem generiertes Info-Mail\ncis->Mein CIS->Bachelor- und Diplomarbeitsabgabe\n--------------------------------------------------------------------------");
if(!$mail->send())
{
echo "<font color=\"#FF0000\">Fehler beim Versenden des Mails an den Studierenden!</font><br>&nbsp;";
echo "<font color=\"#FF0000\">".$p->t('abgabetool/fehlerMailStudent')."</font><br>&nbsp;";
}
else
{
echo "Mail verschickt an: ".trim($row_std->titelpre." ".$row_std->vorname." ".$row_std->nachname." ".$row_std->titelpost)."<br>";
echo $p->t('abgabetool/mailVerschicktAn').": ".trim($row_std->titelpre." ".$row_std->vorname." ".$row_std->nachname." ".$row_std->titelpost)."<br>";
}
}
$command='';
@@ -177,23 +181,23 @@ if(isset($_POST["schick"]))
}
else
{
echo "Datenbank-Zugriffsfehler!";
echo $p->t('global/fehlerBeimLesenAusDatenbank');
}
}
if($command=='update')
{
//Terminänderung
//Ermittlung der alten Daten
$qry_old="SELECT * FROM campus.tbl_paabgabe WHERE paabgabe_id='".$paabgabe_id."' AND insertvon='$user'";
$qry_old="SELECT * FROM campus.tbl_paabgabe WHERE paabgabe_id='".addslashes($paabgabe_id)."' AND insertvon='".addslashes($user)."'";
if(!$result_old=$db->db_query($qry_old))
{
echo "<font color=\"#FF0000\">Termin konnte nicht gefunden werden!</font><br>&nbsp;";
echo "<font color=\"#FF0000\">".$p->t('abgabetool/terminNichtGefunden')."</font><br>&nbsp;";
}
else
{
$row_old=@$db->db_fetch_object($result_old);
//Abgabetyp
$qry_told="SELECT bezeichnung FROM campus.tbl_paabgabetyp WHERE paabgabetyp_kurzbz='".$row_old->paabgabetyp_kurzbz."'";
$qry_told="SELECT bezeichnung FROM campus.tbl_paabgabetyp WHERE paabgabetyp_kurzbz='".addslashes($row_old->paabgabetyp_kurzbz)."'";
if($result_told=$db->db_query($qry_told))
{
$row_told=@$db->db_fetch_object($result_told);
@@ -204,23 +208,23 @@ if(isset($_POST["schick"]))
}
//Termin updaten
$qry="UPDATE campus.tbl_paabgabe SET
projektarbeit_id = '".$projektarbeit_id."',
paabgabetyp_kurzbz = '".$paabgabetyp_kurzbz."',
projektarbeit_id = '".addslashes($projektarbeit_id)."',
paabgabetyp_kurzbz = '".addslashes($paabgabetyp_kurzbz)."',
fixtermin = ".($fixtermin==1?'true':'false').",
datum = '".$datum."',
kurzbz = '".$kurzbz."',
updatevon = '".$user."',
datum = '".addslashes($datum)."',
kurzbz = '".addslashes($kurzbz)."',
updatevon = '".addslashes($user)."',
updateamum = now()
WHERE paabgabe_id='".$paabgabe_id."' AND insertvon='$user'";
WHERE paabgabe_id='".addslashes($paabgabe_id)."' AND insertvon='".addslashes($user)."'";
//echo $qry;
if(!$result=$db->db_query($qry))
{
echo "<font color=\"#FF0000\">Termin&auml;nderung konnte nicht eingetragen werden!</font><br>&nbsp;";
echo "<font color=\"#FF0000\">".$p->t('abgabetool/fehlerTerminEintragen')."</font><br>&nbsp;";
}
else
{
//Abgabetyp
$qry_typ="SELECT bezeichnung FROM campus.tbl_paabgabetyp WHERE paabgabetyp_kurzbz='".$paabgabetyp_kurzbz."'";
$qry_typ="SELECT bezeichnung FROM campus.tbl_paabgabetyp WHERE paabgabetyp_kurzbz='".addslashes($paabgabetyp_kurzbz)."'";
if(!$result=$db->db_query($qry))
{
$row_typ=@$db->db_fetch_object($result_typ);
@@ -233,29 +237,30 @@ if(isset($_POST["schick"]))
"Sehr geehrte".($row_std->anrede=="Herr"?"r":"")." ".$row_std->anrede." ".trim($row_std->titelpre." ".$row_std->vorname." ".$row_std->nachname." ".$row_std->titelpost)."!\n\nIhr(e) Betreuer(in) hat einen Termin geändert:\nVon: ".$datum_obj->formatDatum($row_old->datum,'d.m.Y').", ".$row_told->bezeichnung.", ".$row_old->kurzbz."\nAuf: ".$datum_obj->formatDatum($datum,'d.m.Y').", ".$row_typ->bezeichnung." ".$kurzbz."\n\nMfG\nIhr(e) Betreuer(in)\n\n--------------------------------------------------------------------------\nDies ist ein vom Bachelor-/Diplomarbeitsabgabesystem generiertes Info-Mail\ncis->Mein CIS->Bachelor- und Diplomarbeitsabgabe\n--------------------------------------------------------------------------");
if(!$mail->send())
{
echo "<font color=\"#FF0000\">Fehler beim Versenden des Mails an den Studierenden!</font><br>&nbsp;";
echo "<font color=\"#FF0000\">".$p->t('abgabetool/fehlerMailStudent')."</font><br>&nbsp;";
}
else
{
echo "Mail verschickt an: ".trim($row_std->titelpre." ".$row_std->vorname." ".$row_std->nachname." ".$row_std->titelpost)."<br>";
echo $p->t('abgabetool/mailVerschicktAn').": ".trim($row_std->titelpre." ".$row_std->vorname." ".$row_std->nachname." ".$row_std->titelpost)."<br>";
}
}
}
$command='';
}
/*
if(isset($mail))
{
$mail->setReplyTo($user."@".DOMAIN);
if(!$mail->send())
{
echo "<font color=\"#FF0000\">Fehler beim Versenden des Mails!</font><br>&nbsp;";
echo "<font color=\"#FF0000\">".$p->t('abgabetool/fehlerMail')."</font><br>&nbsp;";
}
}
}*/
}
}
else
{
echo "<font color=\"#FF0000\">Datumseingabe ung&uuml;ltig!</font><br>&nbsp;";
echo "<font color=\"#FF0000\">".$p->t('global/datumUngueltig')."</font><br>&nbsp;";
}
unset($_POST["schick"]);
}
@@ -265,26 +270,26 @@ if(isset($_POST["del"]))
if($datum)
{
//Ermittlung der alten Daten
$qry_old="SELECT * FROM campus.tbl_paabgabe WHERE paabgabe_id='".$paabgabe_id."' AND insertvon='$user'";
$qry_old="SELECT * FROM campus.tbl_paabgabe WHERE paabgabe_id='".addslashes($paabgabe_id)."' AND insertvon='".addslashes($user)."'";
if(!$result_old=$db->db_query($qry_old))
{
echo "<font color=\"#FF0000\">Termin konnte nicht gefunden werden!</font><br>&nbsp;";
echo "<font color=\"#FF0000\">".$p->t('abgabetool/terminNichtGefunden')."</font><br>&nbsp;";
}
else
{
$row_old=@$db->db_fetch_object($result_old);
$qry_std="SELECT * FROM campus.vw_benutzer where uid='$uid'";
$qry_std="SELECT * FROM campus.vw_benutzer where uid='".addslashes($uid)."'";
if(!$result_std=$db->db_query($qry_std))
{
echo "<font color=\"#FF0000\">Student konnte nicht gefunden werden!</font><br>&nbsp;";
echo "<font color=\"#FF0000\">".$p->t('global/userNichtGefunden')."</font><br>&nbsp;";
}
else
{
$row_std=@$db->db_fetch_object($result_std);
$qry="DELETE FROM campus.tbl_paabgabe WHERE paabgabe_id='".$paabgabe_id."' AND insertvon='$user'";
$qry="DELETE FROM campus.tbl_paabgabe WHERE paabgabe_id='".addslashes($paabgabe_id)."' AND insertvon='".addslashes($user)."'";
if(!$result=$db->db_query($qry))
{
echo "<font color=\"#FF0000\">Fehler beim Löschen des Termins!</font><br>&nbsp;";
echo "<font color=\"#FF0000\">".$p->t('abgabetool/fehlerTerminLoeschen')."</font><br>&nbsp;";
}
else
{
@@ -293,11 +298,11 @@ if(isset($_POST["del"]))
$mail->setReplyTo($user."@".DOMAIN);
if(!$mail->send())
{
echo "<font color=\"#FF0000\">Fehler beim Versenden des Mails an den Studierenden!</font><br>&nbsp;";
echo "<font color=\"#FF0000\">".$p->t('fehlerMailStudent')."</font><br>&nbsp;";
}
else
{
echo "Mail verschickt an: ".trim($row_std->titelpre." ".$row_std->vorname." ".$row_std->nachname." ".$row_std->titelpost)."<br>";
echo $p->t('abgabetool/mailVerschicktAn').": ".trim($row_std->titelpre." ".$row_std->vorname." ".$row_std->nachname." ".$row_std->titelpost)."<br>";
}
}
}
@@ -305,14 +310,14 @@ if(isset($_POST["del"]))
}
else
{
echo "<font color=\"#FF0000\">Datumseingabe ung&uuml;ltig!</font><br>&nbsp;";
echo "<font color=\"#FF0000\">".$p->t('global/datumUngueltig')."</font><br>&nbsp;";
}
unset($_POST["del"]);
}
$qry="SELECT * FROM campus.tbl_paabgabe WHERE projektarbeit_id='".$projektarbeit_id."' ORDER BY datum;";
$qry="SELECT * FROM campus.tbl_paabgabe WHERE projektarbeit_id='".addslashes($projektarbeit_id)."' ORDER BY datum;";
$studentenname='';
$qry_nam="SELECT trim(COALESCE(vorname,'')||' '||COALESCE(nachname,'')) as studnam FROM campus.vw_student WHERE uid='$uid'";
$qry_nam="SELECT trim(COALESCE(vorname,'')||' '||COALESCE(nachname,'')) as studnam FROM campus.vw_student WHERE uid='".addslashes($uid)."'";
$result_nam=$db->db_query($qry_nam);
while ($result_nam && $row_nam=$db->db_fetch_object($result_nam))
{
@@ -320,28 +325,37 @@ while ($result_nam && $row_nam=$db->db_fetch_object($result_nam))
}
$htmlstr .= "<table width=100%>\n";
//$htmlstr .= "<tr><td style='font-size:16px'>Student: <b>".$uid."</b></td>";
$htmlstr .= "<tr><td style='font-size:16px'>Student: <b>".$studentenname."</b></td>";
$htmlstr .= "<tr><td style='font-size:16px'>".$p->t('abgabetool/student').": <b>".$studentenname."</b></td>";
$htmlstr .= "<td width=10% align=center><form action='../../../include/".EXT_FKT_PATH."/abgabe_lektor_benotung.php' title='Benotungsformular' target='_blank' method='GET'>";
$htmlstr .= "<input type='hidden' name='projektarbeit_id' value='".$projektarbeit_id."'>\n";
$htmlstr .= "<input type='hidden' name='uid' value='".$uid."'>\n";
//$htmlstr .= "<a href='../../cisdocs/Projektarbeitsabgabe_FHTW_Anleitung.pdf' target='_blank'><img src='../../../skin/images/information.png' alt='Anleitung' title='Anleitung BaDa-Abgabe' border=0></a>&nbsp;&nbsp;&nbsp;";
$htmlstr .= "<input type='submit' name='note' value='benoten'></form></td>";
$htmlstr .= "<input type='submit' name='note' value='".$p->t('abgabetool/benoten')."'></form></td>";
if($betreuerart!="Zweitbegutachter")
{
$htmlstr .= "<td width=10% align=center><form action='https://www1.ephorus.de/' title='ephorus' target='_blank' method='GET'>";
$htmlstr .= "<input type='submit' name='ephorus' value='Plagiatspr&uuml;fung'></form></td></tr>";
$htmlstr .= "<input type='submit' name='ephorus' value='".$p->t('abgabetool/plagiatspruefung')."'></form></td></tr>";
}
else
{
$htmlstr .= "<td>&nbsp;</td></tr>";
}
$htmlstr .= "<tr><td style='font-size:16px'>Titel: <b>".$titel."<b></td><td></td><td valign=\"right\"><a href='abgabe_student_frameset.php?uid=$uid' target='_blank'>Studentenansicht</a></td>";
$htmlstr .= "<tr><td style='font-size:16px'>Titel: <b>".$titel."<b></td><td></td><td valign=\"right\"><a href='abgabe_student_frameset.php?uid=$uid' target='_blank'>".$p->t('abgabetool/studentenansicht')."</a></td>";
$htmlstr .= "</tr>\n";
$htmlstr .= "</table>\n";
$htmlstr .= "<br><b>Abgabetermine:</b>\n";
$htmlstr .= "<br><b>".$p->t('abgabetool/abgabetermine').":</b>\n";
$htmlstr .= "<table class='detail' style='padding-top:10px;' >\n";
$htmlstr .= "<tr></tr>\n";
$htmlstr .= "<tr><td>fix</td><td>Datum</td><td>Abgabetyp</td><td>Kurzbeschreibung der Abgabe</td><td>abgegeben am</td><td></td><td></td><td></td></tr>\n";
$htmlstr .= "<tr>
<td>".$p->t('abgabetool/fix')."</td>
<td>".$p->t('abgabetool/datum')."</td>
<td>".$p->t('abgabetool/abgabetyp')."</td>
<td>".$p->t('abgabetool/beschreibungAbgabe')."</td>
<td>".$p->t('abgabetool/abgegebenAm')."</td>
<td></td>
<td></td>
<td></td>
</tr>\n";
$result=@$db->db_query($qry);
while ($row=@$db->db_fetch_object($result))
{
@@ -393,11 +407,11 @@ $result=@$db->db_query($qry);
//$htmlstr .= "<td><input type='checkbox' name='fixtermin' ".($row->fixtermin=='t'?'checked="checked" style="background-color:#FF0000;"':'')." disabled>";
if($row->fixtermin=='t')
{
$htmlstr .= "<td><img src='../../../skin/images/bullet_red.png' alt='J' title='Fixer Abgabetermin' border=0></td>";
$htmlstr .= "<td><img src='../../../skin/images/bullet_red.png' alt='J' title='".$p->t('abgabetool/fixerAbgabetermin')."' border=0></td>";
}
else
{
$htmlstr .= "<td><img src='../../../skin/images/bullet_green.png' alt='N' title='Variabler Abgabetermin' border=0></td>";
$htmlstr .= "<td><img src='../../../skin/images/bullet_green.png' alt='N' title='".$p->t('abgabetool/variablerAbgabetermin')."' border=0></td>";
}
$htmlstr .= " </td>\n";
$htmlstr .= " <td><input type='text' name='datum' style='background-color:".$bgcol.";font-weight:bold; color:".$fcol." ' value='".$datum_obj->formatDatum($row->datum,'d.m.Y')."' size='10' maxlegth='10'></td>\n";
@@ -424,11 +438,11 @@ $result=@$db->db_query($qry);
$htmlstr .= " <td>".($row->abgabedatum==''?'&nbsp;':$datum_obj->formatDatum($row->abgabedatum,'d.m.Y'))."</td>\n";
if($user==$row->insertvon && $betreuerart!="Zweitbegutachter")
{
$htmlstr .= " <td><input type='submit' name='schick' value='speichern' title='Termin&auml;nderung speichern'></td>";
$htmlstr .= " <td><input type='submit' name='schick' value='".$p->t('global/speichern')."' title='".$p->t('abgabetool/terminaenderungSpeichern')."'></td>";
if(!$row->abgabedatum)
{
$htmlstr .= " <td><input type='submit' name='del' value='l&ouml;schen' onclick='return confdel()' title='Termin l&ouml;schen'></td>";
$htmlstr .= " <td><input type='submit' name='del' value='".$p->t('global/loeschen')."' onclick='return confdel()' title='".$p->t('abgabetool/terminLoeschen')."'></td>";
}
else
{
@@ -441,7 +455,7 @@ $result=@$db->db_query($qry);
}
if(file_exists(PAABGABE_PATH.$row->paabgabe_id.'_'.$uid.'.pdf'))
{
$htmlstr .= " <td><a href='".$_SERVER['PHP_SELF']."?id=".$row->paabgabe_id."&uid=$uid' target='_blank'><img src='../../../skin/images/pdf.ico' alt='PDF' title='abgegebene Datei' border=0></a></td>";
$htmlstr .= " <td><a href='".$_SERVER['PHP_SELF']."?id=".$row->paabgabe_id."&uid=$uid' target='_blank'><img src='../../../skin/images/pdf.ico' alt='PDF' title='".$p->t('abgabetool/abgegebeneDatei')."' border=0></a></td>";
}
else
{
@@ -449,7 +463,7 @@ $result=@$db->db_query($qry);
}
if($row->abgabedatum && $row->paabgabetyp_kurzbz=="end")
{
$htmlstr .= " <td><a href='abgabe_lektor_zusatz.php?paabgabe_id=".$row->paabgabe_id."&uid=$uid&projektarbeit_id=$projektarbeit_id' target='_blank'><img src='../../../skin/images/folder.gif' alt='zusätzliche Daten' title='Kontrolle der Zusatzdaten' border=0></a></td>";
$htmlstr .= " <td><a href='abgabe_lektor_zusatz.php?paabgabe_id=".$row->paabgabe_id."&uid=$uid&projektarbeit_id=$projektarbeit_id' target='_blank'><img src='../../../skin/images/folder.gif' alt='zusätzliche Daten' title='".$p->t('abgabetool/kontrolleZusatzdaten')."' border=0></a></td>";
}
else
{
@@ -489,7 +503,7 @@ $htmlstr .= " <td><input type='text' name='kurzbz' size='60' maxlegth='256'></
$htmlstr .= " <td>&nbsp;</td>\n";
if($betreuerart!="Zweitbegutachter")
{
$htmlstr .= " <td><input type='submit' name='schick' value='speichern' title='neuen Termin speichern'></td>";
$htmlstr .= " <td><input type='submit' name='schick' value='".$p->t('global/speichern')."' title='".$p->t('abgabetool/neuenTerminSpeichern')."'></td>";
}
else
{
+67 -65
View File
@@ -23,24 +23,24 @@
/*******************************************************************************************************
* abgabe_lektor
* abgabe_lektor ist die Lektorenseite des Abgabesystems
* f&uuml;r Diplom- und Bachelorarbeiten
* fuer Diplom- und Bachelorarbeiten
*******************************************************************************************************/
require_once('../../../config/cis.config.inc.php');
require_once('../../../include/basis_db.class.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/mail.class.php');
require_once('../../../include/phrasen.class.php');
// ------------------------------------------------------------------------------------------
// Datenbankanbindung
// ------------------------------------------------------------------------------------------
require_once('../../../include/basis_db.class.php');
if (!$db = new basis_db())
$db=false;
require_once('../../../include/functions.inc.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/mail.class.php');
$sprache = getSprache();
$p = new phrasen($sprache);
if (!$db = new basis_db())
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
$i=0;
$irgendwas='';
foreach($_POST as $key=>$value)
@@ -82,36 +82,36 @@ if(isset($_POST["schick"]))
for($j=0;$j<count($termine)-1;$j++)
{
$qrychk="SELECT * FROM campus.tbl_paabgabe
WHERE projektarbeit_id='".$termine[$j]."' AND paabgabetyp_kurzbz='$paabgabetyp_kurzbz'
AND fixtermin=".($fixtermin==1?'true':'false')." AND datum='$datum' AND kurzbz='$kurzbz'";
WHERE projektarbeit_id='".addslashes($termine[$j])."' AND paabgabetyp_kurzbz='".addslashes($paabgabetyp_kurzbz)."'
AND fixtermin=".($fixtermin==1?'true':'false')." AND datum='".addslashes($datum)."' AND kurzbz='".addslashes($kurzbz)."'";
//echo $qrychk;
if($result=$db->db_query($qrychk))
{
if($db->db_num_rows($result)>0)
{
echo "Datensatz bereits vorhanden";
echo $p->t('abgabetool/terminVorhanden');
}
else
{
//pruefen, ob user zweitbetreuer
$qry2="SELECT * FROM lehre.tbl_projektbetreuer WHERE projektarbeit_id='".$termine[$j]."' AND betreuerart_kurzbz='Zweitbegutachter'
AND person_id=(SELECT person_id FROM campus.vw_mitarbeiter WHERE uid='".$user."')";
$qry2="SELECT * FROM lehre.tbl_projektbetreuer WHERE projektarbeit_id='".addslashes($termine[$j])."' AND betreuerart_kurzbz='Zweitbegutachter'
AND person_id=(SELECT person_id FROM campus.vw_mitarbeiter WHERE uid='".addslashes($user)."')";
$result2=$db->db_query($qry2);
//zweitbetreuer koennen keine termine eintragen
if($db->db_num_rows($result2)==0)
{
//echo "neuer Termin";
$qry="INSERT INTO campus.tbl_paabgabe (projektarbeit_id, paabgabetyp_kurzbz, fixtermin, datum, kurzbz, abgabedatum, insertvon, insertamum, updatevon, updateamum)
VALUES ('".$termine[$j]."', '$paabgabetyp_kurzbz', ".($fixtermin==1?'true':'false').", '$datum', '$kurzbz', NULL, '$user', now(), NULL, NULL)";
VALUES ('".addslashes($termine[$j])."', '".addslashes($paabgabetyp_kurzbz)."', ".($fixtermin==1?'true':'false').", '".addslashes($datum)."', '".addslashes($kurzbz)."', NULL, '".addslashes($user)."', now(), NULL, NULL)";
//echo $qry;
if(!$result=$db->db_query($qry))
{
echo "<font color=\"#FF0000\">Termin konnte nicht eingetragen werden!</font><br>&nbsp;";
echo "<font color=\"#FF0000\">".$p->t('abgabetool/fehlerTerminEintragen')."</font><br>&nbsp;";
}
else
{
$row=$db->db_fetch_object($result);
$qry_typ="SELECT bezeichnung FROM campus.tbl_paabgabetyp WHERE paabgabetyp_kurzbz='".$paabgabetyp_kurzbz."'";
$qry_typ="SELECT bezeichnung FROM campus.tbl_paabgabetyp WHERE paabgabetyp_kurzbz='".addslashes($paabgabetyp_kurzbz)."'";
if($result_typ=$db->db_query($qry_typ))
{
$row_typ=$db->db_fetch_object($result_typ);
@@ -121,7 +121,7 @@ if(isset($_POST["schick"]))
$row_typ->bezeichnung='';
}
//Student zu projektarbeit_id suchen
$qry_std="SELECT * FROM campus.vw_student WHERE uid IN(SELECT student_uid FROM lehre.tbl_projektarbeit WHERE projektarbeit_id=$termine[$j])";
$qry_std="SELECT * FROM campus.vw_student WHERE uid IN(SELECT student_uid FROM lehre.tbl_projektarbeit WHERE projektarbeit_id='".addslashes($termine[$j])."')";
if($result_std=@$db->db_query($qry_std))
{
$row_std=$db->db_fetch_object($result_std);
@@ -129,74 +129,76 @@ if(isset($_POST["schick"]))
"Sehr geehrte".($row_std->anrede=="Herr"?"r":"")." ".$row_std->anrede." ".trim($row_std->titelpre." ".$row_std->vorname." ".$row_std->nachname." ".$row_std->titelpost)."!\n\nIhr(e) Betreuer(in) hat einen neuen Termin angelegt:\n".$datum_obj->formatDatum($datum,'d.m.Y').", ".$row_typ->bezeichnung.", ".$kurzbz."\n\nMfG\nIhr(e) Betreuer(in)\n\n--------------------------------------------------------------------------\nDies ist ein vom Bachelor-/Diplomarbeitsabgabesystem generiertes Info-Mail\ncis->Mein CIS->Bachelor- und Diplomarbeitsabgabe\n--------------------------------------------------------------------------");
if(!$mail->send())
{
echo "<font color=\"#FF0000\">Fehler beim Versenden des Mails an den Studierenden! ($row_std->uid)</font><br>&nbsp;";
echo "<font color=\"#FF0000\">".$p->t('abgabetool/fehlerMailStudent')." ($row_std->uid)</font><br>&nbsp;";
}
else
{
echo "Mail verschickt an: ".trim($row_std->titelpre." ".$row_std->vorname." ".$row_std->nachname." ".$row_std->titelpost)."<br>";
echo $p->t('abgabetool/mailVerschicktAn').": ".trim($row_std->titelpre." ".$row_std->vorname." ".$row_std->nachname." ".$row_std->titelpost)."<br>";
}
}
}
}
else
{
echo "Zweitbetreuer bei ".$termine[$j]." <br>";
echo $p->t('abgabetool/zweitbetreuerBei')." ".$termine[$j]." <br>";
}
$command='';
}
}
else
{
echo "Datenbank-Zugriffsfehler!";
echo $p->t('global/fehlerBeimLesenAusDatenbank');
}
}
}
$htmlstr='';
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Mehrfachtermin PA-Abgabe</title>
<link rel="stylesheet" href="../../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../../include/js/tablesort/table.css" type="text/css">
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<script src="../../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body class="Background_main" style="background-color:#eeeeee;">
<h3>Eingabe eines Termins f&uuml;r mehrere Personen</h3>';
//Eingabezeile f&uuml;r neuen Termin
$htmlstr .= "<br><b>Abgabetermin:</b>\n";
$htmlstr .= "<table class='detail' style='padding-top:10px;' >\n";
$htmlstr .= "<form action='".$_SERVER['PHP_SELF']."' method='POST' name='multitermin'>\n";
$htmlstr .= "<input type='hidden' name='irgendwas' value='".$irgendwas."'>\n";
$htmlstr .= "<tr></tr>\n";
$htmlstr .= "<tr><td>Datum</td><td>Abgabetyp</td><td>Kurzbeschreibung der Abgabe</td></tr>\n";
$htmlstr .= "<tr id='termin'>\n";
//$htmlstr .= "<td><input type='checkbox' name='fixtermin'></td>";
$htmlstr .= " <td><input type='text' name='datum' size='10' maxlegth='10'></td>\n";
$htmlstr .= " <td><select name='paabgabetyp_kurzbz'>\n";
$qry_typ = "SELECT * FROM campus.tbl_paabgabetyp";
$result_typ=$db->db_query($qry_typ);
while ($row_typ=@$db->db_fetch_object($result_typ))
{
if($row_typ->paabgabetyp_kurzbz!='end' && $row_typ->paabgabetyp_kurzbz!='note' && $row_typ->paabgabetyp_kurzbz!='enda')
{
$htmlstr .= " <option value='".$row_typ->paabgabetyp_kurzbz."'>$row_typ->bezeichnung</option>";
}
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><input type='text' name='kurzbz' size='60' maxlegth='256'></td>\n";
$htmlstr .= " <td>&nbsp;</td>\n";
$htmlstr .= " <td><input type='submit' name='schick' value='speichern' title='neuen Termin speichern'></td>";
$htmlstr .= "</tr>\n";
$htmlstr .= "</form>\n";
$htmlstr .= "</table>\n";
$htmlstr .= "</body></html>\n";
echo $htmlstr;
echo '</body></html>';
</head>
<body class="Background_main" style="background-color:#eeeeee;">
<h3>'.$p->t('abgabetool/eingabeTerminPersonen').'</h3>';
//Eingabezeile f&uuml;r neuen Termin
$htmlstr .= "<br><b>".$p->t('abgabetool/abgabetermine').":</b>\n";
$htmlstr .= "<table class='detail' style='padding-top:10px;' >\n";
$htmlstr .= "<form action='".$_SERVER['PHP_SELF']."' method='POST' name='multitermin'>\n";
$htmlstr .= "<input type='hidden' name='irgendwas' value='".$irgendwas."'>\n";
$htmlstr .= "<tr></tr>\n";
$htmlstr .= "<tr>
<td>".$p->t('abgabetool/datum')."</td>
<td>".$p->t('abgabetool/abgabetyp')."</td>
<td>".$p->t('abgabetool/beschreibungAbgabe')."</td></tr>\n";
$htmlstr .= "<tr id='termin'>\n";
//$htmlstr .= "<td><input type='checkbox' name='fixtermin'></td>";
$htmlstr .= " <td><input type='text' name='datum' size='10' maxlegth='10'></td>\n";
$htmlstr .= " <td><select name='paabgabetyp_kurzbz'>\n";
$qry_typ = "SELECT * FROM campus.tbl_paabgabetyp";
$result_typ=$db->db_query($qry_typ);
while ($row_typ=@$db->db_fetch_object($result_typ))
{
if($row_typ->paabgabetyp_kurzbz!='end' && $row_typ->paabgabetyp_kurzbz!='note' && $row_typ->paabgabetyp_kurzbz!='enda')
{
$htmlstr .= " <option value='".$row_typ->paabgabetyp_kurzbz."'>$row_typ->bezeichnung</option>";
}
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><input type='text' name='kurzbz' size='60' maxlegth='256'></td>\n";
$htmlstr .= " <td>&nbsp;</td>\n";
$htmlstr .= " <td><input type='submit' name='schick' value='".$p->t('global/speichern')."'></td>";
$htmlstr .= "</tr>\n";
$htmlstr .= "</form>\n";
$htmlstr .= "</table>\n";
echo $htmlstr;
echo '</body></html>';
?>
@@ -24,11 +24,14 @@ require_once('../../../include/functions.inc.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/benutzer.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/phrasen.class.php');
$uid = get_uid();
$user = '';
$db = new basis_db();
$datum_obj = new datum();
$sprache = getSprache();
$p = new phrasen($sprache);
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
@@ -60,18 +63,20 @@ echo '
if(isset($_GET['user']))
{
//Terminliste von anderen Personen darf nur dann angezeigt werden, wenn
//die entsprechende Berechtigung vorhanden ist
$rechte = new benutzerberechtigung();
if(!$rechte->getBerechtigungen($uid))
die('Fehler beim Laden der Berechtigungen');
die($p->t('global/fehlerBeimLesenAusDatenbank'));
if(!$rechte->isBerechtigt('lehre/abgabetool'))
die('Sie haben keine Berechtigung um die Terminliste von anderen Personen zu sehen');
die($p->t('global/keineBerechtigungFuerDieseSeite'));
$user = $_GET['user'];
}
else
$user = $uid;
$lektor = new benutzer();
if(!$lektor->load($user))
die('Lektor konnte nicht geladen werden');
die($p->t('global/fehlerBeimErmittelnDerUID'));
$sql_query = "
SELECT
@@ -91,13 +96,13 @@ $sql_query = "
JOIN public.tbl_studiengang ON(tbl_lehrveranstaltung.studiengang_kz=tbl_studiengang.studiengang_kz)
JOIN campus.tbl_paabgabetyp USING(paabgabetyp_kurzbz)
WHERE
tbl_projektbetreuer.person_id='".$lektor->person_id."' AND tbl_paabgabe.datum>=now() AND bn_student.aktiv
tbl_projektbetreuer.person_id='".addslashes($lektor->person_id)."' AND tbl_paabgabe.datum>=now() AND bn_student.aktiv
ORDER BY tbl_paabgabe.datum
";
if($result = $db->db_query($sql_query))
{
echo "<h2>Termin&uuml;bersicht - $lektor->titelpre $lektor->vorname $lektor->nachname $lektor->titelpost</h2>";
echo "<h2>".$p->t('abgabetool/terminuebersicht')." - $lektor->titelpre $lektor->vorname $lektor->nachname $lektor->titelpost</h2>";
if($db->db_num_rows($result)>0)
{
@@ -105,13 +110,13 @@ if($result = $db->db_query($sql_query))
echo '
<thead>
<tr class="liste">
<th>Datum</th>
<th>Fix</th>
<th>Typ</th>
<th>Bezeichnung</th>
<th>Student</th>
<th>Stg</th>
<th>Sem</th>
<th>'.$p->t('abgabetool/datum').'</th>
<th>'.$p->t('abgabetool/fix').'</th>
<th>'.$p->t('abgabetool/typ').'</th>
<th>'.$p->t('abgabetool/beschreibungAbgabe').'</th>
<th>'.$p->t('abgabetool/student').'</th>
<th>'.$p->t('global/stg').'</th>
<th>'.$p->t('global/sem').'</th>
</tr>
</thead>
<tbody>
@@ -133,7 +138,7 @@ if($result = $db->db_query($sql_query))
echo "\n</tbody></table>";
}
else
echo 'Derzeit sind keine Termine vorhanden';
echo $p->t('abgabetool/keineTermineVorhanden');
}
echo '</body></html>';
+47 -50
View File
@@ -27,22 +27,19 @@
*******************************************************************************************************/
require_once('../../../config/cis.config.inc.php');
// ------------------------------------------------------------------------------------------
// Datenbankanbindung
// ------------------------------------------------------------------------------------------
require_once('../../../include/basis_db.class.php');
if (!$db = new basis_db())
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
require_once('../../../include/functions.inc.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
//require_once('../../../include/Excel/excel.php');
require_once('../../../config/cis.config.inc.php');
require_once('../../../include/basis_db.class.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/phrasen.class.php');
$anzeigesprache = getSprache();
$p = new phrasen($anzeigesprache);
if (!$db = new basis_db())
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
if(!isset($_POST['uid']))
{
@@ -98,40 +95,40 @@ $rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
$htmlstr='';
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Zusatzdaten PA-Abgabe</title>
<link rel="stylesheet" href="../../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../../include/js/tablesort/table.css" type="text/css">
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<script src="../../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body class="Background_main" style="background-color:#eeeeee;">
<h3>Abgabe Zusatzdaten</h3>';
$qry_zd="SELECT * FROM lehre.tbl_projektarbeit WHERE projektarbeit_id='".$projektarbeit_id."'";
$result_zd=@$db->db_query($qry_zd);
if ($row_zd=@$db->db_fetch_object($result_zd))
{
$htmlstr = "<div>Student: <b>".$uid."</b><br>Titel: <b>".$row_zd->titel."<b><br><br></div>\n";
$htmlstr .= "<table class='detail' style='padding-top:10px;'>\n";
$htmlstr .= "<tr></tr>\n";
$htmlstr .= "<tr>\n";
$htmlstr .= "<td><b>Sprache der Arbeit:</b></td><td>";
$htmlstr .= "<input type='text' name='sprache' id='sprache' value='".$row_zd->sprache."' size='10' maxlength='8' readonly='readonly'>";
$htmlstr .= "</td></tr>\n";
$htmlstr .= "<tr><td width='30%'><b>Kontrollierte Schlagw&ouml;rter:*</b></td><td width='40%'><input type='text' name='kontrollschlagwoerter' id='kontrollschlagwoerter' value='".$row_zd->kontrollschlagwoerter."' size='60' maxlength='150' readonly='readonly'></td></tr>\n";
$htmlstr .= "<tr><td><b>Dt. Schlagw&ouml;rter:</b></td><td><input type='text' name='schlagwoerter' value='".$row_zd->schlagwoerter."' size='60' maxlength='150' readonly='readonly'></td></tr>\n";
$htmlstr .= "<tr><td><b>Engl. Schlagw&ouml;rter:</b></td><td><input type='text' name='schlagwoerter_en' value='".$row_zd->schlagwoerter_en."' size='60' maxlength='150' readonly='readonly'></td></tr>\n";
$htmlstr .= "<tr><td valign='top'><b>Abstract </b>(max. 5000 Zeichen):*</td><td><textarea name='abstract' cols='46' rows='7' readonly='readonly'>$row_zd->abstract</textarea></td></tr>\n";
$htmlstr .= "<tr><td valign='top'><b>Abstract engl.</b>(max. 5000 Zeichen):*</td><td><textarea name='abstract_en' cols='46' rows='7' readonly='readonly'>$row_zd->abstract_en</textarea></td></tr>\n";
$htmlstr .= "<tr><td><b>Seitenanzahl:*</b></td><td><input type='text' name='seitenanzahl' value=".$row_zd->seitenanzahl." size='5' maxlength='4' readonly='readonly'></td></tr>\n";
$htmlstr .= "</tr>\n";
$htmlstr .= "</table><table>";
$htmlstr .= "<tr></tr><td>&nbsp;</td><tr><td style='font-size:70%'>* Pflichtfeld</td></tr><tr><td>&nbsp;</td></tr>\n";
$htmlstr .= "</table>\n";
}
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>'.$p->t('abgabetool/abgabeZusatzdaten').'</title>
<link rel="stylesheet" href="../../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../../include/js/tablesort/table.css" type="text/css">
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<script src="../../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body class="Background_main" style="background-color:#eeeeee;">
<h3>'.$p->t('abgabetool/abgabeZusatzdaten').'</h3>';
$qry_zd="SELECT * FROM lehre.tbl_projektarbeit WHERE projektarbeit_id='".addslashes($projektarbeit_id)."'";
$result_zd=@$db->db_query($qry_zd);
if ($row_zd=@$db->db_fetch_object($result_zd))
{
$htmlstr = "<div>".$p->t('abgabetool/student').": <b>".$uid."</b><br>".$p->t('abgabetool/titel').": <b>".$row_zd->titel."<b><br><br></div>\n";
$htmlstr .= "<table class='detail' style='padding-top:10px;'>\n";
$htmlstr .= "<tr></tr>\n";
$htmlstr .= "<tr>\n";
$htmlstr .= "<td><b>".$p->t('abgabetool/spracheDerArbeit').":</b></td><td>";
$htmlstr .= "<input type='text' name='sprache' id='sprache' value='".$row_zd->sprache."' size='10' maxlength='8' readonly='readonly'>";
$htmlstr .= "</td></tr>\n";
$htmlstr .= "<tr><td width='30%'><b>".$p->t('abgabetool/kontrollierteSchlagwoerter').":*</b></td><td width='40%'><input type='text' name='kontrollschlagwoerter' id='kontrollschlagwoerter' value='".$row_zd->kontrollschlagwoerter."' size='60' maxlength='150' readonly='readonly'></td></tr>\n";
$htmlstr .= "<tr><td><b>".$p->t('abgabetool/deutscheSchlagwoerter').": </b></td><td><input type='text' name='schlagwoerter' value='".$row_zd->schlagwoerter."' size='60' maxlength='150' readonly='readonly'></td></tr>\n";
$htmlstr .= "<tr><td><b>".$p->t('abgabetool/englischeSchlagwoerter').": </b></td><td><input type='text' name='schlagwoerter_en' value='".$row_zd->schlagwoerter_en."' size='60' maxlength='150' readonly='readonly'></td></tr>\n";
$htmlstr .= "<tr><td valign='top'><b>".$p->t('abgabetool/abstract')." </b>".$p->t('abgabetool/maxZeichen').":*</td><td><textarea name='abstract' cols='46' rows='7' readonly='readonly'>$row_zd->abstract</textarea></td></tr>\n";
$htmlstr .= "<tr><td valign='top'><b>".$p->t('abgabetool/abstractEng')." </b>".$p->t('abgabetool/maxZeichen').":*</td><td><textarea name='abstract_en' cols='46' rows='7' readonly='readonly'>$row_zd->abstract_en</textarea></td></tr>\n";
$htmlstr .= "<tr><td><b>".$p->t('abgabetool/seitenanzahl').":*</b></td><td><input type='text' name='seitenanzahl' value=".$row_zd->seitenanzahl." size='5' maxlength='4' readonly='readonly'></td></tr>\n";
$htmlstr .= "</tr>\n";
$htmlstr .= "</table><table>";
$htmlstr .= "<tr></tr><td>&nbsp;</td><tr><td style='font-size:70%'>* ".$p->t('abgabetool/pflichtfeld')."</td></tr><tr><td>&nbsp;</td></tr>\n";
$htmlstr .= "</table>\n";
}
echo $htmlstr;
echo '</body></html>';
+44 -39
View File
@@ -32,9 +32,13 @@ require_once('../../../include/student.class.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/mail.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/phrasen.class.php');
$anzeigesprache = getSprache();
$p = new phrasen($anzeigesprache);
if (!$db = new basis_db())
die('Fehler beim Herstellen der Datenbankverbindung');
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
if(!isset($_POST['uid']))
{
@@ -92,7 +96,7 @@ if($uid=='-1')
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>PA-Abgabe</title>
<title>'.$p->t('abgabetool/ueberschrift').'</title>
<link rel="stylesheet" href="../../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../../include/js/tablesort/table.css" type="text/css">
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
@@ -103,11 +107,11 @@ if($uid!=$user)
{
$student = new student();
if(!$student->load($uid))
die('Student ist ungueltig');
die($p->t('global/userNichtGefunden'));
$stg_obj = new studiengang();
if(!$stg_obj->load($student->studiengang_kz))
die('Studiengang des Studenten ist ungueltig');
die($p->t('global/fehlerBeimLesenAusDatenbank'));
//Studentenansicht
//Rechte Pruefen
@@ -140,7 +144,7 @@ if($uid!=$user)
if(!$allowed)
{
die('Sie haben keine Berechtigung zum Anzeigen der Studentenansicht');
die($p->t('abgabetool/keineBerechtigungStudentenansicht'));
}
}
$datum_obj = new datum();
@@ -201,13 +205,13 @@ if($command=='add')
}
else
{
echo "<font color=\"#FF0000\">DB: Update fehlgeschlagen!</font><br>&nbsp;";
echo "<font color=\"#FF0000\">".$p->t('global/fehleraufgetreten')."</font><br>&nbsp;";
$command='';
}
}
else
{
echo "<font color=\"#FF0000\">Dateneingabe unvollst&auml;ndig!</font><br>&nbsp;";
echo "<font color=\"#FF0000\">".$p->t('abgabetool/dateneingabeUnvollstaendig')."</font><br>&nbsp;";
$command='';
}
}
@@ -232,11 +236,11 @@ if($command=="update" && $error!=true)
updateamum = now()
WHERE paabgabe_id='".addslashes($paabgabe_id)."'";
$result=$db->db_query($qry);
echo 'Die Datei wurde erfolgreich hochgeladen';
echo $p->t('global/dateiErfolgreichHochgeladen');
}
else
{
echo "Upload nicht gefunden! Bitte wiederholen Sie den Fileupload.";
echo $p->t('global/dateiNichtErfolgreichHochgeladen');
}
}
else
@@ -256,11 +260,11 @@ if($command=="update" && $error!=true)
WHERE paabgabe_id='".$paabgabe_id."'";
$result=$db->db_query($qry);*/
echo '<h3>Abgabe Studentenbereich - Zus&auml;tzliche Daten f&uuml;r die Abgabe</h3>';
$qry_zd="SELECT * FROM lehre.tbl_projektarbeit WHERE projektarbeit_id='".$projektarbeit_id."'";
echo '<h3>'.$p->t('abgabetool/abgabeStudentenbereich').' - '.$p->t('abgabetool/abgabeZusatzdaten').'</h3>';
$qry_zd="SELECT * FROM lehre.tbl_projektarbeit WHERE projektarbeit_id='".addslashes($projektarbeit_id)."'";
$result_zd=@$db->db_query($qry_zd);
$row_zd=@$db->db_fetch_object($result_zd);
$htmlstr = "<div>Betreuer: <b>".$betreuer."</b><br>Titel: <b>".$titel."<b><br><br></div>\n";
$htmlstr = "<div>".$p->t('abgabetool/betreuer').": <b>".$betreuer."</b><br>".$p->t('abgabetool/titel').": <b>".$titel."<b><br><br></div>\n";
$htmlstr .= "<table class='detail' style='padding-top:10px;'>\n";
$htmlstr .= "<tr></tr>\n";
$htmlstr .= "<form accept-charset='UTF-8' action='".$_SERVER['PHP_SELF']."' method='POST' name='".$projektarbeit_id."'>\n";
@@ -273,8 +277,8 @@ if($command=="update" && $error!=true)
$htmlstr .= "<input type='hidden' name='betreuer' value='".$betreuer."'>\n";
$htmlstr .= "<input type='hidden' name='command' value='add'>\n";
$htmlstr .= "<tr>\n";
$htmlstr .= "<td><b>Sprache der Arbeit:</b></td><td>";
$sprache = @$db->db_query("SELECT sprache FROM tbl_sprache");
$htmlstr .= "<td><b>".$p->t('abgabetool/spracheDerArbeit').":</b></td><td>";
$sprache = @$db->db_query("SELECT sprache FROM public.tbl_sprache");
$num = $db->db_num_rows($sprache);
if ($num > 0)
{
@@ -291,22 +295,22 @@ if($command=="update" && $error!=true)
$htmlstr .= "</SELECT> \n";
}
$htmlstr .= "</td></tr>\n";
$htmlstr .= "<tr><td width='30%'><b>Kontrollierte Schlagw&ouml;rter:*</b></td>
$htmlstr .= "<tr><td width='30%'><b>".$p->t('abgabetool/kontrollierteSchlagwoerter').":*</b></td>
<td width='40%'><input type='text' name='kontrollschlagwoerter' id='kontrollschlagwoerter' value='".$kontrollschlagwoerter."' size='60' maxlength='150'></td>
<td width='30%' align='left'><input type='button' name='SWD' value=' SWD ' onclick='window.open(\"abgabe_student_swd.php\")'></td></tr>\n";
$htmlstr .= "<tr><td><b>Dt. Schlagw&ouml;rter:</b></td>
$htmlstr .= "<tr><td><b>".$p->t('abgabetool/deutscheSchlagwoerter').":</b></td>
<td><input type='text' name='schlagwoerter' value='".$schlagwoerter."' size='60' maxlength='150'></td></tr>\n";
$htmlstr .= "<tr><td><b>Engl. Schlagw&ouml;rter:</b></td>
$htmlstr .= "<tr><td><b>".$p->t('abgabetool/englischeSchlagwoerter').":</b></td>
<td><input type='text' name='schlagwoerter_en' value='".$schlagwoerter_en."' size='60' maxlength='150'></td></tr>\n";
$htmlstr .= "<tr><td valign='top'><b>Abstract </b>(max. 5000 Zeichen):*</td>
$htmlstr .= "<tr><td valign='top'><b>".$p->t('abgabetool/abstract')." </b>".$p->t('abgabetool/maxZeichen').":*</td>
<td><textarea name='abstract' cols='46' rows='7'>$abstract</textarea></td></tr>\n";
$htmlstr .= "<tr><td valign='top'><b>Abstract engl.</b>(max. 5000 Zeichen):*</td>
$htmlstr .= "<tr><td valign='top'><b>".$p->T('abgabetool/abstractEng')."</b>".$p->t('abgabetool/maxZeichen').":*</td>
<td><textarea name='abstract_en' cols='46' rows='7'>$abstract_en</textarea></td></tr>\n";
$htmlstr .= "<tr><td><b>Seitenanzahl:*</b></td>
$htmlstr .= "<tr><td><b>".$p->t('abgabetool/seitenanzahl').":*</b></td>
<td><input type='text' name='seitenanzahl' value='".$seitenanzahl."' size='5' maxlength='4'></td></tr>\n";
$htmlstr .= "<tr></tr><td>&nbsp;</td><tr><td style='font-size:70%'>* Pflichtfeld - bitte immer bef&uuml;llen</td></tr>
$htmlstr .= "<tr></tr><td>&nbsp;</td><tr><td style='font-size:70%'>* ".$p->t('abgabetool/pflichtfeld')."</td></tr>
<tr><td>&nbsp;</td></tr>\n";
$htmlstr .= "<tr><td><input type='submit' name='schick' value='abschicken'></td>";
$htmlstr .= "<tr><td><input type='submit' name='schick' value='".$p->t('global/abschicken')."'></td>";
$htmlstr .= "</tr>\n";
$htmlstr .= "</form>\n";
$htmlstr .= "</table>\n";
@@ -315,7 +319,7 @@ if($command=="update" && $error!=true)
}
else
{
echo "Upload nicht gefunden! Bitte wiederholen Sie den Fileupload.";
echo $p->t('global/dateiNichtErfolgreichHochgeladen');
}
}
//E-Mail an 1.Begutachter
@@ -326,19 +330,19 @@ if($command=="update" && $error!=true)
FROM public.tbl_person JOIN lehre.tbl_projektbetreuer ON(lehre.tbl_projektbetreuer.person_id=public.tbl_person.person_id)
LEFT JOIN public.tbl_benutzer ON(public.tbl_benutzer.person_id=public.tbl_person.person_id)
LEFT JOIN public.tbl_mitarbeiter ON(public.tbl_benutzer.uid=public.tbl_mitarbeiter.mitarbeiter_uid)
WHERE public.tbl_person.person_id='$bid'";
WHERE public.tbl_person.person_id='".addslashes($bid)."'";
if(!$betr=$db->db_query($qry_betr))
{
echo "<font color=\"#FF0000\">Fehler beim Laden der Betreuer!</font><br>&nbsp;";
echo "<font color=\"#FF0000\">".$p->t('global/fehlerBeimLesenAusDatenbank')."</font><br>&nbsp;";
}
else
{
if($row_betr=$db->db_fetch_object($betr))
{
$qry_std="SELECT * FROM campus.vw_benutzer where uid='$uid'";
$qry_std="SELECT * FROM campus.vw_benutzer where uid='".addslashes($uid)."'";
if(!$result_std=$db->db_query($qry_std))
{
echo "<font color=\"#FF0000\">Datensatz konnte nicht gefunden werden!</font><br>&nbsp;";
echo "<font color=\"#FF0000\">".$p->t('global/fehlerBeimLesenAusDatenbank')."</font><br>&nbsp;";
}
else
{
@@ -349,22 +353,23 @@ if($command=="update" && $error!=true)
$mail->setReplyTo($user."@".DOMAIN);
if(!$mail->send())
{
echo "<font color=\"#FF0000\">Fehler beim Versenden des Mails an den (Erst-)Begutachter!</font><br>&nbsp;";
echo "<font color=\"#FF0000\">".$p->t('abgabetool/fehlerMailBegutachter')."</font><br>&nbsp;";
}
}
}
else
{
echo "<font color=\"#FF0000\">Betreuer nicht gefunden. Kein Mail verschickt!</font><br>&nbsp;";
echo "<font color=\"#FF0000\">".$p->t('abgabetool/fehlerBetreuerNichtGefundenKeinMail')."</font><br>&nbsp;";
}
}
}
}
else
{
echo "Upload ist keine pdf-Datei! Bitte wiederholen Sie den Fileupload.";
echo $p->t('abgabetool/keinPDF');
}
}
$error=false;
}
if($command!="add" && $command!="update")
@@ -380,15 +385,15 @@ if($uid==-1||$projektarbeit_id==-1||$titel==-1)
if($command!="add")
{
echo '<h3>Abgabe Studentenbereich</h3>';
echo '<h3>'.$p->t('abgabetool/abgabeStudentenbereich').'</h3>';
//Einlesen der Termine
$qry="";
$htmlstr = "<div>Betreuer: <b>".$betreuer."</b><br>Titel: <b>".$titel."<b><br><br><b>Abgabetermine:</b></div>\n";
$htmlstr = "<div>".$p->t('abgabetool/betreuer').": <b>".$betreuer."</b><br>".$p->t('abgabetool/titel').": <b>".$titel."<b><br><br><b>".$p->t('abgabetool/abgabetermine').":</b></div>\n";
$htmlstr .= "<table class='detail' style='padding-top:10px;'>\n";
$htmlstr .= "<tr></tr>\n";
$qry="SELECT * FROM campus.tbl_paabgabe WHERE projektarbeit_id='".$projektarbeit_id."' AND paabgabetyp_kurzbz!='note' ORDER BY datum;";
$htmlstr .= "<tr><td>fix</td><td>Datum </td><td>Abgabetyp</td><td>Kurzbeschreibung der Abgabe</td><td>abgegeben am</td><td colspan='2'>Dateiupload (<b>nur pdf</b>)</td><td></td></tr>\n";
$qry="SELECT * FROM campus.tbl_paabgabe WHERE projektarbeit_id='".addslashes($projektarbeit_id)."' AND paabgabetyp_kurzbz!='note' ORDER BY datum;";
$htmlstr .= "<tr><td>".$p->t('abgabetool/fix')."</td><td>".$p->t('abgabetool/datum')." </td><td>".$p->t('abgabetool/abgabetyp')."</td><td>".$p->t('abgabetool/beschreibungAbgabe')."</td><td>".$p->t('abgabetool/abgegebenAm')."</td><td colspan='2'>".$p->t('abgabetool/dateiupload')."(<b>".$p->t('abgabetool/nurPDF')."</b>)</td><td></td></tr>\n";
$result=@$db->db_query($qry);
while ($row=@$db->db_fetch_object($result))
{
@@ -448,15 +453,15 @@ if($command!="add")
//$htmlstr .= "<td><input type='checkbox' name='fixtermin' ".($row->fixtermin=='t'?'checked=\"checked\"':'')." disabled>";
if($row->fixtermin=='t')
{
$htmlstr .= "<td><img src='../../../skin/images/bullet_red.png' alt='J' title='Fixer Abgabetermin' border=0></td>";
$htmlstr .= "<td><img src='../../../skin/images/bullet_red.png' alt='J' title='".$p->t('abgabetool/fixerAbgabetermin')."' border=0></td>";
}
else
{
$htmlstr .= "<td><img src='../../../skin/images/bullet_green.png' alt='N' title='Variabler Abgabetermin' border=0></td>";
$htmlstr .= "<td><img src='../../../skin/images/bullet_green.png' alt='N' title='".$p->t('abgabetool/variablerAbgabetermin')."' border=0></td>";
}
$htmlstr .= " </td>\n";
$htmlstr .= " <td align='center' style='background-color:".$bgcol.";font-weight:bold; color:".$fcol."'>".$datum_obj->formatDatum($row->datum,'d.m.Y')."</td>\n";
$qry_typ="SELECT * FROM campus.tbl_paabgabetyp WHERE paabgabetyp_kurzbz='".$row->paabgabetyp_kurzbz."'";
$qry_typ="SELECT * FROM campus.tbl_paabgabetyp WHERE paabgabetyp_kurzbz='".addslashes($row->paabgabetyp_kurzbz)."'";
$result_typ=$db->db_query($qry_typ);
$row_typ=$db->db_fetch_object($result_typ);
$htmlstr .= " <td>$row_typ->bezeichnung</td>\n";
@@ -474,13 +479,13 @@ if($command!="add")
if($row->fixtermin=='t' && $row->datum<date('Y-m-d'))
{
//Termin ist überschritten - es wird kein Upload für diesen Termin mehr angeboten
$htmlstr .= " <td>&nbsp;&nbsp;</td><td> Termin vorbei</td>";
$htmlstr .= " <td>&nbsp;&nbsp;</td><td> ".$p->t('abgabetool/terminVorbei')."</td>";
}
else
{
//Datei kann hochgeladen werden
$htmlstr .= " <td><input type='file' name='datei' size='60' accept='application/pdf'></td>\n";
$htmlstr .= " <td><input type='submit' name='schick' value=' abgeben ' title='ausgew&auml;hlte Datei hochladen'></td>";
$htmlstr .= " <td><input type='submit' name='schick' value='".$p->t('global/abschicken')."'></td>";
}
}
$htmlstr .= " </tr>\n";
+7 -7
View File
@@ -110,18 +110,18 @@ function treeProjektmenueSelect()
try
{
datasourceTreeProjektphase.removeXMLSinkObserver(observerTreeProjektphase);
treePhase.builder.removeListener(TaskTreeListener);
treePhase.builder.removeListener(ProjektphaseTreeListener);
}
catch(e)
{}
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
datasourceTreeTask = rdfService.GetDataSource(datasources);
datasourceTreeTask.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
datasourceTreeTask.QueryInterface(Components.interfaces.nsIRDFXMLSink);
treePhase.database.AddDataSource(datasourceTreeTask);
datasourceTreeTask.addXMLSinkObserver(observerTreeProjektphase);
treePhase.builder.addListener(TaskTreeListener);
datasourceTreeProjektphase = rdfService.GetDataSource(datasources);
datasourceTreeProjektphase.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
datasourceTreeProjektphase.QueryInterface(Components.interfaces.nsIRDFXMLSink);
treePhase.database.AddDataSource(datasourceTreeProjektphase);
datasourceTreeProjektphase.addXMLSinkObserver(observerTreeProjektphase);
treePhase.builder.addListener(ProjektphaseTreeListener);
treePhase.ref=ref;
}
catch(e)
+137 -82
View File
@@ -22,8 +22,6 @@ require_once('../../config/vilesci.config.inc.php');
?>
// *********** Globale Variablen *****************//
var datasourceTreeProjektphase; //Datasource des Tree Projektphase
var selectIDProjektphase=null; //ID des Task Eintrages der nach dem Refresh markiert werden soll
// ********** Observer und Listener ************* //
@@ -41,7 +39,7 @@ var observerTreeProjektphase =
onEndLoad : function(pSink)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
document.getElementById('projekttask-tree').builder.rebuild();
document.getElementById('tree-projektphase').builder.rebuild();
}
};
@@ -49,7 +47,7 @@ var observerTreeProjektphase =
// * Nach dem Rebuild wird die Lehreinheit wieder
// * markiert
// ****
var TaskTreeListener =
var ProjektphaseTreeListener =
{
willRebuild : function(builder)
{
@@ -59,119 +57,176 @@ var TaskTreeListener =
//timeout nur bei Mozilla notwendig da sonst die rows
//noch keine values haben. Ab Seamonkey funktionierts auch
//ohne dem setTimeout
window.setTimeout(TaskTreeSelectTask,10);
window.setTimeout(ProjektphaseTreeSelectPhase,10);
// Progressmeter stoppen
//document.getElementById('statusbar-progressmeter').setAttribute('mode','determined');
}
};
// ****************** FUNKTIONEN ************************** //
// ****
// * Auswahl einer Phase
// ****
function onselectTreeProjektphase()
{
// Trick 17 (sonst gibt's ein Permission denied)
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var tree = document.getElementById('tree-projektphase');
if (tree.currentIndex==-1) return;
try
{
//Ausgewaehltes Projekt holen
var projektphase_id = getTreeCellText(tree, "treecol-projektphase-projekt_phase_id", tree.currentIndex);
if(projektphase_id!='')
{
//Projektphase wurde markiert
//Loeschen Button aktivieren
document.getElementById('toolbarbutton-projektphase-del').disabled=false;
}
else
{
return false;
}
}
catch(e)
{
alert(e);
return false;
}
var req = new phpRequest('<?php echo APP_ROOT; ?>rdf/projektphase.rdf.php','','');
req.add('projektphase_id',projektphase_id);
var response = req.execute();
// Datasource holen
var dsource=parseRDFString(response, 'http://www.technikum-wien.at/projektphase/alle-projektphasen');
dsource=dsource.QueryInterface(Components.interfaces.nsIRDFDataSource);
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
getService(Components.interfaces.nsIRDFService);
var subject = rdfService.GetResource("http://www.technikum-wien.at/projektphase/" + projektphase_id);
var predicateNS = "http://www.technikum-wien.at/projektphase/rdf";
//Daten holen
var projekt_kurzbz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#projekt_kurzbz" ));
var projektphase_fk=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#projektphase_fk" ));
var bezeichnung=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#bezeichnung" ));
var beschreibung=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#beschreibung" ));
var start=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#start" ));
var ende=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#ende" ));
var budget=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#budget" ));
var personentage=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#personentage" ));
//Daten den Feldern zuweisen
document.getElementById('textbox-projektphase-detail-projekt_kurzbz').value=projekt_kurzbz;
document.getElementById('textbox-projektphase-detail-projektphase_id').value=projektphase_id;
document.getElementById('textbox-projektphase-detail-projektphase_fk').value=projektphase_fk;
document.getElementById('textbox-projektphase-detail-beschreibung').value=beschreibung;
document.getElementById('textbox-projektphase-detail-bezeichnung').value=bezeichnung;
document.getElementById('textbox-projektphase-detail-start').value=start;
document.getElementById('textbox-projektphase-detail-ende').value=ende;
document.getElementById('textbox-projektphase-detail-budget').value=budget;
document.getElementById('textbox-projektphase-detail-personentage').value=personentage;
document.getElementById('checkbox-projektphase-detail-neu').checked=false;
}
// ****
// * Asynchroner (Nicht blockierender) Refresh des LV Trees
// * Asynchroner (Nicht blockierender) Refresh des Trees
// ****
function TaskTreeRefresh()
function ProjektphaseTreeRefresh()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
//markierte Lehreinheit global speichern damit diese LE nach dem
//refresh wieder markiert werden kann.
var tree = document.getElementById('projekttask-tree');
var tree = document.getElementById('tree-projektphase');
try
{
selectIDProjektphase = getTreeCellText(tree, "projekttask-treecol-projekttask_id", tree.currentIndex);
selectIDProjektphase = getTreeCellText(tree, "treecol-projektphase-projekt_phase_id", tree.currentIndex);
}
catch(e)
{
selectIDProjektphase=null;
}
datasourceTreeProjektphase.Refresh(false); //non blocking
}
// ****
// * neuen Task anlegen
// * Speichert die Details
// ****
function TaskNeu()
function saveProjektphaseDetail()
{
// Trick 17 (sonst gibt's ein Permission denied)
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
alert('Neuer Task - noch nicht implementiert');
/*
var tree = document.getElementById('lehrveranstaltung-tree');
//Werte holen
projektphase_id = document.getElementById('textbox-projektphase-detail-projektphase_id').value;
projektphase_fk = document.getElementById('textbox-projektphase-detail-projektphase_fk').value;
projekt_kurzbz = document.getElementById('textbox-projektphase-detail-projekt_kurzbz').value;
bezeichnung = document.getElementById('textbox-projektphase-detail-bezeichnung').value;
beschreibung = document.getElementById('textbox-projektphase-detail-beschreibung').value;
start = document.getElementById('textbox-projektphase-detail-start').value;
ende = document.getElementById('textbox-projektphase-detail-ende').value;
budget = document.getElementById('textbox-projektphase-detail-budget').value;
personentage = document.getElementById('textbox-projektphase-detail-personentage').value;
neu = document.getElementById('checkbox-projektphase-detail-neu').checked;
//Details zuruecksetzen
LeDetailReset();
//Detail Tab als aktiv setzen
document.getElementById('lehrveranstaltung-tabbox').selectedIndex=0;
//Lektor-Tab und GruppenTree ausblenden
document.getElementById('lehrveranstaltung-detail-tree-lehreinheitgruppe').hidden=true;
document.getElementById('lehrveranstaltung-detail-label-lehreinheitgruppe').hidden=true;
document.getElementById('lehrveranstaltung-tab-lektor').collapsed=true;
//Lehrveranstaltungs_id holen
var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-lehrveranstaltung_id"] : "lehrveranstaltung-treecol-lehrveranstaltung_id";
var lehrveranstaltung_id=tree.view.getCellText(tree.currentIndex,col);
//Lehrform setzen
var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-lehrform"] : "lehrveranstaltung-treecol-lehrform";
var lehrform_kurzbz=tree.view.getCellText(tree.currentIndex,col);
//Lehrfach drop down setzen
//ID in globale Variable speichern
LeDetailLehrfach_id='';
var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-bezeichnung"] : "lehrveranstaltung-treecol-bezeichnung";
LeDetailLehrfach_label=tree.view.getCellText(tree.currentIndex,col);
lehrfachmenulist = document.getElementById('lehrveranstaltung-detail-menulist-lehrfach');
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
//Entfernen der alten Datasources
var oldDatasources = lehrfachmenulist.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
lehrfachmenulist.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
lehrfachmenulist.builder.rebuild();
//Url zusammenbauen
var url = '<?php echo APP_ROOT;?>rdf/lehrfach.rdf.php?lehrveranstaltung_id='+lehrveranstaltung_id+'&'+gettimestamp();
//RDF holen
var newDs = rdfService.GetDataSource(url);
lehrfachmenulist.database.AddDataSource(newDs);
//SinkObserver hinzufuegen
var sink = newDs.QueryInterface(Components.interfaces.nsIRDFXMLSink);
sink.addXMLSinkObserver(LeDetailLehrfachSinkObserver);
document.getElementById('lehrveranstaltung-detail-textbox-lehrveranstaltung').value=lehrveranstaltung_id;
document.getElementById('lehrveranstaltung-detail-checkbox-new').checked=true;
document.getElementById('lehrveranstaltung-detail-textbox-stundenblockung').value='2';
document.getElementById('lehrveranstaltung-detail-textbox-wochenrythmus').value='1';
if(lehrform_kurzbz=='')
lehrform_kurzbz='UE';
document.getElementById('lehrveranstaltung-detail-menulist-lehrform').value=lehrform_kurzbz;
var stsem = getStudiensemester();
document.getElementById('lehrveranstaltung-detail-menulist-studiensemester').value=stsem;
var soapBody = new SOAPObject("saveProjektphase");
soapBody.appendChild(new SOAPObject("projektphase_id")).val(projektphase_id);
soapBody.appendChild(new SOAPObject("projektphase_fk")).val(projektphase_fk);
soapBody.appendChild(new SOAPObject("projekt_kurzbz")).val(projekt_kurzbz);
soapBody.appendChild(new SOAPObject("bezeichnung")).val(bezeichnung);
soapBody.appendChild(new SOAPObject("beschreibung")).val(beschreibung);
soapBody.appendChild(new SOAPObject("start")).val(start);
soapBody.appendChild(new SOAPObject("ende")).val(ende);
soapBody.appendChild(new SOAPObject("budget")).val(budget);
soapBody.appendChild(new SOAPObject("personentage")).val(personentage);
if(neu)
soapBody.appendChild(new SOAPObject("neu")).val('true');
else
soapBody.appendChild(new SOAPObject("neu")).val('false');
soapBody.appendChild(new SOAPObject("user")).val(getUsername());
//Defaultwert fuer Anmerkung
document.getElementById('lehrveranstaltung-detail-textbox-anmerkung').value='<?php echo str_replace("'","\'",LEHREINHEIT_ANMERKUNG_DEFAULT);?>';
*/
var sr = new SOAPRequest("saveProjektphase",soapBody);
SOAPClient.Proxy="<?php echo APP_ROOT;?>soap/projektphase.soap.php?"+gettimestamp();
SOAPClient.SendRequest(sr, clb_saveProjektphase);
}
// ****
// * Callback Funktion nach Speichern eines Task
// ****
function clb_saveProjektphase(respObj)
{
try
{
var id = respObj.Body[0].SaveProjektphaseResponse[0].message[0].Text;
}
catch(e)
{
var fehler = respObj.Body[0].Fault[0].faultstring[0].Text;
alert('Fehler: '+fehler);
return;
}
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
document.getElementById('textbox-projektphase-detail-projektphase_id').value=id;
selectIDProjektphase=id;
datasourceTreeProjektphase.Refresh(false); //non blocking
SetStatusBarText('Daten wurden gespeichert');
}
// ****
// * Selectiert die Lektorzuordnung nachdem der Tree
// * rebuildet wurde.
// ****
function TaskTreeSelectTask()
function ProjektphaseTreeSelectPhase()
{
var tree=document.getElementById('projekttask-tree');
var tree=document.getElementById('tree-projektphase');
var items = tree.view.rowCount; //Anzahl der Zeilen ermitteln
//In der globalen Variable ist die zu selektierende ID gespeichert
@@ -180,7 +235,7 @@ function TaskTreeSelectTask()
for(var i=0;i<items;i++)
{
//id der row holen
id = getTreeCellText(tree, "projekttask-treecol-projekttask_id", i);
id = getTreeCellText(tree, "treecol-projektphase-projekt_phase_id", i);
//wenn dies die zu selektierende Zeile
if(selectIDProjektphase==id)
@@ -202,7 +257,7 @@ function ProjektphaseNeu()
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var tree=document.getElementById('tree-projektmenue');
alert(tree);
var projekt_kurzbz=getTreeCellText(tree, "treecol-projektmenue-projekt_kurzbz", tree.currentIndex);
window.open('<?php echo APP_ROOT; ?>content/projekt/projektphase.window.xul.php?projekt_kurzbz='+projekt_kurzbz,'Projektphase anlegen', 'height=384,width=512,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no');
//alert (oe);
+21 -15
View File
@@ -28,7 +28,7 @@ require_once('../../config/vilesci.config.inc.php');
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
/*echo '<?xul-overlay href="'.APP_ROOT.'content/projekt/projektphasedetail.overlay.xul.php"?>';*/
echo '<?xul-overlay href="'.APP_ROOT.'content/projekt/projektphasedetail.overlay.xul.php"?>';
?>
<overlay id="ProjektphaseOverlay"
xmlns:html="http://www.w3.org/1999/xhtml"
@@ -69,33 +69,37 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
context="projektphase-tree-popup"
>
<treecols>
<treecol id="treecol-projektphase-projekt_phase" label="Phase" flex="5" hidden="false" primary="true" persist="hidden, width, ordinal"
<treecol id="treecol-projektphase-projekt_phase" label="Phase" flex="5" hidden="false" primary="true" persist="hidden width ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/projektphase/rdf#bezeichnung"/>
<splitter class="tree-splitter"/>
<treecol id="treecol-projektphase-projekt_phase_id" label="PhaseID" flex="2" hidden="true" persist="hidden, width, ordinal"
<treecol id="treecol-projektphase-projekt_phase_id" label="PhaseID" flex="2" hidden="true" persist="hidden width ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/projektphase/rdf#projektphase_id"/>
sort="rdf:http://www.technikum-wien.at/projektphase/rdf#projekt_phase_id"/>
<splitter class="tree-splitter"/>
<treecol id="treecol-projektphase-projekt_kurzbz" label="Projekt" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/projektphase/rdf#projektphase_id"/>
<splitter class="tree-splitter"/>
<treecol id="treecol-projektphase-beschreibung" label="Beschreibung" flex="5" hidden="true" persist="hidden, width, ordinal"
<treecol id="treecol-projektphase-beschreibung" label="Beschreibung" flex="5" hidden="true" persist="hidden width ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/projektphase/rdf#beschreibung"/>
<splitter class="tree-splitter"/>
<treecol id="treecol-projektphase-start" label="Start" flex="2" hidden="false" persist="hidden, width, ordinal"
<treecol id="treecol-projektphase-beginn" label="Beginn" flex="2" hidden="false" persist="hidden width ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/projektphase/rdf#start" />
sort="rdf:http://www.technikum-wien.at/projektphase/rdf#beginn" />
<splitter class="tree-splitter"/>
<treecol id="treecol-projektphase-ende" label="Ende" flex="2" hidden="false" persist="hidden, width, ordinal"
<treecol id="treecol-projektphase-ende" label="Ende" flex="2" hidden="false" persist="hidden width ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/projektphase/rdf#ende" />
<splitter class="tree-splitter"/>
<treecol id="treecol-projektphase-budget" label="Budger" flex="2" hidden="false" persist="hidden, width, ordinal"
<treecol id="treecol-projektphase-budget" label="Budget" flex="2" hidden="false" persist="hidden width ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/projektphase/rdf#budget" />
<treecol id="treecol-projektphase-oe_kurzbz" label="Organisationseinheit" flex="2" hidden="false" persist="hidden width ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/projektphase/rdf#oe_kurzbz" />
<treecol id="treecol-projektphase-projekt_kurzbz" label="Projekt" flex="2" hidden="true" persist="hidden width ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/projektphase/rdf#projekt_kurzbz"/>
<splitter class="tree-splitter"/>
</treecols>
<template>
@@ -104,11 +108,13 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<treeitem uri="rdf:*">
<treerow dbID="rdf:http://www.technikum-wien.at/projektphase/rdf#projektphase_id" >
<treecell label="rdf:http://www.technikum-wien.at/projektphase/rdf#bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/projektphase/rdf#projektphase_id"/>
<treecell label="rdf:http://www.technikum-wien.at/projektphase/rdf#projekt_phase_id"/>
<treecell label="rdf:http://www.technikum-wien.at/projektphase/rdf#beschreibung"/>
<treecell label="rdf:http://www.technikum-wien.at/projektphase/rdf#start"/>
<treecell label="rdf:http://www.technikum-wien.at/projektphase/rdf#beginn"/>
<treecell label="rdf:http://www.technikum-wien.at/projektphase/rdf#ende"/>
<treecell label="rdf:http://www.technikum-wien.at/projektphase/rdf#budget"/>
<treecell label="rdf:http://www.technikum-wien.at/projektphase/rdf#oe_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/projektphase/rdf#projekt_kurzbz"/>
</treerow>
</treeitem>
</treechildren>
+9 -8
View File
@@ -104,7 +104,8 @@ function saveProjektphase()
var start=document.getElementById('textbox-projektphase-start').value;
var ende=document.getElementById('textbox-projektphase-ende').value;
var budget=document.getElementById('textbox-projektphase-budget').value;
alert (projekt_kurzbz);
var personentage=document.getElementById('textbox-projektphase-personentage').value;
// Variablen checken
// SOAP-Action
@@ -117,19 +118,19 @@ function saveProjektphase()
soapBody.appendChild(new SOAPObject("start")).val(start);
soapBody.appendChild(new SOAPObject("ende")).val(ende);
soapBody.appendChild(new SOAPObject("budget")).val(budget);
soapBody.appendChild(new SOAPObject("personentage")).val(personentage);
soapBody.appendChild(new SOAPObject("user")).val(getUsername());
soapBody.appendChild(new SOAPObject("neu")).val("true");
var sr = new SOAPRequest("saveProjektDaten",soapBody);
SOAPClient.Proxy="<?php echo APP_ROOT;?>soap/projektphase.soap.php";
SOAPClient.SendRequest(sr, clb_saveProjekt);
// if(window.opener.KontaktBankverbindungSpeichern(document))
// window.close();
SOAPClient.Proxy="<?php echo APP_ROOT;?>soap/projektphase.soap.php?"+gettimestamp();
SOAPClient.SendRequest(sr, clb_saveProjektphase);
}
function clb_saveProjekt(respObj)
function clb_saveProjektphase(respObj)
{
try
{
var msg = respObj.Body[0].saveProjektDatenResponse[0].message[0].Text;
var msg = respObj.Body[0].SaveProjektphaseResponse[0].message[0].Text;
alert('Antwort: '+msg);
}
catch(e)
+13 -7
View File
@@ -49,12 +49,12 @@ else
<window id="window-projektphase-neu" title="Neue Projektphase anlegen"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
onload="initProjektphase(<?php echo ($projekt_kurzbz!=''?$projekt_kurzbz:"''"); ?>)"
>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>include/js/jquery.js"></script>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>include/js/jqSOAPClient.js"></script>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>include/js/jqXMLUtils.js"></script>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>content/projekt/projektphase.window.js.php" />
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>content/functions.js.php" />
<vbox>
<checkbox id="checkbox-projektphase-neu" hidden="true"/>
@@ -73,7 +73,7 @@ else
</row>
<row>
<label value="Projekt (Kurzbz)" control="textbox-projektphase-projekt_kurzbz"/>
<textbox id="textbox-projektphase-projekt_kurzbz" value="<?php echo $projekt_kurzbz; ?>" maxlength="128"/>
<textbox id="textbox-projektphase-projekt_kurzbz" value="<?php echo $projekt_kurzbz; ?>" maxlength="16"/>
</row>
<row>
<label value="Projektphase (FK)" control="textbox-projektphase-projektphase_fk"/>
@@ -81,24 +81,29 @@ else
</row>
<row>
<label value="Bezeichnung" control="textbox-projektphase-bezeichnung"/>
<textbox id="textbox-projektphase-bezeichnung" checked="true"/>
<textbox id="textbox-projektphase-bezeichnung" maxlength="32" />
</row>
<row>
<label value="Beschreibung" control="textbox-projektphase-beschreibung"/>
<textbox id="textbox-projektphase-beschreibung" checked="true"/>
<textbox id="textbox-projektphase-beschreibung"/>
</row>
<row>
<label value="Start" control="textbox-projektphase-start"/>
<textbox id="textbox-projektphase-start" checked="true"/>
<textbox id="textbox-projektphase-start"/>
</row>
<row>
<label value="Ende" control="textbox-projektphase-ende"/>
<textbox id="textbox-projektphase-ende" checked="true"/>
<textbox id="textbox-projektphase-ende"/>
</row>
<row>
<label value="Budget" control="textbox-projektphase-budget"/>
<textbox id="textbox-projektphase-budget" checked="true"/>
<textbox id="textbox-projektphase-budget"/>
</row>
<row>
<label value="Personentage" control="textbox-projektphase-personentage"/>
<textbox id="textbox-projektphase-personentage"/>
</row>
<!--
<row>
<label value="Test" control="textbox-projektphase-test"/>
<menulist id="menulist-projektphase-test" flex="1">
@@ -112,6 +117,7 @@ else
<label value="Verrechnungskonto" control="bankverbindung-textbox-verrechnung"/>
<checkbox id="bankverbindung-checkbox-verrechnung" checked="true"/>
</row>
-->
</rows>
</grid>
<hbox>
+98
View File
@@ -0,0 +1,98 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>
*/
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml");
require_once('../../config/vilesci.config.inc.php');
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
?>
<overlay id="ProjektphaseDetailOverlay"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<!-- ************************ -->
<!-- * projektphasedetail * -->
<!-- ************************ -->
<vbox id="projektphase-detail" flex="1">
<vbox hidden="true">
<label value="Neu"/>
<checkbox id="checkbox-projektphase-detail-neu" checked="true" />
</vbox>
<grid id="grid-projektphase-detail" style="overflow:auto;margin:4px;" flex="1">
<columns >
<column flex="1"/>
<column flex="5"/>
</columns>
<rows>
<row>
<label value="Projektphase ID" control="textbox-projektphase-detail-projektphase_id "/>
<textbox id="textbox-projektphase-detail-projektphase_id" readonly="true"/>
</row>
<row>
<label value="Projekt Kurzbz" control="textbox-projektphase-detail-projekt_kurzbz"/>
<textbox id="textbox-projektphase-detail-projekt_kurzbz"/>
</row>
<row>
<label value="Projektphase FK" control="textbox-projektphase-detail-projektphase_fk "/>
<textbox id="textbox-projektphase-detail-projektphase_fk"/>
</row>
<row>
<label value="Bezeichnung" control="textbox-projektphase-detail-bezeichnung"/>
<textbox id="textbox-projektphase-detail-bezeichnung"/>
</row>
<row>
<label value="Beschreibung" control="textbox-projektphase-detail-beschreibung"/>
<textbox id="textbox-projektphase-detail-beschreibung" multiline="true"/>
</row>
<row>
<label value="Start" control="textbox-projektphase-detail-start"/>
<textbox id="textbox-projektphase-detail-start"/>
</row>
<row>
<label value="Ende" control="textbox-projektphase-detail-ende"/>
<textbox id="textbox-projektphase-detail-ende"/>
</row>
<row>
<label value="Budget" control="textbox-projektphase-detail-budget"/>
<textbox id="textbox-projektphase-detail-budget"/>
</row>
<row>
<label value="Personentage" control="textbox-projektphase-detail-personentage"/>
<textbox id="textbox-projektphase-detail-personentage"/>
</row>
</rows>
</grid>
<hbox>
<spacer flex="1" />
<button id="button-projektphase-detail-speichern" oncommand="saveProjektphaseDetail()" label="Speichern" />
</hbox>
</vbox>
<vbox id="projektphase-mantis" flex="1">
<description>asdf Details</description>
</vbox>
</overlay>
+30 -100
View File
@@ -111,7 +111,7 @@ class projektphase extends basis_db
public function getProjektphasen($projekt_kurzbz)
{
$this->result=array();
$qry = "SELECT * FROM fue.tbl_projektphase WHERE projekt_kurzbz='$projekt_kurzbz' ORDER BY start;";
$qry = "SELECT * FROM fue.tbl_projektphase WHERE projekt_kurzbz='$projekt_kurzbz' ORDER BY start, projektphase_fk DESC;";
//echo "\n".$qry."\n";
if($this->db_query($qry))
@@ -154,70 +154,18 @@ class projektphase extends basis_db
{
//Gesamtlaenge pruefen
if ($this->projekttyp_kurzbz==null)
{
$this->errormsg='Projekttyp_kurzbz darf nicht NULL sein!';
}
if ($this->lehreinheit_id==null)
{
$this->errormsg='Lehreinheit_id darf nicht NULL sein!';
}
if(mb_strlen($this->projekttyp_kurzbz)>16)
{
$this->errormsg = 'Projektyp_kurzbz darf nicht länger als 16 Zeichen sein';
return false;
}
if(mb_strlen($this->titel)>1024)
{
$this->errormsg = 'Titel darf nicht länger als 1024 Zeichen sein';
return false;
}
if(mb_strlen($this->titel_english)>1024)
{
$this->errormsg = 'Titel darf nicht länger als 1024 Zeichen sein';
return false;
}
if(mb_strlen($this->themenbereich)>64)
{
$this->errormsg = 'Themenbereich darf nicht länger als 64 Zeichen sein';
return false;
}
if(mb_strlen($this->anmerkung)>256)
{
$this->errormsg = 'Anmerkung darf nicht länger als 256 Zeichen sein';
return false;
}
/*if(!is_numeric($this->note))
{
$this->errormsg = 'Note muß ein numerischer Wert sein - student_uid: '.$this->student_uid;
return false;
}*/
if($this->punkte!='' && !is_numeric($this->punkte))
{
$this->errormsg = 'Punkte muss ein numerischer Wert sein';
return false;
}
if($this->faktor!='' && !is_numeric($this->faktor))
{
$this->errormsg = 'Faktor muss ein numerischer Wert sein';
return false;
}
if($this->stundensatz!='' && !is_numeric($this->stundensatz))
{
$this->errormsg = 'Stundensatz muss ein numerischer Wert sein';
return false;
}
if($this->gesamtstunden!='' && !is_numeric($this->gesamtstunden))
{
$this->errormsg = 'Gesamtstunden muss ein numerischer Wert sein';
return false;
}
if(!is_bool($this->freigegeben))
{
$this->errormsg = 'freigegeben ist ungueltig';
return false;
}
if(mb_strlen($this->bezeichnung)>32)
{
$this->errormsg='Bezeichnung darf nicht laenger als 32 Zeichen sein';
return false;
}
if(mb_strlen($this->projekt_kurzbz)>16)
{
$this->errormsg.='Projekt Kurzbz darf nicht länger als 16 Zeichen sein';
return false;
}
$this->errormsg = '';
return true;
}
@@ -242,52 +190,34 @@ class projektphase extends basis_db
//Neuen Datensatz einfuegen
$qry='BEGIN; INSERT INTO fue.tbl_projektphase (projekt_kurzbz, projektphase_fk, bezeichnung,
beschreibung, start, ende, budget, insertvon, insertamum, updatevon, updateamum) VALUES ('.
$this->addslashes($this->projekt_kurzbz).', ';
if ($this->projektphase_fk=='')
$qry.='NULL, ';
else
$qry.=$this->projektphase_fk.', ';
$qry.=$this->addslashes($this->bezeichnung).', '.
beschreibung, start, ende, budget, insertvon, insertamum, updatevon, updateamum, personentage) VALUES ('.
$this->addslashes($this->projekt_kurzbz).', '.
$this->addslashes($this->projektphase_fk).', '.
$this->addslashes($this->bezeichnung).', '.
$this->addslashes($this->beschreibung).', '.
$this->addslashes($this->start).', '.
$this->addslashes($this->ende).', '.
$this->addslashes($this->budget).', '.
$this->addslashes($this->insertvon).', now(), '.
$this->addslashes($this->updatevon).', now() );';
$this->addslashes($this->updatevon).', now(), '.
$this->addslashes($this->personentage).' );';
}
else
{
//Updaten des bestehenden Datensatzes
//Pruefen ob projekt_kurzbz eine gueltige Zahl ist
if(!is_numeric($this->projekt_kurzbz))
{
$this->errormsg = 'projekt_kurzbz muss eine gueltige Zahl sein';
return false;
}
$qry='UPDATE lehre.tbl_projektarbeit SET '.
'projekttyp_kurzbz='.$this->addslashes($this->projekttyp_kurzbz).', '.
'titel='.$this->addslashes($this->titel).', '.
'titel_english='.$this->addslashes($this->titel_english).', '.
'lehreinheit_id='.$this->addslashes($this->lehreinheit_id).', '.
'student_uid='.$this->addslashes($this->student_uid).', '.
'firma_id='.$this->addslashes($this->firma_id).', '.
'note='.$this->addslashes($this->note).', '.
'punkte='.$this->addslashes($this->punkte).', '.
'beginn='.$this->addslashes($this->beginn).', '.
$qry='UPDATE fue.tbl_projektphase SET '.
'projekt_kurzbz='.$this->addslashes($this->projekt_kurzbz).', '.
'projektphase_fk='.$this->addslashes($this->projektphase_fk).', '.
'bezeichnung='.$this->addslashes($this->bezeichnung).', '.
'beschreibung='.$this->addslashes($this->beschreibung).', '.
'start='.$this->addslashes($this->start).', '.
'ende='.$this->addslashes($this->ende).', '.
'faktor='.$this->addslashes($this->faktor).', '.
'freigegeben='.($this->freigegeben?'true':'false').', '.
'gesperrtbis='.$this->addslashes($this->gesperrtbis).', '.
'stundensatz='.$this->addslashes($this->stundensatz).', '.
'gesamtstunden='.$this->addslashes($this->gesamtstunden).', '.
'themenbereich='.$this->addslashes($this->themenbereich).', '.
'anmerkung='.$this->addslashes($this->anmerkung).', '.
'budget='.$this->addslashes($this->budget).', '.
'personentage='.$this->addslashes($this->personentage).', '.
'updateamum= now(), '.
'updatevon='.$this->addslashes($this->updatevon).' '.
'WHERE projekt_kurzbz='.$this->addslashes($this->projekt_kurzbz).';';
'WHERE projektphase_id='.$this->addslashes($this->projektphase_id).';';
}
if($this->db_query($qry))
@@ -295,12 +225,12 @@ class projektphase extends basis_db
if($new)
{
//Sequence auslesen
$qry = "SELECT currval('fue.tbl_projektphase_projektphase_id_seq') as id;";
$qry = "SELECT currval('fue.seq_projektphase_projektphase_id') as id;";
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->projekt_kurzbz = $row->id;
$this->projektphase_id = $row->id;
$this->db_query('COMMIT');
return true;
}
@@ -327,7 +257,7 @@ class projektphase extends basis_db
return false;
}
}
/**
* Loescht den Datenensatz mit der ID die uebergeben wird
* @param $projekt_kurzbz ID die geloescht werden soll
+66
View File
@@ -0,0 +1,66 @@
<?php
$this->phrasen['abgabetool/abgabetool']='Abgabetool';
$this->phrasen['abgabetool/typ']='Typ';
$this->phrasen['abgabetool/titel']='Titel';
$this->phrasen['abgabetool/betreuerart']='Betreuerart';
$this->phrasen['abgabetool/student']='Student';
$this->phrasen['abgabetool/plagiatspruefung']='zur Plagiatsprüfung';
$this->phrasen['abgabetool/studentenansicht']='Studentenansicht';
$this->phrasen['abgabetool/abgabetermine']='Abgabetermine';
$this->phrasen['abgabetool/benoten']='benoten';
$this->phrasen['abgabetool/fix']='fix'; // Fixtermin
$this->phrasen['abgabetool/datum']='Datum'; // Datum für Terminabgabe
$this->phrasen['abgabetool/abgabetyp']='Abgabetyp';
$this->phrasen['abgabetool/details']='Details';
$this->phrasen['abgabetool/betreuer']='Betreuer';
$this->phrasen['abgabetool/upload']='Upload';
$this->phrasen['abgabetool/abgegebenAm']='abgegeben am';
$this->phrasen['abgabetool/zweitbetreuerBei']='Zweitbetreuer bei';
$this->phrasen['abgabetool/terminserieAnlegen']='Terminserie Anlegen';
$this->phrasen['abgabetool/terminserieAnlegenHelp']='Termin für mehrere Personen anlegen';
$this->phrasen['abgabetool/ueberschrift']='Bachelor-/Diplomarbeiten';
$this->phrasen['abgabetool/alleArbeitenAnzeigen']='alle betreuten Arbeiten anzeigen';
$this->phrasen['abgabetool/terminuebersichtAnzeigen']='Terminübersicht anzeigen';
$this->phrasen['abgabetool/abgabeLektorenbereich']='Abgabe Lektorenbereich';
$this->phrasen['abgabetool/abgabeStudentenbereich']='Abgabe Studentenbereich';
$this->phrasen['abgabetool/beschreibungAbgabe']='Kurzbeschreibung der Abgabe';
$this->phrasen['abgabetool/fixerAbgabetermin']='Fixer Abgabetermin';
$this->phrasen['abgabetool/variablerAbgabetermin']='Variabler Abgabetermin';
$this->phrasen['abgabetool/terminaenderungSpeichern']='Terminänderung speichern';
$this->phrasen['abgabetool/terminLoeschen']='Termin löschen';
$this->phrasen['abgabetool/abgegebeneDatei']='abgegebene Datei';
$this->phrasen['abgabetool/kontrolleZusatzdaten']='Kontrolle der Zusatzdaten';
$this->phrasen['abgabetool/neuenTerminSpeichern']='neuen Termin speichern';
$this->phrasen['abgabetool/terminuebersicht']='Terminübersicht';
$this->phrasen['abgabetool/eingabeTerminPersonen']='Eingabe eines Termins für mehrere Personen';
$this->phrasen['abgabetool/abgabeZusatzdaten']='Abgabe Zusatzdaten';
$this->phrasen['abgabetool/spracheDerArbeit']='Sprache der Arbeit';
$this->phrasen['abgabetool/kontrollierteSchlagwoerter']='Kontrollierte Schlagwörter';
$this->phrasen['abgabetool/deutscheSchlagwoerter']='Dt. Schlagwörter';
$this->phrasen['abgabetool/englischeSchlagwoerter']='Engl. Schlagwörter';
$this->phrasen['abgabetool/abstract']='Abstract';
$this->phrasen['abgabetool/abstractEng']='Abstract engl.';
$this->phrasen['abgabetool/maxZeichen']='(max. 5000 Zeichen)';
$this->phrasen['abgabetool/seitenanzahl']='Seitenanzahl';
$this->phrasen['abgabetool/pflichtfeld']='Pflichtfeld';
$this->phrasen['abgabetool/emailAnBetreuer']='Email an Betreuer schreiben';
$this->phrasen['abgabetool/dateiupload']='Dateiupload';
$this->phrasen['abgabetool/nurPDF']='nur PDF';
$this->phrasen['abgabetool/terminVorbei']='Termin vorbei';
$this->phrasen['abgabetool/keineTermineVorhanden']='Derzeit sind keine Termine vorhanden';
$this->phrasen['abgabetool/TeminVorhanden']='Dieser Termin ist bereits vorhanden';
$this->phrasen['abgabetool/mailVerschicktAn']='E-Mail wurde verschickt an';
$this->phrasen['abgabetool/fehlerMailStudent']='Fehler beim Versenden des Mails an den Studierenden!';
$this->phrasen['abgabetool/fehlerMail']=' Fehler beim Versenden des Mails!';
$this->phrasen['abgabetool/terminNichtGefunden']='Termin konnte nicht gefunden werden!';
$this->phrasen['abgabetool/fehlerTerminEintragen']='Die Termin konnte nicht eingetragen werden!';
$this->phrasen['abgabetool/fehlerTerminLoeschen']='Fehler beim Löschen des Termins!';
$this->phrasen['abgabetool/keineBerechtigungStudentenansicht']='Sie haben keine Berechtigung zum Anzeigen der Studentenansicht';
$this->phrasen['abgabetool/dateneingabeUnvollstaendig']='Die Dateneingabe ist unvollständig';
$this->phrasen['abgabetool/fehlerMailBegutachter']='Fehler beim Versenden des Mails an den (Erst-)Begutachter!';
$this->phrasen['abgabetool/fehlerBetreuerNichtGefundenKeinMail']='Betreuer nicht gefunden. Kein Mail verschickt!';
$this->phrasen['abgabetool/keinPDF']='Upload ist keine pdf-Datei! Bitte wiederholen Sie den Fileupload.';
$this->phrasen['abgabetool/dateiZuGross']='Die Datei ist zu groß! Maximale Dateigröße 15 MB';
?>
+6
View File
@@ -71,6 +71,7 @@ $this->phrasen['global/datum']='Datum';
$this->phrasen['global/stunde']='Stunde';
$this->phrasen['global/person']='Person';
$this->phrasen['global/personen']='Personen';
$this->phrasen['global/personenkz']='Personenkz.';
$this->phrasen['global/beschreibung']='Beschreibung';
$this->phrasen['global/angelegtAm']='angelegt am';
$this->phrasen['global/funktion']='Funktion'; //Mitarbeiterfunktion zB Assistenz
@@ -92,6 +93,7 @@ $this->phrasen['global/angemeldet']='Angemeldet';
$this->phrasen['global/löschen']='Löschen';
$this->phrasen['global/dateiLoeschen']='Datei Löschen';
$this->phrasen['global/betreff']='Betreff';
$this->phrasen['global/handbuch']='Handbuch';
// Statusmeldungen
$this->phrasen['global/erfolgreichgespeichert']='Erfolgreich gespeichert';
@@ -109,6 +111,9 @@ $this->phrasen['global/nichtAngemeldet'] = 'Sie sind nicht angemeldet. Es wurde
$this->phrasen['global/LDAPserverNichtErreichbar']='Der LDAP-Server ist nicht erreichbar';
$this->phrasen['global/unbekannterFehleraufgetreten']='Es ist ein unbekannter Fehler aufgetreten';
$this->phrasen['global/fehlerBeiDerParameteruebergabe']='Fehler bei der Uebergabe der Parameter';
$this->phrasen['global/warnungWirklichLoeschen']='Wollen Sie diesen Datensatz wirklich löschen?';
$this->phrasen['global/dateiErfolgreichHochgeladen']='Die Datei wurde erfolgreich hochgeladen';
$this->phrasen['global/dateiNichtErfolgreichHochgeladen']='Die Datei wurde nicht erfolgreich hochgeladen. Bitte wiederholen Sie den Vorgang';
$this->phrasen['global/FuerDieseAktionBenoetigenSieAdministrationsrechte']='Fuer diese Aktion benoetigen Sie Administratorenrechte';
// LV - Plan
@@ -125,6 +130,7 @@ $this->phrasen['global/reservierungsliste']='Reservierungsliste';
$this->phrasen['global/reservierungenLoeschen']='Reservierungen löschen';
$this->phrasen['global/raumsuche']='Raumsuche';
$this->phrasen['global/lehrverband']='Lehr-Verband';
$this->phrasen['global/stg']='Stg';
$this->phrasen['global/sem']='Sem';
$this->phrasen['global/ver']='Ver';
$this->phrasen['global/grp']='Grp';
+66
View File
@@ -0,0 +1,66 @@
<?php
$this->phrasen['abgabetool/abgabetool']='Abgabetool';
$this->phrasen['abgabetool/typ']='Type';
$this->phrasen['abgabetool/titel']='Title';
$this->phrasen['abgabetool/betreuerart']='Betreuerart';
$this->phrasen['abgabetool/student']='Student';
$this->phrasen['abgabetool/plagiatspruefung']='to Plagiarism check';
$this->phrasen['abgabetool/studentenansicht']='Student view';
$this->phrasen['abgabetool/abgabetermine']='Deadlines';
$this->phrasen['abgabetool/benoten']='grade';
$this->phrasen['abgabetool/fix']='fix'; // Fixtermin
$this->phrasen['abgabetool/datum']='Date'; // Datum für Terminabgabe
$this->phrasen['abgabetool/abgabetyp']='Abgabetyp';
$this->phrasen['abgabetool/details']='Details';
$this->phrasen['abgabetool/betreuer']='Assessor';
$this->phrasen['abgabetool/upload']='Upload';
$this->phrasen['abgabetool/abgegebenAm']='submittet at';
$this->phrasen['abgabetool/zweitbetreuerBei']='Second Assessor at';
$this->phrasen['abgabetool/terminserieAnlegen']='Terminserie Anlegen';
$this->phrasen['abgabetool/terminserieAnlegenHelp']='Termin für mehrere Personen anlegen';
$this->phrasen['abgabetool/ueberschrift']='Bachelor-/Diplomarbeiten';
$this->phrasen['abgabetool/alleArbeitenAnzeigen']='alle betreuten Arbeiten anzeigen';
$this->phrasen['abgabetool/terminuebersichtAnzeigen']='Terminübersicht anzeigen';
$this->phrasen['abgabetool/abgabeLektorenbereich']='Abgabe Lektorenbereich';
$this->phrasen['abgabetool/abgabeStudentenbereich']='Abgabe Studentenbereich';
$this->phrasen['abgabetool/beschreibungAbgabe']='Kurzbeschreibung der Abgabe';
$this->phrasen['abgabetool/fixerAbgabetermin']='Fixer Abgabetermin';
$this->phrasen['abgabetool/variablerAbgabetermin']='Variabler Abgabetermin';
$this->phrasen['abgabetool/terminaenderungSpeichern']='Terminänderung speichern';
$this->phrasen['abgabetool/terminLoeschen']='Termin löschen';
$this->phrasen['abgabetool/abgegebeneDatei']='abgegebene Datei';
$this->phrasen['abgabetool/kontrolleZusatzdaten']='Kontrolle der Zusatzdaten';
$this->phrasen['abgabetool/neuenTerminSpeichern']='neuen Termin speichern';
$this->phrasen['abgabetool/terminuebersicht']='Terminübersicht';
$this->phrasen['abgabetool/eingabeTerminPersonen']='Eingabe eines Termins für mehrere Personen';
$this->phrasen['abgabetool/abgabeZusatzdaten']='Abgabe Zusatzdaten';
$this->phrasen['abgabetool/spracheDerArbeit']='Sprache der Arbeit';
$this->phrasen['abgabetool/kontrollierteSchlagwoerter']='Kontrollierte Schlagwörter';
$this->phrasen['abgabetool/deutscheSchlagwoerter']='Dt. Schlagwörter';
$this->phrasen['abgabetool/englischeSchlagwoerter']='Engl. Schlagwörter';
$this->phrasen['abgabetool/abstract']='Abstract';
$this->phrasen['abgabetool/abstractEng']='Abstract engl.';
$this->phrasen['abgabetool/maxZeichen']='(max. 5000 Char.)';
$this->phrasen['abgabetool/seitenanzahl']='Number of Pages';
$this->phrasen['abgabetool/pflichtfeld']='Required Field';
$this->phrasen['abgabetool/emailAnBetreuer']='Write E-Mail to Assessor';
$this->phrasen['abgabetool/dateiupload']='Fileupload';
$this->phrasen['abgabetool/nurPDF']='only PDF';
$this->phrasen['abgabetool/terminVorbei']='Termin vorbei';
$this->phrasen['abgabetool/keineTermineVorhanden']='Derzeit sind keine Termine vorhanden';
$this->phrasen['abgabetool/TeminVorhanden']='Dieser Termin ist bereits vorhanden';
$this->phrasen['abgabetool/mailVerschicktAn']='E-Mail sent to';
$this->phrasen['abgabetool/fehlerMailStudent']='Error sending E-Mail to Student!';
$this->phrasen['abgabetool/fehlerMail']='E-Mail sending failed!';
$this->phrasen['abgabetool/terminNichtGefunden']='Termin konnte nicht gefunden werden!';
$this->phrasen['abgabetool/fehlerTerminEintragen']='Die Termin konnte nicht eingetragen werden!';
$this->phrasen['abgabetool/fehlerTerminLoeschen']='Fehler beim Löschen des Termins!';
$this->phrasen['abgabetool/keineBerechtigungStudentenansicht']='You are not allowed to view this Page';
$this->phrasen['abgabetool/dateneingabeUnvollstaendig']='Incomplete Data input';
$this->phrasen['abgabetool/fehlerMailBegutachter']='Error sending E-Mail to Assessor!';
$this->phrasen['abgabetool/fehlerBetreuerNichtGefundenKeinMail']='Assessor not found. No E-Mail sent!';
$this->phrasen['abgabetool/keinPDF']='Upload-File ist not a PDF! Please retry the Fileupload.';
$this->phrasen['abgabetool/dateiZuGross']='The File is too big! Maximum File size: 15 MB';
?>
+6
View File
@@ -70,6 +70,7 @@ $this->phrasen['global/bezeichnung']='Description';
$this->phrasen['global/datum']='Date';
$this->phrasen['global/stunde']='Hour';
$this->phrasen['global/person']='Person';
$this->phrasen['global/personenkz']='StudentID';
$this->phrasen['global/personen']='Number of Persons';
$this->phrasen['global/beschreibung']='Description';
$this->phrasen['global/angelegtAm']='created:';
@@ -92,6 +93,7 @@ $this->phrasen['global/angemeldet']='Registered';
$this->phrasen['global/löschen']='Delete';
$this->phrasen['global/dateiLoeschen']='Delete File';
$this->phrasen['global/betreff']='Subject';
$this->phrasen['global/handbuch']='Manual';
// Statusmeldungen
$this->phrasen['global/erfolgreichgespeichert']='Successfully saved';
@@ -109,6 +111,9 @@ $this->phrasen['global/nichtAngemeldet'] = 'You are not logged in. No UID found'
$this->phrasen['global/LDAPserverNichtErreichbar']='Error connecting to LDAP-Server';
$this->phrasen['global/unbekannterFehleraufgetreten']='Unknown error occurred';
$this->phrasen['global/fehlerBeiDerParameteruebergabe']='Fehler bei der Uebergabe der Parameter';
$this->phrasen['global/warnungWirklichLoeschen']='Do you want to delete this record?';
$this->phrasen['global/dateiErfolgreichHochgeladen']='File successfully uploaded';
$this->phrasen['global/dateiNichtErfolgreichHochgeladen']='Failed to upload File. Please retry';
$this->phrasen['global/FuerDieseAktionBenoetigenSieAdministrationsrechte']='You must be Administrator.';
// LV - Plan
@@ -125,6 +130,7 @@ $this->phrasen['global/reservierungsliste']='Reservation list';
$this->phrasen['global/reservierungenLoeschen']='Delete room reservations';
$this->phrasen['global/raumsuche']='Room search';
$this->phrasen['global/lehrverband']='Lehr-Verband';
$this->phrasen['global/stg']='Stg';
$this->phrasen['global/sem']='Sem';
$this->phrasen['global/ver']='Ver';
$this->phrasen['global/grp']='Grp';
+137 -104
View File
@@ -27,117 +27,146 @@ require_once('../include/projektphase.class.php');
$rdf_url='http://www.technikum-wien.at/projektphase/';
$projekt_obj = new projekt();
$projekt_obj->getProjekte();
$projektphase_obj = new projektphase();
$sequenzProjektphase = array();
//var_dump($projekt_obj);
?>
echo '
<RDF:RDF
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:PROJEKTPHASE="<?php echo $rdf_url; ?>rdf#"
>
xmlns:PROJEKTPHASE="'.$rdf_url.'rdf#"
>';
<?php
$descr='';
$sequenz='';
$lastOE=null;
for ($i=0;$i<count($projekt_obj->result);$i++)
if(isset($_GET['projektphase_id']))
{
$currentOE=$projekt_obj->result[$i]->oe_kurzbz;
//echo $currentOE;
$nextOE=(($i<count($projekt_obj->result)-1)?$projekt_obj->result[$i+1]->oe_kurzbz:null);
//echo $nextOE;
$projekt=$projekt_obj->result[$i];
// Bin ich schon in der naechsten OE? Oder vielleicht in der ersten?
if ($lastOE!=$currentOE || $i==0)
$descr.='<RDF:Description RDF:about="'.$rdf_url.$projekt->oe_kurzbz.'" >
<PROJEKTPHASE:bezeichnung>'.$projekt->oe_kurzbz.'</PROJEKTPHASE:bezeichnung>
<PROJEKTPHASE:oe_kurzbz>'.$projekt->oe_kurzbz.'</PROJEKTPHASE:oe_kurzbz>
<PROJEKTPHASE:projekt_kurzbz></PROJEKTPHASE:projekt_kurzbz>
<PROJEKTPHASE:projekt_phase></PROJEKTPHASE:projekt_phase>
<PROJEKTPHASE:projekt_phase_id></PROJEKTPHASE:projekt_phase_id>
<PROJEKTPHASE:nummer></PROJEKTPHASE:nummer>
<PROJEKTPHASE:titel></PROJEKTPHASE:titel>
<PROJEKTPHASE:beschreibung></PROJEKTPHASE:beschreibung>
<PROJEKTPHASE:beginn></PROJEKTPHASE:beginn>
<PROJEKTPHASE:ende></PROJEKTPHASE:ende>
</RDF:Description>'."\n";
$descr.='<RDF:Description RDF:about="'.$rdf_url.$projekt->oe_kurzbz.'/'.$projekt->projekt_kurzbz.'" >
<PROJEKTPHASE:bezeichnung>'.$projekt->titel.'</PROJEKTPHASE:bezeichnung>
<PROJEKTPHASE:oe_kurzbz>'.$projekt->oe_kurzbz.'</PROJEKTPHASE:oe_kurzbz>
<PROJEKTPHASE:projekt_kurzbz>'.$projekt->projekt_kurzbz.'</PROJEKTPHASE:projekt_kurzbz>
<PROJEKTPHASE:projekt_phase></PROJEKTPHASE:projekt_phase>
<PROJEKTPHASE:projekt_phase_id></PROJEKTPHASE:projekt_phase_id>
<PROJEKTPHASE:nummer>'.$projekt->nummer.'</PROJEKTPHASE:nummer>
<PROJEKTPHASE:titel>'.$projekt->titel.'</PROJEKTPHASE:titel>
<PROJEKTPHASE:beschreibung>'.$projekt->beschreibung.'</PROJEKTPHASE:beschreibung>
<PROJEKTPHASE:beginn>'.$projekt->beginn.'</PROJEKTPHASE:beginn>
<PROJEKTPHASE:ende>'.$projekt->ende.'</PROJEKTPHASE:ende>
$phase = new projektphase();
$phase->load($_GET['projektphase_id']);
echo '
<RDF:Description RDF:about="'.$rdf_url.$phase->projektphase_id.'" >
<PROJEKTPHASE:projektphase_id><![CDATA['.$phase->projektphase_id.']]></PROJEKTPHASE:projektphase_id>
<PROJEKTPHASE:projekt_kurzbz><![CDATA['.$phase->projekt_kurzbz.']]></PROJEKTPHASE:projekt_kurzbz>
<PROJEKTPHASE:projektphase_fk><![CDATA['.$phase->projektphase_fk.']]></PROJEKTPHASE:projektphase_fk>
<PROJEKTPHASE:bezeichnung><![CDATA['.$phase->bezeichnung.']]></PROJEKTPHASE:bezeichnung>
<PROJEKTPHASE:beschreibung><![CDATA['.$phase->beschreibung.']]></PROJEKTPHASE:beschreibung>
<PROJEKTPHASE:start><![CDATA['.$phase->start.']]></PROJEKTPHASE:start>
<PROJEKTPHASE:ende><![CDATA['.$phase->ende.']]></PROJEKTPHASE:ende>
<PROJEKTPHASE:budget><![CDATA['.$phase->budget.']]></PROJEKTPHASE:budget>
<PROJEKTPHASE:personentage><![CDATA['.$phase->personentage.']]></PROJEKTPHASE:personentage>
</RDF:Description>'."\n";
$projektphase_obj->getProjektphasen($projekt->projekt_kurzbz);
$tmpStr='';
for ($j=0;$j<count($projektphase_obj->result);$j++)
{
$projektphase=$projektphase_obj->result[$j];
//var_dump($projektphase);
$descr.='<RDF:Description RDF:about="'.$rdf_url.$projekt->oe_kurzbz.'/'.$projekt->projekt_kurzbz.'/'.$projektphase->projektphase_id.'" >
<PROJEKTPHASE:bezeichnung>'.$projektphase->bezeichnung.'</PROJEKTPHASE:bezeichnung>
<PROJEKTPHASE:oe_kurzbz></PROJEKTPHASE:oe_kurzbz>
<PROJEKTPHASE:projekt_kurzbz>'.$projektphase->projekt_kurzbz.'</PROJEKTPHASE:projekt_kurzbz>
<PROJEKTPHASE:projekt_phase>'.$projektphase->bezeichnung.'</PROJEKTPHASE:projekt_phase>
<PROJEKTPHASE:projekt_phase_id>'.$projektphase->projektphase_id.'</PROJEKTPHASE:projekt_phase_id>
<PROJEKTPHASE:nummer></PROJEKTPHASE:nummer>
<PROJEKTPHASE:titel>'.$projektphase->bezeichnung.'</PROJEKTPHASE:titel>
<PROJEKTPHASE:beschreibung>'.$projektphase->beschreibung.'</PROJEKTPHASE:beschreibung>
<PROJEKTPHASE:beginn>'.$projektphase->start.'</PROJEKTPHASE:beginn>
<PROJEKTPHASE:ende>'.$projektphase->ende.'</PROJEKTPHASE:ende>
<PROJEKTPHASE:ende>'.$projektphase->ende.'</PROJEKTPHASE:ende>'."\n";
$descr.='</RDF:Description>'."\n";
if (is_null($projektphase->projektphase_fk))
{
if ($j==0)
$tmpStr=' <RDF:li>
<RDF:Seq RDF:about="'.$rdf_url.$projekt->oe_kurzbz.'/'.$projekt->projekt_kurzbz.'">'."\n";
$tmpStr.=' <RDF:li RDF:resource="'.$rdf_url.$projekt->oe_kurzbz.'/'.$projekt->projekt_kurzbz.'/'.$projektphase->projektphase_id.'" />'."\n";
$tmpStr.=check_subprojektphasen(&$projekt,&$projektphase_obj,$projektphase->projektphase_id);
if ($j==count($projektphase_obj->result)-1)
$tmpStr.=' </RDF:Seq>
</RDF:li>'."\n";
$sequenzProjektphase[$projekt->projekt_kurzbz]=$tmpStr;
}
}
//var_dump($sequenzProjektphase);
if ($lastOE!=$currentOE)
{
$sequenz.=' <RDF:li RDF:resource="'.$rdf_url.$projekt->oe_kurzbz.'" />
<RDF:li>
<RDF:Seq RDF:about="'.$rdf_url.$projekt->oe_kurzbz.'" >'."\n";
}
// Neue OE oder letzter Datensatz? Dann muss Sequenz geschlossen werden.
if ($nextOE!=$currentOE || $i==count($projekt_obj->result)-1)
{
$sequenz.=' <RDF:li RDF:resource="'.$rdf_url.$projekt->oe_kurzbz.'/'.$projekt->projekt_kurzbz.'" />'."\n";
if (isset($sequenzProjektphase[$projekt->projekt_kurzbz]))
$sequenz.=$sequenzProjektphase[$projekt->projekt_kurzbz];
$sequenz.=' </RDF:Seq>
</RDF:li>'."\n";
}
elseif ($lastOE==$currentOE || $nextOE==$currentOE || count($projekt_obj->result)==1)
{
$sequenz.='<RDF:li RDF:resource="'.$rdf_url.$projekt->oe_kurzbz.'/'.$projekt->projekt_kurzbz.'" />'."\n";
if (isset($sequenzProjektphase[$projekt->projekt_kurzbz]))
$sequenz.=$sequenzProjektphase[$projekt->projekt_kurzbz];
}
$lastOE=$currentOE;
}
$sequenz='<RDF:Seq about="'.$rdf_url.'alle-projektphasen">'."\n\t".$sequenz.'
echo '<RDF:Seq about="'.$rdf_url.'alle-projektphasen">
<RDF:li RDF:resource="'.$rdf_url.$phase->projektphase_id.'" />
</RDF:Seq>'."\n";
echo $descr."\n";
echo $sequenz;
}
else
{
$projekt_obj = new projekt();
$projekt_obj->getProjekte();
$projektphase_obj = new projektphase();
$sequenzProjektphase = array();
$descr='';
$sequenz='';
$lastOE=null;
for ($i=0;$i<count($projekt_obj->result);$i++)
{
$currentOE=$projekt_obj->result[$i]->oe_kurzbz;
//echo $currentOE;
$nextOE=(($i<count($projekt_obj->result)-1)?$projekt_obj->result[$i+1]->oe_kurzbz:null);
//echo $nextOE;
$projekt=$projekt_obj->result[$i];
// Bin ich schon in der naechsten OE? Oder vielleicht in der ersten?
if ($lastOE!=$currentOE || $i==0)
$descr.='<RDF:Description RDF:about="'.$rdf_url.$projekt->oe_kurzbz.'" >
<PROJEKTPHASE:bezeichnung>'.$projekt->oe_kurzbz.'</PROJEKTPHASE:bezeichnung>
<PROJEKTPHASE:oe_kurzbz>'.$projekt->oe_kurzbz.'</PROJEKTPHASE:oe_kurzbz>
<PROJEKTPHASE:projekt_kurzbz></PROJEKTPHASE:projekt_kurzbz>
<PROJEKTPHASE:projekt_phase></PROJEKTPHASE:projekt_phase>
<PROJEKTPHASE:projekt_phase_id></PROJEKTPHASE:projekt_phase_id>
<PROJEKTPHASE:nummer></PROJEKTPHASE:nummer>
<PROJEKTPHASE:titel></PROJEKTPHASE:titel>
<PROJEKTPHASE:beschreibung></PROJEKTPHASE:beschreibung>
<PROJEKTPHASE:beginn></PROJEKTPHASE:beginn>
<PROJEKTPHASE:ende></PROJEKTPHASE:ende>
</RDF:Description>'."\n";
$descr.='<RDF:Description RDF:about="'.$rdf_url.$projekt->oe_kurzbz.'/'.$projekt->projekt_kurzbz.'" >
<PROJEKTPHASE:bezeichnung><![CDATA['.$projekt->titel.']]></PROJEKTPHASE:bezeichnung>
<PROJEKTPHASE:oe_kurzbz><![CDATA['.$projekt->oe_kurzbz.']]></PROJEKTPHASE:oe_kurzbz>
<PROJEKTPHASE:projekt_kurzbz><![CDATA['.$projekt->projekt_kurzbz.']]></PROJEKTPHASE:projekt_kurzbz>
<PROJEKTPHASE:projekt_phase></PROJEKTPHASE:projekt_phase>
<PROJEKTPHASE:projekt_phase_id></PROJEKTPHASE:projekt_phase_id>
<PROJEKTPHASE:nummer><![CDATA['.$projekt->nummer.']]></PROJEKTPHASE:nummer>
<PROJEKTPHASE:titel><![CDATA['.$projekt->titel.']]></PROJEKTPHASE:titel>
<PROJEKTPHASE:beschreibung><![CDATA['.$projekt->beschreibung.']]></PROJEKTPHASE:beschreibung>
<PROJEKTPHASE:beginn><![CDATA['.$projekt->beginn.']]></PROJEKTPHASE:beginn>
<PROJEKTPHASE:ende><![CDATA['.$projekt->ende.']]></PROJEKTPHASE:ende>
</RDF:Description>'."\n";
$projektphase_obj->getProjektphasen($projekt->projekt_kurzbz);
$tmpStr='';
for ($j=0;$j<count($projektphase_obj->result);$j++)
{
$projektphase=$projektphase_obj->result[$j];
//var_dump($projektphase);
$descr.='<RDF:Description RDF:about="'.$rdf_url.$projekt->oe_kurzbz.'/'.$projekt->projekt_kurzbz.'/'.$projektphase->projektphase_id.'" >
<PROJEKTPHASE:bezeichnung><![CDATA['.$projektphase->bezeichnung.']]></PROJEKTPHASE:bezeichnung>
<PROJEKTPHASE:oe_kurzbz><![CDATA['.$projekt->oe_kurzbz.']]></PROJEKTPHASE:oe_kurzbz>
<PROJEKTPHASE:projekt_kurzbz><![CDATA['.$projektphase->projekt_kurzbz.']]></PROJEKTPHASE:projekt_kurzbz>
<PROJEKTPHASE:projekt_phase><![CDATA['.$projektphase->bezeichnung.']]></PROJEKTPHASE:projekt_phase>
<PROJEKTPHASE:projekt_phase_id><![CDATA['.$projektphase->projektphase_id.']]></PROJEKTPHASE:projekt_phase_id>
<PROJEKTPHASE:nummer><![CDATA[]]></PROJEKTPHASE:nummer>
<PROJEKTPHASE:titel><![CDATA['.$projektphase->bezeichnung.']]></PROJEKTPHASE:titel>
<PROJEKTPHASE:beschreibung><![CDATA['.$projektphase->beschreibung.']]></PROJEKTPHASE:beschreibung>
<PROJEKTPHASE:beginn><![CDATA['.$projektphase->start.']]></PROJEKTPHASE:beginn>
<PROJEKTPHASE:ende><![CDATA['.$projektphase->ende.']]></PROJEKTPHASE:ende>
<PROJEKTPHASE:budget><![CDATA['.$projektphase->budget.']]></PROJEKTPHASE:budget>
<PROJEKTPHASE:personentage><![CDATA['.$projektphase->personentage.']]></PROJEKTPHASE:personentage>
'."\n";
$descr.='</RDF:Description>'."\n";
if (is_null($projektphase->projektphase_fk))
{
if ($j==0)
$tmpStr=' <RDF:li>
<RDF:Seq RDF:about="'.$rdf_url.$projekt->oe_kurzbz.'/'.$projekt->projekt_kurzbz.'">'."\n";
$tmpStr.=' <RDF:li RDF:resource="'.$rdf_url.$projekt->oe_kurzbz.'/'.$projekt->projekt_kurzbz.'/'.$projektphase->projektphase_id.'" />'."\n";
$tmpStr.=check_subprojektphasen(&$projekt,&$projektphase_obj,$projektphase->projektphase_id);
if ($j==count($projektphase_obj->result)-1)
$tmpStr.=' </RDF:Seq>
</RDF:li>'."\n";
$sequenzProjektphase[$projekt->projekt_kurzbz]=$tmpStr;
}
}
//var_dump($sequenzProjektphase);
if ($lastOE!=$currentOE)
{
$sequenz.=' <RDF:li RDF:resource="'.$rdf_url.$projekt->oe_kurzbz.'" />
<RDF:li>
<RDF:Seq RDF:about="'.$rdf_url.$projekt->oe_kurzbz.'" >'."\n";
}
// Neue OE oder letzter Datensatz? Dann muss Sequenz geschlossen werden.
if ($nextOE!=$currentOE || $i==count($projekt_obj->result)-1)
{
$sequenz.=' <RDF:li RDF:resource="'.$rdf_url.$projekt->oe_kurzbz.'/'.$projekt->projekt_kurzbz.'" />'."\n";
if (isset($sequenzProjektphase[$projekt->projekt_kurzbz]))
$sequenz.=$sequenzProjektphase[$projekt->projekt_kurzbz];
$sequenz.=' </RDF:Seq>
</RDF:li>'."\n";
}
elseif ($lastOE==$currentOE || $nextOE==$currentOE || count($projekt_obj->result)==1)
{
$sequenz.='<RDF:li RDF:resource="'.$rdf_url.$projekt->oe_kurzbz.'/'.$projekt->projekt_kurzbz.'" />'."\n";
if (isset($sequenzProjektphase[$projekt->projekt_kurzbz]))
$sequenz.=$sequenzProjektphase[$projekt->projekt_kurzbz];
}
$lastOE=$currentOE;
}
$sequenz='<RDF:Seq about="'.$rdf_url.'alle-projektphasen">'."\n\t".$sequenz.'
</RDF:Seq>'."\n";
echo $descr."\n";
echo $sequenz;
}
function check_subprojektphasen($projekt,$projektphase_obj,$projektphase_id)
{
global $rdf_url;
@@ -150,15 +179,19 @@ function check_subprojektphasen($projekt,$projektphase_obj,$projektphase_id)
{
//var_dump($projektphase);
if ($i==0)
{
$tmpStr=' <RDF:li>
<RDF:Seq RDF:about="'.$rdf_url.$projekt->oe_kurzbz.'/'.$projekt->projekt_kurzbz.'/'.$projektphase_id.'">'."\n";
}
$tmpStr.=' <RDF:li RDF:resource="'.$rdf_url.$projekt->oe_kurzbz.'/'.$projekt->projekt_kurzbz.'/'.$projektphase->projektphase_id.'" />'."\n";
$i++;
}
}
if ($i>0)
{
$tmpStr.=' </RDF:Seq>
</RDF:li>'."\n";
}
return $tmpStr;
}
?>
+24 -5
View File
@@ -29,7 +29,7 @@ require_once('../include/basis_db.class.php');
require_once('../include/projektphase.class.php');
require_once('../include/datum.class.php');
$SOAPServer = new SoapServer(APP_ROOT."/soap/projektphase.wsdl.php");
$SOAPServer = new SoapServer(APP_ROOT."/soap/projektphase.wsdl.php?".microtime());
$SOAPServer->addFunction("saveProjektphase");
$SOAPServer->handle();
@@ -47,10 +47,22 @@ ini_set("soap.wsdl_cache_enabled", "0");
* @param date $start
* @param date $ende
* @param string $budget
* @param string $personentage
* @param string $user
* @param string $neu
*/
function saveProjektphase($projektphase_id, $projekt_kurzbz, $projektphase_fk, $bezeichnung, $beschreibung, $start, $ende, $budget)
function saveProjektphase($projektphase_id, $projekt_kurzbz, $projektphase_fk, $bezeichnung, $beschreibung, $start, $ende, $budget, $personentage, $user, $neu)
{
$projektphase = new projektphase();
if($projektphase_id!='')
{
$projektphase->load($projektphase_id);
}
else
{
$projektphase->insertvon = $user;
$projektphase->insertamum=date('Y-m-d H:i:s');
}
$projektphase->projektphase_id=$projektphase_id;
$projektphase->projekt_kurzbz=$projekt_kurzbz;
$projektphase->projektphase_fk=$projektphase_fk;
@@ -59,10 +71,17 @@ function saveProjektphase($projektphase_id, $projekt_kurzbz, $projektphase_fk, $
$projektphase->start = $start;
$projektphase->ende = $ende;
$projektphase->budget = $budget;
$projektphase->new = true;
$projektphase->personentage = $personentage;
$projektphase->updatevon = $user;
$projektphase->updateamum = date('Y-m-d H:i:s');
if($projektphase->save($new = true))
return "OK";
if($neu=='true')
$projektphase->new = true;
else
$projektphase->new = false;
if($projektphase->save())
return $projektphase->projektphase_id;
else
return new SoapFault("Server", $projektphase->errormsg);
}
+4 -1
View File
@@ -14,13 +14,16 @@ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
<wsdl:message name="SaveProjektphaseRequest">
<wsdl:part name="projektphase_id" type="xsd:string"></wsdl:part>
<wsdl:part name="oe_kurzbz" type="xsd:string"></wsdl:part>
<wsdl:part name="projekt_kurzbz" type="xsd:string"></wsdl:part>
<wsdl:part name="projektphase_fk" type="xsd:string"></wsdl:part>
<wsdl:part name="bezeichnung" type="xsd:string"></wsdl:part>
<wsdl:part name="beschreibung" type="xsd:string"></wsdl:part>
<wsdl:part name="start" type="xsd:string"></wsdl:part>
<wsdl:part name="ende" type="xsd:string"></wsdl:part>
<wsdl:part name="budget" type="xsd:string"></wsdl:part>
<wsdl:part name="personentage" type="xsd:string"></wsdl:part>
<wsdl:part name="user" type="xsd:string"></wsdl:part>
<wsdl:part name="neu" type="xsd:boolean"></wsdl:part>
</wsdl:message>
<wsdl:message name="SaveProjektphaseResponse">