Merge branch 'master' into ci

Conflicts:
	.gitignore
	composer.json
	include/prestudent.class.php
	include/securimage/securimage.php
	include/studienplan.class.php
	system/dbupdate_3.2.php
	tests/codesniffer/FHComplete/Sniffs/Commenting/DocBlockAlignmentSniff.php
	tests/codesniffer/FHComplete/Sniffs/Commenting/FunctionCommentSniff.php
	tests/codesniffer/FHComplete/Sniffs/Commenting/FunctionCommentTypeSniff.php
	tests/codesniffer/FHComplete/Sniffs/ControlStructures/ControlSignatureSniff.php
	tests/codesniffer/FHComplete/Sniffs/ControlStructures/ElseIfDeclarationSniff.php
	tests/codesniffer/FHComplete/Sniffs/ControlStructures/WhileStructuresSniff.php
	tests/codesniffer/FHComplete/Sniffs/Formatting/OneClassPerUseSniff.php
	tests/codesniffer/FHComplete/Sniffs/Formatting/UseInAlphabeticalOrderSniff.php
	tests/codesniffer/FHComplete/Sniffs/Functions/ClosureDeclarationSniff.php
	tests/codesniffer/FHComplete/Sniffs/Functions/FunctionDeclarationArgumentSpacingSniff.php
	tests/codesniffer/FHComplete/Sniffs/NamingConventions/CamelCapsMethodNameSniff.php
	tests/codesniffer/FHComplete/Sniffs/NamingConventions/UpperCaseConstantNameSniff.php
	tests/codesniffer/FHComplete/Sniffs/NamingConventions/ValidClassBracketsSniff.php
	tests/codesniffer/FHComplete/Sniffs/NamingConventions/ValidFunctionNameSniff.php
	tests/codesniffer/FHComplete/Sniffs/NamingConventions/ValidTraitNameSniff.php
	tests/codesniffer/FHComplete/Sniffs/NamingConventions/ValidVariableNameSniff.php
	tests/codesniffer/FHComplete/Sniffs/PHP/DisallowShortOpenTagSniff.php
	tests/codesniffer/FHComplete/Sniffs/PHP/TypeCastingSniff.php
	tests/codesniffer/FHComplete/Sniffs/Strings/ConcatenationSpacingSniff.php
	tests/codesniffer/FHComplete/Sniffs/WhiteSpace/CommaSpacingSniff.php
	tests/codesniffer/FHComplete/Sniffs/WhiteSpace/FunctionCallSpacingSniff.php
	tests/codesniffer/FHComplete/Sniffs/WhiteSpace/FunctionClosingBraceSpaceSniff.php
	tests/codesniffer/FHComplete/Sniffs/WhiteSpace/FunctionOpeningBraceSpaceSniff.php
	tests/codesniffer/FHComplete/Sniffs/WhiteSpace/FunctionSpacingSniff.php
	tests/codesniffer/FHComplete/Sniffs/WhiteSpace/ObjectOperatorSpacingSniff.php
	tests/codesniffer/FHComplete/Sniffs/WhiteSpace/OperatorSpacingSniff.php
	tests/codesniffer/FHComplete/Sniffs/WhiteSpace/ScopeIndentSniff.php
	tests/codesniffer/FHComplete/Sniffs/WhiteSpace/TabAndSpaceSniff.php
	tests/codesniffer/FHComplete/ruleset.xml
	tests/codesniffer/FHComplete/tests/FHCompletePHPStandardTest.php
	tests/codesniffer/FHComplete/tests/TestHelper.php
	tests/codesniffer/FHComplete/tests/bootstrap.php
	tests/codesniffer/FHComplete/tests/files/FHComplete/throws_pass.php
	tests/codesniffer/FHComplete/tests/files/bad_trait_name.php
	tests/codesniffer/FHComplete/tests/files/class_brackets_fail1.php
	tests/codesniffer/FHComplete/tests/files/class_brackets_fail2.php
	tests/codesniffer/FHComplete/tests/files/class_brackets_fail3.php
	tests/codesniffer/FHComplete/tests/files/class_underscore_prefix_pass.php
	tests/codesniffer/FHComplete/tests/files/control_structure_brackets_pass.php
	tests/codesniffer/FHComplete/tests/files/control_structure_dowhile.php
	tests/codesniffer/FHComplete/tests/files/control_structure_elseif.php
	tests/codesniffer/FHComplete/tests/files/control_structure_indentation.php
	tests/codesniffer/FHComplete/tests/files/control_structure_nobrackets.php
	tests/codesniffer/FHComplete/tests/files/control_structure_nospace.php
	tests/codesniffer/FHComplete/tests/files/control_structure_while.php
	tests/codesniffer/FHComplete/tests/files/control_structures_no_newline.php
	tests/codesniffer/FHComplete/tests/files/docblock_align_fail.php
	tests/codesniffer/FHComplete/tests/files/docblock_align_flat_pass.php
	tests/codesniffer/FHComplete/tests/files/docblock_align_pass.php
	tests/codesniffer/FHComplete/tests/files/double_space.php
	tests/codesniffer/FHComplete/tests/files/for_function_comment_pass.php
	tests/codesniffer/FHComplete/tests/files/function_comment_opening_line_fail.php
	tests/codesniffer/FHComplete/tests/files/function_comment_opening_line_pass.php
	tests/codesniffer/FHComplete/tests/files/function_comment_type_fail.php
	tests/codesniffer/FHComplete/tests/files/function_comment_type_pass.php
	tests/codesniffer/FHComplete/tests/files/function_spacing.php
	tests/codesniffer/FHComplete/tests/files/mixing_indent.php
	tests/codesniffer/FHComplete/tests/files/multiple_use.php
	tests/codesniffer/FHComplete/tests/files/multiple_use_pass.php
	tests/codesniffer/FHComplete/tests/files/operator_spacing_pass.php
	tests/codesniffer/FHComplete/tests/files/short_open_tags_fail.php
	tests/codesniffer/FHComplete/tests/files/short_open_tags_pass.php
	tests/codesniffer/FHComplete/tests/files/space_tab.php
	tests/codesniffer/FHComplete/tests/files/tab_space.php
	tests/codesniffer/FHComplete/tests/files/traits_no_order.php
	tests/codesniffer/FHComplete/tests/files/traits_pass.php
	tests/codesniffer/FHComplete/tests/files/type_casting_fail.php
	tests/codesniffer/FHComplete/tests/files/type_casting_pass.php
	tests/codesniffer/FHComplete/tests/files/use_class_and_closure_pass.php
	tests/codesniffer/FHComplete/tests/files/use_closure_pass.php
	tests/codesniffer/FHComplete/tests/files/use_no_order.php
	tests/codesniffer/FHComplete/tests/files/use_ok_pass.php
	tests/codesniffer/FHComplete/tests/files/use_with_commas.php
	tests/codesniffer/FHComplete/tests/files/variable_name_pass.php
	tests/codesniffer/FHComplete/tests/files/whitespace_comma.php
	tests/codesniffer/FHComplete/tests/files/whitespace_comma_before.php
	tests/codesniffer/FHComplete/tests/files/whitespace_comma_pass.php
	tests/codesniffer/FHComplete/tests/ruleset.xml
This commit is contained in:
Paminger
2016-04-28 18:14:40 +02:00
184 changed files with 20625 additions and 14946 deletions
+5 -4
View File
@@ -9,12 +9,13 @@ documents/
.settings
.project
.buildpath
tests/codeception.yml
tests/codeception/api.suite.yml
tests/codeception/functional.suite.yml
tests/codeception/acceptance.suite.yml
tests/codeception/codeception.yml
tests/codeception/tests/api.suite.yml
tests/codeception/tests/functional.suite.yml
tests/codeception/tests/acceptance.suite.yml
tests/codeception/_support/_generated
tests/codeception/_output/*
!/tests/codeception/_output/.placeholder
/submodules/d3
composer.lock
bin
-3
View File
@@ -1,6 +1,3 @@
[submodule "submodules/tablesorter"]
path = submodules/tablesorter
url = https://github.com/christianbach/tablesorter.git
[submodule "submodules/bootstrap"]
path = submodules/bootstrap
url = https://github.com/twbs/bootstrap.git
Executable
+63
View File
@@ -0,0 +1,63 @@
# Change Log
## [Unreleased]
### Added
- **[FAS]** Zusätzliches Feld für Uhrzeit bei Abschlussprüfung
- **[FAS]** Reihungstest Dropdown zeigt verfügbare/belegte Plätze an
- **[CORE]** Reihungstest Punkteübernahme oder Prozentpunkte ist konfigurierbar
- **[CIS]** LVPlan Export für Excel
- **[FAS]** Termine Karteireiter im FAS zeigt die Anmerkung aus dem LVPlan an
- **[CIS]** Onlinebewerbungstool greift auf mehrsprachige Statusbezeichnungen zu.
### Changed
- **[FAS]** Dokumente Menü im FAS neu sortiert um den Lebenszyklus des Studierenden abzubilden
- **[CORE]** LVPlan Update Mail ist nun zweisprachig Deutsch/Englisch
- **[FAS]** Prüfungen im FAS werden nur noch vom aktuell ausgewählten Studiensemester angezeigt. Umschalten auf volle Ansicht möglich
- **[CIS]** LVPlan Begrenzung der 4er Blockung aufgehoben.
- **[CIS]** Im Menü 'Zeitsperren' Link zu Resturlaubsübersicht entfernt. Falls benötigt Verlinkung über CMS möglich.
- **[CORE]** Removed NOT NULL constraint on 'verfasser\_uid' from public.tbl\_notiz
### Updateinfo
- **[FAS]** Für Lehraufträge muss eine Unoconv-Vorlage erstellt werden, da der für xsl-fo notwendige Seitenumbruch-Tag aus dem RDF entfernt wurde.
- **[FAS]** Mehrsprachigkeitsspalte tbl_status.bezeichnung_mehrsprachig wird durch das Updatescript automatisch in den ersten beiden Sprachen mit der status_kurzbz vorbefüllt. Übersetzungen sind anzupassen.
## [3.1.0] - 2015-11-12
### Added
- **[FAS]** Bei Noten können zusätzlich Punkte gespeichert werden. Notenschlüssel für Gesamtnote kann hinterlegt werden
- **[FAS]** Anwesenheiten von Studierenden können erfasst werden
- **[FAS]** Vertragsverwaltung bei Mitarbeiter
- **[FAS]** Dokumente im FAS können mit SHIFT bzw STRG statt als PDF auch als DOC oder ODT erstellt werden
- **[BERECHTIGUNG]** system/changeoutputformat Legt fest ob Dokumente als DOC/ODT exportiert werden dürfen
- **[FAS]** Termine Karteireiter im FAS zeigt den LVPlan von Studierenden/Lehrveranstaltungen
- **[FAS]** Bereits verplante Lektoren können vom FAS aus, aus dem LVPlan gelöscht werden. Zusätzlich wird im FAS angezeigt ob dieser Lektor bereits verplant ist
- **[FAS]** Bereits verplante Gruppen können direkt vom FAS heraus aus dem LV-Plan gelöscht werden wenn diese bereits verplant wurden.
- **[TEMPUS]** Drop auf Lehrstunde Feature für 2 Gruppen die zur selben Zeit im gleichen Raum unterricht haben (Setzt UNR gleich damit es nicht als kollision angezeigt wird)
- **[TEMPUS]** Option zum Anzeigen von allen Einträgen damit auch Incominggruppen und Gruppen aus anderen Studiengängen sichtbar sind
- **[FAS]** Bei Notizen können jetzt zusätzlich Dokumente hochgeladen werden
- **[CORE]** Bei Dokumentenvorlagen können nun Style und content.xml auf einmal erfasst werden, Dokumente können deaktiviert werden, Eigene GUI im Vilesci zum Verwalten der Dokumentenvorlagen
- **[CORE]** Mehrsprachigkeit bei diversen Tabellen (Dokumente, ZGV, ...) hinzugefügt
### Fixed
- **[TEMPUS]** Kollisionsfreie User werden in Verbandsansicht nicht mehr als Kollision angezeigt
### Changed
- **[FAS]** Stundenobergrenze für Lektoren kann jetzt pro Organisationseinheit festgelegt werden. (warn_semesterstunden_frei/fix tbl_organisationseinheit)
- **[BERECHTIGUNG]** lv-plan/gruppenentfernen Lektorenänderung: Lektoren die bereits verplant sind können jetzt auch dann direkt im FAS geändert werden, wenn dadurch eine Kollision entsteht. Vorraussetzung dafür ist, dass ignore_kollision true ist. Wenn ignore_kollision false ist, dann ist die Lektorenänderung nicht mehr möglich. Vorher wurde der Lektor in diesem Fall nur im FAS geändert aber nicht im LVPlan.
- **[FAS]** Ausstellungsstaat der ZGV wird jetzt getrennt für Bachelor und Master erfasst
## [3.0.0] - 2015-02-13
### Added
- **[CORE]** Studienordnungen / Studienpläne
- **[CORE]** Module
- **[CIS]** CIS Redesign
- **[CORE]** Unterstützung für Addons
- **[FAS]** Notizsystem
### Fixed
- **[CORE]** Diverse Bugfixes
+1
View File
@@ -4,3 +4,4 @@
* [FH-Complete Homepage](http://www.fhcomplete.org)
* [Wiki](http://fhcomplete.technikum-wien.at/dokuwiki/)
* [Changelog](CHANGELOG.md)
+44
View File
@@ -0,0 +1,44 @@
<?php
/* Copyright (C) 2015 fhcomplete.org
*
* 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: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
*/
/**
* Initialisierung des Addons
*/
?>
if(typeof addon =='undefined')
var addon=Array();
addon.push(
{
init: function(page, params)
{
// Diese Funktion wird nach dem Laden der Seite im CIS aufgerufen
/*
switch(page)
{
case 'cis/private/tools/zeitaufzeichnung.php':
break;
default:
break;
}
*/
}
});
+44
View File
@@ -0,0 +1,44 @@
<?php
/* Copyright (C) 2015 fhcomplete.org
*
* 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: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
*/
/**
* Initialisierung des Addons
*/
?>
if(typeof addon =='undefined')
var addon=Array();
addon.push(
{
init: function(page, params)
{
// Diese Funktion wird nach dem Laden der Seite im Vilesci aufgerufen
/*
switch(page)
{
case 'vilesci/lehre/lehrveranstaltung.php':
break;
default:
break;
}
*/
}
});
+1 -1
View File
@@ -119,4 +119,4 @@
}
?>
</body>
</html>
</html>
+11 -9
View File
@@ -46,7 +46,7 @@ if(isset($_GET['stsem']))
else
die('Eine Studiensemester muss uebergeben werden');
if(!$berechtigung->isBerechtigt('admin') && !check_lektor_lehrveranstaltung($user,$lvid,$studiensemester))
if(!$berechtigung->isBerechtigt('admin') && !$berechtigung->isBerechtigt('assistenz') && !check_lektor_lehrveranstaltung($user,$lvid,$studiensemester))
die('Sie muessen LektorIn der LV oder Admin sein, um diese Seite aufrufen zu koennen');
$output='pdf';
@@ -95,9 +95,6 @@ $stg->load($lv->studiengang_kz);
$studiengang_bezeichnung=$stg->bezeichnung;
$teilnehmer = $lv->getStudentsOfLv($lvid, $studiensemester, $lehreinheit);
$anzahl_studierende=count($teilnehmer);
$stg->getAllTypes();
$data = array(
@@ -111,7 +108,6 @@ $data = array(
'sprache'=>$lv->sprache,
'studiensemester'=>$studiensemester,
'semester'=>$lv->semester,
'anzahl_studierende'=>$anzahl_studierende,
'orgform'=>$lv->orgform_kurzbz,
);
@@ -159,13 +155,16 @@ $erhalter = new erhalter();
$erhalter->getAll();
$a_o_kz = '9'.sprintf("%03s", $erhalter->result[0]->erhalter_kz); //Stg_Kz AO-Studierende auslesen (9005 fuer FHTW)
$anzahl_studierende = 0;
if($result = $db->db_query($qry))
{
{
while($row = $db->db_fetch_object($result))
{
if($row->status!='Abbrecher' && $row->status!='Unterbrecher')
{
$anzahl_studierende++;
if($row->status=='Incoming') //Incoming
$zusatz='(i)';
else
@@ -193,10 +192,13 @@ if($result = $db->db_query($qry))
'zusatz'=>$zusatz
));
}
}
//Anzahl Studierende in Array $data (an erster Stelle) einfuegen
$data = array_reverse($data, true);
$data['anzahl_studierende'] = $anzahl_studierende;
$data = array_reverse($data, true);
}
//var_dump($data);
//$files=array();
/*
foreach($codes_obj->result as $code)
@@ -230,4 +232,4 @@ foreach($files as $file)
unlink($file);
*/
?>
?>
@@ -18,7 +18,7 @@
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
*/
/**
*
*
*/
require_once('../../../../config/cis.config.inc.php');
require_once('../../../../include/functions.inc.php');
@@ -44,5 +44,5 @@ switch($work)
$note = $notenschluessel->getNote($punkte, $lehrveranstaltung_id, $studiensemester_kurzbz);
echo $note;
exit;
}
?>
}
?>
@@ -131,7 +131,8 @@ echo '<!DOCTYPE HTML>
</style>
<script language="JavaScript" type="text/javascript">
var notenrequests=0;
var notenrequests_arr=Array();
var noten_array=Array();
';
@@ -253,7 +254,7 @@ foreach($noten_obj->result as $row)
{
if(typeof(typ)=='undefined')
typ = 'Termin2';
var str = "<form name='nachpruefung_form'><center><table style='width:95%'><tr><td colspan='2' align='right'><a href='#' onclick='closeDiv();'>X</a></td></tr>";
var str = "<form name='nachpruefung_form'><table style='width:95%'><tr><td colspan='2' align='right'><a href='#' onclick='closeDiv();'>X</a></td></tr>";
var anlegendiv = document.getElementById("nachpruefung_div");
var y = getOffset('y');
@@ -290,8 +291,8 @@ foreach($noten_obj->result as $row)
}
echo '</select></td>';
?>';
str += "</tr><tr><td colspan='2' align='center'><input type='button' name='speichern' value='<?php echo $p->t('global/speichern');?>' onclick='pruefungSpeichern();'></td></tr>";
str += "</table></center></form>";
str += "</tr><tr><td colspan='2' align='center'><input id='pruefungsnotensave' type='button' name='speichern' value='<?php echo $p->t('global/speichern');?>' onclick='pruefungSpeichern();'></td></tr>";
str += "</table></form>";
anlegendiv.innerHTML = str;
anlegendiv.style.visibility = "visible";
$('#pruefungsdatum').datepicker();
@@ -411,6 +412,10 @@ foreach($noten_obj->result as $row)
// Request absetzen und Note zu den Punkten holen
if(punkte!='')
{
if(typeof(notenrequests_arr[idx])=='undefined')
notenrequests_arr[idx]=0;
notenrequests_arr[idx]=notenrequests_arr[idx]+1;
$('#button-note-save-'+idx).prop('disabled',true);
$.ajax({
type:"POST",
url:"lvgesamtnote_worker.php",
@@ -422,14 +427,21 @@ foreach($noten_obj->result as $row)
success:function(result)
{
note=result;
notenrequests_arr[idx]=notenrequests_arr[idx]-1;
var notendropdown = $('#dropdown-note-'+idx);
notendropdown.val(note);
notendropdown.prop('disabled',true);
if(notenrequests_arr[idx]==0)
{
$('#button-note-save-'+idx).prop('disabled',false);
}
},
error:function(result)
{
alert('Noten ermittlung fehlgeschlagen');
notenrequests_arr[idx]=notenrequests_arr[idx]-1;
alert('Notenermittlung fehlgeschlagen');
}
});
}
@@ -452,6 +464,8 @@ foreach($noten_obj->result as $row)
// Request absetzen und Note zu den Punkten holen
if(punkte!='')
{
notenrequests = notenrequests+1;
$('#pruefungsnotensave').prop('disabled',true);
$.ajax({
type:"POST",
url:"lvgesamtnote_worker.php",
@@ -462,14 +476,21 @@ foreach($noten_obj->result as $row)
},
success:function(result)
{
notenrequests = notenrequests-1;
note=result;
var notendropdown = $('#pruefungnoteselect');
notendropdown.val(note);
notendropdown.prop('disabled',true);
if(notenrequests==0)
$('#pruefungsnotensave').prop('disabled',false);
},
error:function(result)
{
notenrequests = notenrequests-1;
if(notenrequests==0)
$('#pruefungsnotensave').prop('disabled',false);
alert('Noten ermittlung fehlgeschlagen');
}
});
@@ -673,7 +694,8 @@ if (isset($_REQUEST["freigabe"]) and ($_REQUEST["freigabe"] == 1))
{
$studlist.="<td><b>".$p->t('benotungstool/punkte')."</b></td>\n";
}
$studlist.="<td><b>".$p->t('benotungstool/note')."</b></td></tr>\n";
$studlist.="<td><b>".$p->t('benotungstool/note')."</b></td>\n";
$studlist.="<td><b>".$p->t('benotungstool/bearbeitetvon')."</b></td></tr>\n";
// studentenquery
$qry_stud = "SELECT
@@ -705,7 +727,8 @@ if (isset($_REQUEST["freigabe"]) and ($_REQUEST["freigabe"] == 1))
{
$studlist.="<td>".($lvgesamtnote->punkte!=''?trim(number_format($lvgesamtnote->punkte,2)):'')."</td>\n";
}
$studlist.="<td>".$noten_array[trim($lvgesamtnote->note)]['bezeichnung']."</td></tr>\n";
$studlist.="<td>".$noten_array[trim($lvgesamtnote->note)]['bezeichnung']."</td>";
$studlist.="<td>".$lvgesamtnote->mitarbeiter_uid.($lvgesamtnote->updatevon!=''?" (".$lvgesamtnote->updatevon.")":'')."</td></tr>\n";
$neuenoten++;
}
}
@@ -733,7 +756,15 @@ if (isset($_REQUEST["freigabe"]) and ($_REQUEST["freigabe"] == 1))
$freigeber = "<b>".mb_strtoupper($user)."</b>";
$mail = new mail($adressen, 'vilesci@'.DOMAIN, 'Notenfreigabe '.$lv->bezeichnung." ".$lv->orgform_kurzbz.' - '.$studienplan_bezeichnung,'');
$htmlcontent="<html><body><b>".$sg->kuerzel.' '.$lv->semester.'.Semester '.$lv->bezeichnung." ".$lv->orgform_kurzbz." - ".$stsem."</b> (".$lv->semester.". Sem.) <br><br>".$p->t('global/benutzer')." ".$freigeber." (".$mit->kurzbz.") ".$p->t('benotungstool/hatDieLvNotenFuerFolgendeStudenten').":<br><br>\n".$studlist."<br>".$p->t('abgabetool/mailVerschicktAn').": ".$adressen."</body></html>";
$htmlcontent="<html>
<body>
<b>".$sg->kuerzel.' '.$lv->semester.'.Semester '.$lv->bezeichnung." ".$lv->orgform_kurzbz." - ".$stsem."</b>
(".$lv->semester.". Sem.)
<br><br>".$p->t('global/benutzer')." ".$freigeber." (".$mit->kurzbz.") ".$p->t('benotungstool/hatDieLvNotenFuerFolgendeStudenten').":
<br><br>\n".$studlist."
<br>Anzahl der Noten:".$neuenoten."
<br>".$p->t('abgabetool/mailVerschicktAn').": ".$adressen."
</body></html>";
$mail->setHTMLContent($htmlcontent);
$mail->setReplyTo($lektor_adresse);
$mail->send();
@@ -1201,7 +1232,7 @@ echo "
echo '</select>';
echo "
<input type='hidden' name='note_orig' value='$note_lv'>
<input type='button' value='->' onclick=\"saveLVNote('".$row_stud->uid."');\">
<input type='button' id='button-note-save-".$i."' value='->' onclick=\"saveLVNote('".$row_stud->uid."');\">
</span>
</form></td>";
}
@@ -40,6 +40,7 @@ require_once('../../../../include/mail.class.php');
require_once('../../../../include/benutzerfunktion.class.php');
require_once('../../../../include/benutzer.class.php');
require_once('../../../../include/student.class.php');
require_once('../../../../include/notenschluessel.class.php');
if (!$db = new basis_db())
die('Fehler beim Herstellen der Datenbankverbindung');
@@ -103,6 +104,18 @@ else
$punkte = str_replace(',','.',$punkte);
if($punkte!='')
{
// Bei Punkteeingabe wird die Note nochmals geprueft und ggf korrigiert
$notenschluessel = new notenschluessel();
$note_pruef = $notenschluessel->getNote($punkte, $lvid, $stsem);
if($note_pruef!=$note)
{
$note = $note_pruef;
$note_dirty=true;
}
}
if(!isset($_GET['typ']))
{
$typ='Termin2';
+9 -2
View File
@@ -209,6 +209,7 @@ else
</thead>
<tbody>";
$i=0;
$legende = false;
while($row=$db->db_fetch_object($result))
{
$lv_obj = new lehrveranstaltung();
@@ -237,10 +238,13 @@ else
}
if ($row->note != $row->lvnote && $row->lvnote != NULL)
$markier = " style='border: 1px solid red;'";
{
$markier = " style='background-color: #FFD999;'";
$legende=true;
}
else
$markier = "";
$tbl .= "<td".$markier.">";
$tbl .= "<td ".$markier.">";
if(isset($notenarr[$row->note]))
$tbl.=$notenarr[$row->note];
@@ -288,6 +292,9 @@ else
$tbl.= "</tbody></table>";
if($legende)
$tbl.= "<table><tbody><tr><td width='50' style='background-color: #FFD999;'></td><td>".$p->t('tools/hinweistextMarkierung')."</td></tr></tbody></table>";
if($i==0)
echo $p->t('tools/nochKeineBeurteilungEingetragen');
else
+30 -23
View File
@@ -373,7 +373,7 @@ function showPruefungsDetails(prfId, lvId)
{
var p = e.pruefung;
var l = e.lehrveranstaltung
$("#prfTyp").html(p.pruefungstyp_kurzbz);
// $("#prfTyp").html(p.pruefungstyp_kurzbz);
$("#prfMethode").html(p.methode);
$("#prfBeschreibung").html(p.beschreibung);
if(p.einzeln === true)
@@ -436,9 +436,10 @@ function openDialog(lehrveranstaltung_id, termin_id, lvBezeichnung, terminVon, t
error: loadError
}).success(function(data){
var html = "";
html += '<option id="'+lehrveranstaltung_id+'" value="'+lehrveranstaltung_id+'">';
html += lvBezeichnung;
html += "</option>";
data.result.forEach(function(v, i){
console.log(i);
console.log(v);
html += '<option id="'+v.lehrveranstaltung_id+'" value="'+v.lehrveranstaltung_id+'">';
html += v.bezeichnung;
html += "</option>";
@@ -486,8 +487,6 @@ function saveAnmeldung(lehrveranstaltung_id, termin_id)
var studienverpflichtung_id = null;
if($("#studienverpflichtung").length)
studienverpflichtung_id = $("#studienverpflichtung option:selected").val();
console.log(studienverpflichtung_id);
$.ajax({
dataType: 'json',
@@ -689,6 +688,7 @@ function showAnmeldungen(pruefungstermin_id, lehrveranstaltung_id)
function writeAnmeldungen(data)
{
console.log(data);
if(data.error === 'false')
{
var terminId = data.result.anmeldungen[0].pruefungstermin_id;
@@ -755,6 +755,7 @@ function writeAnmeldungen(data)
$("#kommentar").empty();
$("#kommentarSpeichernButton").empty();
$("#raumLink").empty();
$("#listeDrucken").empty();
messageBox("message", data.errormsg, "red", "highlight", 1000);
}
}
@@ -1091,7 +1092,7 @@ function savePruefungstermin()
unmarkMissingFormEntry();
var studiensemester_kurzbz = $("#studiensemester").val();
var pruefungsfenster_id = $("#pruefungsfenster").val();
var pruefungstyp_kurzbz = $("#pruefungsTyp").val();
// var pruefungstyp_kurzbz = $("#pruefungsTyp").val();
var titel = $("#titel").val();
var beschreibung = $("#beschreibung").val();
var methode = $("#methode").val();
@@ -1168,11 +1169,11 @@ function savePruefungstermin()
error = true;
markMissingFormEntry("pruefungsfenster");
}
if(is_null(pruefungstyp_kurzbz) || is_undefined(pruefungstyp_kurzbz) || is_empty_String(pruefungstyp_kurzbz) || (pruefungstyp_kurzbz === "undefiniert"))
{
error = true;
markMissingFormEntry("pruefungsTyp");
}
// if(is_null(pruefungstyp_kurzbz) || is_undefined(pruefungstyp_kurzbz) || is_empty_String(pruefungstyp_kurzbz) || (pruefungstyp_kurzbz === "undefiniert"))
// {
// error = true;
// markMissingFormEntry("pruefungsTyp");
// }
if(is_null(titel) || is_undefined(titel) || is_empty_String(titel))
{
error = true;
@@ -1188,12 +1189,18 @@ function savePruefungstermin()
error = true;
markMissingFormEntry("methode");
}
if(lehrveranstaltungen.length === 0)
{
error = true;
markMissingFormEntry("lvDropdowns");
}
if(is_null(termine) || is_undefined(termine) || is_empty_String(termine))
{
error = true;
markMissingFormEntry("prfTermin");
}
if(error)
{
@@ -1209,7 +1216,7 @@ function savePruefungstermin()
method: "savePruefungstermin",
studiensemester_kurzbz: studiensemester_kurzbz,
pruefungsfenster_id: pruefungsfenster_id,
pruefungstyp_kurzbz: pruefungstyp_kurzbz,
// pruefungstyp_kurzbz: pruefungstyp_kurzbz,
titel: titel,
beschreibung: beschreibung,
methode: methode,
@@ -1378,7 +1385,7 @@ function loadPruefungsDetails(prfId)
$("#beschreibung").val(result.pruefung.beschreibung);
$("#studiensemester").val(result.pruefung.studiensemester_kurzbz);
$("#pruefungsfenster").val(result.pruefung.pruefungsfenster_id);
$("#pruefungsTyp").val(result.pruefung.pruefungstyp_kurzbz);
// $("#pruefungsTyp").val(result.pruefung.pruefungstyp_kurzbz);
$("#methode").val(result.pruefung.methode);
var i = 0;
$("#termin1").closest("tr").remove();
@@ -1491,7 +1498,7 @@ function updatePruefung(prfId)
unmarkMissingFormEntry();
var studiensemester_kurzbz = $("#studiensemester").val();
var pruefungsfenster_id = $("#pruefungsfenster").val();
var pruefungstyp_kurzbz = $("#pruefungsTyp").val();
// var pruefungstyp_kurzbz = $("#pruefungsTyp").val();
var titel = $("#titel").val();
var beschreibung = $("#beschreibung").val();
var methode = $("#methode").val();
@@ -1602,11 +1609,11 @@ function updatePruefung(prfId)
error = true;
markMissingFormEntry("pruefungsfenster");
}
if(is_null(pruefungstyp_kurzbz) || is_undefined(pruefungstyp_kurzbz) || is_empty_String(pruefungstyp_kurzbz) || (pruefungstyp_kurzbz === "undefiniert"))
{
error = true;
markMissingFormEntry("pruefungsTyp");
}
// if(is_null(pruefungstyp_kurzbz) || is_undefined(pruefungstyp_kurzbz) || is_empty_String(pruefungstyp_kurzbz) || (pruefungstyp_kurzbz === "undefiniert"))
// {
// error = true;
// markMissingFormEntry("pruefungsTyp");
// }
if(is_null(titel) || is_undefined(titel) || is_empty_String(titel))
{
error = true;
@@ -1643,7 +1650,7 @@ function updatePruefung(prfId)
pruefung_id: prfId,
studiensemester_kurzbz: studiensemester_kurzbz,
pruefungsfenster_id: pruefungsfenster_id,
pruefungstyp_kurzbz: pruefungstyp_kurzbz,
// pruefungstyp_kurzbz: pruefungstyp_kurzbz,
titel: titel,
beschreibung: beschreibung,
methode: methode,
@@ -1807,7 +1814,7 @@ function loadAllPruefungen()
});
tableRow+="</td>";
tableRow += "<td>"+e.methode+"</td>";
tableRow += "<td>"+e.pruefungstyp_kurzbz+"</td>";
// tableRow += "<td>"+e.pruefungstyp_kurzbz+"</td>";
tableRow += "<td>"+e.einzeln+"</td>";
tableRow += "<td>"+e.mitarbeiter_uid+"</td>";
tableRow += "<td>"+e.storniert+"</td>";
@@ -1896,7 +1903,7 @@ function resetPruefungsverwaltung()
loadAllPruefungen();
$("#titel").val("");
$("#beschreibung").val("");
loadPruefungstypen("false");
// loadPruefungstypen("false");
loadStudiensemester();
$("#methode").val("");
resetLehrveranstaltungen();
File diff suppressed because it is too large Load Diff
+41 -28
View File
@@ -49,7 +49,7 @@ switch($method)
$data = getPruefungByLv($studiensemester, $uid);
break;
case 'getPruefungByLvFromStudiengang':
$studiensemester = isset($_REQUEST['studiensemester']) ? $_REQUEST['studiensemester'] : NULL;
$studiensemester = isset($_REQUEST['studiensemester']) ? $_REQUEST['studiensemester'] : NULL;
$data = getPruefungByLvFromStudiengang($studiensemester, $uid);
break;
case 'loadPruefung':
@@ -64,7 +64,7 @@ switch($method)
{
$uid = $student_uid;
}
if($student_uid === "")
{
$data['result']="";
@@ -368,19 +368,19 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null)
$stdsem = $studiensemester->getLastOrAktSemester(0);
$lv_besucht = false;
$studienverpflichtung_id = filter_input(INPUT_POST, "studienverpflichtung_id");
//Defaulteinstellung für Anzahlprüfungsversuche (wird durch Addon "ktu" überschrieben)
$maxAnzahlVersuche = 0;
//Defaulteinstellung für Code Note "unetnschuldigt ferngeblieben" (wird durch Addon "ktu" überschrieben)
$noteCode_uef = -1;
$addon = new addon();
foreach ($addon->aktive_addons as $a)
{
if($a === "ktu")
if($a === "ku")
{
require '../../../../addons/ktu/cis/prfVerwaltung_array.php';
require '../../../../addons/'.$a.'/cis/prfVerwaltung_array.php';
switch($lehrveranstaltung->oe_kurzbz)
{
case $fakultaeten[0]["fakultaet"]:
@@ -389,7 +389,7 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null)
case $fakultaeten[1]["fakultaet"]:
$semCounter = $fakultaeten[1]["sem"];
break;
default:
default:
$semCounter = 2;
break;
}
@@ -415,17 +415,29 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null)
$i++;
}
while($i<=$semCounter && $lv_besucht === FALSE);
if(!$lv_besucht)
{
$data['error']='true';
$data['errormsg']='Besuch der Lehrveranstaltung liegt zu weit in der Vergangenheit.';
return $data;
}
$pruefung->getPruefungen($uid, NULL, $lehrveranstaltung->lehrveranstaltung_id);
$anmeldung_moeglich = true;
$anzahlPruefungen = count($pruefung->result);
if(isset($pruefungstyp_kurzbzArray))
{
if($anzahlPruefungen < count($pruefungstyp_kurzbzArray))
{
$pruefungstyp_kurzbz = $pruefungstyp_kurzbzArray[$anzahlPruefungen];
}
}
else
{
$pruefungstyp_kurzbz = null;
}
foreach($pruefung->result as $prf)
{
$note = new note($prf->note);
@@ -456,7 +468,7 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null)
}
}
}
if($anmeldung_moeglich)
{
if($termin->teilnehmer_max > $termin->getNumberOfParticipants() || $termin->teilnehmer_max == NULL)
@@ -470,6 +482,7 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null)
$anmeldung->uid = $uid;
$anmeldung->reihung = $reihung+1;
$anmeldung->status_kurzbz = "angemeldet";
$anmeldung->pruefungstyp_kurzbz = $pruefungstyp_kurzbz;
$lehrveranstaltung = new lehrveranstaltung($_REQUEST["lehrveranstaltung_id"]);
$konto = new konto();
@@ -514,7 +527,7 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null)
$data['errormsg']='Anmeldung auf Grund von Sperre nicht möglich.';
return $data;
}
$anrechnung = new anrechnung();
$lv_komp = new lehrveranstaltung($studienverpflichtung_id);
$person = new person();
@@ -548,18 +561,18 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null)
$anrechnung->new = true;
$anrechungSaveResult = $anrechnung->save();
}
else
else
{
$anrechungSaveResult = true;
}
if($anrechungSaveResult)
{
if($anrechnung->anrechnung_id == "")
$anmeldung->anrechnung_id = null;
else
$anmeldung->anrechnung_id = $anrechnung->anrechnung_id;
if($anmeldung->save(true))
{
$pruefung = new pruefungCis($termin->pruefung_id);
@@ -784,7 +797,7 @@ function anmeldungBestaetigen($uid)
$datum = new datum();
$ort = new ort($termin->ort_kurzbz);
$pruefung = new pruefungCis($termin->pruefung_id);
$to = $anmeldung->uid."@".DOMAIN;
$from = "noreply@".DOMAIN;
$subject = "Anmeldungsbestätigung zur Prüfung";
@@ -806,11 +819,11 @@ function anmeldungBestaetigen($uid)
$html .= "<br>";
$html .= "<a href='".APP_ROOT."cis/private/lehre/pruefung/pruefungsanmeldung.php'>Link zur Anmeldung</a><br>";
$html .= "<br>";
$mail = new mail($to, $from, $subject,"Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.");
$mail->setHTMLContent($html);
$mail->send();
$data['result']=true;
$data['error']='false';
$data['errormsg']='';
@@ -896,18 +909,18 @@ function getPruefungenStudiengang($uid, $aktStudiensemester)
}
/**
*
*
* @return typespeichert ein Kommentar zu einer Prüfungsanmeldung
*/
function saveKommentar()
{
$kommentar = $_REQUEST["kommentar"];
$pruefungsanmeldung_id = $_REQUEST["pruefungsanmeldung_id"];
$pruefungsanmeldung = new pruefungsanmeldung($pruefungsanmeldung_id);
$pruefungsanmeldung->kommentar = $kommentar;
if($pruefungsanmeldung->save())
{
{
$data['result']=true;
$data['error']='false';
$data['errormsg']='';
@@ -933,9 +946,9 @@ function getAllFreieRaeume($terminId)
$teilnehmer = $pruefungstermin->getNumberOfParticipants();
$teilnehmer = $teilnehmer !== false ? $teilnehmer : 0;
$pruefungstermin->getAll($pruefungstermin->von, $pruefungstermin->bis, TRUE);
if($ort->search($datum_von[0], $datum_von[1], $datum_bis[1], null, $teilnehmer, true))
{
{
foreach($pruefungstermin->result as $termin)
{
if($termin->pruefungstermin_id != $pruefungstermin->pruefungstermin_id && !is_null($termin->ort_kurzbz))
@@ -945,7 +958,7 @@ function getAllFreieRaeume($terminId)
array_push($ort->result, $o);
}
}
usort($ort->result, "compareRaeume");
$data['result']=$ort->result;
$data['error']='false';
@@ -985,7 +998,7 @@ function saveRaum($terminId, $ort_kurzbz, $uid)
$reserviert = true;
}
if(!$reserviert || $pruefungstermin->sammelklausur == TRUE)
{
{
$pruefung = new pruefungCis($pruefungstermin->pruefung_id);
$mitarbeiter = new mitarbeiter($pruefung->mitarbeiter_uid);
if($ort_kurzbz === "buero")
@@ -1018,7 +1031,7 @@ function saveRaum($terminId, $ort_kurzbz, $uid)
$reservierung->insertamum = date('Y-m-d G:i:s');
$reservierung->insertvon = $uid;
$reservierungError = false;
foreach($stunden as $h)
{
$reservierung->stunde = $h;
@@ -1028,7 +1041,7 @@ function saveRaum($terminId, $ort_kurzbz, $uid)
}
}
if(!$reservierungError)
{
{
$pruefungstermin->ort_kurzbz = $reservierung->ort_kurzbz;
if($pruefungstermin->save(false))
{
@@ -1074,4 +1087,4 @@ function getLvKompatibel($lvid)
}
return $data;
}
?>
?>
+62 -55
View File
@@ -2,22 +2,22 @@
<?php
/*
* Copyright 2014 fhcomplete.org
*
*
* 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., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*
*
*
* Authors: Stefan Puraner <puraner@technikum-wien.at>
*/
@@ -29,8 +29,15 @@ require_once('../../../../include/lehrveranstaltung.class.php');
require_once('../../../../include/konto.class.php');
require_once('../../../../include/studiensemester.class.php');
require_once('../../../../include/student.class.php');
require_once('../../../../include/phrasen.class.php');
require_once('../../../../include/globals.inc.php');
require_once('../../../../include/sprache.class.php');
$sprache = getSprache();
$lang = new sprache();
$lang->load($sprache);
$p = new phrasen($sprache);
//TODO
$uid = get_uid();
$db = new basis_db();
@@ -50,7 +57,7 @@ $studiensemester->getAll();
<script src="../../../../include/js/datecheck.js"></script>
<script src="../../../../include/js/jquery1.9.min.js"></script>
<script src="../../../../include/js/jquery.tablesorter.min.js"></script>
<script src="./pruefung.js"></script>
<script src="./pruefung.js.php"></script>
<link rel="stylesheet" href="../../../../skin/jquery-ui-1.9.2.custom.min.css">
<link rel="stylesheet" href="../../../../skin/fhcomplete.css">
<link rel="stylesheet" href="../../../../skin/style.css.php">
@@ -59,12 +66,12 @@ $studiensemester->getAll();
#pruefungen, #prfTermine {
width: 50%;
}
#details {
width: 50%;
/* margin-left: 1.5em;*/
}
#lvDetails, #prfDetails {
min-width: 40%;
margin-bottom: 1em;
@@ -72,21 +79,21 @@ $studiensemester->getAll();
float:left;
/*border: 1px solid black;*/
}
/* #prfDetails {
float:right;
}*/
#accordion {
width: 60%;
clear: left;
clear: right;
}
.titel {
font-weight: bold;
}
#message {
position: fixed;
bottom: 0px;
@@ -95,7 +102,7 @@ $studiensemester->getAll();
font-size: 1.5em;
font-weight: bold;
}
.columnheader1 {
width: 30%;
}
@@ -108,13 +115,13 @@ $studiensemester->getAll();
.columnheader4 {
width: 5%;
}
#accordion p {
margin: 0;
height: 24px;
}
</style>
</head>
<body>
<script>
@@ -122,7 +129,7 @@ $studiensemester->getAll();
$(document).ajaxSend(function(event, xhr, options){
count++;
});
$(document).ajaxComplete(function(event, xhr, settings){
count--;
//Wenn alle AJAX-Request fertig sind
@@ -135,7 +142,7 @@ $studiensemester->getAll();
$("#accordion").attr("style", "visibility: visible;");
}
});
$(document).ready(function(){
loadPruefungen();
loadPruefungenOfStudiengang();
@@ -146,7 +153,7 @@ $studiensemester->getAll();
width: "auto"
});
$("#dialog").dialog({ autoOpen: false });
$("#details").dialog({
modal: true,
autoOpen: false,
@@ -169,10 +176,10 @@ $studiensemester->getAll();
;
?>
</script>
<h1>Prüfungsanmeldung für <?php echo $benutzer->vorname." ".$benutzer->nachname." (".$uid.")"; ?></h1>
<h1><?php echo $p->t('pruefung/anmeldungFuer'); ?> <?php echo $benutzer->vorname." ".$benutzer->nachname." (".$uid.")"; ?></h1>
<?php
echo '<h3>Filter</h3>';
echo '<p>Studiensemester: ';
echo '<h3>'.$p->t('pruefung/filter').'</h3>';
echo '<p>'.$p->t('global/studiensemester').': ';
echo '<select id="filter_studiensemester" onchange="refresh();">';
$aktuellesSemester = $studiensemester->getaktorNext();
foreach($studiensemester->studiensemester as $sem)
@@ -187,51 +194,51 @@ $studiensemester->getAll();
}
}
echo '</select></p>';
?>
<div id="details" title="Details">
<div id="details" title="<?php echo $p->t('pruefung/details'); ?>">
<div id="lvDetails">
<h1>LV-Details</h1>
<span class="titel">Bezeichnung: </span><span id="lvBez"></span><br/>
<span class="titel">ECTS: </span><span id="lvEcts"></span><br/>
<h1><?php echo $p->t('pruefung/lvDetails'); ?></h1>
<span class="titel"><?php echo $p->t('global/bezeichnung'); ?>: </span><span id="lvBez"></span><br/>
<span class="titel"><?php echo $p->t('global/ects'); ?>: </span><span id="lvEcts"></span><br/>
</div>
<div id="prfDetails">
<h1>Prüfungsdetails</h1>
<span class="titel">Typ: </span><span id="prfTyp"></span><br/>
<span class="titel">Methode: </span><span id="prfMethode"></span><br/>
<span class="titel">Beschreibung: </span><span id="prfBeschreibung"></span><br/>
<h1><?php echo $p->t('pruefung/pruefungsDetails'); ?></h1>
<span class="titel"><?php echo $p->t('pruefung/typ'); ?>: </span><span id="prfTyp"></span><br/>
<span class="titel"><?php echo $p->t('pruefung/pruefungMethode'); ?>: </span><span id="prfMethode"></span><br/>
<span class="titel"><?php echo $p->t('global/beschreibung'); ?>: </span><span id="prfBeschreibung"></span><br/>
<span id="prfEinzeln"></span><br/>
<span class="titel" style="visibility: hidden;">Intervall: </span><span id="prfIntervall"></span><br/>
<span class="titel" style="visibility: hidden;"><?php echo $p->t('pruefung/intervall'); ?>: </span><span id="prfIntervall"></span><br/>
</div>
</div>
<div id="message"></div>
<div id="accordion" style="visibility: hidden;">
<h2>Besuchte Lehrveranstaltungen</h2>
<h2><?php echo $p->t('pruefung/besuchteLehrveranstaltungen'); ?></h2>
<div>
<table id="table1" class="tablesorter">
<thead>
<tr>
<th class="columnheader1">Insitut</th>
<th class="columnheader2">Lehrveranstaltung</th>
<th class="columnheader3">Termin</th>
<th class="columnheader4">freie Plätze</th>
<th class="columnheader1"><?php echo $p->t('global/institut'); ?></th>
<th class="columnheader2"><?php echo $p->t('global/lehrveranstaltung'); ?></th>
<th class="columnheader3"><?php echo $p->t('pruefung/pruefungTermin'); ?></th>
<th class="columnheader4"><?php echo $p->t('pruefung/freiePlaetze'); ?></th>
</tr>
</thead>
<tbody id="pruefungen">
</tbody>
</table>
</table>
</div>
<h2>Lehrveranstaltungen von Studiengang</h2>
<h2><?php echo $p->t('pruefung/lvVonStudiengang'); ?></h2>
<div>
<table id="table2" class="tablesorter">
<thead>
<tr>
<th class="columnheader1">Insitut</th>
<th class="columnheader2">Lehrveranstaltung</th>
<th class="columnheader3">Termin</th>
<th class="columnheader4">freie Plätze</th>
<th class="columnheader1"><?php echo $p->t('global/institut'); ?></th>
<th class="columnheader2"><?php echo $p->t('global/lehrveranstaltung'); ?></th>
<th class="columnheader3"><?php echo $p->t('pruefung/pruefungTermin'); ?></th>
<th class="columnheader4"><?php echo $p->t('pruefung/freiePlaetze'); ?></th>
</tr>
</thead>
<tbody id="pruefungenStudiengang">
@@ -239,15 +246,15 @@ $studiensemester->getAll();
</tbody>
</table>
</div>
<h2>Alle Lehrveranstaltungen</h2>
<h2><?php echo $p->t('pruefung/lvAlle'); ?></h2>
<div>
<table id="table3" class="tablesorter">
<thead>
<tr>
<th class="columnheader1">Insitut</th>
<th class="columnheader2">Lehrveranstaltung</th>
<th class="columnheader3">Termin</th>
<th class="columnheader4">freie Plätze</th>
<th class="columnheader1"><?php echo $p->t('global/institut'); ?></th>
<th class="columnheader2"><?php echo $p->t('global/lehrveranstaltung'); ?></th>
<th class="columnheader3"><?php echo $p->t('pruefung/pruefungTermin'); ?></th>
<th class="columnheader4"><?php echo $p->t('pruefung/freiePlaetze'); ?></th>
</tr>
</thead>
<tbody id="pruefungenGesamt">
@@ -256,7 +263,7 @@ $studiensemester->getAll();
</table>
</div>
</div>
<div id="saveDialog" title="Anmeldung speichern">
<div id="saveDialog" title="<?php echo $p->t('pruefung/anmeldungSpeichern'); ?>">
<form id="saveAnmeldungForm">
<table id="neueAnmeldung">
<tr>
@@ -267,40 +274,40 @@ $studiensemester->getAll();
</td>
</tr>
<tr>
<td style="vertical-align: top; font-weight: bold;">Lehrveranstaltung: </td>
<td style="vertical-align: top; font-weight: bold;"><?php echo $p->t('global/lehrveranstaltung'); ?>: </td>
<td>
<span id="lehrveranstaltung"></span>
</td>
</tr>
<tr>
<td style="vertical-align: top; font-weight: bold;">Von: </td>
<td style="vertical-align: top; font-weight: bold;"><?php echo $p->t('global/von'); ?>: </td>
<td>
<span id="terminVon"></span>
</td>
</tr>
<tr>
<td style="vertical-align: top; font-weight: bold;">Bis: </td>
<td style="vertical-align: top; font-weight: bold;"><?php echo $p->t('global/bis'); ?>: </td>
<td>
<span type="text" id="terminBis" disabled="true"></span>
</td>
</tr>
<?php if(!defined('CIS_PRUEFUNGSANMELDUNG_ANRECHNUNG') || CIS_PRUEFUNGSANMELDUNG_ANRECHNUNG == true): ?>
<tr>
<td style="vertical-align: top; font-weight: bold;">Studienverpflichtung:* </td>
<td style="vertical-align: top; font-weight: bold;"><?php echo $p->t('pruefung/studienverpflichtung'); ?>:* </td>
<td>
<select id="studienverpflichtung"></select>
</td>
</tr>
<?php endif; ?>
<tr>
<td style="vertical-align: top; font-weight: bold;">Bemerkung: </td>
<td style="vertical-align: top; font-weight: bold;"><?php echo $p->t('global/anmerkung'); ?>: </td>
<td>
<textarea id="anmeldungBemerkung" rows="10" cols="20"></textarea>
</td>
</tr>
<tr>
<td><input type="button" value="Anmelden" onclick="saveAnmeldung();"></td>
<td><input type="button" value="<?php echo $p->t('global/anmelden'); ?>" onclick="saveAnmeldung();"></td>
</tr>
</table>
</form>
+45 -29
View File
@@ -2,22 +2,22 @@
<?php
/*
* Copyright 2014 fhcomplete.org
*
*
* 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., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*
*
*
* Authors: Stefan Puraner <puraner@technikum-wien.at>
*/
@@ -33,6 +33,14 @@ require_once('../../../../include/lehrveranstaltung.class.php');
require_once('../../../../include/mitarbeiter.class.php');
require_once('../../../../include/student.class.php');
require_once('../../../../include/datum.class.php');
require_once('../../../../include/phrasen.class.php');
require_once('../../../../include/globals.inc.php');
require_once('../../../../include/sprache.class.php');
$sprache = getSprache();
$lang = new sprache();
$lang->load($sprache);
$p = new phrasen($sprache);
$uid = get_uid();
$rechte = new benutzerberechtigung();
@@ -42,17 +50,17 @@ $rechte->getBerechtigungen($uid);
<head>
<meta charset="UTF-8">
<script src="../../../../include/js/jquery1.9.min.js"></script>
<style type="text/css">
<style type="text/css">
body {
margin: 0;
padding: 0;
}
* {
box-sizing: border-box;
-moz-box-sizing: border-box;
}
#page {
width: 210mm;
min-height: 297mm;
@@ -64,7 +72,7 @@ $rechte->getBerechtigungen($uid);
box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
font-family: Arial, Helvetica;
}
#subpage {
padding: 10mm;
border: 1px black solid;
@@ -109,12 +117,12 @@ $rechte->getBerechtigungen($uid);
line-height: 16pt;
font-size: 12pt;
}
@page {
size: A4;
margin: 0;
}
@media print {
html, body {
width: 210mm;
@@ -130,7 +138,7 @@ $rechte->getBerechtigungen($uid);
background: initial;
page-break-after: auto;
}
/*
* Workaround um beim Drucken jede zweite Zeile der Tabelle
* grau darzustellen. Standardmäßig werden von Browsern keine
@@ -139,14 +147,14 @@ $rechte->getBerechtigungen($uid);
tr:nth-child(odd) > td{
box-shadow: inset 0 0 0 1000px lightgrey;
}
//Veranlasst Chrome Hintergrundfarben zu drucken
body{
-webkit-print-color-adjust:exact;
background-color: #FFFFFF;
margin: 0;
}
//Anweisungen nur für Firefox
@-moz-document url-prefix() {
html, body {
@@ -169,26 +177,26 @@ $rechte->getBerechtigungen($uid);
</script>
<div id="page">
<div id="subpage">
<h1>Anmeldungsliste</h1>
<h1><?php echo $p->t('pruefung/anmeldungsliste'); ?></h1>
<?php
if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungAdmin'))
die('Sie haben keine Berechtigung für diese Seite');
$termin_id = filter_input(INPUT_GET,"termin_id");
$lehrveranstaltung_id = filter_input(INPUT_GET,"lehrveranstaltung_id");
$studiensemester = filter_input(INPUT_GET, "studiensemester");
if(is_null($lehrveranstaltung_id))
{
die('Fehlender Parameter lehrveranstaltung_id');
die($p->t('pruefung/fehlenderParam_lvid'));
}
else if(is_null($termin_id))
{
die('Fehlender Parameter termin_id');
die($p->t('pruefung/fehlenderParam_terminid'));
}
else if(is_null($studiensemester))
{
die('Fehlender Parameter studiensemester');
die($p->t('pruefung/fehlenderParam_studiensemester'));
}
else
{
@@ -208,19 +216,19 @@ $rechte->getBerechtigungen($uid);
$einzeln = TRUE;
$pruefungsintervall = $pruefung->pruefungsintervall;
}
}
?>
<span class="bold">Lehrveranstaltung: </span><span><?=$lehrveranstaltung->bezeichnung?></span><br/>
<span class="bold">Studiensemester: </span><span><?=$stdsem->bezeichnung?></span><br/>
<span class="bold">Prüfer: </span><span><?=$mitarbeiter->getFullName(FALSE)?></span><br/>
<span class="bold"><?php echo $p->t('global/lehrveranstaltung'); ?>: </span><span><?=$lehrveranstaltung->bezeichnung?></span><br/>
<span class="bold"><?php echo $p->t('global/studiensemester'); ?>: </span><span><?=$stdsem->bezeichnung?></span><br/>
<span class="bold"><?php echo $p->t('pruefung/pruefer'); ?>: </span><span><?=$mitarbeiter->getFullName(FALSE)?></span><br/>
<table id="liste">
<thead>
<tr>
<th>#</th>
<th>Vorname</th>
<th>Nachname</th>
<th>Matrikelnummer</th>
<th>Datum</th>
<th><?php echo $p->t('global/vorname'); ?></th>
<th><?php echo $p->t('global/nachname'); ?></th>
<th><?php echo $p->t('global/matrikelnummer'); ?></th>
<th><?php echo $p->t('global/datum'); ?></th>
</tr>
</thead>
<tbody>
@@ -231,7 +239,7 @@ $rechte->getBerechtigungen($uid);
{
$student = new student($anmeldung->uid);
$prfTermin = new pruefungstermin($anmeldung->pruefungstermin_id);
if($einzeln)
{
$date = $datum->formatDatum($prfTermin->von, "Y-m-d H:i:s");
@@ -255,10 +263,18 @@ $rechte->getBerechtigungen($uid);
?>
</tbody>
<?php
}
else
{
?>
<span><?php echo $p->t('pruefung/keineBestaetigtenAnmeldungenVorhanden'); ?></span><br/>
<?php
}
}
?>
</table>
</div>
</div>
</body>
</html>
</html>
+67 -59
View File
@@ -2,22 +2,22 @@
<?php
/*
* Copyright 2014 fhcomplete.org
*
*
* 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., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*
*
*
* Authors: Stefan Puraner <puraner@technikum-wien.at>
*/
@@ -27,6 +27,14 @@ require_once('../../../../include/functions.inc.php');
require_once('../../../../include/benutzerberechtigung.class.php');
require_once('../../../../include/pruefungCis.class.php');
require_once('../../../../include/studiensemester.class.php');
require_once('../../../../include/phrasen.class.php');
require_once('../../../../include/globals.inc.php');
require_once('../../../../include/sprache.class.php');
$sprache = getSprache();
$lang = new sprache();
$lang->load($sprache);
$p = new phrasen($sprache);
$uid = get_uid();
$db = new basis_db();
@@ -43,11 +51,11 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
<html>
<head>
<meta charset="UTF-8">
<title>Prüfungsanmeldung Verwaltung</title>
<title><?php echo $p->t('pruefung/anmeldungenVerwaltenTitle'); ?></title>
<script src="../../../../include/js/datecheck.js"></script>
<script src="../../../../include/js/jquery1.9.min.js"></script>
<script src="../../../../include/js/jquery.tablesorter.min.js"></script>
<script src="./pruefung.js"></script>
<script src="../../../../include/js/jquery.tablesorter.min.js"></script>
<script src="./pruefung.js.php"></script>
<link rel="stylesheet" href="../../../../skin/jquery-ui-1.9.2.custom.min.css">
<link rel="stylesheet" href="../../../../skin/fhcomplete.css">
<link rel="stylesheet" href="../../../../skin/style.css.php">
@@ -57,17 +65,17 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
body {
padding: 10px 0 0 10px;
}
#stgWrapper {
position: absolute;
height: 70px;
width: 850px;
padding: 1.8em 1.5em 1.8em 1em;
border-radius: 25px;
/*border: 1px solid black;*/
box-shadow: 0em 0em 2em 0.5em #888888 inset;
/*border-radius: 25px;*/
border: 1px solid #dddddd;
/*box-shadow: 0em 0em 2em 0.5em #888888 inset;*/
}
#studiengaenge {
/*border: 1px solid black;*/
width: 94%;
@@ -78,19 +86,19 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
overflow: auto;
overflow-x: hidden;
}
#prfWrapper {
position: absolute;
height: 70%;
width: 300px;
top: 180px;
padding: 1.8em 1.5em 1.8em 1em;
border-radius: 25px;
/*border: 1px solid black;*/
box-shadow: 0em 0em 2em 0.5em #888888 inset;
/*border-radius: 25px;*/
border: 1px solid #dddddd;
/*box-shadow: 0em 0em 2em 0.5em #888888 inset;*/
}
#pruefungen {
/*border: 1px solid black;*/
width: 94%;
@@ -101,7 +109,7 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
overflow: auto;
overflow-x: hidden;
}
#anmWrapper {
position: absolute;
/*top: 45px;*/
@@ -110,25 +118,25 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
width: 500px;
height: 70%;
padding: 1.8em 1.5em 1.8em 1em;
border-radius: 25px;
/*border: 1px solid black;*/
box-shadow: 0em 0em 2em 0.5em #888888 inset;
/*border-radius: 25px;*/
border: 1px solid #dddddd;
/*box-shadow: 0em 0em 2em 0.5em #888888 inset;*/
}
#anmeldungen {
height: 100%;
overflow: auto;
overflow-x: hidden;
}
#anmeldungen > * {
padding: 0.5em;
}
#raum > * {
margin-bottom: 0.5em;
}
#message {
position: fixed;
bottom: 0px;
@@ -137,51 +145,51 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
font-size: 1.5em;
font-weight: bold;
}
#sortable {
list-style-type: none;
margin: 0;
padding: 0;
#sortable {
list-style-type: none;
margin: 0;
padding: 0;
width: 100%;
}
#sortable li {
margin: 0 3px 3px 3px;
padding: 0.2em 0.4em 0.4em;
padding-left: 1.5em;
font-size: 1.4em;
#sortable li {
margin: 0 3px 3px 3px;
padding: 0.2em 0.4em 0.4em;
padding-left: 1.5em;
font-size: 1.4em;
height: 18px;
list-style-image: none;
display: block;
}
#sortable li span {
/*position: absolute;*/
margin-left: -1.3em;
/*position: absolute;*/
margin-left: -1.3em;
float:left;
}
.resultOK {
color: green;
}
.resultNotOK {
color: red;
}
#sortable li a {
float: left;
}
#sortable li div {
float: right;
margin-left: 5px;
font-size: 0.8em;
}
.anmerkungInfo {
text-align: right;
width: 10%;
}
#progressbar {
position: fixed;
width: 300px;
@@ -199,17 +207,17 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
left: 0px;
background-color: rgba(0,0,0,0.3); /* black semi-transparent */
}
.studiengang {
font-size: 1em;
font-weight: bold;
}
#studiengaenge > div {
float: left;
width: 50%;
}
</style>
</head>
<body>
@@ -225,17 +233,17 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
});
});
</script>
<h1>Anmeldungen Verwalten</h1>
<h1><?php echo $p->t('pruefung/anmeldungenVerwalten'); ?></h1>
<div id='stgWrapper'>
<div id='studiengaenge'>
<div>
<h2>Studiengänge</h2>
<h2><?php echo $p->t('global/studiengang'); ?></h2>
<div id='stgListe'>
</div>
</div>
<div>
<h2>Studiensemester</h2>
<h2><?php echo $p->t('global/studiensemester'); ?></h2>
<?php
echo '<select id="filter_studiensemester" onchange="loadPruefungStudiengang();" style="visibility: hidden;">';
$aktuellesSemester = $studiensemester->getaktorNext();
@@ -259,7 +267,7 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
</div>
<div id='prfWrapper'>
<div id='pruefungen'>
<h2>Prüfungen</h2>
<h2><?php echo $p->t('pruefung/pruefungPruefungenTitle'); ?></h2>
<ul id="pruefungenListe">
</ul>
@@ -267,9 +275,9 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
</div>
<div id='anmWrapper'>
<div id="anmeldungen">
<h2>Anmeldungen</h2>
<h2><?php echo $p->t('pruefung/pruefungsbewertungAnmeldungen'); ?></h2>
<div id="anmeldung_hinzufuegen">
</div>
<div id="anmeldeDaten">
@@ -278,20 +286,20 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
</div>
<div id="kommentar">
</div>
<div id="kommentarSpeichernButton">
</div>
<div id="raumLink">
</div>
<div id="listeDrucken">
</div>
<div id="raumDialog">
<div id="raum">
</div>
<div id="raumSpeichernButton">
@@ -299,7 +307,7 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
</div>
</div>
</div>
<div id="message"></div>
<div id="progressbar"></div>
</body>
+32 -19
View File
@@ -17,6 +17,14 @@ require_once('../../../../include/pruefungsanmeldung.class.php');
require_once('../../../../include/student.class.php');
require_once('../../../../include/pruefungstermin.class.php');
require_once('../../../../include/datum.class.php');
require_once('../../../../include/phrasen.class.php');
require_once('../../../../include/globals.inc.php');
require_once('../../../../include/sprache.class.php');
$sprache = getSprache();
$lang = new sprache();
$lang->load($sprache);
$p = new phrasen($sprache);
$uid = get_uid();
@@ -43,7 +51,7 @@ switch($method)
{
$data['result']='false';
$data['error']='true';
$data['errormsg']='Sie haben keine Berechtigung.';
$data['errormsg']=$p->t('global/keineBerechtigung');
break;
}
$data = getPruefungMitarbeiter($mitarbeiter_uid);
@@ -53,7 +61,7 @@ switch($method)
{
$data['result']='false';
$data['error']='true';
$data['errormsg']='Sie haben keine Berechtigung.';
$data['errormsg']=$p->t('global/keineBerechtigung');
break;
}
$data = getNoten();
@@ -73,7 +81,7 @@ switch($method)
{
$data['result']='false';
$data['error']='true';
$data['errormsg']='Sie haben keine Berechtigung.';
$data['errormsg']=$p->t('global/keineBerechtigung');
break;
}
$note = filter_input(INPUT_POST, 'note');
@@ -96,7 +104,7 @@ switch($method)
{
$data['result']='false';
$data['error']='true';
$data['errormsg']='Sie haben keine Berechtigung.';
$data['errormsg']=$p->t('global/keineBerechtigung');
break;
}
$pruefung_id = filter_input(INPUT_POST, 'pruefung_id');
@@ -109,7 +117,7 @@ switch($method)
{
$data['result']='false';
$data['error']='true';
$data['errormsg']='Sie haben keine Berechtigung.';
$data['errormsg']=$p->t('global/keineBerechtigung');
break;
}
$pruefung_id = filter_input(INPUT_POST, 'pruefung_id');
@@ -120,7 +128,7 @@ switch($method)
{
$data['result']='false';
$data['error']='true';
$data['errormsg']='Sie haben keine Berechtigung.';
$data['errormsg']=$p->t('global/keineBerechtigung');
break;
}
$pruefungsanmeldung_id = filter_input(INPUT_POST, 'pruefungsanmeldung_id');
@@ -131,7 +139,7 @@ switch($method)
{
$data['result']='false';
$data['error']='true';
$data['errormsg']='Sie haben keine Berechtigung.';
$data['errormsg']=$p->t('global/keineBerechtigung');
break;
}
$lehrveranstaltung_id = filter_input(INPUT_POST, 'lehrveranstaltung_id');
@@ -150,7 +158,8 @@ echo json_encode($data);
* @return Array
*/
function getPruefungMitarbeiter($uid = null)
{
{
global $p;
$lehrveranstaltung = new lehrveranstaltung();
if($uid !== null)
{
@@ -183,7 +192,7 @@ function getPruefungMitarbeiter($uid = null)
else
{
$data['error']='true';
$data['errormsg']="Keine Prüfungen vorhanden.";
$data['errormsg']=$p->t('pruefung/keinePruefungenVorhanden');
}
return $data;
}
@@ -224,6 +233,7 @@ function getNoten()
*/
function saveBeurteilung($lehrveranstaltung_id, $student_uid, $mitarbeiter_uid, $note, $pruefung_id, $datum, $anmerkung, $pruefungsanmeldung_id, $uid)
{
global $p;
$pruefungCis = new pruefungCis($pruefung_id);
$lehrveranstaltung = new lehrveranstaltung();
$lehreinheiten = $lehrveranstaltung->getLehreinheitenOfLv($lehrveranstaltung_id, $student_uid);
@@ -231,20 +241,20 @@ function saveBeurteilung($lehrveranstaltung_id, $student_uid, $mitarbeiter_uid,
$pruefung->new = true;
if(!empty($lehreinheiten))
{
$pruefungsanmeldung = new pruefungsanmeldung($pruefungsanmeldung_id);
$pruefungstermin = new pruefungstermin($pruefungsanmeldung->pruefungstermin_id);
$pruefung->lehreinheit_id = $lehreinheiten[0];
$pruefung->student_uid = $student_uid;
$pruefung->mitarbeiter_uid = $mitarbeiter_uid;
$pruefung->note = $note;
$pruefung->pruefungstyp_kurzbz = $pruefungCis->pruefungstyp_kurzbz;
$pruefung->pruefungstyp_kurzbz = $pruefungsanmeldung->pruefungstyp_kurzbz;
$pruefung->datum = $datum;
$pruefung->anmerkung = $anmerkung;
$pruefung->pruefungsanmeldung_id = $pruefungsanmeldung_id;
$pruefung->insertvon = $uid;
$pruefung->insertamum = date('Y-m-d H:i:s');
$pruefungsanmeldung = new pruefungsanmeldung($pruefungsanmeldung_id);
$pruefungstermin = new pruefungstermin($pruefungsanmeldung->pruefungstermin_id);
$datum = new datum();
// var_dump(date("Y-m-d", time()));
// var_dump($pruefungstermin->von);
@@ -265,15 +275,16 @@ function saveBeurteilung($lehrveranstaltung_id, $student_uid, $mitarbeiter_uid,
else
{
$data['error']='true';
$data['errormsg']="Prüfungstermin liegt nicht in der Vergangenheit.";
$data['errormsg']=$p->t('pruefung/terminNichtInDerVergangenheit');
//$data['errormsg']='Nicht in der Vergangenheit';
}
}
else
else
{
$data['error']='true';
$data['errormsg']="Keine Lehreinheiten vorhanden.";
$data['errormsg']=$p->t('pruefung/keineLehreinheitenVorhanden');
}
return $data;
}
@@ -286,6 +297,7 @@ function saveBeurteilung($lehrveranstaltung_id, $student_uid, $mitarbeiter_uid,
*/
function updateBeurteilung($pruefung_id, $note, $uid, $anmerkung)
{
global $p;
$pruefung = new pruefung($pruefung_id);
$pruefung->new = FALSE;
$pruefung->note = $note;
@@ -334,6 +346,7 @@ function getBeurteilung($pruefungsanmeldung_id)
*/
function getAnmeldungenTermin($lehrveranstaltung_id, $pruefungstermin_id)
{
global $p;
$pruefungsanmeldung = new pruefungsanmeldung();
$anmeldungen = $pruefungsanmeldung->getAnmeldungenByTermin($pruefungstermin_id, $lehrveranstaltung_id);
foreach($anmeldungen as $a)
@@ -363,8 +376,8 @@ function getAnmeldungenTermin($lehrveranstaltung_id, $pruefungstermin_id)
}
else
{
$data['errormsg']= 'Keine Anmeldungen vorhanden';
$data['errormsg']= $p->t('pruefung/keineAnmeldungenVorhanden');
}
}
return $data;
}
}
+39 -31
View File
@@ -2,22 +2,22 @@
<?php
/*
* Copyright 2014 fhcomplete.org
*
*
* 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., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*
*
*
* Authors: Stefan Puraner <puraner@technikum-wien.at>
*/
@@ -33,6 +33,14 @@ require_once('../../../../include/pruefungstermin.class.php');
require_once('../../../../include/studiengang.class.php');
require_once('../../../../include/pruefungCis.class.php');
require_once('../../../../include/mitarbeiter.class.php');
require_once('../../../../include/phrasen.class.php');
require_once('../../../../include/globals.inc.php');
require_once('../../../../include/sprache.class.php');
$sprache = getSprache();
$lang = new sprache();
$lang->load($sprache);
$p = new phrasen($sprache);
$uid = get_uid();
$db = new basis_db();
@@ -53,7 +61,7 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
<script src="../../../../include/js/datecheck.js"></script>
<script src="../../../../include/js/jquery1.9.min.js"></script>
<script src="../../../../include/js/jquery.tablesorter.min.js"></script>
<script src="./pruefung.js"></script>
<script src="./pruefung.js.php"></script>
<script src="./pruefungsbewertung.js"></script>
<link rel="stylesheet" href="../../../../skin/jquery-ui-1.9.2.custom.min.css">
<link rel="stylesheet" href="../../../../skin/fhcomplete.css">
@@ -63,17 +71,17 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
body {
padding: 10px 0 0 10px;
}
#prfWrapper {
position: absolute;
height: 80%;
width: 300px;
padding: 1.8em 1.5em 1.8em 1em;
border-radius: 25px;
/*border: 1px solid black;*/
box-shadow: 0em 0em 2em 0.5em #888888 inset;
//border-radius: 25px;
border: 1px solid #dddddd;
/*box-shadow: 0em 0em 2em 0.5em #888888 inset;*/
}
#pruefungen {
/*border: 1px solid black;*/
width: 94%;
@@ -84,7 +92,7 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
overflow: auto;
overflow-x: hidden;
}
#anmWrapper {
position: absolute;
/*top: 45px;*/
@@ -92,21 +100,21 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
width: 600px;
height: 80%;
padding: 1.8em 1.5em 1.8em 1em;
border-radius: 25px;
/*border: 1px solid black;*/
box-shadow: 0em 0em 2em 0.5em #888888 inset;
/*border-radius: 25px;*/
border: 1px solid #dddddd;
/*box-shadow: 0em 0em 2em 0.5em #888888 inset;*/
}
#anmeldungen {
height: 100%;
overflow: auto;
overflow-x: hidden;
}
#anmeldungen > div, h2 {
padding: 0.5em;
}
#message {
position: fixed;
top: 0px;
@@ -116,12 +124,12 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
font-size: 1.5em;
font-weight: bold;
}
.missingFormData {
border: 2px solid red;
outline: 2px solid red;
}
.modalOverlay {
position: fixed;
width: 100%;
@@ -130,7 +138,7 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
left: 0px;
background-color: rgba(0,0,0,0.3); /* black semi-transparent */
}
.anmeldung {
font-size: 1.2em;
border-bottom: 1px solid black;
@@ -142,28 +150,28 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
margin: 0 1em 0 0;
float: left;
}
.anmeldung:last-child {
clear: both;
}
.anmeldung div:first-child {
width: 250px;
height: 100%;
}
.saved {
background-color: green;
}
.unsaved {
background-color: red;
}
#wrapper {
display: none;
}
#lektor {
margin: 0 0 1em 0;
}
@@ -209,7 +217,7 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
});
</script>
<div>
<h1>Prüfungsbewertung</h1>
<h1><?php echo $p->t('pruefung/pruefungsbewertungTitle'); ?></h1>
<div>
<?php
if(!$rechte->isBerechtigt('lehre/pruefungsbeurteilungAdmin'))
@@ -224,7 +232,7 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
}
else
{
echo '<span width="116px">Lektor: </span>';
echo '<span width="116px">'.$p->t('pruefung/pruefungLektor').': </span>';
echo '<input placeholder="UID" type="text" id="lektor" value="" size="30"/>';
echo '<input type="hidden" id="uid" value="" />';
echo '<input type="hidden" id="mitarbeiter_uid" value="" />';
@@ -234,7 +242,7 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
<div id="wrapper">
<div id='prfWrapper'>
<div id='pruefungen'>
<h2>Prüfungen</h2>
<h2><?php echo $p->t('pruefung/pruefungPruefungenTitle'); ?></h2>
<ul id="pruefungenListe">
</ul>
@@ -242,14 +250,14 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
</div>
<div id='anmWrapper'>
<div id="anmeldungen">
<h2>Anmeldungen</h2>
<h2><?php echo $p->t('pruefung/pruefungsbewertungAnmeldungen'); ?></h2>
<div id="anmeldeDaten">
</div>
</div>
</div>
</div>
<div id="message"></div>
<div id="progressbar"></div>
+94 -86
View File
@@ -2,22 +2,22 @@
<?php
/*
* Copyright 2014 fhcomplete.org
*
*
* 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., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*
*
*
* Authors: Stefan Puraner <puraner@technikum-wien.at>
*/
@@ -29,6 +29,14 @@ require_once('../../../../include/organisationseinheit.class.php');
require_once('../../../../include/studiensemester.class.php');
require_once('../../../../include/datum.class.php');
require_once('../../../../include/pruefungsfenster.class.php');
require_once('../../../../include/phrasen.class.php');
require_once('../../../../include/globals.inc.php');
require_once('../../../../include/sprache.class.php');
$sprache = getSprache();
$lang = new sprache();
$lang->load($sprache);
$p = new phrasen($sprache);
$uid = get_uid();
$db = new basis_db();
@@ -42,7 +50,7 @@ function compareOe($a, $b)
{
if($a->organisationseinheittyp_kurzbz == $b->organisationseinheittyp_kurzbz)
return 0;
return ($a->organisationseinheittyp_kurzbz < $b->organisationseinheittyp_kurzbz) ? -1 : 1;
}
@@ -50,7 +58,7 @@ function compareOe($a, $b)
<html>
<head>
<meta charset="UTF-8">
<title>Prüfungsfenster anlegen</title>
<title><?php echo $p->t('pruefung/titlePruefungsfenster') ?></title>
<script src="../../../../include/js/datecheck.js"></script>
<script src="../../../../include/js/jquery1.9.min.js"></script>
<link rel="stylesheet" href="../../../../skin/jquery-ui-1.9.2.custom.min.css">
@@ -83,7 +91,7 @@ $oe = $rechte->getOEkurzbz("lehre/pruefungsfenster");
$studiensemester = new studiensemester();
$studiensemester->getAll();
if (isset($_POST["method"]) && $_POST["method"] == "save")
if (isset($_POST["method"]) && $_POST["method"] == "save")
{
$method = $_POST["method"];
$studiensemester_selected = (isset($_POST["studiensemester"]) ? $_POST["studiensemester"] : "");
@@ -107,30 +115,30 @@ if (isset($_POST["method"]) && $_POST["method"] == "save")
$pruefungsfenster->ende = $endDate;
if ($pruefungsfenster->save())
{
echo "Datensatz erfolgreich gespeichert";
echo $p->t('pruefung/erfolgreichgespeichert');
}
else {
echo "Fehler: ".$pruefungsfenster->errormsg;
echo $p->t('pruefung/fehler').$pruefungsfenster->errormsg;
}
// }
// else
// }
// else
// {
// echo "Fehler: Startdatum liegt in der Vergangenheit.";
// }
}
}
else
{
echo "Fehler: Enddatum liegt in der Vergangenheit.";
echo $p->t('pruefung/fehlerEndDatumInDerVergangenheit');
}
}
else
{
echo "Fehler: Enddatum liegt nicht nach dem Startdatum.";
}
}
else
else
{
echo $p->t('pruefung/fehlerEndDatumVorStartDatum');
}
}
else
{
echo "Fehler: Datumseingabe nicht korrekt.";
echo $p->t('pruefung/fehlerDatumNichtKorrekt');
}
}
else if(isset($_POST["method"]) && $_POST["method"] == "update")
@@ -151,44 +159,44 @@ else if(isset($_POST["method"]) && $_POST["method"] == "update")
$pruefungsfenster_id = $_POST["id"];
$pruefungsfenster = new pruefungsfenster();
$pruefungsfenster->load($pruefungsfenster_id);
if(in_array($pruefungsfenster->oe_kurzbz, $oe))
{
{
$pruefungsfenster->studiensemester_kurzbz = $studiensemester_selected;
$pruefungsfenster->oe_kurzbz = $oe_kurzbz;
$pruefungsfenster->start = $startDate;
$pruefungsfenster->ende = $endDate;
if ($pruefungsfenster->save())
{
echo "Datensatz erfolgreich geändert.";
echo $p->t('pruefung/erfolgreichgeaendert');
}
else {
echo "Fehler: ".$pruefungsfenster->errormsg;
echo $p->t('pruefung/fehler').$pruefungsfenster->errormsg;
}
}
else
{
echo "Keine Berechtigung zum Ändern dieses Datensatzes.";
echo $p->t('pruefung/keineBerechtigungZumAendernDesDatensatzes');
}
// }
// else
// }
// else
// {
// echo "Fehler: Startdatum liegt in der Vergangenheit.";
// }
}
}
else
{
echo "Fehler: Enddatum liegt in der Vergangenheit.";
echo $p->t('pruefung/fehlerEndDatumInDerVergangenheit');
}
}
else
{
echo "Fehler: Enddatum liegt nicht nach dem Startdatum.";
}
}
else
else
{
echo $p->t('pruefung/fehlerEndDatumVorStartDatum');
}
}
else
{
echo "Fehler: Datumseingabe nicht korrekt.";
echo $p->t('pruefung/fehlerDatumNichtKorrekt');
}
}
else if(isset($_GET["id"]) && $_GET["id"]!= null && isset($_GET["method"]) && $_GET["method"]=="update")
@@ -198,41 +206,41 @@ else if(isset($_GET["id"]) && $_GET["id"]!= null && isset($_GET["method"]) && $_
$pruefungsfenster->load($pruefungsfenster_id);
if(!in_array($pruefungsfenster->oe_kurzbz, $oe))
{
echo "Keine Berechtigung zum Anzeigen dieses Datensatzes.";
echo $p->t('pruefung/keineBerechtigungZumAnzeigenDesDatensatzes');
$pruefungsfenster = new pruefungsfenster();
}
$method = $_GET["method"];
}
}
else if(isset($_GET["id"]) && $_GET["id"]!= null && isset($_GET["method"]) && $_GET["method"]=="delete")
{
{
$pruefungsfenster_id = $_GET["id"];
$pruefungsfenster = new pruefungsfenster();
$pruefungsfenster->load($pruefungsfenster_id);
if(in_array($pruefungsfenster->oe_kurzbz, $oe))
{
if(!$pruefungsfenster->hasPruefungen($pruefungsfenster_id) && $pruefungsfenster->errormsg === null)
{
if($pruefungsfenster->delete($pruefungsfenster_id))
{
echo "Datensatz erfolgreich gelöscht.";
}
echo $p->t('pruefung/erfolgreichgeloescht');
}
else
{
echo "Fehler: ".$pruefungsfenster->errormsg;
}
}
else
{
echo "Prüfungsfenster konnte nicht gelöscht werden, da Prüfungen verknüpft sind.";
echo $p->t('pruefung/pruefungsfensterKonnteNichtGeloeschtWerdenDaPruefungen');
}
$method = $_GET["method"];
}
else
{
echo "Keine Berechtigung zum Löschen dieses Datensatzes.";
echo $p->t('pruefung/keineBerechtigungZumLoeschenDesDatensatzes');
}
}
@@ -240,9 +248,9 @@ $prfFenster = new pruefungsfenster();
$prfFenster->getAll("start");
if($method != "update")
{
?>
<h1>Prüfungsfenster-Verwaltung</h1>
<h2>Neues Prüfungsfenster anlegen</h2>
?>
<h1><?php echo $p->t('pruefung/pruefungsfensterVerwaltung'); ?></h1>
<h2><?php echo $p->t('pruefung/neuesPruefungsfensterAnlegen'); ?></h2>
<div>
<form method="POST" action="pruefungsfenster_anlegen.php">
<table>
@@ -250,12 +258,12 @@ if($method != "update")
<td><input type="hidden" name="method" value="save"></td>
</tr>
<tr>
<td>Studiensemester: </td>
<td><?php echo $p->t('global/studiensemester'); ?>: </td>
<td>
<select id="studiensemester" name="studiensemester">
<?php
$aktuellesSemester = $studiensemester->getSemesterFromDatum(date("Y-m-d"));
foreach ($studiensemester->studiensemester as $result)
foreach ($studiensemester->studiensemester as $result)
{
if($aktuellesSemester == $result->studiensemester_kurzbz)
{
@@ -271,23 +279,23 @@ if($method != "update")
</td>
</tr>
<tr>
<td>Organisationseinheit: </td>
<td><?php echo $p->t('global/organisationseinheit'); ?>: </td>
<td>
<select id="oe_kurzbz" name="oe_kurzbz">
<?php
$oe_array = array();
foreach ($oe as $result)
foreach ($oe as $result)
{
$organisationseinheit = new organisationseinheit();
$organisationseinheit->load($result);
array_push($oe_array, $organisationseinheit);
}
usort($oe_array, "compareOe");
foreach ($oe_array as $result)
foreach ($oe_array as $result)
{
echo '<option value="'.$result->oe_kurzbz.'">'.$result->organisationseinheittyp_kurzbz.' '.$result->bezeichnung.'</option>';
}
@@ -296,15 +304,15 @@ if($method != "update")
</td>
</tr>
<tr>
<td>Start: </td>
<td><?php echo $p->t('pruefung/start'); ?>: </td>
<td><input type="text" id="startDate" name="startDate"></td>
</tr>
<tr>
<td>Ende: </td>
<td><?php echo $p->t('pruefung/ende'); ?>: </td>
<td><input type="text" id="endDate" name="endDate"></td>
</tr>
<tr>
<td><input type="submit" value="speichern"></td>
<td><input type="submit" value="<?php echo $p->t('global/speichern'); ?>"></td>
</tr>
</table>
</form>
@@ -314,8 +322,8 @@ if($method != "update")
else
{
?>
<h1>Prüfungsfenster-Verwaltung</h1>
<h2>Prüfungsfenster bearbeiten</h2>
<h1><?php echo $p->t('pruefung/pruefungsfensterVerwaltung'); ?></h1>
<h2><?php echo $p->t('pruefung/pruefungsfensterBearbeiten'); ?></h2>
<div>
<form method="POST" action="pruefungsfenster_anlegen.php">
<table>
@@ -326,11 +334,11 @@ else
<td><input type="hidden" name="id" value="<?php echo $pruefungsfenster->pruefungsfenster_id; ?>"></td>
</tr>
<tr>
<td>Studiensemester: </td>
<td><?php echo $p->t('global/studiensemester'); ?>: </td>
<td>
<select id="studiensemester" name="studiensemester">
<?php
foreach ($studiensemester->studiensemester as $result)
foreach ($studiensemester->studiensemester as $result)
{
if($result->studiensemester_kurzbz == $pruefungsfenster->studiensemester_kurzbz)
{
@@ -346,11 +354,11 @@ else
</td>
</tr>
<tr>
<td>Organisationseinheit: </td>
<td><?php echo $p->t('global/organisationseinheit'); ?>: </td>
<td>
<select id="oe_kurzbz" name="oe_kurzbz">
<?php
foreach ($oe as $result)
foreach ($oe as $result)
{
if($result == $pruefungsfenster->oe_kurzbz)
{
@@ -366,16 +374,16 @@ else
</td>
</tr>
<tr>
<td>Start: </td>
<td><?php echo $p->t('pruefung/start'); ?>: </td>
<td><input type="text" id="startDate" name="startDate" value="<?php echo $pruefungsfenster->start; ?>"></td>
</tr>
<tr>
<td>Ende: </td>
<td><?php echo $p->t('pruefung/ende'); ?>: </td>
<td><input type="text" id="endDate" name="endDate" value="<?php echo $pruefungsfenster->ende; ?>"></td>
</tr>
<tr>
<td><input type="submit" value="Speichern"></td>
<td><a href="pruefungsfenster_anlegen.php"><input type="button" value="Abbrechen"></a></td>
<td><input type="submit" value="<?php echo $p->t('global/speichern'); ?>"></td>
<td><a href="pruefungsfenster_anlegen.php"><input type="button" value="<?php echo $p->t('global/abbrechen'); ?>"></a></td>
</tr>
</table>
</form>
@@ -390,21 +398,21 @@ else
if((isset($_GET["id"]) && $method!="update") || !isset($_GET["id"]))
{
?>
<h2>Prüfungsfenster bearbeiten</h2>
<h2><?php echo $p->t('pruefung/pruefungsfensterBearbeiten'); ?></h2>
<div style="width: 50%;">
<?php
<?php
if(!empty($prfFenster->result)){
?>
<table class="tablesorter" id="prfTable">
<thead>
<tr>
<th>Studiensemester</th>
<th>Organisationseinheit</th>
<th>Startdatum</th>
<th>Enddatum</th>
<th>Bearbeiten</th>
<th>Löschen</th>
<th><?php echo $p->t('global/studiensemester'); ?></th>
<th><?php echo $p->t('global/organisationseinheit'); ?></th>
<th><?php echo $p->t('pruefung/start'); ?></th>
<th><?php echo $p->t('pruefung/ende'); ?></th>
<th><?php echo $p->t('global/bearbeiten'); ?></th>
<th><?php echo $p->t('global/loeschen'); ?></th>
</tr>
</thead>
<tbody>
@@ -415,14 +423,14 @@ else
if(in_array($result->oe_kurzbz, $oe))
{
$organisationseinheit->load($result->oe_kurzbz);
echo
echo
'<tr>
<td>'.$result->studiensemester_kurzbz.'</td>
<td>'.$organisationseinheit->organisationseinheittyp_kurzbz." ".$organisationseinheit->bezeichnung.'</td>
<td>'.$result->start.'</td>
<td>'.$result->ende.'</td>
<td><a href="pruefungsfenster_anlegen.php?method=update&id='.$result->pruefungsfenster_id.'">bearbeiten</a></td>
<td><a href="pruefungsfenster_anlegen.php?method=delete&id='.$result->pruefungsfenster_id.'">schen</a></td>
<td><a href="pruefungsfenster_anlegen.php?method=update&id='.$result->pruefungsfenster_id.'">'.$p->t('global/bearbeiten').'</a></td>
<td><a href="pruefungsfenster_anlegen.php?method=delete&id='.$result->pruefungsfenster_id.'">'. $p->t('global/loeschen').'</a></td>
</tr>';
}
}
@@ -433,14 +441,14 @@ else
}
else
{
echo
echo
'<tr>
<td>Keine Prüfungsfenster gespeichert.</td>
<td>'.$p->t('pruefung/keinePruefungsfensterGespeichert').'</td>
</tr>';
}
?>
</div>
<?php
<?php
}
?>
</body>
+25 -15
View File
@@ -15,6 +15,14 @@ require_once('../../../../include/datum.class.php');
require_once('../../../../include/studiensemester.class.php');
require_once('../../../../include/pruefungsfenster.class.php');
require_once('../../../../include/pruefungsanmeldung.class.php');
require_once('../../../../include/phrasen.class.php');
require_once('../../../../include/globals.inc.php');
require_once('../../../../include/sprache.class.php');
$sprache = getSprache();
$lang = new sprache();
$lang->load($sprache);
$p = new phrasen($sprache);
$uid = get_uid();
@@ -66,7 +74,7 @@ switch($method)
{
$data['result']='false';
$data['error']='true';
$data['errormsg']='Sie haben keine Berechtigung.';
$data['errormsg']=$p->t('global/keineBerechtigung');
break;
}
$data = savePruefungstermin($mitarbeiter_uid, $studiensemester_kurzbz, $pruefungsfenster_id, $pruefungstyp_kurzbz, $titel, $beschreibung, $methode, $einzeln, $lehrveranstaltungen, $termine, $pruefungsintervall);
@@ -105,7 +113,7 @@ switch($method)
{
$data['result']='false';
$data['error']='true';
$data['errormsg']='Sie haben keine Berechtigung.';
$data['errormsg']=$p->t('global/keineBerechtigung');
break;
}
$data = updatePruefungstermin($mitarbeiter_uid, $pruefung_id, $studiensemester_kurzbz, $pruefungsfenster_id, $pruefungstyp_kurzbz, $titel, $beschreibung, $methode, $einzeln, $lehrveranstaltungen, $termine, $termineNeu, $pruefungsintervall);
@@ -115,7 +123,7 @@ switch($method)
{
$data['result']='false';
$data['error']='true';
$data['errormsg']='Sie haben keine Berechtigung.';
$data['errormsg']=$p->t('global/keineBerechtigung');
break;
}
$lvId = $_POST["lehrveranstaltung_id"];
@@ -127,7 +135,7 @@ switch($method)
{
$data['result']='false';
$data['error']='true';
$data['errormsg']='Sie haben keine Berechtigung.';
$data['errormsg']=$p->t('global/keineBerechtigung');
break;
}
$pruefung_id = $_REQUEST["pruefung_id"];
@@ -138,7 +146,7 @@ switch($method)
{
$data['result']='false';
$data['error']='true';
$data['errormsg']='Sie haben keine Berechtigung.';
$data['errormsg']=$p->t('global/keineBerechtigung');
break;
}
$pruefung_id = $_REQUEST["pruefung_id"];
@@ -158,7 +166,7 @@ switch($method)
{
$data['result']='false';
$data['error']='true';
$data['errormsg']='Sie haben keine Berechtigung.';
$data['errormsg']=$p->t('global/keineBerechtigung');
break;
}
break;
@@ -255,10 +263,11 @@ function getPruefungsfensterByStudiensemester($studiensemester_kurzbz)
*/
function savePruefungstermin($uid, $studiensemester_kurzbz, $pruefungsfenster_id, $pruefungstyp_kurzbz, $titel, $beschreibung, $methode, $einzeln, $lehrveranstaltungen, $termine, $pruefungsintervall)
{
global $p;
if($lehrveranstaltungen === null)
{
$data['error']='true';
$data['errormsg']="Keine Lehrverantaltung angegeben.";
$data['errormsg']=$p->t('pruefung/keineLvAngegeben');
return $data;
}
$termineArray = array();
@@ -282,7 +291,7 @@ function savePruefungstermin($uid, $studiensemester_kurzbz, $pruefungsfenster_id
else
{
$data['error']='true';
$data['errormsg']="Kollision mit anderem Termin.";
$data['errormsg']=$p->t('pruefung/kollisionMitAnderemTermin');
return $data;
}
// }
@@ -292,7 +301,7 @@ function savePruefungstermin($uid, $studiensemester_kurzbz, $pruefungsfenster_id
// $data['errormsg']="Termin ist nicht innerhalb des Prüfungsfensters.";
// return $data;
// }
}
}
$pruefung = new pruefungCis();
$pruefung->termine = $termineArray;
@@ -313,7 +322,7 @@ function savePruefungstermin($uid, $studiensemester_kurzbz, $pruefungsfenster_id
array_push($pruefung->lehrveranstaltungen, $lv);
}
}
if($pruefung->save(true))
{
$data['result']="true";
@@ -397,12 +406,13 @@ function getLehrveranstaltungenByMitarbeiter($mitarbeiter_uid, $studiensemester_
*/
function updatePruefungstermin($uid, $pruefung_id, $studiensemester_kurzbz, $pruefungsfenster_id, $pruefungstyp_kurzbz, $titel, $beschreibung, $methode, $einzeln, $lehrveranstaltungen, $termine, $termineNeu, $pruefungsintervall)
{
global $p;
$pruefungsfenster = new pruefungsfenster();
$pruefungsfenster->load($pruefungsfenster_id);
$datum = new datum();
$pruefung = new pruefungCis();
$pruefung->load($pruefung_id);
if($termineNeu !== null)
{
$termineNeuArray = array();
@@ -426,7 +436,7 @@ function updatePruefungstermin($uid, $pruefung_id, $studiensemester_kurzbz, $pru
else
{
$data['error']='true';
$data['errormsg']="Kollision mit anderem Termin.";
$data['errormsg']=$p->t('pruefung/kollisionMitAnderemTermin');
return $data;
}
// }
@@ -442,7 +452,7 @@ function updatePruefungstermin($uid, $pruefung_id, $studiensemester_kurzbz, $pru
$pruefung->saveTerminPruefung($pruefung_id, $t->beginn, $t->ende, $t->max, $t->min, $t->sammelklausur);
}
}
if($termine !== null)
{
$termineArray = array();
@@ -474,7 +484,7 @@ function updatePruefungstermin($uid, $pruefung_id, $studiensemester_kurzbz, $pru
}
$pruefung->termine = $termineArray;
}
$pruefung->mitarbeiter_uid = $uid;
$pruefung->studiensemester_kurzbz = $studiensemester_kurzbz;
$pruefung->pruefungsfenster_id = $pruefungsfenster_id;
@@ -661,4 +671,4 @@ function checkCollision($uid, $beginn, $ende)
}
return false;
}
?>
?>
+50 -42
View File
@@ -2,22 +2,22 @@
<?php
/*
* Copyright 2014 fhcomplete.org
*
*
* 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., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*
*
*
* Authors: Stefan Puraner <puraner@technikum-wien.at>
*/
@@ -33,6 +33,14 @@ require_once('../../../../include/pruefungstermin.class.php');
require_once('../../../../include/studiengang.class.php');
require_once('../../../../include/pruefungCis.class.php');
require_once('../../../../include/mitarbeiter.class.php');
require_once('../../../../include/phrasen.class.php');
require_once('../../../../include/globals.inc.php');
require_once('../../../../include/sprache.class.php');
$sprache = getSprache();
$lang = new sprache();
$lang->load($sprache);
$p = new phrasen($sprache);
$uid = get_uid();
$db = new basis_db();
@@ -49,11 +57,11 @@ if(empty($lehrveranstaltung->lehrveranstaltungen) && !$rechte->isBerechtigt('leh
<html>
<head>
<meta charset="UTF-8">
<title>Prüfungstermin festlegen</title>
<title><?php echo $p->t('pruefung/titlePruefungstermin'); ?></title>
<script src="../../../../include/js/datecheck.js"></script>
<script src="../../../../include/js/jquery1.9.min.js"></script>
<script src="../../../../include/js/jquery.tablesorter.min.js"></script>
<script src="./pruefung.js"></script>
<script src="./pruefung.js.php"></script>
<link rel="stylesheet" href="../../../../skin/jquery-ui-1.9.2.custom.min.css">
<link rel="stylesheet" href="../../../../skin/fhcomplete.css">
<link rel="stylesheet" href="../../../../skin/style.css.php">
@@ -68,12 +76,12 @@ if(empty($lehrveranstaltung->lehrveranstaltungen) && !$rechte->isBerechtigt('leh
font-size: 1.5em;
font-weight: bold;
}
.missingFormData {
border: 2px solid red;
outline: 2px solid red;
}
.modalOverlay {
position: fixed;
width: 100%;
@@ -82,7 +90,7 @@ if(empty($lehrveranstaltung->lehrveranstaltungen) && !$rechte->isBerechtigt('leh
left: 0px;
background-color: rgba(0,0,0,0.3); /* black semi-transparent */
}
#prfDetails, #prfVerwaltung {
margin: 1em;
}
@@ -142,7 +150,7 @@ if(empty($lehrveranstaltung->lehrveranstaltungen) && !$rechte->isBerechtigt('leh
});
</script>
<div id="prfVerwaltung">
<h1>Prüfungen verwalten</h1>
<h1><?php echo $p->t('pruefung/pruefungenVerwalten'); ?></h1>
<table>
<tr>
<?php
@@ -160,7 +168,7 @@ if(empty($lehrveranstaltung->lehrveranstaltungen) && !$rechte->isBerechtigt('leh
}
else
{
echo '<td width="116px">Lektor:</td>';
echo '<td width="116px">'.$p->t('pruefung/pruefungLektor').':</td>';
echo '<td width="250px"><input placeholder="UID" type="text" id="lektor" value="" size="30"/></td>';
echo '<input type="hidden" id="uid" value="" />';
echo '<input type="hidden" id="mitarbeiter_uid" value="" />';
@@ -169,54 +177,54 @@ if(empty($lehrveranstaltung->lehrveranstaltungen) && !$rechte->isBerechtigt('leh
</tr>
</table>
<form method="post" action="pruefungstermin_festlegen.php" style="display: none;">
<input type="hidden" name="method" value="save">
<table>
<tr>
<td>Titel:</td>
<td><?php echo $p->t('pruefung/pruefungTitel'); ?>:</td>
<td>
<input id='titel' type="text" name="titel" size="30">
</td>
</tr>
<tr>
<td style="vertical-align: top;">Beschreibung:</td>
<td style="vertical-align: top;"><?php echo $p->t('global/beschreibung'); ?>:</td>
<td>
<textarea id='beschreibung' name="beschreibung" rows="5" cols="20"></textarea>
</td>
</tr>
<tr>
<td>Studiensemester:</td>
<td><?php echo $p->t('global/studiensemester'); ?>:</td>
<td>
<select id="studiensemester" name="studiensemester" onchange="loadPruefungsfenster();" onload="loadPruefungsfenster();">
</select>
</td>
</tr>
<tr>
<td>Prüfungsfenster:</td>
<td><?php echo $p->t('pruefung/pruefungsfenster'); ?>:</td>
<td>
<select id="pruefungsfenster" name="pruefungsfenster" onchange="setDatePicker(this);">
<!--Daten werden durch JavaScript geladen-->
</select>
</td>
</tr>
<tr>
<!--<tr>
<td>Prüfungstyp:</td>
<td>
<select id='pruefungsTyp' name="pruefungsTyp">
<!-- Daten werden per JavaScript geladen-->
</select>
</td>
</tr>
</tr>-->
<tr>
<td style="vertical-align: top;">Methode:</td>
<td style="vertical-align: top;"><?php echo $p->t('pruefung/pruefungMethode'); ?>:</td>
<td><textarea id='methode' placeholder="Multiple Choice, etc." rows="5" cols="20" name="methode"></textarea></td>
</tr>
<tr>
<td>Einzelprüfung:</td>
<td><?php echo $p->t('pruefung/pruefungEinzelpruefung'); ?>:</td>
<td><input id='einzeln' type="checkbox" name="einzelpruefung"></td>
</tr>
<tr style="visibility:hidden;">
<td>Prüfungsintervall:</td>
<td><?php echo $p->t('pruefung/pruefungIntervall'); ?>:</td>
<td>
<select id="pruefungsintervall">
<option value="15">15</option>
@@ -226,7 +234,7 @@ if(empty($lehrveranstaltung->lehrveranstaltungen) && !$rechte->isBerechtigt('leh
</td>
</tr>
<tr>
<td style="vertical-align: top;">Lehrveranstaltungen:</td>
<td style="vertical-align: top;"><?php echo $p->t('global/lehrveranstaltung'); ?>:</td>
<td>
<div id="lvDropdowns">
<select id="lvDropdown1" onchange="lehrveranstaltungDropdownhinzufuegen(this, false);" name="lv[]">
@@ -236,18 +244,18 @@ if(empty($lehrveranstaltung->lehrveranstaltungen) && !$rechte->isBerechtigt('leh
</td>
</tr>
<tr>
<td style="vertical-align: top;"><a name="termin">Termin:</a></td>
<td style="vertical-align: top;"><a name="termin"><?php echo $p->t('pruefung/pruefungTermin'); ?>:</a></td>
<td>
<div>
<table width="500px" style="text-align: right;">
<thead>
<tr>
<th>Datum</th>
<th>Von</th>
<th>bis</th>
<th>min. Teilnehmer</th>
<th>max. Teilnehmer</th>
<th>Sammelklausur</th>
<th><?php echo $p->t('global/datum'); ?></th>
<th><?php echo $p->t('global/von'); ?></th>
<th><?php echo $p->t('global/bis'); ?></th>
<th><?php echo $p->t('pruefung/pruefungMinTeilnehmer'); ?></th>
<th><?php echo $p->t('pruefung/pruefungMaxTeilnehmer'); ?></th>
<th><?php echo $p->t('pruefung/pruefungSammelklausur'); ?></th>
<th></th>
</tr>
</thead>
@@ -278,30 +286,30 @@ if(empty($lehrveranstaltung->lehrveranstaltungen) && !$rechte->isBerechtigt('leh
</tbody>
</table>
</div>
<a href="#termin" onclick="terminHinzufuegen();">Termin hinzufügen</a>
<a href="#termin" onclick="terminHinzufuegen();"><?php echo $p->t('pruefung/pruefungTerminHinzufuegen'); ?></a>
</td>
</tr>
<tr>
<td>&nbsp;</td><td><input id="buttonSave" type="button" value="Speichern" onclick='savePruefungstermin();'></td>
<td>&nbsp;</td><td><input id="buttonSave" type="button" value="<?php echo $p->t('global/speichern'); ?>" onclick='savePruefungstermin();'></td>
</tr>
</table>
</form>
</div>
<div id="prfDetails">
<h2>Prüfungen</h2>
<h2><?php echo $p->t('pruefung/pruefungPruefungenTitle'); ?></h2>
<div style="width: 75%;">
<table class="tablesorter" id="prfTable">
<thead>
<tr>
<th>Titel</th>
<th>Studiensemester</th>
<th>Lehrveranstaltungen</th>
<th>Termine</th>
<th>Methode</th>
<th>Prüfungstyp</th>
<th>Einzelprüfung</th>
<th>Mitarbeiter</th>
<th>storniert</th>
<th><?php echo $p->t('pruefung/pruefungTitel'); ?></th>
<th><?php echo $p->t('global/studiensemester'); ?></th>
<th><?php echo $p->t('global/lehrveranstaltung'); ?></th>
<th><?php echo $p->t('pruefung/pruefungTermin'); ?></th>
<th><?php echo $p->t('pruefung/pruefungMethode'); ?></th>
<th><?php echo $p->t('pruefung/pruefungTyp'); ?></th>
<th><?php echo $p->t('pruefung/pruefungEinzelpruefung'); ?></th>
<th><?php echo $p->t('pruefung/pruefungMitarbeiter'); ?></th>
<th><?php echo $p->t('pruefung/storniert'); ?></th>
</tr>
</thead>
<tbody>
+107 -85
View File
@@ -37,6 +37,85 @@ if (!$db = new basis_db())
$uid=get_uid();
//$type='ort';
//$ort_kurzbz='EDV6.08';
//$datum=1102260015;
// Deutsche Umgebung
//$loc_de=setlocale(LC_ALL, 'de_AT@euro', 'de_AT','de_DE@euro', 'de_DE');
//setlocale(LC_ALL, $loc_de);
// Variablen uebernehmen
if (isset($_GET['type']))
$type=$_GET['type'];
if (isset($_POST['type']))
$type=$_POST['type'];
if (isset($_GET['datum']))
$datum=$_GET['datum'];
if (isset($_POST['datum']))
$datum=$_POST['datum'];
if (isset($_GET['ort_kurzbz']))
$ort_kurzbz=$_GET['ort_kurzbz'];
else if (isset($_POST['ort_kurzbz']))
$ort_kurzbz=$_POST['ort_kurzbz'];
else
$ort_kurzbz=null;
if (isset($_GET['pers_uid']))
$pers_uid=$_GET['pers_uid'];
if (isset($_GET['stg_kz']))
$stg_kz=$_GET['stg_kz'];
else if (isset($_POST['stg_kz']))
$stg_kz=$_POST['stg_kz'];
else
$stg_kz=null;
if (isset($_GET['lva']))
$lva=$_GET['lva'];
else if (isset($_POST['lva']))
$lva=$_POST['lva'];
else
$lva=null;
if (isset($_POST['sem']))
$sem=$_POST['sem'];
else if (isset($_GET['sem']))
$sem=$_GET['sem'];
else
$sem=null;
if (isset($_POST['ver']))
$ver=$_POST['ver'];
else if (isset($_GET['ver']))
$ver=$_GET['ver'];
else
$ver=null;
if (isset($_POST['grp']))
$grp=$_POST['grp'];
else if (isset($_GET['grp']))
$grp=$_GET['grp'];
else
$grp=null;
if (isset($_POST['gruppe_kurzbz']))
$gruppe_kurzbz=$_POST['gruppe_kurzbz'];
else if (isset($_GET['gruppe_kurzbz']))
$gruppe_kurzbz=$_GET['gruppe_kurzbz'];
else
$gruppe_kurzbz=null;
if (isset($_POST['user_uid']))
$user_uid=$_POST['user_uid'];
if (isset($_POST['reserve']))
$reserve=$_POST['reserve'];
if (isset($_POST['beschreibung']))
$beschreibung=$_POST['beschreibung'];
if (isset($_POST['titel']))
$titel=$_POST['titel'];
?><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<HTML>
<HEAD>
@@ -145,18 +224,41 @@ $uid=get_uid();
});
-->
</script>
<LINK rel="stylesheet" href="../../../skin/style.css.php" type="text/css">
<link href="../../../skin/flexcrollstyles.css" rel="stylesheet" type="text/css" />
<script src="../../../include/js/flexcroll.js" type="text/javascript" ></script>
<?php
// ADDONS laden
$addon_obj = new addon();
$addon_obj->loadAddons();
foreach($addon_obj->result as $addon)
{
if(file_exists('../../../addons/'.$addon->kurzbz.'/cis/init.js.php'))
echo '<script type="application/x-javascript" src="../../../addons/'.$addon->kurzbz.'/cis/init.js.php" ></script>';
}
// Wenn Seite fertig geladen ist Addons aufrufen
echo '
<script>
$( document ).ready(function()
{
if(typeof addon !== \'undefined\')
{
for(i in addon)
{
addon[i].init("cis/private/lvplan/stpl_week.php", {ort_kurzbz:\''.$ort_kurzbz.'\'});
}
}
});
</script>
';
?>
<link rel="stylesheet" href="../../../skin/style.css.php" type="text/css">
</HEAD>
<BODY id="inhalt">
<div class="flexcroll" style="outline: none;">
<h1><?php echo $p->t('lvplan/wochenplan');?></h1>
<table class="tabcontent">
<tr>
<td>
<a href="index.php"><?php echo $p->t('lvplan/hauptmenue');?></a><br>
<?php echo '<a href="../../../cms/content.php?content_id='.$p->t("dms_link/lvPlanFAQ").'" class="hilfe" target="_blank">'.$p->t("global/hilfe").'</a>'; ?>
<?php if ($p->t("dms_link/lvPlanFAQ")!='') echo '<a href="../../../cms/content.php?content_id='.$p->t("dms_link/lvPlanFAQ").'" class="hilfe" target="_blank">'.$p->t("global/hilfe").'</a>'; ?>
</td>
</tr>
</table>
@@ -173,85 +275,6 @@ $uid=get_uid();
* Update: 15.11.2004 von Christian Paminger
*****************************************************************************/
//$type='ort';
//$ort_kurzbz='EDV6.08';
//$datum=1102260015;
// Deutsche Umgebung
//$loc_de=setlocale(LC_ALL, 'de_AT@euro', 'de_AT','de_DE@euro', 'de_DE');
//setlocale(LC_ALL, $loc_de);
// Variablen uebernehmen
if (isset($_GET['type']))
$type=$_GET['type'];
if (isset($_POST['type']))
$type=$_POST['type'];
if (isset($_GET['datum']))
$datum=$_GET['datum'];
if (isset($_POST['datum']))
$datum=$_POST['datum'];
if (isset($_GET['ort_kurzbz']))
$ort_kurzbz=$_GET['ort_kurzbz'];
else if (isset($_POST['ort_kurzbz']))
$ort_kurzbz=$_POST['ort_kurzbz'];
else
$ort_kurzbz=null;
if (isset($_GET['pers_uid']))
$pers_uid=$_GET['pers_uid'];
if (isset($_GET['stg_kz']))
$stg_kz=$_GET['stg_kz'];
else if (isset($_POST['stg_kz']))
$stg_kz=$_POST['stg_kz'];
else
$stg_kz=null;
if (isset($_GET['lva']))
$lva=$_GET['lva'];
else if (isset($_POST['lva']))
$lva=$_POST['lva'];
else
$lva=null;
if (isset($_POST['sem']))
$sem=$_POST['sem'];
else if (isset($_GET['sem']))
$sem=$_GET['sem'];
else
$sem=null;
if (isset($_POST['ver']))
$ver=$_POST['ver'];
else if (isset($_GET['ver']))
$ver=$_GET['ver'];
else
$ver=null;
if (isset($_POST['grp']))
$grp=$_POST['grp'];
else if (isset($_GET['grp']))
$grp=$_GET['grp'];
else
$grp=null;
if (isset($_POST['gruppe_kurzbz']))
$gruppe_kurzbz=$_POST['gruppe_kurzbz'];
else if (isset($_GET['gruppe_kurzbz']))
$gruppe_kurzbz=$_GET['gruppe_kurzbz'];
else
$gruppe_kurzbz=null;
if (isset($_POST['user_uid']))
$user_uid=$_POST['user_uid'];
if (isset($_POST['reserve']))
$reserve=$_POST['reserve'];
if (isset($_POST['beschreibung']))
$beschreibung=$_POST['beschreibung'];
if (isset($_POST['titel']))
$titel=$_POST['titel'];
//Parameter pruefen
if($stg_kz!='' && !is_numeric($stg_kz))
die('Studiengang ist ungueltig');
@@ -411,6 +434,5 @@ if (isset($count))
?>
<P><br><?php echo $p->t('lvplan/fehlerUndFeedback');?> <A class="Item" href="mailto:<?php echo MAIL_LVPLAN?>"><?php echo $p->t('lvplan/lvKoordinationsstelle');?></A>.</P>
</div>
</BODY>
</HTML>
+22 -3
View File
@@ -26,6 +26,7 @@ require_once('../../../include/studiensemester.class.php');
require_once('../../../include/konto.class.php');
require_once('../../../include/phrasen.class.php');
require_once('../../../include/student.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
$sprache = getSprache();
$p = new phrasen($sprache);
@@ -40,6 +41,24 @@ else
$uid=get_uid();
if(isset($_GET['uid']))
{
// Administratoren duerfen die UID als Parameter uebergeben um die Notenliste
// von anderen Personen anzuzeigen
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if($rechte->isBerechtigt('admin'))
{
$uid = $_GET['uid'];
$getParam = "&uid=" . $uid;
}
else
$getParam = "";
}
else
$getParam='';
$student_studiengang = new student();
$student_studiengang->load($uid);
$xsl_stg_kz = $student_studiengang->studiengang_kz;
@@ -102,7 +121,7 @@ echo '
<script language="JavaScript" type="text/javascript">
function MM_jumpMenu(targ, selObj, restore)
{
eval(targ + ".location=\'" + selObj.options[selObj.selectedIndex].value + "\'");
eval(targ + ".location=\'" + selObj.options[selObj.selectedIndex].value + "'.$getParam.'\'");
if(restore)
{
@@ -168,8 +187,8 @@ if(defined('CIS_DOKUMENTE_STUDIENBUCHLBATT_DRUCKEN') && CIS_DOKUMENTE_STUDIENBUC
if(defined('CIS_DOKUMENTE_STUDIENERFOLGSBESTAETIGUNG_DRUCKEN') && CIS_DOKUMENTE_STUDIENERFOLGSBESTAETIGUNG_DRUCKEN)
{
echo "<a href='studienerfolgsbestaetigung.php' class='Item'>".$p->t('tools/studienerfolgsbestaetigung')." Deutsch</a><br>";
echo "<a href='studienerfolgsbestaetigung.php?lang=en' class='Item'>".$p->t('tools/studienerfolgsbestaetigung')." Englisch</a>";
echo "<a href='studienerfolgsbestaetigung.php?".$getParam."' class='Item'>".$p->t('tools/studienerfolgsbestaetigung')." Deutsch</a><br>";
echo "<a href='studienerfolgsbestaetigung.php?lang=en".$getParam."' class='Item'>".$p->t('tools/studienerfolgsbestaetigung')." Englisch</a>";
echo "<hr>";
}
echo "<br>";
+95 -22
View File
@@ -1,22 +1,22 @@
<?php
/*
* Copyright 2013 fhcomplete.org
*
*
* 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., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*
*
*
* Authors: Andreas Österreicher <andreas.oesterreicher@technikum-wien.at>
*
@@ -42,6 +42,7 @@ require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/benutzergruppe.class.php');
require_once('../../../include/konto.class.php');
require_once('../../../include/lvinfo.class.php');
require_once('../../../include/addon.class.php');
$uid = get_uid();
@@ -76,7 +77,7 @@ if(isset($_GET['getAnmeldung']))
// Die Anmeldung ist zur Lehrveranstaltung selbst und zu den dazu kompatiblen Lehrveranstaltungen moeglich
$kompatibel = $lehrveranstaltung->loadLVkompatibel($lehrveranstaltung_id);
$datum = new datum();
$kompatibel[]=$lehrveranstaltung_id;
$kompatibel = array_unique($kompatibel);
@@ -121,7 +122,7 @@ if(isset($_GET['getAnmeldung']))
}*/
}
}
if($anzahl>0)
echo '<br><br><input type="submit" value="'.$p->t('studienplan/anmelden').'" /></form>';
else
@@ -137,8 +138,34 @@ echo '<!DOCTYPE html>
<link rel="stylesheet" href="../../../skin/style.css.php" />
<link rel="stylesheet" href="../../../skin/jquery.css" />
<link rel="stylesheet" href="../../../skin/jquery-ui-1.9.2.custom.min.css" />
<script type="text/javascript" src="../../../include/js/jquery1.9.min.js"></script>
<script type="text/javascript" src="../../../include/js/jquery1.9.min.js"></script>';
// ADDONS laden
$addon_obj = new addon();
$addon_obj->loadAddons();
foreach($addon_obj->result as $addon)
{
if(file_exists('../../../addons/'.$addon->kurzbz.'/cis/init.js.php'))
echo '<script type="application/x-javascript" src="../../../addons/'.$addon->kurzbz.'/cis/init.js.php" ></script>';
}
// Wenn Seite fertig geladen ist Addons aufrufen
echo '
<script>
$( document ).ready(function()
{
if(typeof addon !== \'undefined\')
{
for(i in addon)
{
addon[i].init("cis/private/profile/studienplan.php", {});
}
}
});
</script>
';
echo '
<script type="text/javascript">
$(document).ready(function() {
$("#dialog").dialog({ autoOpen: false, width: "auto" });
@@ -231,7 +258,7 @@ $tree = $lehrveranstaltung->getLehrveranstaltungTree();
/*
Vom Semesterstart des Studierenden ausgehend werden die Studiensemester geladen.
Vom Semesterstart des Studierenden ausgehend werden die Studiensemester geladen.
Es werden mindestens so viele Studiensemester geladen wie die Regelstudiendauer des
Studienplanes angibt.
*/
@@ -257,7 +284,11 @@ if(!in_array($stsemToShow,$stsem_arr))
{
for($i=count($stsem_arr);$i<50;$i++)
{
$stsem_arr[$i]=$stsem->getNextFrom($studiensemester_prev);
if(!$stsem_arr[$i]=$stsem->getNextFrom($studiensemester_prev))
{
unset($stsem_arr[$i]);
break;
}
$studiensemester_prev=$stsem_arr[$i];
if($stsemToShow==$studiensemester_prev)
{
@@ -307,7 +338,7 @@ echo '<table style="border: 1px solid black">
if(CIS_STUDIENPLAN_SEMESTER_ANZEIGEN)
echo '<th>'.$p->t('global/semester').'</th>';
echo '<th>'.$p->t('studienplan/ects').'</th>
<th>'.$p->t('studienplan/status').'</th>';
@@ -362,7 +393,7 @@ function drawTree($tree, $depth)
default:
$icon='';
}
echo '<tr'.$style.'>
<td>'.$bstart;
@@ -391,7 +422,7 @@ function drawTree($tree, $depth)
$sprache = 'de';
break;
case 'English':
$sprach = 'en';
$sprache = 'en';
break;
default:
$sprache = 'de';
@@ -400,20 +431,24 @@ function drawTree($tree, $depth)
echo $icon." ".$termine." <a href=\"#\" class='Item' onClick=\"javascript:window.open('../lehre/ects/preview.php?lv=$row_tree->lehrveranstaltung_id&language=$sprache','Lehrveranstaltungsinformation','width=700,height=750,resizable=yes,menuebar=no,toolbar=no,status=yes,scrollbars=yes');\">".$row_tree->kurzbz.' - '.$row_tree->bezeichnung."</a>";
else
// Bezeichnung der Lehrveranstaltung
echo $icon." ".$termine." ".$row_tree->kurzbz.' - '.$row_tree->bezeichnung;
echo $icon." ".$termine." ".$row_tree->kurzbz.' - '.$row_tree->bezeichnung.'('.$row_tree->lehrveranstaltung_id.')';
echo $bende.'</td>';
// Semester
if(CIS_STUDIENPLAN_SEMESTER_ANZEIGEN)
echo '<td>'.$row_tree->semester.'</td>';
// ECTS Punkte
echo '<td>'.$row_tree->ects.'</td>';
// Status der LV (absolviert, offen)
echo '<td>';
// Note zu dieser LV vorhanden?
$lv_kompatibel = new lehrveranstaltung();
$kompatibleLVs = $lv_kompatibel->loadLVkompatibel($row_tree->lehrveranstaltung_id);
if(isset($noten_arr[$row_tree->lehrveranstaltung_id]))
{
// Positive Note fuer diese LV vorhanden?
@@ -429,6 +464,27 @@ function drawTree($tree, $depth)
else
echo '<span class="error">'.$p->t('studienplan/negativ').'</span>';
}
//check if compatible course has grade
elseif(count($kompatibleLVs) > 0)
{
foreach($kompatibleLVs as $komp)
{
if(isset($noten_arr[$komp]))
{
$positiv=false;
foreach($noten_arr[$komp] as $note)
{
if($note_pruef_arr[$note]->positiv)
$positiv=true;
}
if($positiv)
echo '<span class="ok">'.$p->t('studienplan/abgeschlossen').'</span>';
else
echo '<span class="error">'.$p->t('studienplan/negativ').'</span>';
}
}
}
else
{
if($abgeschlossen)
@@ -440,11 +496,11 @@ function drawTree($tree, $depth)
}
echo '</td>';
// Spalten für die einzelnen Studiensemester
// Spalten für die einzelnen Studiensemester
foreach($stsem_arr as $key=>$stsem)
{
$semester=$key+1;
$tdclass=array();
//Empfehlung holen
// if(isset($lv_arr[$row_tree->lehrveranstaltung_id]))
@@ -464,6 +520,19 @@ function drawTree($tree, $depth)
else
$tdinhalt .= '<span class="error">'.$note_pruef_arr[$noten_arr[$row_tree->lehrveranstaltung_id][$stsem]]->anmerkung.'</span>';
}
elseif(count($kompatibleLVs) > 0)
{
foreach($kompatibleLVs as $komp)
{
if(isset($noten_arr[$komp][$stsem]))
{
if($note_pruef_arr[$noten_arr[$komp][$stsem]]->positiv)
$tdinhalt .= '<span class="ok">'.$note_pruef_arr[$noten_arr[$komp][$stsem]]->anmerkung.'</span>';
else
$tdinhalt .= '<span class="error">'.$note_pruef_arr[$noten_arr[$komp][$stsem]]->anmerkung.'</span>';
}
}
}
else
{
// Angebot der LV und der Kompatiblen pruefen
@@ -495,7 +564,7 @@ function drawTree($tree, $depth)
// Angebot der LV pruefen
if(isset($lvangebot_arr[$row_lvid])
&& isset($lvangebot_arr[$row_lvid][$stsem]))
{
{
$angebot_vorhanden=true;
// LV findet statt
$angebot = $lvangebot_arr[$row_lvid][$stsem];
@@ -533,11 +602,11 @@ function drawTree($tree, $depth)
$tdclass[]='angebot';
if($angemeldet)
{
$tdinhalt.= '<a href="#" onclick="OpenAnmeldung(\''.$row_tree->lehrveranstaltung_id.'\',\''.$stsem.'\'); return false;"><img src="../../../skin/images/anmelden.png" title="angemeldet" /></a>';
$tdinhalt.= '<a href="#" onclick="OpenAnmeldung(\''.$row_tree->lehrveranstaltung_id.'\',\''.$stsem.'\'); return false;"><img src="../../../skin/images/ja.png" title="'.$p->t('studienplan/legendeAngemeldet').'" /></a>';
}
else
{
if($anmeldungmoeglich)
if($anmeldungmoeglich)
$tdinhalt.= '<a href="#" onclick="OpenAnmeldung(\''.$row_tree->lehrveranstaltung_id.'\',\''.$stsem.'\'); return false;"><img src="../../../skin/images/anmelden.png" title="'.$p->t('studienplan/anmelden').'" height="15px" /></a>';
else
$tdinhalt.= '<span title="'.$anmeldeinformation.'">-</a>';
@@ -559,7 +628,7 @@ function drawTree($tree, $depth)
echo '</td>';
}
echo '</tr>';
// Wenn Subtree vorhanden, dann anzeigen
if(!empty($row_tree->childs))
drawTree($row_tree->childs, $depth+1);
@@ -584,6 +653,10 @@ echo '<br><br>'.$p->t('studienplan/legende').':<br>
<td align="center"><img src="../../../skin/images/anmelden.png"></td>
<td>'.$p->t('studienplan/Anmeldung').'</td>
</tr>
<tr>
<td align="center"><img src="../../../skin/images/ja.png"></td>
<td>'.$p->t('studienplan/legendeAngemeldet').'</td>
</tr>
<tr>
<td align="center"><img src="../../../skin/images/not-available.png"></td>
<td>'.$p->t('studienplan/legendeLock').'</td>
+72 -32
View File
@@ -29,10 +29,30 @@
require_once('../../../include/datum.class.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/phrasen.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
$sprache = getSprache();
$p = new phrasen($sprache);
$uid=get_uid();
if(isset($_GET['uid']))
{
// Administratoren duerfen die UID als Parameter uebergeben um die Zahlungen
// von anderen Personen anzuzeigen
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if($rechte->isBerechtigt('admin'))
{
$uid = $_GET['uid'];
$getParam = "&uid=" . $uid;
}
else
$getParam = "";
}
else
$getParam='';
$datum_obj = new datum();
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
@@ -41,7 +61,25 @@
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>'.$p->t('tools/zahlungen').'</title>
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="../../../skin/tablesort.css" type="text/css"/>
<script type="text/javascript" src="../../../include/js/jquery.js"></script>
</head>
<style>
table.tablesorter
{
width: auto;
}
</style>
<script type="text/javascript">
$(document).ready(function()
{
$("#t1").tablesorter(
{
sortList: [[0,0],[1,0]],
widgets: ["zebra"]
});
});
</script>
<body>';
$studiengang = new studiengang();
@@ -68,22 +106,23 @@
$konto->getBuchungen($benutzer->person_id);
if(count($konto->result)>0)
{
echo '<br><br><table>';
echo '<tr class="liste">';
echo '<br><br><table class="tablesorter" id="t1"><thead>';
echo '<tr>';
echo '
<td>'.$p->t('global/datum').'</td>
<td>'.$p->t('tools/zahlungstyp').'</td>
<td>'.$p->t('lvplan/stg').'</td>
<td>'.$p->t('global/studiensemester').'</td>
<td>'.$p->t('tools/buchungstext').'</td>
<td>'.$p->t('tools/betrag').'</td>
<td>'.$p->t('tools/zahlungsbestaetigung').'</td>';
echo '</tr>';
$i=0;
<th>'.$p->t('global/datum').'</th>
<th>'.$p->t('tools/zahlungstyp').'</th>
<th>'.$p->t('lvplan/stg').'</th>
<th>'.$p->t('global/studiensemester').'</th>
<th>'.$p->t('tools/buchungstext').'</th>
<th>'.$p->t('tools/betrag').'</th>
<th>'.$p->t('tools/zahlungsbestaetigung').'</th>';
echo '</tr></thead><tbody>';
foreach ($konto->result as $row)
{
$i++;
$i=0; //Zaehler fuer Anzahl Gegenbuchungen
$buchungsnummern='';
if(!isset($row['parent']))
continue;
$betrag = $row['parent']->betrag;
@@ -91,49 +130,50 @@
if(isset($row['childs']))
{
foreach ($row['childs'] as $row_child)
foreach ($row['childs'] as $key => $row_child)
{
$betrag += $row_child->betrag;
$betrag = round($betrag, 2);
$betrag = round($betrag, 2);
$buchungsnummern .= ';'.$row['childs'][$key]->buchungsnr;
$i = $key; //Zaehler auf letzten Gegenbuchungseintrag setzen
}
}
else
$buchungsnummern = $row['parent']->buchungsnr;
if($betrag<0)
$style='style="background-color: #FF8888;"';
elseif($betrag>0)
$style='style="background-color: #88DD88;"';
else
{
$style='class="liste'.($i%2).'"';
}
$style='';
echo "<tr>";
echo '<td '.$style.'>'.date('d.m.Y',$datum_obj->mktime_fromdate(isset($row['childs'][$i])?$row['childs'][$i]->buchungsdatum:$row['parent']->buchungsdatum)).'</td>';
echo '<td '.$style.'>'.$buchungstyp[$row['parent']->buchungstyp_kurzbz].'</td>';
echo '<td '.$style.'>'.$stg_arr[$row['parent']->studiengang_kz].'</td>';
echo '<td '.$style.'>'.$row['parent']->studiensemester_kurzbz.'</td>';
echo "<tr $style>";
echo '<td>'.date('d.m.Y',$datum_obj->mktime_fromdate($row['parent']->buchungsdatum)).'</td>';
echo '<td>'.$buchungstyp[$row['parent']->buchungstyp_kurzbz].'</td>';
echo '<td>'.$stg_arr[$row['parent']->studiengang_kz].'</td>';
echo '<td>'.$row['parent']->studiensemester_kurzbz.'</td>';
echo '<td>'.$row['parent']->buchungstext.'</td>';
echo '<td align="right">'.($betrag<0?'-':($betrag>0?'+':'')).sprintf('%.2f',abs($row['parent']->betrag)).' €</td>';
echo '<td align="center">';
echo '<td '.$style.'>'.$row['parent']->buchungstext.'</td>';
echo '<td align="right" '.$style.'>'.($betrag<0?'-':($betrag>0?'+':'')).sprintf('%.2f',abs($row['parent']->betrag)).'</td>';
echo '<td align="center" '.$style.'>';
if($betrag==0 && $row['parent']->betrag<=0)
echo '<a href="../pdfExport.php?xml=konto.rdf.php&xsl=Zahlung&uid='.$uid.'&buchungsnummern='.$row['parent']->buchungsnr.'" title="'.$p->t('tools/bestaetigungDrucken').'"><img src="../../../skin/images/pdfpic.gif" alt="'.$p->t('tools/bestaetigungDrucken').'"></a>';
echo '<a href="../pdfExport.php?xml=konto.rdf.php&xsl=Zahlung&uid='.$uid.'&buchungsnummern='.$buchungsnummern.'" title="'.$p->t('tools/bestaetigungDrucken').'"><img src="../../../skin/images/pdfpic.gif" alt="'.$p->t('tools/bestaetigungDrucken').'"></a>';
elseif($row['parent']->betrag>0)
{
//Auszahlung
}
else
{
{
echo '<a onclick="window.open(';
echo "'zahlungen_details.php?buchungsnr=".$row['parent']->buchungsnr."','Zahlungsdetails','height=500,width=550,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=no,toolbar=no,location=no,menubar=no,dependent=yes');return false;";
echo "'zahlungen_details.php?buchungsnr=".$row['parent']->buchungsnr.$getParam."','Zahlungsdetails','height=500,width=550,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=no,toolbar=no,location=no,menubar=no,dependent=yes');return false;";
echo '" href="#">'.$p->t('tools/offen').'</a> ('.sprintf('%.2f',$betrag*-1).' €)';
}
echo '</td>';
}
echo '</tr>';
}
echo '</table>';
echo '</tbody></table>';
}
else
{
+19
View File
@@ -25,8 +25,27 @@ require_once('../../../include/studiengang.class.php');
require_once('../../../include/organisationseinheit.class.php');
require_once('../../../include/addon.class.php');
require_once('../../../include/benutzer.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
$uid = get_uid();
if(isset($_GET['uid']))
{
// Administratoren duerfen die UID als Parameter uebergeben um die Zahlungsdetails
// von anderen Personen anzuzeigen
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if($rechte->isBerechtigt('admin'))
{
$uid = $_GET['uid'];
$getParam = "&uid=" . $uid;
}
else
$getParam = "";
}
else
$getParam='';
$benutzer = new benutzer();
if(!$benutzer->load($uid))
File diff suppressed because it is too large Load Diff
+17 -17
View File
@@ -19,31 +19,31 @@
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Karl Burkhart <burkhart@technikum-wien.at>.
*/
require_once '../../../config/cis.config.inc.php';
require_once '../../../include/phrasen.class.php';
require_once '../../../include/person.class.php';
require_once '../../../include/person.class.php';
if(isset($_GET['lang']))
setSprache($_GET['lang']);
$sprache = getSprache();
$p=new phrasen($sprache);
$sprache = getSprache();
$p=new phrasen($sprache);
if (isset($_POST['userid']))
if (isset($_POST['userid']))
{
$login = $_REQUEST['userid'];
$person = new person();
$login = $_REQUEST['userid'];
$person = new person();
session_start();
$preincoming=$person->checkZugangscodeIncoming($login);
$preincoming=$person->checkZugangscodeIncoming($login);
//Zugangscode wird überprüft
if($preincoming != false)
{
$_SESSION['incoming/user'] = $login;
$_SESSION['incoming/preincomingid'] = $preincoming;
$_SESSION['incoming/preincomingid'] = $preincoming;
header('Location: incoming.php');
exit;
@@ -67,19 +67,19 @@ if (isset($_POST['userid']))
<table width="100%" border="0">
<tr>
<td align="left"></td>
<td align ="right"><?php
<td align ="right"><?php
echo $p->t("global/sprache")." ";
echo '<a href="'.$_SERVER['PHP_SELF'].'?lang=English">'.$p->t("global/englisch").'</a> |
echo '<a href="'.$_SERVER['PHP_SELF'].'?lang=English">'.$p->t("global/englisch").'</a> |
<a href="'.$_SERVER['PHP_SELF'].'?lang=German">'.$p->t("global/deutsch").'</a><br>';?></td>
</tr>
</table>
<form action ="index.php" method="POST">
<table border ="0" width ="100%" height="40%">
<tr height="50%">
<td align ="center" valign="center"><h3><?php echo $p->t('incoming/welcomeToUAS');?></h3><span style="font-size:1.2em"></span></td>
<td align ="center" valign="center"><h3><?php echo $p->t('incoming/welcomeToUAS',array(CAMPUS_NAME));?></h3><span style="font-size:1.2em"></span></td>
</tr>
<tr >
<td align="center" valign="bottom"> <img src="../../../skin/images/tw_logo_02.jpg"></td>
<td align="center" valign="bottom"> <img src="../../../skin/styles/<?php echo DEFAULT_STYLE ?>/logo.png"></td>
</tr>
</table>
<table border ="0" width ="100%">
@@ -110,7 +110,7 @@ if (isset($_POST['userid']))
</tr>
</table>
</form>
</body>
</html>
+145 -119
View File
@@ -26,25 +26,26 @@ require_once '../../../include/nation.class.php';
require_once '../../../include/functions.inc.php';
require_once '../../../include/phrasen.class.php';
require_once '../../../include/adresse.class.php';
require_once '../../../include/kontakt.class.php';
require_once '../../../include/preincoming.class.php';
require_once '../../../include/kontakt.class.php';
require_once '../../../include/preincoming.class.php';
require_once '../../../include/mail.class.php';
require_once '../../../include/securimage/securimage.php';
if(isset($_GET['lang']))
setSprache($_GET['lang']);
$sprache = getSprache();
$p=new phrasen($sprache);
$nation = new nation();
$sprache = getSprache();
$p=new phrasen($sprache);
$nation = new nation();
if($sprache == "German")
$nation->getAll($ohnesperre = true);
$nation->getAll($ohnesperre = true);
else if($sprache == "English")
$nation->getAll($ohnesperre = true, $orderEnglish= true);
$date = new datum();
$date = new datum();
?>
<html>
@@ -54,34 +55,34 @@ $date = new datum();
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<link href="../../../include/js/tablesort/table.css" rel="stylesheet" type="text/css">
</head>
<body bgcolor="F2F2F2">
<?php
<body>
<?php
echo ' <table width="100%" border="0">
<tr>
<td align="left"><a href="index.php">Login</a> &gt; Registration </td>
<td align ="right">
<td align ="right">
'.$p->t("global/sprache").'
<a href="'.$_SERVER['PHP_SELF'].'?lang=English">'.$p->t("global/englisch").'</a> |
<a href="'.$_SERVER['PHP_SELF'].'?lang=English">'.$p->t("global/englisch").'</a> |
<a href="'.$_SERVER['PHP_SELF'].'?lang=German">'.$p->t("global/deutsch").'</a><br> </td>
</tr>
</table>';
if(!isset($_POST['submit']))
{
{
echo ' <form action="registration.php" method="POST" name="RegistrationForm">
<table border = "0" style="margin-left:40%; margin-top:5%;">
<table border = "0" style="margin: auto; width: 60%; margin-top:5%;">
<tr>
<td>'.$p->t('global/titel').' Pre</td>
<td><input type="text" size="20" maxlength="64" name="titel_pre"></td>
</tr>
<tr>
<td>'.$p->t('global/vorname').'</td>
<td>'.$p->t('global/vorname').'*</td>
<td><input type="text" size="40" maxlength="32" name="vorname"></td>
</tr>
<tr>
<td>'.$p->t('global/nachname').'</td>
<td>'.$p->t('global/nachname').'*</td>
<td><input type="text" size="40" maxlength="64" name="nachname"></td>
</tr>
<tr>
@@ -90,13 +91,13 @@ echo ' <form action="registration.php" method="POST" name="RegistrationForm">
</tr>
<tr>
<td>'.$p->t('global/geburtsdatum').'</td>
<td><input type="text" size="20" name="geb_datum" value="" onfocus="this.value=""\"; > (dd.mm.yyyy)</td>
<td><input type="text" size="20" name="geb_datum" value="" onfocus="this.value=\'\';" > (dd.mm.yyyy)</td>
</tr>
<tr>
<td>'.$p->t('global/staatsbuergerschaft').'</td>
<td><SELECT name="staatsbuerger">\n
<option value="staat_auswahl">-- select --</option>\n';
<td>'.$p->t('global/staatsbuergerschaft').'*</td>
<td><SELECT name="staatsbuerger">
<option value="staat_auswahl">-- select --</option>';
foreach ($nation->nation as $nat)
{
if($sprache == 'English')
@@ -104,33 +105,36 @@ echo ' <form action="registration.php" method="POST" name="RegistrationForm">
else
echo '<option value="'.$nat->code.'" >'.$nat->langtext."</option>\n";
}
echo' </tr>
echo' </select>
</td>
</tr>
<tr>
<td>'.$p->t('global/geschlecht').'</td>
<td> <input type="radio" name="geschlecht" value="m" checked> '.$p->t('global/mann').'
<input type="radio" name="geschlecht" value="w"> '.$p->t('global/frau').'
<td>
<input type="radio" name="geschlecht" value="m" checked> '.$p->t('global/mann').'
<input type="radio" name="geschlecht" value="w"> '.$p->t('global/frau').'
</td>
</tr>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td>'.$p->t('global/strasse').'</td>
<td><input type="text" size="40" maxlength="256" name="strasse"></td>
</tr>
</tr>
<tr>
<td>'.$p->t('global/plz').'</td>
<td><input type="text" size="20" maxlength="16" name="plz"></td>
</tr>
</tr>
<tr>
<td>'.$p->t('global/ort').'</td>
<td><input type="text" size="40" maxlength="256" name="ort"></td>
</tr>
</tr>
<tr>
<td>'.$p->t('incoming/nation').'</td>
<td><SELECT name="nation">\n
<option value="nat_auswahl">-- select --</option>\n';
<td><SELECT name="nation">
<option value="nat_auswahl">-- select --</option>';
foreach ($nation->nation as $nat)
{
if($sprache == 'English')
@@ -138,49 +142,63 @@ echo ' <form action="registration.php" method="POST" name="RegistrationForm">
else
echo '<option value="'.$nat->code.'" >'.$nat->langtext."</option>\n";
}
echo ' </tr>
echo ' </select>
</td>
</tr>
<tr>
<td>E-Mail</td>
<td>E-Mail*</td>
<td><input type="text" size="40" maxlength="128" name="email"></td>
</tr>
</tr>
<tr>
<td>'.$p->t('global/anmerkung').'</td>
<td><textarea name="anmerkung" cols="31" rows="5"></textarea></td>
</tr>
<tr>
<td colspan="2" align = "center"><input type="submit" name="submit" value="Registration" onclick="return checkRegistration()"></td>
</tr>
<tr><td><input type="hidden" name="zugangscode" value="'.uniqid().'"></td></tr>
<tr>
<td>
<img id="captcha" class="center-block img-responsive" src="'.APP_ROOT.'include/securimage/securimage_show.php" alt="CAPTCHA Image" />
<br>
<a href="#" onclick="document.getElementById(\'captcha\').src = \''.APP_ROOT.'include/securimage/securimage_show.php?\' + Math.random(); return false;">
'.$p->t('incoming/andereGrafik').'
</a>
</td>
<td>
'.$p->t('incoming/captcha').'<br>
<input type="text" name="captcha_code" maxlength="6" id="captcha" class="form-control">
</td>
</tr>
<tr>
<td colspan="2" align = "center"><input type="submit" name="submit" value="Registration" onclick="return checkRegistration()"></td>
</tr>
</table>
</form>
<script type="text/javascript">
function checkRegistration()
{
if(document.RegistrationForm.nachname.value == "")
{
alert("Kein Nachname angegeben.");
return false;
return false;
}
if(document.RegistrationForm.staatsbuerger.options[0].selected == true)
if(document.RegistrationForm.staatsbuerger.options[0].selected == true)
{
alert("Keine Staatsbürgerschaft ausgewählt.");
return false;
return false;
}
if(document.RegistrationForm.nation.options[0].selected == true)
if(document.RegistrationForm.nation.options[0].selected == true)
{
alert("Keine Nation ausgewählt.");
return false;
return false;
}
if(document.RegistrationForm.email.value == "")
{
alert("Keine E-Mail Adresse angegeben.");
return false;
return false;
}
return true;
return true;
}
</script>';
}
@@ -188,101 +206,109 @@ echo' </body>
</html>';
if(isset($_REQUEST['submit']))
{
$person = new person();
{
$securimage = new Securimage();
// Sicherheitscode wurde falsch eingegeben
if ($securimage->check($_POST['captcha_code']) == false)
{
echo '<p class="bg-danger padding-10">'.$p->t('bewerbung/sicherheitscodeFalsch').'</p>';
exit;
}
$person = new person();
$adresse = new adresse();
$kontakt = new kontakt();
$preincoming = new preincoming();
$preincoming = new preincoming();
$titel_pre = $_REQUEST['titel_pre'];
$vorname = $_REQUEST['vorname'];
$nachname =$_REQUEST['nachname'];
$vorname = $_REQUEST['vorname'];
$nachname =$_REQUEST['nachname'];
$titel_post = $_REQUEST['titel_post'];
$geb_datum = $date->formatDatum($_REQUEST['geb_datum'], 'Y-m-d');
$staatsbuerger = $_REQUEST['staatsbuerger'];
$geschlecht = $_REQUEST['geschlecht'];
$strasse = $_REQUEST['strasse'];
$plz = $_REQUEST['plz'];
$ort = $_REQUEST['ort'];
$nation_code = $_REQUEST['nation'];
$email = $_REQUEST['email'];
$anmerkung = $_REQUEST['anmerkung'];
$zugangscode = uniqid();
$person->staatsbuergerschaft = $staatsbuerger;
$person->titelpost = $titel_post;
$person->titelpre = $titel_pre;
$person->nachname = $nachname;
$person->vorname = $vorname;
$person->gebdatum = $geb_datum;
$person->geschlecht = $geschlecht;
$person->aktiv = true;
$person->zugangscode = $zugangscode;
$person->new = true;
$geb_datum = $date->formatDatum($_REQUEST['geb_datum'], 'Y-m-d');
$staatsbuerger = $_REQUEST['staatsbuerger'];
$geschlecht = $_REQUEST['geschlecht'];
$strasse = $_REQUEST['strasse'];
$plz = $_REQUEST['plz'];
$ort = $_REQUEST['ort'];
$nation_code = $_REQUEST['nation'];
$email = $_REQUEST['email'];
$anmerkung = $_REQUEST['anmerkung'];
$zugangscode = substr(md5(openssl_random_pseudo_bytes(20)), 0, 15);
$person->staatsbuergerschaft = $staatsbuerger;
$person->titelpost = $titel_post;
$person->titelpre = $titel_pre;
$person->nachname = $nachname;
$person->vorname = $vorname;
$person->gebdatum = $geb_datum;
$person->geschlecht = $geschlecht;
$person->aktiv = true;
$person->zugangscode = $zugangscode;
$person->new = true;
if(!$person->save())
die('Fehler beim Anlegen der Person aufgetreten.');
$adresse->person_id = $person->person_id;
$adresse->strasse = $strasse;
$adresse->plz = $plz;
$adresse->ort = $ort;
$adresse->nation = $nation_code;
die('Fehler beim Anlegen der Person aufgetreten.');
$adresse->person_id = $person->person_id;
$adresse->strasse = $strasse;
$adresse->plz = $plz;
$adresse->ort = $ort;
$adresse->nation = $nation_code;
$adresse->typ = 'h';
$adresse->heimatadresse = true;
$adresse->zustelladresse = true;
$adresse->new = true;
$adresse->heimatadresse = true;
$adresse->zustelladresse = true;
$adresse->new = true;
if(!$adresse->save())
die($p->t('incoming/fehlerAdresse'));
die($p->t('incoming/fehlerAdresse'));
$kontakt->person_id = $person->person_id;
$kontakt->kontakttyp = "email";
$kontakt->kontakt = $email;
$kontakt->new = true;
$kontakt->person_id = $person->person_id;
$kontakt->kontakttyp = "email";
$kontakt->kontakt = $email;
$kontakt->new = true;
if(!$kontakt->save())
die($p->t('incoming/fehlerKontakt'));
$preincoming->person_id = $person->person_id;
$preincoming->anmerkung = $anmerkung;
$preincoming->zweck_code = 1;
$preincoming->aktiv = true;
$preincoming->bachelorthesis = false;
$preincoming->masterthesis = false;
$preincoming->uebernommen = false;
$preincoming->new = true;
$preincoming->person_id = $person->person_id;
$preincoming->anmerkung = $anmerkung;
$preincoming->zweck_code = 1;
$preincoming->aktiv = true;
$preincoming->bachelorthesis = false;
$preincoming->masterthesis = false;
$preincoming->uebernommen = false;
$preincoming->new = true;
$preincoming->insertamum = date('Y-m-d H:i:s');
$preincoming->updateamum = date('Y-m-d H:i:s');
if(!$preincoming->save())
{
echo $preincoming->errormsg;
die($p->t('incoming/fehlerIncoming'));
}
echo sendMail($zugangscode, $email);
echo $preincoming->errormsg;
die($p->t('incoming/fehlerIncoming'));
}
echo sendMail($zugangscode, $email);
}
function sendMail($zugangscode, $email)
{
global $p, $vorname, $nachname;
$emailtext= $p->t('incoming/registrationEmail', array($zugangscode));
global $p, $vorname, $nachname;
$emailtext= $p->t('mail/incomingRegistrationEmail', array($zugangscode));
$mail = new mail($email, 'no-reply', 'Incoming-Registration', 'Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.');
$mail->setHTMLContent($emailtext);
$mail->setHTMLContent($emailtext);
if(!$mail->send())
$msg= '<span class="error">Fehler beim Senden des Mails</span><br />';
else
$msg= $p->t('global/emailgesendetan')." $email!<br>";
// sende Nachricht an Assistenz
$emailtext= "Dies ist eine automatisch generierte E-Mail.<br><br>";
$emailtext.= "Es hat sich ein neuer Incoming am Campus International registriert.<br><br>Name: ".$vorname.' '.$nachname.'<br>E-Mail: '.$email;
$mail = new mail(MAIL_INTERNATIONAL, 'no-reply', 'New Incoming', 'Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.');
$mail->setHTMLContent($emailtext);
$mail->send();
return $msg;
// sende Nachricht an Assistenz
$emailtext= "Dies ist eine automatisch generierte E-Mail.<br><br>";
$emailtext.= "Es hat sich ein neuer Incoming registriert.<br><br>Name: ".$vorname.' '.$nachname.'<br>E-Mail: '.$email;
$mail = new mail(MAIL_INTERNATIONAL, 'no-reply', 'New Incoming', 'Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.');
$mail->setHTMLContent($emailtext);
$mail->send();
return $msg;
}
?>
+69 -1
View File
@@ -42,7 +42,75 @@ $rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('basis/cms'))
die($rechte->errormsg);
$berechtigte_oe = $rechte->getOEkurzbz('basis/cms')
$berechtigte_oe = $rechte->getOEkurzbz('basis/cms');
// Speichern eines Contents per Ajax Request ,
// daher wird nach dem Speichern mittels exit beendet
if(isset($_POST['NewContent']))
{
if($rechte->isBerechtigt('basis/cms', null, 'sui'))
{
$templateContentId = isset($_POST['templateContent']) && $_POST['templateContent'] != 0?$_POST['templateContent']:'';
$titel = isset($_POST['titel'])?$_POST['titel']:'Neuer Eintrag';
if ($templateContentId != '')
{
$templateContent = new content();
$templateContent->getContent($templateContentId);
}
$template = new template();
$template->getAll();
if(!isset($template->result[0]))
exit('Es ist kein Template vorhanden');
if(in_array('etw',$berechtigte_oe))
$oe = 'etw';
else
$oe = $berechtigte_oe[0];
$content = new content();
$content->new = true;
$content->oe_kurzbz= $templateContentId != ''?$templateContent->oe_kurzbz:$oe;
$content->template_kurzbz=$templateContentId != ''?$templateContent->template_kurzbz:$template->result[0]->template_kurzbz;
$content->titel = $titel;
$content->aktiv=true;
$content->menu_open=false;
$content->content = $templateContentId != ''?$templateContent->content:'<?xml version="1.0" encoding="UTF-8" ?><content></content>';
$content->sichtbar=true;
$content->version='1';
$content->sprache=$templateContentId != ''?$templateContent->sprache:DEFAULT_LANGUAGE;
$content->insertvon = $user;
$content->insertamum = date('Y-m-d H:i:s');
$content->beschreibung = $templateContentId != ''?$templateContent->beschreibung:'';
if($content->save())
{
if($content->saveContentSprache())
{
if ($templateContentId!='')
{
$parent_content = new content();
$parent_content->content_id = $templateContentId;
$parent_content->child_content_id = $content->content_id;
$parent_content->insertamum = date('Y-m-d');
$parent_content->insertvon = $user;
$parent_content->sort=$parent_content->getMaxSort($templateContentId)+1;
if(!$parent_content->addChild())
exit('AddChild '.$content->errormsg);
}
exit($content->content_id);
}
else
exit('ContentSpracheSave '.$content->errormsg);
}
else
exit('ContentSave '.$content->errormsg);
}
else
exit('Sie haben keine Berechtigung fuer diese Aktion');
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
+46 -8
View File
@@ -23,10 +23,25 @@ require_once('../config/cis.config.inc.php');
require_once('../include/dms.class.php');
require_once('../include/functions.inc.php');
require_once('../include/benutzerberechtigung.class.php');
require_once('../include/akte.class.php');
require_once('../include/dokument.class.php');
session_cache_limiter('none'); //muss gesetzt werden sonst funktioniert der Download mit IE8 nicht
session_start();
if(!isset($_GET['id']))
die('ID muss uebergeben werden');
if(isset($_SESSION['bewerbung/personId']))
$person_id = $_SESSION['bewerbung/personId'];
else
$person_id ='';
if(isset($_GET['akte_id']))
$akte_id = $_GET['akte_id'];
else
$akte_id ='';
//if(!isset($_GET['version']))
// die('Version muss uebergeben werden');
@@ -45,16 +60,39 @@ if(!$doc->load($id,$version))
if($doc->isLocked($id))
{
//Dokument erfordert Authentifizierung
$user = get_uid();
if(!$doc->isBerechtigt($id, $user))
{
//Globales DMS recht pruefen
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('basis/dms'))
//Wenn person_id aus Session und akte_id uebergeben wurde
//und person_id Besitzer des Dokuments ist (person_id aus tbl_akte)
//und das Dokument in der Onlinebewerbung hochgeladen werden kann
//darf das Dokument heruntergeladen werden
if($person_id!='' && $akte_id!='')
{
$akte = new akte();
$akte->load($akte_id);
$akte_person = $akte->person_id;
$akte_dokument_kurzbz = $akte->dokument_kurzbz;
$dokumente_person = new dokument();
$dokumente_person->getAllDokumenteForPerson($person_id, true);
$dokumente_arr = array();
foreach ($dokumente_person->result AS $row)
$dokumente_arr[] .= $row->dokument_kurzbz;
if ($person_id!=$akte_person || !in_array($akte_dokument_kurzbz, $dokumente_arr))
die('Sie haben keinen Zugriff auf dieses Dokument');
}
else
{
//Dokument erfordert Authentifizierung
$user = get_uid();
if(!$doc->isBerechtigt($id, $user))
{
//Globales DMS recht pruefen
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('basis/dms'))
die('Sie haben keinen Zugriff auf dieses Dokument');
}
}
}
if(!isset($_GET['notimeupdate']))
+68 -24
View File
@@ -19,10 +19,10 @@
*/
/**
* Menue Addon zur Auswahl von LVs
*
*
* Dieses Addon erstellt ein Formular zur Auswahl von Studiengang und Semester und zeigt die
* zugehoerigen LVs an
*
*
* Parameter fuer das Params Array:
* - studiengang_kz
* - semester
@@ -44,9 +44,9 @@ class menu_addon_lehrveranstaltungen extends menu_addon
global $params;
parent::__construct();
$this->link=false;
$sprache = getSprache();
$user = get_uid();
$student = new student();
@@ -55,17 +55,17 @@ class menu_addon_lehrveranstaltungen extends menu_addon
$studiengang_kz=$student->studiengang_kz;
$semester=$student->semester;
}
$p = new phrasen($sprache);
$this->block.='
<script language="JavaScript" type="text/javascript">
<!--
function MM_jumpMenu(targ, selObj, restore)
{
eval(targ + ".location=\'" + selObj.options[selObj.selectedIndex].value + "\'");
if(restore)
{
selObj.selectedIndex = 0;
@@ -86,7 +86,7 @@ class menu_addon_lehrveranstaltungen extends menu_addon
if(isset($params['studiengang_kz']) && is_numeric($params['studiengang_kz']))
$studiengang_kz=$params['studiengang_kz'];
if(isset($params['semester']) && is_numeric($params['semester']))
$semester=$params['semester'];
else
@@ -94,7 +94,7 @@ class menu_addon_lehrveranstaltungen extends menu_addon
if(!isset($semester))
$semester=1;
}
$sel_kurzbzlang='';
foreach($stg_obj->result as $row)
{
@@ -115,7 +115,7 @@ class menu_addon_lehrveranstaltungen extends menu_addon
}
}
}
$this->block.='
</select>
</td>
@@ -127,7 +127,7 @@ class menu_addon_lehrveranstaltungen extends menu_addon
<td class="tdwrap">'.$p->t('global/semester').': </td>
<td class="tdwrap">
<select name="term" onChange="MM_jumpMenu(\'self\',this,0)">';
$short = 'Fehler Stg.Kz '.$studiengang_kz;
$max = 1;
if ($stg_obj=new studiengang($studiengang_kz))
@@ -137,12 +137,12 @@ class menu_addon_lehrveranstaltungen extends menu_addon
}
if($semester>$max)
$semester=1;
$params['studiengang_kz'] = $studiengang_kz;
$params['semester'] = $semester;
$params['studiengang_kurzbz_lo'] = strtolower($short);
$params['studiengang_kurzbz_hi'] = $short;
for($i=0;$i<$max;$i++)
{
if(($i+1)==$semester)
@@ -150,7 +150,7 @@ class menu_addon_lehrveranstaltungen extends menu_addon
else
$this->block.= '<option value="?content_id='.$_GET['content_id'].'&studiengang_kz='.$studiengang_kz.'&semester='.($i+1).'">'.($i+1).'. Semester</option>';
}
$this->block.='
</select>
</td>
@@ -165,24 +165,68 @@ class menu_addon_lehrveranstaltungen extends menu_addon
<td class="tdwrap">&nbsp;</td>
</tr>';
if (!$lv_obj = new lehrveranstaltung())
die('Fehler beim Oeffnen der Lehrveranstaltung');
die('Fehler beim Oeffnen der Lehrveranstaltung');
$lv_obj->lehrveranstaltungen=array();
if ($lv_obj->load_lva($studiengang_kz,$semester,null,TRUE,TRUE,'orgform_kurzbz DESC, bezeichnung'))
{
$db = new basis_db();
$qry = "SELECT * FROM lehre.tbl_studienordnung WHERE studiengang_kz=".$this->db_add_param($studiengang_kz)." AND status_kurzbz='approved'";
$genehmigte_sto_vorhanden=false;
if($result_sto = $db->db_query($qry))
{
if($db->db_num_rows($result_sto)>0)
{
$genehmigte_sto_vorhanden=true;
}
}
$lastform=null;
foreach ($lv_obj->lehrveranstaltungen as $row)
{
{
// Alle LVs herausfiltern die nicht in genehmigten Studienplaenen vorkommen
// Module werden auch herausgefiltert
if($genehmigte_sto_vorhanden)
{
$qry = "SELECT
count(*) as anzahl
FROM
lehre.tbl_studienplan_lehrveranstaltung
JOIN lehre.tbl_studienplan USING(studienplan_id)
JOIN lehre.tbl_studienordnung USING(studienordnung_id)
JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
JOIN lehre.tbl_lehrtyp USING(lehrtyp_kurzbz)
WHERE
tbl_studienplan_lehrveranstaltung.lehrveranstaltung_id=".$db->db_add_param($row->lehrveranstaltung_id)."
AND tbl_studienordnung.status_kurzbz='approved'
AND lehrtyp_kurzbz='lv'";
if($result_genehmigt = $db->db_query($qry))
{
if($row_genehmigt = $db->db_fetch_object($result_genehmigt))
{
if($row_genehmigt->anzahl==0)
continue;
}
}
}
else
{
// Wenn es in diesem Studiengang keine genehmigte Studienordnung gibt dann
// alle LVs anzeigen und nur die Module herausfiltern
if($row->lehrtyp_kurzbz!='lv')
continue;
}
if($row->orgform_kurzbz!=$lastform)
{
$orgform = new organisationsform();
$orgform->load($row->orgform_kurzbz);
$this->block.= "<tr><td><b>$orgform->bezeichnung</b></td></tr>";
$lastform=$row->orgform_kurzbz;
$this->block.= "<tr><td><b>$orgform->bezeichnung</b></td></tr>";
$lastform=$row->orgform_kurzbz;
}
$this->block.= '<tr>';
$this->block.= ' <td class="tdwrap"><ul style="margin: 0px; padding: 0px; ">';
@@ -194,7 +238,7 @@ class menu_addon_lehrveranstaltungen extends menu_addon
$this->block.='</table>';
$this->output();
}
private function CutString($strVal, $limit)
{
if(mb_strlen($strVal) > $limit+3)
+12 -10
View File
@@ -31,15 +31,15 @@ class menu_addon_zeitsperren extends menu_addon
public function __construct()
{
parent::__construct();
$sprache = getSprache();
$user = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
$p = new phrasen($sprache);
$fkt=new funktion();
$fkt->getAll($user);
@@ -50,7 +50,8 @@ class menu_addon_zeitsperren extends menu_addon
'link' => 'private/profile/zeitsperre_days.php?days=12',
'name' => $p->t('menu/zeitsperren')
);
/*
if ($rechte->isBerechtigt('admin',0) || $rechte->isBerechtigt('mitarbeiter'))
{
$this->items[] = array('title' => $p->t('menu/resturlaub'),
@@ -59,8 +60,9 @@ class menu_addon_zeitsperren extends menu_addon
'name' => $p->t('menu/resturlaub')
);
}
if ($rechte->isBerechtigt('admin',0) || $rechte->isBerechtigt('mitarbeiter')
*/
if ($rechte->isBerechtigt('admin',0) || $rechte->isBerechtigt('mitarbeiter')
|| $fkt->checkFunktion('stvLtg')|| $fkt->checkFunktion('gLtg')
|| $fkt->checkFunktion('Leitung') || $fkt->checkFunktion('ass'))
{
@@ -85,7 +87,7 @@ class menu_addon_zeitsperren extends menu_addon
'name' => $p->t('menu/assistenz')
);
}
$stg_obj = new studiengang();
$stg_obj->loadArray($rechte->getStgKz('admin'), 'typ, kurzbz', true);
foreach($stg_obj->result as $row)
@@ -95,11 +97,11 @@ class menu_addon_zeitsperren extends menu_addon
'link' => 'private/profile/zeitsperre.php?funktion=lkt&stg_kz='.$row->studiengang_kz,
'name' => $p->t('menu/lektoren').' '.$row->kurzbzlang
);
}
}
}
$this->output();
}
}
new menu_addon_zeitsperren();
?>
?>
+41 -30
View File
@@ -270,7 +270,7 @@ if($importFile != '')
if($dms->save(true))
{
echo 'File wurde erfolgreich hochgeladen. Filename:'.$filename.' ID:'.$dms->dms_id;
echo 'File wurde erfolgreich hochgeladen. <br>Filename:'.$filename.' <br>ID: <a href="id://'.$dms->dms_id.'/Auswahl" onclick="FileBrowserDialog.mySubmit('.$dms->dms_id.'); return false;" style="font-size: small">'.$dms->dms_id.'</a>';
$dms_id=$dms->dms_id;
if($projekt_kurzbz!='' || $projektphase_id!='')
@@ -282,10 +282,10 @@ if($importFile != '')
else
echo 'Fehler beim Speichern der Daten';
if(!chgrp(DMS_PATH.$filename,'dms'))
echo 'CHGRP failed';
if(!chmod(DMS_PATH.$filename, 0774))
echo 'CHMOD failed';
if(!@chgrp(DMS_PATH.$filename,'dms'))
echo '<br>CHGRP failed';
if(!@chmod(DMS_PATH.$filename, 0774))
echo '<br>CHMOD failed';
exec('sudo chown wwwrun '.$filename);
// Lösche File aus Verzeichnis nachdem es raufgeladen wurde
@@ -308,10 +308,10 @@ if(isset($_POST['fileupload']))
if(move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile))
{
if(!chgrp($uploadfile,'dms'))
echo 'CHGRP failed<br>';
if(!chmod($uploadfile, 0774))
echo 'CHMOD failed<br>';
if(!@chgrp($uploadfile,'dms'))
echo '<br>CHGRP failed';
if(!@chmod($uploadfile, 0774))
echo '<br>CHMOD failed';
exec('sudo chown wwwrun '.$uploadfile);
$dms = new dms();
@@ -831,32 +831,43 @@ function drawFilesFromImport()
if ($handle = opendir(IMPORT_PATH))
{
echo '<script>
$(document).ready(function()
{
$("#t3").tablesorter(
{
sortList: [[0,0]], headers: {1:{sorter:false}},
widgets: ["zebra"]
});
});
</script>';
echo ' <h3>Files im Import Ordner</h3>
<table> <form action ="'.$_SERVER['PHP_SELF'].'" method="POST" name="import" >';
<table class="tablesorter" id="t3" style="width: auto"> <form action ="'.$_SERVER['PHP_SELF'].'" method="POST" name="import" >
<thead><th>File</th><th></th></thead><tbody>';
while (false !== ($file = readdir($handle)))
{
if($file != '.' && $file != '..')
{
echo'
<tr>
<td><img src="../skin/images/blank.png" style="height: 15px">
<span> '.$file.'</span>
</td>
<td>
| <a onclick="document.import.importFile.value=\''.$file.'\';document.import.submit();" style="font-size:small">Upload</a>
</td>
</tr>';
}
}
echo'
<input type="hidden" name="dms_id_import" id="dms_id_import" value="">
while (false !== ($file = readdir($handle)))
{
if($file != '.' && $file != '..')
{
echo'
<tr>
<td>
<span> '.$file.'</span>
</td>
<td>
<a onclick="window.location=\'#divupload\'; document.import.importFile.value=\''.$file.'\';document.import.submit();" style="font-size:small">Upload</a>
</td>
</tr>';
}
}
echo'
<input type="hidden" name="dms_id_import" id="dms_id_import" value="">
<input type="hidden" name="importFile" value="">
<input type="hidden" name="kategorie_kurzbz" id="kategorie_kurzbz" value="'.$kategorie_kurzbz.'">
<input type="hidden" name="projekt_kurzbz" value="'.$projekt_kurzbz.'">
<input type="hidden" name="projektphase_id" value="'.$projektphase_id.'">
</form></table>';
closedir($handle);
</form></tbody></table>';
closedir($handle);
}
}
/**
@@ -1018,7 +1029,7 @@ function drawFilesList($rows)
<li><a href="dms.php?id='.$row->dms_id.'&version='.$row->version.'" style="font-size:small" target="_blank">Herunterladen</a></li>';
if($rechte->isberechtigt('basis/dms',null, 'sui', null))
{
echo ' <li><a href="id://'.$row->dms_id.'/Upload" onclick=" updateBeschreibung(\'';
echo ' <li><a href="id://'.$row->dms_id.'/Upload" onclick="window.location=\'#divupload\'; updateBeschreibung(\'';
$beschreibungstext = $row->beschreibung;
$beschreibungstext = str_replace("'","4nführungsze1ch3n",$beschreibungstext);
$beschreibungstext = str_replace('"',"D4n7ührung",$beschreibungstext);
Regular → Executable
View File
Generated
-1834
View File
File diff suppressed because it is too large Load Diff
+4
View File
@@ -25,6 +25,10 @@ define("DB_USER","vilesci");
define("DB_PASSWORD","vilesci");
define("DB_CONNECT_PERSISTENT",TRUE);
define('CONN_CLIENT_ENCODING','UTF-8' );
//Connection String Infoscreen
define("INFOSCREEN_USER","");
define("INFOSCREEN_PASSWORD","");
// Name des Servers (benoetigt fuer Cronjobs
define('SERVER_NAME','localhost');
+960 -953
View File
File diff suppressed because it is too large Load Diff
+44 -3
View File
@@ -1300,6 +1300,27 @@ function ExtrasShowProjektarbeitsabgaben()
window.open('<?php echo APP_ROOT ?>vilesci/lehre/abgabe_assistenz_frameset.php?stg_kz='+studiengang_kz,'Projektarbeitsabgaben','');
}
// ****
// * Zeigt HTML Seite für die Aliquote Reduktion
// ****
function ExtrasShowAliquote_reduktion()
{
tree = document.getElementById('tree-verband');
if(tree.currentIndex==-1)
{
alert('Bitte zuerst einen Studiengang auswaehlen');
return;
}
//Studiengang holen
var col;
col = tree.columns ? tree.columns["stg_kz"] : "stg_kz";
var studiengang_kz=tree.view.getCellText(tree.currentIndex,col);
var studiensemester_kurzbz = getStudiensemester();
window.open('<?php echo APP_ROOT ?>vilesci/personen/aliquote_reduktion.php?studiengang_kz='+studiengang_kz+'&studiensemester_kurzbz='+studiensemester_kurzbz,'Aliquote Reduktion','');
}
// ****
// * Zeigt HTML Seite zur Bearbeitung der Gruppen an
// ****
@@ -1745,10 +1766,21 @@ function PrintZutrittskarte()
function PrintStudienblatt(event)
{
var tree = document.getElementById('student-prestudent-tree-rolle');
var ss = document.getElementById('statusbarpanel-semester').label;
var items = tree.view.rowCount;
try
{
var studienplan_id = getTreeCellText(tree, "student-prestudent-tree-rolle-studienplan_id", 0);
var studienplan_id = "";
for (var v=0; v < items; v++)
{
var stsem = getTreeCellText(tree, 'student-prestudent-tree-rolle-studiensemester_kurzbz', v);
if(stsem == ss)
{
studienplan_id = getTreeCellText(tree, 'student-prestudent-tree-rolle-studienplan_id', v);
}
}
}
catch(e)
{
@@ -1817,7 +1849,7 @@ function PrintStudienblatt(event)
{
if(error>0)
alert(error+' der ausgewaehlten Personen haben keinen Account');
action = '<?php echo APP_ROOT; ?>content/pdfExport.php?xsl=Studienblatt&xml=studienblatt.xml.php&output='+output+'&&uid='+data;
action = '<?php echo APP_ROOT; ?>content/pdfExport.php?xsl=Studienblatt&xml=studienblatt.xml.php&output='+output+'&&uid='+data+"&ss="+ss;
window.open(action,'Studienblatt','height=520,width=500,left=350,top=350,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
}
else
@@ -1832,10 +1864,19 @@ function PrintStudienblatt(event)
function PrintStudienblattEnglisch(event)
{
var tree = document.getElementById('student-prestudent-tree-rolle');
var items = tree.view.rowCount;
try
{
var studienplan_id = getTreeCellText(tree, "student-prestudent-tree-rolle-studienplan_id", 0);
var studienplan_id = "";
for (var v=0; v < items; v++)
{
var stsem = getTreeCellText(tree, 'student-prestudent-tree-rolle-studiensemester_kurzbz', v);
if(stsem == ss)
{
studienplan_id = getTreeCellText(tree, 'student-prestudent-tree-rolle-studienplan_id', v);
}
}
}
catch(e)
{
@@ -53,137 +53,137 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
style="margin:4px;"
>
<columns >
<column flex="1"/>
<column flex="5"/>
<column flex="1"/>
<column flex="5"/>
<column flex="1"/>
<column flex="5"/>
</columns>
<rows>
<row>
<label value="UID" control="mitarbeiter-detail-textbox-uid"/>
<hbox><textbox id="mitarbeiter-detail-textbox-uid" disabled="true" maxlength="32" size="16" oninput="MitarbeiterDetailValueChange()"/></hbox>
<spacer />
<spacer />
<label value="Aktiv" control="mitarbeiter-detail-checkbox-aktiv"/>
<checkbox id="mitarbeiter-detail-checkbox-aktiv" checked="true" disabled="true" onchange="MitarbeiterDetailValueChange()"/>
</row>
<row>
<label value="Anrede" control="mitarbeiter-detail-textbox-anrede"/>
<hbox><textbox id="mitarbeiter-detail-textbox-anrede" disabled="true" maxlength="16" size="16" oninput="MitarbeiterDetailValueChange()"/></hbox>
<label value="TitelPre" control="mitarbeiter-detail-textbox-titelpre"/>
<textbox id="mitarbeiter-detail-textbox-titelpre" disabled="true" maxlength="64" oninput="MitarbeiterDetailValueChange()"/>
<label value="TitelPost" control="mitarbeiter-detail-textbox-titelpost"/>
<textbox id="mitarbeiter-detail-textbox-titelpost" disabled="true" maxlength="32" oninput="MitarbeiterDetailValueChange()"/>
</row>
<row>
<label value="Nachname" control="mitarbeiter-detail-textbox-nachname"/>
<textbox id="mitarbeiter-detail-textbox-nachname" disabled="true" maxlength="64" oninput="MitarbeiterDetailValueChange()"/>
<label value="Vorname" control="mitarbeiter-detail-textbox-vorname"/>
<textbox id="mitarbeiter-detail-textbox-vorname" disabled="true" maxlength="32" oninput="MitarbeiterDetailValueChange()"/>
<label value="Vornamen" control="mitarbeiter-detail-textbox-vornamen"/>
<textbox id="mitarbeiter-detail-textbox-vornamen" disabled="true" maxlength="128" oninput="MitarbeiterDetailValueChange()"/>
</row>
<row <?php echo ($rechte->isBerechtigt('mitarbeiter/persoenlich'))?'':'hidden="true"'; ?>>
<label value="Geburtsdatum" control="mitarbeiter-detail-textbox-geburtsdatum" />
<hbox>
<box class="Datum" id="mitarbeiter-detail-textbox-geburtsdatum" disabled="true" oninput="MitarbeiterDetailValueChange()" />
</hbox>
<label value="Geburtsort" control="mitarbeiter-detail-textbox-geburtsort"/>
<textbox id="mitarbeiter-detail-textbox-geburtsort" disabled="true" maxlength="128" oninput="MitarbeiterDetailValueChange()"/>
<label value="Geburtszeit" control="mitarbeiter-detail-textbox-geburtszeit" hidden="true"/>
<hbox><textbox id="mitarbeiter-detail-textbox-geburtszeit" disabled="true" maxlength="5" size="5" tooltiptext="Format: hh:mm Beispiel: 10:30" oninput="MitarbeiterDetailValueChange()" hidden="true"/></hbox>
</row>
<row <?php echo ($rechte->isBerechtigt('mitarbeiter/persoenlich'))?'':'hidden="true"'; ?>>
<label value="SVNR" control="mitarbeiter-detail-textbox-svnr"/>
<hbox><textbox id="mitarbeiter-detail-textbox-svnr" disabled="true" maxlength="16" size="10" oninput="MitarbeiterGenerateGebDatFromSVNR(); MitarbeiterDetailValueChange()"/></hbox>
<label value="Ersatzkennzeichen" control="mitarbeiter-detail-textbox-ersatzkennzeichen"/>
<hbox><textbox id="mitarbeiter-detail-textbox-ersatzkennzeichen" disabled="true" maxlength="10" size="10" oninput="MitarbeiterDetailValueChange()"/></hbox>
</row>
<row>
<column flex="1"/>
<column flex="5"/>
<column flex="1"/>
<column flex="5"/>
<column flex="1"/>
<column flex="5"/>
</columns>
<rows>
<row>
<label value="UID" control="mitarbeiter-detail-textbox-uid"/>
<hbox><textbox id="mitarbeiter-detail-textbox-uid" disabled="true" maxlength="32" size="16" oninput="MitarbeiterDetailValueChange()"/></hbox>
<spacer />
<spacer />
<label value="Aktiv" control="mitarbeiter-detail-checkbox-aktiv"/>
<checkbox id="mitarbeiter-detail-checkbox-aktiv" checked="true" disabled="true" onchange="MitarbeiterDetailValueChange()"/>
</row>
<row>
<label value="Anrede" control="mitarbeiter-detail-textbox-anrede"/>
<hbox><textbox id="mitarbeiter-detail-textbox-anrede" disabled="true" maxlength="16" size="16" oninput="MitarbeiterDetailValueChange()"/></hbox>
<label value="TitelPre" control="mitarbeiter-detail-textbox-titelpre"/>
<textbox id="mitarbeiter-detail-textbox-titelpre" disabled="true" maxlength="64" oninput="MitarbeiterDetailValueChange()"/>
<label value="TitelPost" control="mitarbeiter-detail-textbox-titelpost"/>
<textbox id="mitarbeiter-detail-textbox-titelpost" disabled="true" maxlength="32" oninput="MitarbeiterDetailValueChange()"/>
</row>
<row>
<label value="Nachname" control="mitarbeiter-detail-textbox-nachname"/>
<textbox id="mitarbeiter-detail-textbox-nachname" disabled="true" maxlength="64" oninput="MitarbeiterDetailValueChange()"/>
<label value="Vorname" control="mitarbeiter-detail-textbox-vorname"/>
<textbox id="mitarbeiter-detail-textbox-vorname" disabled="true" maxlength="32" oninput="MitarbeiterDetailValueChange()"/>
<label value="Vornamen" control="mitarbeiter-detail-textbox-vornamen"/>
<textbox id="mitarbeiter-detail-textbox-vornamen" disabled="true" maxlength="128" oninput="MitarbeiterDetailValueChange()"/>
</row>
<row <?php echo ($rechte->isBerechtigt('mitarbeiter/persoenlich'))?'':'hidden="true"'; ?>>
<label value="Geburtsdatum" control="mitarbeiter-detail-textbox-geburtsdatum" />
<hbox>
<box class="Datum" id="mitarbeiter-detail-textbox-geburtsdatum" disabled="true" oninput="MitarbeiterDetailValueChange()" />
</hbox>
<label value="Geburtsort" control="mitarbeiter-detail-textbox-geburtsort"/>
<textbox id="mitarbeiter-detail-textbox-geburtsort" disabled="true" maxlength="128" oninput="MitarbeiterDetailValueChange()"/>
<label value="Geburtszeit" control="mitarbeiter-detail-textbox-geburtszeit" hidden="true"/>
<hbox><textbox id="mitarbeiter-detail-textbox-geburtszeit" disabled="true" maxlength="5" size="5" tooltiptext="Format: hh:mm Beispiel: 10:30" oninput="MitarbeiterDetailValueChange()" hidden="true"/></hbox>
</row>
<row <?php echo ($rechte->isBerechtigt('mitarbeiter/persoenlich'))?'':'hidden="true"'; ?>>
<label value="SVNR" control="mitarbeiter-detail-textbox-svnr"/>
<hbox><textbox id="mitarbeiter-detail-textbox-svnr" disabled="true" maxlength="16" size="10" oninput="MitarbeiterDetailValueChange()"/></hbox><!-- oninput="MitarbeiterGenerateGebDatFromSVNR(); fuer automatisches eintragen der SVNR anhand des Geburtsdatums -->
<label value="Ersatzkennzeichen" control="mitarbeiter-detail-textbox-ersatzkennzeichen"/>
<hbox><textbox id="mitarbeiter-detail-textbox-ersatzkennzeichen" disabled="true" maxlength="10" size="10" oninput="MitarbeiterDetailValueChange()"/></hbox>
</row>
<row>
<label value="Staatsbuergerschaft" control="mitarbeiter-detail-menulist-staatsbuergerschaft" <?php echo ($rechte->isBerechtigt('mitarbeiter/persoenlich'))?'':'hidden="true"'; ?>/>
<menulist id="mitarbeiter-detail-menulist-staatsbuergerschaft" disabled="true"
datasources="<?php echo APP_ROOT ?>rdf/nation.rdf.php?optional=true" flex="1"
ref="http://www.technikum-wien.at/nation/liste" oncommand="MitarbeiterDetailValueChange()"
<?php echo ($rechte->isBerechtigt('mitarbeiter/persoenlich'))?'':'hidden="true"'; ?> >
datasources="<?php echo APP_ROOT ?>rdf/nation.rdf.php?optional=true" flex="1"
ref="http://www.technikum-wien.at/nation/liste" oncommand="MitarbeiterDetailValueChange()"
<?php echo ($rechte->isBerechtigt('mitarbeiter/persoenlich'))?'':'hidden="true"'; ?> >
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/nation/rdf#nation_code"
label="rdf:http://www.technikum-wien.at/nation/rdf#kurztext"
uri="rdf:*"/>
label="rdf:http://www.technikum-wien.at/nation/rdf#kurztext"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
<label value="Geburtsnation" control="mitarbeiter-detail-menulist-geburtsnation" <?php echo ($rechte->isBerechtigt('mitarbeiter/persoenlich'))?'':'hidden="true"'; ?> />
<menulist id="mitarbeiter-detail-menulist-geburtsnation" disabled="true"
datasources="<?php echo APP_ROOT ?>rdf/nation.rdf.php?optional=true" flex="1"
ref="http://www.technikum-wien.at/nation/liste" oncommand="MitarbeiterDetailValueChange()"
<?php echo ($rechte->isBerechtigt('mitarbeiter/persoenlich'))?'':'hidden="true"'; ?> >
datasources="<?php echo APP_ROOT ?>rdf/nation.rdf.php?optional=true" flex="1"
ref="http://www.technikum-wien.at/nation/liste" oncommand="MitarbeiterDetailValueChange()"
<?php echo ($rechte->isBerechtigt('mitarbeiter/persoenlich'))?'':'hidden="true"'; ?> >
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/nation/rdf#nation_code"
label="rdf:http://www.technikum-wien.at/nation/rdf#kurztext"
uri="rdf:*"/>
label="rdf:http://www.technikum-wien.at/nation/rdf#kurztext"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
<label value="Sprache" control="mitarbeiter-detail-menulist-sprache" />
<menulist id="mitarbeiter-detail-menulist-sprache" disabled="true"
datasources="<?php echo APP_ROOT ?>rdf/sprache.rdf.php?optional=true" flex="1"
ref="http://www.technikum-wien.at/sprachen/liste" oncommand="MitarbeiterDetailValueChange()">
datasources="<?php echo APP_ROOT ?>rdf/sprache.rdf.php?optional=true" flex="1"
ref="http://www.technikum-wien.at/sprachen/liste" oncommand="MitarbeiterDetailValueChange()">
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/sprachen/rdf#bezeichnung"
label="rdf:http://www.technikum-wien.at/sprachen/rdf#anzeigename"
uri="rdf:*"/>
label="rdf:http://www.technikum-wien.at/sprachen/rdf#anzeigename"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
</row>
<row>
<label value="Geschlecht" control="mitarbeiter-detail-menulist-geschlecht"/>
<menulist id="mitarbeiter-detail-menulist-geschlecht" disabled="true" oncommand="MitarbeiterDetailValueChange()">
<row>
<label value="Geschlecht" control="mitarbeiter-detail-menulist-geschlecht"/>
<menulist id="mitarbeiter-detail-menulist-geschlecht" disabled="true" oncommand="MitarbeiterDetailValueChange()">
<menupopup>
<menuitem value="m" label="maennlich"/>
<menuitem value="w" label="weiblich"/>
<menuitem value="u" label="unbekannt"/>
</menupopup>
</menupopup>
</menulist>
<label value="Familienstand" control="mitarbeiter-detail-menulist-familienstand" <?php echo ($rechte->isBerechtigt('mitarbeiter/persoenlich'))?'':'hidden="true"'; ?> />
<menulist id="mitarbeiter-detail-menulist-familienstand" disabled="true" oncommand="MitarbeiterDetailValueChange()" <?php echo ($rechte->isBerechtigt('mitarbeiter/persoenlich'))?'':'hidden="true"'; ?> >
<menulist id="mitarbeiter-detail-menulist-familienstand" disabled="true" oncommand="MitarbeiterDetailValueChange()" <?php echo ($rechte->isBerechtigt('mitarbeiter/persoenlich'))?'':'hidden="true"'; ?> >
<menupopup>
<menuitem value="" label="--keine Auswahl--"/>
<menuitem value="g" label="geschieden"/>
<menuitem value="l" label="ledig"/>
<menuitem value="v" label="verheiratet"/>
<menuitem value="w" label="verwitwet"/>
</menupopup>
</menupopup>
</menulist>
<label value="Anzahl der Kinder" control="mitarbeiter-detail-textbox-anzahlderkinder" hidden="true"/>
<textbox id="mitarbeiter-detail-textbox-anzahlderkinder" disabled="true" maxlength="2" oninput="MitarbeiterDetailValueChange()" hidden="true"/>
</row>
<row>
<vbox>
<label value="Foto" />
<hbox>
<button id="mitarbeiter-detail-button-image-upload" label="Upload" oncommand="MitarbeiterImageUpload();" disabled="true"/>
<button id="mitarbeiter-detail-button-image-delete" label="Delete" oncommand="MitarbeiterImageDelete();" disabled="true"/>
<spacer flex="1" />
</hbox>
<button id="mitarbeiter-detail-button-image-infomail" label="Infomail" oncommand="MitarbeiterImageInfomail();" disabled="true"/>
</vbox>
<hbox>
<image src='' id="mitarbeiter-detail-image" style="margin-left:5px; width:90px; height:120px"/> <!-- width="60" height="60" -->
<spacer flex="1"/>
</hbox>
<label value="Anmerkung" control="mitarbeiter-detail-textbox-anmerkung"/>
<textbox id="mitarbeiter-detail-textbox-anmerkung" disabled="true" multiline="true" oninput="MitarbeiterDetailValueChange()"/>
<label value="Homepage" control="mitarbeiter-detail-textbox-homepage"/>
<vbox><textbox id="mitarbeiter-detail-textbox-homepage" disabled="true" maxlength="256" oninput="MitarbeiterDetailValueChange()"/></vbox>
</row>
<textbox id="mitarbeiter-detail-textbox-anzahlderkinder" disabled="true" maxlength="2" oninput="MitarbeiterDetailValueChange()" hidden="true"/>
</row>
<row>
<vbox>
<label value="Foto" />
<hbox>
<button id="mitarbeiter-detail-button-image-upload" label="Upload" oncommand="MitarbeiterImageUpload();" disabled="true"/>
<button id="mitarbeiter-detail-button-image-delete" label="Delete" oncommand="MitarbeiterImageDelete();" disabled="true"/>
<spacer flex="1" />
</hbox>
<button id="mitarbeiter-detail-button-image-infomail" label="Infomail" oncommand="MitarbeiterImageInfomail();" disabled="true"/>
</vbox>
<hbox>
<image src='' id="mitarbeiter-detail-image" style="margin-left:5px; width:90px; height:120px"/> <!-- width="60" height="60" -->
<spacer flex="1"/>
</hbox>
<label value="Anmerkung" control="mitarbeiter-detail-textbox-anmerkung"/>
<textbox id="mitarbeiter-detail-textbox-anmerkung" disabled="true" multiline="true" oninput="MitarbeiterDetailValueChange()"/>
<label value="Homepage" control="mitarbeiter-detail-textbox-homepage"/>
<vbox><textbox id="mitarbeiter-detail-textbox-homepage" disabled="true" maxlength="256" oninput="MitarbeiterDetailValueChange()"/></vbox>
</row>
</rows>
</grid>
</grid>
</groupbox>
File diff suppressed because it is too large Load Diff
+282 -281
View File
@@ -1,281 +1,282 @@
<?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>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@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');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
$user = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeiterdetailoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeiterfunktionoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeiterbuchungoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeitervertragoverlay.xul.php"?>';
?>
<!DOCTYPE overlay >
<overlay id="MitarbeiterOverlay"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/mitarbeiter/mitarbeiteroverlay.js.php" />
<!-- **************** -->
<!-- * MITARBEITER * -->
<!-- **************** -->
<vbox id="MitarbeiterEditor" persist="height" flex="1">
<popupset>
<menupopup id="mitarbeiter-tree-popup">
<menuitem label="EMail senden (intern)" oncommand="MitarbeiterSendMail();" id="mitarbeiter-tree-popup-mail" hidden="false"/>
<menuitem label="EMail senden (privat)" oncommand="MitarbeiterSendMailPrivat();" id="mitarbeiter-tree-popup-mail" hidden="false"/>
<menuitem label="Personendetails anzeigen" oncommand="MitarbeiterShowPersonendetails()" id="mitarbeiter-tree-popup-personendetails" hidden="false"/>
</menupopup>
</popupset>
<hbox>
<toolbox flex="1">
<toolbar id="mitarbeiter-nav-toolbar">
<toolbarbutton id="mitarbeiter-toolbar-neu" label="Neu" oncommand="MitarbeiterNeu()" disabled="false" image="../skin/images/NeuDokument.png" tooltiptext="Neuen Mitarbeiter anlegen"/>
<toolbarbutton id="mitarbeiter-toolbar-export" label="Export" oncommand="MitarbeiterExport()" disabled="false" image="../skin/images/ExcelIcon.png" tooltiptext="Daten ins Excel Exportieren"/>
<toolbarbutton id="mitarbeiter-toolbar-refresh" label="Aktualisieren" oncommand="MitarbeiterTreeRefresh()" disabled="false" image="../skin/images/refresh.png" tooltiptext="Liste neu laden"/>
<textbox id="mitarbeiter-toolbar-textbox-suche" control="mitarbeiter-toolbar-button-search" onkeypress="MitarbeiterSearchFieldKeyPress(event)" />
<button id="mitarbeiter-toolbar-button-search" oncommand="MitarbeiterSuche()" label="Suchen"/>
<spacer flex="1"/>
<label id="mitarbeiter-toolbar-label-anzahl"/>
</toolbar>
</toolbox>
</hbox>
<box style="height: 100px;">
<!-- ************ -->
<!-- * TREE * -->
<!-- ************ -->
<tree id="mitarbeiter-tree" seltype="multi" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/mitarbeiter/alle"
onselect="MitarbeiterAuswahl();"
flags="dont-build-content"
enableColumnDrag="true"
persist="hidden, height"
context="mitarbeiter-tree-popup"
>
<treecols>
<treecol id="mitarbeiter-treecol-uid" label="UID" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#uid" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-anrede" label="Anrede" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#anrede" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-titelpre" label="TitelPre" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#titelpre" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-nachname" label="Nachname" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
sortActive="true"
sortDirection="ascending"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#nachname" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-vorname" label="Vorname" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vorname" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-vornamen" label="Vornamen" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vornamen" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-titelpost" label="TitelPost" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#titelpost" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<?php
if($rechte->isBerechtigt('mitarbeiter/persoenlich'))
echo '
<treecol id="mitarbeiter-treecol-geburtsdatum" label="Geburtsdatum" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#geburtsdatum_iso" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-geburtsdatum_iso" label="GeburtsdatumISO" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#geburtsdatum_iso" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-svnr" label="SVNR" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#svnr" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-ersatzkennzeichen" label="Ersatzkennzeichen" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#ersatzkennzeichen" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>';
?>
<treecol id="mitarbeiter-treecol-aktiv" label="Aktiv" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#aktiv" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-personalnummer" label="PNr" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#personalnummer" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-kurzbz" label="Kurzbz" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#kurzbz" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-lektor" label="Lektor" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#lektor" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-fixangestellt" label="Fix" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#fixangestellt" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-telefonklappe" label="Klappe" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#telefonklappe" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-ort_kurzbz" label="Buero" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#ort_kurzbz" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-person_id" label="Person_id" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#person_id" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-insertamum" label="Angelegt am" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#insertamum_iso" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-insertvon" label="Angelegt von" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#insertvon" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-insertamum_iso" label="Angelegt am (ISO)" flex="1" persist="hidden, width, ordinal" hidden="true" ignoreincolumnpicker="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#insertamum_iso" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-updateamum" label="Geaendert am" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#updateamum_iso" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-updatevon" label="Geaendert von" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#updatevon" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-updateamum_iso" label="Geaendert am (ISO)" flex="1" persist="hidden, width, ordinal" hidden="true" ignoreincolumnpicker="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#updateamum_iso" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#uid" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#anrede" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#titelpre" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#nachname" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vorname" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vornamen" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#titelpost" />
<?php
if($rechte->isBerechtigt('mitarbeiter/persoenlich'))
echo '
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#geburtsdatum" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#geburtsdatum_iso" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#svnr" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#ersatzkennzeichen" />';
?>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#aktiv" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#personalnummer" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#kurzbz" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#lektor" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#fixangestellt" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#telefonklappe" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#ort_kurzbz" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#person_id" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#insertamum" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#insertvon" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#insertamum_iso" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#updateamum" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#updatevon" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#updateamum_iso" />
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
</box>
<splitter collapse="after" persist="state">
<grippy />
</splitter>
<!-- ************ -->
<!-- * TABS * -->
<!-- ************ -->
<vbox persist="height" flex="1">
<tabbox id="mitarbeiter-tabbox" orient="vertical" flex="1">
<tabs orient="horizontal" id="mitarbeiter-tabs">
<tab id="mitarbeiter-tab-detail" label="Stammdaten" />
<tab id="mitarbeiter-tab-kontakt" label="Kontaktdaten" />
<tab id="mitarbeiter-tab-bis" label="BIS-Daten" />
<tab id="mitarbeiter-tab-betriebsmittel" label="Betriebsmittel" />
<tab id="mitarbeiter-tab-funktionen" label="Funktionen" oncommand="MitarbeiterFunktionIFrameLoad()"/>
<?php
if($rechte->isBerechtigt('buchung/mitarbeiter'))
echo '<tab id="mitarbeiter-tab-buchung" label="Buchungen" />';
if($rechte->isBerechtigt('vertrag/mitarbeiter'))
echo '<tab id="mitarbeiter-tab-vertrag" label="Verträge" />';
?>
<tab id="mitarbeiter-tab-termine" label="Termine" onclick="MitarbeiterTermineIFrameLoad()" />
</tabs>
<tabpanels id="mitarbeiter-tabpanels-main" flex="1">
<vbox id="mitarbeiter-detail-stammdaten" style="margin-top:10px;" />
<iframe id="mitarbeiter-kontakt" src="" style="margin-top:10px;" />
<vbox id="mitarbeiter-detail-funktionen" style="margin-top:10px;" />
<iframe id="mitarbeiter-betriebsmittel" src="" style="margin-top:10px;" />
<iframe id="mitarbeiter-funktionen" src="" style="margin-top:10px;"/>
<?php
if($rechte->isBerechtigt('buchung/mitarbeiter'))
echo '<vbox id="mitarbeiter-buchung" style="margin-top:10px;" />';
if($rechte->isBerechtigt('vertrag/mitarbeiter'))
echo '<vbox id="mitarbeiter-vertrag" style="margin-top:10px;" />';
?>
<iframe id="mitarbeiter-termine" src="" style="margin-top:10px;" />
</tabpanels>
</tabbox>
</vbox>
</vbox>
</overlay>
<?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>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Andreas moik <moik@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');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
$user = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeiterdetailoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeiterfunktionoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeiterbuchungoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeitervertragoverlay.xul.php"?>';
?>
<!DOCTYPE overlay >
<overlay id="MitarbeiterOverlay"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/mitarbeiter/mitarbeiteroverlay.js.php" />
<!-- **************** -->
<!-- * MITARBEITER * -->
<!-- **************** -->
<vbox id="MitarbeiterEditor" persist="height" flex="1">
<popupset>
<menupopup id="mitarbeiter-tree-popup">
<menuitem label="EMail senden (intern)" oncommand="MitarbeiterSendMail();" id="mitarbeiter-tree-popup-mail" hidden="false"/>
<menuitem label="EMail senden (privat)" oncommand="MitarbeiterSendMailPrivat();" id="mitarbeiter-tree-popup-mail" hidden="false"/>
<menuitem label="Personendetails anzeigen" oncommand="MitarbeiterShowPersonendetails()" id="mitarbeiter-tree-popup-personendetails" hidden="false"/>
</menupopup>
</popupset>
<hbox>
<toolbox flex="1">
<toolbar id="mitarbeiter-nav-toolbar">
<toolbarbutton id="mitarbeiter-toolbar-neu" label="Neu" oncommand="MitarbeiterNeu()" disabled="false" image="../skin/images/NeuDokument.png" tooltiptext="Neuen Mitarbeiter anlegen"/>
<toolbarbutton id="mitarbeiter-toolbar-export" label="Export" oncommand="MitarbeiterExport()" disabled="false" image="../skin/images/ExcelIcon.png" tooltiptext="Daten ins Excel Exportieren"/>
<toolbarbutton id="mitarbeiter-toolbar-refresh" label="Aktualisieren" oncommand="MitarbeiterTreeRefresh()" disabled="false" image="../skin/images/refresh.png" tooltiptext="Liste neu laden"/>
<textbox id="mitarbeiter-toolbar-textbox-suche" control="mitarbeiter-toolbar-button-search" onkeypress="MitarbeiterSearchFieldKeyPress(event)" />
<button id="mitarbeiter-toolbar-button-search" oncommand="MitarbeiterSuche()" label="Suchen"/>
<spacer flex="1"/>
<label id="mitarbeiter-toolbar-label-anzahl"/>
</toolbar>
</toolbox>
</hbox>
<box style="height: 100px;">
<!-- ************ -->
<!-- * TREE * -->
<!-- ************ -->
<tree id="mitarbeiter-tree" seltype="multi" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/mitarbeiter/alle"
onselect="MitarbeiterAuswahl();"
flags="dont-build-content"
enableColumnDrag="true"
persist="hidden, height"
context="mitarbeiter-tree-popup"
>
<treecols>
<treecol id="mitarbeiter-treecol-uid" label="UID" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#uid" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-anrede" label="Anrede" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#anrede" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-titelpre" label="TitelPre" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#titelpre" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-nachname" label="Nachname" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
sortActive="true"
sortDirection="ascending"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#nachname" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-vorname" label="Vorname" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vorname" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-vornamen" label="Vornamen" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vornamen" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-titelpost" label="TitelPost" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#titelpost" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<?php
if($rechte->isBerechtigt('mitarbeiter/persoenlich'))
echo '
<treecol id="mitarbeiter-treecol-geburtsdatum" label="Geburtsdatum" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#geburtsdatum_iso" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-geburtsdatum_iso" label="GeburtsdatumISO" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#geburtsdatum_iso" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-svnr" label="SVNR" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#svnr" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-ersatzkennzeichen" label="Ersatzkennzeichen" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#ersatzkennzeichen" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>';
?>
<treecol id="mitarbeiter-treecol-aktiv" label="Aktiv" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#aktiv" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-personalnummer" label="PNr" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#personalnummer" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-kurzbz" label="Kurzbz" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#kurzbz" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-lektor" label="Lektor" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#lektor" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-fixangestellt" label="Fix" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#fixangestellt" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-telefonklappe" label="Klappe" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#telefonklappe" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-ort_kurzbz" label="Buero" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#ort_kurzbz" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-person_id" label="Person_id" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#person_id" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-insertamum" label="Angelegt am" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#insertamum_iso" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-insertvon" label="Angelegt von" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#insertvon" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-insertamum_iso" label="Angelegt am (ISO)" flex="1" persist="hidden, width, ordinal" hidden="true" ignoreincolumnpicker="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#insertamum_iso" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-updateamum" label="Geaendert am" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#updateamum_iso" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-updatevon" label="Geaendert von" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#updatevon" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-updateamum_iso" label="Geaendert am (ISO)" flex="1" persist="hidden, width, ordinal" hidden="true" ignoreincolumnpicker="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#updateamum_iso" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#uid" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#anrede" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#titelpre" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#nachname" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vorname" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vornamen" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#titelpost" />
<?php
if($rechte->isBerechtigt('mitarbeiter/persoenlich'))
echo '
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#geburtsdatum" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#geburtsdatum_iso" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#svnr" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#ersatzkennzeichen" />';
?>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#aktiv" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#personalnummer" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#kurzbz" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#lektor" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#fixangestellt" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#telefonklappe" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#ort_kurzbz" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#person_id" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#insertamum" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#insertvon" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#insertamum_iso" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#updateamum" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#updatevon" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#updateamum_iso" />
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
</box>
<splitter collapse="after" persist="state">
<grippy />
</splitter>
<!-- ************ -->
<!-- * TABS * -->
<!-- ************ -->
<vbox persist="height" flex="1">
<tabbox id="mitarbeiter-tabbox" orient="vertical" flex="1">
<tabs orient="horizontal" id="mitarbeiter-tabs">
<tab id="mitarbeiter-tab-detail" label="Stammdaten" />
<tab id="mitarbeiter-tab-kontakt" label="Kontaktdaten" />
<tab id="mitarbeiter-tab-bis" label="BIS-Daten" />
<tab id="mitarbeiter-tab-betriebsmittel" label="Betriebsmittel" />
<tab id="mitarbeiter-tab-funktionen" label="Funktionen" oncommand="MitarbeiterFunktionIFrameLoad()"/>
<?php
if($rechte->isBerechtigt('buchung/mitarbeiter'))
echo '<tab id="mitarbeiter-tab-buchung" label="Buchungen" />';
if($rechte->isBerechtigt('vertrag/mitarbeiter'))
echo '<tab id="mitarbeiter-tab-vertrag" label="Verträge" />';
?>
<tab id="mitarbeiter-tab-termine" label="Termine" onclick="MitarbeiterTermineIFrameLoad()" />
</tabs>
<tabpanels id="mitarbeiter-tabpanels-main" flex="1">
<vbox id="mitarbeiter-detail-stammdaten" style="margin-top:10px;" />
<iframe id="mitarbeiter-kontakt" src="" style="margin-top:10px;" />
<vbox id="mitarbeiter-detail-funktionen" style="margin-top:10px;" />
<iframe id="mitarbeiter-betriebsmittel" src="" style="margin-top:10px;" />
<iframe id="mitarbeiter-funktionen" src="" style="margin-top:10px;"/>
<?php
if($rechte->isBerechtigt('buchung/mitarbeiter'))
echo '<vbox id="mitarbeiter-buchung" style="margin-top:10px;" />';
if($rechte->isBerechtigt('vertrag/mitarbeiter'))
echo '<vbox id="mitarbeiter-vertrag" style="margin-top:10px;" />';
?>
<iframe id="mitarbeiter-termine" src="" style="margin-top:10px;" />
</tabpanels>
</tabbox>
</vbox>
</vbox>
</overlay>
+56 -36
View File
@@ -22,22 +22,27 @@ require_once('../../config/vilesci.config.inc.php');
?>
var global_year;
var global_url;
var global_year;
var global_url;
function getProperties()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var tree=document.getElementById('tree-projektmenue');
// Wenn auf die Ueberschrift geklickt wird, soll nix passieren
if(tree.currentIndex==-1)
{
alert("Kein gültiges Projekt ausgewählt!");
return;
}
projekt_kurzbz=getTreeCellText(tree, "treecol-projektmenue-projekt_kurzbz", tree.currentIndex);
if(typeof(ProjektSelectKurzbz)!='undefined')
projekt_kurzbz = ProjektSelectKurzbz;
else
{
alert("Kein gültiges Projekt ausgewählt!");
return;
}
}
else
projekt_kurzbz=getTreeCellText(tree, "treecol-projektmenue-projekt_kurzbz", tree.currentIndex);
}
function showStudienjahr()
@@ -47,27 +52,35 @@ function showStudienjahr()
{
var datumAktuell = new Date();
var jahrAktuell = datumAktuell.getFullYear();
global_year = jahrAktuell;
global_year = jahrAktuell;
}
var tree=document.getElementById('tree-projektmenue');
// Wenn auf die Ueberschrift geklickt wird, soll nix passieren
if(tree.currentIndex==-1)
{
alert("Kein gültiges Projekt ausgewählt!");
return;
}
projekt_kurzbz=getTreeCellText(tree, "treecol-projektmenue-projekt_kurzbz", tree.currentIndex);
if(typeof(ProjektSelectKurzbz)!='undefined')
projekt_kurzbz = ProjektSelectKurzbz;
else
{
alert("Kein gültiges Projekt ausgewählt!");
return;
}
}
else
{
projekt_kurzbz=getTreeCellText(tree, "treecol-projektmenue-projekt_kurzbz", tree.currentIndex);
}
if(projekt_kurzbz == '')
{
oe_kurzbz = getTreeCellText(tree, "treecol-projektmenue-oe", tree.currentIndex);
oe_kurzbz = getTreeCellText(tree, "treecol-projektmenue-oe", tree.currentIndex);
var url = 'projekt/gantt.svg.php?oe='+oe_kurzbz+'&studienjahr='+(global_year-1)+'&ansicht=studienjahr';
global_url=url;
global_url=url;
}
else
{
var url = 'projekt/gantt.svg.php?projekt='+projekt_kurzbz+'&studienjahr='+(global_year-1)+'&ansicht=studienjahr';
global_url = url;
global_url = url;
}
document.getElementById('iframe-gant-projekt').contentWindow.location.href=url;
@@ -79,33 +92,40 @@ function showKalenderjahr()
{
var datumAktuell = new Date();
var jahrAktuell = datumAktuell.getFullYear();
global_year = jahrAktuell;
global_year = jahrAktuell;
}
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var tree=document.getElementById('tree-projektmenue');
// Wenn auf die Ueberschrift geklickt wird, soll nix passieren
if(tree.currentIndex==-1)
{
alert("Kein gültiges Projekt ausgewählt!");
return;
}
projekt_kurzbz=getTreeCellText(tree, "treecol-projektmenue-projekt_kurzbz", tree.currentIndex);
if(typeof(ProjektSelectKurzbz)!='undefined')
projekt_kurzbz = ProjektSelectKurzbz;
else
{
alert("Kein gültiges Projekt ausgewählt!");
return;
}
}
else
projekt_kurzbz=getTreeCellText(tree, "treecol-projektmenue-projekt_kurzbz", tree.currentIndex);
if(projekt_kurzbz == '')
{
oe_kurzbz = getTreeCellText(tree, "treecol-projektmenue-oe", tree.currentIndex);
oe_kurzbz = getTreeCellText(tree, "treecol-projektmenue-oe", tree.currentIndex);
var url = 'projekt/gantt.svg.php?oe='+oe_kurzbz+'&studienjahr='+global_year+'&ansicht=kalenderjahr';
global_url = url;
global_url = url;
}
else
{
var url = 'projekt/gantt.svg.php?projekt='+projekt_kurzbz+'&studienjahr='+global_year+'&ansicht=kalenderjahr';
global_url = url;
global_url = url;
}
global_url = url;
document.getElementById('iframe-gant-projekt').contentWindow.location.href=url;
document.getElementById('iframe-gant-projekt').contentWindow.location.href=url;
}
function showZeitraum(beginn, ende)
@@ -114,36 +134,36 @@ function showZeitraum(beginn, ende)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var tree=document.getElementById('tree-projektmenue');
// Wenn auf die Ueberschrift geklickt wird, soll nix passieren
if(tree.currentIndex==-1)
{
alert("Kein gültiges Projekt ausgewählt!");
return;
}
}
projekt_kurzbz=getTreeCellText(tree, "treecol-projektmenue-projekt_kurzbz", tree.currentIndex);
if(projekt_kurzbz == '')
{
oe_kurzbz = getTreeCellText(tree, "treecol-projektmenue-oe", tree.currentIndex);
oe_kurzbz = getTreeCellText(tree, "treecol-projektmenue-oe", tree.currentIndex);
var url = 'projekt/gantt.svg.php?oe='+oe_kurzbz+'&beginn='+beginn+'&ende='+ende;
global_url = url;
global_url = url;
}
global_url = url;
document.getElementById('iframe-gant-projekt').contentWindow.location.href=url;
document.getElementById('iframe-gant-projekt').contentWindow.location.href=url;
}
else
alert('kein gültiges Datum eingetragen');
}
function showYear()
{
var datumAktuell = new Date();
var jahrAktuell = datumAktuell.getFullYear();
global_year = jahrAktuell;
global_year = jahrAktuell;
foo = document.getElementById('toolbarbutton-menuitem-gantt-kalenderjahr');
checked=foo.getAttribute('checked');
// kalenderjahr checked
@@ -207,7 +227,7 @@ function showYearPlus()
}
function printGantt()
{
{
foo = window.open(global_url);
foo.onload = function ()
{
Regular → Executable
View File
+77 -10
View File
@@ -149,7 +149,9 @@ function onselectProjekt()
var beginn=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#beginn" ));
var ende=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#ende" ));
var budget=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#budget" ));
var farbe=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#farbe" ));
var farbe=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#farbe" ));
var aufwand_pt=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#aufwand_pt" ));
var anzahl_ma=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#anzahl_ma" ));
var aufwandstyp_kurzbz=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#aufwandstyp_kurzbz" ));
//Daten den Feldern zuweisen
@@ -164,7 +166,9 @@ function onselectProjekt()
document.getElementById('textbox-projekt-detail-ende').value=ende;
document.getElementById('textbox-projekt-detail-budget').value=budget;
document.getElementById('textbox-projekt-detail-farbe').value=farbe;
document.getElementById('checkbox-projekt-detail-neu').checked=false;
document.getElementById('checkbox-projekt-detail-neu').checked=false;
document.getElementById('textbox-projekt-anzahl_ma').value=anzahl_ma;
document.getElementById('textbox-projekt-aufwand_pt').value=aufwand_pt;
MenulistSelectItemOnValue('menulist-projekt-detail-aufwandstyp', aufwandstyp_kurzbz);
@@ -174,7 +178,7 @@ function onselectProjekt()
ressource = document.getElementById('box-projekt-ressourcen');
ressource.LoadRessourceTree(projekt_kurzbz,'');
makeProjektAnalyse()
}
// ****
@@ -193,9 +197,11 @@ function saveProjektDetail()
beginn = document.getElementById('textbox-projekt-detail-beginn').iso;
ende = document.getElementById('textbox-projekt-detail-ende').iso;
budget = document.getElementById('textbox-projekt-detail-budget').value;
farbe = document.getElementById('textbox-projekt-detail-farbe').value;
farbe = document.getElementById('textbox-projekt-detail-farbe').value;
neu = document.getElementById('checkbox-projekt-detail-neu').checked;
aufwandstyp_kurzbz = MenulistGetSelectedValue('menulist-projekt-detail-aufwandstyp');
aufwandstyp_kurzbz = MenulistGetSelectedValue('menulist-projekt-detail-aufwandstyp');
anzahl_ma = document.getElementById('textbox-projekt-anzahl_ma').value;
aufwand_pt = document.getElementById('textbox-projekt-aufwand_pt').value;
var soapBody = new SOAPObject("saveProjekt");
//soapBody.appendChild(new SOAPObject("username")).val('joe');
@@ -211,7 +217,9 @@ function saveProjektDetail()
projekt.appendChild(new SOAPObject("ende")).val(ende);
projekt.appendChild(new SOAPObject("budget")).val(budget);
projekt.appendChild(new SOAPObject("farbe")).val(farbe);
projekt.appendChild(new SOAPObject("aufwandstyp_kurzbz")).val(aufwandstyp_kurzbz);
projekt.appendChild(new SOAPObject("aufwandstyp_kurzbz")).val(aufwandstyp_kurzbz);
projekt.appendChild(new SOAPObject("anzahl_ma")).val(anzahl_ma);
projekt.appendChild(new SOAPObject("aufwand_pt")).val(aufwand_pt);
if(neu)
projekt.appendChild(new SOAPObject("neu")).val('true');
@@ -334,7 +342,10 @@ function ProjektDetailReset()
document.getElementById('textbox-projekt-detail-beschreibung').value='';
document.getElementById('textbox-projekt-detail-beginn').value='';
document.getElementById('textbox-projekt-detail-ende').value='';
document.getElementById('textbox-projekt-detail-budget').value='';
document.getElementById('textbox-projekt-detail-budget').value='';
document.getElementById('textbox-projekt-anzahl_ma').value='';
document.getElementById('textbox-projekt-aufwand_pt').value='';
document.getElementById('textbox-projekt-detail-projektwuerdigkeit').value='';
}
// ****
@@ -349,9 +360,11 @@ function ProjektDisableFields(val)
document.getElementById('textbox-projekt-detail-beginn').disabled=val;
document.getElementById('textbox-projekt-detail-ende').disabled=val;
document.getElementById('textbox-projekt-detail-budget').disabled=val;
document.getElementById('textbox-projekt-detail-farbe').disabled=val;
document.getElementById('textbox-projekt-detail-farbe').disabled=val;
document.getElementById('button-projekt-detail-speichern').disabled=val;
document.getElementById('menulist-projekt-detail-aufwandstyp').disabled=val;
document.getElementById('menulist-projekt-detail-aufwandstyp').disabled=val;
document.getElementById('textbox-projekt-anzahl_ma').disabled=val;
document.getElementById('textbox-projekt-aufwand_pt').disabled=val;
}
@@ -372,11 +385,65 @@ function ProjektNeu()
document.getElementById('textbox-projekt-detail-projekt_kurzbz').disabled=false;
document.getElementById('checkbox-projekt-detail-neu').checked=true;
document.getElementById('caption-projekt-detail').label='Neues Projekt';
document.getElementById('textbox-projekt-detail-farbe').value='#FF0000';
document.getElementById('textbox-projekt-detail-farbe').value='#FF0000';
document.getElementById('textbox-projekt-anzahl_ma').disabled=false;
document.getElementById('textbox-projekt-aufwand_pt').disabled=false;
//Detail Tab auswaehlen
document.getElementById('tabs-projekt-main').selectedItem=document.getElementById('tab-projekt-detail');
}
function makeProjektAnalyse(){
var ergebnis_el = document.getElementById('textbox-projekt-detail-projektwuerdigkeit');
ergebnis_el.value="";
var anzahl_ma = document.getElementById('textbox-projekt-anzahl_ma').value;
var aufwand_pt = document.getElementById('textbox-projekt-aufwand_pt').value;
var budget = document.getElementById('textbox-projekt-detail-budget').value;
var beginn = document.getElementById('textbox-projekt-detail-beginn').value;
var ende = document.getElementById('textbox-projekt-detail-ende').value;
if (!anzahl_ma || !aufwand_pt || !budget || !beginn || !ende)
{
ergebnis_el.value = 'Angaben unvollständig';
}
else
{
var beginn_arr = beginn.split(".");
var ende_arr = ende.split(".");
var date1 = new Date(beginn_arr[2],beginn_arr[1],beginn_arr[0]);
var date2 = new Date(ende_arr[2],ende_arr[1],ende_arr[0]);
var dauerTage = parseInt((date2 - date1) / (1000 * 60 * 60 * 24));
var punkte_gesamt = 0;
var projekttyp = '';
if (aufwand_pt < 10) punkte_gesamt += 1;
else if (aufwand_pt <= 50) punkte_gesamt += 4;
else if (aufwand_pt <= 250) punkte_gesamt += 8;
else punkte_gesamt += 8;
if (anzahl_ma < 3) punkte_gesamt += 1;
else if (anzahl_ma <= 5) punkte_gesamt += 3;
else if (anzahl_ma <= 20) punkte_gesamt += 6;
else punkte_gesamt += 9;
if (budget < 5000) punkte_gesamt += 1;
else if (budget <= 25000) punkte_gesamt += 2;
else if (budget <= 500000) punkte_gesamt += 4;
else punkte_gesamt += 6;
if (dauerTage < 30) punkte_gesamt += 0;
else if (dauerTage <= 90) punkte_gesamt += 4;
else if (dauerTage <= 360) punkte_gesamt += 5;
else punkte_gesamt += 7;
if (punkte_gesamt <= 8) projekttyp = 'Vorhaben';
else if (punkte_gesamt <= 15) projekttyp = 'Kleinprojekt';
else if (punkte_gesamt <= 30) projekttyp = 'Projekt';
else projekttyp = 'Großrojekt';
ergebnis_el.value = projekttyp;
}
}
function ProjektPrintStatusbericht()
{
+2 -2
View File
@@ -63,7 +63,7 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/projekt/projektdetail.overlay.xul.
<!-- ************* -->
<!-- Bem.: style="visibility:collapse" versteckt eine Spalte -->
<tree id="tree-projekt" seltype="single" hidecolumnpicker="false" flex="1"
datasources="../../rdf/projekt.rdf.php?foo=<?php echo time(); ?>" ref="http://www.technikum-wien.at/projekt/alle-projekte"
datasources="../rdf/projekt.rdf.php?nocache=<?php echo time(); ?>" ref="http://www.technikum-wien.at/projekt/alle-projekte"
style="margin:0px;height:250px" enableColumnDrag="true"
onselect="onselectProjekt(this);"
persist="height"
@@ -154,5 +154,5 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/projekt/projektdetail.overlay.xul.
</tabpanels>
</tabbox>
</vbox>
</vbox>
</vbox>
</overlay>
+81
View File
@@ -0,0 +1,81 @@
<?php
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/functions.inc.php');
?>
function updateProjektRessource()
{
if(projekt_ressource_id!='')
{
aufwand = document.getElementById("textbox-ressource-aufwand").value;
if (document.getElementById("leitung").selected)
funktion_kurzbz = 'Leitung';
else
funktion_kurzbz = 'Mitarbeiter';
try
{
var soapBody = new SOAPObject("saveProjektRessource");
var projektRessource = new SOAPObject("projektRessource");
projektRessource.appendChild(new SOAPObject("projekt_ressource_id")).val(projekt_ressource_id);
if(projekt_kurzbz != '')
{
projektRessource.appendChild(new SOAPObject("projektphase_id")).val('');
projektRessource.appendChild(new SOAPObject("projekt_kurzbz")).val(projekt_kurzbz);
}
else if(projektphase_id != '')
{
projektRessource.appendChild(new SOAPObject("projektphase_id")).val(projektphase_id);
projektRessource.appendChild(new SOAPObject("projekt_kurzbz")).val('');
}
projektRessource.appendChild(new SOAPObject("ressource_id")).val(ressource_id);
projektRessource.appendChild(new SOAPObject("funktion_kurzbz")).val(funktion_kurzbz);
projektRessource.appendChild(new SOAPObject("beschreibung")).val(beschreibung);
projektRessource.appendChild(new SOAPObject("aufwand")).val(aufwand);
soapBody.appendChild(projektRessource);
var sr = new SOAPRequest("saveProjektRessource",soapBody);
SOAPClient.Proxy="<?php echo APP_ROOT;?>soap/ressource_projekt.soap.php?"+gettimestamp();
function mycallb(obj)
{
var me=obj;
this.invoke=function (respObj)
{
try
{
var id = respObj.Body[0].saveProjektRessourceResponse[0].message[0].Text;
}
catch(e)
{
var fehler = respObj.Body[0].Fault[0].faultstring[0].Text;
alert('Fehler: '+fehler);
return;
}
me.RefreshRessource();
}
}
var cb=new mycallb(this);
//SOAPClient.SendRequest(sr,cb.invoke);
SOAPClient.SendRequest(sr);
}
catch(e)
{
debug("Ressource load failed with exception: "+e);
}
}
//window.opener.location.reload(false);
window.close();
}
+117
View File
@@ -0,0 +1,117 @@
<?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>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Gerald Raab <erald.raab@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
$projekt_ressource_id = $_GET["id"];
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/ressource.class.php');
$ressource = new ressource();
$ressource->getSingleProjektRessource($projekt_ressource_id);
$aufwand = $ressource->aufwand;
$funktion_kurzbz = $ressource->funktion_kurzbz;
$ressource_id = $ressource->ressource_id;
$projektphase_id = $ressource->projektphase_id;
$beschreibung = $ressource->beschreibung;
$projekt_kurzbz = $ressource->projekt_kurzbz;
if ($funktion_kurzbz == "Leitung")
{
$leitung_sel = ' selected="true"';
$mitarbeiter_sel = '';
}
else
{
$leitung_sel = '';
$mitarbeiter_sel = ' selected="true"';
}
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"?>'."\n";
echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';
?>
<window id="window-ressource-neu" title="Projektressource verwalten"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<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/functions.js.php"></script>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>content/projekt/projekt_ressource.window.js.php"></script>
<script type="text/javascript">
var projekt_ressource_id = '<?php echo $projekt_ressource_id ?>';
var aufwand = '<?php echo $aufwand; ?>';
var funktion_kurzbz = '<?php echo $funktion_kurzbz; ?>';
var projekt_kurzbz = '<?php echo $projekt_kurzbz; ?>';
var projektphase_id = '<?php echo $projektphase_id; ?>';
var ressource_id = '<?php echo $ressource_id; ?>';
var funktion_kurzbz = '<?php echo $funktion_kurzbz; ?>';
var beschreibung = '<?php echo $beschreibung; ?>';
</script>
<vbox>
<checkbox id="checkbox-ressource-neu" hidden="true"/>
<groupbox id="groupbox-ressource" flex="1">
<caption label="Details"/>
<grid id="grid-ressource-detail" style="overflow:auto;margin:4px;" flex="1">
<columns >
<column flex="1"/>
<column flex="5"/>
</columns>
<rows>
<row>
<label value="ProjektRessourceID" control="textbox-ressource-projekt_ressource_id"/>
<textbox id="textbox-ressource-projekt_ressource_id" value="<?php echo $projekt_ressource_id; ?>" disabled="true" />
</row>
<row>
<label value="Funktion" control="textbox-ressource-funktionradio"/>
<radiogroup>
<radio id="leitung" label="Leitung" <?php echo $leitung_sel; ?>/>
<radio id="mitarbeiter" label="Mitarbeiter" <?php echo $mitarbeiter_sel; ?>/>
</radiogroup>
</row>
<row>
<label value="Aufwand" control="textbox-ressource-aufwand"/>
<textbox id="textbox-ressource-aufwand" value="<?php echo $aufwand; ?>" maxlength="256"/>
</row>
</rows>
</grid>
<hbox>
<spacer flex="1" />
<button id="button-ressource-speichern" oncommand="updateProjektRessource()" label="Speichern" />
</hbox>
</groupbox>
</vbox>
</window>
+30 -6
View File
@@ -58,6 +58,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<spacer />
</hbox>
</row>
<row>
<label value="OE (Organisationseinheit)" control="textbox-projekt-detail-oe_kurzbz"/>
<hbox>
@@ -100,21 +101,43 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<label value="Beschreibung" control="textbox-projekt-detail-beschreibung"/>
<textbox id="textbox-projekt-detail-beschreibung" multiline="true" disabled="true" rows="10"/>
</row>
<row>
<row style="background-color:#eeeeee">
<label value="Projektwürdigkeit" control="textbox-projekt-detail-projektwuerdigkeit" style="font-weight:bold;"/>
<hbox>
<textbox id="textbox-projekt-detail-projektwuerdigkeit" size="16" maxlength="16" readonly="true" style="font-weight:bold;"/>
<spacer />
</hbox>
</row>
<row style="background-color:#eeeeee">
<label value="Beginn" control="textbox-projekt-detail-beginn"/>
<box class="Datum" id="textbox-projekt-detail-beginn" disabled="true"/>
<box class="Datum" id="textbox-projekt-detail-beginn" disabled="true" onchange="makeProjektAnalyse()"/>
</row>
<row>
<row style="background-color:#eeeeee">
<label value="Ende" control="textbox-projekt-detail-ende"/>
<box class="Datum" id="textbox-projekt-detail-ende" disabled="true"/>
<box class="Datum" id="textbox-projekt-detail-ende" disabled="true" onchange="makeProjektAnalyse()"/>
</row>
<row>
<row style="background-color:#eeeeee">
<label value="Budget" control="textbox-projekt-detail-budget"/>
<hbox>
<textbox id="textbox-projekt-detail-budget" size="12" maxlength="13" disabled="true"/>
<textbox id="textbox-projekt-detail-budget" size="12" maxlength="13" disabled="true" onchange="makeProjektAnalyse()"/>
<spacer />
</hbox>
</row>
<row style="background-color:#eeeeee">
<label value="Anzahl MA" control="textbox-projekt-anzahl_ma"/>
<hbox>
<textbox id="textbox-projekt-anzahl_ma" size="7" maxlength="7" disabled="true" onchange="makeProjektAnalyse()"/>
</hbox>
<spacer />
</row>
<row style="background-color:#eeeeee">
<label value="Aufwand PT" control="textbox-projekt-aufwand_pt" />
<hbox>
<textbox id="textbox-projekt-aufwand_pt" size="7" maxlength="7" disabled="true" onchange="makeProjektAnalyse()"/>
</hbox>
<spacer />
</row>
<row>
<label value="Farbe" control="textbox-projekt-detail-farbe"/>
<hbox>
@@ -122,6 +145,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<spacer />
</hbox>
</row>
<row>
<label value="Aufwandstyp" control="textbox-projekt-detail-aufwandstyp"/>
<hbox>
Regular → Executable
+1
View File
@@ -224,6 +224,7 @@ function saveRessource()
SOAPClient.SendRequest(sr, clb_saveRessource);
}
}
// ****
+601 -581
View File
File diff suppressed because it is too large Load Diff
+4 -4
View File
@@ -127,7 +127,7 @@ if($studiengang_kz!='')
$worksheet->write($zeile,++$spalte, $row->status);
if(mb_strlen($row->status)>$maxlength[$spalte])
$maxlength[$spalte]=mb_strlen($row->status);
$worksheet->write($zeile,++$spalte, $row->semester, $format_center);
if(mb_strlen($row->semester)>$maxlength[$spalte])
$maxlength[$spalte]=mb_strlen($row->semester);
@@ -142,11 +142,11 @@ if($studiengang_kz!='')
}
}
}
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet->setColumn($i, $i, $breite+2);
$workbook->close();
}
else
@@ -166,4 +166,4 @@ else
</html>
';
}
?>
?>
@@ -398,6 +398,8 @@ function StudentAbschlusspruefungAuswahl()
document.getElementById('student-abschlusspruefung-menulist-notekommpruef').value=notekommpruef;
document.getElementById('student-abschlusspruefung-menulist-akadgrad').value=akadgrad_id;
document.getElementById('student-abschlusspruefung-datum-datum').value=datum;
if(uhrzeit=='')
uhrzeit='00:00';
document.getElementById('student-abschlusspruefung-datum-uhrzeit').value=uhrzeit;
document.getElementById('student-abschlusspruefung-datum-sponsion').value=sponsion;
document.getElementById('student-abschlusspruefung-menulist-typ').value=pruefungstyp_kurzbz;
+10 -10
View File
@@ -5223,16 +5223,16 @@ function StudentPrintAusbildungsvertrag(event)
tree.view.selection.getRangeAt(t,start,end);
for (var v = start.value; v <= end.value; v++)
{
var col = tree.columns ? tree.columns["student-treecol-uid"] : "student-treecol-uid";
var uid=tree.view.getCellText(v,col);
paramList += ';'+uid;
var col = tree.columns ? tree.columns["student-treecol-prestudent_id"] : "student-treecol-prestudent_id";
var prestudentId=tree.view.getCellText(v,col);
paramList += ';'+prestudentId;
stg_kz=getTreeCellText(tree,"student-treecol-studiengang_kz", v);
}
}
if(paramList.replace(";",'')=='')
{
alert('Bitte einen Studenten auswaehlen');
alert('Bitte mindestens eine Person auswaehlen');
return false;
}
if (event.shiftKey)
@@ -5249,7 +5249,7 @@ function StudentPrintAusbildungsvertrag(event)
}
//PDF erzeugen
window.open('<?php echo APP_ROOT; ?>content/pdfExport.php?xml=ausbildungsvertrag.xml.php&xsl=Ausbildungsver&style_xsl=AusbildStatus&output='+output+'&uid='+paramList,'Ausbildungsvertrag', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
window.open('<?php echo APP_ROOT; ?>content/pdfExport.php?xml=ausbildungsvertrag.xml.php&xsl=Ausbildungsver&style_xsl=AusbildStatus&output='+output+'&prestudent_id='+paramList,'Ausbildungsvertrag', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
}
//****
@@ -5272,16 +5272,16 @@ function StudentPrintAusbildungsvertragEnglisch(event)
tree.view.selection.getRangeAt(t,start,end);
for (var v = start.value; v <= end.value; v++)
{
var col = tree.columns ? tree.columns["student-treecol-uid"] : "student-treecol-uid";
var uid=tree.view.getCellText(v,col);
paramList += ';'+uid;
var col = tree.columns ? tree.columns["student-treecol-prestudent_id"] : "student-treecol-prestudent_id";
var prestudentId=tree.view.getCellText(v,col);
paramList += ';'+prestudentId;
stg_kz=getTreeCellText(tree,"student-treecol-studiengang_kz", v);
}
}
if(paramList.replace(";",'')=='')
{
alert('Bitte mindestens einen Studenten auswaehlen');
alert('Bitte mindestens eine Person auswaehlen');
return false;
}
if (event.shiftKey)
@@ -5298,7 +5298,7 @@ function StudentPrintAusbildungsvertragEnglisch(event)
}
//PDF erzeugen
window.open('<?php echo APP_ROOT; ?>content/pdfExport.php?xml=ausbildungsvertrag.xml.php&xsl=AusbVerEng&style_xsl=AusbVerEngHead&output='+output+'&uid='+paramList,'AusbildungsvertragEng', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
window.open('<?php echo APP_ROOT; ?>content/pdfExport.php?xml=ausbildungsvertrag.xml.php&xsl=AusbVerEng&style_xsl=AusbVerEngHead&output='+output+'&prestudent_id='+paramList,'AusbildungsvertragEng', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
}
// ****
+171 -171
View File
@@ -1,171 +1,171 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="expires" content="0">
<meta http-equiv="cache-control" content="no-cache">
<title>FH Complete</title>
<link href="skin/fhcomplete_website.css" rel="stylesheet" type="text/css">
<script type="text/javascript">
function PopupZugangsdaten (Adresse)
{
MeinFenster = window.open(Adresse, "Zugangsdaten", "width=800,height=550,left=100,top=200,location=no,menubar=no,resizable=yes");
MeinFenster.focus();
}
</script>
</head>
<div align="center" style="padding:30px;">
<table border="0" cellpadding="0" cellspacing="0" width="500px">
<tr>
<td align="center"><a href="index.html"><img title="FH Complete" height="90" alt="FH Complete" src="skin/images/fh-complete_weiss.png"></a></td>
</tr>
<tr height="40">
<td>&nbsp;</td>
</tr>
<tr>
<td>
<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td colspan="5">
<table align="center" cellpadding="0" cellspacing="0"><tr>
<td class="menu"><a class="menu" href="index.html">ÜBERBLICK</a></td>
<td class="menu"><a class="menu" href="fhcomplete_anforderungen.html">ANFORDERUNGEN</a></td>
<td class="menu"><a class="menu" href="fhcomplete_community.html">COMMUNITY</a></td>
</tr></table>
</td>
</tr>
<tr><td colspan="5">&nbsp;</td></tr>
<tr>
<td class="menu"><a class="menu" href="fhcomplete_cis.html">CIS</a></td>
<td class="menuselected"><a class="menuselected" href="fhcomplete_fas.html">FAS-ONLINE</a></td>
<td class="menu"><a class="menu" href="fhcomplete_tempus.html">TEMPUS</a></td>
<td class="menu"><a class="menu" href="fhcomplete_wawi.html">WAWI</a></td>
<td class="menu"><a class="menu" href="fhcomplete_vilesci.html">VILESCI</a></td>
</tr>
</table>
</td>
</tr>
<tr height="30">
<td colspan="7">&nbsp;</td>
</tr>
<tr>
<td colspan="7">
<img title="FAS" height="60" alt="FAS-Logo" src="skin/images/fas_logo_weiss.png">
</td>
</tr>
<tr>
<td colspan="7">
<p>
<br/><br/>
Das FAS ist ein freies Administrations-System, welches die
gesamte Verwaltung von Studierenden und MitarbeiterInnen
speziell für Hochschulen unterstützt. Vom Eintritt eines/einer
MitarbeiterIn bis zum Ausscheiden und vom Interessenten
bis zum/zur Absolventen/Absolventin verwaltet das Programm
alle relevanten Daten rund um den Lehrbetrieb einer
Hochschule.<br/><br/><br/>
</p>
</td>
</tr>
<tr>
<td colspan="7">
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td valign="top" width="50%">
<p style="padding-left:30px; padding-right:30px;" >
<b>STUDIERENDE</b><br/>
Der komplette Lebenszyklus vom Interessentenstatus über
die BewerberInnen zu den Studierenden bis zu den AbsolventInnen
wird im FAS abgebildet. Es werden Lehrverbände
und Gruppen definiert und den Studierenden zugewiesen.
Kontaktdaten und Dokumente werden erfasst. Noten, Prüfungen,
Funktionen und Projektarbeiten werden organisiert.<br/><br/>
<b>PERSONAL</b><br/>
Nicht nur Kontaktdaten oder Personaldaten, sondern auch
alle meldungspflichtigen Informationen werden hier erfasst
und gewartet. Die MitarbeiterInnen werden Organisationseinheiten
zugeteilt und somit lässt sich auf Knopfdruck ein
detailliertes Organigramm erstellen. Zusätzlich werden den
MitarbeiterInnen noch Funktionen innerhalb des Organisationsbaumes
zugeteilt.<br/><br/>
<b>Kommunikation</b><br/>
Hier haben Sie alle Infos zur internen Kommunikation
auf einen Blick. Personensuche, Mailgruppen, Telefonnummern...
</p>
</td>
<td valign="top" width="50%">
<p style="padding-left:30px; padding-right:30px;">
<b>LEHRAUFTRÄGE</b><br/>
Per Drag&Drop können schnell LektorInnen den Lehrveranstaltungen
zugewiesen werden und daraus Lehraufträge
erstellt werden. Die Gesamtkosten sind automatisch und
übersichtlich aufgestellt. Auch das nachträgliche Ändern
von LektorInnen ist mit einem Klick erledigt.<br/><br/>
<b>MELDUNG</b><br/>
Die gesamte BIS-Meldung wird hier automatisiert erstellt.
Plausibilitätsprüfungen säubern die Daten schon im Vorfeld,
damit bei der Meldung selbst der Aufwand so gering wie
möglich bleibt. Sie können hier praktisch nichts mehr falsch
machen. Das Zittern vor der BIS-Meldung war gestern!<br/><br/>
<b>EXTRAS</b><br/>
</p>
<ul style="padding-left:30px; padding-right:30px;">
<li>Firmenverwaltung</li>
<li>Reihungstestverwaltung</li>
<li>Diverse Statistiken</li>
<li>Zeugnisarchivierung</li>
<li>Kontoführung der Studierenden</li>
<li>Entlehnsystem für Betriebsmittel</li>
<li>Schnittstellen zum Zutrittskartensystem</li>
<li>Verwaltung und Abrechung der Projektarbeiten<br/>
(Master Thesen etc.)</li>
<li>Incoming- und Outgoingverwaltung</li>
<li>Abschlussprüfungen</li>
<li>und vieles mehr!</li>
</ul>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td colspan="7">
<br/><br/>
<a href="fhcomplete_logindaten.html" onclick="PopupZugangsdaten(this.href); return false">Zugangsdaten und Einstellungen</a>
<a href="http://fhcomplete.org/demo/content/fas.xul.php" target="blank">
<p style="text-align: center">Weiter zur Demoseite</p>
<img title="FAS-Screenshot" width="266" alt="FAS-Screenshot" src="skin/images/fas-screenshot.png">
</a>
<br/><br/>
</td>
</tr>
<tr height="60">
<td colspan="7"></td>
</tr>
<tr>
<td colspan="7">
<table align="center" border="0" cellpadding="0" cellspacing="0" width="10%">
<tr>
<td width="100%">
<p style="padding-left:30px; padding-right:30px;" >
<a style="text-decoration:none;font-size:12px;" href="fhcomplete_impressum.html">IMPRESSUM</a>
</p>
</td>
<td width="100%">
<p style="padding-left:30px; padding-right:30px;" >
<a style="text-decoration:none;font-size:12px;" href="fhcomplete_kontakt.html">KONTAKT</a>
</p>
</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
</body>
</html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="expires" content="0">
<meta http-equiv="cache-control" content="no-cache">
<title>FH Complete</title>
<link href="skin/fhcomplete_website.css" rel="stylesheet" type="text/css">
<script type="text/javascript">
function PopupZugangsdaten (Adresse)
{
MeinFenster = window.open(Adresse, "Zugangsdaten", "width=800,height=550,left=100,top=200,location=no,menubar=no,resizable=yes");
MeinFenster.focus();
}
</script>
</head>
<div align="center" style="padding:30px;">
<table border="0" cellpadding="0" cellspacing="0" width="500px">
<tr>
<td align="center"><a href="index.html"><img title="FH Complete" height="90" alt="FH Complete" src="skin/images/fh-complete_weiss.png"></a></td>
</tr>
<tr height="40">
<td>&nbsp;</td>
</tr>
<tr>
<td>
<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td colspan="5">
<table align="center" cellpadding="0" cellspacing="0"><tr>
<td class="menu"><a class="menu" href="index.html">ÜBERBLICK</a></td>
<td class="menu"><a class="menu" href="fhcomplete_anforderungen.html">ANFORDERUNGEN</a></td>
<td class="menu"><a class="menu" href="fhcomplete_community.html">COMMUNITY</a></td>
</tr></table>
</td>
</tr>
<tr><td colspan="5">&nbsp;</td></tr>
<tr>
<td class="menu"><a class="menu" href="fhcomplete_cis.html">CIS</a></td>
<td class="menuselected"><a class="menuselected" href="fhcomplete_fas.html">FAS-ONLINE</a></td>
<td class="menu"><a class="menu" href="fhcomplete_tempus.html">TEMPUS</a></td>
<td class="menu"><a class="menu" href="fhcomplete_wawi.html">WAWI</a></td>
<td class="menu"><a class="menu" href="fhcomplete_vilesci.html">VILESCI</a></td>
</tr>
</table>
</td>
</tr>
<tr height="30">
<td colspan="7">&nbsp;</td>
</tr>
<tr>
<td colspan="7">
<img title="FAS" height="60" alt="FAS-Logo" src="skin/images/fas_logo_weiss.png">
</td>
</tr>
<tr>
<td colspan="7">
<p>
<br/><br/>
Das FAS ist ein freies Administrations-System, welches die
gesamte Verwaltung von Studierenden und MitarbeiterInnen
speziell für Hochschulen unterstützt. Vom Eintritt eines/einer
MitarbeiterIn bis zum Ausscheiden und vom Interessenten
bis zum/zur Absolventen/Absolventin verwaltet das Programm
alle relevanten Daten rund um den Lehrbetrieb einer
Hochschule.<br/><br/><br/>
</p>
</td>
</tr>
<tr>
<td colspan="7">
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td valign="top" width="50%">
<p style="padding-left:30px; padding-right:30px;" >
<b>STUDIERENDE</b><br/>
Der komplette Lebenszyklus vom Interessentenstatus über
die BewerberInnen zu den Studierenden bis zu den AbsolventInnen
wird im FAS abgebildet. Es werden Lehrverbände
und Gruppen definiert und den Studierenden zugewiesen.
Kontaktdaten und Dokumente werden erfasst. Noten, Prüfungen,
Funktionen und Projektarbeiten werden organisiert.<br/><br/>
<b>PERSONAL</b><br/>
Nicht nur Kontaktdaten oder Personaldaten, sondern auch
alle meldungspflichtigen Informationen werden hier erfasst
und gewartet. Die MitarbeiterInnen werden Organisationseinheiten
zugeteilt und somit lässt sich auf Knopfdruck ein
detailliertes Organigramm erstellen. Zusätzlich werden den
MitarbeiterInnen noch Funktionen innerhalb des Organisationsbaumes
zugeteilt.<br/><br/>
<b>Kommunikation</b><br/>
Hier haben Sie alle Infos zur internen Kommunikation
auf einen Blick. Personensuche, Mailgruppen, Telefonnummern...
</p>
</td>
<td valign="top" width="50%">
<p style="padding-left:30px; padding-right:30px;">
<b>LEHRAUFTRÄGE</b><br/>
Per Drag&Drop können schnell LektorInnen den Lehrveranstaltungen
zugewiesen werden und daraus Lehraufträge
erstellt werden. Die Gesamtkosten sind automatisch und
übersichtlich aufgestellt. Auch das nachträgliche Ändern
von LektorInnen ist mit einem Klick erledigt.<br/><br/>
<b>MELDUNG</b><br/>
Die gesamte BIS-Meldung wird hier automatisiert erstellt.
Plausibilitätsprüfungen säubern die Daten schon im Vorfeld,
damit bei der Meldung selbst der Aufwand so gering wie
möglich bleibt. Sie können hier praktisch nichts mehr falsch
machen. Das Zittern vor der BIS-Meldung war gestern!<br/><br/>
<b>EXTRAS</b><br/>
</p>
<ul style="padding-left:30px; padding-right:30px;">
<li>Firmenverwaltung</li>
<li>Reihungstestverwaltung</li>
<li>Diverse Statistiken</li>
<li>Zeugnisarchivierung</li>
<li>Kontoführung der Studierenden</li>
<li>Entlehnsystem für Betriebsmittel</li>
<li>Schnittstellen zum Zutrittskartensystem</li>
<li>Verwaltung und Abrechung der Projektarbeiten<br/>
(Master Thesen etc.)</li>
<li>Incoming- und Outgoingverwaltung</li>
<li>Abschlussprüfungen</li>
<li>und vieles mehr!</li>
</ul>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td colspan="7">
<br/><br/>
<a href="fhcomplete_logindaten.html" onclick="PopupZugangsdaten(this.href); return false">Zugangsdaten und Einstellungen</a>
<a href="http://fhcomplete.org/demo/content/fas.xul.php" target="blank">
<p style="text-align: center">Weiter zur Demoseite</p>
<img title="FAS-Screenshot" width="266" alt="FAS-Screenshot" src="skin/images/fas-screenshot.png">
</a>
<br/><br/>
</td>
</tr>
<tr height="60">
<td colspan="7"></td>
</tr>
<tr>
<td colspan="7">
<table align="center" border="0" cellpadding="0" cellspacing="0" width="10%">
<tr>
<td width="100%">
<p style="padding-left:30px; padding-right:30px;" >
<a style="text-decoration:none;font-size:12px;" href="fhcomplete_impressum.html">IMPRESSUM</a>
</p>
</td>
<td width="100%">
<p style="padding-left:30px; padding-right:30px;" >
<a style="text-decoration:none;font-size:12px;" href="fhcomplete_kontakt.html">KONTAKT</a>
</p>
</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
</body>
</html>
+11 -12
View File
@@ -16,8 +16,9 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*/
/**
* Klasse zur Verwaltung der Abschlusspruefungen
@@ -327,12 +328,12 @@ class abschlusspruefung extends basis_db
}
/**
* Liefert die letzte Abschlussprüfung eines Studenten
* @param type $student_uid
*/
public function getLastAbschlusspruefung($student_uid)
{
/**
* Liefert die letzte Abschlussprüfung eines Studenten
* @param type $student_uid
*/
public function getLastAbschlusspruefung($student_uid)
{
$qry = "SELECT
*
FROM
@@ -341,7 +342,7 @@ class abschlusspruefung extends basis_db
WHERE student_uid=".$this->db_add_param($student_uid, FHC_STRING, false)."
ORDER BY datum DESC LIMIT 1";
if($this->db_query($qry))
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
@@ -365,7 +366,6 @@ class abschlusspruefung extends basis_db
$this->insertamum = $row->insertamum;
$this->insertvon = $row->insertvon;
$this->ext_id = $row->ext_id;
}
return true;
}
@@ -374,7 +374,6 @@ class abschlusspruefung extends basis_db
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
}
}
?>
+27 -27
View File
@@ -16,8 +16,9 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*/
/**
* Klasse Adresse
@@ -279,20 +280,20 @@ class adresse extends basis_db
{
//Neuen Datensatz einfuegen
$qry='BEGIN;INSERT INTO public.tbl_adresse (person_id, name, strasse, plz, typ, ort, nation, insertamum, insertvon,
gemeinde, heimatadresse, zustelladresse, firma_id, updateamum, updatevon) VALUES('.
$this->db_add_param($this->person_id, FHC_INTEGER).', '.
$this->db_add_param($this->name).', '.
$this->db_add_param($this->strasse).', '.
$this->db_add_param($this->plz).', '.
$this->db_add_param(trim($this->typ)).', '.
$this->db_add_param($this->ort).', '.
$this->db_add_param($this->nation).', now(), '.
$this->db_add_param($this->insertvon).', '.
$this->db_add_param($this->gemeinde).', '.
$this->db_add_param($this->heimatadresse,FHC_BOOLEAN, false).', '.
$this->db_add_param($this->zustelladresse,FHC_BOOLEAN, false).', '.
$this->db_add_param($this->firma_id, FHC_INTEGER).', now(), '.
$this->db_add_param($this->updatevon).');';
gemeinde, heimatadresse, zustelladresse, firma_id, updateamum, updatevon) VALUES('.
$this->db_add_param($this->person_id, FHC_INTEGER).', '.
$this->db_add_param($this->name).', '.
$this->db_add_param($this->strasse).', '.
$this->db_add_param($this->plz).', '.
$this->db_add_param(trim($this->typ)).', '.
$this->db_add_param($this->ort).', '.
$this->db_add_param($this->nation).', now(), '.
$this->db_add_param($this->insertvon).', '.
$this->db_add_param($this->gemeinde).', '.
$this->db_add_param($this->heimatadresse,FHC_BOOLEAN, false).', '.
$this->db_add_param($this->zustelladresse,FHC_BOOLEAN, false).', '.
$this->db_add_param($this->firma_id, FHC_INTEGER).', now(), '.
$this->db_add_param($this->updatevon).');';
}
else
{
@@ -307,16 +308,16 @@ class adresse extends basis_db
' name='.$this->db_add_param($this->name).', '.
' strasse='.$this->db_add_param($this->strasse).', '.
' plz='.$this->db_add_param($this->plz).', '.
' typ='.$this->db_add_param(trim($this->typ)).', '.
' ort='.$this->db_add_param($this->ort).', '.
' nation='.$this->db_add_param($this->nation).', '.
' gemeinde='.$this->db_add_param($this->gemeinde).', '.
' firma_id='.$this->db_add_param($this->firma_id, FHC_INTEGER).','.
' updateamum= now(), '.
' updatevon='.$this->db_add_param($this->updatevon).', '.
' heimatadresse='.$this->db_add_param($this->heimatadresse, FHC_BOOLEAN, false).', '.
' zustelladresse='.$this->db_add_param($this->zustelladresse, FHC_BOOLEAN, false).' '.
'WHERE adresse_id='.$this->db_add_param($this->adresse_id, FHC_INTEGER, false).';';
' typ='.$this->db_add_param(trim($this->typ)).', '.
' ort='.$this->db_add_param($this->ort).', '.
' nation='.$this->db_add_param($this->nation).', '.
' gemeinde='.$this->db_add_param($this->gemeinde).', '.
' firma_id='.$this->db_add_param($this->firma_id, FHC_INTEGER).','.
' updateamum= now(), '.
' updatevon='.$this->db_add_param($this->updatevon).', '.
' heimatadresse='.$this->db_add_param($this->heimatadresse, FHC_BOOLEAN, false).', '.
' zustelladresse='.$this->db_add_param($this->zustelladresse, FHC_BOOLEAN, false).' '.
'WHERE adresse_id='.$this->db_add_param($this->adresse_id, FHC_INTEGER, false).';';
}
if($this->db_query($qry))
@@ -432,7 +433,6 @@ class adresse extends basis_db
$this->errormsg = 'Es ist kein Datensatz mit dieser ID vorhanden';
return false;
}
return true;
}
}
+7 -5
View File
@@ -15,9 +15,10 @@
* 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>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*/
require_once(dirname(__FILE__).'/basis_db.class.php');
@@ -156,8 +157,9 @@ class akadgrad extends basis_db
}
}
public function __toString(){
return $this->akadgrad_kurzbz;
public function __toString()
{
return $this->akadgrad_kurzbz;
}
}
?>
+439 -388
View File
@@ -1,388 +1,439 @@
<?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>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once(dirname(__FILE__).'/basis_db.class.php');
class akte extends basis_db
{
public $new;
public $result = array();
//Tabellenspalten
public $akte_id;
public $person_id;
public $dokument_kurzbz;
public $inhalt;
public $mimetype;
public $erstelltam;
public $gedruckt;
public $titel;
public $bezeichnung;
public $updateamum;
public $updatevon;
public $insertamum;
public $insertvon;
public $uid;
public $ext_id;
public $dms_id;
public $nachgereicht;
public $anmerkung;
public $titel_intern;
public $anmerkung_intern;
/**
* Konstruktor
* @param akte_id ID des zu ladenden Datensatzes
*/
public function __construct($akte_id=null)
{
parent::__construct();
if(!is_null($akte_id))
$this->load($akte_id);
}
/**
* Laedt einen Datensatz
* @param akte_id ID des zu ladenden Datensatzes
*/
public function load($akte_id)
{
//akte_id auf gueltigkeit pruefen
if(!is_numeric($akte_id) || $akte_id == '')
{
$this->errormsg = 'akte_id muss eine gueltige Zahl sein';
return false;
}
//laden des Datensatzes
$qry = "SELECT * FROM public.tbl_akte WHERE akte_id=".$this->db_add_param($akte_id, FHC_INTEGER);
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->akte_id = $row->akte_id;
$this->person_id = $row->person_id;
$this->dokument_kurzbz = $row->dokument_kurzbz;
$this->inhalt = $row->inhalt;
$this->mimetype = $row->mimetype;
$this->erstelltam = $row->erstelltam;
$this->gedruckt = $this->db_parse_bool($row->gedruckt);
$this->titel = $row->titel;
$this->bezeichnung = $row->bezeichnung;
$this->updateamum = $row->updateamum;
$this->updatevon = $row->updatevon;
$this->insertamum = $row->insertamum;
$this->insertvon = $row->insertvon;
$this->uid = $row->uid;
$this->dms_id = $row->dms_id;
$this->anmerkung = $row->anmerkung;
$this->nachgereicht = $this->db_parse_bool($row->nachgereicht);
$this->titel_intern = $row->titel_intern;
$this->anmerkung_intern = $row->anmerkung_intern;
return true;
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
/**
* Loescht einen Datensatz
* @param akte_id ID des zu loeschenden Datensatzes
* @return true wenn ok, false im Fehlerfall
*/
public function delete($akte_id)
{
//akte_id auf gueltigkeit pruefen
if(!is_numeric($akte_id) || $akte_id == '')
{
$this->errormsg = 'akte_id muss eine gueltige Zahl sein';
return false;
}
$qry = "DELETE FROM public.tbl_akte WHERE akte_id=".$this->db_add_param($akte_id, FHC_INTEGER);
if($this->db_query($qry))
{
//Log schreiben
return true;
}
else
{
$this->errormsg = 'Fehler beim Löschen';
return false;
}
}
/**
* Prueft die Variablen vor dem Speichern
*
* @return true wenn ok, sonst false
*/
protected function validate()
{
if($this->person_id=='')
{
$this->errormsg = 'Person ID muss angegeben werden';
return false;
}
if($this->dokument_kurzbz=='')
{
$this->errormsg = 'DokumentKurzbz muss angegeben werden';
return false;
}
return true;
}
/**
* Speichert den aktuellen Datensatz
* Wenn $neu auf true gesetzt ist wird ein neuer Datensatz angelegt
* andernfalls wird der Datensatz mit der ID in $akte_id aktualisiert
* @return true wenn ok, false im Fehlerfall
*/
public function save($new=null)
{
if(!$this->validate())
return false;
if($new==null)
$new = $this->new;
if($new)
{
//Neuen Datensatz anlegen
$qry = "BEGIN;INSERT INTO public.tbl_akte (person_id, dokument_kurzbz, inhalt, mimetype, erstelltam, gedruckt, titel,
bezeichnung, updateamum, updatevon, insertamum, insertvon, uid, dms_id, nachgereicht, anmerkung, titel_intern, anmerkung_intern ) VALUES (".
$this->db_add_param($this->person_id, FHC_INTEGER).', '.
$this->db_add_param($this->dokument_kurzbz).', '.
$this->db_add_param($this->inhalt).', '.
$this->db_add_param($this->mimetype).', '.
$this->db_add_param($this->erstelltam).', '.
$this->db_add_param($this->gedruckt, FHC_BOOLEAN).', '.
$this->db_add_param($this->titel).', '.
$this->db_add_param($this->bezeichnung).', '.
$this->db_add_param($this->updateamum).', '.
$this->db_add_param($this->updatevon).', '.
$this->db_add_param($this->insertamum).', '.
$this->db_add_param($this->insertvon).', '.
$this->db_add_param($this->uid).','.
$this->db_add_param($this->dms_id, FHC_INTEGER).','.
$this->db_add_param($this->nachgereicht, FHC_BOOLEAN).','.
$this->db_add_param($this->anmerkung).','.
$this->db_add_param($this->titel_intern).','.
$this->db_add_param($this->anmerkung_intern).');';
}
else
{
//Bestehenden Datensatz aktualisieren
$qry= "UPDATE public.tbl_akte SET".
" person_id=".$this->db_add_param($this->person_id, FHC_INTEGER).",".
" dokument_kurzbz=".$this->db_add_param($this->dokument_kurzbz).",".
" inhalt=".$this->db_add_param($this->inhalt).",".
" mimetype=".$this->db_add_param($this->mimetype).",".
" erstelltam=".$this->db_add_param($this->erstelltam).",".
" gedruckt=".$this->db_add_param($this->gedruckt,FHC_BOOLEAN).",".
" titel=".$this->db_add_param($this->titel).",".
" bezeichnung=".$this->db_add_param($this->bezeichnung).",".
" updateamum=".$this->db_add_param($this->updateamum).",".
" updatevon=".$this->db_add_param($this->updatevon).",".
" uid=".$this->db_add_param($this->uid).",".
" dms_id=".$this->db_add_param($this->dms_id, FHC_INTEGER).",".
" nachgereicht=".$this->db_add_param($this->nachgereicht, FHC_BOOLEAN).",".
" anmerkung=".$this->db_add_param($this->anmerkung).",".
" titel_intern=".$this->db_add_param($this->titel_intern).",".
" anmerkung_intern=".$this->db_add_param($this->anmerkung_intern).
" WHERE akte_id=".$this->db_add_param($this->akte_id, FHC_INTEGER);
}
if($this->db_query($qry))
{
if($new)
{
$qry = "SELECT currval('public.tbl_akte_akte_id_seq') as id";
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->akte_id = $row->id;
$this->db_query('COMMIT;');
return true;
}
else
{
$this->errormsg = 'Fehler beim Auslesen der Sequence';
$this->db_query('ROLLBACK');
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Auslesen der Sequence';
$this->db_query('ROLLBACK');
return false;
}
}
else
return true;
}
else
{
$this->errormsg = 'Fehler beim Speichern des Datensatzes';
return false;
}
}
/**
* Liefert die Akten einer Person
*
* @param $person_id
* @param $dokument_kurzbz
* @param $stg_kz -> wenn gesetzt werden nur Akten angezeigt die ZUSÄTZLICH zum Studiengang abgegeben worden sind ohne Zeugnis
* @param $prestudent_id -> gesetzt wenn auch stg_kz gesetzt ist um sicherzugehen, dass Akten, die er schon für seinen Studiengang abgegeben hat,
* nicht mehr angezeigt werden
* @return true wenn ok, sonst false
*/
public function getAkten($person_id, $dokument_kurzbz=null, $stg_kz = null, $prestudent_id= null)
{
$qry = "SELECT
akte_id, person_id, dokument_kurzbz, mimetype, erstelltam, gedruckt, titel_intern, anmerkung_intern,
titel, bezeichnung, updateamum, insertamum, updatevon, insertvon, uid, dms_id, anmerkung, nachgereicht,
CASE WHEN inhalt is not null THEN true ELSE false END as inhalt_vorhanden
FROM public.tbl_akte WHERE person_id=".$this->db_add_param($person_id, FHC_INTEGER);
if($dokument_kurzbz!=null)
$qry.=" AND dokument_kurzbz=".$this->db_add_param($dokument_kurzbz);
if($stg_kz != null && $prestudent_id != null)
$qry.=" AND dokument_kurzbz not in (SELECT dokument_kurzbz FROM public.tbl_dokument JOIN public.tbl_dokumentstudiengang USING(dokument_kurzbz)
WHERE studiengang_kz= ".$this->db_add_param($stg_kz).") AND dokument_kurzbz NOT IN ('Zeugnis') AND dokument_kurzbz NOT IN
(SELECT dokument_kurzbz FROM public.tbl_dokumentprestudent JOIN public.tbl_dokument USING(dokument_kurzbz)
WHERE prestudent_id=".$this->db_add_param($prestudent_id).")";
$qry.=" ORDER BY erstelltam";
$this->errormsg = $qry;
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$akten = new akte();
$akten->akte_id = $row->akte_id;
$akten->person_id = $row->person_id;
$akten->dokument_kurzbz = $row->dokument_kurzbz;
//$akte->inhalt = $row->inhalt;
$akten->inhalt_vorhanden = $this->db_parse_bool($row->inhalt_vorhanden);
$akten->mimetype = $row->mimetype;
$akten->erstelltam = $row->erstelltam;
$akten->gedruckt = $this->db_parse_bool($row->gedruckt);
$akten->titel = $row->titel;
$akten->bezeichnung = $row->bezeichnung;
$akten->updateamum = $row->updateamum;
$akten->updatevon = $row->updatevon;
$akten->insertamum = $row->insertamum;
$akten->insertvon = $row->insertvon;
$akten->uid = $row->uid;
$akten->dms_id = $row->dms_id;
$akten->nachgereicht = $this->db_parse_bool($row->nachgereicht);
$akten->anmerkung = $row->anmerkung;
$akten->titel_intern = $row->titel_intern;
$akten->anmerkung_intern = $row->anmerkung_intern;
$this->result[] = $akten;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Liefert die Akten die ein Outgoing sehen darf
*
* @param $person_id
* @return true wenn ok, sonst false
*/
public function getAktenOutgoing($person_id)
{
$qry = "SELECT
akte_id, person_id, dokument_kurzbz, mimetype, erstelltam, gedruckt,
titel, bezeichnung, updateamum, insertamum, updatevon, insertvon, uid,
dms_id,nachgereicht,anmerkung,titel_intern,anmerkung_intern
FROM public.tbl_akte WHERE person_id=".$this->db_add_param($person_id, FHC_INTEGER);
$qry.=" AND dokument_kurzbz IN ('Lebenslf','Motivat','LearnAgr')";
$qry.=" ORDER BY erstelltam";
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$akten = new akte();
$akten->akte_id = $row->akte_id;
$akten->person_id = $row->person_id;
$akten->dokument_kurzbz = $row->dokument_kurzbz;
//$akte->inhalt = $row->inhalt;
$akten->mimetype = $row->mimetype;
$akten->erstelltam = $row->erstelltam;
$akten->gedruckt = $this->db_parse_bool($row->gedruckt);
$akten->titel = $row->titel;
$akten->bezeichnung = $row->bezeichnung;
$akten->updateamum = $row->updateamum;
$akten->updatevon = $row->updatevon;
$akten->insertamum = $row->insertamum;
$akten->insertvon = $row->insertvon;
$akten->uid = $row->uid;
$akten->dms_id = $row->dms_id;
$akten->nachgereicht = $this->db_parse_bool($row->nachgereicht);
$akten->anmerkung = $row->anmerkung;
$akten->titel_intern = $row->titel_intern;
$akten->anmerkung_intern = $row->anmerkung_intern;
$this->result[] = $akten;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
}
?>
<?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>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*/
require_once(dirname(__FILE__).'/basis_db.class.php');
class akte extends basis_db
{
public $new;
public $result = array();
//Tabellenspalten
public $akte_id;
public $person_id;
public $dokument_kurzbz;
public $inhalt;
public $mimetype;
public $erstelltam;
public $gedruckt;
public $titel;
public $bezeichnung;
public $updateamum;
public $updatevon;
public $insertamum;
public $insertvon;
public $uid;
public $ext_id;
public $dms_id;
public $nachgereicht;
public $anmerkung;
public $titel_intern;
public $anmerkung_intern;
/**
* Konstruktor
* @param akte_id ID des zu ladenden Datensatzes
*/
public function __construct($akte_id=null)
{
parent::__construct();
if(!is_null($akte_id))
$this->load($akte_id);
}
/**
* Laedt einen Datensatz
* @param akte_id ID des zu ladenden Datensatzes
*/
public function load($akte_id)
{
//akte_id auf gueltigkeit pruefen
if(!is_numeric($akte_id) || $akte_id == '')
{
$this->errormsg = 'akte_id muss eine gueltige Zahl sein';
return false;
}
//laden des Datensatzes
$qry = "SELECT * FROM public.tbl_akte WHERE akte_id=".$this->db_add_param($akte_id, FHC_INTEGER);
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->akte_id = $row->akte_id;
$this->person_id = $row->person_id;
$this->dokument_kurzbz = $row->dokument_kurzbz;
$this->inhalt = $row->inhalt;
$this->mimetype = $row->mimetype;
$this->erstelltam = $row->erstelltam;
$this->gedruckt = $this->db_parse_bool($row->gedruckt);
$this->titel = $row->titel;
$this->bezeichnung = $row->bezeichnung;
$this->updateamum = $row->updateamum;
$this->updatevon = $row->updatevon;
$this->insertamum = $row->insertamum;
$this->insertvon = $row->insertvon;
$this->uid = $row->uid;
$this->dms_id = $row->dms_id;
$this->anmerkung = $row->anmerkung;
$this->nachgereicht = $this->db_parse_bool($row->nachgereicht);
$this->titel_intern = $row->titel_intern;
$this->anmerkung_intern = $row->anmerkung_intern;
return true;
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
/**
* Loescht einen Datensatz
* @param akte_id ID des zu loeschenden Datensatzes
* @return true wenn ok, false im Fehlerfall
*/
public function delete($akte_id)
{
//akte_id auf gueltigkeit pruefen
if(!is_numeric($akte_id) || $akte_id == '')
{
$this->errormsg = 'akte_id muss eine gueltige Zahl sein';
return false;
}
$qry = "DELETE FROM public.tbl_akte WHERE akte_id=".$this->db_add_param($akte_id, FHC_INTEGER);
if($this->db_query($qry))
{
//Log schreiben
return true;
}
else
{
$this->errormsg = 'Fehler beim Löschen';
return false;
}
}
/**
* Prueft die Variablen vor dem Speichern
*
* @return true wenn ok, sonst false
*/
protected function validate()
{
if($this->person_id=='')
{
$this->errormsg = 'Person ID muss angegeben werden';
return false;
}
if($this->dokument_kurzbz=='')
{
$this->errormsg = 'DokumentKurzbz muss angegeben werden';
return false;
}
return true;
}
/**
* Speichert den aktuellen Datensatz
* Wenn $neu auf true gesetzt ist wird ein neuer Datensatz angelegt
* andernfalls wird der Datensatz mit der ID in $akte_id aktualisiert
* @return true wenn ok, false im Fehlerfall
*/
public function save($new=null)
{
if(!$this->validate())
return false;
if($new==null)
$new = $this->new;
if($new)
{
//Neuen Datensatz anlegen
$qry = "BEGIN;INSERT INTO public.tbl_akte (person_id, dokument_kurzbz, inhalt, mimetype, erstelltam, gedruckt, titel,
bezeichnung, updateamum, updatevon, insertamum, insertvon, uid, dms_id, nachgereicht, anmerkung, titel_intern, anmerkung_intern ) VALUES (".
$this->db_add_param($this->person_id, FHC_INTEGER).', '.
$this->db_add_param($this->dokument_kurzbz).', '.
$this->db_add_param($this->inhalt).', '.
$this->db_add_param($this->mimetype).', '.
$this->db_add_param($this->erstelltam).', '.
$this->db_add_param($this->gedruckt, FHC_BOOLEAN).', '.
$this->db_add_param($this->titel).', '.
$this->db_add_param($this->bezeichnung).', '.
$this->db_add_param($this->updateamum).', '.
$this->db_add_param($this->updatevon).', '.
$this->db_add_param($this->insertamum).', '.
$this->db_add_param($this->insertvon).', '.
$this->db_add_param($this->uid).','.
$this->db_add_param($this->dms_id, FHC_INTEGER).','.
$this->db_add_param($this->nachgereicht, FHC_BOOLEAN).','.
$this->db_add_param($this->anmerkung).','.
$this->db_add_param($this->titel_intern).','.
$this->db_add_param($this->anmerkung_intern).');';
}
else
{
//Bestehenden Datensatz aktualisieren
$qry= "UPDATE public.tbl_akte SET".
" person_id=".$this->db_add_param($this->person_id, FHC_INTEGER).",".
" dokument_kurzbz=".$this->db_add_param($this->dokument_kurzbz).",".
" inhalt=".$this->db_add_param($this->inhalt).",".
" mimetype=".$this->db_add_param($this->mimetype).",".
" erstelltam=".$this->db_add_param($this->erstelltam).",".
" gedruckt=".$this->db_add_param($this->gedruckt,FHC_BOOLEAN).",".
" titel=".$this->db_add_param($this->titel).",".
" bezeichnung=".$this->db_add_param($this->bezeichnung).",".
" updateamum=".$this->db_add_param($this->updateamum).",".
" updatevon=".$this->db_add_param($this->updatevon).",".
" uid=".$this->db_add_param($this->uid).",".
" dms_id=".$this->db_add_param($this->dms_id, FHC_INTEGER).",".
" nachgereicht=".$this->db_add_param($this->nachgereicht, FHC_BOOLEAN).",".
" anmerkung=".$this->db_add_param($this->anmerkung).",".
" titel_intern=".$this->db_add_param($this->titel_intern).",".
" anmerkung_intern=".$this->db_add_param($this->anmerkung_intern).
" WHERE akte_id=".$this->db_add_param($this->akte_id, FHC_INTEGER);
}
if($this->db_query($qry))
{
if($new)
{
$qry = "SELECT currval('public.tbl_akte_akte_id_seq') as id";
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->akte_id = $row->id;
$this->db_query('COMMIT;');
return true;
}
else
{
$this->errormsg = 'Fehler beim Auslesen der Sequence';
$this->db_query('ROLLBACK');
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Auslesen der Sequence';
$this->db_query('ROLLBACK');
return false;
}
}
else
return true;
}
else
{
$this->errormsg = 'Fehler beim Speichern des Datensatzes';
return false;
}
}
/**
* Liefert die Akten einer Person
*
* @param $person_id
* @param $dokument_kurzbz
* @param $stg_kz -> wenn gesetzt werden nur Akten angezeigt die ZUSÄTZLICH zum Studiengang abgegeben worden sind ohne Zeugnis
* @param $prestudent_id -> gesetzt wenn auch stg_kz gesetzt ist um sicherzugehen, dass Akten, die er schon für seinen Studiengang abgegeben hat,
* nicht mehr angezeigt werden
* @return true wenn ok, sonst false
*/
public function getAkten($person_id, $dokument_kurzbz=null, $stg_kz = null, $prestudent_id= null)
{
$qry = "SELECT
akte_id, person_id, dokument_kurzbz, mimetype, erstelltam, gedruckt, titel_intern, anmerkung_intern,
titel, bezeichnung, updateamum, insertamum, updatevon, insertvon, uid, dms_id, anmerkung, nachgereicht,
CASE WHEN inhalt is not null THEN true ELSE false END as inhalt_vorhanden
FROM public.tbl_akte WHERE person_id=".$this->db_add_param($person_id, FHC_INTEGER);
if($dokument_kurzbz!=null)
$qry.=" AND dokument_kurzbz=".$this->db_add_param($dokument_kurzbz);
if($stg_kz != null && $prestudent_id != null)
$qry.=" AND dokument_kurzbz not in (SELECT dokument_kurzbz FROM public.tbl_dokument JOIN public.tbl_dokumentstudiengang USING(dokument_kurzbz)
WHERE studiengang_kz= ".$this->db_add_param($stg_kz).") AND dokument_kurzbz NOT IN ('Zeugnis') AND dokument_kurzbz NOT IN
(SELECT dokument_kurzbz FROM public.tbl_dokumentprestudent JOIN public.tbl_dokument USING(dokument_kurzbz)
WHERE prestudent_id=".$this->db_add_param($prestudent_id).")";
$qry.=" ORDER BY erstelltam";
$this->errormsg = $qry;
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$akten = new akte();
$akten->akte_id = $row->akte_id;
$akten->person_id = $row->person_id;
$akten->dokument_kurzbz = $row->dokument_kurzbz;
//$akte->inhalt = $row->inhalt;
$akten->inhalt_vorhanden = $this->db_parse_bool($row->inhalt_vorhanden);
$akten->mimetype = $row->mimetype;
$akten->erstelltam = $row->erstelltam;
$akten->gedruckt = $this->db_parse_bool($row->gedruckt);
$akten->titel = $row->titel;
$akten->bezeichnung = $row->bezeichnung;
$akten->updateamum = $row->updateamum;
$akten->updatevon = $row->updatevon;
$akten->insertamum = $row->insertamum;
$akten->insertvon = $row->insertvon;
$akten->uid = $row->uid;
$akten->dms_id = $row->dms_id;
$akten->nachgereicht = $this->db_parse_bool($row->nachgereicht);
$akten->anmerkung = $row->anmerkung;
$akten->titel_intern = $row->titel_intern;
$akten->anmerkung_intern = $row->anmerkung_intern;
$this->result[] = $akten;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Liefert die Akten die ein Outgoing sehen darf
*
* @param $person_id
* @return true wenn ok, sonst false
*/
public function getAktenOutgoing($person_id)
{
$qry = "SELECT
akte_id, person_id, dokument_kurzbz, mimetype, erstelltam, gedruckt,
titel, bezeichnung, updateamum, insertamum, updatevon, insertvon, uid,
dms_id,nachgereicht,anmerkung,titel_intern,anmerkung_intern
FROM public.tbl_akte WHERE person_id=".$this->db_add_param($person_id, FHC_INTEGER);
$qry.=" AND dokument_kurzbz IN ('Lebenslf','Motivat','LearnAgr')";
$qry.=" ORDER BY erstelltam";
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$akten = new akte();
$akten->akte_id = $row->akte_id;
$akten->person_id = $row->person_id;
$akten->dokument_kurzbz = $row->dokument_kurzbz;
//$akte->inhalt = $row->inhalt;
$akten->mimetype = $row->mimetype;
$akten->erstelltam = $row->erstelltam;
$akten->gedruckt = $this->db_parse_bool($row->gedruckt);
$akten->titel = $row->titel;
$akten->bezeichnung = $row->bezeichnung;
$akten->updateamum = $row->updateamum;
$akten->updatevon = $row->updatevon;
$akten->insertamum = $row->insertamum;
$akten->insertvon = $row->insertvon;
$akten->uid = $row->uid;
$akten->dms_id = $row->dms_id;
$akten->nachgereicht = $this->db_parse_bool($row->nachgereicht);
$akten->anmerkung = $row->anmerkung;
$akten->titel_intern = $row->titel_intern;
$akten->anmerkung_intern = $row->anmerkung_intern;
$this->result[] = $akten;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Liefert die Akten anhand der dms_id
*
* @param $person_id
* @return true wenn ok, sonst false
*/
public function getAktenDms($dms_id)
{
$qry = "SELECT
akte_id, person_id, dokument_kurzbz, mimetype, erstelltam, gedruckt,
titel, bezeichnung, updateamum, insertamum, updatevon, insertvon, uid,
dms_id,nachgereicht,anmerkung,titel_intern,anmerkung_intern
FROM public.tbl_akte WHERE dms_id=".$this->db_add_param($dms_id, FHC_INTEGER)."
ORDER BY erstelltam";
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$akten = new akte();
$akten->akte_id = $row->akte_id;
$akten->person_id = $row->person_id;
$akten->dokument_kurzbz = $row->dokument_kurzbz;
//$akte->inhalt = $row->inhalt;
$akten->mimetype = $row->mimetype;
$akten->erstelltam = $row->erstelltam;
$akten->gedruckt = $this->db_parse_bool($row->gedruckt);
$akten->titel = $row->titel;
$akten->bezeichnung = $row->bezeichnung;
$akten->updateamum = $row->updateamum;
$akten->updatevon = $row->updatevon;
$akten->insertamum = $row->insertamum;
$akten->insertvon = $row->insertvon;
$akten->uid = $row->uid;
$akten->dms_id = $row->dms_id;
$akten->nachgereicht = $this->db_parse_bool($row->nachgereicht);
$akten->anmerkung = $row->anmerkung;
$akten->titel_intern = $row->titel_intern;
$akten->anmerkung_intern = $row->anmerkung_intern;
$this->result[] = $akten;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
}
?>
+530 -530
View File
File diff suppressed because it is too large Load Diff
+315 -247
View File
@@ -16,282 +16,350 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Nikolaus Krondraf <nikolaus.krondraf@technikum-wien.at>
* Authors: Nikolaus Krondraf <nikolaus.krondraf@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*/
require_once(dirname(__FILE__) . '/basis_db.class.php');
require_once(dirname(__FILE__) . '/datum.class.php');
require_once(dirname(__FILE__) . '/lehrveranstaltung.class.php');
class anrechnung extends basis_db {
class anrechnung extends basis_db
{
public $errormsg;
public $new;
public $result;
// Tabellenspalten
public $anrechnung_id; // integer
public $prestudent_id; // integer
public $lehrveranstaltung_id; // integer
public $begruendung_id; // integer
public $lehrveranstaltung_id_kompatibel; // integer
public $genehmigt_von; // varchar(32)
public $insertamum; // timestamp
public $insertvon; // varchar(32)
public $updateamum; // timestamp
public $updatevon; // varchar(32)
public $begruendungen = array();
public $errormsg;
public $new;
public $result;
// Tabellenspalten
public $anrechnung_id; // integer
public $prestudent_id; // integer
public $lehrveranstaltung_id; // integer
public $begruendung_id; // integer
public $lehrveranstaltung_id_kompatibel; // integer
public $genehmigt_von; // varchar(32)
public $insertamum; // timestamp
public $insertvon; // varchar(32)
public $updateamum; // timestamp
public $updatevon; // varchar(32)
public $begruendungen = array();
/**
* Konstruktor - Laedt optional eine Anrechnung
* @param $anrechnung_id
*/
public function __construct($anrechnung_id = null) {
parent::__construct();
if ($anrechnung_id != null)
$this->load($anrechnung_id);
}
public function validate() {
if (!is_numeric($this->prestudent_id)) {
$this->errormsg = "Prestudent_id ist ungueltig";
return false;
/**
* Konstruktor - Laedt optional eine Anrechnung
* @param $anrechnung_id
*/
public function __construct($anrechnung_id = null)
{
parent::__construct();
if ($anrechnung_id != null)
$this->load($anrechnung_id);
}
if (!is_numeric($this->lehrveranstaltung_id)) {
$this->errormsg = "Wählen Sie eine Lehrveranstaltung aus";
return false;
public function validate()
{
if (!is_numeric($this->prestudent_id))
{
$this->errormsg = "Prestudent_id ist ungueltig";
return false;
}
if (!is_numeric($this->lehrveranstaltung_id))
{
$this->errormsg = "Wählen Sie eine Lehrveranstaltung aus";
return false;
}
if (!is_numeric($this->begruendung_id))
{
$this->errormsg = "Wählen Sie eine Begründung aus";
return false;
}
if ($this->begruendung_id == "2" && !is_numeric($this->lehrveranstaltung_id_kompatibel))
{
$this->errormsg = "Wählen Sie eine kompatible Lehrveranstaltung aus";
return false;
}
if (empty($this->genehmigt_von))
{
$this->errormsg = "Wählen Sie die Person aus, die die Anrechnung genehmigt hat";
return false;
}
return true;
}
if (!is_numeric($this->begruendung_id)) {
$this->errormsg = "Wählen Sie eine Begründung aus";
return false;
/**
* Lädt eine Anrechnung
* @param $anrechnung_id ID der Anrechnung
* @return true wenn ok, false im Fehlerfall
*/
public function getAnrechnung($anrechnung_id)
{
$qry = "SELECT anrechnung_id, prestudent_id, lehrveranstaltung_id, begruendung_id, bezeichnung AS begruendung, "
. "lehrveranstaltung_id_kompatibel, genehmigt_von, insertamum, insertvon, updateamum, updatevon "
. "FROM lehre.tbl_anrechnung "
. "JOIN lehre.tbl_anrechnung_begruendung USING (begruendung_id) "
. "WHERE anrechnung_id = " . $this->db_add_param($anrechnung_id);
if ($result = $this->db_query($qry))
{
if ($row = $this->db_fetch_object($result))
{
$datum = new datum();
$lehrveranstaltung = new lehrveranstaltung($row->lehrveranstaltung_id);
$row->insertamum = $datum->convertISODate($row->insertamum);
$row->lehrveranstaltung_bez = $lehrveranstaltung->bezeichnung;
if ($row->lehrveranstaltung_id_kompatibel != '')
{
$lehrveranstaltung = new lehrveranstaltung($row->lehrveranstaltung_id_kompatibel);
$row->lehrveranstaltung_bez_kompatibel = $lehrveranstaltung->bezeichnung;
}
else
$row->lehrveranstaltung_bez_kompatibel = null;
$this->result[] = $row;
}
else
{
$this->errormsg = 'Es wurde kein Datensatz mit dieser ID gefunden';
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Speichert eine Anrechnung
* @return true wenn ok, false im Fehlerfall
*/
public function save()
{
if (!$this->validate())
return false;
if ($this->new == "1")
{
// Neuen Datensatz anlegen
$qry = 'INSERT INTO lehre.tbl_anrechnung (prestudent_id, lehrveranstaltung_id, begruendung_id, lehrveranstaltung_id_kompatibel, genehmigt_von, insertamum, insertvon, updateamum, updatevon) VALUES (' .
$this->db_add_param($this->prestudent_id) . ', ' .
$this->db_add_param($this->lehrveranstaltung_id) . ', ' .
$this->db_add_param($this->begruendung_id) . ', ' .
$this->db_add_param($this->lehrveranstaltung_id_kompatibel) . ', ' .
$this->db_add_param($this->genehmigt_von) . ', ' .
'NOW(),' .
$this->db_add_param($this->insertvon) . ', ' .
'NOW(),' .
$this->db_add_param($this->updatevon) . ') RETURNING anrechnung_id;';
}
else
{
// Datensatz aktualisieren
$qry = 'UPDATE lehre.tbl_anrechnung SET '
. 'lehrveranstaltung_id = ' . $this->db_add_param($this->lehrveranstaltung_id) . ', '
. 'begruendung_id = ' . $this->db_add_param($this->begruendung_id) . ', '
. 'lehrveranstaltung_id_kompatibel = ' . $this->db_add_param($this->lehrveranstaltung_id_kompatibel) . ', '
. 'genehmigt_von = ' . $this->db_add_param($this->genehmigt_von) . ', '
. 'updateamum = NOW(), '
. 'updatevon = ' . $this->db_add_param($this->updatevon) . ' '
. 'WHERE anrechnung_id = ' . $this->db_add_param($this->anrechnung_id);
}
if ($this->db_query($qry))
{
$this->anrechnung_id = $this->db_fetch_object()->anrechnung_id;
return true;
}
else
{
$this->errormsg = 'Fehler beim Speichern der Anrechnung: ' . $this->db_last_error();
return false;
}
}
if ($this->begruendung_id == "2" && !is_numeric($this->lehrveranstaltung_id_kompatibel)) {
$this->errormsg = "Wählen Sie eine kompatible Lehrveranstaltung aus";
return false;
/**
* Gibt alle Anrechnungen eines Prestudenten zurück
* @param $prestudent_id
* @return true wenn ok, false im Fehlerfall
*/
public function getAnrechnungPrestudent($prestudent_id, $lehrveranstaltung_id=null, $lehrveranstaltung_id_kompatibel=null)
{
$qry = "SELECT anrechnung_id, prestudent_id, lehrveranstaltung_id, begruendung_id, bezeichnung AS begruendung, "
. "lehrveranstaltung_id_kompatibel, genehmigt_von , insertamum, insertvon, updateamum, updatevon "
. "FROM lehre.tbl_anrechnung "
. "JOIN lehre.tbl_anrechnung_begruendung USING (begruendung_id) "
. "WHERE prestudent_id = " . $this->db_add_param($prestudent_id);
if($lehrveranstaltung_id != NULL)
{
$qry .= " AND lehrveranstaltung_id=".$this->db_add_param($lehrveranstaltung_id);
}
if($lehrveranstaltung_id_kompatibel != NULL)
{
$qry .= " AND lehrveranstaltung_id_kompatibel=".$this->db_add_param($lehrveranstaltung_id_kompatibel);
}
$qry .= ";";
if ($this->db_query($qry))
{
$datum = new datum();
while ($row = $this->db_fetch_object())
{
$row->insertamum = $datum->convertISODate($row->insertamum);
$lehrveranstaltung = new lehrveranstaltung($row->lehrveranstaltung_id);
$row->lehrveranstaltung_bez = $lehrveranstaltung->bezeichnung;
if ($row->lehrveranstaltung_id_kompatibel != '')
{
$lehrveranstaltung = new lehrveranstaltung($row->lehrveranstaltung_id_kompatibel);
$row->lehrveranstaltung_bez_kompatibel = $lehrveranstaltung->bezeichnung;
}
else
$row->lehrveranstaltung_bez_kompatibel = null;
$this->result[] = $row;
}
return true;
}
else
{
$this->errormsg = 'Datensatz konnte nicht geladen werden';
return false;
}
}
if (empty($this->genehmigt_von)) {
$this->errormsg = "Wählen Sie die Person aus, die die Anrechnung genehmigt hat";
return false;
/**
* Loescht eine Anrechnung
* @param $anrechnung_id
* @return true wenn ok, false im Fehlerfall
*/
public function delete($anrechnung_id)
{
$qry = "DELETE FROM lehre.tbl_anrechnung WHERE anrechnung_id = " . $this->db_add_param($anrechnung_id);
if ($this->db_query($qry))
{
return true;
}
else
{
$this->errormsg = 'Datensatz konnte nicht geloescht werden';
return false;
}
}
return true;
}
/**
* Lädt eine Anrechnung
* @param $anrechnung_id ID der Anrechnung
* @return true wenn ok, false im Fehlerfall
*/
public function getAnrechnung($anrechnung_id) {
$qry = "SELECT anrechnung_id, prestudent_id, lehrveranstaltung_id, begruendung_id, bezeichnung AS begruendung, "
. "lehrveranstaltung_id_kompatibel, genehmigt_von, insertamum, insertvon, updateamum, updatevon "
. "FROM lehre.tbl_anrechnung "
. "JOIN lehre.tbl_anrechnung_begruendung USING (begruendung_id) "
. "WHERE anrechnung_id = " . $this->db_add_param($anrechnung_id);
if ($result = $this->db_query($qry)) {
if ($row = $this->db_fetch_object($result)) {
$datum = new datum();
$lehrveranstaltung = new lehrveranstaltung($row->lehrveranstaltung_id);
$row->insertamum = $datum->convertISODate($row->insertamum);
$row->lehrveranstaltung_bez = $lehrveranstaltung->bezeichnung;
if ($row->lehrveranstaltung_id_kompatibel != '') {
$lehrveranstaltung = new lehrveranstaltung($row->lehrveranstaltung_id_kompatibel);
$row->lehrveranstaltung_bez_kompatibel = $lehrveranstaltung->bezeichnung;
} else
$row->lehrveranstaltung_bez_kompatibel = null;
$this->result[] = $row;
}
else {
$this->errormsg = 'Es wurde kein Datensatz mit dieser ID gefunden';
return false;
}
} else {
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Speichert eine Anrechnung
* @return true wenn ok, false im Fehlerfall
*/
public function save() {
if (!$this->validate())
return false;
if ($this->new == "1") {
// Neuen Datensatz anlegen
$qry = 'INSERT INTO lehre.tbl_anrechnung (prestudent_id, lehrveranstaltung_id, begruendung_id, lehrveranstaltung_id_kompatibel, genehmigt_von, insertamum, insertvon, updateamum, updatevon) VALUES (' .
$this->db_add_param($this->prestudent_id) . ', ' .
$this->db_add_param($this->lehrveranstaltung_id) . ', ' .
$this->db_add_param($this->begruendung_id) . ', ' .
$this->db_add_param($this->lehrveranstaltung_id_kompatibel) . ', ' .
$this->db_add_param($this->genehmigt_von) . ', ' .
'NOW(),' .
$this->db_add_param($this->insertvon) . ', ' .
'NOW(),' .
$this->db_add_param($this->updatevon) . ') RETURNING anrechnung_id;';
} else {
// Datensatz aktualisieren
$qry = 'UPDATE lehre.tbl_anrechnung SET '
. 'lehrveranstaltung_id = ' . $this->db_add_param($this->lehrveranstaltung_id) . ', '
. 'begruendung_id = ' . $this->db_add_param($this->begruendung_id) . ', '
. 'lehrveranstaltung_id_kompatibel = ' . $this->db_add_param($this->lehrveranstaltung_id_kompatibel) . ', '
. 'genehmigt_von = ' . $this->db_add_param($this->genehmigt_von) . ', '
. 'updateamum = NOW(), '
. 'updatevon = ' . $this->db_add_param($this->updatevon) . ' '
. 'WHERE anrechnung_id = ' . $this->db_add_param($this->anrechnung_id);
}
if ($this->db_query($qry)) {
$this->anrechnung_id = $this->db_fetch_object()->anrechnung_id;
return true;
} else {
$this->errormsg = 'Fehler beim Speichern der Anrechnung: ' . $this->db_last_error();
return false;
}
}
/**
* Gibt alle Anrechnungen eines Prestudenten zurück
* @param $prestudent_id
* @return true wenn ok, false im Fehlerfall
*/
public function getAnrechnungPrestudent($prestudent_id) {
$qry = "SELECT anrechnung_id, prestudent_id, lehrveranstaltung_id, begruendung_id, bezeichnung AS begruendung, "
. "lehrveranstaltung_id_kompatibel, genehmigt_von , insertamum, insertvon, updateamum, updatevon "
. "FROM lehre.tbl_anrechnung "
. "JOIN lehre.tbl_anrechnung_begruendung USING (begruendung_id) "
. "WHERE prestudent_id = " . $this->db_add_param($prestudent_id);
if ($this->db_query($qry)) {
$datum = new datum();
while ($row = $this->db_fetch_object()) {
$row->insertamum = $datum->convertISODate($row->insertamum);
$lehrveranstaltung = new lehrveranstaltung($row->lehrveranstaltung_id);
$row->lehrveranstaltung_bez = $lehrveranstaltung->bezeichnung;
if ($row->lehrveranstaltung_id_kompatibel != '') {
$lehrveranstaltung = new lehrveranstaltung($row->lehrveranstaltung_id_kompatibel);
$row->lehrveranstaltung_bez_kompatibel = $lehrveranstaltung->bezeichnung;
} else
$row->lehrveranstaltung_bez_kompatibel = null;
$this->result[] = $row;
}
return true;
}
else {
$this->errormsg = 'Datensatz konnte nicht geladen werden';
return false;
}
}
/**
* Loescht eine Anrechnung
* @param $anrechnung_id
* @return true wenn ok, false im Fehlerfall
*/
public function delete($anrechnung_id) {
$qry = "DELETE FROM lehre.tbl_anrechnung WHERE anrechnung_id = " . $this->db_add_param($anrechnung_id);
if ($this->db_query($qry)) {
return true;
} else {
$this->errormsg = 'Datensatz konnte nicht geloescht werden';
return false;
}
}
/**
* Gibt die Anzahl der Notizen für eine Anrechnung zurück
* @param $anrechung_id
* @return Anzahl der Notizen, false im Fehlerfall
*/
public function getAnzahlNotizen($anrechung_id) {
$qry = "SELECT COUNT(*) AS anzahl "
/**
* Gibt die Anzahl der Notizen für eine Anrechnung zurück
* @param $anrechung_id
* @return Anzahl der Notizen, false im Fehlerfall
*/
public function getAnzahlNotizen($anrechung_id)
{
$qry = "SELECT COUNT(*) AS anzahl "
. "FROM public.tbl_notizzuordnung "
. "WHERE anrechnung_id = " . $this->db_add_param($anrechung_id);
if ($result = $this->db_query($qry)) {
if ($row = $this->db_fetch_object($result)) {
return $row->anzahl;
} else {
$this->errormsg = 'Daten konnten nicht geladen werden';
return false;
}
} else {
$this->errormsg = 'Daten konnten nicht geladen werden';
return false;
if ($result = $this->db_query($qry))
{
if ($row = $this->db_fetch_object($result))
{
return $row->anzahl;
}
else
{
$this->errormsg = 'Daten konnten nicht geladen werden';
return false;
}
}
else
{
$this->errormsg = 'Daten konnten nicht geladen werden';
return false;
}
}
}
/**
* Gibt alle möglichen Begründungen zurück
* @return array Array der Begründungen
*/
public function getAllBegruendung() {
$qry = 'SELECT * FROM lehre.tbl_anrechnung_begruendung';
/**
* Gibt alle möglichen Begründungen zurück
* @return array Array der Begründungen
*/
public function getAllBegruendung()
{
$qry = 'SELECT * FROM lehre.tbl_anrechnung_begruendung';
if ($this->db_query($qry)) {
while ($row = $this->db_fetch_object()) {
$stdobj = new stdClass();
$stdobj->begruendung_id = $row->begruendung_id;
$stdobj->bezeichnung = $row->bezeichnung;
array_push($this->begruendungen, $stdobj);
}
return true;
} else {
$this->errormsg = 'Daten konnten nicht geladen werden';
return false;
if ($this->db_query($qry))
{
while ($row = $this->db_fetch_object())
{
$stdobj = new stdClass();
$stdobj->begruendung_id = $row->begruendung_id;
$stdobj->bezeichnung = $row->bezeichnung;
array_push($this->begruendungen, $stdobj);
}
return true;
}
else
{
$this->errormsg = 'Daten konnten nicht geladen werden';
return false;
}
}
}
/**
* Lädt eine Anrechnung
* @param $anrechnung_id ID der Anrechnung
* @return true wenn ok, false im Fehlerfall
*/
public function load($anrechnung_id) {
$qry = "SELECT anrechnung_id, prestudent_id, lehrveranstaltung_id, begruendung_id, bezeichnung AS begruendung, "
/**
* Lädt eine Anrechnung
* @param $anrechnung_id ID der Anrechnung
* @return true wenn ok, false im Fehlerfall
*/
public function load($anrechnung_id)
{
$qry = "SELECT anrechnung_id, prestudent_id, lehrveranstaltung_id, begruendung_id, bezeichnung AS begruendung, "
. "lehrveranstaltung_id_kompatibel, genehmigt_von, insertamum, insertvon, updateamum, updatevon "
. "FROM lehre.tbl_anrechnung "
. "JOIN lehre.tbl_anrechnung_begruendung USING (begruendung_id) "
. "WHERE anrechnung_id = " . $this->db_add_param($anrechnung_id);
if ($result = $this->db_query($qry)) {
if ($row = $this->db_fetch_object($result)) {
$this->anrechnung_id = $row->anrechnung_id;
$this->prestudent_id = $row->prestudent_id;
$this->lehrveranstaltung_id = $row->lehrveranstaltung_id;
$this->lehrveranstaltung_id_kompatibel = $row->lehrveranstaltung_id_kompatibel;
$this->begruendung_id = $row->begruendung_id;
$this->begruendung = $row->begruendung;
$this->genehmigt_von = $row->genehmigt_von;
$datum = new datum();
$lehrveranstaltung = new lehrveranstaltung($row->lehrveranstaltung_id);
$this->insertamum = $datum->convertISODate($row->insertamum);
$this->lehrveranstaltung_bez = $lehrveranstaltung->bezeichnung;
if ($row->lehrveranstaltung_id_kompatibel != '') {
$lehrveranstaltung = new lehrveranstaltung($row->lehrveranstaltung_id_kompatibel);
$this->lehrveranstaltung_bez_kompatibel = $lehrveranstaltung->bezeichnung;
} else
$this->lehrveranstaltung_bez_kompatibel = null;
}
else {
$this->errormsg = 'Es wurde kein Datensatz mit dieser ID gefunden';
return false;
}
} else {
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
if ($result = $this->db_query($qry))
{
if ($row = $this->db_fetch_object($result))
{
$this->anrechnung_id = $row->anrechnung_id;
$this->prestudent_id = $row->prestudent_id;
$this->lehrveranstaltung_id = $row->lehrveranstaltung_id;
$this->lehrveranstaltung_id_kompatibel = $row->lehrveranstaltung_id_kompatibel;
$this->begruendung_id = $row->begruendung_id;
$this->begruendung = $row->begruendung;
$this->genehmigt_von = $row->genehmigt_von;
$datum = new datum();
$lehrveranstaltung = new lehrveranstaltung($row->lehrveranstaltung_id);
$this->insertamum = $datum->convertISODate($row->insertamum);
$this->lehrveranstaltung_bez = $lehrveranstaltung->bezeichnung;
if ($row->lehrveranstaltung_id_kompatibel != '')
{
$lehrveranstaltung = new lehrveranstaltung($row->lehrveranstaltung_id_kompatibel);
$this->lehrveranstaltung_bez_kompatibel = $lehrveranstaltung->bezeichnung;
}
else
$this->lehrveranstaltung_bez_kompatibel = null;
}
else
{
$this->errormsg = 'Es wurde kein Datensatz mit dieser ID gefunden';
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
}
}
+7 -2
View File
@@ -450,14 +450,19 @@ class firma extends basis_db
/**
* Laedt alle Firmen eines bestimmen Firmentyps
* @param boolean $aktiv Default NULL
* @return true wenn ok, false im Fehlerfall
*/
public function getFirmen($firmentyp_kurzbz='')
public function getFirmen($firmentyp_kurzbz='', $aktiv=null)
{
$qry = "SElECT * FROM public.tbl_firma";
$qry = "SELECT * FROM public.tbl_firma";
if($firmentyp_kurzbz!='')
$qry.=" WHERE firmentyp_kurzbz=".$this->db_add_param($firmentyp_kurzbz);
if(!is_null($aktiv))
$qry.=" AND aktiv=".$this->db_add_param($aktiv, FHC_BOOLEAN);
$qry.=" ORDER BY name;";
if($this->db_query($qry))
Regular → Executable
+92 -73
View File
@@ -1,73 +1,92 @@
<?php
// Auth: Benutzer des Webportals
define ('USER_UID','strtolower(trim($_SERVER["REMOTE_USER"]))');
// fuer Testzwecke
//define ('USER_UID','pam');
// Hintergrundfarben fuer Tabellen beim Zeitwunsch
global $cfgStdBgcolor;
$cfgStdBgcolor=array();
$cfgStdBgcolor[0]="#CC0000";
$cfgStdBgcolor[1]="#FF2200";
$cfgStdBgcolor[2]="#FF9922";
$cfgStdBgcolor[3]="#FFFF55";
$cfgStdBgcolor[4]="#C0ECC3";
$cfgStdBgcolor[5]="#48FA66";
$cfgStdBgcolor[6]="#CCFFCC";
// Mehrsprachige Wochentage
global $tagbez;
$tagbez=array();
$tagbez[1][1]="Montag";
$tagbez[1][2]="Dienstag";
$tagbez[1][3]="Mittwoch";
$tagbez[1][4]="Donnerstag";
$tagbez[1][5]="Freitag";
$tagbez[1][6]="Samstag";
$tagbez[1][7]="Sonntag";
$tagbez[2][1]="Monday";
$tagbez[2][2]="Tuesday";
$tagbez[2][3]="Wednesday";
$tagbez[2][4]="Thursday";
$tagbez[2][5]="Friday";
$tagbez[2][6]="Saturday";
$tagbez[2][7]="Sunday";
// Mehrsprache Monatstage
global $monatsname;
$monatsname = array();
$monatsname[1][0]="Januar";
$monatsname[1][1]="Februar";
$monatsname[1][2]="März";
$monatsname[1][3]="April";
$monatsname[1][4]="Mai";
$monatsname[1][5]="Juni";
$monatsname[1][6]="Juli";
$monatsname[1][7]="August";
$monatsname[1][8]="September";
$monatsname[1][9]="Oktober";
$monatsname[1][10]="November";
$monatsname[1][11]="Dezember";
$monatsname[2][0]="January";
$monatsname[2][1]="February";
$monatsname[2][2]="March";
$monatsname[2][3]="April";
$monatsname[2][4]="May";
$monatsname[2][5]="June";
$monatsname[2][6]="July";
$monatsname[2][7]="August";
$monatsname[2][8]="September";
$monatsname[2][9]="October";
$monatsname[2][10]="November";
$monatsname[2][11]="December";
//$monatsname = array("Januar", "Februar", "M&auml;rz", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember");
// Studiengaenge die keine Alias Email Adressen erhalten
$noalias=array();
//$noalias[0]='330';
//$noalias[1]='331';
//$noalias[2]='204';
?>
<?php
// Auth: Benutzer des Webportals
define ('USER_UID','strtolower(trim($_SERVER["REMOTE_USER"]))');
// fuer Testzwecke
//define ('USER_UID','pam');
// Hintergrundfarben fuer Tabellen beim Zeitwunsch
global $cfgStdBgcolor;
$cfgStdBgcolor=array();
$cfgStdBgcolor[0]="#CC0000";
$cfgStdBgcolor[1]="#FF2200";
$cfgStdBgcolor[2]="#FF9922";
$cfgStdBgcolor[3]="#FFFF55";
$cfgStdBgcolor[4]="#C0ECC3";
$cfgStdBgcolor[5]="#48FA66";
$cfgStdBgcolor[6]="#CCFFCC";
// Mehrsprachige Wochentage
global $tagbez;
$tagbez=array();
$tagbez[1][1]="Montag";
$tagbez[1][2]="Dienstag";
$tagbez[1][3]="Mittwoch";
$tagbez[1][4]="Donnerstag";
$tagbez[1][5]="Freitag";
$tagbez[1][6]="Samstag";
$tagbez[1][7]="Sonntag";
$tagbez[2][1]="Monday";
$tagbez[2][2]="Tuesday";
$tagbez[2][3]="Wednesday";
$tagbez[2][4]="Thursday";
$tagbez[2][5]="Friday";
$tagbez[2][6]="Saturday";
$tagbez[2][7]="Sunday";
$tagbez[4][1]="Lunedì";
$tagbez[4][2]="Martedì";
$tagbez[4][3]="Mercoledì";
$tagbez[4][4]="Giovedì";
$tagbez[4][5]="Venerdì";
$tagbez[4][6]="Sabato";
$tagbez[4][7]="Domenica";
// Mehrsprache Monatstage
global $monatsname;
$monatsname = array();
$monatsname[1][0]="Januar";
$monatsname[1][1]="Februar";
$monatsname[1][2]="März";
$monatsname[1][3]="April";
$monatsname[1][4]="Mai";
$monatsname[1][5]="Juni";
$monatsname[1][6]="Juli";
$monatsname[1][7]="August";
$monatsname[1][8]="September";
$monatsname[1][9]="Oktober";
$monatsname[1][10]="November";
$monatsname[1][11]="Dezember";
$monatsname[2][0]="January";
$monatsname[2][1]="February";
$monatsname[2][2]="March";
$monatsname[2][3]="April";
$monatsname[2][4]="May";
$monatsname[2][5]="June";
$monatsname[2][6]="July";
$monatsname[2][7]="August";
$monatsname[2][8]="September";
$monatsname[2][9]="October";
$monatsname[2][10]="November";
$monatsname[2][11]="December";
$monatsname[4][0]="Gennaio";
$monatsname[4][1]="Febbraio";
$monatsname[4][2]="Marzo";
$monatsname[4][3]="Aprile";
$monatsname[4][4]="Maggio";
$monatsname[4][5]="Giunio";
$monatsname[4][6]="Luglio";
$monatsname[4][7]="Agosto";
$monatsname[4][8]="Settembre";
$monatsname[4][9]="Ottobre";
$monatsname[4][10]="Novembre";
$monatsname[4][11]="Dicembre";
//$monatsname = array("Januar", "Februar", "M&auml;rz", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember");
// Studiengaenge die keine Alias Email Adressen erhalten
$noalias=array();
//$noalias[0]='330';
//$noalias[1]='331';
//$noalias[2]='204';
?>
+6 -2
View File
@@ -453,8 +453,12 @@ class konto extends basis_db
*/
public function getDifferenz($buchungsnr)
{
$qry = "SELECT sum(betrag) as differenz FROM public.tbl_konto
WHERE buchungsnr=".$this->db_add_param($buchungsnr, FHC_INTEGER)." OR buchungsnr_verweis=".$this->db_add_param($buchungsnr, FHC_INTEGER);
$qry = "SELECT
sum(betrag) as differenz FROM public.tbl_konto
WHERE
(buchungsnr=".$this->db_add_param($buchungsnr, FHC_INTEGER)." OR buchungsnr_verweis=".$this->db_add_param($buchungsnr, FHC_INTEGER).")
OR
(buchungsnr=(SELECT buchungsnr_verweis FROM public.tbl_konto WHERE buchungsnr=".$this->db_add_param($buchungsnr, FHC_INTEGER).") OR buchungsnr_verweis=(SELECT buchungsnr_verweis FROM public.tbl_konto WHERE buchungsnr=".$this->db_add_param($buchungsnr, FHC_INTEGER)."))";
if($this->db_query($qry))
{
+118 -11
View File
@@ -66,6 +66,7 @@ class lehrveranstaltung extends basis_db
public $bezeichnung_arr = array();
public $semester_alternativ; // smallint
public $farbe;
public $lehrauftrag=true;
public $studienplan_lehrveranstaltung_id;
public $studienplan_lehrveranstaltung_id_parent;
@@ -78,10 +79,11 @@ class lehrveranstaltung extends basis_db
public $alvs;
public $lvps;
public $las;
public $benotung=false;
public $lvinfo=false;
public $benotung=true;
public $lvinfo=true;
public $curriculum=true;
public $export=true;
/**
* Konstruktor
@@ -158,11 +160,15 @@ class lehrveranstaltung extends basis_db
$this->alvs = $row->alvs;
$this->lvps = $row->lvps;
$this->las = $row->las;
$this->benotung = $this->db_parse_bool($row->benotung);
$this->lvinfo = $this->db_parse_bool($row->lvinfo);
$this->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
// FIXME: LV-Bezeichnung richtig mehrsprachig machen
// Zwischenzeitlich 'Italian' zum bezeichnung_arr dazugegeben
$this->bezeichnung_arr['German'] = $this->bezeichnung;
$this->bezeichnung_arr['Italian'] = $this->bezeichnung;
$this->bezeichnung_arr['English'] = $this->bezeichnung_english;
if ($this->bezeichnung_arr['English'] == '')
$this->bezeichnung_arr['English'] = $this->bezeichnung_arr['German'];
@@ -226,9 +232,10 @@ class lehrveranstaltung extends basis_db
$lv_obj->lvnr = $row->lvnr;
$lv_obj->semester_alternativ = $row->semester_alternativ;
$lv_obj->farbe = $row->farbe;
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
$lv_obj->bezeichnung_arr['German'] = $row->bezeichnung;
$lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -363,6 +370,7 @@ class lehrveranstaltung extends basis_db
$lv_obj->farbe = $row->farbe;
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
$lv_obj->bezeichnung_arr['German'] = $row->bezeichnung;
$lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -492,6 +500,7 @@ class lehrveranstaltung extends basis_db
$lv_obj->farbe = $row->farbe;
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
$lv_obj->bezeichnung_arr['German'] = $row->bezeichnung;
$lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -572,6 +581,7 @@ class lehrveranstaltung extends basis_db
$lv_obj->farbe = $row->farbe;
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
$lv_obj->bezeichnung_arr['German'] = $row->bezeichnung;
$lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -730,7 +740,7 @@ class lehrveranstaltung extends basis_db
semester, ects, semesterstunden, anmerkung, lehre, lehreverzeichnis, aktiv, insertamum,
insertvon, planfaktor, planlektoren, planpersonalkosten, plankostenprolektor, updateamum, updatevon, sort,
zeugnis, projektarbeit, sprache, koordinator, bezeichnung_english, orgform_kurzbz, incoming, lehrtyp_kurzbz, oe_kurzbz,
raumtyp_kurzbz, anzahlsemester, semesterwochen, lvnr, semester_alternativ, farbe,sws,lvs,alvs,lvps,las,benotung,lvinfo) VALUES (' .
raumtyp_kurzbz, anzahlsemester, semesterwochen, lvnr, semester_alternativ, farbe,sws,lvs,alvs,lvps,las,benotung,lvinfo, lehrauftrag) VALUES (' .
$this->db_add_param($this->studiengang_kz) . ', ' .
$this->db_add_param($this->bezeichnung) . ', ' .
$this->db_add_param($this->kurzbz) . ', ' .
@@ -772,7 +782,8 @@ class lehrveranstaltung extends basis_db
$this->db_add_param($this->lvps).','.
$this->db_add_param($this->las).','.
$this->db_add_param($this->benotung, FHC_BOOLEAN).','.
$this->db_add_param($this->lvinfo, FHC_BOOLEAN)
$this->db_add_param($this->lvinfo, FHC_BOOLEAN).','.
$this->db_add_param($this->lehrauftrag, FHC_BOOLEAN)
.');';
}
else
@@ -825,7 +836,8 @@ class lehrveranstaltung extends basis_db
'lvps = '.$this->db_add_param($this->lvps).', '.
'las = '.$this->db_add_param($this->las).', '.
'benotung = '.$this->db_add_param($this->benotung, FHC_BOOLEAN).', '.
'lvinfo = '.$this->db_add_param($this->lvinfo, FHC_BOOLEAN).' '.
'lvinfo = '.$this->db_add_param($this->lvinfo, FHC_BOOLEAN).', '.
'lehrauftrag = '.$this->db_add_param($this->lehrauftrag, FHC_BOOLEAN).' '.
'WHERE lehrveranstaltung_id = ' . $this->db_add_param($this->lehrveranstaltung_id, FHC_INTEGER, false) . ';';
}
@@ -933,6 +945,7 @@ class lehrveranstaltung extends basis_db
$lv_obj->farbe = $row->farbe;
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
$lv_obj->bezeichnung_arr['German'] = $row->bezeichnung;
$lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -1025,6 +1038,7 @@ class lehrveranstaltung extends basis_db
$l->farbe = $row->farbe;
$l->benotung = $this->db_parse_bool($row->benotung);
$l->lvinfo = $this->db_parse_bool($row->lvinfo);
$l->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
$l->bezeichnung_arr['German'] = $row->bezeichnung;
$l->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -1142,6 +1156,7 @@ class lehrveranstaltung extends basis_db
$lv_obj->farbe = $row->farbe;
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
$lv_obj->bezeichnung_arr['German'] = $row->bezeichnung;
$lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -1176,7 +1191,9 @@ class lehrveranstaltung extends basis_db
tbl_studienplan_lehrveranstaltung.koordinator as stpllv_koordinator,
tbl_studienplan_lehrveranstaltung.studienplan_lehrveranstaltung_id_parent,
tbl_studienplan_lehrveranstaltung.sort stpllv_sort,
tbl_studienplan_lehrveranstaltung.curriculum
tbl_studienplan_lehrveranstaltung.curriculum,
tbl_studienplan_lehrveranstaltung.export,
tbl_studienplan_lehrveranstaltung.genehmigung
FROM lehre.tbl_lehrveranstaltung
JOIN lehre.tbl_studienplan_lehrveranstaltung
USING(lehrveranstaltung_id)
@@ -1234,18 +1251,27 @@ class lehrveranstaltung extends basis_db
$obj->stpllv_sort = $row->stpllv_sort;
$obj->benotung = $this->db_parse_bool($row->benotung);
$obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
$obj->bezeichnung_arr['German'] = $row->bezeichnung;
$obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
if ($obj->bezeichnung_arr['English'] == '')
$obj->bezeichnung_arr['English'] = $obj->bezeichnung_arr['German'];
$obj->sws = $row->sws;
$obj->lvs = $row->lvs;
$obj->alvs = $row->alvs;
$obj->lvps = $row->lvps;
$obj->las = $row->las;
$obj->stpllv_semester = $row->stpllv_semester;
$obj->stpllv_pflicht = $this->db_parse_bool($row->stpllv_pflicht);
$obj->stpllv_koordinator = $row->stpllv_koordinator;
$obj->studienplan_lehrveranstaltung_id = $row->studienplan_lehrveranstaltung_id;
$obj->studienplan_lehrveranstaltung_id_parent = $row->studienplan_lehrveranstaltung_id_parent;
$obj->curriculum = $this->db_parse_bool($row->curriculum);
$obj->export = $this->db_parse_bool($row->export);
$obj->genehmigung = $this->db_parse_bool($row->genehmigung);
$obj->new = false;
$this->lehrveranstaltungen[] = $obj;
@@ -1279,7 +1305,7 @@ class lehrveranstaltung extends basis_db
/**
* Generiert die Subtrees des Lehrveranstaltungstrees
*/
protected function getLehrveranstaltungTreeChilds($studienplan_lehrveranstaltung_id)
public function getLehrveranstaltungTreeChilds($studienplan_lehrveranstaltung_id)
{
$childs = array();
foreach ($this->lehrveranstaltungen as $row)
@@ -1293,6 +1319,31 @@ class lehrveranstaltung extends basis_db
return $childs;
}
/**
* Generiert die Subtrees des Lehrveranstaltungstrees
*/
public function hasChildren($studienplan_lehrveranstaltung_id)
{
$childs = array();
foreach ($this->lehrveranstaltungen as $row)
{
if ($row->studienplan_lehrveranstaltung_id_parent === $studienplan_lehrveranstaltung_id)
{
$childs[$row->studienplan_lehrveranstaltung_id] = $row;
$childs[$row->studienplan_lehrveranstaltung_id]->childs = $this->getLehrveranstaltungTreeChilds($row->studienplan_lehrveranstaltung_id);
}
}
if(count($childs) > 0)
{
return true;
}
else
{
return false;
}
}
/**
* Baut die Datenstruktur für senden als JSON Objekt auf
*/
@@ -1322,6 +1373,7 @@ class lehrveranstaltung extends basis_db
$obj->benotung = $this->db_parse_bool($lv->benotung);
$obj->lvinfo =$this->db_parse_bool( $lv->lvinfo);
$obj->zeugnis = $this->db_parse_bool($lv->zeugnis);
$obj->lehrauftrag = $this->db_parse_bool($lv->lehrauftrag);
$values[] = $obj;
@@ -1346,6 +1398,7 @@ class lehrveranstaltung extends basis_db
$obj->benotung = $this->db_parse_bool($this->benotung);
$obj->lvinfo =$this->db_parse_bool( $this->lvinfo);
$obj->zeugnis = $this->db_parse_bool($this->zeugnis);
$obj->lehrauftrag = $this->db_parse_bool($this->lehrauftrag);
$values[] = $obj;
}
@@ -1395,7 +1448,9 @@ class lehrveranstaltung extends basis_db
$obj->lvinfo = $lv->lvinfo;
$obj->zeugnis = $lv->zeugnis;
$obj->curriculum = $lv->curriculum;
$obj->export = $lv->export;
$obj->lehrauftrag = $lv->lehrauftrag;
$obj->lehre = $lv->lehre;
$obj->children = array();
if(count($lv->childs) > 0)
{
@@ -1424,6 +1479,7 @@ class lehrveranstaltung extends basis_db
$obj->lvinfo =$this->db_parse_bool( $this->lvinfo);
$obj->zeugnis = $this->db_parse_bool($this->zeugnis);
$obj->curriculum = $this->db_parse_bool($this->curriculum);
$obj->lehrauftrag = $this->lehrauftrag;
$values[] = $obj;
}
@@ -1525,6 +1581,7 @@ class lehrveranstaltung extends basis_db
$lv_obj->farbe = $row->farbe;
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
$lv_obj->bezeichnung_arr['German'] = $row->bezeichnung;
$lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -1690,6 +1747,7 @@ class lehrveranstaltung extends basis_db
$lv_obj->oe_kurzbz = $row->oe_kurzbz;
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
$lv_obj->bezeichnung_arr['German'] = $row->bezeichnung;
$lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -1817,6 +1875,7 @@ class lehrveranstaltung extends basis_db
$lv_obj->farbe = $row->farbe;
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
$lv_obj->studiengang_kurzbzlang = $row->studiengang_kurzbzlang;
@@ -1942,6 +2001,7 @@ class lehrveranstaltung extends basis_db
$lv_obj->farbe = $row->farbe;
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
$lv_obj->bezeichnung_arr['German'] = $row->bezeichnung;
$lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -2206,6 +2266,7 @@ class lehrveranstaltung extends basis_db
$obj->farbe = $row->farbe;
$obj->benotung = $this->db_parse_bool($row->benotung);
$obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
$obj->bezeichnung_arr['German'] = $row->bezeichnung;
$obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -2381,5 +2442,51 @@ class lehrveranstaltung extends basis_db
return false;
}
}
/**
* Prüft ob eine Lehrvernstaltung in Studienplordnungen verwendet wird die
* nicht mehr in bearbeitung sind. Diese sind fuer die bearbeitung gesperrt
* @param integer $lehrveranstaltung_id
* @return boolean true wenn gesperrt
* @return boolean false wenn nicht gesperrt
* @return boolean false und errormsg im Fehlerfall
*/
public function isGesperrt($lehrveranstaltung_id)
{
$qry = "SELECT
count(*) as anzahl
FROM
lehre.tbl_studienplan
JOIN lehre.tbl_studienplan_lehrveranstaltung USING(studienplan_id)
JOIN lehre.tbl_studienordnung USING(studienordnung_id)
WHERE
tbl_studienplan_lehrveranstaltung.lehrveranstaltung_id=".$this->db_add_param($lehrveranstaltung_id, FHC_INTEGER)."
AND tbl_studienordnung.status_kurzbz<>'development'";
if($result = $this->db_query($qry))
{
if($row = $this->db_fetch_object($result))
{
if($row->anzahl>0)
{
return true;
}
else
{
return false;
}
}
else
{
$this->errormsg='Fehler beim Laden der Daten';
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
}
?>
+79 -78
View File
@@ -43,7 +43,7 @@ class mantis extends basis_db
public $issue_summary; //Zusammendassung
public $issue_reproducibility; //Reproduzierbar
public $issue_date_submitted; //Meldungsdatum
public $issue_sponsorship_total;
public $issue_sponsorship_total;
public $issue_projection; //Projektion
public $issue_eta; //Aufwand
public $issue_resolution; //Lösung
@@ -52,10 +52,11 @@ class mantis extends basis_db
public $issue_due_date;
public $issue_steps_to_reproduce;
public $issue_additional_information;
public $issue_tags;
public $issue_tags;
public $soapClient;
public $errormsg;
public $result=array();
/**
* Konstruktor
@@ -71,61 +72,61 @@ class mantis extends basis_db
*/
public function initSoapClient()
{
try
{
$this->soapClient = new SoapClient(MANTIS_PFAD);
try
{
$this->soapClient = new SoapClient(MANTIS_PFAD);
}
catch (Exception $e)
{
{
echo $e->getMessage();
}
}
/**
*
*
* @param type $issue_tags
* @return type
*/
public function setTags($issue_tags)
{
$tags = array();
$tags = array();
$tags_array = explode(',', $issue_tags);
// Hole alle Tags
$params_tags=array('username' => MANTIS_USERNAME, 'password' => MANTIS_PASSWORT, 'page_number'=>1, 'per_page'=>20);
$result_tags = $this->soapClient->__soapCall('mc_tag_get_all',$params_tags);
$test = array();
$test = $result_tags->results;
$test = array();
$test = $result_tags->results;
foreach($tags_array as $t)
{
$tags_help = new stdClass();
$tags_help->name = trim($t);
$tags_help->name = trim($t);
foreach($result_tags->results as $rt)
{
if($rt->name == $tags_help->name)
{
$tags_help->id = $rt->id;
$tags_help->id = $rt->id;
}
}
//$tags_help->id = 10;
$tags[] = $tags_help;
//$tags_help->id = 10;
$tags[] = $tags_help;
}
$params=array('username' => MANTIS_USERNAME, 'password' => MANTIS_PASSWORT,'issue_id' =>$this->issue_id, $tags);
$result = $this->soapClient->__soapCall('mc_issue_set_tags',$params);
return $result;
}
/**
* Ticket Update
*/
@@ -140,13 +141,13 @@ class mantis extends basis_db
'priority'=>array('id'=>$this->issue_priority->id),
'additional_information'=>$this->issue_additional_information,
'reporter'=>array('id'=>$this->issue_reporter_id),
);
);
$params=array('username' => MANTIS_USERNAME, 'password' => MANTIS_PASSWORT,'issueId' => $this->issue_id, $issue);
$result = $this->soapClient->__soapCall('mc_issue_update',$params);
return $result;
}
/**
* Neues Ticket anlegen
*/
@@ -161,84 +162,84 @@ class mantis extends basis_db
'priority'=>array('id'=>$this->issue_priority->id),
'additional_information'=>$this->issue_additional_information,
);
$params=array('username' => MANTIS_USERNAME, 'password' => MANTIS_PASSWORT, $issue);
$result = $this->soapClient->__soapCall('mc_issue_add',$params);
return $result;
}
/**
* Ticket holen
*/
public function getIssue($issue_id=1)
{
try
try
{
$params=array('username' => MANTIS_USERNAME, 'password' => MANTIS_PASSWORT,'issue_id' => $issue_id);
$result = $this->soapClient->__soapCall('mc_issue_get',$params);
$this->issue_id = $result->id;
$this->issue_id = $result->id;
$this->issue_view_state = new stdclass();
$this->issue_view_state->id = $result->view_state->id;
$this->issue_view_state->name = $result->view_state->name;
$this->issue_last_updated = $result->last_updated;
$this->issue_view_state->id = $result->view_state->id;
$this->issue_view_state->name = $result->view_state->name;
$this->issue_last_updated = $result->last_updated;
$this->issue_project = new stdclass();
$this->issue_project->id = $result->project->id;
$this->issue_project->name = $result->project->name;
$this->issue_category = $result->category;
$this->issue_project->id = $result->project->id;
$this->issue_project->name = $result->project->name;
$this->issue_category = $result->category;
$this->issue_priority = new stdclass();
$this->issue_priority->id = $result->priority->id;
$this->issue_priority->name = $result->priority->name;
$this->issue_priority->name = $result->priority->name;
$this->issue_severity = new stdclass();
$this->issue_severity->id = $result->severity->id;
$this->issue_severity->name = $result->severity->name;
$this->issue_severity->id = $result->severity->id;
$this->issue_severity->name = $result->severity->name;
$this->issue_status = new stdclass();
$this->issue_status->id = $result->status->id;
$this->issue_status->name = $result->status->name;
$this->issue_status->id = $result->status->id;
$this->issue_status->name = $result->status->name;
$this->issue_reporter = new stdclass();
$this->issue_reporter->id = $result->reporter->id;
$this->issue_reporter->name = $result->reporter->name;
$this->issue_reporter->real_name = $result->reporter->real_name;
$this->issue_reporter->email = $result->reporter->email;
$this->issue_summary = $result->summary;
$this->issue_reporter->id = $result->reporter->id;
$this->issue_reporter->name = $result->reporter->name;
$this->issue_reporter->real_name = $result->reporter->real_name;
$this->issue_reporter->email = $result->reporter->email;
$this->issue_summary = $result->summary;
$this->issue_reproducibility = new stdclass();
$this->issue_reproducibility->id = $result->reproducibility->id;
$this->issue_reproducibility->name = $result->reproducibility->name;
$this->issue_date_submitted = $result->date_submitted;
$this->issue_sponsorship_total = $result->sponsorship_total;
$this->issue_reproducibility->name = $result->reproducibility->name;
$this->issue_date_submitted = $result->date_submitted;
$this->issue_sponsorship_total = $result->sponsorship_total;
$this->issue_projection = new stdclass();
$this->issue_projection->id = $result->projection->id;
$this->issue_projection->name = $result->projection->name;
$this->issue_projection->id = $result->projection->id;
$this->issue_projection->name = $result->projection->name;
$this->issue_eta = new stdclass();
$this->issue_eta->id = $result->eta->id;
$this->issue_eta->id = $result->eta->id;
$this->issue_eta->name = $result->eta->name;
$this->issue_resolution = new stdclass();
$this->issue_resolution->id = $result->resolution->id;
$this->issue_resolution->name = $result->resolution->name;
$this->issue_tags = new stdclass();
$anzTags = count($result->tags);
$i = 1;
$this->issue_resolution->id = $result->resolution->id;
$this->issue_resolution->name = $result->resolution->name;
$this->issue_tags = new stdclass();
$anzTags = count($result->tags);
$i = 1;
foreach($result->tags as $r)
{
if($i == $anzTags)
$this->issue_tags->name.= $r->name;
$this->issue_tags->name.= $r->name;
else
$this->issue_tags->name.=$r->name.',';
$i++;
$this->issue_tags->name.=$r->name.',';
$i++;
}
if($anzTags == 0)
$this->issue_tags->name = '';
$this->issue_tags->name = '';
$this->issue_description = $result->description;
//$this->issue_attachments = $result->attachments;
$this->issue_due_date = $result->due_date;
$this->issue_description = $result->description;
//$this->issue_attachments = $result->attachments;
$this->issue_due_date = $result->due_date;
$this->issue_steps_to_reproduce = (isset($result->steps_to_reproduce)?$result->steps_to_reproduce:'');
$this->issue_additional_information = (isset($result->additional_information)?$result->additional_information:'');
return true;
}
catch (SoapFault $fault)
}
catch (SoapFault $fault)
{
$this->errormsg="SOAP-Fehler: ".$fault->faultstring;
return false;
@@ -254,7 +255,7 @@ class mantis extends basis_db
try
{
$params=array('username' => MANTIS_USERNAME, 'password' => MANTIS_PASSWORT);
$result = $this->soapClient->__soapCall('mc_projects_get_user_accessible',$params);
foreach($result as $row)
@@ -265,7 +266,7 @@ class mantis extends basis_db
$obj->issue_project->id = $row->id;
$this->result[] = $obj;
if(isset($row->subprojects))
{
foreach($row->subprojects as $row_sub)
@@ -274,15 +275,15 @@ class mantis extends basis_db
$obj->issue_project = new stdclass();
$obj->issue_project->name = $row_sub->name;
$obj->issue_project->id = $row_sub->id;
$this->result[] = $obj;
}
}
}
}
return true;
}
catch (SoapFault $fault)
}
catch (SoapFault $fault)
{
$this->errormsg="SOAP-Fehler: ".$fault->faultstring;
return false;
@@ -307,8 +308,8 @@ class mantis extends basis_db
$this->result[] = $obj;
}
return true;
}
catch (SoapFault $fault)
}
catch (SoapFault $fault)
{
$this->errormsg="SOAP-Fehler: ".$fault->faultstring;
return false;
+20 -16
View File
@@ -21,7 +21,7 @@
require_once(dirname(__FILE__)."/jquery.php");
echo '
<script>
var TARGET = "";
var SERVICE_TARGET = "";
function _GET()
{
var url = window.location.href;
@@ -37,16 +37,16 @@ echo '
return vars;
}
function AJAXCall(info, successfunction)
function AJAXCall(action, successfunction)
{
if(TARGET == "")
if(SERVICE_TARGET == "")
die("Es wurde kein AJAX-Target angegeben");
$.ajax(
{
url: TARGET,
url: SERVICE_TARGET,
type: "POST",
dataType: "html",
data: info,
data: action,
timeout: 5000
}).done(function(result)
@@ -60,32 +60,36 @@ echo '
die(result);
return false;
}
if(res.erfolg)
if(res.return)
{
try
if(res.action != "")
{
var ret = JSON.parse(res.info);
successfunction(ret);
}
catch(e)
{
die(res.info);
try
{
var ret = JSON.parse(res.action);
}
catch(e)
{
die(action.action + "<br><br>" + res.action);
}
}
successfunction(ret);
}
else
{
die(result);
die(res.message);
}
}).fail(function(jqXHR, status)
{
die(status);
die("AJAX failed: " + status);
});
}
function die(msg)
{
document.body.innerHTML = msg;
var full = "<h1 style=\'color:#900;\'>Fehler:</h1><div>"+msg+"</div>";
document.body.innerHTML = full;
throw new Error(msg);
}
+6 -7
View File
@@ -31,12 +31,12 @@ function returnAJAX($success, $obj)
//if there is an error
if(error_get_last())
$ret = array(
"erfolg" => false,
"return" => false,
);
else if(!$success)
{
$ret = array(
"erfolg" => false,
"return" => false,
"message" => $obj,
);
}
@@ -44,20 +44,19 @@ function returnAJAX($success, $obj)
else if (!$getuid = get_uid())
{
$ret = array(
"erfolg" => false,
"return" => false,
);
}
//if everything worked fine
else
{
$ret = array(
"erfolg" => true,
"user" => $getuid,
"info" => $obj,
"return" => true,
"action" => $obj,
);
}
echo json_encode($ret);
if($ret["erfolg"] === false)
if($ret["return"] === false)
die("");
}
?>
File diff suppressed because it is too large Load Diff
+62
View File
@@ -499,5 +499,67 @@ class ort extends basis_db
}
return true;
}
/**
* Laedt einen Ort (Limit 1) anhand seiner Planbezeichnung
* @param boolean aktiv (optional) default:true
* @param boolean lehre (optional) default:true
* @return true wenn ok, false im Fehlerfall
*/
public function getOrtByPlanbezeichnung($planbezeichnung, $aktiv=true, $lehre=true)
{
$qry = 'SELECT * FROM public.tbl_ort WHERE planbezeichnung='.$this->db_add_param($planbezeichnung);
if(!is_null($aktiv))
{
$qry .= ' AND aktiv='.$this->db_add_param($aktiv, FHC_BOOLEAN);
}
if(!is_null($lehre))
{
$qry .= ' AND lehre='.$this->db_add_param($lehre, FHC_BOOLEAN);
}
$qry .= ' ORDER BY ort_kurzbz LIMIT 1;';
if(!$this->db_query($qry))
{
$this->errormsg = 'Fehler beim Laden der Datensaetze';
return false;
}
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$ort_obj = new ort();
$ort_obj->ort_kurzbz = $row->ort_kurzbz;
$ort_obj->bezeichnung = $row->bezeichnung;
$ort_obj->planbezeichnung = $row->planbezeichnung;
$ort_obj->max_person = $row->max_person;
$ort_obj->aktiv = $this->db_parse_bool($row->aktiv);
$ort_obj->lehre = $this->db_parse_bool($row->lehre);
$ort_obj->lageplan = $row->lageplan;
$ort_obj->dislozierung = $row->dislozierung;
$ort_obj->kosten = $row->kosten;
$ort_obj->reservieren = $this->db_parse_bool($row->reservieren);
$ort_obj->ausstattung = $row->ausstattung;
$ort_obj->stockwerk = $row->stockwerk;
$ort_obj->standort_id = $row->standort_id;
$ort_obj->telefonklappe = $row->telefonklappe;
$ort_obj->content_id = $row->content_id;
$ort_obj->m2 = $row->m2;
$ort_obj->oe_kurzbz = $row->oe_kurzbz;
$ort_obj->gebteil = $row->gebteil;
$this->result[] = $ort_obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Datensaetze';
return false;
}
}
}
?>
Regular → Executable
+137 -63
View File
@@ -20,6 +20,8 @@
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once(dirname(__FILE__).'/datum.class.php');
// require_once(dirname(__FILE__).'/person.class.php');
// require_once(dirname(__FILE__).'/log.class.php');
// CI
require_once(dirname(__FILE__).'/../ci_hack.php');
@@ -53,17 +55,17 @@ class prestudent extends Person_model
public $punkte; //rt_gesamtpunkte
public $rt_punkte1;
public $rt_punkte2;
public $rt_punkte3 = 0;
public $bismelden = true;
public $rt_punkte3 = 0;
public $bismelden = true;
public $anmerkung;
public $anmerkung_status;
public $mentor;
public $ext_id_prestudent;
public $dual = false;
public $zgvdoktor_code;
public $zgvdoktorort;
public $zgvdoktordatum;
public $zgvdoktornation;
public $dual = false;
public $zgvdoktor_code;
public $zgvdoktorort;
public $zgvdoktordatum;
public $zgvdoktornation;
public $status_kurzbz;
public $studiensemester_kurzbz;
@@ -572,8 +574,8 @@ class prestudent extends Person_model
(
SELECT
*, (SELECT status_kurzbz FROM tbl_prestudentstatus
WHERE prestudent_id=prestudent.prestudent_id $stsemqry
ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) AS rolle
WHERE prestudent_id=prestudent.prestudent_id $stsemqry
ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) AS rolle
FROM tbl_prestudent prestudent ORDER BY prestudent_id
) a, tbl_prestudentstatus, tbl_person
WHERE a.rolle=tbl_prestudentstatus.status_kurzbz AND
@@ -979,9 +981,13 @@ class prestudent extends Person_model
return false;
}
$qry = "SELECT tbl_prestudentstatus.*, bezeichnung AS studienplan_bezeichnung
FROM public.tbl_prestudentstatus LEFT JOIN lehre.tbl_studienplan USING (studienplan_id)
WHERE prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER);
$qry = "SELECT tbl_prestudentstatus.*, bezeichnung AS studienplan_bezeichnung,
tbl_status.bezeichnung_mehrsprachig
FROM public.tbl_prestudentstatus
LEFT JOIN lehre.tbl_studienplan USING (studienplan_id)
JOIN public.tbl_status USING (status_kurzbz)
WHERE tbl_status.status_kurzbz = tbl_prestudentstatus.status_kurzbz
AND prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER);
if($studiensemester_kurzbz!='')
$qry.=" AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz);
@@ -996,6 +1002,7 @@ class prestudent extends Person_model
{
$this->prestudent_id = $row->prestudent_id;
$this->status_kurzbz = $row->status_kurzbz;
$this->status_mehrsprachig = $this->db_parse_lang_array($row->bezeichnung_mehrsprachig);
$this->studiensemester_kurzbz = $row->studiensemester_kurzbz;
$this->ausbildungssemester = $row->ausbildungssemester;
$this->datum = $row->datum;
@@ -1125,9 +1132,9 @@ class prestudent extends Person_model
$obj->ext_id_prestudent = $row->ext_id;
$obj->dual = $this->db_parse_bool($row->dual);
$obj->ausstellungsstaat = $row->ausstellungsstaat;
$obj->zgvdoktor_code = $row->zgvdoktor_code;
$obj->zgvdoktorort = $row->zgvdoktorort;
$obj->zgvdoktordatum = $row->zgvdoktordatum;
$obj->zgvdoktor_code = $row->zgvdoktor_code;
$obj->zgvdoktorort = $row->zgvdoktorort;
$obj->zgvdoktordatum = $row->zgvdoktordatum;
$this->result[] = $obj;
}
@@ -1140,56 +1147,60 @@ class prestudent extends Person_model
}
}
/**
* Gibt die eingetragenen ZGV zurück
* @return array
*/
public function getZgv() {
/**
* Gibt die eingetragenen ZGV zurück
* @return array
*/
public function getZgv()
{
$zgv = array(
'bachelor' => array(),
'master' => array(),
// 'doktor' => array(),
);
$attribute = array(
'art',
'ort',
'datum',
'nation',
);
$db_attribute = array(
'zgv_code',
'zgvort',
'zgvdatum',
'zgvnation',
'zgvmas_code',
'zgvmaort',
'zgvmadatum',
'zgvmanation',
'zgvdoktor_code',
'zgvdoktorort',
'zgvdoktordatum',
'zgvdoktornation',
);
$zgv = array
(
'bachelor' => array(),
'master' => array(),
//'doktor' => array(),
);
$attribute = array
(
'art',
'ort',
'datum',
'nation',
);
$db_attribute = array
(
'zgv_code',
'zgvort',
'zgvdatum',
'zgvnation',
'zgvmas_code',
'zgvmaort',
'zgvmadatum',
'zgvmanation',
'zgvdoktor_code',
'zgvdoktorort',
'zgvdoktordatum',
'zgvdoktornation',
);
foreach($this->result as $prestudent) {
foreach($zgv as &$value) {
foreach($attribute as $attribut) {
$db_attribute_name = current($db_attribute);
if($prestudent->$db_attribute_name) {
$value[$attribut] = $prestudent->$db_attribute_name;
}
next($db_attribute);
}
}
reset($db_attribute);
}
return $zgv;
}
foreach($this->result as $prestudent)
{
foreach($zgv as &$value)
{
foreach($attribute as $attribut)
{
$db_attribute_name = current($db_attribute);
if($prestudent->$db_attribute_name)
{
$value[$attribut] = $prestudent->$db_attribute_name;
}
next($db_attribute);
}
}
reset($db_attribute);
}
return $zgv;
}
/**
* Liefert die Anzahl der Bewerber im ausgewaehlten Bereich
@@ -1718,4 +1729,67 @@ class prestudent extends Person_model
return false;
}
}
/**
* Laedt alle Studenten eines Studienplans und eines Studiensemesters
* @param $studienplan_id
* @param $studiensemester_kurzbz
* @param $studiengang_kz
* @return array mit allen Prestudenten, welche sich für den angegebenen Studienplan im angegebenen Semester beworben haben
*/
public function getAllStudentenFromStudienplanAndStudsem($studienplan_id, $studiensemester_kurzbz, $studiengang_kz)
{
if(!is_numeric($studienplan_id))
{
$this->errormsg = 'studienplan_id ist ungueltig';
return false;
}
if(!$studiensemester_kurzbz || $studiensemester_kurzbz == "")
{
$this->errormsg = 'studiensemester_kurzbz ist ungueltig';
return false;
}
$qry = "SELECT DISTINCT prestudent_id, vorname, nachname, gebdatum, rt_gesamtpunkte, tbl_prestudent.studiengang_kz, bis.tbl_zgvgruppe.bezeichnung, get_rolle_prestudent(prestudent_id, null) as laststatus
FROM
public.tbl_prestudent
JOIN public.tbl_person USING(person_id)
LEFT JOIN bis.tbl_zgvgruppe_zuordnung USING(zgv_code)
LEFT JOIN bis.tbl_zgvgruppe USING(gruppe_kurzbz)
WHERE
tbl_prestudent.studiengang_kz=". $this->db_add_param($studiengang_kz)."
AND EXISTS(
SELECT
1
FROM
public.tbl_prestudentstatus
WHERE
tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id
AND studiensemester_kurzbz=". $this->db_add_param($studiensemester_kurzbz)."
AND status_kurzbz='Bewerber'
AND (
studienplan_id=". $this->db_add_param($studienplan_id)."
OR
(anmerkung like '%' || (SELECT orgform_kurzbz || '_' || sprache FROM lehre.tbl_studienplan WHERE studienplan_id=". $this->db_add_param($studienplan_id).") || '%')
)
);";
if($result = $this->db_query($qry))
{
$ret = array();
while($row = $this->db_fetch_object($result))
$ret[] = $row;
return $ret;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
}
+455 -437
View File
@@ -1,437 +1,455 @@
<?php
/* Copyright (C) 2011 FH 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>,
* Andreas Österreicher <andreas.oesterreicher@technikum-wien.at>
*/
/**
* Klasse projekt
*
* Verwaltet die Projekte
*/
require_once(dirname(__FILE__).'/basis_db.class.php');
class projekt extends basis_db
{
public $new; // boolean
public $result = array(); // projekt Objekt
//Tabellenspalten
public $projekt_kurzbz; // string
public $nummer; // string
public $titel; // string
public $beschreibung; // string
public $beginn; // date
public $ende; // date
public $oe_kurzbz; // string
public $insertamum; // timestamp
public $insertvon; // string
public $updateamum; // timestamp
public $updatevon; // string
public $budget;
public $farbe;
/**
* Konstruktor
* @param $projekt_kurzbz ID der Projektarbeit, die geladen werden soll (Default=null)
*/
public function __construct($projekt_kurzbz=null)
{
parent::__construct();
if($projekt_kurzbz != null)
$this->load($projekt_kurzbz);
}
/**
* Laedt die Projek mit der Kurzbezeichnung $projekt_kurzbz
* @param $projekt_kurzbz Kurzbz des Projekts
* @return true wenn ok, false im Fehlerfall
*/
public function load($projekt_kurzbz)
{
$qry = "SELECT * FROM fue.tbl_projekt WHERE projekt_kurzbz=".$this->db_add_param($projekt_kurzbz);
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->projekt_kurzbz = $row->projekt_kurzbz;
$this->nummer= $row->nummer;
$this->titel= $row->titel;
$this->beschreibung= $row->beschreibung;
$this->beginn= $row->beginn;
$this->ende = $row->ende;
$this->oe_kurzbz= $row->oe_kurzbz;
$this->budget= $row->budget;
$this->farbe= $row->farbe;
return true;
}
else
{
$this->errormsg = 'Datensatz wurde nicht gefunden';
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Laedt alle aktuellen Projekte
* @param $kommend lädt auch alle zukünftigen
* @return boolean
*/
public function getProjekteAktuell($filter_kommende = false, $oe=null)
{
$qry = 'SELECT * FROM fue.tbl_projekt WHERE ';
if($filter_kommende)
$qry.= " ((beginn < CURRENT_TIMESTAMP AND ende > CURRENT_TIMESTAMP) OR beginn > CURRENT_TIMESTAMP)";
else
$qry.=" (beginn < CURRENT_TIMESTAMP AND ende > CURRENT_TIMESTAMP)";
if(!is_null($oe))
$qry.= ' AND oe_kurzbz='.$this->db_add_param($oe);
$qry.= ' ORDER BY oe_kurzbz;';
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$obj = new projekt();
$obj->projekt_kurzbz = $row->projekt_kurzbz;
$obj->nummer = $row->nummer;
$obj->titel = $row->titel;
$obj->beschreibung = $row->beschreibung;
$obj->beginn = $row->beginn;
$obj->ende = $row->ende;
$obj->oe_kurzbz = $row->oe_kurzbz;
$obj->budget = $row->budget;
$obj->farbe = $row->farbe;
$obj->aufwandstyp_kurzbz = $row->aufwandstyp_kurzbz;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Laedt alle Projekte die zwischen beginn und ende liegen
* @param $beginn
* @param $ende
* @param $oe
* @return boolean
*/
public function getProjekteInZeitraum($beginn, $ende, $oe=null)
{
$qry = 'select * from fue.tbl_projekt where beginn <= '.$this->db_add_param($ende).' and ende >= '.$this->db_add_param($beginn);
if (!is_null($oe))
$qry.= " AND oe_kurzbz=".$this->db_add_param($oe);
$qry.= ' ORDER BY oe_kurzbz;';
//echo $qry;
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$obj = new projekt();
$obj->projekt_kurzbz = $row->projekt_kurzbz;
$obj->nummer = $row->nummer;
$obj->titel = $row->titel;
$obj->beschreibung = $row->beschreibung;
$obj->beginn = $row->beginn;
$obj->ende = $row->ende;
$obj->oe_kurzbz = $row->oe_kurzbz;
$obj->budget = $row->budget;
$obj->farbe = $row->farbe;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Laedt die Projeke einer Organisationseinheit
* @param $projekt_kurzbz Kurzbezeichnung des Projekts
* @return true wenn ok, false im Fehlerfall
*/
public function getProjekte($oe=null)
{
$qry = 'SELECT * FROM fue.tbl_projekt';
if (!is_null($oe))
$qry.= " WHERE oe_kurzbz=".$this->db_add_param($oe);
$qry.= ' ORDER BY oe_kurzbz;';
//echo $qry;
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$obj = new projekt();
$obj->projekt_kurzbz = $row->projekt_kurzbz;
$obj->nummer = $row->nummer;
$obj->titel = $row->titel;
$obj->beschreibung = $row->beschreibung;
$obj->beginn = $row->beginn;
$obj->ende = $row->ende;
$obj->oe_kurzbz = $row->oe_kurzbz;
$obj->budget = $row->budget;
$obj->farbe = $row->farbe;
$obj->aufwandstyp_kurzbz = $row->aufwandstyp_kurzbz;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Prueft die Variablen auf Gueltigkeit
* @return true wenn ok, false im Fehlerfall
*/
protected function validate()
{
//Gesamtlaenge pruefen
if ($this->projekt_kurzbz==null)
{
$this->errormsg='Projekt kurzbz darf nicht NULL sein!';
}
if ($this->oe_kurzbz==null)
{
$this->errormsg='OE kurbz darf nicht NULL sein!';
}
if(mb_strlen($this->projekt_kurzbz)>16)
{
$this->errormsg = 'Projektyp_kurzbz darf nicht länger als 16 Zeichen sein';
return false;
}
if(mb_strlen($this->nummer)>8)
{
$this->errormsg = 'Nummer darf nicht länger als 8 Zeichen sein';
return false;
}
if(mb_strlen($this->titel)>256)
{
$this->errormsg = 'Titel darf nicht länger als 256 Zeichen sein';
return false;
}
$this->errormsg = '';
return true;
}
/**
* Speichert den aktuellen Datensatz in die Datenbank
* Wenn $neu auf true gesetzt ist wird ein neuer Datensatz angelegt
* andernfalls wird der Datensatz mit der ID in $projekt_kurzbz aktualisiert
* @return true wenn ok, false im Fehlerfall
*/
public function save($new=null)
{
//Variablen pruefen
if(!$this->validate())
return false;
if($new==null)
$new = $this->new;
if($new)
{
//Neuen Datensatz einfuegen
$qry='INSERT INTO fue.tbl_projekt (projekt_kurzbz, nummer, titel,beschreibung, beginn, ende, budget, farbe, oe_kurzbz, aufwandstyp_kurzbz) VALUES('.
$this->db_add_param($this->projekt_kurzbz).', '.
$this->db_add_param($this->nummer).', '.
$this->db_add_param($this->titel).', '.
$this->db_add_param($this->beschreibung).', '.
$this->db_add_param($this->beginn).', '.
$this->db_add_param($this->ende).', '.
$this->db_add_param($this->budget).', '.
$this->db_add_param($this->farbe).', '.
$this->db_add_param($this->oe_kurzbz).','.
$this->db_add_param($this->aufwandstyp_kurzbz).');';
}
else
{
//Updaten des bestehenden Datensatzes
$qry='UPDATE fue.tbl_projekt SET '.
'projekt_kurzbz='.$this->db_add_param($this->projekt_kurzbz).', '.
'nummer='.$this->db_add_param($this->nummer).', '.
'titel='.$this->db_add_param($this->titel).', '.
'beschreibung='.$this->db_add_param($this->beschreibung).', '.
'beginn='.$this->db_add_param($this->beginn).', '.
'ende='.$this->db_add_param($this->ende).', '.
'budget='.$this->db_add_param($this->budget).', '.
'farbe='.$this->db_add_param($this->farbe).', '.
'oe_kurzbz='.$this->db_add_param($this->oe_kurzbz).', '.
'aufwandstyp_kurzbz='.$this->db_add_param($this->aufwandstyp_kurzbz).' '.
'WHERE projekt_kurzbz='.$this->db_add_param($this->projekt_kurzbz).';';
}
if($this->db_query($qry))
{
return true;
}
else
{
$this->errormsg = 'Fehler beim Speichern der Daten';
return false;
}
}
/**
* Loescht den Datenensatz
* @param $projekt_kurzbz Projekt das geloescht werden soll
* @return true wenn ok, false im Fehlerfall
*/
public function delete($projekt_kurzbz)
{
$qry = "DELETE FROM lehre.tbl_projek WHERE projekt_kurzbz=".$this->db_add_param($projekt_kurzbz);
if($this->db_query($qry))
{
return true;
}
else
{
$this->errormsg = 'Fehler beim Loeschen des Datensatzes';
return false;
}
}
/**
* Liefert die Projekte zu denen ein Mitarbeiter zugeordnet ist.
* Optional auch mit den Zuteilungen zu Projektphasen.
* @param $mitarbeiter_uid
* @param $projektphasen boolean Default false. Wenn true, werden auch Zuteilungen zu Projektphasen geliefert.
*/
function getProjekteMitarbeiter($mitarbeiter_uid, $projektphasen=false)
{
$qry = "SELECT DISTINCT
tbl_projekt.*
FROM
fue.tbl_ressource
JOIN fue.tbl_projekt_ressource USING(ressource_id)
JOIN fue.tbl_projekt USING(projekt_kurzbz)
WHERE (beginn<=now() or beginn is null)
AND (ende>=now() OR ende is null)
AND mitarbeiter_uid=".$this->db_add_param($mitarbeiter_uid);
if ($projektphasen==true)
$qry.= "UNION
SELECT DISTINCT
tbl_projekt.*
FROM
fue.tbl_projektphase
JOIN fue.tbl_projekt USING (projekt_kurzbz)
JOIN fue.tbl_projekt_ressource USING (projektphase_id)
JOIN fue.tbl_ressource ON (tbl_ressource.ressource_id=tbl_projekt_ressource.ressource_id)
WHERE (tbl_projekt.beginn<=now() or tbl_projekt.beginn is null)
AND (tbl_projekt.ende>=now() OR tbl_projekt.ende is null)
AND mitarbeiter_uid=".$this->db_add_param($mitarbeiter_uid);
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$obj = new projekt();
$obj->projekt_kurzbz = $row->projekt_kurzbz;
$obj->nummer = $row->nummer;
$obj->titel = $row->titel;
$obj->beschreibung = $row->beschreibung;
$obj->beginn = $row->beginn;
$obj->ende = $row->ende;
$obj->oe_kurzbz = $row->oe_kurzbz;
$this->result[] = $obj;
}
return true;
}
else
{
$this->erromsg = 'Fehler beim Laden der Daten';
return false;
}
}
public function getProjektFromBestellung($bestellung_id)
{
$qry ="select * from fue.tbl_projekt
join wawi.tbl_projekt_bestellung USING (projekt_kurzbz)
where bestellung_id= ".$this->db_add_param($bestellung_id);
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->projekt_kurzbz = $row->projekt_kurzbz;
$this->nummer= $row->nummer;
$this->titel= $row->titel;
$this->beschreibung= $row->beschreibung;
$this->beginn= $row->beginn;
$this->ende = $row->ende;
$this->oe_kurzbz= $row->oe_kurzbz;
$this->budget= $row->budget;
$this->farbe= $row->farbe;
return true;
}
else
{
$this->errormsg = 'Datensatz wurde nicht gefunden';
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
}
?>
<?php
/* Copyright (C) 2011 FH 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>,
* Andreas Österreicher <andreas.oesterreicher@technikum-wien.at>
*/
/**
* Klasse projekt
*
* Verwaltet die Projekte
* @param string $projekt_kurzbz primary key Projektname.
*/
require_once(dirname(__FILE__).'/basis_db.class.php');
class projekt extends basis_db
{
public $new; // boolean
public $result = array(); // projekt Objekt
//Tabellenspalten
public $projekt_kurzbz; // string
public $nummer; // string
public $titel; // string
public $beschreibung; // string
public $beginn; // date
public $ende; // date
public $oe_kurzbz; // string
public $insertamum; // timestamp
public $insertvon; // string
public $updateamum; // timestamp
public $updatevon; // string
public $budget;
public $farbe;
public $anzahl_ma; // integer
public $aufwand_pt; // integer
/**
* Konstruktor
* @param string $projekt_kurzbz ID der Projektarbeit, die geladen werden soll (Default=null).
*/
public function __construct($projekt_kurzbz = null)
{
parent::__construct();
if($projekt_kurzbz != null)
$this->load($projekt_kurzbz);
}
/**
* Laedt die Projek mit der Kurzbezeichnung $projekt_kurzbz
* @param string $projekt_kurzbz Kurzbz des Projekts.
* @return true wenn ok, false im Fehlerfall
*/
public function load($projekt_kurzbz)
{
$qry = "SELECT * FROM fue.tbl_projekt WHERE projekt_kurzbz=".$this->db_add_param($projekt_kurzbz);
if ($this->db_query($qry))
{
if ($row = $this->db_fetch_object())
{
$this->projekt_kurzbz = $row->projekt_kurzbz;
$this->nummer = $row->nummer;
$this->titel = $row->titel;
$this->beschreibung = $row->beschreibung;
$this->beginn = $row->beginn;
$this->ende = $row->ende;
$this->oe_kurzbz = $row->oe_kurzbz;
$this->budget = $row->budget;
$this->farbe = $row->farbe;
$this->anzahl_ma = $row->anzahl_ma;
$this->aufwand_pt = $row->aufwand_pt;
return true;
}
else
{
$this->errormsg = 'Datensatz wurde nicht gefunden';
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Laedt alle aktuellen Projekte
* @param bool $filter_kommende Lädt auch alle zukünftigen.
* @param string $oe Organisationseinheit.
* @return bool
*/
public function getProjekteAktuell($filter_kommende = false, $oe = null)
{
$qry = 'SELECT * FROM fue.tbl_projekt WHERE ';
if($filter_kommende)
$qry .= " ((beginn < CURRENT_TIMESTAMP AND ende > CURRENT_TIMESTAMP) OR beginn > CURRENT_TIMESTAMP)";
else
$qry .= " (beginn < CURRENT_TIMESTAMP AND ende > CURRENT_TIMESTAMP)";
if (!is_null($oe))
$qry .= ' AND oe_kurzbz='.$this->db_add_param($oe);
$qry .= ' ORDER BY oe_kurzbz;';
if ($this->db_query($qry))
{
while ($row = $this->db_fetch_object())
{
$obj = new projekt();
$obj->projekt_kurzbz = $row->projekt_kurzbz;
$obj->nummer = $row->nummer;
$obj->titel = $row->titel;
$obj->beschreibung = $row->beschreibung;
$obj->beginn = $row->beginn;
$obj->ende = $row->ende;
$obj->oe_kurzbz = $row->oe_kurzbz;
$obj->budget = $row->budget;
$obj->farbe = $row->farbe;
$obj->aufwandstyp_kurzbz = $row->aufwandstyp_kurzbz;
$obj->anzahl_ma = $row->anzahl_ma;
$obj->aufwand_pt = $row->aufwand_pt;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Laedt alle Projekte die zwischen beginn und ende liegen
* @param date $beginn Anfang.
* @param date $ende Ende.
* @param string $oe Organisationseinheit.
* @return bool
*/
public function getProjekteInZeitraum($beginn, $ende, $oe = null)
{
$qry = 'select * from fue.tbl_projekt where beginn <= '.$this->db_add_param($ende).' and ende >= '.$this->db_add_param($beginn);
if (!is_null($oe))
$qry .= " AND oe_kurzbz=".$this->db_add_param($oe);
$qry .= ' ORDER BY oe_kurzbz;';
//echo $qry;
if ($this->db_query($qry))
{
while ($row = $this->db_fetch_object())
{
$obj = new projekt();
$obj->projekt_kurzbz = $row->projekt_kurzbz;
$obj->nummer = $row->nummer;
$obj->titel = $row->titel;
$obj->beschreibung = $row->beschreibung;
$obj->beginn = $row->beginn;
$obj->ende = $row->ende;
$obj->oe_kurzbz = $row->oe_kurzbz;
$obj->budget = $row->budget;
$obj->farbe = $row->farbe;
$obj->anzahl_ma = $row->anzahl_ma;
$obj->aufwand_pt = $row->aufwand_pt;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Laedt die Projeke einer Organisationseinheit
* @param string $oe Organisationseinheit.
* @return true wenn ok, false im Fehlerfall
*/
public function getProjekte($oe = null)
{
$qry = 'SELECT * FROM fue.tbl_projekt';
if (!is_null($oe))
$qry .= " WHERE oe_kurzbz=".$this->db_add_param($oe);
$qry .= ' ORDER BY oe_kurzbz;';
//echo $qry;
if ($this->db_query($qry))
{
while ($row = $this->db_fetch_object())
{
$obj = new projekt();
$obj->projekt_kurzbz = $row->projekt_kurzbz;
$obj->nummer = $row->nummer;
$obj->titel = $row->titel;
$obj->beschreibung = $row->beschreibung;
$obj->beginn = $row->beginn;
$obj->ende = $row->ende;
$obj->oe_kurzbz = $row->oe_kurzbz;
$obj->budget = $row->budget;
$obj->farbe = $row->farbe;
$obj->aufwandstyp_kurzbz = $row->aufwandstyp_kurzbz;
$obj->anzahl_ma = $row->anzahl_ma;
$obj->aufwand_pt = $row->aufwand_pt;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Prueft die Variablen auf Gueltigkeit
* @return true wenn ok, false im Fehlerfall
*/
protected function validate()
{
//Gesamtlaenge pruefen
if ($this->projekt_kurzbz == null)
{
$this->errormsg = 'Projekt kurzbz darf nicht NULL sein!';
}
if ($this->oe_kurzbz == null)
{
$this->errormsg = 'OE kurbz darf nicht NULL sein!';
}
if (mb_strlen($this->projekt_kurzbz) > 16)
{
$this->errormsg = 'Projektyp_kurzbz darf nicht länger als 16 Zeichen sein';
return false;
}
if (mb_strlen($this->nummer) > 8)
{
$this->errormsg = 'Nummer darf nicht länger als 8 Zeichen sein';
return false;
}
if (mb_strlen($this->titel) > 256)
{
$this->errormsg = 'Titel darf nicht länger als 256 Zeichen sein';
return false;
}
$this->errormsg = '';
return true;
}
/**
* Speichert den aktuellen Datensatz in die Datenbank
* Wenn $neu auf true gesetzt ist wird ein neuer Datensatz angelegt
* andernfalls wird der Datensatz mit der ID in $projekt_kurzbz aktualisiert
* @param bool $new Neu ja/nein.
* @return true wenn ok, false im Fehlerfall
*/
public function save($new = null)
{
//Variablen pruefen
if(!$this->validate())
return false;
if ($new == null)
$new = $this->new;
if ($new)
{
//Neuen Datensatz einfuegen
$qry = 'INSERT INTO fue.tbl_projekt (projekt_kurzbz, nummer, titel,beschreibung, beginn, ende, budget, farbe, oe_kurzbz, aufwand_pt, anzahl_ma, aufwandstyp_kurzbz) VALUES('.
$this->db_add_param($this->projekt_kurzbz).', '.
$this->db_add_param($this->nummer).', '.
$this->db_add_param($this->titel).', '.
$this->db_add_param($this->beschreibung).', '.
$this->db_add_param($this->beginn).', '.
$this->db_add_param($this->ende).', '.
$this->db_add_param($this->budget).', '.
$this->db_add_param($this->farbe).', '.
$this->db_add_param($this->oe_kurzbz).','.
$this->db_add_param($this->aufwand_pt).','.
$this->db_add_param($this->anzahl_ma).','.
$this->db_add_param($this->aufwandstyp_kurzbz).');';
}
else
{
//Updaten des bestehenden Datensatzes
$qry = 'UPDATE fue.tbl_projekt SET '.
'projekt_kurzbz='.$this->db_add_param($this->projekt_kurzbz).', '.
'nummer='.$this->db_add_param($this->nummer).', '.
'titel='.$this->db_add_param($this->titel).', '.
'beschreibung='.$this->db_add_param($this->beschreibung).', '.
'beginn='.$this->db_add_param($this->beginn).', '.
'ende='.$this->db_add_param($this->ende).', '.
'budget='.$this->db_add_param($this->budget).', '.
'farbe='.$this->db_add_param($this->farbe).', '.
'oe_kurzbz='.$this->db_add_param($this->oe_kurzbz).', '.
'anzahl_ma='.$this->db_add_param($this->anzahl_ma).', '.
'aufwand_pt='.$this->db_add_param($this->aufwand_pt).', '.
'aufwandstyp_kurzbz='.$this->db_add_param($this->aufwandstyp_kurzbz).' '.
'WHERE projekt_kurzbz='.$this->db_add_param($this->projekt_kurzbz).';';
}
if ($this->db_query($qry))
{
return true;
}
else
{
$this->errormsg = 'Fehler beim Speichern der Daten';
return false;
}
}
/**
* Loescht den Datenensatz
* @param string $projekt_kurzbz Projekt das geloescht werden soll.
* @return true wenn ok, false im Fehlerfall
*/
public function delete($projekt_kurzbz)
{
$qry = "DELETE FROM lehre.tbl_projek WHERE projekt_kurzbz=".$this->db_add_param($projekt_kurzbz);
if ($this->db_query($qry))
{
return true;
}
else
{
$this->errormsg = 'Fehler beim Loeschen des Datensatzes';
return false;
}
}
/**
* Liefert die Projekte zu denen ein Mitarbeiter zugeordnet ist.
* Optional auch mit den Zuteilungen zu Projektphasen.
* @param string $mitarbeiter_uid MitarbeiterUID.
* @param bool $projektphasen Default false. Wenn true, werden auch Zuteilungen zu Projektphasen geliefert.
* @return true wenn ok, false im Fehlerfall
*/
function getProjekteMitarbeiter($mitarbeiter_uid, $projektphasen = false)
{
$qry = "SELECT DISTINCT
tbl_projekt.*
FROM
fue.tbl_ressource
JOIN fue.tbl_projekt_ressource USING(ressource_id)
JOIN fue.tbl_projekt USING(projekt_kurzbz)
WHERE (beginn<=now() or beginn is null)
AND (ende>=now() OR ende is null)
AND mitarbeiter_uid=".$this->db_add_param($mitarbeiter_uid);
if ($projektphasen == true)
$qry .= "UNION
SELECT DISTINCT
tbl_projekt.*
FROM
fue.tbl_projektphase
JOIN fue.tbl_projekt USING (projekt_kurzbz)
JOIN fue.tbl_projekt_ressource USING (projektphase_id)
JOIN fue.tbl_ressource ON (tbl_ressource.ressource_id=tbl_projekt_ressource.ressource_id)
WHERE (tbl_projekt.beginn<=now() or tbl_projekt.beginn is null)
AND (tbl_projekt.ende>=now() OR tbl_projekt.ende is null OR 1=1)
AND mitarbeiter_uid=".$this->db_add_param($mitarbeiter_uid);
if ($result = $this->db_query($qry))
{
while ($row = $this->db_fetch_object($result))
{
$obj = new projekt();
$obj->projekt_kurzbz = $row->projekt_kurzbz;
$obj->nummer = $row->nummer;
$obj->titel = $row->titel;
$obj->beschreibung = $row->beschreibung;
$obj->beginn = $row->beginn;
$obj->ende = $row->ende;
$obj->oe_kurzbz = $row->oe_kurzbz;
$this->result[] = $obj;
}
return true;
}
else
{
$this->erromsg = 'Fehler beim Laden der Daten';
return false;
}
}
public function getProjektFromBestellung($bestellung_id)
{
$qry = "select * from fue.tbl_projekt
join wawi.tbl_projekt_bestellung USING (projekt_kurzbz)
where bestellung_id= ".$this->db_add_param($bestellung_id);
if ($this->db_query($qry))
{
if ($row = $this->db_fetch_object())
{
$this->projekt_kurzbz = $row->projekt_kurzbz;
$this->nummer = $row->nummer;
$this->titel = $row->titel;
$this->beschreibung = $row->beschreibung;
$this->beginn = $row->beginn;
$this->ende = $row->ende;
$this->oe_kurzbz = $row->oe_kurzbz;
$this->budget = $row->budget;
$this->farbe = $row->farbe;
$this->anzahl_ma = $row->anzahl_ma;
$this->aufwand_pt = $row->aufwand_pt;
return true;
}
else
{
$this->errormsg = 'Datensatz wurde nicht gefunden';
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
}
?>
Regular → Executable
View File
+8 -2
View File
@@ -39,6 +39,7 @@ class pruefungsanmeldung extends basis_db {
public $statusupdatevon; //varchar(32)
public $statusupdateamum; //timestamp
public $anrechnung_id; //integer
public $pruefungstyp_kurzbz; //varchar(32)
/**
* Konstruktor
@@ -92,7 +93,7 @@ class pruefungsanmeldung extends basis_db {
if($new)
{
$qry = 'INSERT INTO campus.tbl_pruefungsanmeldung (uid, pruefungstermin_id, lehrveranstaltung_id, status_kurzbz, wuensche, reihung, kommentar, anrechnung_id) VALUES ('
$qry = 'INSERT INTO campus.tbl_pruefungsanmeldung (uid, pruefungstermin_id, lehrveranstaltung_id, status_kurzbz, wuensche, reihung, kommentar, anrechnung_id, pruefungstyp_kurzbz) VALUES ('
. $this->db_add_param($this->uid).', '
. $this->db_add_param($this->pruefungstermin_id).', '
. $this->db_add_param($this->lehrveranstaltung_id).', '
@@ -100,7 +101,8 @@ class pruefungsanmeldung extends basis_db {
. $this->db_add_param($this->wuensche).', '
. $this->db_add_param($this->reihung).', '
. $this->db_add_param($this->kommentar).', '
. $this->db_add_param($this->anrechnung_id).');';
. $this->db_add_param($this->anrechnung_id).', '
. $this->db_add_param($this->pruefungstyp_kurzbz).');';
}
else
{
@@ -113,6 +115,7 @@ class pruefungsanmeldung extends basis_db {
. 'reihung='.$this->db_add_param($this->reihung).', '
. 'kommentar='.$this->db_add_param($this->kommentar).', '
. 'anrechnung_id='.$this->db_add_param($this->anrechnung_id)
. 'pruefungstyp_kurzbz='.$this->db_add_param($this->pruefungstyp_kurzbz)
. ' WHERE pruefungsanmeldung_id='.$this->db_add_param($this->pruefungsanmeldung_id).';';
}
@@ -162,6 +165,7 @@ class pruefungsanmeldung extends basis_db {
$this->statusupdateamum = $row->statusupdateamum;
$this->statusupdatevon = $row->statusupdatevon;
$this->anrechnung_id = $row->anrechnung_id;
$this->pruefungstyp_kurzbz = $row->pruefungstyp_kurzbz;
}
return true;
}
@@ -206,6 +210,7 @@ class pruefungsanmeldung extends basis_db {
$anmeldung->statusupdateamum = $row->statusupdateamum;
$anmeldung->statusupdatevon = $row->statusupdatevon;
$anmeldung->anrechnung_id = $row->anrechnung_id;
$anmeldung->pruefungstyp_kurzbz = $row->pruefungstyp_kurzbz;
array_push($anmeldungen, $anmeldung);
}
return $anmeldungen;
@@ -264,6 +269,7 @@ class pruefungsanmeldung extends basis_db {
$anmeldung->statusupdateamum = $row->statusupdateamum;
$anmeldung->statusupdatevon = $row->statusupdatevon;
$anmeldung->anrechnung_id = $row->anrechnung_id;
$anmeldung->pruefungstyp_kurzbz = $row->pruefungstyp_kurzbz;
array_push($anmeldungen, $anmeldung);
}
return $anmeldungen;
Regular → Executable
+149 -111
View File
@@ -17,7 +17,7 @@
*
* Authors: Karl Burkhart <burkhart@technikum-wien.at>.
*/
require_once(dirname(__FILE__).'/basis_db.class.php');
class ressource extends basis_db
@@ -31,13 +31,13 @@ class ressource extends basis_db
public $beschreibung; //string
public $mitarbeiter_uid; //string
public $student_uid; //string
public $betriebsmittel_id; //integer
public $firma_id; //integer
public $betriebsmittel_id; //integer
public $firma_id; //integer
public $insertamum; //timestamp
public $insertvon; //string
public $updateamum; //timestamp
public $updatevon; //string
// zwischentabelle projekt_ressource
public $projekt_ressource_id;
public $projektphase_id;
@@ -53,7 +53,7 @@ class ressource extends basis_db
{
parent::__construct();
if($ressource_id != null)
if($ressource_id != null)
$this->load($ressource_id);
}
@@ -69,9 +69,9 @@ class ressource extends basis_db
$this->errormsg = 'Ressource_id muss eine gueltige Zahl sein';
return false;
}
$qry = "SELECT * FROM fue.tbl_ressource WHERE ressource_id=".$this->db_add_param($ressource_id, FHC_INTEGER);
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
@@ -86,16 +86,17 @@ class ressource extends basis_db
$this->insertamum = $row->insertamum;
$this->insertvon = $row->insertvon;
$this->updateamum = $row->updateamum;
$this->updatevon = $row->updatevon;
$this->updatevon = $row->updatevon;
$this->funktion_kurzbz = $row->funktion_kurzbz;
return true;
}
else
else
{
$this->errormsg = 'Datensatz wurde nicht gefunden';
return false;
}
}
else
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
@@ -104,21 +105,21 @@ class ressource extends basis_db
/**
* Laedt alle Ressourcen
* @param $projekt_kurzbz, wenn null -> werden alle ressourcen geladen
* @param $projekt_kurzbz, wenn null -> werden alle ressourcen geladen
* @return true wenn ok, false im Fehlerfall
*/
public function getAllRessourcen()
{
$qry = "SELECT * FROM fue.tbl_ressource order by bezeichnung";
$this->result=array();
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$obj = new ressource();
$obj->ressource_id = $row->ressource_id;
$obj->bezeichnung = $row->bezeichnung;
$obj->beschreibung = $row->beschreibung;
@@ -129,39 +130,39 @@ class ressource extends basis_db
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->updateamum = $row->updateamum;
$obj->updatevon = $row->updatevon;
$obj->updatevon = $row->updatevon;
$this->result[] = $obj;
}
//var_dump($this->result);
return true;
}
else
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
*
*
* Lädt alle Ressourcen zu einem Projekt
* @param $project_kurzbz
* @return true wenn ok, false im Fehlerfall
*/
public function getProjectRessourcen($project_kurzbz)
{
$qry = "SELECT ressource.*, project.projekt_ressource_id, project.aufwand FROM fue.tbl_ressource as ressource
JOIN fue.tbl_projekt_ressource project ON(project.ressource_id = ressource.ressource_id)
$qry = "SELECT ressource.*, project.projekt_ressource_id, project.aufwand, project.funktion_kurzbz FROM fue.tbl_ressource as ressource
JOIN fue.tbl_projekt_ressource project ON(project.ressource_id = ressource.ressource_id)
WHERE project.projekt_kurzbz =".$this->db_add_param($project_kurzbz).";";
$this->result=array();
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$obj = new ressource();
$obj->ressource_id = $row->ressource_id;
$obj->bezeichnung = $row->bezeichnung;
$obj->beschreibung = $row->beschreibung;
@@ -173,41 +174,77 @@ class ressource extends basis_db
$obj->insertvon = $row->insertvon;
$obj->updateamum = $row->updateamum;
$obj->updatevon = $row->updatevon;
$obj->aufwand = $row->aufwand;
$obj->aufwand = $row->aufwand;
$obj->funktion_kurzbz = $row->funktion_kurzbz;
$obj->projekt_ressource_id= $row->projekt_ressource_id;
$this->result[] = $obj;
}
//var_dump($this->result);
return true;
}
else
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
*
*
* Lädt die Projektressource
* @param $project_ressource_id
* @return true wenn ok, false im Fehlerfall
*/
public function getSingleProjektRessource($projekt_ressource_id)
{
$qry = "select * from fue.tbl_projekt_ressource where projekt_ressource_id = ".$this->db_add_param($projekt_ressource_id);
$this->result=array();
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->ressource_id = $row->ressource_id;
$this->beschreibung = $row->beschreibung;
$this->aufwand = $row->aufwand;
$this->funktion_kurzbz = $row->funktion_kurzbz;
$this->projekt_ressource_id= $row->projekt_ressource_id;
$this->projekt_kurzbz = $row->projekt_kurzbz;
$this->projektphase_id = $row->projektphase_id;
return true;
}
//var_dump($this->result);
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
*
* Lädt alle Ressourcen zu einer Phase
* @param $project_kurzbz
* @return true wenn ok, false im Fehlerfall
*/
public function getPhaseRessourcen($projektphase_id)
{
$qry = "SELECT ressource.*, project.aufwand, project.projekt_ressource_id FROM fue.tbl_ressource as ressource
JOIN fue.tbl_projekt_ressource project ON(project.ressource_id = ressource.ressource_id)
$qry = "SELECT ressource.*, project.aufwand, project.funktion_kurzbz, project.projekt_ressource_id FROM fue.tbl_ressource as ressource
JOIN fue.tbl_projekt_ressource project ON(project.ressource_id = ressource.ressource_id)
WHERE project.projektphase_id =".$this->db_add_param($projektphase_id, FHC_INTEGER).";";
$this->result=array();
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$obj = new ressource();
$obj->ressource_id = $row->ressource_id;
$obj->bezeichnung = $row->bezeichnung;
$obj->beschreibung = $row->beschreibung;
@@ -219,20 +256,21 @@ class ressource extends basis_db
$obj->insertvon = $row->insertvon;
$obj->updateamum = $row->updateamum;
$obj->updatevon = $row->updatevon;
$obj->aufwand = $row->aufwand;
$obj->aufwand = $row->aufwand;
$obj->funktion_kurzbz = $row->funktion_kurzbz;
$obj->projekt_ressource_id = $row->projekt_ressource_id;
$this->result[] = $obj;
}
//var_dump($this->result);
return true;
}
else
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Speichert den aktuellen Datensatz in die Datenbank
* Wenn $neu auf true gesetzt ist wird ein neuer Datensatz angelegt
@@ -240,14 +278,14 @@ class ressource extends basis_db
* @return true wenn ok, false im Fehlerfall
*/
public function saveProjektRessource($new=null)
{
{
if($new==null)
$new = $this->new;
if($new)
{
//Neuen Datensatz einfuegen
$qry='BEGIN; INSERT INTO fue.tbl_projekt_ressource (projektphase_id, projekt_kurzbz,
$qry='BEGIN; INSERT INTO fue.tbl_projekt_ressource (projektphase_id, projekt_kurzbz,
ressource_id, funktion_kurzbz, beschreibung, aufwand) VALUES ('.
$this->db_add_param($this->projektphase_id, FHC_INTEGER).', '.
$this->db_add_param($this->projekt_kurzbz).', '.
@@ -268,7 +306,7 @@ class ressource extends basis_db
'aufwand='.$this->db_add_param($this->aufwand).' '.
'WHERE projekt_ressource_id='.$this->db_add_param($this->projekt_ressource_id, FHC_INTEGER).';';
}
if($this->db_query($qry))
{
if($new)
@@ -283,21 +321,21 @@ class ressource extends basis_db
$this->db_query('COMMIT');
return true;
}
else
else
{
$this->errormsg = 'Fehler beim Auslesen der Sequence';
$this->db_query('ROLLBACK;');
return false;
}
}
else
else
{
$this->errormsg = 'Fehler beim Auslesen der Sequence';
$this->db_query('ROLLBACK;');
return false;
}
}
return true;
}
else
@@ -305,7 +343,7 @@ class ressource extends basis_db
$this->errormsg = $qry;
return false;
}
}
}
/**
* Speichert den aktuellen Datensatz in die Datenbank
@@ -314,14 +352,14 @@ class ressource extends basis_db
* @return true wenn ok, false im Fehlerfall
*/
public function save($new=null)
{
{
if($new==null)
$new = $this->new;
if($new)
{
//Neuen Datensatz einfuegen
$qry='BEGIN; INSERT INTO fue.tbl_ressource (bezeichnung, beschreibung,
$qry='BEGIN; INSERT INTO fue.tbl_ressource (bezeichnung, beschreibung,
mitarbeiter_uid, student_uid, betriebsmittel_id, firma_id, insertvon, insertamum, updatevon, updateamum) VALUES ('.
$this->db_add_param($this->bezeichnung).', '.
$this->db_add_param($this->beschreibung).', '.
@@ -346,7 +384,7 @@ class ressource extends basis_db
'updatevon='.$this->db_add_param($this->updatevon).' '.
'WHERE ressource_id='.$this->db_add_param($this->ressource_id, FHC_INTEGER).';';
}
if($this->db_query($qry))
{
if($new)
@@ -361,21 +399,21 @@ class ressource extends basis_db
$this->db_query('COMMIT');
return true;
}
else
else
{
$this->errormsg = 'Fehler beim Auslesen der Sequence';
$this->db_query('ROLLBACK;');
return false;
}
}
else
else
{
$this->errormsg = 'Fehler beim Auslesen der Sequence';
$this->db_query('ROLLBACK;');
return false;
}
}
return true;
}
else
@@ -384,8 +422,8 @@ class ressource extends basis_db
return false;
}
}
/**
* Laedt die Ressource mit der ID $ressource_id
* @param $ressource_id ID der zu ladenden Ressource
@@ -398,9 +436,9 @@ class ressource extends basis_db
$this->errormsg = 'Ressource_id muss eine gueltige Zahl sein';
return false;
}
$qry = "SELECT * FROM fue.tbl_projekt_ressource WHERE projekt_ressource_id=".$this->db_add_param($projekt_ressource_id, FHC_INTEGER);
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
@@ -414,13 +452,13 @@ class ressource extends basis_db
return true;
}
else
else
{
$this->errormsg = 'Datensatz wurde nicht gefunden';
return false;
}
}
else
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
@@ -429,26 +467,26 @@ class ressource extends basis_db
/**
* Liefert die Ressourcen aller Projekte die zu einem bestimmten Datum aktiv sind
*
*
* @param $datum
*/
public function getProjektRessourceDatum($datum, $endedatum)
{
$qry = "
SELECT
SELECT
distinct
tbl_projekt_ressource.*, tbl_projekt.beginn as start, tbl_projekt.ende,
tbl_ressource.student_uid, tbl_ressource.mitarbeiter_uid, tbl_ressource.betriebsmittel_id, tbl_ressource.firma_id,
tbl_projekt_ressource.*, tbl_projekt.beginn as start, tbl_projekt.ende,
tbl_ressource.student_uid, tbl_ressource.mitarbeiter_uid, tbl_ressource.betriebsmittel_id, tbl_ressource.firma_id,
tbl_ressource.bezeichnung, tbl_ressource.beschreibung
FROM
FROM
fue.tbl_ressource
JOIN fue.tbl_projekt_ressource USING(ressource_id)
JOIN fue.tbl_projekt USING(projekt_kurzbz)
WHERE
(tbl_projekt.beginn<=".$this->db_add_param($endedatum)." OR tbl_projekt.beginn is null) AND
(tbl_projekt.ende>=".$this->db_add_param($datum)." OR tbl_projekt.ende is null)
(tbl_projekt.beginn<=".$this->db_add_param($endedatum)." OR tbl_projekt.beginn is null) AND
(tbl_projekt.ende>=".$this->db_add_param($datum)." OR tbl_projekt.ende is null)
ORDER BY bezeichnung";
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
@@ -459,7 +497,7 @@ class ressource extends basis_db
$obj->projektphase_id = $row->projektphase_id;
$obj->start = $row->start;
$obj->ende = $row->ende;
$obj->ressource_id = $row->ressource_id;
$obj->student_uid = $row->student_uid;
$obj->mitarbeiter_uid = $row->mitarbeiter_uid;
@@ -468,39 +506,39 @@ class ressource extends basis_db
$obj->bezeichnung = $row->bezeichnung;
$obj->beschreibung = $row->beschreibung;
$obj->aufwand = $row->aufwand;
$this->result[] = $obj;
}
}
}
}
/**
* Liefert die Ressourcen aller Projektphasen die zu einem bestimmten Datum aktiv sind
*
*
* @param $datum
*/
public function getProjektphaseRessourceDatum($datum, $endedatum, $projekt_kurzbz=null)
{
$qry = "
SELECT
SELECT
distinct
tbl_projekt_ressource.*, tbl_projektphase.start, tbl_projektphase.ende,
tbl_ressource.student_uid, tbl_ressource.mitarbeiter_uid, tbl_ressource.betriebsmittel_id, tbl_ressource.firma_id,
tbl_projekt_ressource.*, tbl_projektphase.start, tbl_projektphase.ende,
tbl_ressource.student_uid, tbl_ressource.mitarbeiter_uid, tbl_ressource.betriebsmittel_id, tbl_ressource.firma_id,
tbl_ressource.bezeichnung, tbl_ressource.beschreibung
FROM
FROM
fue.tbl_ressource
JOIN fue.tbl_projekt_ressource USING(ressource_id)
JOIN fue.tbl_projektphase USING(projektphase_id)
WHERE
(tbl_projektphase.start<=".$this->db_add_param($endedatum)." OR tbl_projektphase.start is null) AND
(tbl_projektphase.ende>=".$this->db_add_param($datum)." OR tbl_projektphase.ende is null)
(tbl_projektphase.start<=".$this->db_add_param($endedatum)." OR tbl_projektphase.start is null) AND
(tbl_projektphase.ende>=".$this->db_add_param($datum)." OR tbl_projektphase.ende is null)
";
if(!is_null($projekt_kurzbz))
{
$qry.=" AND tbl_projektphase.projekt_kurzbz=".$this->db_add_param($projekt_kurzbz);
}
$qry.=" ORDER BY tbl_ressource.bezeichnung";
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
@@ -511,7 +549,7 @@ class ressource extends basis_db
$obj->projektphase_id = $row->projektphase_id;
$obj->start = $row->start;
$obj->ende = $row->ende;
$obj->ressource_id = $row->ressource_id;
$obj->student_uid = $row->student_uid;
$obj->mitarbeiter_uid = $row->mitarbeiter_uid;
@@ -520,7 +558,7 @@ class ressource extends basis_db
$obj->bezeichnung = $row->bezeichnung;
$obj->beschreibung = $row->beschreibung;
$obj->aufwand = $row->aufwand;
$this->result[] = $obj;
}
}
@@ -530,7 +568,7 @@ class ressource extends basis_db
return false;
}
}
/**
* Liefert die Ressourcen aller Projektphasen die zu einem bestimmten Datum aktiv sind
*
@@ -555,12 +593,12 @@ class ressource extends basis_db
((tbl_projektphase.ende>=".$this->db_add_param($datum)." OR tbl_projektphase.ende is null) AND
(tbl_projekttask.ende>=".$this->db_add_param($datum)." OR tbl_projekttask.ende is null))
";
if(!is_null($projekt_kurzbz))
{
$qry.=" AND projekt_kurzbz=".$this->db_add_param($projekt_kurzbz);
}
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
@@ -571,7 +609,7 @@ class ressource extends basis_db
$obj->projektphase_id = $row->projektphase_id;
$obj->start = $row->start;
$obj->ende = $row->ende;
$obj->ressource_id = $row->ressource_id;
$obj->student_uid = $row->student_uid;
$obj->mitarbeiter_uid = $row->mitarbeiter_uid;
@@ -580,7 +618,7 @@ class ressource extends basis_db
$obj->bezeichnung = $row->bezeichnung;
$obj->beschreibung = $row->beschreibung;
$obj->aufwand = $row->aufwand;
$this->result[] = $obj;
}
}
@@ -590,64 +628,64 @@ class ressource extends basis_db
return false;
}
}
/**
* Löscht eine Ressource zu Projekt Zuordnung
* @param type $ressource_id
* @param type $projekt_kurzbz
* @return boolean
* @return boolean
*/
public function deleteFromProjekt($ressource_id, $projekt_kurzbz)
{
if($ressource_id == '' || !is_numeric($ressource_id))
{
$this->errormsg = 'Ressource Id ist keine gültige Zahl';
return false;
$this->errormsg = 'Ressource Id ist keine gültige Zahl';
return false;
}
$qry="DELETE FROM fue.tbl_projekt_ressource WHERE ressource_id =".$this->db_add_param($ressource_id, FHC_INTEGER, false)."
AND projekt_kurzbz=".$this->db_add_param($projekt_kurzbz, FHC_STRING, false).';';
$qry="DELETE FROM fue.tbl_projekt_ressource WHERE ressource_id =".$this->db_add_param($ressource_id, FHC_INTEGER, false)."
AND projekt_kurzbz=".$this->db_add_param($projekt_kurzbz, FHC_STRING, false).';';
if($this->db_query($qry))
{
return true;
{
return true;
}
else
{
$this->errormsg = 'Fehler beim Löschen der Daten';
return false;
$this->errormsg = 'Fehler beim Löschen der Daten';
return false;
}
}
/**
* Löscht eine Ressource zu Phase Zuordnung
* @param type $ressource_id
* @param type $projekt_kurzbz
* @return boolean
* @return boolean
*/
public function deleteFromPhase($ressource_id, $projektphase_id)
{
if($ressource_id == '' || !is_numeric($ressource_id))
{
$this->errormsg = 'Ressource Id ist keine gültige Zahl';
return false;
$this->errormsg = 'Ressource Id ist keine gültige Zahl';
return false;
}
if($projektphase_id == '' || !is_numeric($projektphase_id))
{
$this->errormsg = 'Ressource Id ist keine gültige Zahl';
return false;
}
$qry="DELETE FROM fue.tbl_projekt_ressource WHERE ressource_id =".$this->db_add_param($ressource_id, FHC_INTEGER, false)."
AND projektphase_id=".$this->db_add_param($projektphase_id, FHC_INTEGER, false).';';
$this->errormsg = 'Ressource Id ist keine gültige Zahl';
return false;
}
$qry="DELETE FROM fue.tbl_projekt_ressource WHERE ressource_id =".$this->db_add_param($ressource_id, FHC_INTEGER, false)."
AND projektphase_id=".$this->db_add_param($projektphase_id, FHC_INTEGER, false).';';
if($this->db_query($qry))
return true;
return true;
else
{
$this->errormsg = 'Fehler beim Löschen der Daten';
return false;
$this->errormsg = 'Fehler beim Löschen der Daten';
return false;
}
}
}
File diff suppressed because it is too large Load Diff
Regular → Executable
+2 -1
View File
@@ -162,6 +162,7 @@ class studiengang extends Studiengang_model
$this->bezeichnung_arr['German'] = $this->bezeichnung;
$this->bezeichnung_arr['English'] = $this->english;
$this->bezeichnung_arr['Italian'] = $this->bezeichnung;
}
}
else
@@ -896,7 +897,7 @@ class studiengang extends Studiengang_model
$obj->bezeichnung = $row->bezeichnung;
$obj->beantragung = $this->db_parse_bool($row->beantragung);
$obj->lgart_biscode = $row->lgart_biscode;
$this->result[]= $obj;
}
return true;
+167
View File
@@ -0,0 +1,167 @@
<?php
/* Copyright (C) 2009 fhcomplete.org
*
* 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: Stefan Puraner <stefan.puraner@technikum-wien.at>,
*/
require_once('basis_db.class.php');
class studienjahr extends basis_db
{
public $new; // boolean
public $result = array(); // studienjahr Objekt
//Tabellenspalten
public $studienjahr_kurzbz;// varchar(16)
public $bezeichnung; // varchar(64)
/**
* Konstruktor - Laedt optional ein StSem
*
* @param $studienjahr_kurzbz StSem das geladen werden soll (default=null)
*/
public function __construct($studienjahr_kurzbz=null)
{
parent::__construct();
if($studienjahr_kurzbz != null)
$this->load($studienjahr_kurzbz);
}
/**
* Laedt das Studienjahr mit der uebergebenen Kurzbz
*
* @param $studienjahr_kurzbz Stsem das geladen werden soll
*/
public function load($studienjahr_kurzbz)
{
$qry = "SELECT * FROM public.tbl_studienjahr WHERE studienjahr_kurzbz=".$this->db_add_param($studienjahr_kurzbz);
if(!$this->db_query($qry))
{
$this->errormsg = 'Fehler beim Lesen des Studienjahrs';
return false;
}
if($row = $this->db_fetch_object())
{
$this->studienjahr_kurzbz = $row->studienjahr_kurzbz;
$this->bezeichnung = $row->bezeichnung;
}
else
{
$this->errormsg = "Es ist kein Studienjahr mit dieser Kurzbezeichung vorhanden";
return false;
}
return true;
}
/**
* Prueft die Variablen vor dem Speichern
* auf Gueltigkeit.
*
* @return true wenn ok, false im Fehlerfall
*/
private function validate()
{
if(mb_strlen($this->studienjahr_kurzbz)>16)
{
$this->errormsg = 'Studienjahr Kurzbezeichnung darf nicht laenger als 16 Zeichen sein';
return false;
}
if(mb_strlen($this->bezeichnung)>64)
{
$this->errormsg = 'Studienjahr Bezeichnung darf nicht laenger als 64 Zeichen sein';
return false;
}
if($this->studienjahr_kurzbz=='')
{
$this->errormsg = 'Es muss eine Kurzbezeichnung eingegeben werden';
return false;
}
return true;
}
/**
* Speichert das Studienjahr in die Datenbank
* Wenn $new auf true gesetzt ist wird ein neuer Datensatz
* angelegt, ansonsten der Datensatz upgedated
*
* @return true wenn erfolgreich, false im Fehlerfall
*/
public function save()
{
//Variablen auf Gueltigkeit pruefen
if(!$this->validate())
return false;
if($this->new)
{
$qry = "INSERT INTO public.tbl_studienjahr (studienjahr_kurzbz, bezeichnung)
VALUES(".$this->db_add_param($this->studienjahr_kurzbz).",".
$this->db_add_param($this->bezeichnung).');';
}
else
{
$qry = 'UPDATE public.tbl_studienjahr SET'.
' start='.$this->db_add_param($this->start).','.
' ende='.$this->db_add_param($this->ende).
" WHERE studienjahr_kurzbz=".$this->db_add_param($this->studienjahr_kurzbz);
}
if($this->db_query($qry))
{
//Log schreiben
return true;
}
else
{
$this->errormsg = 'Fehler beim Speichern des Studienjahrs';
return false;
}
}
/**
* Liefert alle Studienjahr
*
* @return true wenn ok, sonst false
*/
public function getAll()
{
$qry = "SELECT * FROM public.tbl_studienjahr ORDER BY studienjahr_kurzbz;";
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$stsem_obj = new studienjahr();
$stsem_obj->studienjahr_kurzbz = $row->studienjahr_kurzbz;
$stsem_obj->bezeichnung = $row->bezeichnung;
$this->result[] = $stsem_obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Studienjahr';
return false;
}
}
}
?>
+162 -121
View File
@@ -1,24 +1,24 @@
<?php
/*
* studienordnung.class.php
*
*
* Copyright 2013 fhcomplete.org
*
*
* 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., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*
*
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>
* Andreas Österreicher <andreas.oesterreicher@technikum-wien.at>
@@ -59,7 +59,7 @@ class studienordnung extends basis_db
{
parent::__construct();
}
public function __set($name,$value)
{
switch ($name)
@@ -78,7 +78,7 @@ class studienordnung extends basis_db
{
return $this->$name;
}
/**
* Laedt die Studienordnung mit der ID $studienordnung_id
* @param $studienordnung_id ID der zu ladenden Studienordnung
@@ -115,7 +115,7 @@ class studienordnung extends basis_db
$this->studiengangbezeichnung_englisch = $row->studiengangbezeichnung_englisch;
$this->studiengangkurzbzlang = $row->studiengangkurzbzlang;
$this->akadgrad_id = $row->akadgrad_id;
$this->status_kurzbz = $row->status_kurzbz;
$this->status_kurzbz = $row->status_kurzbz;
$this->standort_id = $row->standort_id;
$this->updateamum = $row->updateamum;
$this->updatevon = $row->updatevon;
@@ -150,14 +150,15 @@ class studienordnung extends basis_db
if(is_null($studiensemester_kurzbz))
{
$qry = 'SELECT sto.*, s.bezeichnung as status_bezeichnung FROM lehre.tbl_studienordnung sto
JOIN lehre.tbl_studienordnungstatus s USING(status_kurzbz)
LEFT JOIN lehre.tbl_studienordnungstatus s USING(status_kurzbz)
WHERE studiengang_kz='.$this->db_add_param($studiengang_kz, FHC_INTEGER, false);
}
else
{
$qry = 'SELECT sto.*, s.bezeichnung as status_bezeichnung FROM lehre.tbl_studienordnung
JOIN lehre.tbl_studienordnungstatus s USING(status_kurzbz)
LEFT JOIN lehre.tbl_studienordnung_semester USING (studienordnung_id)
$qry = 'SELECT distinct sto.*, s.bezeichnung as status_bezeichnung, sem.* FROM lehre.tbl_studienordnung sto
JOIN lehre.tbl_studienordnungstatus s USING(status_kurzbz)
LEFT JOIN lehre.tbl_studienplan USING(studienordnung_id)
LEFT JOIN lehre.tbl_studienplan_semester sem USING (studienplan_id)
WHERE studiengang_kz='.$this->db_add_param($studiengang_kz, FHC_INTEGER, false);
if (!is_null($studiensemester_kurzbz))
@@ -200,7 +201,8 @@ class studienordnung extends basis_db
{
$obj->studiensemester_kurzbz = $row->studiensemester_kurzbz;
$obj->semester = $row->semester;
$obj->studienordnung_semester_id = $row->studienordnung_semester_id;
//$obj->studienordnung_semester_id = $row->studienordnung_semester_id;
$obj->studienplan_semester_id = $row->studienplan_semester_id;
}
$this->result[] = $obj;
}
@@ -271,7 +273,7 @@ class studienordnung extends basis_db
$this->errormsg = '';
return true;
}
/**
* Speichert den aktuellen Datensatz in die Datenbank
* @return true wenn ok, false im Fehlerfall
@@ -314,19 +316,19 @@ class studienordnung extends basis_db
' version='.$this->db_add_param($this->version).', '.
' bezeichnung='.$this->db_add_param($this->bezeichnung).', '.
' ects='.$this->db_add_param($this->ects).', '.
' gueltigvon='.$this->db_add_param($this->gueltigvon).', '.
' gueltigbis='.$this->db_add_param($this->gueltigbis).', '.
' studiengangbezeichnung='.$this->db_add_param($this->studiengangbezeichnung).', '.
' studiengangbezeichnung_englisch='.$this->db_add_param($this->studiengangbezeichnung_englisch).', '.
' studiengangkurzbzlang='.$this->db_add_param($this->studiengangkurzbzlang).','.
' akadgrad_id='.$this->db_add_param($this->akadgrad_id, FHC_INTEGER).', '.
' standort_id='.$this->db_add_param($this->standort_id, FHC_INTEGER).', '.
' status_kurzbz='.$this->db_add_param($this->status_kurzbz, FHC_INTEGER).', '.
' updateamum= now(), '.
' updatevon='.$this->db_add_param($this->updatevon).' '.
' WHERE studienordnung_id='.$this->db_add_param($this->studienordnung_id, FHC_INTEGER, false).';';
' gueltigvon='.$this->db_add_param($this->gueltigvon).', '.
' gueltigbis='.$this->db_add_param($this->gueltigbis).', '.
' studiengangbezeichnung='.$this->db_add_param($this->studiengangbezeichnung).', '.
' studiengangbezeichnung_englisch='.$this->db_add_param($this->studiengangbezeichnung_englisch).', '.
' studiengangkurzbzlang='.$this->db_add_param($this->studiengangkurzbzlang).','.
' akadgrad_id='.$this->db_add_param($this->akadgrad_id, FHC_INTEGER).', '.
' standort_id='.$this->db_add_param($this->standort_id, FHC_INTEGER).', '.
' status_kurzbz='.$this->db_add_param($this->status_kurzbz).', '.
' updateamum= now(), '.
' updatevon='.$this->db_add_param($this->updatevon).' '.
' WHERE studienordnung_id='.$this->db_add_param($this->studienordnung_id, FHC_INTEGER, false).';';
}
if($this->db_query($qry))
{
if($this->new)
@@ -451,7 +453,7 @@ class studienordnung extends basis_db
}
return $data;
}
/**
* speichert die Semesterzuordnung für die Studieordnung
* @param int $studienordnung_id Die ID der Studienordnung
@@ -465,21 +467,21 @@ class studienordnung extends basis_db
$this->errormsg = 'studienordnung_id muss eine gueltige Zahl sein';
return false;
}
if(!is_string($studiensemester_kurzbz) || strlen($studiensemester_kurzbz)!=6)
{
$this->errormsg = 'studiensemester_kurzbz muss ein String mit 6 Zeichen sein';
return false;
}
if(!is_numeric($ausbildungssemester))
{
$this->errormsg = 'ausbildungssemester muss eine gueltige Zahl sein';
return false;
}
//lvar_dump($this->isZuordnungGuelitg($studiensemester_kurzbz));
//Prüfung ob Zuordnung im Gültigkeitszeitraum der Studienordnung
//if(($studiensemester_kurzbz >= $this->gueltigvon && $studiensemester_kurzbz <= $this->gueltigbis) || ($studiensemester_kurzbz >= $this->gueltigvon && $this->gueltigbis == null))
if($this->isZuordnungGuelitg($studiensemester_kurzbz))
@@ -512,7 +514,7 @@ class studienordnung extends basis_db
}
return true;
}
/**
* prüft ob die Semesterzuordnung für die Studieordnung bereits vorhanden ist
* @param int $studienordnung_id Die ID der Studienordnung
@@ -526,24 +528,24 @@ class studienordnung extends basis_db
$this->errormsg = 'studienordnung_id muss eine gueltige Zahl sein';
return false;
}
if(!is_string($studiensemester_kurzbz) || strlen($studiensemester_kurzbz)!=6)
{
$this->errormsg = 'studiensemester_kurzbz muss ein String mit 6 Zeichen sein';
return false;
}
if(!is_numeric($ausbildungssemester))
{
$this->errormsg = 'ausbildungssemester muss eine gueltige Zahl sein';
return false;
}
$qry = 'SELECT * FROM lehre.tbl_studienordnung_semester WHERE
studienordnung_id='.$this->db_add_param($studienordnung_id).' AND
studiensemester_kurzbz='.$this->db_add_param($studiensemester_kurzbz).' AND
$qry = 'SELECT * FROM lehre.tbl_studienordnung_semester WHERE
studienordnung_id='.$this->db_add_param($studienordnung_id).' AND
studiensemester_kurzbz='.$this->db_add_param($studiensemester_kurzbz).' AND
semester='.$this->db_add_param($ausbildungssemester).';';
if($this->db_query($qry))
{
if($this->db_num_rows() == 1)
@@ -558,7 +560,7 @@ class studienordnung extends basis_db
}
return false;
}
/**
* prüft ob die Studienordnung aktiv ist
* @param int $studienordnung_id Die ID der Studienordnung
@@ -573,9 +575,9 @@ class studienordnung extends basis_db
return false;
}
$qry = 'SELECT * FROM lehre.tbl_studienordnung_semester WHERE
$qry = 'SELECT * FROM lehre.tbl_studienordnung_semester WHERE
studienordnung_id='.$this->db_add_param($studienordnung_id).';';
if($this->db_query($qry))
{
if($this->db_num_rows() >= 1)
@@ -586,7 +588,7 @@ class studienordnung extends basis_db
}
return false;
}
/**
* lädt alle zugeordneten Semester einer Studienordnung
* @param int $studienordnung_id ID der Studienordnung
@@ -598,24 +600,24 @@ class studienordnung extends basis_db
$this->errormsg = 'studienordnung_id muss eine gueltige Zahl sein';
return false;
}
/* $qry = 'SELECT DISTINCT studiensemester_kurzbz, MAX(semester)
FROM lehre.tbl_studienordnung_semester
FROM lehre.tbl_studienordnung_semester
WHERE studienordnung_id='.$this->db_add_param($studienordnung_id).' GROUP BY studiensemester_kurzbz ORDER BY MAX(semester);';
*/
$qry = 'SELECT DISTINCT studiensemester_kurzbz, tbl_studiensemester.start
FROM
lehre.tbl_studienordnung_semester
FROM
lehre.tbl_studienordnung_semester
JOIN public.tbl_studiensemester USING(studiensemester_kurzbz)
WHERE studienordnung_id='.$this->db_add_param($studienordnung_id).'
ORDER BY tbl_studiensemester.start, studiensemester_kurzbz';
if(!$this->db_query($qry))
{
$this->errormsg = 'Fehler bei einer Datenbankabfrage';
return false;
}
$data = array();
while($row = $this->db_fetch_object())
{
@@ -624,20 +626,20 @@ class studienordnung extends basis_db
}
return $data;
}
public function loadAusbildungsemesterFromStudiensemester($studienordnung_id, $studiensemester_kurzbz)
{
$qry = 'SELECT semester
FROM lehre.tbl_studienordnung_semester
WHERE studienordnung_id='.$this->db_add_param($studienordnung_id).' AND
studiensemester_kurzbz='.$this->db_add_param($studiensemester_kurzbz).'
$qry = 'SELECT semester
FROM lehre.tbl_studienordnung_semester
WHERE studienordnung_id='.$this->db_add_param($studienordnung_id).' AND
studiensemester_kurzbz='.$this->db_add_param($studiensemester_kurzbz).'
ORDER BY semester;';
if(!$this->db_query($qry))
{
return false;
}
$data = array();
while($row = $this->db_fetch_object())
{
@@ -645,7 +647,7 @@ class studienordnung extends basis_db
}
return $data;
}
public function deleteSemesterZuordnung($studienordnung_id, $studiensemester_kurzbz, $studiensemester=NULL)
{
if(!is_numeric($studienordnung_id))
@@ -653,21 +655,21 @@ class studienordnung extends basis_db
$this->errormsg = 'studienordnung_id muss eine gueltige Zahl sein';
return false;
}
if(!is_string($studiensemester_kurzbz) || strlen($studiensemester_kurzbz)!=6)
{
$this->errormsg = 'studiensemester_kurzbz muss ein String mit 6 Zeichen sein';
return false;
}
$qry = 'DELETE FROM lehre.tbl_studienordnung_semester
WHERE studienordnung_id='.$this->db_add_param($studienordnung_id).' AND
$qry = 'DELETE FROM lehre.tbl_studienordnung_semester
WHERE studienordnung_id='.$this->db_add_param($studienordnung_id).' AND
studiensemester_kurzbz='.$this->db_add_param($studiensemester_kurzbz).'';
if($studiensemester !== null)
$qry.=' AND semester='.$this->db_add_param ($studiensemester).'';
$qry.=';';
if($this->db_query($qry))
{
return true;
@@ -678,7 +680,7 @@ class studienordnung extends basis_db
return false;
}
}
protected function isZuordnungGuelitg($studiensemester_kurzbz)
{
$studiensemester = new studiensemester();
@@ -686,12 +688,12 @@ class studienordnung extends basis_db
$semGueltigVon = $studiensemester->begin->start;
//$semGueltigBis = $studiensemester->ende->ende;
$studiensemester = new studiensemester();
$studiensemester->getTimestamp($this->gueltigvon);
$stoGueltigVon = $studiensemester->begin->start;
if($this->gueltigbis != null)
{
$studiensemester = new studiensemester();
@@ -708,7 +710,7 @@ class studienordnung extends basis_db
}
return false;
}
/**
* Laedt die Studienordnung zu der uebergebenen studienplan_id
* @param $studienplan_id der zu ladenden Studienordnung
@@ -760,7 +762,7 @@ class studienordnung extends basis_db
$this->new=false;
return true;
}
/**
* Laedt alle Studienordnungen zu einem Studiengang der uebergeben wird, die noch nicht aktiv sind
* @param $studiengang_kz Kennzahl des Studiengangs
@@ -777,13 +779,13 @@ class studienordnung extends basis_db
return false;
}
$qry = 'SELECT
*
FROM
lehre.tbl_studienordnung
WHERE
$qry = 'SELECT
*
FROM
lehre.tbl_studienordnung
WHERE
studiengang_kz='.$this->db_add_param($studiengang_kz, FHC_INTEGER, false);
if(!$this->db_query($qry))
{
$this->errormsg = 'Fehler bei einer Datenbankabfrage';
@@ -814,7 +816,7 @@ class studienordnung extends basis_db
$obj->new = false;
$this->result[] = $obj;
}
foreach($this->result as $key => $obj)
{
if($this->isAktiv($obj->studienordnung_id))
@@ -823,65 +825,104 @@ class studienordnung extends basis_db
}
}
array_values($this->result);
return true;
}
/**
* Laedt die Studienordnungen eines Studiengangs inklusive Status
* @param $studiengang_kz Kennzahl des Studiengangs
* @param $status_kurzbz Status
* @return boolean true wenn ok, false im Fehlerfall
*/
public function loadStudienordnungWithStatus($studiengang_kz, $status_kurzbz)
{
$qry = "SELECT sto.*, s.bezeichnung as status_bezeichnung "
. "FROM lehre.tbl_studienordnung sto "
. "JOIN lehre.tbl_studienordnungstatus s USING(status_kurzbz) "
. "WHERE status_kurzbz=" . $this->db_add_param($status_kurzbz, FHC_STRING) . ""
. " AND studiengang_kz=" . $this->db_add_param($studiengang_kz, FHC_INTEGER) . ";";
$qry = "SELECT sto.*, s.bezeichnung as status_bezeichnung "
. "FROM lehre.tbl_studienordnung sto "
. "JOIN lehre.tbl_studienordnungstatus s USING(status_kurzbz) "
. "WHERE status_kurzbz=" . $this->db_add_param($status_kurzbz, FHC_STRING) . ""
. " AND studiengang_kz=" . $this->db_add_param($studiengang_kz, FHC_INTEGER) . ";";
if (!$this->db_query($qry))
{
$this->errormsg = 'Fehler bei einer Datenbankabfrage';
return false;
if (!$this->db_query($qry))
{
$this->errormsg = 'Fehler bei einer Datenbankabfrage';
return false;
}
while ($row = $this->db_fetch_object())
{
$obj = new studienordnung();
$obj->studienordnung_id = $row->studienordnung_id;
$obj->studiengang_kz = $row->studiengang_kz;
$obj->version = $row->version;
$obj->bezeichnung = $row->bezeichnung;
$obj->ects = $row->ects;
$obj->gueltigvon = $row->gueltigvon;
$obj->gueltigbis = $row->gueltigbis;
$obj->studiengangbezeichnung = $row->studiengangbezeichnung;
$obj->studiengangbezeichnung_englisch = $row->studiengangbezeichnung_englisch;
$obj->studiengangkurzbzlang = $row->studiengangkurzbzlang;
$obj->akadgrad_id = $row->akadgrad_id;
$obj->status_kurzbz = $row->status_kurzbz;
$obj->status_bezeichnung = $row->status_bezeichnung;
$obj->begruendung = json_decode($row->begruendung);
$obj->studiengangsart = $row->studiengangsart;
$obj->standort_id = $row->standort_id;
$obj->updateamum = $row->updateamum;
$obj->updatevon = $row->updatevon;
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->new = false;
$this->result[] = $obj;
}
return true;
}
while ($row = $this->db_fetch_object())
/**
* Aendert den Status einer Studienordnung
* @param $studienordnung_id ID der Studienordnung
* @param $status_kurzbz Kurzbezeichnung des Status
* @return boolean true wenn erfolgreich, false im Fehlerfall
*/
public function changeState($studienordnung_id, $status_kurzbz)
{
$obj = new studienordnung();
$qry = "UPDATE lehre.tbl_studienordnung SET status_kurzbz=" . $this->db_add_param($status_kurzbz)
. " WHERE studienordnung_id=" . $this->db_add_param($studienordnung_id) . ";";
$obj->studienordnung_id = $row->studienordnung_id;
$obj->studiengang_kz = $row->studiengang_kz;
$obj->version = $row->version;
$obj->bezeichnung = $row->bezeichnung;
$obj->ects = $row->ects;
$obj->gueltigvon = $row->gueltigvon;
$obj->gueltigbis = $row->gueltigbis;
$obj->studiengangbezeichnung = $row->studiengangbezeichnung;
$obj->studiengangbezeichnung_englisch = $row->studiengangbezeichnung_englisch;
$obj->studiengangkurzbzlang = $row->studiengangkurzbzlang;
$obj->akadgrad_id = $row->akadgrad_id;
$obj->status_kurzbz = $row->status_kurzbz;
$obj->status_bezeichnung = $row->status_bezeichnung;
$obj->begruendung = json_decode($row->begruendung);
$obj->studiengangsart = $row->studiengangsart;
$obj->standort_id = $row->standort_id;
$obj->updateamum = $row->updateamum;
$obj->updatevon = $row->updatevon;
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->new = false;
$this->result[] = $obj;
if (!$this->db_query($qry))
{
$this->errormsg = "Status konnte nicht geändert werden.";
return false;
}
return true;
}
return true;
}
public function changeState($studienordnung_id, $status_kurzbz)
{
$qry = "UPDATE lehre.tbl_studienordnung SET status_kurzbz=" . $this->db_add_param($status_kurzbz)
. " WHERE studienordnung_id=" . $this->db_add_param($studienordnung_id) . ";";
if (!$this->db_query($qry))
/**
* Laedt alle vorhandenen Studienordnungsstatus Einträge
* @return boolean true wenn ok, false im Fehlerfall
*/
public function getStatus()
{
$this->errormsg = "Status konnte nicht geändert werden.";
return false;
$qry = "SELECT * FROM lehre.tbl_studienordnungstatus order by reihenfolge";
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$obj = new stdClass();
$obj->status_kurzbz = $row->status_kurzbz;
$obj->bezeichnung = $row->bezeichnung;
$obj->reihenfolge = $row->reihenfolge;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
return true;
}
}
?>
File diff suppressed because it is too large Load Diff
+191 -93
View File
@@ -1,24 +1,24 @@
<?php
/*
* studienplatz.class.php
*
*
* Copyright 2013 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 oferr
* 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., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*
*
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>
* Werner Masik <werner@gefi.at>
@@ -29,35 +29,39 @@ require_once(__DIR__ .'/functions.inc.php');
class studienplatz extends basis_db
{
/** @var $new boolean */
private $new = true;
private $new = true;
/** @var DB-Result */
private $result;
/** @var object */
public $studienplatz = array();
public $studienplatz = array();
//Tabellenspalten
/** @var integer */
private $studienplatz_id;
private $studienplatz_id;
/** @var integer */
private $studiengang_kz;
private $studiengang_kz;
/** @var string */
private $orgform_kurzbz;
private $orgform_kurzbz;
/** @var string */
private $studiensemester_kurzbz;
/** @var integer */
private $ausbildungssemester;
private $ausbildungssemester;
/** @var integer */
private $gpz;
private $gpz;
/** @var integer */
private $npz;
private $npz;
/** @var timestamp */
private $updateamum;
private $updateamum;
/** @var string */
private $updatevon;
private $updatevon;
/** @var timestamp */
private $insertamum;
private $insertamum;
/** @var string */
private $insertvon;
private $insertvon;
/** @var integer */
private $apz;
/** @var integer */
private $studienplan_id;
/**
* Konstruktor
@@ -66,7 +70,7 @@ class studienplatz extends basis_db
public function __construct($studienplatz_id=null)
{
parent::__construct();
if(!is_null($studienplatz_id))
$this->load($studienplatz_id);
}
@@ -76,9 +80,10 @@ class studienplatz extends basis_db
switch ($name)
{
case 'gpz':
case 'npz':
case 'ausbildungssemester':
case 'npz':
case 'ausbildungssemester':
case 'studienplatz_id':
case 'studienplan_id':
if ($value != null && !is_numeric($value))
throw new Exception("Attribute $name must be numeric! ($value)");
$this->$name=$value;
@@ -92,8 +97,8 @@ class studienplatz extends basis_db
{
return $this->$name;
}
/**
* Laedt einzelnen Studienplatz der ID $studienplatz_id
* @param integer $studienplatz_id ID des zu ladenden Studienplatzes
@@ -126,7 +131,6 @@ class studienplatz extends basis_db
$this->errormsg = 'Es ist kein Datensatz mit dieser ID vorhanden';
return false;
}
return true;
}
@@ -135,31 +139,33 @@ class studienplatz extends basis_db
* @param type $target
* @param type $row
*/
private function mapRow($target,$row) {
$target->studienplatz_id = $row->studienplatz_id;
$target->studiengang_kz = $row->studiengang_kz;
$target->orgform_kurzbz = $row->orgform_kurzbz;
$target->studiensemester_kurzbz = $row->studiensemester_kurzbz;
$target->ausbildungssemester = $row->ausbildungssemester;
$target->gpz = $row->gpz;
$target->npz = $row->npz;
$target->updateamum = $row->updateamum;
$target->updatevon = $row->updatevon;
$target->insertamum = $row->insertamum;
$target->insertvon = $row->insertvon;
$target->new = false;
private function mapRow($target,$row) {
$target->studienplatz_id = $row->studienplatz_id;
$target->studiengang_kz = $row->studiengang_kz;
$target->orgform_kurzbz = $row->orgform_kurzbz;
$target->studiensemester_kurzbz = $row->studiensemester_kurzbz;
$target->ausbildungssemester = $row->ausbildungssemester;
$target->gpz = $row->gpz;
$target->npz = $row->npz;
$target->updateamum = $row->updateamum;
$target->updatevon = $row->updatevon;
$target->insertamum = $row->insertamum;
$target->insertvon = $row->insertvon;
$target->apz = $row->apz;
$target->studienplan_id = $row->studienplan_id;
$target->new = false;
}
/**
* Laedt alle Studienplaetze zu einem Studiengang und Semester. Ergebnis
* steht in result, wobei es nur einen Datensatz geben kann, wenn
* keinAusbildungssemester = true ist.
* @param integer $studiengang_kz
* @param integer $studiengang_kz
* @param string studiensemester_kurzbz
* @param string orgform_kurzbz
* @param boolean Ausbildungssemester ist optional. Wenn true werden
* nur Datensätze geladen wo das Ausbildungssemester null ist. Wenn
* false werden alle geladen wo ein Ausbildungssemester eingetragen
* nur Datensätze geladen wo das Ausbildungssemester null ist. Wenn
* false werden alle geladen wo ein Ausbildungssemester eingetragen
* ist.
* @return true wenn ok, false im Fehlerfall
*/
@@ -179,22 +185,63 @@ class studienplatz extends basis_db
//" AND art=".$this->db_add_param($art, FHC_STRING, false).
" AND orgform_kurzbz=".$this->db_add_param($orgform, FHC_STRING, false).
" AND ausbildungssemester ".($keinAusbildungssemester ? 'is null':'is not null');
$this->result = array();
if(!$this->db_query($qry))
{
$this->result = array();
if(!$this->db_query($qry))
{
return false;
}
while($row = $this->db_fetch_object())
{
$rec = new studienplatz();
$this->mapRow($rec, $row);
$this->result[] = $rec;
}
$rec = new studienplatz();
$this->mapRow($rec, $row);
$this->result[] = $rec;
}
return true;
}
/**
* Laedt alle Studienplaetze zu einem Studiengang und Semester. Ergebnis
* steht in result, wobei es nur einen Datensatz geben kann, wenn
* keinAusbildungssemester = true ist.
* @param integer $studiengang_kz
* @param string studiensemester_kurzbz
* @param boolean Ausbildungssemester ist optional. Wenn true werden
* nur Datensätze geladen wo das Ausbildungssemester null ist. Wenn
* false werden alle geladen wo ein Ausbildungssemester eingetragen
* ist.
* @return true wenn ok, false im Fehlerfall
*/
public function load_studiengang_studiensemester($studiengang_kz, $studiensemester_kurzbz, $keinAusbildungssemester = true)
{
//Pruefen ob $studiengang_kz eine gueltige Zahl ist
if(!is_numeric($studiengang_kz) || $studiengang_kz == '')
{
$this->errormsg = 'studiengang_kz muss eine gültige Zahl sein';
return false;
}
//Lesen der Daten aus der Datenbank
$qry = "SELECT * FROM lehre.tbl_studienplatz RIGHT JOIN lehre.tbl_studienplan using(studienplan_id) WHERE studiengang_kz=".
$this->db_add_param($studiengang_kz, FHC_INTEGER, false).
" AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz, FHC_STRING, false).
" AND ausbildungssemester ".($keinAusbildungssemester ? 'is null':'is not null').
" AND studienplan_id IS NOT NULL;";
$this->result = array();
if(!$this->db_query($qry))
{
return false;
}
while($row = $this->db_fetch_object())
{
$this->result[] = $row;
}
return true;
}
/**
* Liefert Array mit GPZ und NPZ für die FÖBis relevanten Orgformen (BB, VZ, VBB).
* Dient als Ersatz für load_studiengang_studiensemester_orgform weil hiermit
@@ -207,10 +254,10 @@ class studienplatz extends basis_db
{
// Semesterliste für where klausel erzeugen:
$startSemester= 'WS'.substr($studienjahr,0,4);
$startSemester= 'WS'.substr($studienjahr,0,4);
$semesterList = generateSemesterList($startSemester,($zeitraum*2)-1);
$semesterList_comma_separated = "'".join("','",$semesterList)."'";
//Lesen der Daten aus der Datenbank
$qry = "SELECT studiensemester_kurzbz,studiengang_kz,
sum(case when orgform_kurzbz='VZ' then npz else 0 end) as npz_vz,
@@ -220,30 +267,69 @@ class studienplatz extends basis_db
sum(case when orgform_kurzbz='VZ' then gpz else 0 end) as gpz_vz,
sum(case when orgform_kurzbz='BB' then gpz else 0 end) as gpz_bb,
sum(case when orgform_kurzbz='VBB' then gpz else 0 end) as gpz_vbb,
sum(gpz) as gpz_gesamt
FROM lehre.tbl_studienplatz
WHERE ausbildungssemester is null and studiensemester_kurzbz IN ($semesterList_comma_separated)
group by studiensemester_kurzbz,studiengang_kz";
$this->result = array();
if(!$this->db_query($qry))
{
sum(gpz) as gpz_gesamt
FROM lehre.tbl_studienplatz
WHERE ausbildungssemester is null and studiensemester_kurzbz IN ($semesterList_comma_separated)
group by studiensemester_kurzbz,studiengang_kz";
$this->result = array();
if(!$this->db_query($qry))
{
return false;
}
$result = array();
while($row = $this->db_fetch_object())
{
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['BB']['NPZ'] = $row->npz_bb;
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['VZ']['NPZ'] = $row->npz_vz;
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['VBB']['NPZ'] = $row->npz_vbb;
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['gesamt']['NPZ'] = $row->npz_gesamt;
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['BB']['GPZ'] = $row->gpz_bb;
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['VZ']['GPZ'] = $row->gpz_vz;
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['VBB']['GPZ'] = $row->gpz_vbb;
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['gesamt']['GPZ'] = $row->gpz_gesamt;
}
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['BB']['NPZ'] = $row->npz_bb;
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['VZ']['NPZ'] = $row->npz_vz;
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['VBB']['NPZ'] = $row->npz_vbb;
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['gesamt']['NPZ'] = $row->npz_gesamt;
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['BB']['GPZ'] = $row->gpz_bb;
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['VZ']['GPZ'] = $row->gpz_vz;
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['VBB']['GPZ'] = $row->gpz_vbb;
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['gesamt']['GPZ'] = $row->gpz_gesamt;
}
return $result;
}
/**
* Liefert alle Studienplätze eines Studiengangs und Semesters
* @param string $stg_kz z.B: -16
* @param string $studiensemester_kurzbz z.B: WS2015
* @return boolean|array false bei Fehler
*/
public function getFromStgKzAndStudsem($stg_kz, $studiensemester_kurzbz)
{
if(!is_numeric($stg_kz))
{
$this->errormsg='stg_kz muss eine gueltige Zahl sein';
return false;
}
if($studiensemester_kurzbz == "")
{
$this->errormsg='Es wurde kein gueltiges studiensemester_kurzbz uerbergeben';
return false;
}
//Lesen der Daten aus der Datenbank
$qry = "SELECT * FROM lehre.tbl_studienplatz
JOIN public.tbl_studiengang using(studiengang_kz)
WHERE studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz)."
AND studiengang_kz=".$this->db_add_param($stg_kz, FHC_INTEGER);
if($this->db_query($qry))
{
$result = array();
while($row = $this->db_fetch_object())
{
$result[] = $row;
}
return $result;
}
return false;
}
/**
* Prueft die Variablen auf Gueltigkeit
@@ -260,7 +346,7 @@ class studienplatz extends basis_db
{
$this->errormsg='studiengang_kz enthaelt ungueltige Zeichen';
return false;
}
}
if(mb_strlen($this->orgform_kurzbz)>3)
{
$this->errormsg = 'orgform_kurzbz darf nicht länger als 3 Zeichen sein';
@@ -284,11 +370,19 @@ class studienplatz extends basis_db
{
$this->errormsg='npz enthaelt ungueltige Zeichen';
return false;
}if(!is_numeric($this->apz) && $this->apz!='')
{
$this->errormsg='apz enthaelt ungueltige Zeichen';
return false;
}if(!is_numeric($this->studienplan_id) && $this->studienplan_id!='')
{
$this->errormsg='studienplan_id enthaelt ungueltige Zeichen';
return false;
}
$this->errormsg = '';
return true;
}
/**
* Speichert den aktuellen Datensatz in die Datenbank
* Wenn $neu auf true gesetzt ist wird ein neuer Datensatz angelegt
@@ -305,20 +399,22 @@ class studienplatz extends basis_db
{
//Neuen Datensatz einfuegen
$qry='BEGIN;INSERT INTO lehre.tbl_studienplatz ('.
'studiengang_kz, orgform_kurzbz, studiensemester_kurzbz, '.
'ausbildungssemester, gpz, npz, insertamum, insertvon, '.
'updateamum, updatevon) VALUES('.
$this->db_add_param($this->studiengang_kz, FHC_INTEGER).', '.
$this->db_add_param($this->orgform_kurzbz).', '.
$this->db_add_param($this->studiensemester_kurzbz).', '.
$this->db_add_param($this->ausbildungssemester, FHC_INTEGER).', '.
//$this->db_add_param($this->art).', '.
$this->db_add_param($this->gpz, FHC_INTEGER).', '.
$this->db_add_param($this->npz, FHC_INTEGER).', '.
'now(), '.
$this->db_add_param($this->insertvon).', '.
'now(), '.
$this->db_add_param($this->updatevon).');';
'studiengang_kz, orgform_kurzbz, studiensemester_kurzbz, '.
'ausbildungssemester, gpz, npz, apz, studienplan_id insertamum, insertvon, '.
'updateamum, updatevon) VALUES('.
$this->db_add_param($this->studiengang_kz, FHC_INTEGER).', '.
$this->db_add_param($this->orgform_kurzbz).', '.
$this->db_add_param($this->studiensemester_kurzbz).', '.
$this->db_add_param($this->ausbildungssemester, FHC_INTEGER).', '.
//$this->db_add_param($this->art).', '.
$this->db_add_param($this->gpz, FHC_INTEGER).', '.
$this->db_add_param($this->npz, FHC_INTEGER).', '.
$this->db_add_param($this->apz, FHC_INTEGER).', '.
$this->db_add_param($this->studienplan_id, FHC_INTEGER).', '.
'now(), '.
$this->db_add_param($this->insertvon).', '.
'now(), '.
$this->db_add_param($this->updatevon).');';
}
else
{
@@ -328,19 +424,21 @@ class studienplatz extends basis_db
$this->errormsg = 'studienplatz_id muss eine gueltige Zahl sein';
return false;
}
$qry='UPDATE lehre.tbl_studienplatz SET'.
$qry='UPDATE lehre.tbl_studienplatz SET'.
' studiengang_kz='.$this->db_add_param($this->studiengang_kz).', '.
' orgform_kurzbz='.$this->db_add_param($this->orgform_kurzbz).', '.
' studiensemester_kurzbz='.$this->db_add_param($this->studiensemester_kurzbz).', '.
' ausbildungssemester='.$this->db_add_param($this->ausbildungssemester).', '.
' ausbildungssemester='.$this->db_add_param($this->ausbildungssemester).', '.
//' art='.$this->db_add_param($this->art).', '.
' gpz='.$this->db_add_param($this->gpz).', '.
' npz='.$this->db_add_param($this->npz).', '.
' updateamum= now(), '.
' updatevon='.$this->db_add_param($this->updatevon).
' WHERE studienplatz_id='.$this->db_add_param($this->studienplatz_id, FHC_INTEGER, false).';';
' gpz='.$this->db_add_param($this->gpz).', '.
' npz='.$this->db_add_param($this->npz).', '.
' apz='.$this->db_add_param($this->apz, FHC_INTEGER).', '.
' studienplan_id='.$this->db_add_param($this->studienplan_id, FHC_INTEGER).', '.
' updateamum= now(), '.
' updatevon='.$this->db_add_param($this->updatevon).
' WHERE studienplatz_id='.$this->db_add_param($this->studienplatz_id, FHC_INTEGER, false).';';
}
if($this->db_query($qry))
{
if($this->new)
@@ -371,7 +469,7 @@ class studienplatz extends basis_db
}
else
{
{
return false;
}
return $this->studienplatz_id;
@@ -399,7 +497,7 @@ class studienplatz extends basis_db
return true;
}
else
{
{
return false;
}
}
@@ -42,3 +42,9 @@ TD,TH
{
font-size: 9pt;
}
table.tablesorter tbody td
{
margin: 0;
padding: 0;
vertical-align: middle;
}
+8 -1
View File
@@ -482,7 +482,14 @@ class wochenplan extends basis_db
$this->link.='&stg_kz='.$this->stg_kz.'&sem='.$this->sem.'&ver='.$this->ver.'&grp='.$this->grp;
}
if ($this->type=='ort' && $this->ort_kurzbz != 'all')
echo '<strong>'.$p->t('lvplan/raum').': </strong>'.$this->ort_kurzbz.' - '.$this->ort_bezeichnung.' - '.($this->ort_max_person!=''?'( '.$this->ort_max_person.' '.$p->t('lvplan/personen').' )':'').($this->ort_content_id!=''?' - <a href="../../../cms/content.php?content_id='.$this->ort_content_id.'" target="_self">'.$p->t('lvplan/rauminformationenAnzeigen').'</a>':'').'<br>'.$this->ort_ausstattung;
{
echo '<strong>'.$p->t('lvplan/raum').': </strong>'.$this->ort_kurzbz;
echo ' - '.$this->ort_bezeichnung;
echo ($this->ort_max_person!=''?' - ( '.$this->ort_max_person.' '.$p->t('lvplan/personen').' )':'');
echo ($this->ort_content_id!=''?' - <a href="../../../cms/content.php?content_id='.$this->ort_content_id.'" target="_self">'.$p->t('lvplan/rauminformationenAnzeigen').'</a>':'');
echo '<span id="software"></span>';
echo '<br>'.$this->ort_ausstattung;
}
if ($this->type=='lva')
$this->link.='&lva='.$this->lva;
echo '</P>'.$this->crlf;
+39
View File
@@ -0,0 +1,39 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//DE" "http://www.w3.org/TR/html4/loose.dtd">
<html lang=de>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<meta name="description" content="FH-Complete - The free campus manangement system." />
<meta name="keywords" content="FH-Complete, Campus Managemet" />
<meta name="author" content="FH-Complete team and contributors">
<link href="http://getbootstrap.com/dist/css/bootstrap.min.css" rel="stylesheet">
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
<script src="http://getbootstrap.com/dist/js/bootstrap.min.js"></script>
<title>FH-Complete Demo</title>
</head>
<body>
<h1>FH-Complete Demo</h1>
<h2>Where do you want to go?</h2>
<h3>Core Components</h3>
<ul>
<li>CIS</li>
<li><a href="index.ci.php">VileSci</a></li>
<li>WaWi</li>
<li>FAS</li>
<li>Tempus</li>
<li>Planner</li>
</ul>
<h3>AddOns</h3>
<ul>
<li><a href="addons/aufnahme/cis/index.php">Aufnahme</a></li>
<li>Studienplatzverwaltung</li>
<li>Studiengangverwaltung</li>
<li><a href="addons/reports/cis/index.php">Reports</a></li>
<li>Datenimport</li>
<li>Kompetenzen</li>
</ul>
</body>
</html>
+1
View File
@@ -172,4 +172,5 @@ $this->phrasen['benotungstool/punkte']='Punkte';
$this->phrasen['benotungstool/importAnweisung']='Kopieren Sie die Spalten Personenkennzeichen und Note aus der Notenliste und fügen Sie diese in folgendes Feld ein';
$this->phrasen['benotungstool/pruefung']='Prüfung';
$this->phrasen['benotungstool/notenlisteImport']='Notenliste für den LV-Noten-Import (Excel)';
$this->phrasen['benotungstool/bearbeitetvon']='Bearbeitet von';
?>
+404 -400
View File
@@ -1,400 +1,404 @@
<!ENTITY window.title "FAS">
<!ENTITY window.version "3.2a">
<!-- MENUE -->
<!-- Datei -->
<!ENTITY menu-file.label "Datei">
<!ENTITY menu-file.accesskey "D">
<!ENTITY menu-file-close.key "D">
<!ENTITY menu-file-close.label "Beenden">
<!ENTITY menu-file-close.accesskey "B">
<!-- Bearbeiten -->
<!ENTITY menu-edit.label "Bearbeiten">
<!ENTITY menu-edit.accesskey "B">
<!ENTITY menu-edit-undo.key "">
<!ENTITY menu-edit-undo.label "Undo">
<!ENTITY menu-edit-undo.accesskey "">
<!-- Einstellungen -->
<!ENTITY menu-prefs.label "Einstellungen">
<!ENTITY menu-prefs.accesskey "E">
<!ENTITY menu-prefs-stpltable.label "Stpl-Tabelle">
<!ENTITY menu-prefs-stpltable.accesskey "T">
<!ENTITY menu-prefs-stpltable-stundenplan.key "s">
<!ENTITY menu-prefs-stpltable-stundenplan.label "stundenplan">
<!ENTITY menu-prefs-stpltable-stundenplan.accesskey "s">
<!ENTITY menu-prefs-stpltable-stundenplandev.key "d">
<!ENTITY menu-prefs-stpltable-stundenplandev.label "stundenplandev">
<!ENTITY menu-prefs-stpltable-stundenplandev.accesskey "d">
<!ENTITY menu-prefs-kontofilterstg.key "B">
<!ENTITY menu-prefs-kontofilterstg.label "Buchungen auf Studiengang filtern">
<!ENTITY menu-prefs-kontofilterstg.accesskey "B">
<!-- Berichte -->
<!ENTITY menu-statistic.label "Berichte">
<!ENTITY menu-statistic.accesskey "R">
<!ENTITY menu-statistic-koordinatorstunden.key "K">
<!ENTITY menu-statistic-koordinatorstunden.label "Koordinatorstunden">
<!ENTITY menu-statistic-koordinatorstunden.accesskey "K">
<!ENTITY menu-statistic-lehre.key "L">
<!ENTITY menu-statistic-lehre.label "Lehre">
<!ENTITY menu-statistic-lehre.accesskey "L">
<!ENTITY menu-statistic-mitarbeiter.key "M">
<!ENTITY menu-statistic-mitarbeiter.label "MitarbeiterInnen">
<!ENTITY menu-statistic-mitarbeiter.accesskey "M">
<!ENTITY menu-statistic-student.key "S">
<!ENTITY menu-statistic-student.label "Studierende">
<!ENTITY menu-statistic-student.accesskey "S">
<!ENTITY menu-statistic-oehbeitraege.key "O">
<!ENTITY menu-statistic-oehbeitraege.label "ÖH-Beiträge">
<!ENTITY menu-statistic-oehbeitraege.accesskey "O">
<!ENTITY menu-statistic-lehrauftraege.key "L">
<!ENTITY menu-statistic-lehrauftraege.label "Lehraufträge">
<!ENTITY menu-statistic-lehrauftraege.accesskey "L">
<!ENTITY menu-statistic-sublvplanung.key "V">
<!ENTITY menu-statistic-sublvplanung.label "LV-Planung">
<!ENTITY menu-statistic-sublvplanung.accesskey "V">
<!ENTITY menu-statistic-lvplanung.key "H">
<!ENTITY menu-statistic-lvplanung.label "HTML">
<!ENTITY menu-statistic-lvplanung.accesskey "H">
<!ENTITY menu-statistic-lvplanungexcel.key "E">
<!ENTITY menu-statistic-lvplanungexcel.label "EXCEL">
<!ENTITY menu-statistic-lvplanungexcel.accesskey "E">
<!ENTITY menu-statistic-lehrauftragsliste.key "A">
<!ENTITY menu-statistic-lehrauftragsliste.label "Lehrauftragsliste">
<!ENTITY menu-statistic-lehrauftragsliste.accesskey "A">
<!ENTITY menu-statistic-projektarbeit.key "P">
<!ENTITY menu-statistic-projektarbeit.label "Projektarbeit">
<!ENTITY menu-statistic-projektarbeit.accesskey "P">
<!ENTITY menu-statistic-abschlusspruefung.key "B">
<!ENTITY menu-statistic-abschlusspruefung.label "Abschlussprüfung">
<!ENTITY menu-statistic-abschlusspruefung.accesskey "B">
<!ENTITY menu-statistic-fehlendedokumente.key "D">
<!ENTITY menu-statistic-fehlendedokumente.label "Fehlende Dokumente">
<!ENTITY menu-statistic-fehlendedokumente.accesskey "D">
<!ENTITY menu-statistic-subnotenspiegel.key "N">
<!ENTITY menu-statistic-subnotenspiegel.label "Notenspiegel">
<!ENTITY menu-statistic-subnotenspiegel.accesskey "N">
<!ENTITY menu-statistic-notenspiegel-excel.key "E">
<!ENTITY menu-statistic-notenspiegel-excel.label "Notenspiegel EXCEL">
<!ENTITY menu-statistic-notenspiegel-excel.accesskey "E">
<!ENTITY menu-statistic-notenspiegel.key "H">
<!ENTITY menu-statistic-notenspiegel.label "Notenspiegel HTML">
<!ENTITY menu-statistic-notenspiegel.accesskey "H">
<!ENTITY menu-statistic-substatistik-bewerberstatistik.label "BewerberInnenstatistik">
<!ENTITY menu-statistic-substatistik-bewerberstatistik.accesskey "B">
<!ENTITY menu-statistic-bewerberstatistik-html.key "H">
<!ENTITY menu-statistic-bewerberstatistik-html.label "HTML">
<!ENTITY menu-statistic-bewerberstatistik-html.accesskey "H">
<!ENTITY menu-statistic-bewerberstatistik-excel.key "E">
<!ENTITY menu-statistic-bewerberstatistik-excel.label "EXCEL">
<!ENTITY menu-statistic-bewerberstatistik-excel.accesskey "E">
<!ENTITY menu-statistic-substatistik.key "S">
<!ENTITY menu-statistic-substatistik.label "Statistik">
<!ENTITY menu-statistic-substatistik.accesskey "S">
<!ENTITY menu-statistic-substatistik-studentenprosemester.label "Studierende/Semester">
<!ENTITY menu-statistic-substatistik-studentenprosemester.accesskey "S">
<!ENTITY menu-statistic-substatistik-studentenprosemester-excel.key "E">
<!ENTITY menu-statistic-substatistik-studentenprosemester-excel.label "EXCEL">
<!ENTITY menu-statistic-substatistik-studentenprosemester-excel.accesskey "E">
<!ENTITY menu-statistic-substatistik-studentenprosemester-html.key "H">
<!ENTITY menu-statistic-substatistik-studentenprosemester-html.label "HTML">
<!ENTITY menu-statistic-substatistik-studentenprosemester-html.accesskey "H">
<!ENTITY menu-statistic-substatistik-alvsstatistik.label "ALVS-Statistik">
<!ENTITY menu-statistic-substatistik-alvsstatistik.accesskey "A">
<!ENTITY menu-statistic-substatistik-alvsstatistik-excel.key "E">
<!ENTITY menu-statistic-substatistik-alvsstatistik-excel.label "EXCEL">
<!ENTITY menu-statistic-substatistik-alvsstatistik-excel.accesskey "E">
<!ENTITY menu-statistic-substatistik-alvsstatistik-html.key "H">
<!ENTITY menu-statistic-substatistik-alvsstatistik-html.label "HTML">
<!ENTITY menu-statistic-substatistik-alvsstatistik-html.accesskey "H">
<!ENTITY menu-statistic-substatistik-lvplanunggesamtsj.key "L">
<!ENTITY menu-statistic-substatistik-lvplanunggesamtsj.label "LV-Planung Gesamt SJ">
<!ENTITY menu-statistic-substatistik-lvplanunggesamtsj.accesskey "L">
<!ENTITY menu-statistic-substatistik-lvplanunggesamtsj-excel.key "E">
<!ENTITY menu-statistic-substatistik-lvplanunggesamtsj-excel.label "EXCEL">
<!ENTITY menu-statistic-substatistik-lvplanunggesamtsj-excel.accesskey "E">
<!ENTITY menu-statistic-abgaengerstatistik.key "A">
<!ENTITY menu-statistic-abgaengerstatistik.label "AbgängerInnenstatistik">
<!ENTITY menu-statistic-abgaengerstatistik.accesskey "A">
<!ENTITY menu-statistic-absolventenstatistik.key "B">
<!ENTITY menu-statistic-absolventenstatistik.label "AbsolventInnenstatistik">
<!ENTITY menu-statistic-absolventenstatistik.accesskey "B">
<!ENTITY menu-statistic-absolventenzahlen.key "Z">
<!ENTITY menu-statistic-absolventenzahlen.label "AbsolventInnenzahlen">
<!ENTITY menu-statistic-absolventenzahlen.accesskey "Z">
<!ENTITY menu-statistic-lektorenstatistik.key "L">
<!ENTITY menu-statistic-lektorenstatistik.label "LektorInnenstatistik">
<!ENTITY menu-statistic-lektorenstatistik.accesskey "L">
<!ENTITY menu-statistic-studentenstatistik.key "S">
<!ENTITY menu-statistic-studentenstatistik.label "Studierendenstatistik">
<!ENTITY menu-statistic-studentenstatistik.accesskey "S">
<!ENTITY menu-statistic-mitarbeiterstatistik.key "M">
<!ENTITY menu-statistic-mitarbeiterstatistik.label "MitarbeiterInnenstatistik">
<!ENTITY menu-statistic-mitarbeiterstatistik.accesskey "M">
<!ENTITY menu-statistic-studentendetails.key "P">
<!ENTITY menu-statistic-studentendetails.label "Personendetails Excel">
<!ENTITY menu-statistic-studentendetails.accesskey "P">
<!ENTITY menu-statistic-stromanalyse.key "S">
<!ENTITY menu-statistic-stromanalyse.label "Stromanalyse">
<!ENTITY menu-statistic-stromanalyse.accesskey "S">
<!-- Dokumente -->
<!ENTITY menu-dokumente.label "Dokumente">
<!ENTITY menu-dokumente.accesskey "D">
<!ENTITY menu-dokumente-inskriptionsbestaetigung.key "I">
<!ENTITY menu-dokumente-inskriptionsbestaetigung.label "Inskriptionsbestätigung">
<!ENTITY menu-dokumente-inskriptionsbestaetigung.accesskey "I">
<!ENTITY menu-dokumente-zeugnis.key "Z">
<!ENTITY menu-dokumente-zeugnis.label "Zeugnis Deutsch">
<!ENTITY menu-dokumente-zeugnis.accesskey "Z">
<!ENTITY menu-dokumente-zeugniseng.key "E">
<!ENTITY menu-dokumente-zeugniseng.label "Zeugnis Englisch">
<!ENTITY menu-dokumente-zeugniseng.accesskey "E">
<!ENTITY menu-dokumente-sammelzeugnis.key "A">
<!ENTITY menu-dokumente-sammelzeugnis.label "Sammelzeugnis">
<!ENTITY menu-dokumente-sammelzeugnis.accesskey "A">
<!ENTITY menu-dokumente-diplsupplement.key "S">
<!ENTITY menu-dokumente-diplsupplement.label "Diploma Supplement">
<!ENTITY menu-dokumente-diplsupplement.accesskey "S">
<!ENTITY menu-dokumente-ausbildungsvertrag.key "A">
<!ENTITY menu-dokumente-ausbildungsvertrag.label "Ausbildungsvertrag Deutsch">
<!ENTITY menu-dokumente-ausbildungsvertrag.accesskey "A">
<!ENTITY menu-dokumente-ausbildungsvertrag_englisch.key "U">
<!ENTITY menu-dokumente-ausbildungsvertrag_englisch.label "Ausbildungsvertrag Englisch">
<!ENTITY menu-dokumente-ausbildungsvertrag_englisch.accesskey "U">
<!ENTITY menu-dokumente-studienerfolg.label "Studienerfolgsbestaetigung Deutsch">
<!ENTITY menu-dokumente-studienerfolg.accesskey "E">
<!ENTITY menu-dokumente-studienerfolg-normal.label "Normal">
<!ENTITY menu-dokumente-studienerfolg-normal.accesskey "N">
<!ENTITY menu-dokumente-studienerfolg-finanzamt.label "Finanzamt">
<!ENTITY menu-dokumente-studienerfolg-finanzamt.accesskey "F">
<!ENTITY menu-dokumente-studienerfolg-allesemester.label "Alle Semester">
<!ENTITY menu-dokumente-studienerfolg-allesemester-normal.label "Normal">
<!ENTITY menu-dokumente-studienerfolg-allesemester-normal.accesskey "N">
<!ENTITY menu-dokumente-studienerfolg-allesemester-finanzamt.label "Finanzamt">
<!ENTITY menu-dokumente-studienerfolg-allesemester-finanzamt.accesskey "F">
<!ENTITY menu-dokumente-studienerfolgeng.label "Studienerfolgsbestaetigung Englisch">
<!ENTITY menu-dokumente-studienerfolgeng.accesskey "E">
<!ENTITY menu-dokumente-studienerfolgeng-normal.label "Normal">
<!ENTITY menu-dokumente-studienerfolgeng-normal.accesskey "N">
<!ENTITY menu-dokumente-studienerfolgeng-finanzamt.label "Finanzamt">
<!ENTITY menu-dokumente-studienerfolgeng-finanzamt.accesskey "F">
<!ENTITY menu-dokumente-studienerfolgeng-allesemester.label "Alle Semester">
<!ENTITY menu-dokumente-studienerfolgeng-allesemester-normal.label "Normal">
<!ENTITY menu-dokumente-studienerfolgeng-allesemester-normal.accesskey "N">
<!ENTITY menu-dokumente-studienerfolgeng-allesemester-finanzamt.label "Finanzamt">
<!ENTITY menu-dokumente-studienerfolgeng-allesemester-finanzamt.accesskey "F">
<!ENTITY menu-dokumente-accountinfoblatt.label "Account InfoBlatt">
<!ENTITY menu-dokumente-accountinfoblatt.accesskey "A">
<!ENTITY menu-dokumente-zutrittskarte.label "Zutrittskarte">
<!ENTITY menu-dokumente-zutrittskarte.accesskey "Z">
<!ENTITY menu-dokumente-studienblatt.label "Studienblatt Deutsch">
<!ENTITY menu-dokumente-studienblatt.accesskey "B">
<!ENTITY menu-dokumente-studienblatt_englisch.label "Studienblatt Englisch">
<!ENTITY menu-dokumente-studienblatt_englisch.accesskey "T">
<!ENTITY menu-dokumente-pruefungsprotokoll.label "Prüfungsprotokoll 1 (Alte Version)">
<!ENTITY menu-dokumente-pruefungsprotokoll.accesskey "P">
<!ENTITY menu-dokumente-pruefungsprotokoll_englisch.label "Prüfungsprotokoll Englisch 1 (Alte Version)">
<!ENTITY menu-dokumente-pruefungsprotokoll_englisch.accesskey "P">
<!ENTITY menu-dokumente-pruefungsprotokoll2.label "Prüfungsprotokoll Deutsch">
<!ENTITY menu-dokumente-pruefungsprotokoll2.accesskey "P">
<!ENTITY menu-dokumente-pruefungsprotokoll2_englisch.label "Prüfungsprotokoll Englisch">
<!ENTITY menu-dokumente-pruefungsprotokoll2_englisch.accesskey "P">
<!ENTITY menu-dokumente-pruefungszeugnis.label "Prüfungszeugnis Deutsch">
<!ENTITY menu-dokumente-pruefungszeugnis.accesskey "Z">
<!ENTITY menu-dokumente-pruefungszeugnis_englisch.label "Prüfungszeugnis Englisch">
<!ENTITY menu-dokumente-pruefungszeugnis_englisch.accesskey "G">
<!ENTITY menu-dokumente-urkunde_deutsch.label "Urkunde Deutsch">
<!ENTITY menu-dokumente-urkunde_deutsch.accesskey "D">
<!ENTITY menu-dokumente-urkunde_englisch.label "Urkunde Englisch">
<!ENTITY menu-dokumente-urkunde_englisch.accesskey "E">
<!-- CIS -->
<!ENTITY menu-cis.label "CIS">
<!ENTITY menu-cis.accesskey "C">
<!ENTITY menu-cis-studienplan.key "P">
<!ENTITY menu-cis-studienplan.label "Studienplan">
<!ENTITY menu-cis-studienplan.accesskey "P">
<!ENTITY menu-cis-notenliste.key "N">
<!ENTITY menu-cis-notenliste.label "Notenliste">
<!ENTITY menu-cis-notenliste.accesskey "N">
<!-- Extras -->
<!ENTITY menu-extras.label "Extras">
<!ENTITY menu-extras.accesskey "X">
<!ENTITY menu-extras-reihungstest.key "R">
<!ENTITY menu-extras-reihungstest.label "Reihungstestverwaltung">
<!ENTITY menu-extras-reihungstest.accesskey "R">
<!ENTITY menu-extras-firma.key "F">
<!ENTITY menu-extras-firma.label "Firmenverwaltung">
<!ENTITY menu-extras-firma.accesskey "F">
<!ENTITY menu-extras-lvverwaltung.key "L">
<!ENTITY menu-extras-lvverwaltung.label "Lehrveranstaltungsverwaltung">
<!ENTITY menu-extras-lvverwaltung.accesskey "L">
<!ENTITY menu-extras-studienordnung.key "S">
<!ENTITY menu-extras-studienordnung.label "Studienordnung">
<!ENTITY menu-extras-studienordnung.accesskey "S">
<!ENTITY menu-extras-projektarbeitsbenotung.key "P">
<!ENTITY menu-extras-projektarbeitsbenotung.label "Projektarbeitsbenotung">
<!ENTITY menu-extras-projektarbeitsbenotung.accesskey "P">
<!ENTITY menu-extras-gruppenverwaltung.key "G">
<!ENTITY menu-extras-gruppenverwaltung.label "Gruppenverwaltung">
<!ENTITY menu-extras-gruppenverwaltung.accesskey "G">
<!ENTITY menu-extras-lehrfachverwaltung.key "E">
<!ENTITY menu-extras-lehrfachverwaltung.label "Lehrfachverwaltung">
<!ENTITY menu-extras-lehrfachverwaltung.accesskey "E">
<!ENTITY menu-extras-lektorenzuordnunginstitute.key "L">
<!ENTITY menu-extras-lektorenzuordnunginstitute.label "Lektorenzuordnung-Institute">
<!ENTITY menu-extras-lektorenzuordnunginstitute.accesskey "L">
<!ENTITY menu-extras-preinteressentenuebernahme.key "I">
<!ENTITY menu-extras-preinteressentenuebernahme.label "Preinteressenten übernehmen">
<!ENTITY menu-extras-preinteressentenuebernahme.accesskey "I">
<!ENTITY menu-extras-projektarbeitsabgaben.key "A">
<!ENTITY menu-extras-projektarbeitsabgaben.label "Projektarbeitstermine">
<!ENTITY menu-extras-projektarbeitsabgaben.accesskey "A">
<!-- BIS -->
<!ENTITY menu-bis.label "BIS">
<!ENTITY menu-bis.accesskey "I">
<!ENTITY menu-bis.accesskey "I">
<!ENTITY menu-bis-mitarbeiter.key "M">
<!ENTITY menu-bis-mitarbeiter.label "Mitarbeiter">
<!ENTITY menu-bis-mitarbeiter.accesskey "M">
<!ENTITY menu-bis-mitarbeiter-import.key "I">
<!ENTITY menu-bis-mitarbeiter-import.label "Import">
<!ENTITY menu-bis-mitarbeiter-import.accesskey "I">
<!ENTITY menu-bis-mitarbeiter-export.key "E">
<!ENTITY menu-bis-mitarbeiter-export.label "Meldung generieren">
<!ENTITY menu-bis-mitarbeiter-export.accesskey "E">
<!ENTITY menu-bis-mitarbeiter-checkverwendung.key "V">
<!ENTITY menu-bis-mitarbeiter-checkverwendung.label "checkVerwendung">
<!ENTITY menu-bis-mitarbeiter-checkverwendung.accesskey "V">
<!ENTITY menu-bis-mitarbeiter-checkfunktion.key "F">
<!ENTITY menu-bis-mitarbeiter-checkfunktion.label "checkFunktion">
<!ENTITY menu-bis-mitarbeiter-checkfunktion.accesskey "F">
<!ENTITY menu-bis-studenten.key "S">
<!ENTITY menu-bis-studenten.label "Studenten">
<!ENTITY menu-bis-studenten.accesskey "S">
<!ENTITY menu-bis-studenten-export.key "E">
<!ENTITY menu-bis-studenten-export.label "Meldung generieren">
<!ENTITY menu-bis-studenten-export.accesskey "E">
<!ENTITY menu-bis-studenten-checkstudent.key "P">
<!ENTITY menu-bis-studenten-checkstudent.label "Plausibilitaetspruefung">
<!ENTITY menu-bis-studenten-checkstudent.accesskey "P">
<!-- Hilfe -->
<!ENTITY menu-help.label "Hilfe">
<!ENTITY menu-help.accesskey "H">
<!ENTITY menu-help-about.key "U">
<!ENTITY menu-help-about.label "Über FHComplete">
<!ENTITY menu-help-about.accesskey "U">
<!ENTITY menu-help-manual.key "H">
<!ENTITY menu-help-manual.label "DokuWiki FHComplete">
<!ENTITY menu-help-manual.accesskey "H">
<!ENTITY menu-help-todo.key "T">
<!ENTITY menu-help-todo.label "Mantis Bugtracker">
<!ENTITY menu-help-todo.accesskey "T">
<!ENTITY tab-prestudent-aufnahme.label "Reihungstest">
<!ENTITY tab-prestudent-aufnahme.anmeldung "Anmeldung zum Reihungstest am">
<!ENTITY tab-prestudent-aufnahme.absolviert "Zum Reihungstest angetreten">
<!ENTITY tab-prestudent-aufnahme.seminar "Reihungstest">
<!ENTITY window.title "FAS">
<!ENTITY window.version "3.2a">
<!-- MENUE -->
<!-- Datei -->
<!ENTITY menu-file.label "Datei">
<!ENTITY menu-file.accesskey "D">
<!ENTITY menu-file-close.key "D">
<!ENTITY menu-file-close.label "Beenden">
<!ENTITY menu-file-close.accesskey "B">
<!-- Bearbeiten -->
<!ENTITY menu-edit.label "Bearbeiten">
<!ENTITY menu-edit.accesskey "B">
<!ENTITY menu-edit-undo.key "">
<!ENTITY menu-edit-undo.label "Undo">
<!ENTITY menu-edit-undo.accesskey "">
<!-- Einstellungen -->
<!ENTITY menu-prefs.label "Einstellungen">
<!ENTITY menu-prefs.accesskey "E">
<!ENTITY menu-prefs-stpltable.label "Stpl-Tabelle">
<!ENTITY menu-prefs-stpltable.accesskey "T">
<!ENTITY menu-prefs-stpltable-stundenplan.key "s">
<!ENTITY menu-prefs-stpltable-stundenplan.label "stundenplan">
<!ENTITY menu-prefs-stpltable-stundenplan.accesskey "s">
<!ENTITY menu-prefs-stpltable-stundenplandev.key "d">
<!ENTITY menu-prefs-stpltable-stundenplandev.label "stundenplandev">
<!ENTITY menu-prefs-stpltable-stundenplandev.accesskey "d">
<!ENTITY menu-prefs-kontofilterstg.key "B">
<!ENTITY menu-prefs-kontofilterstg.label "Buchungen auf Studiengang filtern">
<!ENTITY menu-prefs-kontofilterstg.accesskey "B">
<!-- Berichte -->
<!ENTITY menu-statistic.label "Berichte">
<!ENTITY menu-statistic.accesskey "R">
<!ENTITY menu-statistic-koordinatorstunden.key "K">
<!ENTITY menu-statistic-koordinatorstunden.label "Koordinatorstunden">
<!ENTITY menu-statistic-koordinatorstunden.accesskey "K">
<!ENTITY menu-statistic-lehre.key "L">
<!ENTITY menu-statistic-lehre.label "Lehre">
<!ENTITY menu-statistic-lehre.accesskey "L">
<!ENTITY menu-statistic-mitarbeiter.key "M">
<!ENTITY menu-statistic-mitarbeiter.label "MitarbeiterInnen">
<!ENTITY menu-statistic-mitarbeiter.accesskey "M">
<!ENTITY menu-statistic-student.key "S">
<!ENTITY menu-statistic-student.label "Studierende">
<!ENTITY menu-statistic-student.accesskey "S">
<!ENTITY menu-statistic-oehbeitraege.key "O">
<!ENTITY menu-statistic-oehbeitraege.label "ÖH-Beiträge">
<!ENTITY menu-statistic-oehbeitraege.accesskey "O">
<!ENTITY menu-statistic-lehrauftraege.key "L">
<!ENTITY menu-statistic-lehrauftraege.label "Lehraufträge">
<!ENTITY menu-statistic-lehrauftraege.accesskey "L">
<!ENTITY menu-statistic-sublvplanung.key "V">
<!ENTITY menu-statistic-sublvplanung.label "LV-Planung">
<!ENTITY menu-statistic-sublvplanung.accesskey "V">
<!ENTITY menu-statistic-lvplanung.key "H">
<!ENTITY menu-statistic-lvplanung.label "HTML">
<!ENTITY menu-statistic-lvplanung.accesskey "H">
<!ENTITY menu-statistic-lvplanungexcel.key "E">
<!ENTITY menu-statistic-lvplanungexcel.label "EXCEL">
<!ENTITY menu-statistic-lvplanungexcel.accesskey "E">
<!ENTITY menu-statistic-lehrauftragsliste.key "A">
<!ENTITY menu-statistic-lehrauftragsliste.label "Lehrauftragsliste">
<!ENTITY menu-statistic-lehrauftragsliste.accesskey "A">
<!ENTITY menu-statistic-projektarbeit.key "P">
<!ENTITY menu-statistic-projektarbeit.label "Projektarbeit">
<!ENTITY menu-statistic-projektarbeit.accesskey "P">
<!ENTITY menu-statistic-abschlusspruefung.key "B">
<!ENTITY menu-statistic-abschlusspruefung.label "Abschlussprüfung">
<!ENTITY menu-statistic-abschlusspruefung.accesskey "B">
<!ENTITY menu-statistic-fehlendedokumente.key "D">
<!ENTITY menu-statistic-fehlendedokumente.label "Fehlende Dokumente">
<!ENTITY menu-statistic-fehlendedokumente.accesskey "D">
<!ENTITY menu-statistic-subnotenspiegel.key "N">
<!ENTITY menu-statistic-subnotenspiegel.label "Notenspiegel">
<!ENTITY menu-statistic-subnotenspiegel.accesskey "N">
<!ENTITY menu-statistic-notenspiegel-excel.key "E">
<!ENTITY menu-statistic-notenspiegel-excel.label "Notenspiegel EXCEL">
<!ENTITY menu-statistic-notenspiegel-excel.accesskey "E">
<!ENTITY menu-statistic-notenspiegel.key "H">
<!ENTITY menu-statistic-notenspiegel.label "Notenspiegel HTML">
<!ENTITY menu-statistic-notenspiegel.accesskey "H">
<!ENTITY menu-statistic-substatistik-bewerberstatistik.label "BewerberInnenstatistik">
<!ENTITY menu-statistic-substatistik-bewerberstatistik.accesskey "B">
<!ENTITY menu-statistic-bewerberstatistik-html.key "H">
<!ENTITY menu-statistic-bewerberstatistik-html.label "HTML">
<!ENTITY menu-statistic-bewerberstatistik-html.accesskey "H">
<!ENTITY menu-statistic-bewerberstatistik-excel.key "E">
<!ENTITY menu-statistic-bewerberstatistik-excel.label "EXCEL">
<!ENTITY menu-statistic-bewerberstatistik-excel.accesskey "E">
<!ENTITY menu-statistic-substatistik.key "S">
<!ENTITY menu-statistic-substatistik.label "Statistik">
<!ENTITY menu-statistic-substatistik.accesskey "S">
<!ENTITY menu-statistic-substatistik-studentenprosemester.label "Studierende/Semester">
<!ENTITY menu-statistic-substatistik-studentenprosemester.accesskey "S">
<!ENTITY menu-statistic-substatistik-studentenprosemester-excel.key "E">
<!ENTITY menu-statistic-substatistik-studentenprosemester-excel.label "EXCEL">
<!ENTITY menu-statistic-substatistik-studentenprosemester-excel.accesskey "E">
<!ENTITY menu-statistic-substatistik-studentenprosemester-html.key "H">
<!ENTITY menu-statistic-substatistik-studentenprosemester-html.label "HTML">
<!ENTITY menu-statistic-substatistik-studentenprosemester-html.accesskey "H">
<!ENTITY menu-statistic-substatistik-alvsstatistik.label "ALVS-Statistik">
<!ENTITY menu-statistic-substatistik-alvsstatistik.accesskey "A">
<!ENTITY menu-statistic-substatistik-alvsstatistik-excel.key "E">
<!ENTITY menu-statistic-substatistik-alvsstatistik-excel.label "EXCEL">
<!ENTITY menu-statistic-substatistik-alvsstatistik-excel.accesskey "E">
<!ENTITY menu-statistic-substatistik-alvsstatistik-html.key "H">
<!ENTITY menu-statistic-substatistik-alvsstatistik-html.label "HTML">
<!ENTITY menu-statistic-substatistik-alvsstatistik-html.accesskey "H">
<!ENTITY menu-statistic-substatistik-lvplanunggesamtsj.key "L">
<!ENTITY menu-statistic-substatistik-lvplanunggesamtsj.label "LV-Planung Gesamt SJ">
<!ENTITY menu-statistic-substatistik-lvplanunggesamtsj.accesskey "L">
<!ENTITY menu-statistic-substatistik-lvplanunggesamtsj-excel.key "E">
<!ENTITY menu-statistic-substatistik-lvplanunggesamtsj-excel.label "EXCEL">
<!ENTITY menu-statistic-substatistik-lvplanunggesamtsj-excel.accesskey "E">
<!ENTITY menu-statistic-abgaengerstatistik.key "A">
<!ENTITY menu-statistic-abgaengerstatistik.label "AbgängerInnenstatistik">
<!ENTITY menu-statistic-abgaengerstatistik.accesskey "A">
<!ENTITY menu-statistic-absolventenstatistik.key "B">
<!ENTITY menu-statistic-absolventenstatistik.label "AbsolventInnenstatistik">
<!ENTITY menu-statistic-absolventenstatistik.accesskey "B">
<!ENTITY menu-statistic-absolventenzahlen.key "Z">
<!ENTITY menu-statistic-absolventenzahlen.label "AbsolventInnenzahlen">
<!ENTITY menu-statistic-absolventenzahlen.accesskey "Z">
<!ENTITY menu-statistic-lektorenstatistik.key "L">
<!ENTITY menu-statistic-lektorenstatistik.label "LektorInnenstatistik">
<!ENTITY menu-statistic-lektorenstatistik.accesskey "L">
<!ENTITY menu-statistic-studentenstatistik.key "S">
<!ENTITY menu-statistic-studentenstatistik.label "Studierendenstatistik">
<!ENTITY menu-statistic-studentenstatistik.accesskey "S">
<!ENTITY menu-statistic-mitarbeiterstatistik.key "M">
<!ENTITY menu-statistic-mitarbeiterstatistik.label "MitarbeiterInnenstatistik">
<!ENTITY menu-statistic-mitarbeiterstatistik.accesskey "M">
<!ENTITY menu-statistic-studentendetails.key "P">
<!ENTITY menu-statistic-studentendetails.label "Personendetails Excel">
<!ENTITY menu-statistic-studentendetails.accesskey "P">
<!ENTITY menu-statistic-stromanalyse.key "S">
<!ENTITY menu-statistic-stromanalyse.label "Stromanalyse">
<!ENTITY menu-statistic-stromanalyse.accesskey "S">
<!-- Dokumente -->
<!ENTITY menu-dokumente.label "Dokumente">
<!ENTITY menu-dokumente.accesskey "D">
<!ENTITY menu-dokumente-inskriptionsbestaetigung.key "I">
<!ENTITY menu-dokumente-inskriptionsbestaetigung.label "Inskriptionsbestätigung">
<!ENTITY menu-dokumente-inskriptionsbestaetigung.accesskey "I">
<!ENTITY menu-dokumente-zeugnis.key "Z">
<!ENTITY menu-dokumente-zeugnis.label "Zeugnis Deutsch">
<!ENTITY menu-dokumente-zeugnis.accesskey "Z">
<!ENTITY menu-dokumente-zeugniseng.key "E">
<!ENTITY menu-dokumente-zeugniseng.label "Zeugnis Englisch">
<!ENTITY menu-dokumente-zeugniseng.accesskey "E">
<!ENTITY menu-dokumente-sammelzeugnis.key "A">
<!ENTITY menu-dokumente-sammelzeugnis.label "Sammelzeugnis">
<!ENTITY menu-dokumente-sammelzeugnis.accesskey "A">
<!ENTITY menu-dokumente-diplsupplement.key "S">
<!ENTITY menu-dokumente-diplsupplement.label "Diploma Supplement">
<!ENTITY menu-dokumente-diplsupplement.accesskey "S">
<!ENTITY menu-dokumente-ausbildungsvertrag.key "A">
<!ENTITY menu-dokumente-ausbildungsvertrag.label "Ausbildungsvertrag Deutsch">
<!ENTITY menu-dokumente-ausbildungsvertrag.accesskey "A">
<!ENTITY menu-dokumente-ausbildungsvertrag_englisch.key "U">
<!ENTITY menu-dokumente-ausbildungsvertrag_englisch.label "Ausbildungsvertrag Englisch">
<!ENTITY menu-dokumente-ausbildungsvertrag_englisch.accesskey "U">
<!ENTITY menu-dokumente-studienerfolg.label "Studienerfolgsbestaetigung Deutsch">
<!ENTITY menu-dokumente-studienerfolg.accesskey "E">
<!ENTITY menu-dokumente-studienerfolg-normal.label "Normal">
<!ENTITY menu-dokumente-studienerfolg-normal.accesskey "N">
<!ENTITY menu-dokumente-studienerfolg-finanzamt.label "Finanzamt">
<!ENTITY menu-dokumente-studienerfolg-finanzamt.accesskey "F">
<!ENTITY menu-dokumente-studienerfolg-allesemester.label "Alle Semester">
<!ENTITY menu-dokumente-studienerfolg-allesemester-normal.label "Normal">
<!ENTITY menu-dokumente-studienerfolg-allesemester-normal.accesskey "N">
<!ENTITY menu-dokumente-studienerfolg-allesemester-finanzamt.label "Finanzamt">
<!ENTITY menu-dokumente-studienerfolg-allesemester-finanzamt.accesskey "F">
<!ENTITY menu-dokumente-studienerfolgeng.label "Studienerfolgsbestaetigung Englisch">
<!ENTITY menu-dokumente-studienerfolgeng.accesskey "E">
<!ENTITY menu-dokumente-studienerfolgeng-normal.label "Normal">
<!ENTITY menu-dokumente-studienerfolgeng-normal.accesskey "N">
<!ENTITY menu-dokumente-studienerfolgeng-finanzamt.label "Finanzamt">
<!ENTITY menu-dokumente-studienerfolgeng-finanzamt.accesskey "F">
<!ENTITY menu-dokumente-studienerfolgeng-allesemester.label "Alle Semester">
<!ENTITY menu-dokumente-studienerfolgeng-allesemester-normal.label "Normal">
<!ENTITY menu-dokumente-studienerfolgeng-allesemester-normal.accesskey "N">
<!ENTITY menu-dokumente-studienerfolgeng-allesemester-finanzamt.label "Finanzamt">
<!ENTITY menu-dokumente-studienerfolgeng-allesemester-finanzamt.accesskey "F">
<!ENTITY menu-dokumente-accountinfoblatt.label "Account InfoBlatt">
<!ENTITY menu-dokumente-accountinfoblatt.accesskey "A">
<!ENTITY menu-dokumente-zutrittskarte.label "Zutrittskarte">
<!ENTITY menu-dokumente-zutrittskarte.accesskey "Z">
<!ENTITY menu-dokumente-studienblatt.label "Studienblatt Deutsch">
<!ENTITY menu-dokumente-studienblatt.accesskey "B">
<!ENTITY menu-dokumente-studienblatt_englisch.label "Studienblatt Englisch">
<!ENTITY menu-dokumente-studienblatt_englisch.accesskey "T">
<!ENTITY menu-dokumente-pruefungsprotokoll.label "Prüfungsprotokoll 1 (Alte Version)">
<!ENTITY menu-dokumente-pruefungsprotokoll.accesskey "P">
<!ENTITY menu-dokumente-pruefungsprotokoll_englisch.label "Prüfungsprotokoll Englisch 1 (Alte Version)">
<!ENTITY menu-dokumente-pruefungsprotokoll_englisch.accesskey "P">
<!ENTITY menu-dokumente-pruefungsprotokoll2.label "Prüfungsprotokoll Deutsch">
<!ENTITY menu-dokumente-pruefungsprotokoll2.accesskey "P">
<!ENTITY menu-dokumente-pruefungsprotokoll2_englisch.label "Prüfungsprotokoll Englisch">
<!ENTITY menu-dokumente-pruefungsprotokoll2_englisch.accesskey "P">
<!ENTITY menu-dokumente-pruefungszeugnis.label "Prüfungszeugnis Deutsch">
<!ENTITY menu-dokumente-pruefungszeugnis.accesskey "Z">
<!ENTITY menu-dokumente-pruefungszeugnis_englisch.label "Prüfungszeugnis Englisch">
<!ENTITY menu-dokumente-pruefungszeugnis_englisch.accesskey "G">
<!ENTITY menu-dokumente-urkunde_deutsch.label "Urkunde Deutsch">
<!ENTITY menu-dokumente-urkunde_deutsch.accesskey "D">
<!ENTITY menu-dokumente-urkunde_englisch.label "Urkunde Englisch">
<!ENTITY menu-dokumente-urkunde_englisch.accesskey "E">
<!-- CIS -->
<!ENTITY menu-cis.label "CIS">
<!ENTITY menu-cis.accesskey "C">
<!ENTITY menu-cis-studienplan.key "P">
<!ENTITY menu-cis-studienplan.label "Studienplan">
<!ENTITY menu-cis-studienplan.accesskey "P">
<!ENTITY menu-cis-notenliste.key "N">
<!ENTITY menu-cis-notenliste.label "Notenliste">
<!ENTITY menu-cis-notenliste.accesskey "N">
<!-- Extras -->
<!ENTITY menu-extras.label "Extras">
<!ENTITY menu-extras.accesskey "X">
<!ENTITY menu-extras-reihungstest.key "R">
<!ENTITY menu-extras-reihungstest.label "Reihungstestverwaltung">
<!ENTITY menu-extras-reihungstest.accesskey "R">
<!ENTITY menu-extras-firma.key "F">
<!ENTITY menu-extras-firma.label "Firmenverwaltung">
<!ENTITY menu-extras-firma.accesskey "F">
<!ENTITY menu-extras-lvverwaltung.key "L">
<!ENTITY menu-extras-lvverwaltung.label "Lehrveranstaltungsverwaltung">
<!ENTITY menu-extras-lvverwaltung.accesskey "L">
<!ENTITY menu-extras-studienordnung.key "S">
<!ENTITY menu-extras-studienordnung.label "Studienordnung">
<!ENTITY menu-extras-studienordnung.accesskey "S">
<!ENTITY menu-extras-projektarbeitsbenotung.key "P">
<!ENTITY menu-extras-projektarbeitsbenotung.label "Projektarbeitsbenotung">
<!ENTITY menu-extras-projektarbeitsbenotung.accesskey "P">
<!ENTITY menu-extras-gruppenverwaltung.key "G">
<!ENTITY menu-extras-gruppenverwaltung.label "Gruppenverwaltung">
<!ENTITY menu-extras-gruppenverwaltung.accesskey "G">
<!ENTITY menu-extras-lehrfachverwaltung.key "E">
<!ENTITY menu-extras-lehrfachverwaltung.label "Lehrfachverwaltung">
<!ENTITY menu-extras-lehrfachverwaltung.accesskey "E">
<!ENTITY menu-extras-lektorenzuordnunginstitute.key "L">
<!ENTITY menu-extras-lektorenzuordnunginstitute.label "Lektorenzuordnung-Institute">
<!ENTITY menu-extras-lektorenzuordnunginstitute.accesskey "L">
<!ENTITY menu-extras-preinteressentenuebernahme.key "I">
<!ENTITY menu-extras-preinteressentenuebernahme.label "Preinteressenten übernehmen">
<!ENTITY menu-extras-preinteressentenuebernahme.accesskey "I">
<!ENTITY menu-extras-projektarbeitsabgaben.key "A">
<!ENTITY menu-extras-projektarbeitsabgaben.label "Projektarbeitstermine">
<!ENTITY menu-extras-projektarbeitsabgaben.accesskey "A">
<!ENTITY menu-extras-aliquote_reduktion.key "Q">
<!ENTITY menu-extras-aliquote_reduktion.label "Aliquote Reduktion">
<!ENTITY menu-extras-aliquote_reduktion.accesskey "Q">
<!-- BIS -->
<!ENTITY menu-bis.label "BIS">
<!ENTITY menu-bis.accesskey "I">
<!ENTITY menu-bis.accesskey "I">
<!ENTITY menu-bis-mitarbeiter.key "M">
<!ENTITY menu-bis-mitarbeiter.label "Mitarbeiter">
<!ENTITY menu-bis-mitarbeiter.accesskey "M">
<!ENTITY menu-bis-mitarbeiter-import.key "I">
<!ENTITY menu-bis-mitarbeiter-import.label "Import">
<!ENTITY menu-bis-mitarbeiter-import.accesskey "I">
<!ENTITY menu-bis-mitarbeiter-export.key "E">
<!ENTITY menu-bis-mitarbeiter-export.label "Meldung generieren">
<!ENTITY menu-bis-mitarbeiter-export.accesskey "E">
<!ENTITY menu-bis-mitarbeiter-checkverwendung.key "V">
<!ENTITY menu-bis-mitarbeiter-checkverwendung.label "checkVerwendung">
<!ENTITY menu-bis-mitarbeiter-checkverwendung.accesskey "V">
<!ENTITY menu-bis-mitarbeiter-checkfunktion.key "F">
<!ENTITY menu-bis-mitarbeiter-checkfunktion.label "checkFunktion">
<!ENTITY menu-bis-mitarbeiter-checkfunktion.accesskey "F">
<!ENTITY menu-bis-studenten.key "S">
<!ENTITY menu-bis-studenten.label "Studenten">
<!ENTITY menu-bis-studenten.accesskey "S">
<!ENTITY menu-bis-studenten-export.key "E">
<!ENTITY menu-bis-studenten-export.label "Meldung generieren">
<!ENTITY menu-bis-studenten-export.accesskey "E">
<!ENTITY menu-bis-studenten-checkstudent.key "P">
<!ENTITY menu-bis-studenten-checkstudent.label "Plausibilitaetspruefung">
<!ENTITY menu-bis-studenten-checkstudent.accesskey "P">
<!-- Hilfe -->
<!ENTITY menu-help.label "Hilfe">
<!ENTITY menu-help.accesskey "H">
<!ENTITY menu-help-about.key "U">
<!ENTITY menu-help-about.label "Über FHComplete">
<!ENTITY menu-help-about.accesskey "U">
<!ENTITY menu-help-manual.key "H">
<!ENTITY menu-help-manual.label "DokuWiki FHComplete">
<!ENTITY menu-help-manual.accesskey "H">
<!ENTITY menu-help-todo.key "T">
<!ENTITY menu-help-todo.label "Mantis Bugtracker">
<!ENTITY menu-help-todo.accesskey "T">
<!ENTITY tab-prestudent-aufnahme.label "Reihungstest">
<!ENTITY tab-prestudent-aufnahme.anmeldung "Anmeldung zum Reihungstest am">
<!ENTITY tab-prestudent-aufnahme.absolviert "Zum Reihungstest angetreten">
<!ENTITY tab-prestudent-aufnahme.seminar "Reihungstest">
+10 -9
View File
@@ -5,10 +5,10 @@ $this->phrasen['incoming/learningagreementerstellen']='Learning Agreement erstel
$this->phrasen['incoming/uploadvondateien']='Upload/Verwaltung von Dateien';
$this->phrasen['incoming/ungueltigerbenutzer']='Ungültiger Benutzer';
$this->phrasen['incoming/austauschprogram']='Austauschprogramm';
$this->phrasen['incoming/austauschprgramwählen']= 'Austauschprogramm auswählen';
$this->phrasen['incoming/austauschprgramwählen']= 'Austauschprogramm auswählen';
$this->phrasen['incoming/übersichtlehrveranstaltungen']= 'Übersicht aller Lehrveranstaltungen';
$this->phrasen['incoming/eigenelehrveranstaltungen']= 'Angemeldete Lehrveranstaltungen';
$this->phrasen['incoming/freieplätze']='Freie Plätze';
$this->phrasen['incoming/freieplätze']='Freie Plätze';
$this->phrasen['incoming/studiertvon']='Studiert in Wien von';
$this->phrasen['incoming/studiertbis']='Studiert in Wien bis';
$this->phrasen['incoming/eigeneuniversitaet']='Heimatuniversität Daten';
@@ -34,17 +34,13 @@ $this->phrasen['incoming/motivationsschreiben']='Motivationsschreiben';
$this->phrasen['incoming/zeugnis']='Zeugnis';
$this->phrasen['incoming/lichtbild']='Lichtbild';
$this->phrasen['incoming/name']='Name';
$this->phrasen['incoming/registrationEmail']='Dies ist eine automatisch generierte E-Mail.<br><br>
Vielen Dank für Ihre Registrierung an der Fachhochschule Technikum Wien.<br><br>Sie wurden erfolgreich am System registriert.<br><br><br>Mit Hilfe Ihrer UID: <b>%s</b> können Sie sich in unserem
System (<a href="'.APP_ROOT.'cis/public/incoming">Link zur Anmeldung</a>) anmelden und Ihre Daten bearbeiten.<br><br><br>
Mit freundlichen Grüßen, <br><br>FH Technikum Wien International<br>Center for International Relations & Cross-Cultural Education<br>UAS Technikum Wien<br>Hoechstaedtplatz 5, 1200 Wien, AUSTRIA';
$this->phrasen['incoming/weiter']='Weiter';
$this->phrasen['incoming/fehlerAdresse']='Fehler beim Anlegen der Adresse aufgetreten.';
$this->phrasen['incoming/fehlerKontakt']='Fehler beim Anlegen des Kontaktes aufgetreten.';
$this->phrasen['incoming/fehlerIncoming']='Fehler beim Anlegen des Preincoming aufgetreten';
$this->phrasen['incoming/nation']='Nation';
$this->phrasen['incoming/hauptmenue']='Hauptmenü';
$this->phrasen['incoming/welcomeToUAS']='Willkommen bei der Online Registrierung für Incomingstudierende an der Fachhochschule Technikum Wien!';
$this->phrasen['incoming/welcomeToUAS']='Willkommen bei der Online Registrierung für Incomingstudierende an der %s!';
$this->phrasen['incoming/registration']='Registration';
$this->phrasen['incoming/ects']='ECTS';
$this->phrasen['incoming/dokumenttyp']='Typ';
@@ -58,7 +54,7 @@ $this->phrasen['incoming/nothesis']='keine Projektarbeit';
$this->phrasen['incoming/masterthesis']='Master Thesis';
$this->phrasen['incoming/bachelorthesis']='Bachelor Thesis';
$this->phrasen['incoming/researcharea']='Gebiet';
$this->phrasen['incoming/wennVorhanden']='wenn vorhanden';
$this->phrasen['incoming/wennVorhanden']='wenn vorhanden';
$this->phrasen['incoming/studentenImWS']='BewerberInnen für das Wintersemester wählen aus den Semestern: 1,3,5';
$this->phrasen['incoming/studentenImSS']='BewerberInnen für das Sommersemester wählen aus den Semestern: 2,4,6';
$this->phrasen['incoming/filter']='Filter';
@@ -118,5 +114,10 @@ $this->phrasen['incoming/zurAnmeldung']='Zur Anmeldung';
$this->phrasen['incoming/geaendertesLA']='Geändertes Learning Agreement';
$this->phrasen['incoming/studienrichtungGastuniversitaet']= 'Studienrichtung Gastuniversität';
$this->phrasen['incoming/orgform']='Orgform';
$this->phrasen['incoming/alleSprachen']='Alle Sprachen';
$this->phrasen['incoming/alleSprachen']='Alle Sprachen';
$this->phrasen['incoming/ausgewaehlteUniversitaeten']='Ausgewählte Universitäten';
$this->phrasen['incoming/bereitsAusgewaehlt']='Diese Universität wurde bereits ausgewählt';
$this->phrasen['incoming/anfrageAbschicken']='Anfrage an CIR abschicken';
$this->phrasen['incoming/captcha']='Geben Sie bitte hier die Zeichen aus der Grafik ein (Spamschutz).';
$this->phrasen['incoming/andereGrafik']='Andere Grafik';
?>
+10 -2
View File
@@ -2,11 +2,11 @@
/*
* Signatur die an E-Mails angehängt wird, die vom System verschickt werden
*/
$this->phrasen['mail/signatur']="Mit freundlichen Grüßen\n\nFachhochschule Technikum Wien\nHöchstädtplatz 6\n1200 Wien\n";
$this->phrasen['mail/signatur']="Mit freundlichen Grüßen\n\nIhre Hochschule\n";
/*
* Mail, die vom Profil aus an den Einkauf bezüglich Betriebsmittel verschickt wird
*/
$this->phrasen['mail/profilBetriebsmittelKorrektur']="einkauf@technikum-wien.at";
$this->phrasen['mail/profilBetriebsmittelKorrektur']="invalid@example.com";
$this->phrasen['mail/accountaktivierung']='<b><center>Account Information</center></b><br>
Name: %1$s %2$s<br>
@@ -39,4 +39,12 @@ For questions concerning the network services, see<br>
These pages will give you a detailed overview of all services available.
<br><br>
';
$this->phrasen['mail/incomingRegistrationEmail']='Dies ist eine automatisch generierte E-Mail.<br><br>
Vielen Dank für Ihre Registrierung.<br><br>Sie wurden erfolgreich am System registriert.
<br><br><br>Mit Hilfe Ihrer UID: <b>%s</b> können Sie sich in unserem
System (<a href="'.APP_ROOT.'cis/public/incoming">Link zur Anmeldung</a>) anmelden und Ihre Daten bearbeiten.<br><br><br>
Mit freundlichen Grüßen,
Ihre Hochschule';
?>
+113
View File
@@ -0,0 +1,113 @@
<?php
// Pruefungsfenster
$this->phrasen['pruefung/titlePruefungsfenster'] = 'Prüfungsfenster anlegen';
$this->phrasen['pruefung/erfolgreichgespeichert'] = 'Datensatz erfolgreich gespeichert';
$this->phrasen['pruefung/fehler'] = 'Fehler: ';
$this->phrasen['pruefung/fehlerEndDatumInDerVergangenheit'] = 'Fehler: Enddatum liegt in der Vergangenheit.';
$this->phrasen['pruefung/fehlerEndDatumVorStartDatum'] = 'Fehler: Enddatum liegt nicht nach dem Startdatum.';
$this->phrasen['pruefung/fehlerDatumNichtKorrekt'] = 'Fehler: Datumseingabe nicht korrekt.';
$this->phrasen['pruefung/erfolgreichgeaendert'] = 'Datensatz erfolgreich geändert';
$this->phrasen['pruefung/keineBerechtigungZumAendernDesDatensatzes'] = 'Keine Berechtigung zum Ändern dieses Datensatzes.';
$this->phrasen['pruefung/keineBerechtigungZumAnzeigenDesDatensatzes'] = 'Keine Berechtigung zum Anzeigen dieses Datensatzes.';
$this->phrasen['pruefung/erfolgreichgeloescht'] = 'Datensatz erfolgreich gelöscht';
$this->phrasen['pruefung/pruefungsfensterKonnteNichtGeloeschtWerdenDaPruefungen'] = 'Prüfungsfenster konnte nicht gelöscht werden, da Prüfungen verknüpft sind.';
$this->phrasen['pruefung/keineBerechtigungZumLoeschenDesDatensatzes'] = 'Keine Berechtigung zum Löschen dieses Datensatzes.';
$this->phrasen['pruefung/pruefungsfensterVerwaltung'] = 'Prüfungsfenster-Verwaltung';
$this->phrasen['pruefung/neuesPruefungsfensterAnlegen'] = 'Neues Prüfungsfenster anlegen';
$this->phrasen['pruefung/start'] = 'Startdatum';
$this->phrasen['pruefung/ende'] = 'Enddatum';
$this->phrasen['pruefung/pruefungsfensterBearbeiten'] = 'Prüfungsfenster bearbeiten';
$this->phrasen['pruefung/keinePruefungsfensterGespeichert'] = 'Keine Prüfungsfenster gespeichert.';
// Termin festlegen
$this->phrasen['pruefung/titlePruefungstermin'] = 'Prüfungstermin festlegen';
$this->phrasen['pruefung/pruefungLektor'] = 'Lektor';
$this->phrasen['pruefung/pruefungenVerwalten'] = 'Prüfungen verwalten';
$this->phrasen['pruefung/pruefungTitel'] = 'Titel';
$this->phrasen['pruefung/pruefungsfenster'] = 'Prüfungsfenster';
$this->phrasen['pruefung/pruefungMethode'] = 'Methode';
$this->phrasen['pruefung/pruefungEinzelpruefung'] = 'Einzelprüfung';
$this->phrasen['pruefung/pruefungTyp'] = 'Prüfungstyp';
$this->phrasen['pruefung/pruefungIntervall'] = 'Prüfungsintervall';
$this->phrasen['pruefung/pruefungTermin'] = 'Termin';
$this->phrasen['pruefung/pruefungMinTeilnehmer'] = 'min. Teilnehmer';
$this->phrasen['pruefung/pruefungMaxTeilnehmer'] = 'max. Teilnehmer';
$this->phrasen['pruefung/pruefungSammelklausur'] = 'Sammelklausur';
$this->phrasen['pruefung/pruefungTerminHinzufuegen'] = 'Termin hinzufügen';
$this->phrasen['pruefung/pruefungPruefungenTitle'] = 'Prüfungen';
$this->phrasen['pruefung/pruefungMitarbeiter'] = 'Mitarbeiter';
$this->phrasen['pruefung/storniert'] = 'storniert';
// pruefung.js.php
$this->phrasen['pruefung/keinFensterVorhanden'] = 'Keine Prüfungsfenster vorhanden';
$this->phrasen['pruefung/keineDatenVorhanden'] = 'Keine Daten vorhanden.';
$this->phrasen['pruefung/anmeldefristAbgelaufen'] = 'Anmeldefrist abgelaufen';
$this->phrasen['pruefung/stornierenMoeglichBis'] = 'Stornieren möglich bis';
$this->phrasen['pruefung/anmeldenMoeglichBis'] = 'Anmeldung möglich bis';
$this->phrasen['pruefung/zurLvAnmeldung'] = 'zur LV-Anmeldung';
$this->phrasen['pruefung/zuerstPruefungAuswaehlen'] = 'Zuerst Prüfung auswählen.';
$this->phrasen['pruefung/bemerkungVonLektorHinzugefuegt'] = 'von Lektor hinzugefügt';
$this->phrasen['pruefung/bestaetigen'] = 'Bestätigen';
$this->phrasen['pruefung/anmerkungDesStudenten'] = 'Anmerkung des Studenten:</br>';
$this->phrasen['pruefung/bestaetigt'] = 'bestätigt';
$this->phrasen['pruefung/statusAenderungVon'] = 'Satusänderung von';
$this->phrasen['pruefung/reihungSpeichern'] = 'Reihung speichern';
$this->phrasen['pruefung/listeDrucken'] = 'Liste drucken';
$this->phrasen['pruefung/pruefungsraum'] = 'Prüfungsraum: ';
$this->phrasen['pruefung/pruefungsort'] = 'Prüfungsort ';
$this->phrasen['pruefung/imBuero'] = ' im Büro';
$this->phrasen['pruefung/raum'] = ' Raum';
$this->phrasen['pruefung/raumSpeichern'] = ' Raum speichern';
$this->phrasen['pruefung/reihunghErfolgreichGeaendert'] = 'Reihung erfolgreich geändert.';
$this->phrasen['pruefung/studiengangAuswaehlen'] = 'Studiengang auswählen';
$this->phrasen['pruefung/keinePruefungenVorhanden'] = 'Keine Prüfungen vorhanden.';
$this->phrasen['pruefung/kommentarZu'] = 'Kommentar zu ';
$this->phrasen['pruefung/kommentarSpeichern'] = 'Kommentar speichern';
$this->phrasen['pruefung/kommentarErfolgreichGespeichert'] = 'Kommentar erfolgreich gespeichert.';
$this->phrasen['pruefung/formulardatenNichtKorrekt'] = 'Formulardaten sind nicht korrekt.';
$this->phrasen['pruefung/pruefungErfolgreichGespeichert'] = 'Prüfung erfolgreich gespeichert.';
$this->phrasen['pruefung/lehrveranstaltungAuswaehlen'] = 'Lehrveranstaltung auswählen ...';
$this->phrasen['pruefung/keineLehrveranstaltungenVorhanden'] = 'Keine Lehrveranstaltungen vorhanden.';
$this->phrasen['pruefung/pruefungStornieren'] = 'Prüfung stornieren';
$this->phrasen['pruefung/lvErfolgreichEntfernt'] = 'Lehrveranstaltung erfolgreich entfernt';
$this->phrasen['pruefung/pruefungStorniert'] = 'Prüfung storniert';
$this->phrasen['pruefung/terminGeloescht'] = 'Termin gelöscht';
// pruefungsbewertung
$this->phrasen['pruefung/pruefungsbewertungTitle'] = 'Prüfungsbewertung';
$this->phrasen['pruefung/pruefungsbewertungAnmeldungen'] = 'Anmeldungen';
// pruefungsanmeldung
$this->phrasen['pruefung/anmeldungFuer'] = 'Prüfungsanmeldung für';
$this->phrasen['pruefung/filter'] = 'Filter';
$this->phrasen['pruefung/details'] = 'Details';
$this->phrasen['pruefung/lvDetails'] = 'LV-Details';
$this->phrasen['pruefung/pruefungsDetails'] = 'Prüfungsdetails';
$this->phrasen['pruefung/typ'] = 'Typ';
$this->phrasen['pruefung/intervall'] = 'Intervall';
$this->phrasen['pruefung/besuchteLehrveranstaltungen'] = 'Besuchte Lehrveranstaltungen';
$this->phrasen['pruefung/freiePlaetze'] = 'freie Plätze';
$this->phrasen['pruefung/lvVonStudiengang'] = 'Lehrveranstaltungen von Studiengang';
$this->phrasen['pruefung/lvAlle'] = 'Alle Lehrveranstaltungen';
$this->phrasen['pruefung/anmeldungSpeichern'] = 'Anmeldung speichern';
$this->phrasen['pruefung/studienverpflichtung'] = 'Studienverpflichtung';
// liste
$this->phrasen['pruefung/anmeldungsliste'] = 'Anmeldungsliste';
$this->phrasen['pruefung/fehlenderParam_lvid'] = 'Fehlender Parameter lehrveranstaltung_id';
$this->phrasen['pruefung/fehlenderParam_terminid'] = 'Fehlender Parameter termin_id';
$this->phrasen['pruefung/fehlenderParam_studiensemester'] = 'Fehlender Parameter studiensemester';
$this->phrasen['pruefung/pruefer'] = 'Prüfer';
$this->phrasen['pruefung/keineBestaetigtenAnmeldungenVorhanden'] = 'Keine bestätigten Anmeldungen vorhanden.';
$this->phrasen['pruefung/keineLvAngegeben'] = 'Keine Lehrverantaltung angegeben.';
$this->phrasen['pruefung/kollisionMitAnderemTermin'] = 'Kollision mit anderem Termin.';
$this->phrasen['pruefung/terminNichtInDerVergangenheit'] = 'Prüfungstermin liegt nicht in der Vergangenheit.';
$this->phrasen['pruefung/keineLehreinheitenVorhanden'] = 'Keine Lehreinheiten vorhanden.';
$this->phrasen['pruefung/keineAnmeldungenVorhanden'] = 'Keine Anmeldungen vorhanden.';
// anmeldungen Verwalten
$this->phrasen['pruefung/anmeldungenVerwaltenTitle'] = 'Prüfungsanmeldung Verwaltung';
$this->phrasen['pruefung/anmeldungenVerwalten'] = 'Anmeldungen Verwalten';
?>
Regular → Executable
+1 -1
View File
@@ -15,6 +15,7 @@ $this->phrasen['studienplan/legende']='Legende';
$this->phrasen['studienplan/legendeLVwirdAngeboten']='Lehrveranstaltung wird in diesem Semester angeboten';
$this->phrasen['studienplan/legendeLock']='Lehrveranstaltung für dieses Semester gesperrt';
$this->phrasen['studienplan/legendeEmpfehlung']='Empfehlung';
$this->phrasen['studienplan/legendeAngemeldet']='angemeldet';
$this->phrasen['studienplan/LehrveranstalungWaehlen']='Bitte wählen Sie die Lehrveranstaltung zu der Sie sich anmelden möchten:';
$this->phrasen['studienplan/AnmeldungDerzeitNichtMoeglich']='Derzeit sind noch keine Anmeldungen moeglich';
$this->phrasen['studienplan/bereitsAngemeldet']='Sie sind bereits zu dieser Lehrveranstaltung angemeldet';
@@ -24,4 +25,3 @@ $this->phrasen['studienplan/einschreibungErfolgreich']='Sie wurden erfolgreich i
$this->phrasen['studienplan/AnmeldungNichtMoeglich']='Keine Anmeldung moeglich';
$this->phrasen['studienplan/regelabgeschlossen']='abgeschlossen';
?>
+1
View File
@@ -17,6 +17,7 @@ $this->phrasen['tools/mussAlsStudentEingeloggtSein']='Sie müssen als Student ei
$this->phrasen['tools/nochKeineBeurteilungEingetragen']='Es wurden noch keine Beurteilungen eingetragen';
$this->phrasen['tools/fehlerBeimAuslesenDerNoten']='Fehler beim Auslesen der Noten';
$this->phrasen['tools/benotungsdatumDerZeugnisnote']='Benotungsdatum der Zeugnisnote';
$this->phrasen['tools/hinweistextMarkierung']='Kennzeichnet jene Einträge, bei denen sich die LV-Note von der Zeugnisnote unterscheidet. <b>Letztgültig ist die Zeugnisnote</b>.<br>Sollten diese Angaben nicht stimmen, wenden Sie sich bitte an Ihre zuständige Assistenz.';
//Zahlungen
$this->phrasen['tools/zahlungen']='Zahlungen';
+3 -3
View File
@@ -15,9 +15,9 @@ $this->phrasen['global/studiengangsmanagement']='Study Management';
$this->phrasen['global/geschaeftsfuehrendeltg']='business Leadership';
$this->phrasen['global/stellvertreter']='Deputy Program Director';
$this->phrasen['global/sekretariat']='Administrative Assistant';
$this->phrasen['global/studentenvertreter']='Student Representatives';
$this->phrasen['global/jahrgangsvertretung']='Class Representative';
$this->phrasen['global/hochschulvertretung']='University Representative';
$this->phrasen['global/studentenvertreter']='Degree Program Representative';
$this->phrasen['global/jahrgangsvertretung']='Academic Year Representative';
$this->phrasen['global/hochschulvertretung']='UAS Representative';
$this->phrasen['global/lehrziele']='Teaching goals';
$this->phrasen['global/allgemeinerdownload']='Global Download';
+10 -9
View File
@@ -5,10 +5,10 @@ $this->phrasen['incoming/learningagreementerstellen']='Create Learning Agreement
$this->phrasen['incoming/uploadvondateien']='Upload/Manage Documents';
$this->phrasen['incoming/ungueltigerbenutzer']='Invalid User Name';
$this->phrasen['incoming/austauschprogram']='Exchange Program';
$this->phrasen['incoming/austauschprgramwählen']= 'Select Exchange Program';
$this->phrasen['incoming/austauschprgramwählen']= 'Select Exchange Program';
$this->phrasen['incoming/übersichtlehrveranstaltungen']= 'All Subjects';
$this->phrasen['incoming/eigenelehrveranstaltungen']= 'Registered Subjects';
$this->phrasen['incoming/freieplätze']='Available Seats';
$this->phrasen['incoming/freieplätze']='Available Seats';
$this->phrasen['incoming/studiertvon']='Studies in Vienna From';
$this->phrasen['incoming/studiertbis']='Studies in Vienna To';
$this->phrasen['incoming/eigeneuniversitaet']='Sending Institution Information';
@@ -34,10 +34,6 @@ $this->phrasen['incoming/motivationsschreiben']='Letter of motivation';
$this->phrasen['incoming/zeugnis']='Transcript of record';
$this->phrasen['incoming/lichtbild']='photo';
$this->phrasen['incoming/name']='Name';
$this->phrasen['incoming/registrationEmail']='This is an automatically generated email.<br><br>
Thank you, for your registration at the UAS Technikum Wien.<br><br>Your application was successfully registered in our system.<br><br><br>
With your user ID: <b>%s</b> you can now access our online application system for incoming students and fill in your data (<a href="'.APP_ROOT.'cis/public/incoming">application link</a>).<br><br><br>
Kind regards, <br><br>FH Technikum Wien International<br>Center for International Relations & Cross-Cultural Education<br>UAS Technikum Wien<br>Hoechstaedtplatz 5, 1200 Wien, AUSTRIA ';
$this->phrasen['incoming/weiter']='Next';
$this->phrasen['incoming/fehlerAdresse']='Error, creating address.';
$this->phrasen['incoming/fehlerKontakt']='Error, creating contact.';
@@ -58,7 +54,7 @@ $this->phrasen['incoming/nothesis']='no Thesis';
$this->phrasen['incoming/masterthesis']='Master Thesis';
$this->phrasen['incoming/bachelorthesis']='Bachelor Thesis';
$this->phrasen['incoming/researcharea']='Research Area';
$this->phrasen['incoming/wennVorhanden']='if applicable';
$this->phrasen['incoming/wennVorhanden']='if applicable';
$this->phrasen['incoming/studentenImWS']='Applicants for the winter semester choose semesters: 1,3,5';
$this->phrasen['incoming/studentenImSS']='Applicants for the summer semester choose semesters: 2,4,6';
$this->phrasen['incoming/filter']='Filter';
@@ -79,7 +75,7 @@ $this->phrasen['incoming/willkommenBeiOutgoingAnmeldung']='<p><b>Welcome to Outg
<p>You have the following possibilities for a study visit abroad: Our European partner universities as part of the ERASMUS and CEEPUS mobility programs, our non-European partner institutions, other universities (free mover) and Summer Schools.</p>
<p>You can study abroad and make use of a funding program for up to 12 months. At our partner universities you pay no tuition fees and the application process is supported by the Center for International Relations at the TW. A list of the partner institutions can be found on our homepage.</p>
<p>On the following pages you can select the mobility program and the partner institution as well as entering the period of time you are planning for your study visit abroad. After we approve your registration you can enter further details and download the form for a Learning Agreement (important for the accreditation of your study abroad).</p>
<p>Click on the button "Registration". Select the mobility program and the partner institution. Enter the data required and save your details. You will be informed via e-mail as to whether your selection has been approved. You can then discuss the application process with the Center for International Relations and enter further personal details.
<p>Click on the button "Registration". Select the mobility program and the partner institution. Enter the data required and save your details. You will be informed via e-mail as to whether your selection has been approved. You can then discuss the application process with the Center for International Relations and enter further personal details.
You can upload documents and prepare the Learning Agreement for the semester abroad. Your application documents will be forwarded to the partner institution you wish to apply for by the Center for International Relations,</p>';
$this->phrasen['incoming/programmAuswahl']='Program Selection';
$this->phrasen['incoming/auswahlUniversitaeten']='University Selection';
@@ -119,5 +115,10 @@ $this->phrasen['incoming/zurAnmeldung']='Registration';
$this->phrasen['incoming/geaendertesLA']='Changed Learning Agreement';
$this->phrasen['incoming/studienrichtungGastuniversitaet']= 'Program home university';
$this->phrasen['incoming/orgform']='Org. structure';
$this->phrasen['incoming/alleSprachen']='All languages';
$this->phrasen['incoming/alleSprachen']='All languages';
$this->phrasen['incoming/ausgewaehlteUniversitaeten']='Selected universities';
$this->phrasen['incoming/bereitsAusgewaehlt']='This universtity has already been choosed';
$this->phrasen['incoming/anfrageAbschicken']='Send request to CIR';
$this->phrasen['incoming/captcha']='Please enter the characters shown in the picture (spam protection).';
$this->phrasen['incoming/andereGrafik']='Reload picture';
?>
+1 -1
View File
@@ -31,7 +31,7 @@ $this->phrasen['profil/zustaendigeAssistenz']='Administrative Assistant';
$this->phrasen['profil/wendenSieSichAn']='Please contact the';
$this->phrasen['profil/solltenDatenNichtStimmen']='If your data is incorrect, please contact the responsible';
$this->phrasen['profil/buero']='Office';
$this->phrasen['profil/zeitsperrenVon']='Unavailabilities from';
$this->phrasen['profil/zeitsperrenVon']='Unavailabilities of';
$this->phrasen['profil/lvplanVon']='Schedule from';
$this->phrasen['profil/AccountInaktiv']='NOTICE: This account is no longer active';
+113
View File
@@ -0,0 +1,113 @@
<?php
// Pruefungsfenster
$this->phrasen['pruefung/titlePruefungsfenster'] = 'Prüfungsfenster anlegen';
$this->phrasen['pruefung/erfolgreichgespeichert'] = 'Datensatz erfolgreich gespeichert';
$this->phrasen['pruefung/fehler'] = 'Fehler: ';
$this->phrasen['pruefung/fehlerEndDatumInDerVergangenheit'] = 'Fehler: Enddatum liegt in der Vergangenheit.';
$this->phrasen['pruefung/fehlerEndDatumVorStartDatum'] = 'Fehler: Enddatum liegt nicht nach dem Startdatum.';
$this->phrasen['pruefung/fehlerDatumNichtKorrekt'] = 'Fehler: Datumseingabe nicht korrekt.';
$this->phrasen['pruefung/erfolgreichgeaendert'] = 'Datensatz erfolgreich geändert';
$this->phrasen['pruefung/keineBerechtigungZumAendernDesDatensatzes'] = 'Keine Berechtigung zum Ändern dieses Datensatzes.';
$this->phrasen['pruefung/keineBerechtigungZumAnzeigenDesDatensatzes'] = 'Keine Berechtigung zum Anzeigen dieses Datensatzes.';
$this->phrasen['pruefung/erfolgreichgeloescht'] = 'Datensatz erfolgreich gelöscht';
$this->phrasen['pruefung/pruefungsfensterKonnteNichtGeloeschtWerdenDaPruefungen'] = 'Prüfungsfenster konnte nicht gelöscht werden, da Prüfungen verknüpft sind.';
$this->phrasen['pruefung/keineBerechtigungZumLoeschenDesDatensatzes'] = 'Keine Berechtigung zum Löschen dieses Datensatzes.';
$this->phrasen['pruefung/pruefungsfensterVerwaltung'] = 'Prüfungsfenster-Verwaltung';
$this->phrasen['pruefung/neuesPruefungsfensterAnlegen'] = 'Neues Prüfungsfenster anlegen';
$this->phrasen['pruefung/start'] = 'Startdatum';
$this->phrasen['pruefung/ende'] = 'Enddatum';
$this->phrasen['pruefung/pruefungsfensterBearbeiten'] = 'Prüfungsfenster bearbeiten';
$this->phrasen['pruefung/keinePruefungsfensterGespeichert'] = 'Keine Prüfungsfenster gespeichert.';
// Termin festlegen
$this->phrasen['pruefung/titlePruefungstermin'] = 'Prüfungstermin festlegen';
$this->phrasen['pruefung/pruefungLektor'] = 'Lektor';
$this->phrasen['pruefung/pruefungenVerwalten'] = 'Prüfungen verwalten';
$this->phrasen['pruefung/pruefungTitel'] = 'Titel';
$this->phrasen['pruefung/pruefungsfenster'] = 'Prüfungsfenster';
$this->phrasen['pruefung/pruefungMethode'] = 'Methode';
$this->phrasen['pruefung/pruefungEinzelpruefung'] = 'Einzelprüfung';
$this->phrasen['pruefung/pruefungTyp'] = 'Prüfungstyp';
$this->phrasen['pruefung/pruefungIntervall'] = 'Prüfungsintervall';
$this->phrasen['pruefung/pruefungTermin'] = 'Termin';
$this->phrasen['pruefung/pruefungMinTeilnehmer'] = 'min. Teilnehmer';
$this->phrasen['pruefung/pruefungMaxTeilnehmer'] = 'max. Teilnehmer';
$this->phrasen['pruefung/pruefungSammelklausur'] = 'Sammelklausur';
$this->phrasen['pruefung/pruefungTerminHinzufuegen'] = 'Termin hinzufügen';
$this->phrasen['pruefung/pruefungPruefungenTitle'] = 'Prüfungen';
$this->phrasen['pruefung/pruefungMitarbeiter'] = 'Mitarbeiter';
$this->phrasen['pruefung/storniert'] = 'storniert';
// pruefung.js.php
$this->phrasen['pruefung/keinFensterVorhanden'] = 'Keine Prüfungsfenster vorhanden';
$this->phrasen['pruefung/keineDatenVorhanden'] = 'Keine Daten vorhanden.';
$this->phrasen['pruefung/anmeldefristAbgelaufen'] = 'Anmeldefrist abgelaufen';
$this->phrasen['pruefung/stornierenMoeglichBis'] = 'Stornieren möglich bis';
$this->phrasen['pruefung/anmeldenMoeglichBis'] = 'Anmeldung möglich bis';
$this->phrasen['pruefung/zurLvAnmeldung'] = 'zur LV-Anmeldung';
$this->phrasen['pruefung/zuerstPruefungAuswaehlen'] = 'Zuerst Prüfung auswählen.';
$this->phrasen['pruefung/bemerkungVonLektorHinzugefuegt'] = 'von Lektor hinzugefügt';
$this->phrasen['pruefung/bestaetigen'] = 'Bestätigen';
$this->phrasen['pruefung/anmerkungDesStudenten'] = 'Anmerkung des Studenten:</br>';
$this->phrasen['pruefung/bestaetigt'] = 'bestätigt';
$this->phrasen['pruefung/statusAenderungVon'] = 'Satusänderung von';
$this->phrasen['pruefung/reihungSpeichern'] = 'Reihung speichern';
$this->phrasen['pruefung/listeDrucken'] = 'Liste drucken';
$this->phrasen['pruefung/pruefungsraum'] = 'Prüfungsraum: ';
$this->phrasen['pruefung/pruefungsort'] = 'Prüfungsort ';
$this->phrasen['pruefung/imBuero'] = ' im Büro';
$this->phrasen['pruefung/raum'] = ' Raum';
$this->phrasen['pruefung/raumSpeichern'] = ' Raum speichern';
$this->phrasen['pruefung/reihunghErfolgreichGeaendert'] = 'Reihung erfolgreich geändert.';
$this->phrasen['pruefung/studiengangAuswaehlen'] = 'Studiengang auswählen';
$this->phrasen['pruefung/keinePruefungenVorhanden'] = 'Keine Prüfungen vorhanden.';
$this->phrasen['pruefung/kommentarZu'] = 'Kommentar zu ';
$this->phrasen['pruefung/kommentarSpeichern'] = 'Kommentar speichern';
$this->phrasen['pruefung/kommentarErfolgreichGespeichert'] = 'Kommentar erfolgreich gespeichert.';
$this->phrasen['pruefung/formulardatenNichtKorrekt'] = 'Formulardaten sind nicht korrekt.';
$this->phrasen['pruefung/pruefungErfolgreichGespeichert'] = 'Prüfung erfolgreich gespeichert.';
$this->phrasen['pruefung/lehrveranstaltungAuswaehlen'] = 'Lehrveranstaltung auswählen ...';
$this->phrasen['pruefung/keineLehrveranstaltungenVorhanden'] = 'Keine Lehrveranstaltungen vorhanden.';
$this->phrasen['pruefung/pruefungStornieren'] = 'Prüfung stornieren';
$this->phrasen['pruefung/lvErfolgreichEntfernt'] = 'Lehrveranstaltung erfolgreich entfernt';
$this->phrasen['pruefung/pruefungStorniert'] = 'Prüfung storniert';
$this->phrasen['pruefung/terminGeloescht'] = 'Termin gelöscht';
// pruefungsbewertung
$this->phrasen['pruefung/pruefungsbewertungTitle'] = 'Prüfungsbewertung';
$this->phrasen['pruefung/pruefungsbewertungAnmeldungen'] = 'Anmeldungen';
// pruefungsanmeldung
$this->phrasen['pruefung/anmeldungFuer'] = 'Prüfungsanmeldung für';
$this->phrasen['pruefung/filter'] = 'Filter';
$this->phrasen['pruefung/details'] = 'Details';
$this->phrasen['pruefung/lvDetails'] = 'LV-Details';
$this->phrasen['pruefung/pruefungsDetails'] = 'Prüfungsdetails';
$this->phrasen['pruefung/typ'] = 'Typ';
$this->phrasen['pruefung/intervall'] = 'Intervall';
$this->phrasen['pruefung/besuchteLehrveranstaltungen'] = 'Besuchte Lehrveranstaltungen';
$this->phrasen['pruefung/freiePlaetze'] = 'freie Plätze';
$this->phrasen['pruefung/lvVonStudiengang'] = 'Lehrveranstaltungen von Studiengang';
$this->phrasen['pruefung/lvAlle'] = 'Alle Lehrveranstaltungen';
$this->phrasen['pruefung/anmeldungSpeichern'] = 'Anmeldung speichern';
$this->phrasen['pruefung/studienverpflichtung'] = 'Studienverpflichtung';
// liste
$this->phrasen['pruefung/anmeldungsliste'] = 'Anmeldungsliste';
$this->phrasen['pruefung/fehlenderParam_lvid'] = 'Fehlender Parameter lehrveranstaltung_id';
$this->phrasen['pruefung/fehlenderParam_terminid'] = 'Fehlender Parameter termin_id';
$this->phrasen['pruefung/fehlenderParam_studiensemester'] = 'Fehlender Parameter studiensemester';
$this->phrasen['pruefung/pruefer'] = 'Prüfer';
$this->phrasen['pruefung/keineBestaetigtenAnmeldungenVorhanden'] = 'Keine bestätigten Anmeldungen vorhanden.';
$this->phrasen['pruefung/keineLvAngegeben'] = 'Keine Lehrverantaltung angegeben.';
$this->phrasen['pruefung/kollisionMitAnderemTermin'] = 'Kollision mit anderem Termin.';
$this->phrasen['pruefung/terminNichtInDerVergangenheit'] = 'Prüfungstermin liegt nicht in der Vergangenheit.';
$this->phrasen['pruefung/keineLehreinheitenVorhanden'] = 'Keine Lehreinheiten vorhanden.';
$this->phrasen['pruefung/keineAnmeldungenVorhanden'] = 'Keine Anmeldungen vorhanden.';
// anmeldungen Verwalten
$this->phrasen['pruefung/anmeldungenVerwaltenTitle'] = 'Prüfungsanmeldung Verwaltung';
$this->phrasen['pruefung/anmeldungenVerwalten'] = 'Anmeldungen Verwalten';
?>
+2
View File
@@ -8,6 +8,7 @@ $this->phrasen['tools/studienbeitragFuerSSNochNichtBezahlt']='tuition fee for se
$this->phrasen['tools/studienerfolgsbestaetigung']='Student progress report';
$this->phrasen['tools/studiensemesterAuswaehlen']='Please select the corresponding semester';
$this->phrasen['tools/vorlageWohnsitzfinanzamt']='for submission to local tax office';
$this->phrasen['tools/studienbuchblatt']='Studienbuchblatt'; //Noch zu übersetzen
//Leistungsbeurteilung
$this->phrasen['tools/leistungsbeurteilung']='Performance Assessment ';
@@ -16,6 +17,7 @@ $this->phrasen['tools/mussAlsStudentEingeloggtSein']='You must be logged in as a
$this->phrasen['tools/nochKeineBeurteilungEingetragen']='No grade has been entered yet';
$this->phrasen['tools/fehlerBeimAuslesenDerNoten']='Error reading the grades.';
$this->phrasen['tools/benotungsdatumDerZeugnisnote']='Date of grading';
$this->phrasen['tools/hinweistextMarkierung']='The marking indicates those entries where the grade for the course is different from the grade on the report card.<b>The grade on the report card is the valid one.</b> <br>Should these details not be correct please contact the Administrative Assistant responsible.';
//Zahlungen
$this->phrasen['tools/zahlungen']='Payments';
+71
View File
@@ -0,0 +1,71 @@
<?php
$this->phrasen['abgabetool/abgabeLektorenbereich']='Consegna portale lettori';
$this->phrasen['abgabetool/abgabeStudentenbereich']='consegna portale studente';
$this->phrasen['abgabetool/abgabetermine']='scadenze consegna';
$this->phrasen['abgabetool/abgabetool']='Strumenti di consegna';
$this->phrasen['abgabetool/abgabetyp']='tipologia consegna';
$this->phrasen['abgabetool/abgabeZusatzdaten']='consegna dati integrativi';
$this->phrasen['abgabetool/abgegebenAm']='consegnato il';
$this->phrasen['abgabetool/abgegebeneDatei']='file consegnato';
$this->phrasen['abgabetool/abstract']='abstract';
$this->phrasen['abgabetool/abstractEng']='abstract in inglese';
$this->phrasen['abgabetool/alleArbeitenAnzeigen']='mostra tutti gli elaborati seguiti';
$this->phrasen['abgabetool/benoten']='valutazione';
$this->phrasen['abgabetool/beschreibungAbgabe']='breve descrizione consegna';
$this->phrasen['abgabetool/betreuer']='Tutor';
$this->phrasen['abgabetool/betreuerart']='Tipologia di Tutor';
$this->phrasen['abgabetool/dateiupload']='Uplooad file';
$this->phrasen['abgabetool/dateiZuGross']='File superiore a 15 MB! ';
$this->phrasen['abgabetool/dateneingabeUnvollstaendig']='I dati immessi sono incompleti';
$this->phrasen['abgabetool/datum']='data';
$this->phrasen['abgabetool/details']='dettagli';
$this->phrasen['abgabetool/deutscheSchlagwoerter']='parole chiave tedesche';
$this->phrasen['abgabetool/downloadProjektarbeit']='scaricato documento';
$this->phrasen['abgabetool/eidesstattlicheErklaerung']='Dichiaro sull\'onore di aver redatto autonomamente il presente elaborato ';
$this->phrasen['abgabetool/eingabeTerminPersonen']='inserisci scadenza per più persone';
$this->phrasen['abgabetool/emailAnBetreuer']='scrivi email a relatore';
$this->phrasen['abgabetool/englischeSchlagwoerter']='parole chiave inglesi';
$this->phrasen['abgabetool/erklaerungNichtAkzeptiert']='dichiarazione non accettata';
$this->phrasen['abgabetool/fehlerBetreuerNichtGefundenKeinMail']='Impossibile trovare il relatore. Nessuna email spedita';
$this->phrasen['abgabetool/fehlerMail']='errore di spedizione della email!';
$this->phrasen['abgabetool/fehlerMailBegutachter']='Errore di trasmissione della mail al (primo) esaminatore';
$this->phrasen['abgabetool/fehlerMailStudent']='errore di spedizione della mai agli studenti!';
$this->phrasen['abgabetool/fehlerTerminEintragen']='scadenza non è stata registrata!';
$this->phrasen['abgabetool/fehlerTerminLoeschen']='Errore in sede di cancellazione della scadenza!';
$this->phrasen['abgabetool/fix']='fisso';
$this->phrasen['abgabetool/fixerAbgabetermin']='scadenza consegna inderogabile';
$this->phrasen['abgabetool/gelesenUndAkzeptiert']='Letto e accettato';
$this->phrasen['abgabetool/keineBerechtigungStudentenansicht']='Errore di autorizzazione per accedere al portale studente';
$this->phrasen['abgabetool/keineTermineVorhanden']='nessuna scadenza attuale';
$this->phrasen['abgabetool/keinPDF']='Upload non è un file PDF! Ripetere l\'upload';
$this->phrasen['abgabetool/kontrolleZusatzdaten']='controllo dati integrativi';
$this->phrasen['abgabetool/kontrollierteSchlagwoerter']='parole chiave controllate / voci??';
$this->phrasen['abgabetool/mailVerschicktAn']='l\'email è atata spedita a ';
$this->phrasen['abgabetool/maxZeichen']='(massimo 5000 caratteri)';
$this->phrasen['abgabetool/neuenTerminSpeichern']='salva nuova scadenza';
$this->phrasen['abgabetool/nurPDF']='solo PDF max 15 MB';
$this->phrasen['abgabetool/pflichtfeld']='campo obbligatorio';
$this->phrasen['abgabetool/plagiatspruefung']='vai alla verifica antiplagio';
$this->phrasen['abgabetool/projektabgabeUebersicht']='consegna progetto - mostra tutti';
$this->phrasen['abgabetool/seitenanzahl']='numero pagine';
$this->phrasen['abgabetool/spracheDerArbeit']='lingua dell\'elaborato';
$this->phrasen['abgabetool/student']='Studente';
$this->phrasen['abgabetool/studentenansicht']='portale studenti';
$this->phrasen['abgabetool/TeminVorhanden']='questa scadenza è già stata inserita';
$this->phrasen['abgabetool/termin']='scadenza ';
$this->phrasen['abgabetool/terminaenderungSpeichern']='salva modifica scadenza';
$this->phrasen['abgabetool/terminLoeschen']='cancella scadenza';
$this->phrasen['abgabetool/terminNichtGefunden']='scadenza non trovata';
$this->phrasen['abgabetool/terminserieAnlegen']='crea serie scadenze';
$this->phrasen['abgabetool/terminserieAnlegenHelp']='crea scadenza per più persone';
$this->phrasen['abgabetool/terminuebersicht']='panoramica scadenze';
$this->phrasen['abgabetool/terminuebersichtAnzeigen']='mostra tutti le scadenze';
$this->phrasen['abgabetool/terminVorbei']='scadenza prescritta';
$this->phrasen['abgabetool/terminVorhanden']='questa scadenza è già stata inserita';
$this->phrasen['abgabetool/titel']='titolo';
$this->phrasen['abgabetool/typ']='tipo';
$this->phrasen['abgabetool/ueberschrift']='tesi bachelor / master';
$this->phrasen['abgabetool/upload']='Upload';
$this->phrasen['abgabetool/variablerAbgabetermin']='scadenza consegna variabile';
$this->phrasen['abgabetool/zweitbetreuerBei']='secondo relatore presso';
?>
+21
View File
@@ -0,0 +1,21 @@
<?php
$this->phrasen['anwesenheitsliste/angerechnet']='riconosciuto';
$this->phrasen['anwesenheitsliste/anleitungImportFunktion']='copiare i presenti elementi nella memoria temporanea per compilare la colonna import del modulo generale voti';
$this->phrasen['anwesenheitsliste/anwesenheit']='presenza';
$this->phrasen['anwesenheitsliste/anwesenheitslisten']='elenco presenti';
$this->phrasen['anwesenheitsliste/anwesenheitslistenMitBildern']='elenchi presenti con foto';
$this->phrasen['anwesenheitsliste/erstellenDerListeKlicken']='Per creare la lista cliccare sul gruppo desiderato!';
$this->phrasen['anwesenheitsliste/fehlerhafteParameteruebergabe']='errore di trasferimento dei parametri. Si prega di riprovare';
$this->phrasen['anwesenheitsliste/fehlstunden']='ore di assenza';
$this->phrasen['anwesenheitsliste/gesamtliste']='elenco generale';
$this->phrasen['anwesenheitsliste/keineEintraegeGefunden']='impossibile trovare registrazioni corrispondenti';
$this->phrasen['anwesenheitsliste/keineLVsGefunden']='impossibile trovare lezioni ';
$this->phrasen['anwesenheitsliste/keineStudentenVorhanden']='momentaneamentenel corso di studi / semestre non sono registrati studenti';
$this->phrasen['anwesenheitsliste/keineStundenvorhanden']='momentaneamente nessuna ora registrata ';
$this->phrasen['anwesenheitsliste/leAbgeschlossen']='LE conclusa';
$this->phrasen['anwesenheitsliste/notenliste']='elenco voti';
$this->phrasen['anwesenheitsliste/notenlisten']='elenchi voti';
$this->phrasen['anwesenheitsliste/studiensemesterIstUngueltig']='semestre di studio non valido';
$this->phrasen['anwesenheitsliste/waehleLV']='scegliere una lezione';
?>

Some files were not shown because too many files have changed in this diff Show More