From 202fcec66de101dafd0e53641d2bb08386f85cfd Mon Sep 17 00:00:00 2001 From: kindlm Date: Fri, 29 Apr 2016 17:33:51 +0200 Subject: [PATCH 001/114] Bugfixes for Incoming-Tool - Upload Picture fixed - Multilanguage for document-upload - Removed Picture from document-upload - All courses are shown. Even those without vacancies - Phrase for no vacancies --- cis/public/bildupload.php | 2 +- cis/public/incoming/akteupload.php | 4 ++-- cis/public/incoming/incoming.php | 30 ++++++++++++++++++++---------- locale/de-AT/incoming.php | 3 ++- locale/en-US/incoming.php | 3 ++- 5 files changed, 27 insertions(+), 15 deletions(-) diff --git a/cis/public/bildupload.php b/cis/public/bildupload.php index bd3520534..80009f94e 100644 --- a/cis/public/bildupload.php +++ b/cis/public/bildupload.php @@ -90,7 +90,7 @@ $person = new person(); if(isset($_SESSION['prestudent/user'])) $person_id=$person->checkZugangscode($_SESSION['prestudent/user']); if(isset($_SESSION['incoming/user'])) - $person_id=$person->checkZugangscode($_SESSION['prestudent/user']); + $person_id=$person->checkZugangscode($_SESSION['incoming/user']); if($person_id!=$_GET['person_id']) die('Sie haben keine Berechtigung für diese Seite'); diff --git a/cis/public/incoming/akteupload.php b/cis/public/incoming/akteupload.php index 6d0eb0b54..b8f784946 100644 --- a/cis/public/incoming/akteupload.php +++ b/cis/public/incoming/akteupload.php @@ -165,12 +165,12 @@ if(isset($_GET['person_id'])) diff --git a/cis/public/incoming/incoming.php b/cis/public/incoming/incoming.php index 61ac6a8cc..8f85e5d9a 100644 --- a/cis/public/incoming/incoming.php +++ b/cis/public/incoming/incoming.php @@ -642,14 +642,22 @@ else if($method=="lehrveranstaltungen") AND (bis is null OR bis >= (DATE '$stsem->ende')) AND aktiv = true - )a ) as anzahl + )a ) as anzahl FROM - lehre.tbl_lehrveranstaltung JOIN public.tbl_studiengang USING(studiengang_kz) + lehre.tbl_lehrveranstaltung + JOIN + public.tbl_studiengang USING(studiengang_kz) WHERE - tbl_lehrveranstaltung.incoming>0 AND - tbl_lehrveranstaltung.aktiv AND - tbl_lehrveranstaltung.lehre - AND ((tbl_lehrveranstaltung.studiengang_kz>0 AND tbl_lehrveranstaltung.studiengang_kz<10000) OR tbl_lehrveranstaltung.studiengang_kz=10006)"; + tbl_lehrveranstaltung.incoming>0 AND + tbl_lehrveranstaltung.aktiv AND + tbl_lehrveranstaltung.lehre AND + tbl_lehrveranstaltung.lehrveranstaltung_id IN ( + SELECT lehrveranstaltung_id FROM lehre.tbl_studienplan_lehrveranstaltung + JOIN lehre.tbl_studienplan USING (studienplan_id) + JOIN lehre.tbl_studienordnung USING (studienordnung_id) + WHERE tbl_studienordnung.status_kurzbz='approved' + AND tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_studienplan_lehrveranstaltung.lehrveranstaltung_id) AND + ((tbl_lehrveranstaltung.studiengang_kz>0 AND tbl_lehrveranstaltung.studiengang_kz<10000) OR tbl_lehrveranstaltung.studiengang_kz=10006)"; if (isset($_GET['studiengang']) && $_GET['studiengang'] !='') $qry .= "AND tbl_lehrveranstaltung.studiengang_kz=".$_GET['studiengang']; @@ -679,8 +687,8 @@ else if($method=="lehrveranstaltungen") while($row = $db->db_fetch_object($result)) { $freieplaetze = $row->incoming - $row->anzahl; - if($freieplaetze>0) - { + //if($freieplaetze>0) + //{ $studiengang = new studiengang(); $studiengang->load($row->studiengang_kz); $studiengang_language = ($sprache == 'German') ? $studiengang->bezeichnung : $studiengang->english; @@ -691,8 +699,10 @@ else if($method=="lehrveranstaltungen") $typ = 'MA'; echo ''; echo ''.$row->lehrveranstaltung_id.''; - if(!$preincoming->checkLehrveranstaltung($preincoming->preincoming_id, $row->lehrveranstaltung_id)) + if(!$preincoming->checkLehrveranstaltung($preincoming->preincoming_id, $row->lehrveranstaltung_id) && $freieplaetze>0) echo ''.$p->t('global/anmelden').''; + elseif (!$preincoming->checkLehrveranstaltung($preincoming->preincoming_id, $row->lehrveranstaltung_id) && $freieplaetze==0) + echo ''.$p->t('incoming/noVacancies').''; else echo ''.$p->t('global/angemeldet').''; echo '',$studiengang_language,''; @@ -709,7 +719,7 @@ else if($method=="lehrveranstaltungen") '; echo '',($freieplaetze<$row->incoming?''.$freieplaetze.'/'.$row->incoming.'':$freieplaetze.'/'.$row->incoming),''; echo ''; - } + //} } } echo ''; diff --git a/locale/de-AT/incoming.php b/locale/de-AT/incoming.php index 9e85189c3..cf59da9bb 100755 --- a/locale/de-AT/incoming.php +++ b/locale/de-AT/incoming.php @@ -119,5 +119,6 @@ $this->phrasen['incoming/ausgewaehlteUniversitaeten']='Ausgewählte Universität $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'; +$this->phrasen['incoming/andereGrafik']='Andere Grafik'; +$this->phrasen['incoming/noVacancies']='LV voll belegt'; ?> \ No newline at end of file diff --git a/locale/en-US/incoming.php b/locale/en-US/incoming.php index 8d2437059..a99e43e0d 100755 --- a/locale/en-US/incoming.php +++ b/locale/en-US/incoming.php @@ -120,5 +120,6 @@ $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'; +$this->phrasen['incoming/andereGrafik']='Reload picture'; +$this->phrasen['incoming/noVacancies']='No vacancies'; ?> \ No newline at end of file From 9d4133a6ff67a96636728a4d2435069725a5c0b7 Mon Sep 17 00:00:00 2001 From: kindlm Date: Fri, 29 Apr 2016 17:35:15 +0200 Subject: [PATCH 002/114] Multilanguage-Atrributes for function "getAllDokumente" --- include/dokument.class.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/include/dokument.class.php b/include/dokument.class.php index 1189cb06e..db179180b 100644 --- a/include/dokument.class.php +++ b/include/dokument.class.php @@ -455,7 +455,10 @@ class dokument extends basis_db */ public function getAllDokumente($not_in='') { - $qry = "SELECT * FROM public.tbl_dokument "; + $sprache = new sprache(); + $bezeichnung_mehrsprachig = $sprache->getSprachQuery('bezeichnung_mehrsprachig'); + $dokumentbeschreibung_mehrsprachig = $sprache->getSprachQuery('dokumentbeschreibung_mehrsprachig'); + $qry = "SELECT dokument_kurzbz, bezeichnung, $bezeichnung_mehrsprachig, $dokumentbeschreibung_mehrsprachig FROM public.tbl_dokument "; if($not_in!='') { @@ -471,6 +474,8 @@ class dokument extends basis_db $dok->dokument_kurzbz = $row->dokument_kurzbz; $dok->bezeichnung = $row->bezeichnung; + $dok->bezeichnung_mehrsprachig = $sprache->parseSprachResult('bezeichnung_mehrsprachig', $row); + $dok->dokumentbeschreibung_mehrsprachig = $sprache->parseSprachResult('dokumentbeschreibung_mehrsprachig', $row); $this->result[] = $dok; } From c0b7f3ba88fc872365ab691db724f0950a3df7ea Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Fri, 29 Apr 2016 18:00:50 +0200 Subject: [PATCH 003/114] ital phrases --- cis/private/lehre/lesson.php | 4 +-- locale/de-AT/semesterplan.php | 2 ++ locale/en-US/semesterplan.php | 4 ++- locale/it-IT/lehre.php | 57 +++++++++++++++++------------------ locale/it-IT/semesterplan.php | 29 +++++++++--------- 5 files changed, 50 insertions(+), 46 deletions(-) mode change 100644 => 100755 cis/private/lehre/lesson.php mode change 100644 => 100755 locale/de-AT/semesterplan.php mode change 100644 => 100755 locale/en-US/semesterplan.php diff --git a/cis/private/lehre/lesson.php b/cis/private/lehre/lesson.php old mode 100644 new mode 100755 index 7bbf7123a..b499fef1a --- a/cis/private/lehre/lesson.php +++ b/cis/private/lehre/lesson.php @@ -190,7 +190,7 @@ $( document ).ready(function() diff --git a/locale/de-AT/semesterplan.php b/locale/de-AT/semesterplan.php old mode 100644 new mode 100755 index 97f9b2b1c..514ca31bb --- a/locale/de-AT/semesterplan.php +++ b/locale/de-AT/semesterplan.php @@ -16,4 +16,6 @@ $this->phrasen['semesterplan/speichernSieDasDokument']='Speichern Sie das Dokume $this->phrasen['semesterplan/inMSWord']='(In MS Word: "Datei" -> "Speichern unter" -> Dateiname: index.html, Dateityp: Webseite )'; $this->phrasen['semesterplan/ladenSieDieDateiHoch']='Laden Sie diese Datei nun über den "Upload"-Knopf hoch.'; $this->phrasen['semesterplan/fertig']='Fertig'; +$this->phrasen['semesterplan/ErstellungDesSemesterplans']='Erstellung des Semesterplanes'; +$this->phrasen['semesterplan/schliessen']='schließen'; ?> diff --git a/locale/en-US/semesterplan.php b/locale/en-US/semesterplan.php old mode 100644 new mode 100755 index 1942ec1c0..d7b1500ad --- a/locale/en-US/semesterplan.php +++ b/locale/en-US/semesterplan.php @@ -1,4 +1,4 @@ -phrasen['semesterplan/fehlerBeiDerParameteruebergabe']='Error in the parameter transfer'; $this->phrasen['semesterplan/fehlerBeimLadenDerLv']='Error loading the course'; $this->phrasen['semesterplan/fehlerBeimLadenDesStudienganges']='Error loading the degree program'; @@ -16,4 +16,6 @@ $this->phrasen['semesterplan/speichernSieDasDokument']='Save the document as a $this->phrasen['semesterplan/inMSWord']='(In MS Word: “File” -> “Save As” -> File name: index.html, Save as type: Web Page)'; $this->phrasen['semesterplan/ladenSieDieDateiHoch']='Now upload this file with the “Upload” button.'; $this->phrasen['semesterplan/fertig']='Finished'; +$this->phrasen['semesterplan/ErstellungDesSemesterplans']='Setting up the Semesterplan'; +$this->phrasen['semesterplan/schliessen']='close'; ?> diff --git a/locale/it-IT/lehre.php b/locale/it-IT/lehre.php index 716afbb27..d98a14e83 100755 --- a/locale/it-IT/lehre.php +++ b/locale/it-IT/lehre.php @@ -1,37 +1,36 @@ phrasen['lehre/abmelden']='esci'; $this->phrasen['lehre/abmeldung']='uscita'; -$this->phrasen['lehre/AbmeldungAusGruppeNichtMoeglich']=''; -$this->phrasen['lehre/AbmeldungErfolgreich']=''; -$this->phrasen['lehre/anwesenheitsUndNotenlisten']=''; -$this->phrasen['lehre/benotungstoolHandbuch']=''; -$this->phrasen['lehre/confirmAbmeldung']=''; -$this->phrasen['lehre/download']=''; +$this->phrasen['lehre/AbmeldungAusGruppeNichtMoeglich']='Sie können sich nicht von dieser Lehrveranstaltung abmelden'; +$this->phrasen['lehre/AbmeldungErfolgreich']='Sie wurden erfolgreich von der Lehrveranstaltung abgemeldet'; +$this->phrasen['lehre/anwesenheitsUndNotenlisten']='Elenco frequenze e votazioni'; +$this->phrasen['lehre/benotungstoolHandbuch']='Handbuch'; +$this->phrasen['lehre/confirmAbmeldung']='Wollen Sie sich wirklich von der Lehrveranstaltung "%s" abmelden?'; +$this->phrasen['lehre/download']='Download'; $this->phrasen['lehre/feedback']='feedback'; -$this->phrasen['lehre/gesamtnote']=''; -$this->phrasen['lehre/keineLektorenZugeordnet']=''; -$this->phrasen['lehre/keinMailverteiler']=''; +$this->phrasen['lehre/gesamtnote']='Voto finale'; +$this->phrasen['lehre/keineLektorenZugeordnet']='Derzeit sind keine Lektoren für dieses Fach zugeteilt'; +$this->phrasen['lehre/keinMailverteiler']='Für die Gruppe(n) %s existiert kein Verteiler! Die Studierenden in diesen Gruppen bekommen kein Mail.'; $this->phrasen['lehre/kreuzerltool']='strumenti per esercitazioni
(tool con caselle da barrare)'; -$this->phrasen['lehre/kreuzerltoolMitMoodleInfo']=''; -$this->phrasen['lehre/Lehrbeauftrager']=''; -$this->phrasen['lehre/lehrveranstaltungsinformation']=''; -$this->phrasen['lehre/leistungsuebersicht']=''; -$this->phrasen['lehre/lvInfoBearbeiten']=''; -$this->phrasen['lehre/mail']=''; -$this->phrasen['lehre/moodle']=''; -$this->phrasen['lehre/moodleHandbuch']=''; -$this->phrasen['lehre/moodleMitKreuzerltoolInfo']=''; -$this->phrasen['lehre/moodleWartung']=''; -$this->phrasen['lehre/newsgroups']=''; -$this->phrasen['lehre/nichtzugeteilt']=''; -$this->phrasen['lehre/pinboard']=''; -$this->phrasen['lehre/semesterplan']=''; -$this->phrasen['lehre/semesterplanUpload']=''; -$this->phrasen['lehre/semesterplanVorlage']=''; -$this->phrasen['lehre/semesterplanVorlageHilfe']=''; -$this->phrasen['lehre/studentenAbgabe']=''; -$this->phrasen['lehre/upload']=''; -$this->phrasen['lehre/ziparchiv']=''; +$this->phrasen['lehre/moodleMitKreuzerltoolInfo']='Moodle kann nicht gleichzeitig mit dem Übungstool verwendet werden.\nWenn Sie Moodle verwenden wollen, müssen Sie die Übungen im Übungstool entfernen'; +$this->phrasen['lehre/lehrbeauftragter']='Lehrbeauftragte(r)'; +$this->phrasen['lehre/lehrveranstaltungsinformation']='Lehrveranstaltungsinformation'; +$this->phrasen['lehre/leistungsuebersicht']='Panoramica'; +$this->phrasen['lehre/lvInfoBearbeiten']='Bearbeiten'; +$this->phrasen['lehre/mail']='E-Mail an Studierende'; +$this->phrasen['lehre/moodle']='Moodle'; +$this->phrasen['lehre/moodleHandbuch']='Handbuch'; +$this->phrasen['lehre/moodleWartung']='Wartung'; +$this->phrasen['lehre/newsgroups']='Newsgroups'; +$this->phrasen['lehre/nichtzugeteilt']='Sie sind nicht zu dieser Lehrveranstaltung zugeteilt'; +$this->phrasen['lehre/pinboard']='Bacheca'; +$this->phrasen['lehre/semesterplan']='Calendario del corso'; +$this->phrasen['lehre/semesterplanUpload']='Upload'; +$this->phrasen['lehre/semesterplanVorlage']='Schema'; +$this->phrasen['lehre/semesterplanVorlageHilfe']='Aiuto'; +$this->phrasen['lehre/studentenAbgabe']='Upload degli studenti'; +$this->phrasen['lehre/upload']='Upload'; +$this->phrasen['lehre/ziparchiv']='Scarica zip'; $this->phrasen['lehre/ziparchivTitle']='scarica tutti i file in directory download in formato zip'; ?> diff --git a/locale/it-IT/semesterplan.php b/locale/it-IT/semesterplan.php index fb7c9f7fd..1d4006295 100755 --- a/locale/it-IT/semesterplan.php +++ b/locale/it-IT/semesterplan.php @@ -1,20 +1,21 @@ phrasen['semesterplan/bitteZuerstDateiAuswaehlen']=''; -$this->phrasen['semesterplan/dateiKonnteNichtGefundenWerden']=''; -$this->phrasen['semesterplan/dateinameNurBuchstaben']=''; -$this->phrasen['semesterplan/dateitypIstNichtErlaubt']=''; -$this->phrasen['semesterplan/erstellenSieIhrenSemesterplan']=''; +$this->phrasen['semesterplan/bitteZuerstDateiAuswaehlen']='Bitte zuerst eine Datei auswählen'; +$this->phrasen['semesterplan/dateiKonnteNichtGefundenWerden']='Die Datei %s%s konnte nicht gefunden werden'; +$this->phrasen['semesterplan/dateinameNurBuchstaben']='Der Dateiname darf nur Buchstaben und Zahlen enthalten'; +$this->phrasen['semesterplan/dateitypIstNichtErlaubt']='Dieser Dateityp ist nicht erlaubt'; +$this->phrasen['semesterplan/erstellenSieIhrenSemesterplan']='Compilare il calendario.'; $this->phrasen['semesterplan/fehlerBeiDerParameteruebergabe']='errore di trasmissione dei parametri'; $this->phrasen['semesterplan/fehlerBeimLadenDerLv']='errore di caricamento della LV'; $this->phrasen['semesterplan/fehlerBeimLadenDesStudienganges']='errore di caricamento del corso di studi'; $this->phrasen['semesterplan/fehlerBeimUpload']='errore in sede di upload! Si prega di riprovare '; -$this->phrasen['semesterplan/fertig']='completo'; -$this->phrasen['semesterplan/fileErfolgreichHochgeladen']=''; -$this->phrasen['semesterplan/inMSWord']=''; -$this->phrasen['semesterplan/ladenSieDieDateiHoch']=''; -$this->phrasen['semesterplan/oeffnenSieDieGespeicherteDatei']=''; -$this->phrasen['semesterplan/ordnerinhalt']=''; -$this->phrasen['semesterplan/speichernSieDasDokument']=''; -$this->phrasen['semesterplan/speichernSieDieVorlage']=''; - +$this->phrasen['semesterplan/fertig']='Il calendario è ora pubblicato.'; +$this->phrasen['semesterplan/fileErfolgreichHochgeladen']='Das File wurde erfolgreich hochgeladen'; +$this->phrasen['semesterplan/inMSWord']='Su Word basta anadre su "File">>"Salva come pagina web".'; +$this->phrasen['semesterplan/ladenSieDieDateiHoch']='Caricare il file andando su Upload.'; +$this->phrasen['semesterplan/oeffnenSieDieGespeicherteDatei']='Aprire il file doc con un programma di elaborazione testo (es: MS Word, OpenOffice) o il file html con un editor dedicato.'; +$this->phrasen['semesterplan/ordnerinhalt']='Ordnerinhalt'; +$this->phrasen['semesterplan/speichernSieDasDokument']='Salvare il file come pagina web (in formato html) con il nome "index.html".'; +$this->phrasen['semesterplan/speichernSieDieVorlage']='Salvare lo schema (in formato doc o html) sul proprio computer.'; +$this->phrasen['semesterplan/ErstellungDesSemesterplans']='Pubblicazione del calendario del corso'; +$this->phrasen['semesterplan/schliessen']='chiudi'; ?> From 44b4571aaff83f7834155155c938b61b19ce6eb9 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Sun, 1 May 2016 15:31:23 +0200 Subject: [PATCH 004/114] =?UTF-8?q?Pr=C3=BCfungsverwaltung?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cis/private/lehre/pruefung/pruefung.js.php | 13 ++++++++++++- .../lehre/pruefung/pruefungstermin_festlegen.php | 2 +- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/cis/private/lehre/pruefung/pruefung.js.php b/cis/private/lehre/pruefung/pruefung.js.php index 08d718d9c..2a2d61834 100755 --- a/cis/private/lehre/pruefung/pruefung.js.php +++ b/cis/private/lehre/pruefung/pruefung.js.php @@ -30,6 +30,16 @@ $sprache = getSprache(); $lang = new sprache(); $lang->load($sprache); $p = new phrasen($sprache); + +if (defined('CIS_PRUEFUNGSANMELDUNG_FRIST')) +{ + $anmeldefrist = CIS_PRUEFUNGSANMELDUNG_FRIST; +} +else +{ + $anmeldefrist = 3; +} + ?> /* Copyright (C) 2013 fhcomplete.org @@ -336,7 +346,7 @@ function writePruefungsTable(e, data, anmeldung) var frist = termin; termin = termin.getDate()+"."+(termin.getMonth()+1)+"."+termin.getFullYear(); frist = frist.getTime(); - frist = frist - (3*24*60*60*1000); + frist = frist - (*24*60*60*1000); var fristDate = new Date(frist); frist = fristDate.getDate()+"."+(fristDate.getMonth()+1)+"."+fristDate.getFullYear(); @@ -1309,6 +1319,7 @@ function unmarkMissingFormEntry() function loadLehrveranstaltungen() { var studiensemester_kurzbz = $("#studiensemester").val(); + //alert(studiensemester_kurzbz); var mitarbeiter_uid = $("#mitarbeiter_uid").val(); $.ajax({ dataType: 'json', diff --git a/cis/private/lehre/pruefung/pruefungstermin_festlegen.php b/cis/private/lehre/pruefung/pruefungstermin_festlegen.php index 909ea18bd..31428cdaf 100755 --- a/cis/private/lehre/pruefung/pruefungstermin_festlegen.php +++ b/cis/private/lehre/pruefung/pruefungstermin_festlegen.php @@ -195,7 +195,7 @@ if(empty($lehrveranstaltung->lehrveranstaltungen) && !$rechte->isBerechtigt('leh From 75c8d82b7334fec9fe85642d698060ba75eb9a3b Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Sun, 1 May 2016 15:51:46 +0200 Subject: [PATCH 005/114] Ital Phrase --- cis/private/lehre/pruefung/pruefung.js.php | 2 +- locale/de-AT/pruefung.php | 227 +++++++++++---------- locale/en-US/pruefung.php | 227 +++++++++++---------- locale/it-IT/pruefung.php | 223 ++++++++++---------- 4 files changed, 341 insertions(+), 338 deletions(-) diff --git a/cis/private/lehre/pruefung/pruefung.js.php b/cis/private/lehre/pruefung/pruefung.js.php index 2a2d61834..2372c6128 100755 --- a/cis/private/lehre/pruefung/pruefung.js.php +++ b/cis/private/lehre/pruefung/pruefung.js.php @@ -355,7 +355,7 @@ function writePruefungsTable(e, data, anmeldung) if(!storno) button = "

t('pruefung/anmeldefristAbgelaufen'); ?>
"; else - button = "

Storno nicht mehr möglich.
"; + button = "

t('pruefung/stornoNichtMehrMoeglich'); ?>
"; } else if(anmeldung || e.lehrveranstaltung[0].angemeldet) { diff --git a/locale/de-AT/pruefung.php b/locale/de-AT/pruefung.php index c76ad5096..c330362dc 100755 --- a/locale/de-AT/pruefung.php +++ b/locale/de-AT/pruefung.php @@ -1,113 +1,114 @@ -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:
'; -$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'; - - - - -?> +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/stornoNichtMehrMoeglich'] = 'Storno nicht mehr möglich.'; +$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:
'; +$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'; + + + + +?> diff --git a/locale/en-US/pruefung.php b/locale/en-US/pruefung.php index c76ad5096..c330362dc 100755 --- a/locale/en-US/pruefung.php +++ b/locale/en-US/pruefung.php @@ -1,113 +1,114 @@ -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:
'; -$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'; - - - - -?> +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/stornoNichtMehrMoeglich'] = 'Storno nicht mehr möglich.'; +$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:
'; +$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'; + + + + +?> diff --git a/locale/it-IT/pruefung.php b/locale/it-IT/pruefung.php index 79495aa13..0990ebacd 100755 --- a/locale/it-IT/pruefung.php +++ b/locale/it-IT/pruefung.php @@ -1,111 +1,112 @@ -phrasen['pruefung/titlePruefungsfenster'] = 'Inserire sessione'; -$this->phrasen['pruefung/erfolgreichgespeichert'] = 'Salvataggio avvenuto con successo'; -$this->phrasen['pruefung/fehler'] = 'Errore: '; -$this->phrasen['pruefung/fehlerEndDatumInDerVergangenheit'] = 'Errore: la data di termine è fissata nel passato.'; -$this->phrasen['pruefung/fehlerEndDatumVorStartDatum'] = 'Errore: la data di termine è precedente alla data di inizio.'; -$this->phrasen['pruefung/fehlerDatumNichtKorrekt'] = 'Errore: data inserita in maniera non corretta.'; -$this->phrasen['pruefung/erfolgreichgeaendert'] = 'Modifica avvenuta con successo'; -$this->phrasen['pruefung/keineBerechtigungZumAendernDesDatensatzes'] = 'Non si dispone dei permessi necessari per la modifica.'; -$this->phrasen['pruefung/keineBerechtigungZumAnzeigenDesDatensatzes'] = 'Non si dispone dei permessi necessari per la visualizzazione.'; -$this->phrasen['pruefung/erfolgreichgeloescht'] = 'Cancellazione avvenuta con successo.'; -$this->phrasen['pruefung/pruefungsfensterKonnteNichtGeloeschtWerdenDaPruefungen'] = 'Non è stato possibile cancellare la sessione siccome è collegata ad alcuni esami.'; -$this->phrasen['pruefung/keineBerechtigungZumLoeschenDesDatensatzes'] = 'Non si dispone dei permessi necessari per la cancellazione.'; -$this->phrasen['pruefung/pruefungsfensterVerwaltung'] = 'Gestione sessioni'; -$this->phrasen['pruefung/neuesPruefungsfensterAnlegen'] = 'Inserimento nuova sessione'; -$this->phrasen['pruefung/start'] = 'Data inizio'; -$this->phrasen['pruefung/ende'] = 'Data fine'; -$this->phrasen['pruefung/pruefungsfensterBearbeiten'] = 'Modificare sessione'; -$this->phrasen['pruefung/keinePruefungsfensterGespeichert'] = 'Nessuna sessione salvata'; -// Termin festlegen -$this->phrasen['pruefung/titlePruefungstermin'] = 'Inserimento appello d’esame'; -$this->phrasen['pruefung/pruefungLektor'] = 'Docente'; -$this->phrasen['pruefung/pruefungenVerwalten'] = 'Gestione esami'; -$this->phrasen['pruefung/pruefungTitel'] = 'Titolo'; -$this->phrasen['pruefung/pruefungsfenster'] = 'Sessione'; -$this->phrasen['pruefung/pruefungMethode'] = 'Modalità'; -$this->phrasen['pruefung/pruefungEinzelpruefung'] = 'Einzelprüfung'; -$this->phrasen['pruefung/pruefungTyp'] = 'Tipo'; -$this->phrasen['pruefung/pruefungIntervall'] = 'Periodo'; -$this->phrasen['pruefung/pruefungTermin'] = 'Appelli'; -$this->phrasen['pruefung/pruefungMinTeilnehmer'] = 'min. iscritti'; -$this->phrasen['pruefung/pruefungMaxTeilnehmer'] = 'max. iscritti'; -$this->phrasen['pruefung/pruefungSammelklausur'] = 'Sammelklausur'; -$this->phrasen['pruefung/pruefungTerminHinzufuegen'] = 'Inserire appello'; -$this->phrasen['pruefung/pruefungPruefungenTitle'] = 'Esami'; -$this->phrasen['pruefung/pruefungMitarbeiter'] = 'Collaboratore'; -$this->phrasen['pruefung/storniert'] = 'annullato'; - -// pruefung.js.php -$this->phrasen['pruefung/keinFensterVorhanden'] = 'Nessuna sessione a disposizione.'; -$this->phrasen['pruefung/keineDatenVorhanden'] = 'Nessuna data a disposizione.'; -$this->phrasen['pruefung/anmeldefristAbgelaufen'] = 'Termine di iscrizione scaduto.'; -$this->phrasen['pruefung/stornierenMoeglichBis'] = 'Possibilità di annullare l’iscrizione entro il'; -$this->phrasen['pruefung/anmeldenMoeglichBis'] = 'Possibilità di iscrizione entro il'; -$this->phrasen['pruefung/zurLvAnmeldung'] = 'iscriversi al corso'; -$this->phrasen['pruefung/zuerstPruefungAuswaehlen'] = 'Scegliere prima l’esame.'; -$this->phrasen['pruefung/bemerkungVonLektorHinzugefuegt'] = 'inserito da docente'; -$this->phrasen['pruefung/bestaetigen'] = 'Confermare'; -$this->phrasen['pruefung/anmerkungDesStudenten'] = 'Osservazioni dello studente:
'; -$this->phrasen['pruefung/bestaetigt'] = 'confermato'; -$this->phrasen['pruefung/statusAenderungVon'] = 'Modifica status di'; -$this->phrasen['pruefung/reihungSpeichern'] = 'Salvare sequenza'; -$this->phrasen['pruefung/listeDrucken'] = 'Stampare lista'; -$this->phrasen['pruefung/pruefungsraum'] = 'Aula d’esame: '; -$this->phrasen['pruefung/pruefungsort'] = 'Luogo d’esame '; -$this->phrasen['pruefung/imBuero'] = ' in ufficio'; -$this->phrasen['pruefung/raum'] = ' Aula'; -$this->phrasen['pruefung/raumSpeichern'] = ' Salvare aula'; -$this->phrasen['pruefung/reihunghErfolgreichGeaendert'] = 'Sequenza modificata con successo.'; -$this->phrasen['pruefung/studiengangAuswaehlen'] = 'Selezionare percorso di studi'; -$this->phrasen['pruefung/keinePruefungenVorhanden'] = 'Nessun esame disponibile.'; -$this->phrasen['pruefung/kommentarZu'] = 'Commento a '; -$this->phrasen['pruefung/kommentarSpeichern'] = 'Salvare commento'; -$this->phrasen['pruefung/kommentarErfolgreichGespeichert'] = 'Commento salvato con successo.'; -$this->phrasen['pruefung/formulardatenNichtKorrekt'] = 'Dati non corretti.'; -$this->phrasen['pruefung/pruefungErfolgreichGespeichert'] = 'Esame salvato con successo.'; -$this->phrasen['pruefung/lehrveranstaltungAuswaehlen'] = 'Selezionare insegnamento ...'; -$this->phrasen['pruefung/keineLehrveranstaltungenVorhanden'] = 'Nessun insegnamento disponibile.'; -$this->phrasen['pruefung/pruefungStornieren'] = 'Cancellare esame'; -$this->phrasen['pruefung/lvErfolgreichEntfernt'] = 'Insegnamento tolto con successo.'; -$this->phrasen['pruefung/pruefungStorniert'] = 'Esame cancellato'; -$this->phrasen['pruefung/terminGeloescht'] = 'Appello eliminato'; - -// pruefungsbewertung -$this->phrasen['pruefung/pruefungsbewertungTitle'] = 'Voto d’esame'; -$this->phrasen['pruefung/pruefungsbewertungAnmeldungen'] = 'Iscrizioni'; - // pruefungsanmeldung -$this->phrasen['pruefung/anmeldungFuer'] = 'Iscrizione d’esame per'; -$this->phrasen['pruefung/filter'] = 'Filtro'; -$this->phrasen['pruefung/details'] = 'Dettagli'; -$this->phrasen['pruefung/lvDetails'] = 'Dettagli insegnamento'; -$this->phrasen['pruefung/pruefungsDetails'] = 'Dettagli esame'; -$this->phrasen['pruefung/typ'] = 'Tipo'; -$this->phrasen['pruefung/intervall'] = 'Periodo'; -$this->phrasen['pruefung/besuchteLehrveranstaltungen'] = 'Insegnamenti frequentati'; -$this->phrasen['pruefung/freiePlaetze'] = 'Posti liberi'; -$this->phrasen['pruefung/lvVonStudiengang'] = 'Insegnamenti del percorso di studi'; -$this->phrasen['pruefung/lvAlle'] = 'Tutti gli insegnamenti'; -$this->phrasen['pruefung/anmeldungSpeichern'] = 'Salvare iscrizione'; -$this->phrasen['pruefung/studienverpflichtung'] = 'Obbligo formativo'; - -// liste -$this->phrasen['pruefung/anmeldungsliste'] = 'Lista partecipanti'; -$this->phrasen['pruefung/fehlenderParam_lvid'] = 'Parametro mancante lehrveranstaltung_id'; -$this->phrasen['pruefung/fehlenderParam_terminid'] = 'Parametro mancante termin_id'; -$this->phrasen['pruefung/fehlenderParam_studiensemester'] = 'Parametro mancante studiensemester'; -$this->phrasen['pruefung/pruefer'] = 'Professore'; -$this->phrasen['pruefung/keineBestaetigtenAnmeldungenVorhanden'] = 'Nessuna conferma di registrazione disponibile.'; -$this->phrasen['pruefung/keineLvAngegeben'] = 'Nessun corso definito.'; -$this->phrasen['pruefung/kollisionMitAnderemTermin'] = 'Date sovrapposte.'; -$this->phrasen['pruefung/terminNichtInDerVergangenheit'] = 'La data dell’esame non è nel passato.'; -$this->phrasen['pruefung/keineLehreinheitenVorhanden'] = 'Nessuna unità di corso disponibile.'; -$this->phrasen['pruefung/keineAnmeldungenVorhanden'] = 'Nessuna registrazione disponibile.'; - -// anmeldungen Verwalten -$this->phrasen['pruefung/anmeldungenVerwaltenTitle'] = 'Amministrazione della registrazione degli esami'; -$this->phrasen['pruefung/anmeldungenVerwalten'] = 'Amministrazione registrazioni'; - - -?> +phrasen['pruefung/titlePruefungsfenster'] = 'Inserire sessione'; +$this->phrasen['pruefung/erfolgreichgespeichert'] = 'Salvataggio avvenuto con successo'; +$this->phrasen['pruefung/fehler'] = 'Errore: '; +$this->phrasen['pruefung/fehlerEndDatumInDerVergangenheit'] = 'Errore: la data di termine è fissata nel passato.'; +$this->phrasen['pruefung/fehlerEndDatumVorStartDatum'] = 'Errore: la data di termine è precedente alla data di inizio.'; +$this->phrasen['pruefung/fehlerDatumNichtKorrekt'] = 'Errore: data inserita in maniera non corretta.'; +$this->phrasen['pruefung/erfolgreichgeaendert'] = 'Modifica avvenuta con successo'; +$this->phrasen['pruefung/keineBerechtigungZumAendernDesDatensatzes'] = 'Non si dispone dei permessi necessari per la modifica.'; +$this->phrasen['pruefung/keineBerechtigungZumAnzeigenDesDatensatzes'] = 'Non si dispone dei permessi necessari per la visualizzazione.'; +$this->phrasen['pruefung/erfolgreichgeloescht'] = 'Cancellazione avvenuta con successo.'; +$this->phrasen['pruefung/pruefungsfensterKonnteNichtGeloeschtWerdenDaPruefungen'] = 'Non è stato possibile cancellare la sessione siccome è collegata ad alcuni esami.'; +$this->phrasen['pruefung/keineBerechtigungZumLoeschenDesDatensatzes'] = 'Non si dispone dei permessi necessari per la cancellazione.'; +$this->phrasen['pruefung/pruefungsfensterVerwaltung'] = 'Gestione sessioni'; +$this->phrasen['pruefung/neuesPruefungsfensterAnlegen'] = 'Inserimento nuova sessione'; +$this->phrasen['pruefung/start'] = 'Data inizio'; +$this->phrasen['pruefung/ende'] = 'Data fine'; +$this->phrasen['pruefung/pruefungsfensterBearbeiten'] = 'Modificare sessione'; +$this->phrasen['pruefung/keinePruefungsfensterGespeichert'] = 'Nessuna sessione salvata'; +// Termin festlegen +$this->phrasen['pruefung/titlePruefungstermin'] = 'Inserimento appello d’esame'; +$this->phrasen['pruefung/pruefungLektor'] = 'Docente'; +$this->phrasen['pruefung/pruefungenVerwalten'] = 'Gestione esami'; +$this->phrasen['pruefung/pruefungTitel'] = 'Titolo'; +$this->phrasen['pruefung/pruefungsfenster'] = 'Sessione'; +$this->phrasen['pruefung/pruefungMethode'] = 'Modalità'; +$this->phrasen['pruefung/pruefungEinzelpruefung'] = 'Einzelprüfung'; +$this->phrasen['pruefung/pruefungTyp'] = 'Tipo'; +$this->phrasen['pruefung/pruefungIntervall'] = 'Periodo'; +$this->phrasen['pruefung/pruefungTermin'] = 'Appelli'; +$this->phrasen['pruefung/pruefungMinTeilnehmer'] = 'min. iscritti'; +$this->phrasen['pruefung/pruefungMaxTeilnehmer'] = 'max. iscritti'; +$this->phrasen['pruefung/pruefungSammelklausur'] = 'Sammelklausur'; +$this->phrasen['pruefung/pruefungTerminHinzufuegen'] = 'Inserire appello'; +$this->phrasen['pruefung/pruefungPruefungenTitle'] = 'Esami'; +$this->phrasen['pruefung/pruefungMitarbeiter'] = 'Collaboratore'; +$this->phrasen['pruefung/storniert'] = 'annullato'; + +// pruefung.js.php +$this->phrasen['pruefung/keinFensterVorhanden'] = 'Nessuna sessione a disposizione.'; +$this->phrasen['pruefung/keineDatenVorhanden'] = 'Nessuna data a disposizione.'; +$this->phrasen['pruefung/anmeldefristAbgelaufen'] = 'Termine di iscrizione scaduto.'; +$this->phrasen['pruefung/stornierenMoeglichBis'] = 'Possibilità di annullare l’iscrizione entro il'; +$this->phrasen['pruefung/anmeldenMoeglichBis'] = 'Possibilità di iscrizione entro il'; +$this->phrasen['pruefung/stornoNichtMehrMoeglich'] = 'Storno nicht mehr möglich.'; +$this->phrasen['pruefung/zurLvAnmeldung'] = 'iscriversi al corso'; +$this->phrasen['pruefung/zuerstPruefungAuswaehlen'] = 'Scegliere prima l’esame.'; +$this->phrasen['pruefung/bemerkungVonLektorHinzugefuegt'] = 'inserito da docente'; +$this->phrasen['pruefung/bestaetigen'] = 'Confermare'; +$this->phrasen['pruefung/anmerkungDesStudenten'] = 'Osservazioni dello studente:
'; +$this->phrasen['pruefung/bestaetigt'] = 'confermato'; +$this->phrasen['pruefung/statusAenderungVon'] = 'Modifica status di'; +$this->phrasen['pruefung/reihungSpeichern'] = 'Salvare sequenza'; +$this->phrasen['pruefung/listeDrucken'] = 'Stampare lista'; +$this->phrasen['pruefung/pruefungsraum'] = 'Aula d’esame: '; +$this->phrasen['pruefung/pruefungsort'] = 'Luogo d’esame '; +$this->phrasen['pruefung/imBuero'] = ' in ufficio'; +$this->phrasen['pruefung/raum'] = ' Aula'; +$this->phrasen['pruefung/raumSpeichern'] = ' Salvare aula'; +$this->phrasen['pruefung/reihunghErfolgreichGeaendert'] = 'Sequenza modificata con successo.'; +$this->phrasen['pruefung/studiengangAuswaehlen'] = 'Selezionare percorso di studi'; +$this->phrasen['pruefung/keinePruefungenVorhanden'] = 'Nessun esame disponibile.'; +$this->phrasen['pruefung/kommentarZu'] = 'Commento a '; +$this->phrasen['pruefung/kommentarSpeichern'] = 'Salvare commento'; +$this->phrasen['pruefung/kommentarErfolgreichGespeichert'] = 'Commento salvato con successo.'; +$this->phrasen['pruefung/formulardatenNichtKorrekt'] = 'Dati non corretti.'; +$this->phrasen['pruefung/pruefungErfolgreichGespeichert'] = 'Esame salvato con successo.'; +$this->phrasen['pruefung/lehrveranstaltungAuswaehlen'] = 'Selezionare insegnamento ...'; +$this->phrasen['pruefung/keineLehrveranstaltungenVorhanden'] = 'Nessun insegnamento disponibile.'; +$this->phrasen['pruefung/pruefungStornieren'] = 'Cancellare esame'; +$this->phrasen['pruefung/lvErfolgreichEntfernt'] = 'Insegnamento tolto con successo.'; +$this->phrasen['pruefung/pruefungStorniert'] = 'Esame cancellato'; +$this->phrasen['pruefung/terminGeloescht'] = 'Appello eliminato'; + +// pruefungsbewertung +$this->phrasen['pruefung/pruefungsbewertungTitle'] = 'Voto d’esame'; +$this->phrasen['pruefung/pruefungsbewertungAnmeldungen'] = 'Iscrizioni'; + // pruefungsanmeldung +$this->phrasen['pruefung/anmeldungFuer'] = 'Iscrizione d’esame per'; +$this->phrasen['pruefung/filter'] = 'Filtro'; +$this->phrasen['pruefung/details'] = 'Dettagli'; +$this->phrasen['pruefung/lvDetails'] = 'Dettagli insegnamento'; +$this->phrasen['pruefung/pruefungsDetails'] = 'Dettagli esame'; +$this->phrasen['pruefung/typ'] = 'Tipo'; +$this->phrasen['pruefung/intervall'] = 'Periodo'; +$this->phrasen['pruefung/besuchteLehrveranstaltungen'] = 'Insegnamenti frequentati'; +$this->phrasen['pruefung/freiePlaetze'] = 'Posti liberi'; +$this->phrasen['pruefung/lvVonStudiengang'] = 'Insegnamenti del percorso di studi'; +$this->phrasen['pruefung/lvAlle'] = 'Tutti gli insegnamenti'; +$this->phrasen['pruefung/anmeldungSpeichern'] = 'Salvare iscrizione'; +$this->phrasen['pruefung/studienverpflichtung'] = 'Obbligo formativo'; + +// liste +$this->phrasen['pruefung/anmeldungsliste'] = 'Lista partecipanti'; +$this->phrasen['pruefung/fehlenderParam_lvid'] = 'Parametro mancante lehrveranstaltung_id'; +$this->phrasen['pruefung/fehlenderParam_terminid'] = 'Parametro mancante termin_id'; +$this->phrasen['pruefung/fehlenderParam_studiensemester'] = 'Parametro mancante studiensemester'; +$this->phrasen['pruefung/pruefer'] = 'Professore'; +$this->phrasen['pruefung/keineBestaetigtenAnmeldungenVorhanden'] = 'Nessuna conferma di registrazione disponibile.'; +$this->phrasen['pruefung/keineLvAngegeben'] = 'Nessun corso definito.'; +$this->phrasen['pruefung/kollisionMitAnderemTermin'] = 'Date sovrapposte.'; +$this->phrasen['pruefung/terminNichtInDerVergangenheit'] = 'La data dell’esame non è nel passato.'; +$this->phrasen['pruefung/keineLehreinheitenVorhanden'] = 'Nessuna unità di corso disponibile.'; +$this->phrasen['pruefung/keineAnmeldungenVorhanden'] = 'Nessuna registrazione disponibile.'; + +// anmeldungen Verwalten +$this->phrasen['pruefung/anmeldungenVerwaltenTitle'] = 'Amministrazione della registrazione degli esami'; +$this->phrasen['pruefung/anmeldungenVerwalten'] = 'Amministrazione registrazioni'; + + +?> From deef6db1d7f3b50ca945284a0db0d2161c57f51d Mon Sep 17 00:00:00 2001 From: oesi Date: Mon, 2 May 2016 11:46:19 +0200 Subject: [PATCH 006/114] =?UTF-8?q?Spalte=20LAS=20auf=20Numeric(5,2)=20ge?= =?UTF-8?q?=C3=A4ndert=20damit=20auch=20Kommazahlen=20gespeichert=20werden?= =?UTF-8?q?=20k=C3=B6nnen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- system/dbupdate_3.2.php | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/system/dbupdate_3.2.php b/system/dbupdate_3.2.php index ff95678f6..53d10e94b 100755 --- a/system/dbupdate_3.2.php +++ b/system/dbupdate_3.2.php @@ -1153,6 +1153,20 @@ if($result = @$db->db_query("SELECT is_nullable FROM INFORMATION_SCHEMA.COLUMNS } } +// LAS Spalte von Smallint auf numeric(5,2) +if($result = $db->db_query("SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA='lehre' AND TABLE_NAME='tbl_lehrveranstaltung' AND COLUMN_NAME = 'las' AND DATA_TYPE='smallint' ")) +{ + if($db->db_num_rows($result)>0) + { + $qry = " ALTER TABLE lehre.tbl_lehrveranstaltung ALTER COLUMN las TYPE numeric(5,2);"; + + if(!$db->db_query($qry)) + echo 'lehre.tbl_lehrveranstaltung '.$db->db_last_error().'
'; + else + echo '
Spalte las in lehre.tbl_lehrveranstaltung von smallint auf numeric(5,2) geändert
'; + } +} + // *** Pruefung und hinzufuegen der neuen Attribute und Tabellen echo '

Pruefe Tabellen und Attribute!

'; @@ -1223,7 +1237,7 @@ $tabellen=array( "campus.tbl_pruefungsfenster" => array("pruefungsfenster_id","studiensemester_kurzbz","oe_kurzbz","start","ende"), "campus.tbl_pruefung" => array("pruefung_id","mitarbeiter_uid","studiensemester_kurzbz","pruefungsfenster_id","pruefungstyp_kurzbz","titel","beschreibung","methode","einzeln","storniert","insertvon","insertamum","updatevon","updateamum","pruefungsintervall"), "campus.tbl_pruefungstermin" => array("pruefungstermin_id","pruefung_id","von","bis","teilnehmer_max","teilnehmer_min","anmeldung_von","anmeldung_bis","ort_kurzbz","sammelklausur"), - "campus.tbl_pruefungsanmeldung" => array("pruefungsanmeldung_id","uid","pruefungstermin_id","lehrveranstaltung_id","status_kurzbz","wuensche","reihung","kommentar","statusupdatevon","statusupdateamum","anrechnung_id"), + "campus.tbl_pruefungsanmeldung" => array("pruefungsanmeldung_id","uid","pruefungstermin_id","lehrveranstaltung_id","status_kurzbz","wuensche","reihung","kommentar","statusupdatevon","statusupdateamum","anrechnung_id","pruefungstyp_kurzbz"), "campus.tbl_pruefungsstatus" => array("status_kurzbz","bezeichnung"), "campus.tbl_reservierung" => array("reservierung_id","ort_kurzbz","studiengang_kz","uid","stunde","datum","titel","beschreibung","semester","verband","gruppe","gruppe_kurzbz","veranstaltung_id","insertamum","insertvon"), "campus.tbl_resturlaub" => array("mitarbeiter_uid","resturlaubstage","mehrarbeitsstunden","updateamum","updatevon","insertamum","insertvon","urlaubstageprojahr"), From c7b791f1600ea0bf3fbb1e8e4d9bf157253f25c9 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Mon, 2 May 2016 15:23:36 +0200 Subject: [PATCH 007/114] =?UTF-8?q?Pr=C3=BCfungsverwaltung=20debugged?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cis/private/lehre/pruefung/pruefung.js.php | 2 +- cis/private/lehre/pruefung/pruefungsanmeldung.json.php | 4 ++++ locale/it-IT/pruefung.php | 6 +++--- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/cis/private/lehre/pruefung/pruefung.js.php b/cis/private/lehre/pruefung/pruefung.js.php index 2372c6128..56abd6345 100755 --- a/cis/private/lehre/pruefung/pruefung.js.php +++ b/cis/private/lehre/pruefung/pruefung.js.php @@ -328,7 +328,7 @@ function writePruefungsTable(e, data, anmeldung) var row = ""; var teilnehmer = ""; var button = ""; - row += "
'; - $mailto.= ($mailto!=''?',':'').$row->email; + $mailto.= ($mailto!=''?DEFAULT_EMAILADRESSENTRENNZEICHEN:'').$row->email; } echo "
t('global/studiensemester'); ?>: -
"+e.organisationseinheit+""+e.lehrveranstaltung[0].bezeichnung+""; + row += "
"+e.organisationseinheit+""+e.lehrveranstaltung[0].bezeichnung+"
("+e.lehrveranstaltung[0].lehrform_kurzbz+", "+e.lehrveranstaltung[0].ects+" ECTS, "+e.pruefung.mitarbeiter_uid+")
"; e.pruefung.termine.forEach(function(d){ var storno = false; var anmeldung_id = null; diff --git a/cis/private/lehre/pruefung/pruefungsanmeldung.json.php b/cis/private/lehre/pruefung/pruefungsanmeldung.json.php index bd093c2a5..1bb4d860f 100755 --- a/cis/private/lehre/pruefung/pruefungsanmeldung.json.php +++ b/cis/private/lehre/pruefung/pruefungsanmeldung.json.php @@ -426,6 +426,10 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) $pruefung->getPruefungen($uid, NULL, $lehrveranstaltung->lehrveranstaltung_id); $anmeldung_moeglich = true; $anzahlPruefungen = count($pruefung->result); + + // Defaulteinstellung für Prüfungstypen - schauen, ob bereits aus KTU-Addon geladen + if(!isset($pruefungstyp_kurzbzArray)) + $pruefungstyp_kurzbzArray = array("Termin1","Termin2","kommPruef"); if(isset($pruefungstyp_kurzbzArray)) { if($anzahlPruefungen < count($pruefungstyp_kurzbzArray)) diff --git a/locale/it-IT/pruefung.php b/locale/it-IT/pruefung.php index 0990ebacd..dfae930c1 100755 --- a/locale/it-IT/pruefung.php +++ b/locale/it-IT/pruefung.php @@ -25,13 +25,13 @@ $this->phrasen['pruefung/pruefungenVerwalten'] = 'Gestione esami'; $this->phrasen['pruefung/pruefungTitel'] = 'Titolo'; $this->phrasen['pruefung/pruefungsfenster'] = 'Sessione'; $this->phrasen['pruefung/pruefungMethode'] = 'Modalità'; -$this->phrasen['pruefung/pruefungEinzelpruefung'] = 'Einzelprüfung'; +$this->phrasen['pruefung/pruefungEinzelpruefung'] = 'Esame singolo'; $this->phrasen['pruefung/pruefungTyp'] = 'Tipo'; $this->phrasen['pruefung/pruefungIntervall'] = 'Periodo'; $this->phrasen['pruefung/pruefungTermin'] = 'Appelli'; $this->phrasen['pruefung/pruefungMinTeilnehmer'] = 'min. iscritti'; $this->phrasen['pruefung/pruefungMaxTeilnehmer'] = 'max. iscritti'; -$this->phrasen['pruefung/pruefungSammelklausur'] = 'Sammelklausur'; +$this->phrasen['pruefung/pruefungSammelklausur'] = 'Esame colletivo'; $this->phrasen['pruefung/pruefungTerminHinzufuegen'] = 'Inserire appello'; $this->phrasen['pruefung/pruefungPruefungenTitle'] = 'Esami'; $this->phrasen['pruefung/pruefungMitarbeiter'] = 'Collaboratore'; @@ -43,7 +43,7 @@ $this->phrasen['pruefung/keineDatenVorhanden'] = 'Nessuna data a disposizione.'; $this->phrasen['pruefung/anmeldefristAbgelaufen'] = 'Termine di iscrizione scaduto.'; $this->phrasen['pruefung/stornierenMoeglichBis'] = 'Possibilità di annullare l’iscrizione entro il'; $this->phrasen['pruefung/anmeldenMoeglichBis'] = 'Possibilità di iscrizione entro il'; -$this->phrasen['pruefung/stornoNichtMehrMoeglich'] = 'Storno nicht mehr möglich.'; +$this->phrasen['pruefung/stornoNichtMehrMoeglich'] = 'Non è più possibile annullare l’iscrizione.'; $this->phrasen['pruefung/zurLvAnmeldung'] = 'iscriversi al corso'; $this->phrasen['pruefung/zuerstPruefungAuswaehlen'] = 'Scegliere prima l’esame.'; $this->phrasen['pruefung/bemerkungVonLektorHinzugefuegt'] = 'inserito da docente'; From edc62cd25a553899e600e74d30c60529ca070a5a Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Mon, 2 May 2016 15:43:23 +0200 Subject: [PATCH 008/114] Ital Phrases --- cis/private/lehre/pruefung/pruefung.js.php | 2 +- locale/de-AT/pruefung.php | 1 + locale/en-US/pruefung.php | 1 + locale/it-IT/pruefung.php | 2 +- 4 files changed, 4 insertions(+), 2 deletions(-) diff --git a/cis/private/lehre/pruefung/pruefung.js.php b/cis/private/lehre/pruefung/pruefung.js.php index 56abd6345..939bb34ff 100755 --- a/cis/private/lehre/pruefung/pruefung.js.php +++ b/cis/private/lehre/pruefung/pruefung.js.php @@ -380,7 +380,7 @@ function writePruefungsTable(e, data, anmeldung) if(d.max === null) { - teilnehmer += "unbegrenzt
"; + teilnehmer += "t('pruefung/unbegrenzt'); ?>
"; } else { diff --git a/locale/de-AT/pruefung.php b/locale/de-AT/pruefung.php index c330362dc..0dc22b7ab 100755 --- a/locale/de-AT/pruefung.php +++ b/locale/de-AT/pruefung.php @@ -72,6 +72,7 @@ $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'; +$this->phrasen['pruefung/unbegrenzt'] = 'unbegrenzt'; // pruefungsbewertung $this->phrasen['pruefung/pruefungsbewertungTitle'] = 'Prüfungsbewertung'; diff --git a/locale/en-US/pruefung.php b/locale/en-US/pruefung.php index c330362dc..8487e42a0 100755 --- a/locale/en-US/pruefung.php +++ b/locale/en-US/pruefung.php @@ -72,6 +72,7 @@ $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'; +$this->phrasen['pruefung/unbegrenzt'] = 'unlimited'; // pruefungsbewertung $this->phrasen['pruefung/pruefungsbewertungTitle'] = 'Prüfungsbewertung'; diff --git a/locale/it-IT/pruefung.php b/locale/it-IT/pruefung.php index dfae930c1..c3150a7f4 100755 --- a/locale/it-IT/pruefung.php +++ b/locale/it-IT/pruefung.php @@ -72,7 +72,7 @@ $this->phrasen['pruefung/pruefungStornieren'] = 'Cancellare esame'; $this->phrasen['pruefung/lvErfolgreichEntfernt'] = 'Insegnamento tolto con successo.'; $this->phrasen['pruefung/pruefungStorniert'] = 'Esame cancellato'; $this->phrasen['pruefung/terminGeloescht'] = 'Appello eliminato'; - +$this->phrasen['pruefung/unbegrenzt'] = ''; // pruefungsbewertung $this->phrasen['pruefung/pruefungsbewertungTitle'] = 'Voto d’esame'; $this->phrasen['pruefung/pruefungsbewertungAnmeldungen'] = 'Iscrizioni'; From 1b4f1375873149ab0df335dd7b0cdc5a2e46e3c9 Mon Sep 17 00:00:00 2001 From: oesi Date: Mon, 2 May 2016 16:08:25 +0200 Subject: [PATCH 009/114] Fehler im Kommentar behoben --- system/dbupdate_3.2.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/system/dbupdate_3.2.php b/system/dbupdate_3.2.php index 53d10e94b..7de545457 100755 --- a/system/dbupdate_3.2.php +++ b/system/dbupdate_3.2.php @@ -1103,7 +1103,7 @@ if (!$result = @$db->db_query("SELECT 1 FROM public.tbl_studienjahr LIMIT 1;")) echo 'public.tbl_studienjahr: Tabelle hinzugefuegt
'; } -//Spalte genehmigung in lehre.tbl_studienordnung_lehrveranstaltung +//Spalte genehmigung in lehre.tbl_studienplan_lehrveranstaltung if (!$result = @$db->db_query("SELECT genehmigung FROM lehre.tbl_studienplan_lehrveranstaltung LIMIT 1;")) { $qry = "ALTER TABLE lehre.tbl_studienplan_lehrveranstaltung ADD COLUMN genehmigung BOOLEAN DEFAULT TRUE;"; From f0bee0d5315268a8be3908a735b456c90a01a948 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Wed, 4 May 2016 14:42:09 +0200 Subject: [PATCH 010/114] Ital Phrases, Error in Classfile localised --- .../pruefung/pruefungsanmeldung.json.php | 58 +++++++++++-------- include/prestudent.class.php | 16 ++++- locale/de-AT/errors.php | 4 ++ locale/de-AT/pruefung.php | 28 +++++++++ locale/en-US/errors.php | 4 ++ locale/en-US/pruefung.php | 28 +++++++++ locale/it-IT/errors.php | 4 ++ locale/it-IT/lehre.php | 30 +++++----- locale/it-IT/lvplan.php | 3 +- locale/it-IT/pruefung.php | 44 +++++++++++--- locale/it-IT/semesterplan.php | 20 +++---- locale/it-IT/tools.php | 6 +- 12 files changed, 183 insertions(+), 62 deletions(-) create mode 100755 locale/de-AT/errors.php create mode 100755 locale/en-US/errors.php create mode 100755 locale/it-IT/errors.php diff --git a/cis/private/lehre/pruefung/pruefungsanmeldung.json.php b/cis/private/lehre/pruefung/pruefungsanmeldung.json.php index 1bb4d860f..137e27a45 100755 --- a/cis/private/lehre/pruefung/pruefungsanmeldung.json.php +++ b/cis/private/lehre/pruefung/pruefungsanmeldung.json.php @@ -31,6 +31,14 @@ require_once('../../../../include/mail.class.php'); require_once('../../../../include/anrechnung.class.php'); require_once('../../../../include/prestudent.class.php'); require_once('../../../../include/person.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(); @@ -361,6 +369,7 @@ function loadTermine() */ function saveAnmeldung($aktStudiensemester = null, $uid = null) { + global $p; $termin = new pruefungstermin($_REQUEST["termin_id"]); $pruefung = new pruefung(); $lehrveranstaltung = new lehrveranstaltung($_REQUEST["lehrveranstaltung_id"]); @@ -449,8 +458,8 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) { $pruefungsanmeldung = new pruefungsanmeldung($prf->pruefungsanmeldung_id); $pruefungstermin = new pruefungstermin($pruefungsanmeldung->pruefungstermin_id); - $p = new pruefungCis($pruefungstermin->pruefung_id); - $pruefungsfenster = new pruefungsfenster($p->pruefungsfenster_id); + $pf = new pruefungCis($pruefungstermin->pruefung_id); + $pruefungsfenster = new pruefungsfenster($pf->pruefungsfenster_id); $studiensemester = new studiensemester(); $stdsem = $studiensemester->getaktorNext(); $i=0; @@ -496,7 +505,7 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) if($creditpoints < $lehrveranstaltung->ects) { $data['error'] = 'true'; - $data['errormsg'] = 'Credit-Points-Guthaben ist zu gering.'; + $data['errormsg'] = $p->t('pruefung/zuWenigeCreditPoints'); return $data; } } @@ -510,7 +519,7 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) { $data['result'][$temp->pruefungstermin_id] = "true"; $data['error'] = 'true'; - $data['errormsg'] = 'Kollision mit anderer Anmeldung.'; + $data['errormsg'] = $p->t('pruefung/kollisionMitAndererAnmeldung'); } } if(isset($data['error']) && $data['error'] = 'true') @@ -521,14 +530,14 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) else { $data['error']='true'; - $data['errormsg']='Keine freien Plätze vorhanden.'; + $data['errormsg']=$p->t('pruefung/keineFreienPlaetzeVorhanden'); return $data; } } else { $data['error']='true'; - $data['errormsg']='Anmeldung auf Grund von Sperre nicht möglich.'; + $data['errormsg']=$p->t('pruefung/anmeldungAufgrundVonSperreNichtMoeglich'); return $data; } @@ -585,19 +594,19 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) else $to = $pruefung->mitarbeiter_uid."@".DOMAIN; $from = "noreply@".DOMAIN; - $subject = "Anmeldung zur Prüfung"; - $mail = new mail($to, $from, $subject, "Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen."); + $subject = $p->t('pruefung/emailLektorSubjectAnmeldung'); + $mail = new mail($to, $from, $subject, $p->t('pruefung/emailBodyBitteHtmlSicht')); $student = new student($uid); $datum = new datum(); $lv = new lehrveranstaltung($anmeldung->lehrveranstaltung_id); - $html = "StudentIn ".$student->vorname." ".$student->nachname." hat sich zur Prüfung ".$lv->bezeichnung." am ".$datum->formatDatum($termin->von, "m.d.Y")." von ".$datum->formatDatum($termin->von,"h:i")." Uhr bis ".$datum->formatDatum($termin->bis,"h:i")." Uhr angemeldet."; + $html = $p->t('pruefung/emailLektorStudentIn')." ".$student->vorname." ".$student->nachname." ".$p->t('pruefung/emailLektorHatSichZurPruefung')." ".$lv->bezeichnung." ".$p->t('pruefung/emailLektorAm')." ".$datum->formatDatum($termin->von, "m.d.Y")." ".$p->t('pruefung/emailLektorVon')." ".$datum->formatDatum($termin->von,"h:i")." ".$p->t('pruefung/emailLektorUhrBis')." ".$datum->formatDatum($termin->bis,"h:i")." ".$p->t('pruefung/emailLektorUhrAngemeldet'); $mail->setHTMLContent($html); $mail->send(); - $data['result'] = "Anmeldung erfolgreich!"; + $data['result'] = $p->t('pruefung/anmeldungErfolgreich'); $data['error']='false'; $data['errormsg']=''; } @@ -616,13 +625,13 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) else { $data['error']='true'; - $data['errormsg']="Prestudent nicht gefunden."; + $data['errormsg']=$p->t('pruefung/prestudentNichtGefunden'); } } else { $data['error']='true'; - $data['errormsg']="Prestudent nicht gefunden."; + $data['errormsg']=$p->t('pruefung/prestudentNichtGefunden'); } return $data; } @@ -698,6 +707,7 @@ function getAllPruefungen($aktStudiensemester = null, $uid = null) */ function stornoAnmeldung($uid = null) { + global $p; $pruefungsanmeldung_id=$_REQUEST['pruefungsanmeldung_id']; $pruefungsanmeldung = new pruefungsanmeldung($pruefungsanmeldung_id); $anrechnung = new anrechnung($pruefungsanmeldung->anrechnung_id); @@ -705,7 +715,7 @@ function stornoAnmeldung($uid = null) { if($anrechnung->delete($anrechnung->anrechnung_id)) { - $data['result'] = 'Anmeldung erfolgreich gelöscht.'; + $data['result'] = $p->t('pruefung/anmeldungErfolgreichGeloescht'); $data['error'] = 'false'; $data['errormsg'] = ''; } @@ -726,6 +736,7 @@ function stornoAnmeldung($uid = null) */ function getAnmeldungenTermin() { + global $p; $lehrveranstaltung_id = $_REQUEST["lehrveranstaltung_id"]; $pruefungstermin_id = $_REQUEST["pruefungstermin_id"]; $pruefungstermin = new pruefungstermin($pruefungstermin_id); @@ -755,7 +766,7 @@ function getAnmeldungenTermin() } else { - $data['errormsg']= 'Keine Anmeldungen vorhanden'; + $data['errormsg']= $p->t('pruefung/keineAnmeldungenVorhanden'); } } return $data; @@ -789,6 +800,7 @@ function saveReihung() */ function anmeldungBestaetigen($uid) { + global $p; $pruefungsanmeldung_id = $_REQUEST["pruefungsanmeldung_id"]; $status = "bestaetigt"; $anmeldung = new pruefungsanmeldung(); @@ -804,27 +816,27 @@ function anmeldungBestaetigen($uid) $to = $anmeldung->uid."@".DOMAIN; $from = "noreply@".DOMAIN; - $subject = "Anmeldungsbestätigung zur Prüfung"; - $html = "Ihre Anmeldung zur Prüfung wurde von ".$ma->vorname." ".$ma->nachname." bestätigt.
"; + $subject = $p->t('pruefung/emailSubjectAnmeldungBestaetigung'); + $html = $p->t('pruefung/emailBody1')." ".$ma->vorname." ".$ma->nachname." ".$p->t('pruefung/emailBody2')."
"; $html .= "
"; - $html .= "Prüfung: ".$lv->bezeichnung."
"; + $html .= $p->t('pruefung/emailBodyPruefung')." ".$lv->bezeichnung."
"; if($pruefung->einzeln) { $date = $datum->formatDatum($termin->von, "Y-m-d h:i:s"); $date = strtotime($date); $date = $date+(60*$pruefung->pruefungsintervall*($anmeldung->reihung-1)); $von = date("h:i",$date); - $html .= "Termin: ".$datum->formatDatum($termin->von, "d.m.Y")." um ".$von."
"; - $html .= "Dauer: ".$pruefung->pruefungsintervall." Minuten
"; + $html .= $p->t('pruefung/emailBodyTermin')." ".$datum->formatDatum($termin->von, "d.m.Y")." ".$p->t('pruefung/emailBodyUm')." ".$von."
"; + $html .= $p->t('pruefung/emailBodyDauer')." ".$pruefung->pruefungsintervall." ".$p->t('pruefung/emailBodyMinuten')."
"; } else - $html .= "Termin: ".$datum->formatDatum($termin->von, "d.m.Y")." um ".$datum->formatDatum($termin->von, "h:i")."
"; - $html .= "Ort: ".$ort->bezeichnung."
"; + $html .= $p->t('pruefung/emailBodyTermin')." ".$datum->formatDatum($termin->von, "d.m.Y")." ".$p->t('pruefung/emailBodyUm')." ".$datum->formatDatum($termin->von, "h:i")."
"; + $html .= $p->t('pruefung/anmeldungErfolgreich')." ".$ort->bezeichnung."
"; $html .= "
"; - $html .= "Link zur Anmeldung
"; + $html .= "".$p->t('pruefung/emailBodyLinkZurAnmeldung')."
"; $html .= "
"; - $mail = new mail($to, $from, $subject,"Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen."); + $mail = new mail($to, $from, $subject,$p->t('pruefung/emailBodyBitteHtmlSicht')); $mail->setHTMLContent($html); $mail->send(); diff --git a/include/prestudent.class.php b/include/prestudent.class.php index ee1396f0d..a6d16ff89 100755 --- a/include/prestudent.class.php +++ b/include/prestudent.class.php @@ -22,6 +22,15 @@ require_once(dirname(__FILE__).'/person.class.php'); require_once(dirname(__FILE__).'/log.class.php'); +require_once(dirname(__FILE__).'/phrasen.class.php'); +require_once(dirname(__FILE__).'/globals.inc.php'); +require_once(dirname(__FILE__).'/sprache.class.php'); + +$sprache = getSprache(); +$lang = new sprache(); +$lang->load($sprache); +$p = new phrasen($sprache); + class prestudent extends person { //Tabellenspalten @@ -773,12 +782,14 @@ class prestudent extends person */ public function save_rolle() { + global $p; if($this->new) { //pruefen ob die Rolle schon vorhanden ist if($this->load_rolle($this->prestudent_id, $this->status_kurzbz, $this->studiensemester_kurzbz, $this->ausbildungssemester)) { - $this->errormsg = 'Diese Rolle existiert bereits'; + //$this->errormsg = 'Diese Rolle existiert bereits'; + $this->errormsg = $p->t('errors/rolleExistiertBereits'); return false; } @@ -815,7 +826,8 @@ class prestudent extends person { if($this->load_rolle($this->prestudent_id, $this->status_kurzbz, $this->studiensemester_kurzbz, $this->ausbildungssemester)) { - $this->errormsg = 'Diese Rolle existiert bereits'; + //$this->errormsg = 'Diese Rolle existiert bereits'; + $this->errormsg = $p->t('errors/rolleExistiertBereits'); return false; } } diff --git a/locale/de-AT/errors.php b/locale/de-AT/errors.php new file mode 100755 index 000000000..f28e731a9 --- /dev/null +++ b/locale/de-AT/errors.php @@ -0,0 +1,4 @@ +phrasen['errors/rolleExistiertBereits']='Diese Rolle existiert bereits'; + +?> diff --git a/locale/de-AT/pruefung.php b/locale/de-AT/pruefung.php index 0dc22b7ab..be9bb41c7 100755 --- a/locale/de-AT/pruefung.php +++ b/locale/de-AT/pruefung.php @@ -109,7 +109,35 @@ $this->phrasen['pruefung/keineAnmeldungenVorhanden'] = 'Keine Anmeldungen vorhan $this->phrasen['pruefung/anmeldungenVerwaltenTitle'] = 'Prüfungsanmeldung Verwaltung'; $this->phrasen['pruefung/anmeldungenVerwalten'] = 'Anmeldungen Verwalten'; +// prüfungsanmeldung.json.php +$this->phrasen['pruefung/anmeldungErfolgreich'] = 'Anmeldung erfolgreich!'; +$this->phrasen['pruefung/zuWenigeCreditPoints'] = 'Credit-Points-Guthaben ist zu gering.'; +$this->phrasen['pruefung/kollisionMitAndererAnmeldung'] = 'Kollision mit anderer Anmeldung.'; +$this->phrasen['pruefung/keineFreienPlaetzeVorhanden'] = 'Keine freien Plätze vorhanden.'; +$this->phrasen['pruefung/anmeldungAufgrundVonSperreNichtMoeglich'] = 'Anmeldung auf Grund von Sperre nicht möglich.'; +$this->phrasen['pruefung/prestudentNichtGefunden'] = 'Prestudent nicht gefunden.'; +$this->phrasen['pruefung/anmeldungErfolgreichGeloescht'] = 'Anmeldung erfolgreich gelöscht.'; +// Mailtexte +$this->phrasen['pruefung/emailSubjectAnmeldungBestaetigung'] = 'Anmeldungsbestätigung zur Prüfung'; +$this->phrasen['pruefung/emailBody1'] = 'Ihre Anmeldung zur Prüfung wurde von'; +$this->phrasen['pruefung/emailBody2'] = 'bestätigt.'; +$this->phrasen['pruefung/emailBodyPruefung'] = 'Prüfung:'; +$this->phrasen['pruefung/emailBodyTermin'] = 'Termin:'; +$this->phrasen['pruefung/emailBodyDauer'] = 'Dauer:'; +$this->phrasen['pruefung/emailBodyUm'] = 'um'; +$this->phrasen['pruefung/emailBodyMinuten'] = 'Minuten'; +$this->phrasen['pruefung/emailBodyOrt'] = 'Ort:'; +$this->phrasen['pruefung/emailBodyLinkZurAnmeldung'] = 'Link zur Anmeldung'; +$this->phrasen['pruefung/emailBodyBitteHtmlSicht'] = 'Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.'; + +$this->phrasen['pruefung/emailLektorSubjectAnmeldung'] = 'Anmeldung zur Prüfung'; +$this->phrasen['pruefung/emailLektorStudentIn'] = 'StudentIn'; +$this->phrasen['pruefung/emailLektorHatSichZurPruefung'] = 'hat sich zur Prüfung'; +$this->phrasen['pruefung/emailLektorAm'] = 'am'; +$this->phrasen['pruefung/emailLektorVon'] = 'von'; +$this->phrasen['pruefung/emailLektorUhrBis'] = 'Uhr bis'; +$this->phrasen['pruefung/emailLektorUhrAngemeldet'] = 'Uhr angemeldet.'; ?> diff --git a/locale/en-US/errors.php b/locale/en-US/errors.php new file mode 100755 index 000000000..936f16af8 --- /dev/null +++ b/locale/en-US/errors.php @@ -0,0 +1,4 @@ +phrasen['errors/rolleExistiertBereits']='This role is already selected'; + +?> diff --git a/locale/en-US/pruefung.php b/locale/en-US/pruefung.php index 8487e42a0..9c7eb8343 100755 --- a/locale/en-US/pruefung.php +++ b/locale/en-US/pruefung.php @@ -109,7 +109,35 @@ $this->phrasen['pruefung/keineAnmeldungenVorhanden'] = 'Keine Anmeldungen vorhan $this->phrasen['pruefung/anmeldungenVerwaltenTitle'] = 'Prüfungsanmeldung Verwaltung'; $this->phrasen['pruefung/anmeldungenVerwalten'] = 'Anmeldungen Verwalten'; +// prüfungsanmeldung.json.php +$this->phrasen['pruefung/anmeldungErfolgreich'] = 'Registration successful.'; +$this->phrasen['pruefung/zuWenigeCreditPoints'] = 'Credit-Points-Guthaben ist zu gering.'; +$this->phrasen['pruefung/kollisionMitAndererAnmeldung'] = 'Kollision mit anderer Anmeldung.'; +$this->phrasen['pruefung/keineFreienPlaetzeVorhanden'] = 'Keine freien Plätze vorhanden.'; +$this->phrasen['pruefung/anmeldungAufgrundVonSperreNichtMoeglich'] = 'Anmeldung auf Grund von Sperre nicht möglich.'; +$this->phrasen['pruefung/prestudentNichtGefunden'] = 'Prestudent nicht gefunden.'; +$this->phrasen['pruefung/anmeldungErfolgreichGeloescht'] = 'Registration cancelled.'; +// Mailtexte +$this->phrasen['pruefung/emailSubjectAnmeldungBestaetigung'] = 'Anmeldungsbestätigung zur Prüfung'; +$this->phrasen['pruefung/emailBody1'] = 'Ihre Anmeldung zur Prüfung wurde von'; +$this->phrasen['pruefung/emailBody2'] = 'bestätigt.'; +$this->phrasen['pruefung/emailBodyPruefung'] = 'Prüfung:'; +$this->phrasen['pruefung/emailBodyTermin'] = 'Termin:'; +$this->phrasen['pruefung/emailBodyDauer'] = 'Dauer:'; +$this->phrasen['pruefung/emailBodyUm'] = 'um'; +$this->phrasen['pruefung/emailBodyMinuten'] = 'Minuten'; +$this->phrasen['pruefung/emailBodyOrt'] = 'Ort:'; +$this->phrasen['pruefung/emailBodyLinkZurAnmeldung'] = 'Link zur Anmeldung'; +$this->phrasen['pruefung/emailBodyBitteHtmlSicht'] = 'Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.'; + +$this->phrasen['pruefung/emailLektorSubjectAnmeldung'] = 'Anmeldung zur Prüfung'; +$this->phrasen['pruefung/emailLektorStudentIn'] = 'StudentIn'; +$this->phrasen['pruefung/emailLektorHatSichZurPruefung'] = 'hat sich zur Prüfung'; +$this->phrasen['pruefung/emailLektorAm'] = 'am'; +$this->phrasen['pruefung/emailLektorVon'] = 'von'; +$this->phrasen['pruefung/emailLektorUhrBis'] = 'Uhr bis'; +$this->phrasen['pruefung/emailLektorUhrAngemeldet'] = 'Uhr angemeldet.'; ?> diff --git a/locale/it-IT/errors.php b/locale/it-IT/errors.php new file mode 100755 index 000000000..5f0fa5881 --- /dev/null +++ b/locale/it-IT/errors.php @@ -0,0 +1,4 @@ +phrasen['errors/rolleExistiertBereits']='Percorso di studi già selezionato'; + +?> diff --git a/locale/it-IT/lehre.php b/locale/it-IT/lehre.php index d98a14e83..6fd29a5a5 100755 --- a/locale/it-IT/lehre.php +++ b/locale/it-IT/lehre.php @@ -1,28 +1,28 @@ phrasen['lehre/abmelden']='esci'; $this->phrasen['lehre/abmeldung']='uscita'; -$this->phrasen['lehre/AbmeldungAusGruppeNichtMoeglich']='Sie können sich nicht von dieser Lehrveranstaltung abmelden'; -$this->phrasen['lehre/AbmeldungErfolgreich']='Sie wurden erfolgreich von der Lehrveranstaltung abgemeldet'; +$this->phrasen['lehre/AbmeldungAusGruppeNichtMoeglich']='Non è possibile cancellare la propria iscrizione al corso'; +$this->phrasen['lehre/AbmeldungErfolgreich']='Cancellamento iscrizione avvenuto con successo'; $this->phrasen['lehre/anwesenheitsUndNotenlisten']='Elenco frequenze e votazioni'; -$this->phrasen['lehre/benotungstoolHandbuch']='Handbuch'; -$this->phrasen['lehre/confirmAbmeldung']='Wollen Sie sich wirklich von der Lehrveranstaltung "%s" abmelden?'; +$this->phrasen['lehre/benotungstoolHandbuch']='Handbook'; +$this->phrasen['lehre/confirmAbmeldung']='Cancellare veramente la propria iscrizione al corso "%s" ?'; $this->phrasen['lehre/download']='Download'; $this->phrasen['lehre/feedback']='feedback'; $this->phrasen['lehre/gesamtnote']='Voto finale'; -$this->phrasen['lehre/keineLektorenZugeordnet']='Derzeit sind keine Lektoren für dieses Fach zugeteilt'; -$this->phrasen['lehre/keinMailverteiler']='Für die Gruppe(n) %s existiert kein Verteiler! Die Studierenden in diesen Gruppen bekommen kein Mail.'; +$this->phrasen['lehre/keineLektorenZugeordnet']='Al momento non è assegnato alcun docente per questo insegnamento'; +$this->phrasen['lehre/keinMailverteiler']='Per il/i gruppo/i %s non esiste alcuna lista di destinatari! Gli studenti in questo/i gruppo/i non riceveranno alcuna mail.'; $this->phrasen['lehre/kreuzerltool']='strumenti per esercitazioni
(tool con caselle da barrare)'; -$this->phrasen['lehre/moodleMitKreuzerltoolInfo']='Moodle kann nicht gleichzeitig mit dem Übungstool verwendet werden.\nWenn Sie Moodle verwenden wollen, müssen Sie die Übungen im Übungstool entfernen'; -$this->phrasen['lehre/lehrbeauftragter']='Lehrbeauftragte(r)'; -$this->phrasen['lehre/lehrveranstaltungsinformation']='Lehrveranstaltungsinformation'; +$this->phrasen['lehre/moodleMitKreuzerltoolInfo']='Moodle non può essere utilizzato in contemporanea con lo strumento per esercitazioni. Se si vuole utilizzare Moodle bisogna annullare l’uso dello strumento per esercitazioni'; +$this->phrasen['lehre/lehrbeauftragter']='Docente incaricato'; +$this->phrasen['lehre/lehrveranstaltungsinformation']='Informazioni corso'; $this->phrasen['lehre/leistungsuebersicht']='Panoramica'; -$this->phrasen['lehre/lvInfoBearbeiten']='Bearbeiten'; -$this->phrasen['lehre/mail']='E-Mail an Studierende'; +$this->phrasen['lehre/lvInfoBearbeiten']='Modificare'; +$this->phrasen['lehre/mail']='E-Mail agli studenti'; $this->phrasen['lehre/moodle']='Moodle'; -$this->phrasen['lehre/moodleHandbuch']='Handbuch'; -$this->phrasen['lehre/moodleWartung']='Wartung'; +$this->phrasen['lehre/moodleHandbuch']='Handbook'; +$this->phrasen['lehre/moodleWartung']='Attesa'; $this->phrasen['lehre/newsgroups']='Newsgroups'; -$this->phrasen['lehre/nichtzugeteilt']='Sie sind nicht zu dieser Lehrveranstaltung zugeteilt'; +$this->phrasen['lehre/nichtzugeteilt']='Lei non è stato/a associato/a a questo insegnamento'; $this->phrasen['lehre/pinboard']='Bacheca'; $this->phrasen['lehre/semesterplan']='Calendario del corso'; $this->phrasen['lehre/semesterplanUpload']='Upload'; @@ -31,6 +31,6 @@ $this->phrasen['lehre/semesterplanVorlageHilfe']='Aiuto'; $this->phrasen['lehre/studentenAbgabe']='Upload degli studenti'; $this->phrasen['lehre/upload']='Upload'; $this->phrasen['lehre/ziparchiv']='Scarica zip'; -$this->phrasen['lehre/ziparchivTitle']='scarica tutti i file in directory download in formato zip'; +$this->phrasen['lehre/ziparchivTitle']='scarica tutti i file in un unico zip'; ?> diff --git a/locale/it-IT/lvplan.php b/locale/it-IT/lvplan.php index edc4182cf..b16a4c013 100755 --- a/locale/it-IT/lvplan.php +++ b/locale/it-IT/lvplan.php @@ -37,7 +37,8 @@ $this->phrasen['lvplan/lektor']=''; $this->phrasen['lvplan/lektorenplan']=''; $this->phrasen['lvplan/lektorInStudentIn']=''; $this->phrasen['lvplan/lvKoordinationsstelle']=''; -$this->phrasen['lvplan/lvPlan']='Calendario lezioni'; +$this->phrasen['lvplan/lvPlan']=''; +//$this->phrasen['lvplan/lvPlan']='Calendario lezioni'; $this->phrasen['lvplan/nameEingeben']=''; $this->phrasen['lvplan/nichtVorhanden']=''; $this->phrasen['lvplan/ort']=''; diff --git a/locale/it-IT/pruefung.php b/locale/it-IT/pruefung.php index c3150a7f4..e61d6c8f4 100755 --- a/locale/it-IT/pruefung.php +++ b/locale/it-IT/pruefung.php @@ -59,7 +59,7 @@ $this->phrasen['pruefung/imBuero'] = ' in ufficio'; $this->phrasen['pruefung/raum'] = ' Aula'; $this->phrasen['pruefung/raumSpeichern'] = ' Salvare aula'; $this->phrasen['pruefung/reihunghErfolgreichGeaendert'] = 'Sequenza modificata con successo.'; -$this->phrasen['pruefung/studiengangAuswaehlen'] = 'Selezionare percorso di studi'; +$this->phrasen['pruefung/studiengangAuswaehlen'] = 'Selezionare corso di studi'; $this->phrasen['pruefung/keinePruefungenVorhanden'] = 'Nessun esame disponibile.'; $this->phrasen['pruefung/kommentarZu'] = 'Commento a '; $this->phrasen['pruefung/kommentarSpeichern'] = 'Salvare commento'; @@ -74,7 +74,7 @@ $this->phrasen['pruefung/pruefungStorniert'] = 'Esame cancellato'; $this->phrasen['pruefung/terminGeloescht'] = 'Appello eliminato'; $this->phrasen['pruefung/unbegrenzt'] = ''; // pruefungsbewertung -$this->phrasen['pruefung/pruefungsbewertungTitle'] = 'Voto d’esame'; +$this->phrasen['pruefung/pruefungsbewertungTitle'] = 'Voti d’esame'; $this->phrasen['pruefung/pruefungsbewertungAnmeldungen'] = 'Iscrizioni'; // pruefungsanmeldung $this->phrasen['pruefung/anmeldungFuer'] = 'Iscrizione d’esame per'; @@ -92,21 +92,49 @@ $this->phrasen['pruefung/anmeldungSpeichern'] = 'Salvare iscrizione'; $this->phrasen['pruefung/studienverpflichtung'] = 'Obbligo formativo'; // liste -$this->phrasen['pruefung/anmeldungsliste'] = 'Lista partecipanti'; +$this->phrasen['pruefung/anmeldungsliste'] = 'Lista iscritti appello'; $this->phrasen['pruefung/fehlenderParam_lvid'] = 'Parametro mancante lehrveranstaltung_id'; $this->phrasen['pruefung/fehlenderParam_terminid'] = 'Parametro mancante termin_id'; $this->phrasen['pruefung/fehlenderParam_studiensemester'] = 'Parametro mancante studiensemester'; -$this->phrasen['pruefung/pruefer'] = 'Professore'; +$this->phrasen['pruefung/pruefer'] = 'Docente'; $this->phrasen['pruefung/keineBestaetigtenAnmeldungenVorhanden'] = 'Nessuna conferma di registrazione disponibile.'; $this->phrasen['pruefung/keineLvAngegeben'] = 'Nessun corso definito.'; $this->phrasen['pruefung/kollisionMitAnderemTermin'] = 'Date sovrapposte.'; -$this->phrasen['pruefung/terminNichtInDerVergangenheit'] = 'La data dell’esame non è nel passato.'; -$this->phrasen['pruefung/keineLehreinheitenVorhanden'] = 'Nessuna unità di corso disponibile.'; +$this->phrasen['pruefung/terminNichtInDerVergangenheit'] = 'La data dell’appello non è nel passato.'; +$this->phrasen['pruefung/keineLehreinheitenVorhanden'] = 'Nessun corso disponibile.'; $this->phrasen['pruefung/keineAnmeldungenVorhanden'] = 'Nessuna registrazione disponibile.'; // anmeldungen Verwalten -$this->phrasen['pruefung/anmeldungenVerwaltenTitle'] = 'Amministrazione della registrazione degli esami'; -$this->phrasen['pruefung/anmeldungenVerwalten'] = 'Amministrazione registrazioni'; +$this->phrasen['pruefung/anmeldungenVerwaltenTitle'] = 'Gestione delle prenotazioni degli appelli'; +$this->phrasen['pruefung/anmeldungenVerwalten'] = 'Gestione prenotazioni'; +// prüfungsanmeldung.json.php +$this->phrasen['pruefung/anmeldungErfolgreich'] = 'Iscrizione avvenuta con successo'; +$this->phrasen['pruefung/zuWenigeCreditPoints'] = 'Ammontare crediti insufficiente.'; +$this->phrasen['pruefung/kollisionMitAndererAnmeldung'] = 'Conflitto con altra registrazione.'; +$this->phrasen['pruefung/keineFreienPlaetzeVorhanden'] = 'Nessun posto libero disponibile.'; +$this->phrasen['pruefung/anmeldungAufgrundVonSperreNichtMoeglich'] = 'Iscrizione impossibile in questo momento.'; +$this->phrasen['pruefung/prestudentNichtGefunden'] = 'Prestudent non trovato.'; +$this->phrasen['pruefung/anmeldungErfolgreichGeloescht'] = 'Iscrizione cancellata con successo.'; +// Mailtexte +$this->phrasen['pruefung/emailSubjectAnmeldungBestaetigung'] = 'Conferma d’iscrizione all’appello d’esame'; +$this->phrasen['pruefung/emailBody1'] = 'La sua iscrizione all’appello d’esame è stata'; +$this->phrasen['pruefung/emailBody2'] = 'confermata.'; +$this->phrasen['pruefung/emailBodyPruefung'] = 'Appello d’esame:'; +$this->phrasen['pruefung/emailBodyTermin'] = 'Data:'; +$this->phrasen['pruefung/emailBodyDauer'] = 'Durata:'; +$this->phrasen['pruefung/emailBodyUm'] = 'alle'; +$this->phrasen['pruefung/emailBodyMinuten'] = 'minuti'; +$this->phrasen['pruefung/emailBodyOrt'] = 'Luogo:'; +$this->phrasen['pruefung/emailBodyLinkZurAnmeldung'] = 'Link all’iscrizione'; +$this->phrasen['pruefung/emailBodyBitteHtmlSicht'] = 'Nel caso il link non sia visualizzato correttamente, attivare la visualizzazione in HTML.'; + +$this->phrasen['pruefung/emailLektorSubjectAnmeldung'] = 'Iscrizione all’appello d’esame'; +$this->phrasen['pruefung/emailLektorStudentIn'] = 'Lo studente'; +$this->phrasen['pruefung/emailLektorHatSichZurPruefung'] = 'si è iscritto all’appello d’esame'; +$this->phrasen['pruefung/emailLektorAm'] = 'del'; +$this->phrasen['pruefung/emailLektorVon'] = 'dalle'; +$this->phrasen['pruefung/emailLektorUhrBis'] = 'alle'; +$this->phrasen['pruefung/emailLektorUhrAngemeldet'] = '.'; ?> diff --git a/locale/it-IT/semesterplan.php b/locale/it-IT/semesterplan.php index 1d4006295..d9d27eccf 100755 --- a/locale/it-IT/semesterplan.php +++ b/locale/it-IT/semesterplan.php @@ -1,19 +1,19 @@ phrasen['semesterplan/bitteZuerstDateiAuswaehlen']='Bitte zuerst eine Datei auswählen'; -$this->phrasen['semesterplan/dateiKonnteNichtGefundenWerden']='Die Datei %s%s konnte nicht gefunden werden'; -$this->phrasen['semesterplan/dateinameNurBuchstaben']='Der Dateiname darf nur Buchstaben und Zahlen enthalten'; -$this->phrasen['semesterplan/dateitypIstNichtErlaubt']='Dieser Dateityp ist nicht erlaubt'; +$this->phrasen['semesterplan/bitteZuerstDateiAuswaehlen']='Per favore selezionare un file.'; +$this->phrasen['semesterplan/dateiKonnteNichtGefundenWerden']='Il file %s%s non è stato trovato.'; +$this->phrasen['semesterplan/dateinameNurBuchstaben']='Il nome del file può contenere solo lettere e numeri.'; +$this->phrasen['semesterplan/dateitypIstNichtErlaubt']='Questo tipo di file non è supportato.'; $this->phrasen['semesterplan/erstellenSieIhrenSemesterplan']='Compilare il calendario.'; $this->phrasen['semesterplan/fehlerBeiDerParameteruebergabe']='errore di trasmissione dei parametri'; -$this->phrasen['semesterplan/fehlerBeimLadenDerLv']='errore di caricamento della LV'; +$this->phrasen['semesterplan/fehlerBeimLadenDerLv']='errore di caricamento del corso'; $this->phrasen['semesterplan/fehlerBeimLadenDesStudienganges']='errore di caricamento del corso di studi'; -$this->phrasen['semesterplan/fehlerBeimUpload']='errore in sede di upload! Si prega di riprovare '; +$this->phrasen['semesterplan/fehlerBeimUpload']='Errore durante l’upload. Si prega di riprovare.'; $this->phrasen['semesterplan/fertig']='Il calendario è ora pubblicato.'; -$this->phrasen['semesterplan/fileErfolgreichHochgeladen']='Das File wurde erfolgreich hochgeladen'; -$this->phrasen['semesterplan/inMSWord']='Su Word basta anadre su "File">>"Salva come pagina web".'; -$this->phrasen['semesterplan/ladenSieDieDateiHoch']='Caricare il file andando su Upload.'; +$this->phrasen['semesterplan/fileErfolgreichHochgeladen']='File caricato con successo.'; +$this->phrasen['semesterplan/inMSWord']='Su Word basta andare su "File">>"Salva come pagina web".'; +$this->phrasen['semesterplan/ladenSieDieDateiHoch']='Caricare il file andando su "Upload".'; $this->phrasen['semesterplan/oeffnenSieDieGespeicherteDatei']='Aprire il file doc con un programma di elaborazione testo (es: MS Word, OpenOffice) o il file html con un editor dedicato.'; -$this->phrasen['semesterplan/ordnerinhalt']='Ordnerinhalt'; +$this->phrasen['semesterplan/ordnerinhalt']='Contenuto cartella'; $this->phrasen['semesterplan/speichernSieDasDokument']='Salvare il file come pagina web (in formato html) con il nome "index.html".'; $this->phrasen['semesterplan/speichernSieDieVorlage']='Salvare lo schema (in formato doc o html) sul proprio computer.'; $this->phrasen['semesterplan/ErstellungDesSemesterplans']='Pubblicazione del calendario del corso'; diff --git a/locale/it-IT/tools.php b/locale/it-IT/tools.php index b4a4ddf9b..8086b8bcd 100755 --- a/locale/it-IT/tools.php +++ b/locale/it-IT/tools.php @@ -23,7 +23,7 @@ $this->phrasen['tools/buchungstext']='Descrizione'; $this->phrasen['tools/content']=''; $this->phrasen['tools/dasAmpelsystemIstEinErinnerungsystem']=''; $this->phrasen['tools/datei']=''; -$this->phrasen['tools/dokumente']='Documenti'; +$this->phrasen['tools/dokumente']='Dichiarazione sostitutiva di certificazione'; $this->phrasen['tools/einzelanwendung']=''; $this->phrasen['tools/esWurdenKeineErgebnisseGefunden']='impossibile trovare risultati'; $this->phrasen['tools/esWurdenMehrAlsXDokumenteGefunden']='trovate più di 40 documenti corrispondenti alla ricerca. Si prega di specificare ulteriormente la ricerca'; @@ -31,7 +31,7 @@ $this->phrasen['tools/esWurdenMehrAlsXInhalteGefunden']='trovate più di 20 pers $this->phrasen['tools/esWurdenMehrAlsXPersonenGefunden']='trovate più di 20 persone corrispondenti alla ricerca. Si prega di specificare ulteriormente la ricerca'; $this->phrasen['tools/fehlerBeimAuslesenDerNoten']='errore di lettura dei voti'; $this->phrasen['tools/fehlerBeimLesenDerDatei']='errore di lettura del file'; -$this->phrasen['tools/inskriptionsbestaetigung']='Certificato d\'iscrizione'; +$this->phrasen['tools/inskriptionsbestaetigung']='Dichiarazione d\'iscrizione'; $this->phrasen['tools/keineDatenGefunden']=''; $this->phrasen['tools/keineZahlungenVorhanden']=''; $this->phrasen['tools/leistungsbeurteilung']=''; @@ -39,7 +39,7 @@ $this->phrasen['tools/maxPersonen']=''; $this->phrasen['tools/mussAlsStudentEingeloggtSein']=''; $this->phrasen['tools/naehereInformationenfindenSieUnter']=''; $this->phrasen['tools/nichtZugeteilt']=''; -$this->phrasen['tools/nochKeineBeurteilungEingetragen']='non è stata inserita ancora valutazione alcuna'; +$this->phrasen['tools/nochKeineBeurteilungEingetragen']='Non è stata inserita alcuna valutazione per il semestre.'; $this->phrasen['tools/offen']='rata da saldare'; $this->phrasen['tools/reservieren']=''; $this->phrasen['tools/softwarepaket']=''; From 8ef0f07336724f78c13f04aec416c0804c9f359f Mon Sep 17 00:00:00 2001 From: oesi Date: Fri, 6 May 2016 13:53:23 +0200 Subject: [PATCH 011/114] Beim Laden von Adressen werden Zustelladressen zuerst geliefert --- include/adresse.class.php | 1 + 1 file changed, 1 insertion(+) diff --git a/include/adresse.class.php b/include/adresse.class.php index 247e175f3..6fdc3034c 100644 --- a/include/adresse.class.php +++ b/include/adresse.class.php @@ -129,6 +129,7 @@ class adresse extends basis_db //Lesen der Daten aus der Datenbank $qry = "SELECT * FROM public.tbl_adresse WHERE person_id=".$this->db_add_param($pers_id, FHC_INTEGER, false); + $qry.=" ORDER BY zustelladresse DESC"; if(!$this->db_query($qry)) { From 951986bd51124da078e3c2ff4ab8c427f2e599b5 Mon Sep 17 00:00:00 2001 From: oesi Date: Wed, 11 May 2016 06:45:21 +0200 Subject: [PATCH 012/114] =?UTF-8?q?=C3=9Cbersichtsseite=20=C3=BCber=20die?= =?UTF-8?q?=20G=C3=BCltigkeit=20von=20Studienordnungen/Studienpl=C3=A4nen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- include/studienplan.class.php | 21 ++-- vilesci/lehre/studienplan_gueltigkeit.php | 131 ++++++++++++++++++++++ 2 files changed, 143 insertions(+), 9 deletions(-) create mode 100644 vilesci/lehre/studienplan_gueltigkeit.php diff --git a/include/studienplan.class.php b/include/studienplan.class.php index b34bae50b..e73be4b91 100644 --- a/include/studienplan.class.php +++ b/include/studienplan.class.php @@ -696,29 +696,32 @@ class studienplan extends basis_db /** * Holt die aktiven Studienplaene eines Studiensemester / Ausbildungssemesters - * @param studiensemester_kurzbz - * @param $ausbuldungssemester - * @param $orgform_kurzbz + * @param $studiengang_kz + * @param $studiensemester_kurzbz optional + * @param $ausbildungssemester optional + * @param $orgform_kurzbz optional */ - function getStudienplaeneFromSem($studiengang_kz, $studiensemester_kurzbz, $ausbildungssemester="", $orgform_kurzbz = "") + function getStudienplaeneFromSem($studiengang_kz, $studiensemester_kurzbz = '', $ausbildungssemester = '', $orgform_kurzbz = '') { $qry = "SELECT - * + tbl_studienplan.*, tbl_studienplan_semester.semester, tbl_studienplan_semester.studiensemester_kurzbz FROM lehre.tbl_studienplan JOIN lehre.tbl_studienordnung USING(studienordnung_id) JOIN lehre.tbl_studienplan_semester USING(studienplan_id) WHERE tbl_studienplan.aktiv - AND tbl_studienordnung.studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER)." - AND tbl_studienplan_semester.studiensemester_kurzbz = ".$this->db_add_param($studiensemester_kurzbz); + AND tbl_studienordnung.studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER); + + if($studiensemester_kurzbz != '') + $qry .= " AND tbl_studienplan_semester.studiensemester_kurzbz = ".$this->db_add_param($studiensemester_kurzbz); if($ausbildungssemester!='') - $qry.=" AND tbl_studienplan_semester.semester=".$this->db_add_param($ausbildungssemester); + $qry .= " AND tbl_studienplan_semester.semester=".$this->db_add_param($ausbildungssemester); if($orgform_kurzbz!='') { - $qry.=" AND orgform_kurzbz=".$this->db_add_param($orgform_kurzbz); + $qry .= " AND orgform_kurzbz=".$this->db_add_param($orgform_kurzbz); } diff --git a/vilesci/lehre/studienplan_gueltigkeit.php b/vilesci/lehre/studienplan_gueltigkeit.php new file mode 100644 index 000000000..8a506bf71 --- /dev/null +++ b/vilesci/lehre/studienplan_gueltigkeit.php @@ -0,0 +1,131 @@ +getBerechtigungen($user); + +if(!$rechte->isBerechtigt('assistenz', null, 'suid')) + die('keine Berechtigung für diese Seite!'); + +$studiengang_kz = isset($_GET['studiengang_kz'])?$_GET['studiengang_kz']:''; +$db = new basis_db(); + +echo ' + + + + '; +include('../../include/meta/jquery.php'); +include('../../include/meta/jquery-tablesorter.php'); + +echo ' + Studienplan Übersicht + + + +

Studienplan Gültigkeit

+
+ + +
'; + +$max_semester=0; +if($studiengang_kz!='') +{ + $studienplan = new studienplan(); + $studienplan->getStudienplaeneFromSem($studiengang_kz); + + foreach($studienplan->result as $row) + { + if($max_semester < $row->semester) + $max_semester = $row->semester; + $gueltigkeit[$row->studiensemester_kurzbz][$row->semester][]=$row->bezeichnung; + } +} + +$studiensemester = new studiensemester(); +$studiensemester->getAll(); + +echo ' + + + '; + +for($i = 1; $i <= $max_semester; $i++) + echo ''; +echo ' + +'; +$start=0; +foreach($studiensemester->studiensemester as $row_stsem) +{ + + $row= ' + '; + + for($i = 1; $i <= $max_semester; $i++) + { + $row .= ''; + } + $row .= ''; + + if($start) + echo $row; +} +echo '
'.$i.'. Semester
'.$row_stsem->studiensemester_kurzbz.''; + if(isset($gueltigkeit[$row_stsem->studiensemester_kurzbz][$i]) && is_array($gueltigkeit[$row_stsem->studiensemester_kurzbz][$i])) + { + foreach($gueltigkeit[$row_stsem->studiensemester_kurzbz][$i] as $row_studienplan) + { + $start=true; + $row .= $row_studienplan.'
'; + } + } + $row .= '
'; +echo ' + +'; From d82ea3b9f4c7bf34ca0cf7e597692f18ba4eacc1 Mon Sep 17 00:00:00 2001 From: oesi Date: Wed, 11 May 2016 09:42:06 +0200 Subject: [PATCH 013/114] Added missing FK to table lehre.tbl_studienplan_lehrveranstaltung --- system/dbupdate_3.2.php | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/system/dbupdate_3.2.php b/system/dbupdate_3.2.php index 7de545457..b7c77cda1 100755 --- a/system/dbupdate_3.2.php +++ b/system/dbupdate_3.2.php @@ -1167,6 +1167,20 @@ if($result = $db->db_query("SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE } } +// Fehlender FK bei tbl_studienplan_lehrveranstaltung +if($result = $db->db_query("SELECT * FROM information_schema.table_constraints WHERE constraint_name='fk_studienplan_lehrveranstaltung_parent_id'")) +{ + if($db->db_num_rows($result)==0) + { + $qry = "ALTER TABLE lehre.tbl_studienplan_lehrveranstaltung ADD CONSTRAINT fk_studienplan_lehrveranstaltung_parent_id FOREIGN KEY (studienplan_lehrveranstaltung_id_parent) REFERENCES lehre.tbl_studienplan_lehrveranstaltung(studienplan_lehrveranstaltung_id) ON DELETE RESTRICT ON UPDATE CASCADE;"; + + if(!$db->db_query($qry)) + echo 'lehre.tbl_studienplan_lehrveranstaltung '.$db->db_last_error().'
'; + else + echo '
Fehlenden FK bei Tabelle lehre.tbl_studienplan_lehrveranstaltung.studienplan_lehrveranstaltung_id_parent gesetzt
'; + } +} + // *** Pruefung und hinzufuegen der neuen Attribute und Tabellen echo '

Pruefe Tabellen und Attribute!

'; From 6dab0aec8d86099a07517fd9c4a94f3a260cfcef Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Sat, 14 May 2016 11:16:00 +0200 Subject: [PATCH 014/114] Ital phrases --- .../lehre/pruefung/pruefungsbewertung.js.php | 300 ++++++++++++++++++ .../lehre/pruefung/pruefungsbewertung.php | 2 +- locale/it-IT/anwesenheitsliste.php | 5 +- 3 files changed, 304 insertions(+), 3 deletions(-) create mode 100644 cis/private/lehre/pruefung/pruefungsbewertung.js.php diff --git a/cis/private/lehre/pruefung/pruefungsbewertung.js.php b/cis/private/lehre/pruefung/pruefungsbewertung.js.php new file mode 100644 index 000000000..e6369eb97 --- /dev/null +++ b/cis/private/lehre/pruefung/pruefungsbewertung.js.php @@ -0,0 +1,300 @@ + + */ + + +require_once('../../../../config/cis.config.inc.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); + +?> + + +/** + * Error-Behandlung bei Ajax Requests + */ + + +function loadError(xhr, textStatus, errorThrown) +{ + if(xhr.status==200) + alert('Fehler:'+xhr.responseText); + else + alert('Fehler beim Laden der Daten. ErrorNr:'+xhr.status); +} + +/** + * Lädt alle Prüfungen eines Mitarbeiters + * @returns {undefined} + */ +function loadPruefungenMitarbeiter() +{ + var uid = $("#mitarbeiter_uid").val(); + $.ajax({ + dataType: 'json', + url: "./pruefungsbewertung.json.php", + type: "POST", + data: { + method: "getPruefungMitarbeiter", + mitarbeiter_uid: uid + }, + error: loadError + }).success(function(data){ + $("#pruefungen").find("h2").first().text("t('pruefung/pruefungPruefungenTitle'); ?> ("+uid+")"); + if(data.error === 'false') + { + var liste = ""; + data.result.forEach(function(e){ + liste += "
  • "+e.bezeichnung+"
      "; + e.pruefung.lehrveranstaltungen.forEach(function(d) + { + d.pruefung.termine.forEach(function(f){ + liste += "
    • "+convertDateTime(f.von)+"
    • "; + }); + }) + liste += "
    "; + }); + $("#pruefungenListe").html(liste); + } + else + { + $("#pruefungenListe").html(data.errormsg); + } + }); +} + +/** + * Lädt die Anmeldungen zu einer Prüfung + * @param {type} pruefungstermin_id ID des Prüfungstermins + * @param {type} lehrveranstaltung_id ID der Lehrveranstaltung + * @returns {undefined} + */ +function showTeilnehmer(pruefungstermin_id, lehrveranstaltung_id, lehrveranstaltung, datum) +{ + $("#modalOverlay").addClass("modalOverlay"); + $("#anmeldeDaten").empty(); + $("#anmeldungen").children("h2").text("Bewertungen zu "+lehrveranstaltung+" ("+datum+")"); + var noten = ""; + } + else + { + messageBox("message",data.errormsg, "red", "highlight", 1000); + } + }).complete(function(event, xhr, settings){ + var notenSelect = noten; + $.ajax({ + dataType: 'json', + url: "./pruefungsbewertung.json.php", + type: "POST", + data: { + method: "getAnmeldungenTermin", + pruefungstermin_id: pruefungstermin_id, + lehrveranstaltung_id: lehrveranstaltung_id + }, + error: loadError + }).success(function(data){ + var entry = ""; + if(data.error === "false") + { + data.result.forEach(function(d) + { + if(d.status_kurzbz === "bestaetigt") + { + var datum = d.von.split(" "); + if(d.pruefung.note===null) + { + entry = "
    "+d.student.vorname+" "+d.student.nachname+"
    "+notenSelect+"
    "; + } + else + { + entry = "
    "+d.student.vorname+" "+d.student.nachname+"
    "+notenSelect+"
    "; + } + $("#anmeldeDaten").append(entry); + if(d.pruefung.note!==null) + { + markAsSaved(document.getElementById(d.student.uid).firstChild); + $("#"+d.student.uid).find("select").val(d.pruefung.note); + } + else + { + markAsUnsaved(document.getElementById(d.student.uid).firstChild); + } + var t = $("#note_anmerkung_"+d.student.uid).parent().find('select').first().width(); + $("#note_anmerkung_"+d.student.uid).width(t); + } + }); + if(entry === "") + { + entry = "
    Keine Anmeldungen vorhanden.
    "; + $("#anmeldeDaten").html(entry); + } + } + else + { + entry = "
    "+data.errormsg+"
    "; + $("#anmeldeDaten").html(entry); + } + }).complete(function(event, xhr, settings){ + $("#modalOverlay").removeClass("modalOverlay"); + }); + }); +} + +/** + * Speichert eine Beurteilung + * @param {type} ele Element das die Funtkion aufruft + * @param {type} datum + * @param {type} pruefungsanmeldung_id ID der Anmeldung + * @param {type} pruefung_id ID der Prüfung + * @param {type} lehrveranstaltung_id ID der Lehrveranstaltung + * @returns {void} + */ +function saveBeurteilung(ele, datum, pruefungsanmeldung_id, pruefung_id, lehrveranstaltung_id) +{ + var student_uid = $(ele).parent().attr("id"); + var mitarbeiter_uid = $("#mitarbeiter_uid").val(); + var note = $(ele).parent().find("select").val(); + if((note === "null") || (note===null)) + { + messageBox("message", "Keine Note ausgewählt.", "red", "highlight", 1000); + return false; + } + var anmerkung = $("#note_anmerkung_"+student_uid).val(); + + $.ajax({ + dataType: 'json', + url: "./pruefungsbewertung.json.php", + type: "POST", + data: { + method: "saveBeurteilung", + pruefung_id: pruefung_id, + lehrveranstaltung_id: lehrveranstaltung_id, + student_uid: student_uid, + mitarbeiter_uid: mitarbeiter_uid, + note: note, + //TODO Datum der Prüfung oder der Beurteilung????? + datum: datum, + anmerkung: anmerkung, + pruefungsanmeldung_id: pruefungsanmeldung_id + }, + error: loadError + }).success(function(data){ + if(data.error != 'true') + { + markAsSaved(ele); + $(ele).attr("onclick", "updateBeurteilung(this,\""+data.result+"\")"); + } + else + { + messageBox("message",data.errormsg, "red", "highlight", 1000); + $(ele).parent().find("select").val(null); + } + }).complete(function(event, xhr, settings){ + + }); +} + +/** + * Aktualisiert eine Beurteilung + * @param {type} ele Element das die Funtkion aufruft + * @param {type} pruefung_id ID der Prüfung + * @returns {undefined} + */ +function updateBeurteilung(ele, pruefung_id) +{ + var student_uid = $(ele).parent().attr("id"); + var mitarbeiter_uid = $("#mitarbeiter_uid").val(); + var note = $(ele).parent().find("select").val(); + var anmerkung = $("#note_anmerkung_"+student_uid).val(); + if((note === "null") || (note===null)) + { + messageBox("message", "Keine Note ausgewählt.", "red", "highlight", 1000); + return false; + } + $.ajax({ + dataType: 'json', + url: "./pruefungsbewertung.json.php", + type: "POST", + data: { + method: "updateBeurteilung", + pruefung_id: pruefung_id, + note: note, + anmerkung: anmerkung + }, + error: loadError + }).success(function(data){ + if(data.error != 'true') + { + markAsSaved(ele); + } + else + { + messageBox("message",data.errormsg, "red", "highlight", 1000); + } + + + }).complete(function(event, xhr, settings){ + + }); +} + +/** + * Markiert einen Datensatz als gespeichert + * @param {type} ele Element das die Funtkion aufruft + * @returns {undefined} + */ +function markAsSaved(ele) +{ + $(ele).parent().removeClass("unsaved"); + $(ele).parent().addClass("saved"); +} + +/** + * Markiert einen Datensatz als ungespeichert + * @param {type} ele Element das die Funtkion aufruft + * @returns {undefined} + */ +function markAsUnsaved(ele) +{ + $(ele).parent().removeClass("saved"); + $(ele).parent().addClass("unsaved"); +} diff --git a/cis/private/lehre/pruefung/pruefungsbewertung.php b/cis/private/lehre/pruefung/pruefungsbewertung.php index 28894e13c..7137e0a35 100755 --- a/cis/private/lehre/pruefung/pruefungsbewertung.php +++ b/cis/private/lehre/pruefung/pruefungsbewertung.php @@ -62,7 +62,7 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA - + diff --git a/locale/it-IT/anwesenheitsliste.php b/locale/it-IT/anwesenheitsliste.php index dc11dec87..6e0a0ca7a 100755 --- a/locale/it-IT/anwesenheitsliste.php +++ b/locale/it-IT/anwesenheitsliste.php @@ -2,8 +2,9 @@ $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/anwesenheitslisten']='elenco studenti'; +$this->phrasen['anwesenheitsliste/anwesenheitslistenMitBildern']='elenchi +studenti 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'; From 2bc42d7903bd52b51bd7bb70c57c7f18af1a802d Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Sat, 14 May 2016 13:51:53 +0200 Subject: [PATCH 015/114] ital --- locale/it-IT/anwesenheitsliste.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/locale/it-IT/anwesenheitsliste.php b/locale/it-IT/anwesenheitsliste.php index 6e0a0ca7a..09feca96d 100755 --- a/locale/it-IT/anwesenheitsliste.php +++ b/locale/it-IT/anwesenheitsliste.php @@ -3,8 +3,7 @@ $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 studenti'; -$this->phrasen['anwesenheitsliste/anwesenheitslistenMitBildern']='elenchi -studenti con foto'; +$this->phrasen['anwesenheitsliste/anwesenheitslistenMitBildern']='elenco studenti 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'; From 15345588add5b9692e00c939ad5c8f9bf960420e Mon Sep 17 00:00:00 2001 From: oesi Date: Tue, 17 May 2016 13:30:57 +0200 Subject: [PATCH 016/114] =?UTF-8?q?E-Mailversand=20bei=20Reihungstests=20b?= =?UTF-8?q?er=C3=BCcksichtigt=20das=20EMAIL-Adresstrennzeichen=20aus=20dem?= =?UTF-8?q?=20Config?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- vilesci/stammdaten/reihungstestverwaltung.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vilesci/stammdaten/reihungstestverwaltung.php b/vilesci/stammdaten/reihungstestverwaltung.php index 81baa7382..7f7a0d657 100644 --- a/vilesci/stammdaten/reihungstestverwaltung.php +++ b/vilesci/stammdaten/reihungstestverwaltung.php @@ -616,7 +616,7 @@ if($reihungstest_id!='')
  • '.($rtergebnis!=0 && $row->rt_punkte1==''?'übertragen':$row->rt_punkte1).'
    "; echo "Mail an alle senden"; From 978ce062a2e1c6dc396da721be5727d1a536e6b5 Mon Sep 17 00:00:00 2001 From: oesi Date: Tue, 17 May 2016 14:18:12 +0200 Subject: [PATCH 017/114] Problem beim Download behoben wenn keine APZ eingetragen ist --- vilesci/personen/aliquote_reduktion.json.php | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/vilesci/personen/aliquote_reduktion.json.php b/vilesci/personen/aliquote_reduktion.json.php index 28eeae207..d7e50134a 100644 --- a/vilesci/personen/aliquote_reduktion.json.php +++ b/vilesci/personen/aliquote_reduktion.json.php @@ -211,9 +211,9 @@ switch($action) $maxlength[$spalte]=mb_strlen(""); } - $worksheet->writeNumber($zeile,++$spalte, $s->seqPlace); - if(mb_strlen($s->seqPlace)>$maxlength[$spalte]) - $maxlength[$spalte]=mb_strlen($s->seqPlace); + $worksheet->writeNumber($zeile,++$spalte, (isset($s->seqPlace)?$s->seqPlace:'')); + if(mb_strlen((isset($s->seqPlace)?$s->seqPlace:''))>$maxlength[$spalte]) + $maxlength[$spalte]=mb_strlen((isset($s->seqPlace)?$s->seqPlace:'')); if(isset($s->rt_gesamtpunkte) && $s->rt_gesamtpunkte) { @@ -272,7 +272,10 @@ switch($action) function studentsSort($a, $b) { - return $a->seqPlace > $b->seqPlace; + if(isset($a->seqPlace)) + return $a->seqPlace > $b->seqPlace; + else + return false; } From 01f73e5d5744ed18de6121ea6eb10161953f74d2 Mon Sep 17 00:00:00 2001 From: Stefan Puraner Date: Wed, 18 May 2016 13:20:16 +0200 Subject: [PATCH 018/114] bugfix bei noten von kompatiblen faechern --- cis/private/profile/studienplan.php | 54 ++++++++++++++++++++--------- 1 file changed, 37 insertions(+), 17 deletions(-) diff --git a/cis/private/profile/studienplan.php b/cis/private/profile/studienplan.php index 64d85dfdb..ed3ed7ada 100755 --- a/cis/private/profile/studienplan.php +++ b/cis/private/profile/studienplan.php @@ -467,23 +467,43 @@ function drawTree($tree, $depth) //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 ''.$p->t('studienplan/abgeschlossen').''; - else - echo ''.$p->t('studienplan/negativ').''; - } - } + $positiv = false; + $found = false; + $i = 0; + while(!$found && $i < count($kompatibleLVs)) + { + for($i; $i < (count($kompatibleLVs)); $i++) + { + if(isset($noten_arr[$kompatibleLVs[$i]])) + { + $positiv=false; + foreach($noten_arr[$kompatibleLVs[$i]] as $note) + { + if($note_pruef_arr[$note]->positiv) + $positiv=true; + } + + $found = true; + } + } + $i++; + } + if($found) + { + if($positiv) + echo ''.$p->t('studienplan/abgeschlossen').''; + else + echo ''.$p->t('studienplan/negativ').''; + } + elseif(!$found) + { + if($abgeschlossen) + echo ''.$p->t('studienplan/regelabgeschlossen'),''; + elseif(!$row_tree->stpllv_pflicht) + echo ''.$p->t('studienplan/optional').''; + else + echo ''.$p->t('studienplan/offen').''; + } } else { From 5f540c20678d135e21c7bff4967b4d575e2da865 Mon Sep 17 00:00:00 2001 From: oesi Date: Wed, 18 May 2016 15:03:38 +0200 Subject: [PATCH 019/114] =?UTF-8?q?Plugin=20f=C3=BCr=20Moodle=203.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- system/moodlePlugin/fhcompletews30/README | 23 ++ .../fhcompletews30/db/services.php | 53 +++ .../fhcompletews30/externallib.php | 371 ++++++++++++++++++ .../lang/en/local_fhcompletews.php | 25 ++ .../moodlePlugin/fhcompletews30/version.php | 25 ++ 5 files changed, 497 insertions(+) create mode 100644 system/moodlePlugin/fhcompletews30/README create mode 100644 system/moodlePlugin/fhcompletews30/db/services.php create mode 100644 system/moodlePlugin/fhcompletews30/externallib.php create mode 100644 system/moodlePlugin/fhcompletews30/lang/en/local_fhcompletews.php create mode 100644 system/moodlePlugin/fhcompletews30/version.php diff --git a/system/moodlePlugin/fhcompletews30/README b/system/moodlePlugin/fhcompletews30/README new file mode 100644 index 000000000..c18543606 --- /dev/null +++ b/system/moodlePlugin/fhcompletews30/README @@ -0,0 +1,23 @@ +FHComplete Moodle 3.0 Webservice Plugin +======================================= + +Mit diesem Plugin wird Moodle 3.0 um zusätzliche Webservices erweitert +die für die Syncronisation mit FHComplete benötigt werden. + + +Installation +============ + +- ) Zur Installation des Plugins muss der gesamte Ordner fhcompletews in den + Ordner local der Moodleinstallation kopiert werden. + + zB: cp /var/www/fhcomplete/system/moodlePlugin/fhcompletews /var/www/moodle/local/ + +- ) Danach muss die Moodle Startseite aufgerufen werden. + Das neue Plugin wird automatisch erkannt uns installiert. + +Sonstiges +========= + +Falls Änderungen am Plugin durchgeführt werden, muss in version.php die Versionsnummer erhöht werden +damit Moodle die Änderung an dem Plugin erkennt und ein Update durchführt. diff --git a/system/moodlePlugin/fhcompletews30/db/services.php b/system/moodlePlugin/fhcompletews30/db/services.php new file mode 100644 index 000000000..f272cbb7a --- /dev/null +++ b/system/moodlePlugin/fhcompletews30/db/services.php @@ -0,0 +1,53 @@ +. + +/** + * Web service local plugin template external functions and service definitions. + * + * @package localwstemplate + * @copyright 2011 Jerome Mouneyrac + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +// We defined the web service functions to install. +$functions = array( + 'fhcomplete_get_course_grades' => array( + 'classname' => 'local_fhcompletews_external', + 'methodname' => 'get_course_grades', + 'classpath' => 'local/fhcompletews/externallib.php', + 'description' => 'Get Grades of a course', + 'type' => 'read', + 'capabilities'=> 'moodle/course:update,moodle/course:viewhiddencourses', + ), + + 'fhcomplete_courses_by_shortname' => array( + 'classname' => 'local_fhcompletews_external', + 'methodname' => 'get_courses_by_shortname', + 'classpath' => 'local/fhcompletews/externallib.php', + 'description' => 'Get course contents by Shortname', + 'type' => 'read', + 'capabilities'=> 'moodle/course:update,moodle/course:viewhiddencourses', + ), + + 'fhcomplete_user_get_users' => array( + 'classname' => 'core_user_external', + 'methodname' => 'get_users', + 'classpath' => 'user/externallib.php', + 'description' => 'get Users by Criteria', + 'type' => 'read', + 'capabilities'=> 'moodle/user:viewdetails, moodle/user:viewhiddendetails, moodle/course:useremail, moodle/user:update', + ), + +); diff --git a/system/moodlePlugin/fhcompletews30/externallib.php b/system/moodlePlugin/fhcompletews30/externallib.php new file mode 100644 index 000000000..000607454 --- /dev/null +++ b/system/moodlePlugin/fhcompletews30/externallib.php @@ -0,0 +1,371 @@ +. + +/** + * External Web Service Template + * + * @package localwstemplate + * @copyright 2011 Moodle Pty Ltd (http://moodle.com) + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +require_once($CFG->libdir . "/externallib.php"); + +class local_fhcompletews_external extends external_api +{ + +/************************************************** + * Webservice get_course_grades + * + * Laedt die Noten eines Kurses + **************************************************/ + public static function get_course_grades_parameters() + { + return new external_function_parameters( + array( + 'courseid' => new external_value(PARAM_INT, 'Moodle CourseID'), + 'type' => new external_value(PARAM_INT,'Type 1=Punkte, 2=Prozent, 3=Endnote lt Skala') + ), 'Get Course Grades' + ); + } + + /** + * Get course Grades + * @param int courseid + * @return array + */ + public static function get_course_grades($courseid, $type) + { + global $CFG, $DB; + require_once($CFG->dirroot . "/course/lib.php"); + require_once($CFG->dirroot.'/grade/export/lib.php'); + + //validate parameter + $params = self::validate_parameters(self::get_course_grades_parameters(), + array('courseid' => $courseid, 'type'=>$type)); + + $notenart = $type; + //$notenart=2; // 1=Punkte; 2=Prozent; 3=Endnote nach Skala + $gui=array(); + $final_id=''; + $data = array(); + + // Kursdaten Laden + if (!$course = $DB->get_record('course', array('id'=>$courseid))) + { + throw new moodle_exception('Course not found', '', '', null, 'The course ' . $courseid . ' is not found'); + return false; + } + + $id=$course->id; + $kursname=$course->fullname; + $shortname=$course->shortname; + + //ODS Notenexport starten + require_login($course); + $context = get_context_instance(CONTEXT_COURSE, $courseid); + require_once($CFG->dirroot.'/grade/export/ods/grade_export_ods.php'); + + $moodle28=false; + + try + { + $method = new ReflectionMethod('grade_export_ods','__construct'); + + if(count($method->getParameters())==3) + $moodle28=true; + } + catch(ReflectionException $e) + { + } + + if($moodle28) + { + //ab Moodle 2.8 hat grade_export_ods nur noch 3 Parameter + $formdata = new stdClass(); + $formdata->display=$notenart; + $formdata->itemids=0; + $formdata->decimals=2; + $formdata->export_feedback=false; + if (!$export = new grade_export_ods($course, 0, $formdata)) + { + throw new moodle_exception('Fehler', '', '', null, "Moodle-Kurs ".$id." ".$shortname." - keine Export Information gefunden"); + return false; + } + } + else + { + if (!$export = new grade_export_ods($course, 0, 0, false, false, $notenart, 2)) + { + throw new moodle_exception('Fehler', '', '', null, "Moodle-Kurs ".$id." ".$shortname." - keine Export Information gefunden"); + return false; + } + } + $grad =$export->columns; + + // Im Export sind die Noten fuer alle Abgaben, Quiz, etc enthalten + // Wir brauchen hier nur die Gesamtnote fuer die ganzen Kurs + foreach ($export->columns as $key=>$grade_item) + { + // Gesamtnote hat den itemtype "course" + if($grade_item->itemtype=='course') + { + $final_id=$key; + $finalitem = $grade_item; + break; + } + } + + if($final_id=='') + { + throw new moodle_exception('Fehler', '', '', null,"Moodle-Kurs ".$id." ".$shortname." - keine Endnote gefunden"); + return false; + } + + // Liste mit allen Studierenden des Kurses durchlaufen + $geub = new grade_export_update_buffer(); + $gui = new graded_users_iterator($export->course, array($final_id=>$finalitem), $export->groupid); //$export->columns + + $gui->init(); + $kursgrad =array(); + + while ($userdata = $gui->next_user()) + { + $user_item=array(); + $user = $userdata->user; + $user_item['vorname']=$user->firstname; + $user_item['nachname']=$user->lastname; + $user_item['idnummer']=$user->idnumber; + $user_item['username']=$user->username; + + // Aus den vorhanden Noten wird die Endnote fuer den Kurs herausgesucht + if(isset($userdata->grades[$final_id])) + { + $gradestr = $export->format_grade($userdata->grades[$final_id]); + $user_item['note']=$gradestr; + + // Wenn Prozent dann Prozentzeichen entfernen + if(strpos($user_item['note'],'%')!==false) + $user_item['note']=trim(str_replace('%','',$user_item['note'])); + + // nur zurueckliefern wenn eine Note gefunden wurde und diese nicht '-' ist + if($user_item['note']!='-') + $data[]=$user_item; + } + } + + $gui->close(); + $geub->close(); + + if (count($data)==0) + { + throw new moodle_exception('Fehler', '', '', null,"Moodle-Kurs ".$id." ".$shortname." - keine Kurs-Noten Informationen gefunden "); + return false; + } + + return $data; + } + + /** + * Returns description of method result value + * @return external_description + */ + public static function get_course_grades_returns() + { + return new external_multiple_structure( + new external_single_structure( + array( + 'vorname' => new external_value(PARAM_TEXT, 'vorname'), + 'nachname' => new external_value(PARAM_TEXT, 'nachname'), + 'idnummer' => new external_value(PARAM_TEXT, 'idnummer'), + 'username' => new external_value(PARAM_TEXT, 'username'), + 'note' => new external_value(PARAM_TEXT, 'note'), + ), 'course' + ) + ); + } + +/************************************************** + * Webservice get_courses_by_shortname + * + * Laedt Kurse anhand der Kurzbezeichnung + **************************************************/ + public static function get_courses_by_shortname_parameters() + { + return new external_function_parameters( + array('options' => new external_single_structure( + array('shortnames' => new external_multiple_structure( + new external_value(PARAM_RAW, 'Short Name') + , 'List of short names. If empty return all courses + except front page course.', + VALUE_OPTIONAL) + ), 'options - operator OR is used', VALUE_DEFAULT, array()) + ) + ); + } + + /** + * Get courses + * @param array $options + * @return array + */ + public static function get_courses_by_shortname($options) + { + global $CFG, $DB; + require_once($CFG->dirroot . "/course/lib.php"); + + //validate parameter + $params = self::validate_parameters(self::get_courses_by_shortname_parameters(), + array('options' => $options)); + + //retrieve courses + if (!key_exists('shortnames', $params['options']) + or empty($params['options']['shortnames'])) { + $courses = $DB->get_records('course'); + } else { + $courses = $DB->get_records_list('course', 'shortname', $params['options']['shortnames']); + } + + //create return value + $coursesinfo = array(); + foreach ($courses as $course) + { + + // now security checks + $context = get_context_instance(CONTEXT_COURSE, $course->id); + try + { + self::validate_context($context); + } + catch (Exception $e) + { + $exceptionparam = new stdClass(); + $exceptionparam->message = $e->getMessage(); + $exceptionparam->shortname = $course->shortname; + throw new moodle_exception( + get_string('errorcoursecontextnotvalid', 'webservice', $exceptionparam)); + } + require_capability('moodle/course:view', $context); + + $courseinfo = array(); + $courseinfo['id'] = $course->id; + $courseinfo['fullname'] = $course->fullname; + $courseinfo['shortname'] = $course->shortname; + $courseinfo['categoryid'] = $course->category; + $courseinfo['summary'] = $course->summary; + $courseinfo['summaryformat'] = $course->summaryformat; + $courseinfo['format'] = $course->format; + $courseinfo['startdate'] = $course->startdate; + $courseinfo['numsections'] = $course->numsections; + + //some field should be returned only if the user has update permission + $courseadmin = has_capability('moodle/course:update', $context); + if ($courseadmin) + { + $courseinfo['categorysortorder'] = $course->sortorder; + $courseinfo['idnumber'] = $course->idnumber; + $courseinfo['showgrades'] = $course->showgrades; + $courseinfo['showreports'] = $course->showreports; + $courseinfo['newsitems'] = $course->newsitems; + $courseinfo['visible'] = $course->visible; + $courseinfo['maxbytes'] = $course->maxbytes; + $courseinfo['hiddensections'] = $course->hiddensections; + $courseinfo['groupmode'] = $course->groupmode; + $courseinfo['groupmodeforce'] = $course->groupmodeforce; + $courseinfo['defaultgroupingid'] = $course->defaultgroupingid; + $courseinfo['lang'] = $course->lang; + $courseinfo['timecreated'] = $course->timecreated; + $courseinfo['timemodified'] = $course->timemodified; + $courseinfo['forcetheme'] = $course->theme; + $courseinfo['enablecompletion'] = $course->enablecompletion; + $courseinfo['completionstartonenrol'] = $course->completionstartonenrol; + $courseinfo['completionnotify'] = $course->completionnotify; + } + + if ($courseadmin or $course->visible + or has_capability('moodle/course:viewhiddencourses', $context)) + { + $coursesinfo[] = $courseinfo; + } + } + + return $coursesinfo; + } + + /** + * Returns description of method result value + * @return external_description + */ + public static function get_courses_by_shortname_returns() + { + return new external_multiple_structure( + new external_single_structure( + array( + 'id' => new external_value(PARAM_INT, 'course id'), + 'shortname' => new external_value(PARAM_TEXT, 'course short name'), + 'categoryid' => new external_value(PARAM_INT, 'category id'), + 'categorysortorder' => new external_value(PARAM_INT, + 'sort order into the category', VALUE_OPTIONAL), + 'fullname' => new external_value(PARAM_TEXT, 'full name'), + 'idnumber' => new external_value(PARAM_RAW, 'id number', VALUE_OPTIONAL), + 'summary' => new external_value(PARAM_RAW, 'summary'), + 'summaryformat' => new external_value(PARAM_INT, + 'the summary text Moodle format'), + 'format' => new external_value(PARAM_ALPHANUMEXT, + 'course format: weeks, topics, social, site,..'), + 'showgrades' => new external_value(PARAM_INT, + '1 if grades are shown, otherwise 0', VALUE_OPTIONAL), + 'newsitems' => new external_value(PARAM_INT, + 'number of recent items appearing on the course page', VALUE_OPTIONAL), + 'startdate' => new external_value(PARAM_INT, + 'timestamp when the course start'), + 'numsections' => new external_value(PARAM_INT, 'number of weeks/topics'), + 'maxbytes' => new external_value(PARAM_INT, + 'largest size of file that can be uploaded into the course', + VALUE_OPTIONAL), + 'showreports' => new external_value(PARAM_INT, + 'are activity report shown (yes = 1, no =0)', VALUE_OPTIONAL), + 'visible' => new external_value(PARAM_INT, + '1: available to student, 0:not available', VALUE_OPTIONAL), + 'hiddensections' => new external_value(PARAM_INT, + 'How the hidden sections in the course are displayed to students', + VALUE_OPTIONAL), + 'groupmode' => new external_value(PARAM_INT, 'no group, separate, visible', + VALUE_OPTIONAL), + 'groupmodeforce' => new external_value(PARAM_INT, '1: yes, 0: no', + VALUE_OPTIONAL), + 'defaultgroupingid' => new external_value(PARAM_INT, 'default grouping id', + VALUE_OPTIONAL), + 'timecreated' => new external_value(PARAM_INT, + 'timestamp when the course have been created', VALUE_OPTIONAL), + 'timemodified' => new external_value(PARAM_INT, + 'timestamp when the course have been modified', VALUE_OPTIONAL), + 'enablecompletion' => new external_value(PARAM_INT, + 'Enabled, control via completion and activity settings. Disbaled, + not shown in activity settings.', + VALUE_OPTIONAL), + 'completionstartonenrol' => new external_value(PARAM_INT, + '1: begin tracking a student\'s progress in course completion + after course enrolment. 0: does not', + VALUE_OPTIONAL), + 'completionnotify' => new external_value(PARAM_INT, + '1: yes 0: no', VALUE_OPTIONAL), + 'lang' => new external_value(PARAM_ALPHANUMEXT, + 'forced course language', VALUE_OPTIONAL), + 'forcetheme' => new external_value(PARAM_ALPHANUMEXT, + 'name of the force theme', VALUE_OPTIONAL), + ), 'course' + ) + ); + } +} diff --git a/system/moodlePlugin/fhcompletews30/lang/en/local_fhcompletews.php b/system/moodlePlugin/fhcompletews30/lang/en/local_fhcompletews.php new file mode 100644 index 000000000..4c72c54e4 --- /dev/null +++ b/system/moodlePlugin/fhcompletews30/lang/en/local_fhcompletews.php @@ -0,0 +1,25 @@ +. + +/** + * plugin related strings + * @package localfhcompletws + * @copyright 2011 Moodle Pty Ltd (http://moodle.com) + * @author Jerome Mouneyrac + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +$string['pluginname'] = 'FH-Complete Webservice Plugin'; diff --git a/system/moodlePlugin/fhcompletews30/version.php b/system/moodlePlugin/fhcompletews30/version.php new file mode 100644 index 000000000..6fd689c4e --- /dev/null +++ b/system/moodlePlugin/fhcompletews30/version.php @@ -0,0 +1,25 @@ +. + +$plugin->version = 2015020404; // The (date) version of this module + 2 extra digital for daily versions + // This version number is displayed into /admin/forms.php + // TODO: if ever this plugin get branched, the old branch number + // will not be updated to the current date but just incremented. We will + // need then a $plugin->release human friendly date. For the moment, we use + // display this version number with userdate (dev friendly) +$plugin->requires = 2013051400; // Requires this Moodle version - at least 2.5 +$plugin->cron = 0; +$plugin->release = '1.2 (Build: 2015020404)'; +$plugin->maturity = MATURITY_STABLE; +$plugin->component = 'local_fhcompletews'; From da7036d33a4dd52586a1d5a5ac424643b330a903 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Fri, 20 May 2016 10:25:32 +0200 Subject: [PATCH 020/114] Bugfix ExamReg, Geburtsort instudent xml, Hide Moodle-Icon if not used --- cis/private/lehre/pruefung/pruefung.js.php | 15 +++++++++---- include/tw/cis_menu_lv.inc.php | 25 ++++++++++++---------- rdf/student.rdf.php | 1 + 3 files changed, 26 insertions(+), 15 deletions(-) mode change 100644 => 100755 rdf/student.rdf.php diff --git a/cis/private/lehre/pruefung/pruefung.js.php b/cis/private/lehre/pruefung/pruefung.js.php index 939bb34ff..3ef462d05 100755 --- a/cis/private/lehre/pruefung/pruefung.js.php +++ b/cis/private/lehre/pruefung/pruefung.js.php @@ -968,10 +968,17 @@ function loadPruefungStudiengang(studiengang_kz, studiensemester) var liste = ""; data.result.forEach(function(e){ liste += ""; + try + { + e.pruefung[0].termine.forEach(function(d){ + liste += "
  • "+convertDateTime(d.von)+" "+convertDateTime(d.von, "time")+" - "+convertDateTime(d.bis, "time")+"
  • "; + }); + } + catch(err) + { + var errmsg = err.message; + } + liste += ""; }); $("#pruefungenListe").append(liste); } diff --git a/include/tw/cis_menu_lv.inc.php b/include/tw/cis_menu_lv.inc.php index d6f7da13b..ee516d123 100644 --- a/include/tw/cis_menu_lv.inc.php +++ b/include/tw/cis_menu_lv.inc.php @@ -439,17 +439,20 @@ function checkZeilenUmbruch() } } } - $menu[]=array - ( - 'id'=>'core_menu_moodle', - 'position'=>'70', - 'name'=>$p->t('lehre/moodle'), - 'icon'=>'../../../skin/images/button_moodle.png', - 'link'=>$link, - 'link_target'=>$link_target, - 'link_onclick'=>$link_onclick, - 'text'=>$text - ); + if (MOODLE) + { + $menu[]=array + ( + 'id'=>'core_menu_moodle', + 'position'=>'70', + 'name'=>$p->t('lehre/moodle'), + 'icon'=>'../../../skin/images/button_moodle.png', + 'link'=>$link, + 'link_target'=>$link_target, + 'link_onclick'=>$link_onclick, + 'text'=>$text + ); + } //Gesamtnote if($is_lector && ((!defined('CIS_LEHRVERANSTALTUNG_GESAMTNOTE_ANZEIGEN') || CIS_LEHRVERANSTALTUNG_GESAMTNOTE_ANZEIGEN) && $angemeldet)) diff --git a/rdf/student.rdf.php b/rdf/student.rdf.php old mode 100644 new mode 100755 index 8d4a8e4cd..842a9a36f --- a/rdf/student.rdf.php +++ b/rdf/student.rdf.php @@ -836,6 +836,7 @@ else matrikelnr.']]> convertISODate($student->gebdatum).']]> gebdatum.']]> + gebort.']]> verband.']]> gruppe.']]> From f5f56056caa5eda94018342e6b5f47e8e2cd8715 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Fri, 20 May 2016 11:28:02 +0200 Subject: [PATCH 021/114] Ital. phrase --- locale/it-IT/lehre.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/locale/it-IT/lehre.php b/locale/it-IT/lehre.php index 6fd29a5a5..1ae92d09a 100755 --- a/locale/it-IT/lehre.php +++ b/locale/it-IT/lehre.php @@ -15,7 +15,7 @@ $this->phrasen['lehre/kreuzerltool']='strumenti per esercitazioni
    (tool con c $this->phrasen['lehre/moodleMitKreuzerltoolInfo']='Moodle non può essere utilizzato in contemporanea con lo strumento per esercitazioni. Se si vuole utilizzare Moodle bisogna annullare l’uso dello strumento per esercitazioni'; $this->phrasen['lehre/lehrbeauftragter']='Docente incaricato'; $this->phrasen['lehre/lehrveranstaltungsinformation']='Informazioni corso'; -$this->phrasen['lehre/leistungsuebersicht']='Panoramica'; +$this->phrasen['lehre/leistungsuebersicht']='Panoramica per docenti'; $this->phrasen['lehre/lvInfoBearbeiten']='Modificare'; $this->phrasen['lehre/mail']='E-Mail agli studenti'; $this->phrasen['lehre/moodle']='Moodle'; From 103f3f10af34828bb82e58f1eb6164dceea9a676 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Fri, 20 May 2016 13:44:58 +0200 Subject: [PATCH 022/114] New Template for Milano --- content/pdfExport.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) mode change 100644 => 100755 content/pdfExport.php diff --git a/content/pdfExport.php b/content/pdfExport.php old mode 100644 new mode 100755 index 4cc56ea6e..460834f13 --- a/content/pdfExport.php +++ b/content/pdfExport.php @@ -185,7 +185,7 @@ if (isset($_GET['output']) && $_GET['output']!='pdf') else $output = $_GET['output']; } -else +else $output = 'pdf'; @@ -277,7 +277,7 @@ elseif(in_array($xsl,array('Ressource'))) exit; } } -elseif(in_array($xsl,array('Inskription','Studienerfolg','OutgoingLearning','OutgoingChangeL','LearningAgree','Zahlung'))) +elseif(in_array($xsl,array('Inskription','Studienerfolg','OutgoingLearning','OutgoingChangeL','LearningAgree','Zahlung','DichiaSost'))) { if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('assistenz')) { From 3997dd55cec58f52a2465d905b4130c943dbf78c Mon Sep 17 00:00:00 2001 From: oesi Date: Fri, 20 May 2016 14:54:29 +0200 Subject: [PATCH 023/114] Fehler behoben bei der Anzeige der Dokumente im Bewerbertool --- include/dokument.class.php | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/include/dokument.class.php b/include/dokument.class.php index db179180b..9b847ec17 100644 --- a/include/dokument.class.php +++ b/include/dokument.class.php @@ -450,7 +450,7 @@ class dokument extends basis_db /** * Liefert alle Dokumenttypen - * @param string $not_in Kommagetrennter String von dokument_kurzbz. Optional. Um bestimmte Dokumente (zB Zeugnis, welcher fix im Core vorhanden sein muss) auszuschließen. + * @param string $not_in Kommagetrennter String von dokument_kurzbz. Optional. Um bestimmte Dokumente (zB Zeugnis, welcher fix im Core vorhanden sein muss) auszuschließen. * @return true wenn ok false im Fehlerfall */ public function getAllDokumente($not_in='') @@ -459,13 +459,13 @@ class dokument extends basis_db $bezeichnung_mehrsprachig = $sprache->getSprachQuery('bezeichnung_mehrsprachig'); $dokumentbeschreibung_mehrsprachig = $sprache->getSprachQuery('dokumentbeschreibung_mehrsprachig'); $qry = "SELECT dokument_kurzbz, bezeichnung, $bezeichnung_mehrsprachig, $dokumentbeschreibung_mehrsprachig FROM public.tbl_dokument "; - + if($not_in!='') { $qry .= " WHERE dokument_kurzbz NOT IN (".$this->implode4SQL(explode(',', $not_in)).")"; } $qry .= " ORDER BY bezeichnung;"; - + if($this->db_query($qry)) { while($row = $this->db_fetch_object()) @@ -696,6 +696,8 @@ class dokument extends basis_db */ public function getBeschreibungenDokumente($studiengangs_kz, $dokument_kurzbz) { + if(count($studiengangs_kz)==0) + return true; $sprache = new sprache(); $dokumentbeschreibung_mehrsprachig = $sprache->getSprachQuery('dokumentbeschreibung_mehrsprachig'); $beschreibung_mehrsprachig = $sprache->getSprachQuery('beschreibung_mehrsprachig'); @@ -778,7 +780,7 @@ class dokument extends basis_db AND tbl_prestudent.person_id=".$this->db_add_param($person_id); if ($studiengang_kz!='') $qry .= " AND studiengang_kz IN (".$studiengang_kz.")"; - + if($result = $this->db_query($qry)) { if($this->db_num_rows($result)>0) From 80021520ce89731ff6e8dd3c96f6b2e3f214b9e1 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Sun, 22 May 2016 00:06:25 +0200 Subject: [PATCH 024/114] Ital phrase --- locale/it-IT/lvaliste.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/locale/it-IT/lvaliste.php b/locale/it-IT/lvaliste.php index d9b6f08e5..992e06726 100755 --- a/locale/it-IT/lvaliste.php +++ b/locale/it-IT/lvaliste.php @@ -14,7 +14,7 @@ $this->phrasen['lvaliste/keineDatensaetze']=''; $this->phrasen['lvaliste/koordination']=''; $this->phrasen['lvaliste/lehrfach']=''; $this->phrasen['lvaliste/lehrfachBezeichnung']=''; -$this->phrasen['lvaliste/lehrform']=''; +$this->phrasen['lvaliste/lehrform']='Forma'; $this->phrasen['lvaliste/lehrveranstaltungen']=''; $this->phrasen['lvaliste/lektor']=''; $this->phrasen['lvaliste/lvBezeichnung']=''; From b231caca132329ee5e306ea4387593e7cea8f0d7 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Sun, 22 May 2016 00:19:02 +0200 Subject: [PATCH 025/114] ital --- locale/it-IT/global.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/locale/it-IT/global.php b/locale/it-IT/global.php index 618c5b83b..b61422b7f 100755 --- a/locale/it-IT/global.php +++ b/locale/it-IT/global.php @@ -99,7 +99,7 @@ $this->phrasen['global/minute']='minuti'; $this->phrasen['global/mittwoch']='mercoledì'; $this->phrasen['global/montag']='lunedì'; $this->phrasen['global/nachname']='Cognome'; -$this->phrasen['global/name']='nome'; +$this->phrasen['global/name']='Nome'; $this->phrasen['global/nebenwohnsitz']='domicilio'; $this->phrasen['global/nein']='no'; $this->phrasen['global/neu']='nuovo'; From 029395372bdfac51da5832f6e3506e010b7e5939 Mon Sep 17 00:00:00 2001 From: kindlm Date: Mon, 23 May 2016 11:49:21 +0200 Subject: [PATCH 026/114] Add Param $studiensemester_kurzbz in function getAllForBewerbung --- include/studiengang.class.php | 33 ++++++++++++++++++++------------- 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/include/studiengang.class.php b/include/studiengang.class.php index b5e4b8650..00317acf8 100755 --- a/include/studiengang.class.php +++ b/include/studiengang.class.php @@ -232,18 +232,25 @@ class studiengang extends basis_db return true; } - /** - * Gibt alle Studiengaenge zurueck, fuer die man sich online bewerben kann - * @return boolean - */ - public function getAllForBewerbung() - { - $qry = 'SELECT DISTINCT studiengang_kz, typ, organisationseinheittyp_kurzbz, studiengangbezeichnung, standort, studiengangbezeichnung_englisch, lgartcode, tbl_lgartcode.bezeichnung ' - . 'FROM lehre.vw_studienplan ' - . 'LEFT JOIN bis.tbl_lgartcode USING (lgartcode) ' - . 'WHERE onlinebewerbung IS TRUE ' - . 'AND aktiv IS TRUE ' - . 'ORDER BY typ, studiengangbezeichnung, tbl_lgartcode.bezeichnung ASC'; + /** + * Gibt alle Studiengaenge zurueck, fuer die man sich online bewerben kann + * @param array $studiensemester_kurzbz default: null Array aus Studiensemestern fuer die man sich onlinebewerben kann + * @return boolean + */ + public function getAllForBewerbung($studiensemester_kurzbz_arr=null) + { + $qry = 'SELECT DISTINCT studiengang_kz, typ, organisationseinheittyp_kurzbz, studiengangbezeichnung, standort, studiengangbezeichnung_englisch, lgartcode, tbl_lgartcode.bezeichnung ' + . 'FROM lehre.vw_studienplan ' + . 'LEFT JOIN bis.tbl_lgartcode USING (lgartcode) ' + . 'WHERE onlinebewerbung IS TRUE ' + . 'AND aktiv IS TRUE '; + + /*if (!is_null($studiensemester_kurzbz_arr)) + { + $studiensemester_kurzbz_arr = $this->implode4SQL($studiensemester_kurzbz_arr); + $qry .= ' AND studiensemester_kurzbz IN('.$studiensemester_kurzbz_arr.')'; + }*/ + $qry .= ' ORDER BY typ, studiengangbezeichnung, tbl_lgartcode.bezeichnung ASC'; if(!$result = $this->db_query($qry)) { @@ -257,7 +264,7 @@ class studiengang extends basis_db } return true; - } + } /** * Laedt alle Studientypen in das Attribut studiengang_typ_array From fc932b464d0f98263db8b2a29045d3597c3e3c3a Mon Sep 17 00:00:00 2001 From: kindlm Date: Mon, 23 May 2016 11:49:57 +0200 Subject: [PATCH 027/114] SQL in function getStudienplaeneFromSem adaptiert --- include/studienplan.class.php | 38 +++++++++++++++++++++++++++++++++-- 1 file changed, 36 insertions(+), 2 deletions(-) diff --git a/include/studienplan.class.php b/include/studienplan.class.php index b34bae50b..9cc117d85 100644 --- a/include/studienplan.class.php +++ b/include/studienplan.class.php @@ -703,7 +703,42 @@ class studienplan extends basis_db function getStudienplaeneFromSem($studiengang_kz, $studiensemester_kurzbz, $ausbildungssemester="", $orgform_kurzbz = "") { $qry = "SELECT - * + studienplan_id, + studienordnung_id, + orgform_kurzbz, + tbl_studienplan.version AS version_studienplan, + tbl_studienplan.bezeichnung AS bezeichnung_studienplan, + regelstudiendauer, + sprache, + aktiv, + semesterwochen, + testtool_sprachwahl, + tbl_studienplan.insertamum AS insertamum_studienplan, + tbl_studienplan.insertvon AS insertvon_studienplan, + tbl_studienplan.updateamum AS updateamum_studienplan, + tbl_studienplan.updatevon AS updatevon_studienplan, + ects_stpl, + pflicht_sws, + pflicht_lvs, + studiengang_kz, + tbl_studienordnung.version AS version_studienordnung, + gueltigvon, + gueltigbis, + tbl_studienordnung.bezeichnung AS bezeichnung_studienordnung, + ects, + studiengangbezeichnung, + studiengangbezeichnung_englisch, + studiengangkurzbzlang, + akadgrad_id, + tbl_studienordnung.insertamum AS insertamum_studienordnung, + tbl_studienordnung.insertvon AS insertvon_studienordnung, + tbl_studienordnung.updateamum AS updateamum_studienordnung, + tbl_studienordnung.updatevon AS updatevon_studienordnung, + status_kurzbz, + standort_id, + studienplan_semester_id, + studiensemester_kurzbz, + semester FROM lehre.tbl_studienplan JOIN lehre.tbl_studienordnung USING(studienordnung_id) @@ -721,7 +756,6 @@ class studienplan extends basis_db $qry.=" AND orgform_kurzbz=".$this->db_add_param($orgform_kurzbz); } - $res = array(); if($result = $this->db_query($qry)) From 4bff558c1f81121aa54ae39421acc533617bb2ae Mon Sep 17 00:00:00 2001 From: kindlm Date: Mon, 23 May 2016 12:22:22 +0200 Subject: [PATCH 028/114] Versehentlich eingecheckt --- skin/tempus.css | 4 ---- 1 file changed, 4 deletions(-) diff --git a/skin/tempus.css b/skin/tempus.css index e8eb17994..67ddaaaf9 100644 --- a/skin/tempus.css +++ b/skin/tempus.css @@ -25,10 +25,6 @@ menubar,menupopup,toolbar,tabpanels,tabbox,iframe,box,hbox,vbox,tree,label,descr padding-left: 0px; padding-right: 0px; } -menubar -{ - background-color: #ff8040; -} menupopup { border: 1px solid black; From d899ccad083b6ee374a9247310d058a92b53bd66 Mon Sep 17 00:00:00 2001 From: kindlm Date: Mon, 23 May 2016 12:07:34 +0200 Subject: [PATCH 029/114] Merge branch 'master' of https://github.com/FH-Complete/FHC-Core --- cis/private/lehre/lesson.php | 4 +- cis/private/lehre/pruefung/pruefung.js.php | 34 +- .../pruefung/pruefungsanmeldung.json.php | 62 +- .../lehre/pruefung/pruefungsbewertung.js.php | 300 +++++++ .../lehre/pruefung/pruefungsbewertung.php | 2 +- .../pruefung/pruefungstermin_festlegen.php | 2 +- cis/private/profile/studienplan.php | 54 +- content/pdfExport.php | 4 +- include/adresse.class.php | 1 + include/dokument.class.php | 10 +- include/prestudent.class.php | 16 +- include/tw/cis_menu_lv.inc.php | 25 +- include/tw/vilesci_menu_main.inc.php | 1 + locale/de-AT/errors.php | 4 + locale/de-AT/pruefung.php | 256 +++--- locale/de-AT/semesterplan.php | 2 + locale/en-US/errors.php | 4 + locale/en-US/pruefung.php | 256 +++--- locale/en-US/semesterplan.php | 4 +- locale/it-IT/anwesenheitsliste.php | 4 +- locale/it-IT/errors.php | 4 + locale/it-IT/global.php | 2 +- locale/it-IT/lehre.php | 59 +- locale/it-IT/lvaliste.php | 2 +- locale/it-IT/lvplan.php | 3 +- locale/it-IT/pruefung.php | 251 +++--- locale/it-IT/semesterplan.php | 33 +- locale/it-IT/tools.php | 6 +- rdf/student.rdf.php | 1 + skin/tempus.css | 4 + submodules/tablesorter | 1 + system/dbupdate_3.2.php | 32 +- system/moodlePlugin/fhcompletews30/README | 23 + .../fhcompletews30/db/services.php | 53 ++ .../fhcompletews30/externallib.php | 371 ++++++++ .../lang/en/local_fhcompletews.php | 25 + .../moodlePlugin/fhcompletews30/version.php | 25 + vilesci/lehre/lv_merge.php | 801 ++++++++++++++++++ vilesci/lehre/studienplan_gueltigkeit.php | 131 +++ vilesci/personen/aliquote_reduktion.json.php | 11 +- vilesci/stammdaten/reihungstestverwaltung.php | 2 +- 41 files changed, 2415 insertions(+), 470 deletions(-) mode change 100644 => 100755 cis/private/lehre/lesson.php create mode 100644 cis/private/lehre/pruefung/pruefungsbewertung.js.php mode change 100644 => 100755 content/pdfExport.php create mode 100755 locale/de-AT/errors.php mode change 100644 => 100755 locale/de-AT/semesterplan.php create mode 100755 locale/en-US/errors.php mode change 100644 => 100755 locale/en-US/semesterplan.php create mode 100755 locale/it-IT/errors.php mode change 100644 => 100755 rdf/student.rdf.php create mode 160000 submodules/tablesorter create mode 100644 system/moodlePlugin/fhcompletews30/README create mode 100644 system/moodlePlugin/fhcompletews30/db/services.php create mode 100644 system/moodlePlugin/fhcompletews30/externallib.php create mode 100644 system/moodlePlugin/fhcompletews30/lang/en/local_fhcompletews.php create mode 100644 system/moodlePlugin/fhcompletews30/version.php create mode 100644 vilesci/lehre/lv_merge.php create mode 100644 vilesci/lehre/studienplan_gueltigkeit.php diff --git a/cis/private/lehre/lesson.php b/cis/private/lehre/lesson.php old mode 100644 new mode 100755 index 7bbf7123a..b499fef1a --- a/cis/private/lehre/lesson.php +++ b/cis/private/lehre/lesson.php @@ -190,7 +190,7 @@ $( document ).ready(function() diff --git a/cis/private/lehre/pruefung/pruefung.js.php b/cis/private/lehre/pruefung/pruefung.js.php index 08d718d9c..3ef462d05 100755 --- a/cis/private/lehre/pruefung/pruefung.js.php +++ b/cis/private/lehre/pruefung/pruefung.js.php @@ -30,6 +30,16 @@ $sprache = getSprache(); $lang = new sprache(); $lang->load($sprache); $p = new phrasen($sprache); + +if (defined('CIS_PRUEFUNGSANMELDUNG_FRIST')) +{ + $anmeldefrist = CIS_PRUEFUNGSANMELDUNG_FRIST; +} +else +{ + $anmeldefrist = 3; +} + ?> /* Copyright (C) 2013 fhcomplete.org @@ -318,7 +328,7 @@ function writePruefungsTable(e, data, anmeldung) var row = ""; var teilnehmer = ""; var button = ""; - row += " diff --git a/cis/private/profile/studienplan.php b/cis/private/profile/studienplan.php index 64d85dfdb..ed3ed7ada 100755 --- a/cis/private/profile/studienplan.php +++ b/cis/private/profile/studienplan.php @@ -467,23 +467,43 @@ function drawTree($tree, $depth) //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 ''.$p->t('studienplan/abgeschlossen').''; - else - echo ''.$p->t('studienplan/negativ').''; - } - } + $positiv = false; + $found = false; + $i = 0; + while(!$found && $i < count($kompatibleLVs)) + { + for($i; $i < (count($kompatibleLVs)); $i++) + { + if(isset($noten_arr[$kompatibleLVs[$i]])) + { + $positiv=false; + foreach($noten_arr[$kompatibleLVs[$i]] as $note) + { + if($note_pruef_arr[$note]->positiv) + $positiv=true; + } + + $found = true; + } + } + $i++; + } + if($found) + { + if($positiv) + echo ''.$p->t('studienplan/abgeschlossen').''; + else + echo ''.$p->t('studienplan/negativ').''; + } + elseif(!$found) + { + if($abgeschlossen) + echo ''.$p->t('studienplan/regelabgeschlossen'),''; + elseif(!$row_tree->stpllv_pflicht) + echo ''.$p->t('studienplan/optional').''; + else + echo ''.$p->t('studienplan/offen').''; + } } else { diff --git a/content/pdfExport.php b/content/pdfExport.php old mode 100644 new mode 100755 index 4cc56ea6e..460834f13 --- a/content/pdfExport.php +++ b/content/pdfExport.php @@ -185,7 +185,7 @@ if (isset($_GET['output']) && $_GET['output']!='pdf') else $output = $_GET['output']; } -else +else $output = 'pdf'; @@ -277,7 +277,7 @@ elseif(in_array($xsl,array('Ressource'))) exit; } } -elseif(in_array($xsl,array('Inskription','Studienerfolg','OutgoingLearning','OutgoingChangeL','LearningAgree','Zahlung'))) +elseif(in_array($xsl,array('Inskription','Studienerfolg','OutgoingLearning','OutgoingChangeL','LearningAgree','Zahlung','DichiaSost'))) { if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('assistenz')) { diff --git a/include/adresse.class.php b/include/adresse.class.php index 247e175f3..6fdc3034c 100644 --- a/include/adresse.class.php +++ b/include/adresse.class.php @@ -129,6 +129,7 @@ class adresse extends basis_db //Lesen der Daten aus der Datenbank $qry = "SELECT * FROM public.tbl_adresse WHERE person_id=".$this->db_add_param($pers_id, FHC_INTEGER, false); + $qry.=" ORDER BY zustelladresse DESC"; if(!$this->db_query($qry)) { diff --git a/include/dokument.class.php b/include/dokument.class.php index db179180b..9b847ec17 100644 --- a/include/dokument.class.php +++ b/include/dokument.class.php @@ -450,7 +450,7 @@ class dokument extends basis_db /** * Liefert alle Dokumenttypen - * @param string $not_in Kommagetrennter String von dokument_kurzbz. Optional. Um bestimmte Dokumente (zB Zeugnis, welcher fix im Core vorhanden sein muss) auszuschließen. + * @param string $not_in Kommagetrennter String von dokument_kurzbz. Optional. Um bestimmte Dokumente (zB Zeugnis, welcher fix im Core vorhanden sein muss) auszuschließen. * @return true wenn ok false im Fehlerfall */ public function getAllDokumente($not_in='') @@ -459,13 +459,13 @@ class dokument extends basis_db $bezeichnung_mehrsprachig = $sprache->getSprachQuery('bezeichnung_mehrsprachig'); $dokumentbeschreibung_mehrsprachig = $sprache->getSprachQuery('dokumentbeschreibung_mehrsprachig'); $qry = "SELECT dokument_kurzbz, bezeichnung, $bezeichnung_mehrsprachig, $dokumentbeschreibung_mehrsprachig FROM public.tbl_dokument "; - + if($not_in!='') { $qry .= " WHERE dokument_kurzbz NOT IN (".$this->implode4SQL(explode(',', $not_in)).")"; } $qry .= " ORDER BY bezeichnung;"; - + if($this->db_query($qry)) { while($row = $this->db_fetch_object()) @@ -696,6 +696,8 @@ class dokument extends basis_db */ public function getBeschreibungenDokumente($studiengangs_kz, $dokument_kurzbz) { + if(count($studiengangs_kz)==0) + return true; $sprache = new sprache(); $dokumentbeschreibung_mehrsprachig = $sprache->getSprachQuery('dokumentbeschreibung_mehrsprachig'); $beschreibung_mehrsprachig = $sprache->getSprachQuery('beschreibung_mehrsprachig'); @@ -778,7 +780,7 @@ class dokument extends basis_db AND tbl_prestudent.person_id=".$this->db_add_param($person_id); if ($studiengang_kz!='') $qry .= " AND studiengang_kz IN (".$studiengang_kz.")"; - + if($result = $this->db_query($qry)) { if($this->db_num_rows($result)>0) diff --git a/include/prestudent.class.php b/include/prestudent.class.php index ee1396f0d..a6d16ff89 100755 --- a/include/prestudent.class.php +++ b/include/prestudent.class.php @@ -22,6 +22,15 @@ require_once(dirname(__FILE__).'/person.class.php'); require_once(dirname(__FILE__).'/log.class.php'); +require_once(dirname(__FILE__).'/phrasen.class.php'); +require_once(dirname(__FILE__).'/globals.inc.php'); +require_once(dirname(__FILE__).'/sprache.class.php'); + +$sprache = getSprache(); +$lang = new sprache(); +$lang->load($sprache); +$p = new phrasen($sprache); + class prestudent extends person { //Tabellenspalten @@ -773,12 +782,14 @@ class prestudent extends person */ public function save_rolle() { + global $p; if($this->new) { //pruefen ob die Rolle schon vorhanden ist if($this->load_rolle($this->prestudent_id, $this->status_kurzbz, $this->studiensemester_kurzbz, $this->ausbildungssemester)) { - $this->errormsg = 'Diese Rolle existiert bereits'; + //$this->errormsg = 'Diese Rolle existiert bereits'; + $this->errormsg = $p->t('errors/rolleExistiertBereits'); return false; } @@ -815,7 +826,8 @@ class prestudent extends person { if($this->load_rolle($this->prestudent_id, $this->status_kurzbz, $this->studiensemester_kurzbz, $this->ausbildungssemester)) { - $this->errormsg = 'Diese Rolle existiert bereits'; + //$this->errormsg = 'Diese Rolle existiert bereits'; + $this->errormsg = $p->t('errors/rolleExistiertBereits'); return false; } } diff --git a/include/tw/cis_menu_lv.inc.php b/include/tw/cis_menu_lv.inc.php index d6f7da13b..ee516d123 100644 --- a/include/tw/cis_menu_lv.inc.php +++ b/include/tw/cis_menu_lv.inc.php @@ -439,17 +439,20 @@ function checkZeilenUmbruch() } } } - $menu[]=array - ( - 'id'=>'core_menu_moodle', - 'position'=>'70', - 'name'=>$p->t('lehre/moodle'), - 'icon'=>'../../../skin/images/button_moodle.png', - 'link'=>$link, - 'link_target'=>$link_target, - 'link_onclick'=>$link_onclick, - 'text'=>$text - ); + if (MOODLE) + { + $menu[]=array + ( + 'id'=>'core_menu_moodle', + 'position'=>'70', + 'name'=>$p->t('lehre/moodle'), + 'icon'=>'../../../skin/images/button_moodle.png', + 'link'=>$link, + 'link_target'=>$link_target, + 'link_onclick'=>$link_onclick, + 'text'=>$text + ); + } //Gesamtnote if($is_lector && ((!defined('CIS_LEHRVERANSTALTUNG_GESAMTNOTE_ANZEIGEN') || CIS_LEHRVERANSTALTUNG_GESAMTNOTE_ANZEIGEN) && $angemeldet)) diff --git a/include/tw/vilesci_menu_main.inc.php b/include/tw/vilesci_menu_main.inc.php index d62eb22e6..58792af76 100644 --- a/include/tw/vilesci_menu_main.inc.php +++ b/include/tw/vilesci_menu_main.inc.php @@ -193,6 +193,7 @@ $menu=array 'Firmenwartung'=>array('name'=>'Firmenwartung', 'link'=>'stammdaten/firma_zusammen_uebersicht.php', 'target'=>'main','permissions'=>array('basis/firma')), 'checkStudenten'=>array('name'=>'CheckStudenten', 'link'=>'../system/checkStudenten.php', 'target'=>'main'), 'StudienplanZuteilung'=>array('name'=>'Studienplan Zuteilung', 'link'=>'lehre/studienplan_zuteilung.php', 'target'=>'main','permissions'=>array('assistenz')), + 'lv_merge'=>array('name'=>'LVs zusammenlegen', 'link'=>'lehre/lv_merge.php', 'target'=>'main','permissions'=>array('admin','lv-plan')), ), 'Auswertung'=> array ( diff --git a/locale/de-AT/errors.php b/locale/de-AT/errors.php new file mode 100755 index 000000000..f28e731a9 --- /dev/null +++ b/locale/de-AT/errors.php @@ -0,0 +1,4 @@ +phrasen['errors/rolleExistiertBereits']='Diese Rolle existiert bereits'; + +?> diff --git a/locale/de-AT/pruefung.php b/locale/de-AT/pruefung.php index c76ad5096..be9bb41c7 100755 --- a/locale/de-AT/pruefung.php +++ b/locale/de-AT/pruefung.php @@ -1,113 +1,143 @@ -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:
    '; -$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'; - - - - -?> +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/stornoNichtMehrMoeglich'] = 'Storno nicht mehr möglich.'; +$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:
    '; +$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'; +$this->phrasen['pruefung/unbegrenzt'] = 'unbegrenzt'; + +// 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'; + +// prüfungsanmeldung.json.php +$this->phrasen['pruefung/anmeldungErfolgreich'] = 'Anmeldung erfolgreich!'; +$this->phrasen['pruefung/zuWenigeCreditPoints'] = 'Credit-Points-Guthaben ist zu gering.'; +$this->phrasen['pruefung/kollisionMitAndererAnmeldung'] = 'Kollision mit anderer Anmeldung.'; +$this->phrasen['pruefung/keineFreienPlaetzeVorhanden'] = 'Keine freien Plätze vorhanden.'; +$this->phrasen['pruefung/anmeldungAufgrundVonSperreNichtMoeglich'] = 'Anmeldung auf Grund von Sperre nicht möglich.'; +$this->phrasen['pruefung/prestudentNichtGefunden'] = 'Prestudent nicht gefunden.'; +$this->phrasen['pruefung/anmeldungErfolgreichGeloescht'] = 'Anmeldung erfolgreich gelöscht.'; + +// Mailtexte +$this->phrasen['pruefung/emailSubjectAnmeldungBestaetigung'] = 'Anmeldungsbestätigung zur Prüfung'; +$this->phrasen['pruefung/emailBody1'] = 'Ihre Anmeldung zur Prüfung wurde von'; +$this->phrasen['pruefung/emailBody2'] = 'bestätigt.'; +$this->phrasen['pruefung/emailBodyPruefung'] = 'Prüfung:'; +$this->phrasen['pruefung/emailBodyTermin'] = 'Termin:'; +$this->phrasen['pruefung/emailBodyDauer'] = 'Dauer:'; +$this->phrasen['pruefung/emailBodyUm'] = 'um'; +$this->phrasen['pruefung/emailBodyMinuten'] = 'Minuten'; +$this->phrasen['pruefung/emailBodyOrt'] = 'Ort:'; +$this->phrasen['pruefung/emailBodyLinkZurAnmeldung'] = 'Link zur Anmeldung'; +$this->phrasen['pruefung/emailBodyBitteHtmlSicht'] = 'Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.'; + +$this->phrasen['pruefung/emailLektorSubjectAnmeldung'] = 'Anmeldung zur Prüfung'; +$this->phrasen['pruefung/emailLektorStudentIn'] = 'StudentIn'; +$this->phrasen['pruefung/emailLektorHatSichZurPruefung'] = 'hat sich zur Prüfung'; +$this->phrasen['pruefung/emailLektorAm'] = 'am'; +$this->phrasen['pruefung/emailLektorVon'] = 'von'; +$this->phrasen['pruefung/emailLektorUhrBis'] = 'Uhr bis'; +$this->phrasen['pruefung/emailLektorUhrAngemeldet'] = 'Uhr angemeldet.'; + + +?> diff --git a/locale/de-AT/semesterplan.php b/locale/de-AT/semesterplan.php old mode 100644 new mode 100755 index 97f9b2b1c..514ca31bb --- a/locale/de-AT/semesterplan.php +++ b/locale/de-AT/semesterplan.php @@ -16,4 +16,6 @@ $this->phrasen['semesterplan/speichernSieDasDokument']='Speichern Sie das Dokume $this->phrasen['semesterplan/inMSWord']='(In MS Word: "Datei" -> "Speichern unter" -> Dateiname: index.html, Dateityp: Webseite )'; $this->phrasen['semesterplan/ladenSieDieDateiHoch']='Laden Sie diese Datei nun über den "Upload"-Knopf hoch.'; $this->phrasen['semesterplan/fertig']='Fertig'; +$this->phrasen['semesterplan/ErstellungDesSemesterplans']='Erstellung des Semesterplanes'; +$this->phrasen['semesterplan/schliessen']='schließen'; ?> diff --git a/locale/en-US/errors.php b/locale/en-US/errors.php new file mode 100755 index 000000000..936f16af8 --- /dev/null +++ b/locale/en-US/errors.php @@ -0,0 +1,4 @@ +phrasen['errors/rolleExistiertBereits']='This role is already selected'; + +?> diff --git a/locale/en-US/pruefung.php b/locale/en-US/pruefung.php index c76ad5096..9c7eb8343 100755 --- a/locale/en-US/pruefung.php +++ b/locale/en-US/pruefung.php @@ -1,113 +1,143 @@ -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:
    '; -$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'; - - - - -?> +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/stornoNichtMehrMoeglich'] = 'Storno nicht mehr möglich.'; +$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:
    '; +$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'; +$this->phrasen['pruefung/unbegrenzt'] = 'unlimited'; + +// 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'; + +// prüfungsanmeldung.json.php +$this->phrasen['pruefung/anmeldungErfolgreich'] = 'Registration successful.'; +$this->phrasen['pruefung/zuWenigeCreditPoints'] = 'Credit-Points-Guthaben ist zu gering.'; +$this->phrasen['pruefung/kollisionMitAndererAnmeldung'] = 'Kollision mit anderer Anmeldung.'; +$this->phrasen['pruefung/keineFreienPlaetzeVorhanden'] = 'Keine freien Plätze vorhanden.'; +$this->phrasen['pruefung/anmeldungAufgrundVonSperreNichtMoeglich'] = 'Anmeldung auf Grund von Sperre nicht möglich.'; +$this->phrasen['pruefung/prestudentNichtGefunden'] = 'Prestudent nicht gefunden.'; +$this->phrasen['pruefung/anmeldungErfolgreichGeloescht'] = 'Registration cancelled.'; + +// Mailtexte +$this->phrasen['pruefung/emailSubjectAnmeldungBestaetigung'] = 'Anmeldungsbestätigung zur Prüfung'; +$this->phrasen['pruefung/emailBody1'] = 'Ihre Anmeldung zur Prüfung wurde von'; +$this->phrasen['pruefung/emailBody2'] = 'bestätigt.'; +$this->phrasen['pruefung/emailBodyPruefung'] = 'Prüfung:'; +$this->phrasen['pruefung/emailBodyTermin'] = 'Termin:'; +$this->phrasen['pruefung/emailBodyDauer'] = 'Dauer:'; +$this->phrasen['pruefung/emailBodyUm'] = 'um'; +$this->phrasen['pruefung/emailBodyMinuten'] = 'Minuten'; +$this->phrasen['pruefung/emailBodyOrt'] = 'Ort:'; +$this->phrasen['pruefung/emailBodyLinkZurAnmeldung'] = 'Link zur Anmeldung'; +$this->phrasen['pruefung/emailBodyBitteHtmlSicht'] = 'Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.'; + +$this->phrasen['pruefung/emailLektorSubjectAnmeldung'] = 'Anmeldung zur Prüfung'; +$this->phrasen['pruefung/emailLektorStudentIn'] = 'StudentIn'; +$this->phrasen['pruefung/emailLektorHatSichZurPruefung'] = 'hat sich zur Prüfung'; +$this->phrasen['pruefung/emailLektorAm'] = 'am'; +$this->phrasen['pruefung/emailLektorVon'] = 'von'; +$this->phrasen['pruefung/emailLektorUhrBis'] = 'Uhr bis'; +$this->phrasen['pruefung/emailLektorUhrAngemeldet'] = 'Uhr angemeldet.'; + + +?> diff --git a/locale/en-US/semesterplan.php b/locale/en-US/semesterplan.php old mode 100644 new mode 100755 index 1942ec1c0..d7b1500ad --- a/locale/en-US/semesterplan.php +++ b/locale/en-US/semesterplan.php @@ -1,4 +1,4 @@ -phrasen['semesterplan/fehlerBeiDerParameteruebergabe']='Error in the parameter transfer'; $this->phrasen['semesterplan/fehlerBeimLadenDerLv']='Error loading the course'; $this->phrasen['semesterplan/fehlerBeimLadenDesStudienganges']='Error loading the degree program'; @@ -16,4 +16,6 @@ $this->phrasen['semesterplan/speichernSieDasDokument']='Save the document as a $this->phrasen['semesterplan/inMSWord']='(In MS Word: “File” -> “Save As” -> File name: index.html, Save as type: Web Page)'; $this->phrasen['semesterplan/ladenSieDieDateiHoch']='Now upload this file with the “Upload” button.'; $this->phrasen['semesterplan/fertig']='Finished'; +$this->phrasen['semesterplan/ErstellungDesSemesterplans']='Setting up the Semesterplan'; +$this->phrasen['semesterplan/schliessen']='close'; ?> diff --git a/locale/it-IT/anwesenheitsliste.php b/locale/it-IT/anwesenheitsliste.php index dc11dec87..09feca96d 100755 --- a/locale/it-IT/anwesenheitsliste.php +++ b/locale/it-IT/anwesenheitsliste.php @@ -2,8 +2,8 @@ $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/anwesenheitslisten']='elenco studenti'; +$this->phrasen['anwesenheitsliste/anwesenheitslistenMitBildern']='elenco studenti 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'; diff --git a/locale/it-IT/errors.php b/locale/it-IT/errors.php new file mode 100755 index 000000000..5f0fa5881 --- /dev/null +++ b/locale/it-IT/errors.php @@ -0,0 +1,4 @@ +phrasen['errors/rolleExistiertBereits']='Percorso di studi già selezionato'; + +?> diff --git a/locale/it-IT/global.php b/locale/it-IT/global.php index 618c5b83b..b61422b7f 100755 --- a/locale/it-IT/global.php +++ b/locale/it-IT/global.php @@ -99,7 +99,7 @@ $this->phrasen['global/minute']='minuti'; $this->phrasen['global/mittwoch']='mercoledì'; $this->phrasen['global/montag']='lunedì'; $this->phrasen['global/nachname']='Cognome'; -$this->phrasen['global/name']='nome'; +$this->phrasen['global/name']='Nome'; $this->phrasen['global/nebenwohnsitz']='domicilio'; $this->phrasen['global/nein']='no'; $this->phrasen['global/neu']='nuovo'; diff --git a/locale/it-IT/lehre.php b/locale/it-IT/lehre.php index 716afbb27..1ae92d09a 100755 --- a/locale/it-IT/lehre.php +++ b/locale/it-IT/lehre.php @@ -1,37 +1,36 @@ phrasen['lehre/abmelden']='esci'; $this->phrasen['lehre/abmeldung']='uscita'; -$this->phrasen['lehre/AbmeldungAusGruppeNichtMoeglich']=''; -$this->phrasen['lehre/AbmeldungErfolgreich']=''; -$this->phrasen['lehre/anwesenheitsUndNotenlisten']=''; -$this->phrasen['lehre/benotungstoolHandbuch']=''; -$this->phrasen['lehre/confirmAbmeldung']=''; -$this->phrasen['lehre/download']=''; +$this->phrasen['lehre/AbmeldungAusGruppeNichtMoeglich']='Non è possibile cancellare la propria iscrizione al corso'; +$this->phrasen['lehre/AbmeldungErfolgreich']='Cancellamento iscrizione avvenuto con successo'; +$this->phrasen['lehre/anwesenheitsUndNotenlisten']='Elenco frequenze e votazioni'; +$this->phrasen['lehre/benotungstoolHandbuch']='Handbook'; +$this->phrasen['lehre/confirmAbmeldung']='Cancellare veramente la propria iscrizione al corso "%s" ?'; +$this->phrasen['lehre/download']='Download'; $this->phrasen['lehre/feedback']='feedback'; -$this->phrasen['lehre/gesamtnote']=''; -$this->phrasen['lehre/keineLektorenZugeordnet']=''; -$this->phrasen['lehre/keinMailverteiler']=''; +$this->phrasen['lehre/gesamtnote']='Voto finale'; +$this->phrasen['lehre/keineLektorenZugeordnet']='Al momento non è assegnato alcun docente per questo insegnamento'; +$this->phrasen['lehre/keinMailverteiler']='Per il/i gruppo/i %s non esiste alcuna lista di destinatari! Gli studenti in questo/i gruppo/i non riceveranno alcuna mail.'; $this->phrasen['lehre/kreuzerltool']='strumenti per esercitazioni
    (tool con caselle da barrare)'; -$this->phrasen['lehre/kreuzerltoolMitMoodleInfo']=''; -$this->phrasen['lehre/Lehrbeauftrager']=''; -$this->phrasen['lehre/lehrveranstaltungsinformation']=''; -$this->phrasen['lehre/leistungsuebersicht']=''; -$this->phrasen['lehre/lvInfoBearbeiten']=''; -$this->phrasen['lehre/mail']=''; -$this->phrasen['lehre/moodle']=''; -$this->phrasen['lehre/moodleHandbuch']=''; -$this->phrasen['lehre/moodleMitKreuzerltoolInfo']=''; -$this->phrasen['lehre/moodleWartung']=''; -$this->phrasen['lehre/newsgroups']=''; -$this->phrasen['lehre/nichtzugeteilt']=''; -$this->phrasen['lehre/pinboard']=''; -$this->phrasen['lehre/semesterplan']=''; -$this->phrasen['lehre/semesterplanUpload']=''; -$this->phrasen['lehre/semesterplanVorlage']=''; -$this->phrasen['lehre/semesterplanVorlageHilfe']=''; -$this->phrasen['lehre/studentenAbgabe']=''; -$this->phrasen['lehre/upload']=''; -$this->phrasen['lehre/ziparchiv']=''; -$this->phrasen['lehre/ziparchivTitle']='scarica tutti i file in directory download in formato zip'; +$this->phrasen['lehre/moodleMitKreuzerltoolInfo']='Moodle non può essere utilizzato in contemporanea con lo strumento per esercitazioni. Se si vuole utilizzare Moodle bisogna annullare l’uso dello strumento per esercitazioni'; +$this->phrasen['lehre/lehrbeauftragter']='Docente incaricato'; +$this->phrasen['lehre/lehrveranstaltungsinformation']='Informazioni corso'; +$this->phrasen['lehre/leistungsuebersicht']='Panoramica per docenti'; +$this->phrasen['lehre/lvInfoBearbeiten']='Modificare'; +$this->phrasen['lehre/mail']='E-Mail agli studenti'; +$this->phrasen['lehre/moodle']='Moodle'; +$this->phrasen['lehre/moodleHandbuch']='Handbook'; +$this->phrasen['lehre/moodleWartung']='Attesa'; +$this->phrasen['lehre/newsgroups']='Newsgroups'; +$this->phrasen['lehre/nichtzugeteilt']='Lei non è stato/a associato/a a questo insegnamento'; +$this->phrasen['lehre/pinboard']='Bacheca'; +$this->phrasen['lehre/semesterplan']='Calendario del corso'; +$this->phrasen['lehre/semesterplanUpload']='Upload'; +$this->phrasen['lehre/semesterplanVorlage']='Schema'; +$this->phrasen['lehre/semesterplanVorlageHilfe']='Aiuto'; +$this->phrasen['lehre/studentenAbgabe']='Upload degli studenti'; +$this->phrasen['lehre/upload']='Upload'; +$this->phrasen['lehre/ziparchiv']='Scarica zip'; +$this->phrasen['lehre/ziparchivTitle']='scarica tutti i file in un unico zip'; ?> diff --git a/locale/it-IT/lvaliste.php b/locale/it-IT/lvaliste.php index d9b6f08e5..992e06726 100755 --- a/locale/it-IT/lvaliste.php +++ b/locale/it-IT/lvaliste.php @@ -14,7 +14,7 @@ $this->phrasen['lvaliste/keineDatensaetze']=''; $this->phrasen['lvaliste/koordination']=''; $this->phrasen['lvaliste/lehrfach']=''; $this->phrasen['lvaliste/lehrfachBezeichnung']=''; -$this->phrasen['lvaliste/lehrform']=''; +$this->phrasen['lvaliste/lehrform']='Forma'; $this->phrasen['lvaliste/lehrveranstaltungen']=''; $this->phrasen['lvaliste/lektor']=''; $this->phrasen['lvaliste/lvBezeichnung']=''; diff --git a/locale/it-IT/lvplan.php b/locale/it-IT/lvplan.php index edc4182cf..b16a4c013 100755 --- a/locale/it-IT/lvplan.php +++ b/locale/it-IT/lvplan.php @@ -37,7 +37,8 @@ $this->phrasen['lvplan/lektor']=''; $this->phrasen['lvplan/lektorenplan']=''; $this->phrasen['lvplan/lektorInStudentIn']=''; $this->phrasen['lvplan/lvKoordinationsstelle']=''; -$this->phrasen['lvplan/lvPlan']='Calendario lezioni'; +$this->phrasen['lvplan/lvPlan']=''; +//$this->phrasen['lvplan/lvPlan']='Calendario lezioni'; $this->phrasen['lvplan/nameEingeben']=''; $this->phrasen['lvplan/nichtVorhanden']=''; $this->phrasen['lvplan/ort']=''; diff --git a/locale/it-IT/pruefung.php b/locale/it-IT/pruefung.php index 79495aa13..e61d6c8f4 100755 --- a/locale/it-IT/pruefung.php +++ b/locale/it-IT/pruefung.php @@ -1,111 +1,140 @@ -phrasen['pruefung/titlePruefungsfenster'] = 'Inserire sessione'; -$this->phrasen['pruefung/erfolgreichgespeichert'] = 'Salvataggio avvenuto con successo'; -$this->phrasen['pruefung/fehler'] = 'Errore: '; -$this->phrasen['pruefung/fehlerEndDatumInDerVergangenheit'] = 'Errore: la data di termine è fissata nel passato.'; -$this->phrasen['pruefung/fehlerEndDatumVorStartDatum'] = 'Errore: la data di termine è precedente alla data di inizio.'; -$this->phrasen['pruefung/fehlerDatumNichtKorrekt'] = 'Errore: data inserita in maniera non corretta.'; -$this->phrasen['pruefung/erfolgreichgeaendert'] = 'Modifica avvenuta con successo'; -$this->phrasen['pruefung/keineBerechtigungZumAendernDesDatensatzes'] = 'Non si dispone dei permessi necessari per la modifica.'; -$this->phrasen['pruefung/keineBerechtigungZumAnzeigenDesDatensatzes'] = 'Non si dispone dei permessi necessari per la visualizzazione.'; -$this->phrasen['pruefung/erfolgreichgeloescht'] = 'Cancellazione avvenuta con successo.'; -$this->phrasen['pruefung/pruefungsfensterKonnteNichtGeloeschtWerdenDaPruefungen'] = 'Non è stato possibile cancellare la sessione siccome è collegata ad alcuni esami.'; -$this->phrasen['pruefung/keineBerechtigungZumLoeschenDesDatensatzes'] = 'Non si dispone dei permessi necessari per la cancellazione.'; -$this->phrasen['pruefung/pruefungsfensterVerwaltung'] = 'Gestione sessioni'; -$this->phrasen['pruefung/neuesPruefungsfensterAnlegen'] = 'Inserimento nuova sessione'; -$this->phrasen['pruefung/start'] = 'Data inizio'; -$this->phrasen['pruefung/ende'] = 'Data fine'; -$this->phrasen['pruefung/pruefungsfensterBearbeiten'] = 'Modificare sessione'; -$this->phrasen['pruefung/keinePruefungsfensterGespeichert'] = 'Nessuna sessione salvata'; -// Termin festlegen -$this->phrasen['pruefung/titlePruefungstermin'] = 'Inserimento appello d’esame'; -$this->phrasen['pruefung/pruefungLektor'] = 'Docente'; -$this->phrasen['pruefung/pruefungenVerwalten'] = 'Gestione esami'; -$this->phrasen['pruefung/pruefungTitel'] = 'Titolo'; -$this->phrasen['pruefung/pruefungsfenster'] = 'Sessione'; -$this->phrasen['pruefung/pruefungMethode'] = 'Modalità'; -$this->phrasen['pruefung/pruefungEinzelpruefung'] = 'Einzelprüfung'; -$this->phrasen['pruefung/pruefungTyp'] = 'Tipo'; -$this->phrasen['pruefung/pruefungIntervall'] = 'Periodo'; -$this->phrasen['pruefung/pruefungTermin'] = 'Appelli'; -$this->phrasen['pruefung/pruefungMinTeilnehmer'] = 'min. iscritti'; -$this->phrasen['pruefung/pruefungMaxTeilnehmer'] = 'max. iscritti'; -$this->phrasen['pruefung/pruefungSammelklausur'] = 'Sammelklausur'; -$this->phrasen['pruefung/pruefungTerminHinzufuegen'] = 'Inserire appello'; -$this->phrasen['pruefung/pruefungPruefungenTitle'] = 'Esami'; -$this->phrasen['pruefung/pruefungMitarbeiter'] = 'Collaboratore'; -$this->phrasen['pruefung/storniert'] = 'annullato'; - -// pruefung.js.php -$this->phrasen['pruefung/keinFensterVorhanden'] = 'Nessuna sessione a disposizione.'; -$this->phrasen['pruefung/keineDatenVorhanden'] = 'Nessuna data a disposizione.'; -$this->phrasen['pruefung/anmeldefristAbgelaufen'] = 'Termine di iscrizione scaduto.'; -$this->phrasen['pruefung/stornierenMoeglichBis'] = 'Possibilità di annullare l’iscrizione entro il'; -$this->phrasen['pruefung/anmeldenMoeglichBis'] = 'Possibilità di iscrizione entro il'; -$this->phrasen['pruefung/zurLvAnmeldung'] = 'iscriversi al corso'; -$this->phrasen['pruefung/zuerstPruefungAuswaehlen'] = 'Scegliere prima l’esame.'; -$this->phrasen['pruefung/bemerkungVonLektorHinzugefuegt'] = 'inserito da docente'; -$this->phrasen['pruefung/bestaetigen'] = 'Confermare'; -$this->phrasen['pruefung/anmerkungDesStudenten'] = 'Osservazioni dello studente:
    '; -$this->phrasen['pruefung/bestaetigt'] = 'confermato'; -$this->phrasen['pruefung/statusAenderungVon'] = 'Modifica status di'; -$this->phrasen['pruefung/reihungSpeichern'] = 'Salvare sequenza'; -$this->phrasen['pruefung/listeDrucken'] = 'Stampare lista'; -$this->phrasen['pruefung/pruefungsraum'] = 'Aula d’esame: '; -$this->phrasen['pruefung/pruefungsort'] = 'Luogo d’esame '; -$this->phrasen['pruefung/imBuero'] = ' in ufficio'; -$this->phrasen['pruefung/raum'] = ' Aula'; -$this->phrasen['pruefung/raumSpeichern'] = ' Salvare aula'; -$this->phrasen['pruefung/reihunghErfolgreichGeaendert'] = 'Sequenza modificata con successo.'; -$this->phrasen['pruefung/studiengangAuswaehlen'] = 'Selezionare percorso di studi'; -$this->phrasen['pruefung/keinePruefungenVorhanden'] = 'Nessun esame disponibile.'; -$this->phrasen['pruefung/kommentarZu'] = 'Commento a '; -$this->phrasen['pruefung/kommentarSpeichern'] = 'Salvare commento'; -$this->phrasen['pruefung/kommentarErfolgreichGespeichert'] = 'Commento salvato con successo.'; -$this->phrasen['pruefung/formulardatenNichtKorrekt'] = 'Dati non corretti.'; -$this->phrasen['pruefung/pruefungErfolgreichGespeichert'] = 'Esame salvato con successo.'; -$this->phrasen['pruefung/lehrveranstaltungAuswaehlen'] = 'Selezionare insegnamento ...'; -$this->phrasen['pruefung/keineLehrveranstaltungenVorhanden'] = 'Nessun insegnamento disponibile.'; -$this->phrasen['pruefung/pruefungStornieren'] = 'Cancellare esame'; -$this->phrasen['pruefung/lvErfolgreichEntfernt'] = 'Insegnamento tolto con successo.'; -$this->phrasen['pruefung/pruefungStorniert'] = 'Esame cancellato'; -$this->phrasen['pruefung/terminGeloescht'] = 'Appello eliminato'; - -// pruefungsbewertung -$this->phrasen['pruefung/pruefungsbewertungTitle'] = 'Voto d’esame'; -$this->phrasen['pruefung/pruefungsbewertungAnmeldungen'] = 'Iscrizioni'; - // pruefungsanmeldung -$this->phrasen['pruefung/anmeldungFuer'] = 'Iscrizione d’esame per'; -$this->phrasen['pruefung/filter'] = 'Filtro'; -$this->phrasen['pruefung/details'] = 'Dettagli'; -$this->phrasen['pruefung/lvDetails'] = 'Dettagli insegnamento'; -$this->phrasen['pruefung/pruefungsDetails'] = 'Dettagli esame'; -$this->phrasen['pruefung/typ'] = 'Tipo'; -$this->phrasen['pruefung/intervall'] = 'Periodo'; -$this->phrasen['pruefung/besuchteLehrveranstaltungen'] = 'Insegnamenti frequentati'; -$this->phrasen['pruefung/freiePlaetze'] = 'Posti liberi'; -$this->phrasen['pruefung/lvVonStudiengang'] = 'Insegnamenti del percorso di studi'; -$this->phrasen['pruefung/lvAlle'] = 'Tutti gli insegnamenti'; -$this->phrasen['pruefung/anmeldungSpeichern'] = 'Salvare iscrizione'; -$this->phrasen['pruefung/studienverpflichtung'] = 'Obbligo formativo'; - -// liste -$this->phrasen['pruefung/anmeldungsliste'] = 'Lista partecipanti'; -$this->phrasen['pruefung/fehlenderParam_lvid'] = 'Parametro mancante lehrveranstaltung_id'; -$this->phrasen['pruefung/fehlenderParam_terminid'] = 'Parametro mancante termin_id'; -$this->phrasen['pruefung/fehlenderParam_studiensemester'] = 'Parametro mancante studiensemester'; -$this->phrasen['pruefung/pruefer'] = 'Professore'; -$this->phrasen['pruefung/keineBestaetigtenAnmeldungenVorhanden'] = 'Nessuna conferma di registrazione disponibile.'; -$this->phrasen['pruefung/keineLvAngegeben'] = 'Nessun corso definito.'; -$this->phrasen['pruefung/kollisionMitAnderemTermin'] = 'Date sovrapposte.'; -$this->phrasen['pruefung/terminNichtInDerVergangenheit'] = 'La data dell’esame non è nel passato.'; -$this->phrasen['pruefung/keineLehreinheitenVorhanden'] = 'Nessuna unità di corso disponibile.'; -$this->phrasen['pruefung/keineAnmeldungenVorhanden'] = 'Nessuna registrazione disponibile.'; - -// anmeldungen Verwalten -$this->phrasen['pruefung/anmeldungenVerwaltenTitle'] = 'Amministrazione della registrazione degli esami'; -$this->phrasen['pruefung/anmeldungenVerwalten'] = 'Amministrazione registrazioni'; - - -?> +phrasen['pruefung/titlePruefungsfenster'] = 'Inserire sessione'; +$this->phrasen['pruefung/erfolgreichgespeichert'] = 'Salvataggio avvenuto con successo'; +$this->phrasen['pruefung/fehler'] = 'Errore: '; +$this->phrasen['pruefung/fehlerEndDatumInDerVergangenheit'] = 'Errore: la data di termine è fissata nel passato.'; +$this->phrasen['pruefung/fehlerEndDatumVorStartDatum'] = 'Errore: la data di termine è precedente alla data di inizio.'; +$this->phrasen['pruefung/fehlerDatumNichtKorrekt'] = 'Errore: data inserita in maniera non corretta.'; +$this->phrasen['pruefung/erfolgreichgeaendert'] = 'Modifica avvenuta con successo'; +$this->phrasen['pruefung/keineBerechtigungZumAendernDesDatensatzes'] = 'Non si dispone dei permessi necessari per la modifica.'; +$this->phrasen['pruefung/keineBerechtigungZumAnzeigenDesDatensatzes'] = 'Non si dispone dei permessi necessari per la visualizzazione.'; +$this->phrasen['pruefung/erfolgreichgeloescht'] = 'Cancellazione avvenuta con successo.'; +$this->phrasen['pruefung/pruefungsfensterKonnteNichtGeloeschtWerdenDaPruefungen'] = 'Non è stato possibile cancellare la sessione siccome è collegata ad alcuni esami.'; +$this->phrasen['pruefung/keineBerechtigungZumLoeschenDesDatensatzes'] = 'Non si dispone dei permessi necessari per la cancellazione.'; +$this->phrasen['pruefung/pruefungsfensterVerwaltung'] = 'Gestione sessioni'; +$this->phrasen['pruefung/neuesPruefungsfensterAnlegen'] = 'Inserimento nuova sessione'; +$this->phrasen['pruefung/start'] = 'Data inizio'; +$this->phrasen['pruefung/ende'] = 'Data fine'; +$this->phrasen['pruefung/pruefungsfensterBearbeiten'] = 'Modificare sessione'; +$this->phrasen['pruefung/keinePruefungsfensterGespeichert'] = 'Nessuna sessione salvata'; +// Termin festlegen +$this->phrasen['pruefung/titlePruefungstermin'] = 'Inserimento appello d’esame'; +$this->phrasen['pruefung/pruefungLektor'] = 'Docente'; +$this->phrasen['pruefung/pruefungenVerwalten'] = 'Gestione esami'; +$this->phrasen['pruefung/pruefungTitel'] = 'Titolo'; +$this->phrasen['pruefung/pruefungsfenster'] = 'Sessione'; +$this->phrasen['pruefung/pruefungMethode'] = 'Modalità'; +$this->phrasen['pruefung/pruefungEinzelpruefung'] = 'Esame singolo'; +$this->phrasen['pruefung/pruefungTyp'] = 'Tipo'; +$this->phrasen['pruefung/pruefungIntervall'] = 'Periodo'; +$this->phrasen['pruefung/pruefungTermin'] = 'Appelli'; +$this->phrasen['pruefung/pruefungMinTeilnehmer'] = 'min. iscritti'; +$this->phrasen['pruefung/pruefungMaxTeilnehmer'] = 'max. iscritti'; +$this->phrasen['pruefung/pruefungSammelklausur'] = 'Esame colletivo'; +$this->phrasen['pruefung/pruefungTerminHinzufuegen'] = 'Inserire appello'; +$this->phrasen['pruefung/pruefungPruefungenTitle'] = 'Esami'; +$this->phrasen['pruefung/pruefungMitarbeiter'] = 'Collaboratore'; +$this->phrasen['pruefung/storniert'] = 'annullato'; + +// pruefung.js.php +$this->phrasen['pruefung/keinFensterVorhanden'] = 'Nessuna sessione a disposizione.'; +$this->phrasen['pruefung/keineDatenVorhanden'] = 'Nessuna data a disposizione.'; +$this->phrasen['pruefung/anmeldefristAbgelaufen'] = 'Termine di iscrizione scaduto.'; +$this->phrasen['pruefung/stornierenMoeglichBis'] = 'Possibilità di annullare l’iscrizione entro il'; +$this->phrasen['pruefung/anmeldenMoeglichBis'] = 'Possibilità di iscrizione entro il'; +$this->phrasen['pruefung/stornoNichtMehrMoeglich'] = 'Non è più possibile annullare l’iscrizione.'; +$this->phrasen['pruefung/zurLvAnmeldung'] = 'iscriversi al corso'; +$this->phrasen['pruefung/zuerstPruefungAuswaehlen'] = 'Scegliere prima l’esame.'; +$this->phrasen['pruefung/bemerkungVonLektorHinzugefuegt'] = 'inserito da docente'; +$this->phrasen['pruefung/bestaetigen'] = 'Confermare'; +$this->phrasen['pruefung/anmerkungDesStudenten'] = 'Osservazioni dello studente:
    '; +$this->phrasen['pruefung/bestaetigt'] = 'confermato'; +$this->phrasen['pruefung/statusAenderungVon'] = 'Modifica status di'; +$this->phrasen['pruefung/reihungSpeichern'] = 'Salvare sequenza'; +$this->phrasen['pruefung/listeDrucken'] = 'Stampare lista'; +$this->phrasen['pruefung/pruefungsraum'] = 'Aula d’esame: '; +$this->phrasen['pruefung/pruefungsort'] = 'Luogo d’esame '; +$this->phrasen['pruefung/imBuero'] = ' in ufficio'; +$this->phrasen['pruefung/raum'] = ' Aula'; +$this->phrasen['pruefung/raumSpeichern'] = ' Salvare aula'; +$this->phrasen['pruefung/reihunghErfolgreichGeaendert'] = 'Sequenza modificata con successo.'; +$this->phrasen['pruefung/studiengangAuswaehlen'] = 'Selezionare corso di studi'; +$this->phrasen['pruefung/keinePruefungenVorhanden'] = 'Nessun esame disponibile.'; +$this->phrasen['pruefung/kommentarZu'] = 'Commento a '; +$this->phrasen['pruefung/kommentarSpeichern'] = 'Salvare commento'; +$this->phrasen['pruefung/kommentarErfolgreichGespeichert'] = 'Commento salvato con successo.'; +$this->phrasen['pruefung/formulardatenNichtKorrekt'] = 'Dati non corretti.'; +$this->phrasen['pruefung/pruefungErfolgreichGespeichert'] = 'Esame salvato con successo.'; +$this->phrasen['pruefung/lehrveranstaltungAuswaehlen'] = 'Selezionare insegnamento ...'; +$this->phrasen['pruefung/keineLehrveranstaltungenVorhanden'] = 'Nessun insegnamento disponibile.'; +$this->phrasen['pruefung/pruefungStornieren'] = 'Cancellare esame'; +$this->phrasen['pruefung/lvErfolgreichEntfernt'] = 'Insegnamento tolto con successo.'; +$this->phrasen['pruefung/pruefungStorniert'] = 'Esame cancellato'; +$this->phrasen['pruefung/terminGeloescht'] = 'Appello eliminato'; +$this->phrasen['pruefung/unbegrenzt'] = ''; +// pruefungsbewertung +$this->phrasen['pruefung/pruefungsbewertungTitle'] = 'Voti d’esame'; +$this->phrasen['pruefung/pruefungsbewertungAnmeldungen'] = 'Iscrizioni'; + // pruefungsanmeldung +$this->phrasen['pruefung/anmeldungFuer'] = 'Iscrizione d’esame per'; +$this->phrasen['pruefung/filter'] = 'Filtro'; +$this->phrasen['pruefung/details'] = 'Dettagli'; +$this->phrasen['pruefung/lvDetails'] = 'Dettagli insegnamento'; +$this->phrasen['pruefung/pruefungsDetails'] = 'Dettagli esame'; +$this->phrasen['pruefung/typ'] = 'Tipo'; +$this->phrasen['pruefung/intervall'] = 'Periodo'; +$this->phrasen['pruefung/besuchteLehrveranstaltungen'] = 'Insegnamenti frequentati'; +$this->phrasen['pruefung/freiePlaetze'] = 'Posti liberi'; +$this->phrasen['pruefung/lvVonStudiengang'] = 'Insegnamenti del percorso di studi'; +$this->phrasen['pruefung/lvAlle'] = 'Tutti gli insegnamenti'; +$this->phrasen['pruefung/anmeldungSpeichern'] = 'Salvare iscrizione'; +$this->phrasen['pruefung/studienverpflichtung'] = 'Obbligo formativo'; + +// liste +$this->phrasen['pruefung/anmeldungsliste'] = 'Lista iscritti appello'; +$this->phrasen['pruefung/fehlenderParam_lvid'] = 'Parametro mancante lehrveranstaltung_id'; +$this->phrasen['pruefung/fehlenderParam_terminid'] = 'Parametro mancante termin_id'; +$this->phrasen['pruefung/fehlenderParam_studiensemester'] = 'Parametro mancante studiensemester'; +$this->phrasen['pruefung/pruefer'] = 'Docente'; +$this->phrasen['pruefung/keineBestaetigtenAnmeldungenVorhanden'] = 'Nessuna conferma di registrazione disponibile.'; +$this->phrasen['pruefung/keineLvAngegeben'] = 'Nessun corso definito.'; +$this->phrasen['pruefung/kollisionMitAnderemTermin'] = 'Date sovrapposte.'; +$this->phrasen['pruefung/terminNichtInDerVergangenheit'] = 'La data dell’appello non è nel passato.'; +$this->phrasen['pruefung/keineLehreinheitenVorhanden'] = 'Nessun corso disponibile.'; +$this->phrasen['pruefung/keineAnmeldungenVorhanden'] = 'Nessuna registrazione disponibile.'; + +// anmeldungen Verwalten +$this->phrasen['pruefung/anmeldungenVerwaltenTitle'] = 'Gestione delle prenotazioni degli appelli'; +$this->phrasen['pruefung/anmeldungenVerwalten'] = 'Gestione prenotazioni'; + +// prüfungsanmeldung.json.php +$this->phrasen['pruefung/anmeldungErfolgreich'] = 'Iscrizione avvenuta con successo'; +$this->phrasen['pruefung/zuWenigeCreditPoints'] = 'Ammontare crediti insufficiente.'; +$this->phrasen['pruefung/kollisionMitAndererAnmeldung'] = 'Conflitto con altra registrazione.'; +$this->phrasen['pruefung/keineFreienPlaetzeVorhanden'] = 'Nessun posto libero disponibile.'; +$this->phrasen['pruefung/anmeldungAufgrundVonSperreNichtMoeglich'] = 'Iscrizione impossibile in questo momento.'; +$this->phrasen['pruefung/prestudentNichtGefunden'] = 'Prestudent non trovato.'; +$this->phrasen['pruefung/anmeldungErfolgreichGeloescht'] = 'Iscrizione cancellata con successo.'; + +// Mailtexte +$this->phrasen['pruefung/emailSubjectAnmeldungBestaetigung'] = 'Conferma d’iscrizione all’appello d’esame'; +$this->phrasen['pruefung/emailBody1'] = 'La sua iscrizione all’appello d’esame è stata'; +$this->phrasen['pruefung/emailBody2'] = 'confermata.'; +$this->phrasen['pruefung/emailBodyPruefung'] = 'Appello d’esame:'; +$this->phrasen['pruefung/emailBodyTermin'] = 'Data:'; +$this->phrasen['pruefung/emailBodyDauer'] = 'Durata:'; +$this->phrasen['pruefung/emailBodyUm'] = 'alle'; +$this->phrasen['pruefung/emailBodyMinuten'] = 'minuti'; +$this->phrasen['pruefung/emailBodyOrt'] = 'Luogo:'; +$this->phrasen['pruefung/emailBodyLinkZurAnmeldung'] = 'Link all’iscrizione'; +$this->phrasen['pruefung/emailBodyBitteHtmlSicht'] = 'Nel caso il link non sia visualizzato correttamente, attivare la visualizzazione in HTML.'; + +$this->phrasen['pruefung/emailLektorSubjectAnmeldung'] = 'Iscrizione all’appello d’esame'; +$this->phrasen['pruefung/emailLektorStudentIn'] = 'Lo studente'; +$this->phrasen['pruefung/emailLektorHatSichZurPruefung'] = 'si è iscritto all’appello d’esame'; +$this->phrasen['pruefung/emailLektorAm'] = 'del'; +$this->phrasen['pruefung/emailLektorVon'] = 'dalle'; +$this->phrasen['pruefung/emailLektorUhrBis'] = 'alle'; +$this->phrasen['pruefung/emailLektorUhrAngemeldet'] = '.'; +?> diff --git a/locale/it-IT/semesterplan.php b/locale/it-IT/semesterplan.php index fb7c9f7fd..d9d27eccf 100755 --- a/locale/it-IT/semesterplan.php +++ b/locale/it-IT/semesterplan.php @@ -1,20 +1,21 @@ phrasen['semesterplan/bitteZuerstDateiAuswaehlen']=''; -$this->phrasen['semesterplan/dateiKonnteNichtGefundenWerden']=''; -$this->phrasen['semesterplan/dateinameNurBuchstaben']=''; -$this->phrasen['semesterplan/dateitypIstNichtErlaubt']=''; -$this->phrasen['semesterplan/erstellenSieIhrenSemesterplan']=''; +$this->phrasen['semesterplan/bitteZuerstDateiAuswaehlen']='Per favore selezionare un file.'; +$this->phrasen['semesterplan/dateiKonnteNichtGefundenWerden']='Il file %s%s non è stato trovato.'; +$this->phrasen['semesterplan/dateinameNurBuchstaben']='Il nome del file può contenere solo lettere e numeri.'; +$this->phrasen['semesterplan/dateitypIstNichtErlaubt']='Questo tipo di file non è supportato.'; +$this->phrasen['semesterplan/erstellenSieIhrenSemesterplan']='Compilare il calendario.'; $this->phrasen['semesterplan/fehlerBeiDerParameteruebergabe']='errore di trasmissione dei parametri'; -$this->phrasen['semesterplan/fehlerBeimLadenDerLv']='errore di caricamento della LV'; +$this->phrasen['semesterplan/fehlerBeimLadenDerLv']='errore di caricamento del corso'; $this->phrasen['semesterplan/fehlerBeimLadenDesStudienganges']='errore di caricamento del corso di studi'; -$this->phrasen['semesterplan/fehlerBeimUpload']='errore in sede di upload! Si prega di riprovare '; -$this->phrasen['semesterplan/fertig']='completo'; -$this->phrasen['semesterplan/fileErfolgreichHochgeladen']=''; -$this->phrasen['semesterplan/inMSWord']=''; -$this->phrasen['semesterplan/ladenSieDieDateiHoch']=''; -$this->phrasen['semesterplan/oeffnenSieDieGespeicherteDatei']=''; -$this->phrasen['semesterplan/ordnerinhalt']=''; -$this->phrasen['semesterplan/speichernSieDasDokument']=''; -$this->phrasen['semesterplan/speichernSieDieVorlage']=''; - +$this->phrasen['semesterplan/fehlerBeimUpload']='Errore durante l’upload. Si prega di riprovare.'; +$this->phrasen['semesterplan/fertig']='Il calendario è ora pubblicato.'; +$this->phrasen['semesterplan/fileErfolgreichHochgeladen']='File caricato con successo.'; +$this->phrasen['semesterplan/inMSWord']='Su Word basta andare su "File">>"Salva come pagina web".'; +$this->phrasen['semesterplan/ladenSieDieDateiHoch']='Caricare il file andando su "Upload".'; +$this->phrasen['semesterplan/oeffnenSieDieGespeicherteDatei']='Aprire il file doc con un programma di elaborazione testo (es: MS Word, OpenOffice) o il file html con un editor dedicato.'; +$this->phrasen['semesterplan/ordnerinhalt']='Contenuto cartella'; +$this->phrasen['semesterplan/speichernSieDasDokument']='Salvare il file come pagina web (in formato html) con il nome "index.html".'; +$this->phrasen['semesterplan/speichernSieDieVorlage']='Salvare lo schema (in formato doc o html) sul proprio computer.'; +$this->phrasen['semesterplan/ErstellungDesSemesterplans']='Pubblicazione del calendario del corso'; +$this->phrasen['semesterplan/schliessen']='chiudi'; ?> diff --git a/locale/it-IT/tools.php b/locale/it-IT/tools.php index b4a4ddf9b..8086b8bcd 100755 --- a/locale/it-IT/tools.php +++ b/locale/it-IT/tools.php @@ -23,7 +23,7 @@ $this->phrasen['tools/buchungstext']='Descrizione'; $this->phrasen['tools/content']=''; $this->phrasen['tools/dasAmpelsystemIstEinErinnerungsystem']=''; $this->phrasen['tools/datei']=''; -$this->phrasen['tools/dokumente']='Documenti'; +$this->phrasen['tools/dokumente']='Dichiarazione sostitutiva di certificazione'; $this->phrasen['tools/einzelanwendung']=''; $this->phrasen['tools/esWurdenKeineErgebnisseGefunden']='impossibile trovare risultati'; $this->phrasen['tools/esWurdenMehrAlsXDokumenteGefunden']='trovate più di 40 documenti corrispondenti alla ricerca. Si prega di specificare ulteriormente la ricerca'; @@ -31,7 +31,7 @@ $this->phrasen['tools/esWurdenMehrAlsXInhalteGefunden']='trovate più di 20 pers $this->phrasen['tools/esWurdenMehrAlsXPersonenGefunden']='trovate più di 20 persone corrispondenti alla ricerca. Si prega di specificare ulteriormente la ricerca'; $this->phrasen['tools/fehlerBeimAuslesenDerNoten']='errore di lettura dei voti'; $this->phrasen['tools/fehlerBeimLesenDerDatei']='errore di lettura del file'; -$this->phrasen['tools/inskriptionsbestaetigung']='Certificato d\'iscrizione'; +$this->phrasen['tools/inskriptionsbestaetigung']='Dichiarazione d\'iscrizione'; $this->phrasen['tools/keineDatenGefunden']=''; $this->phrasen['tools/keineZahlungenVorhanden']=''; $this->phrasen['tools/leistungsbeurteilung']=''; @@ -39,7 +39,7 @@ $this->phrasen['tools/maxPersonen']=''; $this->phrasen['tools/mussAlsStudentEingeloggtSein']=''; $this->phrasen['tools/naehereInformationenfindenSieUnter']=''; $this->phrasen['tools/nichtZugeteilt']=''; -$this->phrasen['tools/nochKeineBeurteilungEingetragen']='non è stata inserita ancora valutazione alcuna'; +$this->phrasen['tools/nochKeineBeurteilungEingetragen']='Non è stata inserita alcuna valutazione per il semestre.'; $this->phrasen['tools/offen']='rata da saldare'; $this->phrasen['tools/reservieren']=''; $this->phrasen['tools/softwarepaket']=''; diff --git a/rdf/student.rdf.php b/rdf/student.rdf.php old mode 100644 new mode 100755 index 8d4a8e4cd..842a9a36f --- a/rdf/student.rdf.php +++ b/rdf/student.rdf.php @@ -836,6 +836,7 @@ else matrikelnr.']]>convertISODate($student->gebdatum).']]>gebdatum.']]> + gebort.']]>verband.']]>gruppe.']]> diff --git a/skin/tempus.css b/skin/tempus.css index 67ddaaaf9..e8eb17994 100644 --- a/skin/tempus.css +++ b/skin/tempus.css @@ -25,6 +25,10 @@ menubar,menupopup,toolbar,tabpanels,tabbox,iframe,box,hbox,vbox,tree,label,descr padding-left: 0px; padding-right: 0px; } +menubar +{ + background-color: #ff8040; +} menupopup { border: 1px solid black; diff --git a/submodules/tablesorter b/submodules/tablesorter new file mode 160000 index 000000000..b70ba2498 --- /dev/null +++ b/submodules/tablesorter @@ -0,0 +1 @@ +Subproject commit b70ba2498dd23d9d97605ff386cdd67ff6bd9140 diff --git a/system/dbupdate_3.2.php b/system/dbupdate_3.2.php index ff95678f6..b7c77cda1 100755 --- a/system/dbupdate_3.2.php +++ b/system/dbupdate_3.2.php @@ -1103,7 +1103,7 @@ if (!$result = @$db->db_query("SELECT 1 FROM public.tbl_studienjahr LIMIT 1;")) echo 'public.tbl_studienjahr: Tabelle hinzugefuegt
    '; } -//Spalte genehmigung in lehre.tbl_studienordnung_lehrveranstaltung +//Spalte genehmigung in lehre.tbl_studienplan_lehrveranstaltung if (!$result = @$db->db_query("SELECT genehmigung FROM lehre.tbl_studienplan_lehrveranstaltung LIMIT 1;")) { $qry = "ALTER TABLE lehre.tbl_studienplan_lehrveranstaltung ADD COLUMN genehmigung BOOLEAN DEFAULT TRUE;"; @@ -1153,6 +1153,34 @@ if($result = @$db->db_query("SELECT is_nullable FROM INFORMATION_SCHEMA.COLUMNS } } +// LAS Spalte von Smallint auf numeric(5,2) +if($result = $db->db_query("SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA='lehre' AND TABLE_NAME='tbl_lehrveranstaltung' AND COLUMN_NAME = 'las' AND DATA_TYPE='smallint' ")) +{ + if($db->db_num_rows($result)>0) + { + $qry = " ALTER TABLE lehre.tbl_lehrveranstaltung ALTER COLUMN las TYPE numeric(5,2);"; + + if(!$db->db_query($qry)) + echo 'lehre.tbl_lehrveranstaltung '.$db->db_last_error().'
    '; + else + echo '
    Spalte las in lehre.tbl_lehrveranstaltung von smallint auf numeric(5,2) geändert
    '; + } +} + +// Fehlender FK bei tbl_studienplan_lehrveranstaltung +if($result = $db->db_query("SELECT * FROM information_schema.table_constraints WHERE constraint_name='fk_studienplan_lehrveranstaltung_parent_id'")) +{ + if($db->db_num_rows($result)==0) + { + $qry = "ALTER TABLE lehre.tbl_studienplan_lehrveranstaltung ADD CONSTRAINT fk_studienplan_lehrveranstaltung_parent_id FOREIGN KEY (studienplan_lehrveranstaltung_id_parent) REFERENCES lehre.tbl_studienplan_lehrveranstaltung(studienplan_lehrveranstaltung_id) ON DELETE RESTRICT ON UPDATE CASCADE;"; + + if(!$db->db_query($qry)) + echo 'lehre.tbl_studienplan_lehrveranstaltung '.$db->db_last_error().'
    '; + else + echo '
    Fehlenden FK bei Tabelle lehre.tbl_studienplan_lehrveranstaltung.studienplan_lehrveranstaltung_id_parent gesetzt
    '; + } +} + // *** Pruefung und hinzufuegen der neuen Attribute und Tabellen echo '

    Pruefe Tabellen und Attribute!

    '; @@ -1223,7 +1251,7 @@ $tabellen=array( "campus.tbl_pruefungsfenster" => array("pruefungsfenster_id","studiensemester_kurzbz","oe_kurzbz","start","ende"), "campus.tbl_pruefung" => array("pruefung_id","mitarbeiter_uid","studiensemester_kurzbz","pruefungsfenster_id","pruefungstyp_kurzbz","titel","beschreibung","methode","einzeln","storniert","insertvon","insertamum","updatevon","updateamum","pruefungsintervall"), "campus.tbl_pruefungstermin" => array("pruefungstermin_id","pruefung_id","von","bis","teilnehmer_max","teilnehmer_min","anmeldung_von","anmeldung_bis","ort_kurzbz","sammelklausur"), - "campus.tbl_pruefungsanmeldung" => array("pruefungsanmeldung_id","uid","pruefungstermin_id","lehrveranstaltung_id","status_kurzbz","wuensche","reihung","kommentar","statusupdatevon","statusupdateamum","anrechnung_id"), + "campus.tbl_pruefungsanmeldung" => array("pruefungsanmeldung_id","uid","pruefungstermin_id","lehrveranstaltung_id","status_kurzbz","wuensche","reihung","kommentar","statusupdatevon","statusupdateamum","anrechnung_id","pruefungstyp_kurzbz"), "campus.tbl_pruefungsstatus" => array("status_kurzbz","bezeichnung"), "campus.tbl_reservierung" => array("reservierung_id","ort_kurzbz","studiengang_kz","uid","stunde","datum","titel","beschreibung","semester","verband","gruppe","gruppe_kurzbz","veranstaltung_id","insertamum","insertvon"), "campus.tbl_resturlaub" => array("mitarbeiter_uid","resturlaubstage","mehrarbeitsstunden","updateamum","updatevon","insertamum","insertvon","urlaubstageprojahr"), diff --git a/system/moodlePlugin/fhcompletews30/README b/system/moodlePlugin/fhcompletews30/README new file mode 100644 index 000000000..c18543606 --- /dev/null +++ b/system/moodlePlugin/fhcompletews30/README @@ -0,0 +1,23 @@ +FHComplete Moodle 3.0 Webservice Plugin +======================================= + +Mit diesem Plugin wird Moodle 3.0 um zusätzliche Webservices erweitert +die für die Syncronisation mit FHComplete benötigt werden. + + +Installation +============ + +- ) Zur Installation des Plugins muss der gesamte Ordner fhcompletews in den + Ordner local der Moodleinstallation kopiert werden. + + zB: cp /var/www/fhcomplete/system/moodlePlugin/fhcompletews /var/www/moodle/local/ + +- ) Danach muss die Moodle Startseite aufgerufen werden. + Das neue Plugin wird automatisch erkannt uns installiert. + +Sonstiges +========= + +Falls Änderungen am Plugin durchgeführt werden, muss in version.php die Versionsnummer erhöht werden +damit Moodle die Änderung an dem Plugin erkennt und ein Update durchführt. diff --git a/system/moodlePlugin/fhcompletews30/db/services.php b/system/moodlePlugin/fhcompletews30/db/services.php new file mode 100644 index 000000000..f272cbb7a --- /dev/null +++ b/system/moodlePlugin/fhcompletews30/db/services.php @@ -0,0 +1,53 @@ +. + +/** + * Web service local plugin template external functions and service definitions. + * + * @package localwstemplate + * @copyright 2011 Jerome Mouneyrac + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +// We defined the web service functions to install. +$functions = array( + 'fhcomplete_get_course_grades' => array( + 'classname' => 'local_fhcompletews_external', + 'methodname' => 'get_course_grades', + 'classpath' => 'local/fhcompletews/externallib.php', + 'description' => 'Get Grades of a course', + 'type' => 'read', + 'capabilities'=> 'moodle/course:update,moodle/course:viewhiddencourses', + ), + + 'fhcomplete_courses_by_shortname' => array( + 'classname' => 'local_fhcompletews_external', + 'methodname' => 'get_courses_by_shortname', + 'classpath' => 'local/fhcompletews/externallib.php', + 'description' => 'Get course contents by Shortname', + 'type' => 'read', + 'capabilities'=> 'moodle/course:update,moodle/course:viewhiddencourses', + ), + + 'fhcomplete_user_get_users' => array( + 'classname' => 'core_user_external', + 'methodname' => 'get_users', + 'classpath' => 'user/externallib.php', + 'description' => 'get Users by Criteria', + 'type' => 'read', + 'capabilities'=> 'moodle/user:viewdetails, moodle/user:viewhiddendetails, moodle/course:useremail, moodle/user:update', + ), + +); diff --git a/system/moodlePlugin/fhcompletews30/externallib.php b/system/moodlePlugin/fhcompletews30/externallib.php new file mode 100644 index 000000000..000607454 --- /dev/null +++ b/system/moodlePlugin/fhcompletews30/externallib.php @@ -0,0 +1,371 @@ +. + +/** + * External Web Service Template + * + * @package localwstemplate + * @copyright 2011 Moodle Pty Ltd (http://moodle.com) + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +require_once($CFG->libdir . "/externallib.php"); + +class local_fhcompletews_external extends external_api +{ + +/************************************************** + * Webservice get_course_grades + * + * Laedt die Noten eines Kurses + **************************************************/ + public static function get_course_grades_parameters() + { + return new external_function_parameters( + array( + 'courseid' => new external_value(PARAM_INT, 'Moodle CourseID'), + 'type' => new external_value(PARAM_INT,'Type 1=Punkte, 2=Prozent, 3=Endnote lt Skala') + ), 'Get Course Grades' + ); + } + + /** + * Get course Grades + * @param int courseid + * @return array + */ + public static function get_course_grades($courseid, $type) + { + global $CFG, $DB; + require_once($CFG->dirroot . "/course/lib.php"); + require_once($CFG->dirroot.'/grade/export/lib.php'); + + //validate parameter + $params = self::validate_parameters(self::get_course_grades_parameters(), + array('courseid' => $courseid, 'type'=>$type)); + + $notenart = $type; + //$notenart=2; // 1=Punkte; 2=Prozent; 3=Endnote nach Skala + $gui=array(); + $final_id=''; + $data = array(); + + // Kursdaten Laden + if (!$course = $DB->get_record('course', array('id'=>$courseid))) + { + throw new moodle_exception('Course not found', '', '', null, 'The course ' . $courseid . ' is not found'); + return false; + } + + $id=$course->id; + $kursname=$course->fullname; + $shortname=$course->shortname; + + //ODS Notenexport starten + require_login($course); + $context = get_context_instance(CONTEXT_COURSE, $courseid); + require_once($CFG->dirroot.'/grade/export/ods/grade_export_ods.php'); + + $moodle28=false; + + try + { + $method = new ReflectionMethod('grade_export_ods','__construct'); + + if(count($method->getParameters())==3) + $moodle28=true; + } + catch(ReflectionException $e) + { + } + + if($moodle28) + { + //ab Moodle 2.8 hat grade_export_ods nur noch 3 Parameter + $formdata = new stdClass(); + $formdata->display=$notenart; + $formdata->itemids=0; + $formdata->decimals=2; + $formdata->export_feedback=false; + if (!$export = new grade_export_ods($course, 0, $formdata)) + { + throw new moodle_exception('Fehler', '', '', null, "Moodle-Kurs ".$id." ".$shortname." - keine Export Information gefunden"); + return false; + } + } + else + { + if (!$export = new grade_export_ods($course, 0, 0, false, false, $notenart, 2)) + { + throw new moodle_exception('Fehler', '', '', null, "Moodle-Kurs ".$id." ".$shortname." - keine Export Information gefunden"); + return false; + } + } + $grad =$export->columns; + + // Im Export sind die Noten fuer alle Abgaben, Quiz, etc enthalten + // Wir brauchen hier nur die Gesamtnote fuer die ganzen Kurs + foreach ($export->columns as $key=>$grade_item) + { + // Gesamtnote hat den itemtype "course" + if($grade_item->itemtype=='course') + { + $final_id=$key; + $finalitem = $grade_item; + break; + } + } + + if($final_id=='') + { + throw new moodle_exception('Fehler', '', '', null,"Moodle-Kurs ".$id." ".$shortname." - keine Endnote gefunden"); + return false; + } + + // Liste mit allen Studierenden des Kurses durchlaufen + $geub = new grade_export_update_buffer(); + $gui = new graded_users_iterator($export->course, array($final_id=>$finalitem), $export->groupid); //$export->columns + + $gui->init(); + $kursgrad =array(); + + while ($userdata = $gui->next_user()) + { + $user_item=array(); + $user = $userdata->user; + $user_item['vorname']=$user->firstname; + $user_item['nachname']=$user->lastname; + $user_item['idnummer']=$user->idnumber; + $user_item['username']=$user->username; + + // Aus den vorhanden Noten wird die Endnote fuer den Kurs herausgesucht + if(isset($userdata->grades[$final_id])) + { + $gradestr = $export->format_grade($userdata->grades[$final_id]); + $user_item['note']=$gradestr; + + // Wenn Prozent dann Prozentzeichen entfernen + if(strpos($user_item['note'],'%')!==false) + $user_item['note']=trim(str_replace('%','',$user_item['note'])); + + // nur zurueckliefern wenn eine Note gefunden wurde und diese nicht '-' ist + if($user_item['note']!='-') + $data[]=$user_item; + } + } + + $gui->close(); + $geub->close(); + + if (count($data)==0) + { + throw new moodle_exception('Fehler', '', '', null,"Moodle-Kurs ".$id." ".$shortname." - keine Kurs-Noten Informationen gefunden "); + return false; + } + + return $data; + } + + /** + * Returns description of method result value + * @return external_description + */ + public static function get_course_grades_returns() + { + return new external_multiple_structure( + new external_single_structure( + array( + 'vorname' => new external_value(PARAM_TEXT, 'vorname'), + 'nachname' => new external_value(PARAM_TEXT, 'nachname'), + 'idnummer' => new external_value(PARAM_TEXT, 'idnummer'), + 'username' => new external_value(PARAM_TEXT, 'username'), + 'note' => new external_value(PARAM_TEXT, 'note'), + ), 'course' + ) + ); + } + +/************************************************** + * Webservice get_courses_by_shortname + * + * Laedt Kurse anhand der Kurzbezeichnung + **************************************************/ + public static function get_courses_by_shortname_parameters() + { + return new external_function_parameters( + array('options' => new external_single_structure( + array('shortnames' => new external_multiple_structure( + new external_value(PARAM_RAW, 'Short Name') + , 'List of short names. If empty return all courses + except front page course.', + VALUE_OPTIONAL) + ), 'options - operator OR is used', VALUE_DEFAULT, array()) + ) + ); + } + + /** + * Get courses + * @param array $options + * @return array + */ + public static function get_courses_by_shortname($options) + { + global $CFG, $DB; + require_once($CFG->dirroot . "/course/lib.php"); + + //validate parameter + $params = self::validate_parameters(self::get_courses_by_shortname_parameters(), + array('options' => $options)); + + //retrieve courses + if (!key_exists('shortnames', $params['options']) + or empty($params['options']['shortnames'])) { + $courses = $DB->get_records('course'); + } else { + $courses = $DB->get_records_list('course', 'shortname', $params['options']['shortnames']); + } + + //create return value + $coursesinfo = array(); + foreach ($courses as $course) + { + + // now security checks + $context = get_context_instance(CONTEXT_COURSE, $course->id); + try + { + self::validate_context($context); + } + catch (Exception $e) + { + $exceptionparam = new stdClass(); + $exceptionparam->message = $e->getMessage(); + $exceptionparam->shortname = $course->shortname; + throw new moodle_exception( + get_string('errorcoursecontextnotvalid', 'webservice', $exceptionparam)); + } + require_capability('moodle/course:view', $context); + + $courseinfo = array(); + $courseinfo['id'] = $course->id; + $courseinfo['fullname'] = $course->fullname; + $courseinfo['shortname'] = $course->shortname; + $courseinfo['categoryid'] = $course->category; + $courseinfo['summary'] = $course->summary; + $courseinfo['summaryformat'] = $course->summaryformat; + $courseinfo['format'] = $course->format; + $courseinfo['startdate'] = $course->startdate; + $courseinfo['numsections'] = $course->numsections; + + //some field should be returned only if the user has update permission + $courseadmin = has_capability('moodle/course:update', $context); + if ($courseadmin) + { + $courseinfo['categorysortorder'] = $course->sortorder; + $courseinfo['idnumber'] = $course->idnumber; + $courseinfo['showgrades'] = $course->showgrades; + $courseinfo['showreports'] = $course->showreports; + $courseinfo['newsitems'] = $course->newsitems; + $courseinfo['visible'] = $course->visible; + $courseinfo['maxbytes'] = $course->maxbytes; + $courseinfo['hiddensections'] = $course->hiddensections; + $courseinfo['groupmode'] = $course->groupmode; + $courseinfo['groupmodeforce'] = $course->groupmodeforce; + $courseinfo['defaultgroupingid'] = $course->defaultgroupingid; + $courseinfo['lang'] = $course->lang; + $courseinfo['timecreated'] = $course->timecreated; + $courseinfo['timemodified'] = $course->timemodified; + $courseinfo['forcetheme'] = $course->theme; + $courseinfo['enablecompletion'] = $course->enablecompletion; + $courseinfo['completionstartonenrol'] = $course->completionstartonenrol; + $courseinfo['completionnotify'] = $course->completionnotify; + } + + if ($courseadmin or $course->visible + or has_capability('moodle/course:viewhiddencourses', $context)) + { + $coursesinfo[] = $courseinfo; + } + } + + return $coursesinfo; + } + + /** + * Returns description of method result value + * @return external_description + */ + public static function get_courses_by_shortname_returns() + { + return new external_multiple_structure( + new external_single_structure( + array( + 'id' => new external_value(PARAM_INT, 'course id'), + 'shortname' => new external_value(PARAM_TEXT, 'course short name'), + 'categoryid' => new external_value(PARAM_INT, 'category id'), + 'categorysortorder' => new external_value(PARAM_INT, + 'sort order into the category', VALUE_OPTIONAL), + 'fullname' => new external_value(PARAM_TEXT, 'full name'), + 'idnumber' => new external_value(PARAM_RAW, 'id number', VALUE_OPTIONAL), + 'summary' => new external_value(PARAM_RAW, 'summary'), + 'summaryformat' => new external_value(PARAM_INT, + 'the summary text Moodle format'), + 'format' => new external_value(PARAM_ALPHANUMEXT, + 'course format: weeks, topics, social, site,..'), + 'showgrades' => new external_value(PARAM_INT, + '1 if grades are shown, otherwise 0', VALUE_OPTIONAL), + 'newsitems' => new external_value(PARAM_INT, + 'number of recent items appearing on the course page', VALUE_OPTIONAL), + 'startdate' => new external_value(PARAM_INT, + 'timestamp when the course start'), + 'numsections' => new external_value(PARAM_INT, 'number of weeks/topics'), + 'maxbytes' => new external_value(PARAM_INT, + 'largest size of file that can be uploaded into the course', + VALUE_OPTIONAL), + 'showreports' => new external_value(PARAM_INT, + 'are activity report shown (yes = 1, no =0)', VALUE_OPTIONAL), + 'visible' => new external_value(PARAM_INT, + '1: available to student, 0:not available', VALUE_OPTIONAL), + 'hiddensections' => new external_value(PARAM_INT, + 'How the hidden sections in the course are displayed to students', + VALUE_OPTIONAL), + 'groupmode' => new external_value(PARAM_INT, 'no group, separate, visible', + VALUE_OPTIONAL), + 'groupmodeforce' => new external_value(PARAM_INT, '1: yes, 0: no', + VALUE_OPTIONAL), + 'defaultgroupingid' => new external_value(PARAM_INT, 'default grouping id', + VALUE_OPTIONAL), + 'timecreated' => new external_value(PARAM_INT, + 'timestamp when the course have been created', VALUE_OPTIONAL), + 'timemodified' => new external_value(PARAM_INT, + 'timestamp when the course have been modified', VALUE_OPTIONAL), + 'enablecompletion' => new external_value(PARAM_INT, + 'Enabled, control via completion and activity settings. Disbaled, + not shown in activity settings.', + VALUE_OPTIONAL), + 'completionstartonenrol' => new external_value(PARAM_INT, + '1: begin tracking a student\'s progress in course completion + after course enrolment. 0: does not', + VALUE_OPTIONAL), + 'completionnotify' => new external_value(PARAM_INT, + '1: yes 0: no', VALUE_OPTIONAL), + 'lang' => new external_value(PARAM_ALPHANUMEXT, + 'forced course language', VALUE_OPTIONAL), + 'forcetheme' => new external_value(PARAM_ALPHANUMEXT, + 'name of the force theme', VALUE_OPTIONAL), + ), 'course' + ) + ); + } +} diff --git a/system/moodlePlugin/fhcompletews30/lang/en/local_fhcompletews.php b/system/moodlePlugin/fhcompletews30/lang/en/local_fhcompletews.php new file mode 100644 index 000000000..4c72c54e4 --- /dev/null +++ b/system/moodlePlugin/fhcompletews30/lang/en/local_fhcompletews.php @@ -0,0 +1,25 @@ +. + +/** + * plugin related strings + * @package localfhcompletws + * @copyright 2011 Moodle Pty Ltd (http://moodle.com) + * @author Jerome Mouneyrac + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +$string['pluginname'] = 'FH-Complete Webservice Plugin'; diff --git a/system/moodlePlugin/fhcompletews30/version.php b/system/moodlePlugin/fhcompletews30/version.php new file mode 100644 index 000000000..6fd689c4e --- /dev/null +++ b/system/moodlePlugin/fhcompletews30/version.php @@ -0,0 +1,25 @@ +. + +$plugin->version = 2015020404; // The (date) version of this module + 2 extra digital for daily versions + // This version number is displayed into /admin/forms.php + // TODO: if ever this plugin get branched, the old branch number + // will not be updated to the current date but just incremented. We will + // need then a $plugin->release human friendly date. For the moment, we use + // display this version number with userdate (dev friendly) +$plugin->requires = 2013051400; // Requires this Moodle version - at least 2.5 +$plugin->cron = 0; +$plugin->release = '1.2 (Build: 2015020404)'; +$plugin->maturity = MATURITY_STABLE; +$plugin->component = 'local_fhcompletews'; diff --git a/vilesci/lehre/lv_merge.php b/vilesci/lehre/lv_merge.php new file mode 100644 index 000000000..04a143a59 --- /dev/null +++ b/vilesci/lehre/lv_merge.php @@ -0,0 +1,801 @@ + + */ +/** + * Script to merge or transfer courses. + * Two columns are shown with courses that matches the filter. + * Mark the course on the left side, that will be merged with the one on the right side. + */ +require_once('../../config/vilesci.config.inc.php'); +require_once('../../include/basis_db.class.php'); +//require_once('../../include/person.class.php'); +require_once('../../include/functions.inc.php'); +require_once('../../include/benutzerberechtigung.class.php'); +require_once('../../include/studiengang.class.php'); +require_once('../../include/organisationsform.class.php'); +require_once('../../include/studienplan.class.php'); +require_once('../../include/studiensemester.class.php'); +require_once('../../include/lehrveranstaltung.class.php'); +require_once('../../include/lehrtyp.class.php'); + +if (!$db = new basis_db()) + die('Es konnte keine Verbindung zum Server aufgebaut werden.'); + +$uid = get_uid(); + +$rechte = new benutzerberechtigung(); +$rechte->getBerechtigungen($uid); +if(!$rechte->isBerechtigt('lehre/lehrveranstaltung')) + die($rechte->errormsg); + +$activeAddons = array_filter(explode(";", ACTIVE_ADDONS)); + +$msg=''; + +$input_text_left = isset($_REQUEST['input_text_left'])?$_REQUEST['input_text_left']:''; +$input_text_right = isset($_REQUEST['input_text_right'])?$_REQUEST['input_text_right']:''; +$select_stg_kz_left = isset($_REQUEST['select_stg_kz_left'])?$_REQUEST['select_stg_kz_left']:''; +$select_stg_kz_right = isset($_REQUEST['select_stg_kz_right'])?$_REQUEST['select_stg_kz_right']:''; +$select_semester_left = isset($_REQUEST['select_semester_left'])?$_REQUEST['select_semester_left']:'-1'; +$select_semester_right = isset($_REQUEST['select_semester_right'])?$_REQUEST['select_semester_right']:'-1'; +$select_orgform_left = isset($_REQUEST['select_orgform_left'])?$_REQUEST['select_orgform_left']:''; +$select_orgform_right = isset($_REQUEST['select_orgform_right'])?$_REQUEST['select_orgform_right']:''; +$select_studienplan_left = isset($_REQUEST['select_studienplan_left'])?$_REQUEST['select_studienplan_left']:''; +$select_studienplan_right = isset($_REQUEST['select_studienplan_right'])?$_REQUEST['select_studienplan_right']:''; +$select_lehrtyp_left = isset($_REQUEST['select_lehrtyp_left'])?$_REQUEST['select_lehrtyp_left']:''; +$select_lehrtyp_right = isset($_REQUEST['select_lehrtyp_right'])?$_REQUEST['select_lehrtyp_right']:''; + +$courseLeft = isset($_REQUEST['courseLeft'])?$_REQUEST['courseLeft']:'-1'; +$courseRight = isset($_REQUEST['courseRight'])?$_REQUEST['courseRight']:'-1'; + +$stsem = new studiensemester(); +$stsem_default = $stsem->getakt(); + +$studiensemester_kurzbz = isset($_REQUEST['studiensemester_kurzbz'])?$_REQUEST['studiensemester_kurzbz']:$stsem_default; + +//echo $courseLeft.'
    '; +//echo $courseRight.'
    '; + +if (isset($_REQUEST['compare'])) +{ + if ($courseLeft!=$courseRight && $courseLeft!='-1' && $courseRight!='-1') + { + // Define an array of attributes, that are NOT to be compared + $deleteValues = array( + 'new' => null, + 'ext_id' => null, + 'insertamum' => null, + 'insertvon' => null, + 'updateamum' => null, + 'updatevon' => null, + 'bezeichnung_arr' => null, + 'lehrveranstaltungen' => null, + 'errormsg' => null + ); + + $lv1 = new lehrveranstaltung(); + $lv1->load($courseLeft); + $lv1_arr = get_object_vars($lv1); + $lv1_arr = array_diff_key($lv1_arr, $deleteValues); + + $lv2 = new lehrveranstaltung(); + $lv2->load($courseRight); + $lv2_arr = get_object_vars($lv2); + $lv2_arr = array_diff_key($lv2_arr, $deleteValues); + + $lv_diff1 = array_diff_assoc($lv1_arr, $lv2_arr); + $lv_diff2 = array_diff_assoc($lv2_arr, $lv1_arr); + + $msg = 'Differences in courses (only columns with differences are shown)'; + $msg .= '
    "+e.organisationseinheit+""+e.lehrveranstaltung[0].bezeichnung+""; + row += "
    "+e.organisationseinheit+""+e.lehrveranstaltung[0].bezeichnung+"
    ("+e.lehrveranstaltung[0].lehrform_kurzbz+", "+e.lehrveranstaltung[0].ects+" ECTS, "+e.pruefung.mitarbeiter_uid+")
    "; e.pruefung.termine.forEach(function(d){ var storno = false; var anmeldung_id = null; @@ -336,7 +346,7 @@ function writePruefungsTable(e, data, anmeldung) var frist = termin; termin = termin.getDate()+"."+(termin.getMonth()+1)+"."+termin.getFullYear(); frist = frist.getTime(); - frist = frist - (3*24*60*60*1000); + frist = frist - (*24*60*60*1000); var fristDate = new Date(frist); frist = fristDate.getDate()+"."+(fristDate.getMonth()+1)+"."+fristDate.getFullYear(); @@ -345,7 +355,7 @@ function writePruefungsTable(e, data, anmeldung) if(!storno) button = "

    t('pruefung/anmeldefristAbgelaufen'); ?>
    "; else - button = "

    Storno nicht mehr möglich.
    "; + button = "

    t('pruefung/stornoNichtMehrMoeglich'); ?>
    "; } else if(anmeldung || e.lehrveranstaltung[0].angemeldet) { @@ -370,7 +380,7 @@ function writePruefungsTable(e, data, anmeldung) if(d.max === null) { - teilnehmer += "unbegrenzt
    "; + teilnehmer += "t('pruefung/unbegrenzt'); ?>
    "; } else { @@ -958,10 +968,17 @@ function loadPruefungStudiengang(studiengang_kz, studiensemester) var liste = ""; data.result.forEach(function(e){ liste += "

    "; + try + { + e.pruefung[0].termine.forEach(function(d){ + liste += "
  • "+convertDateTime(d.von)+" "+convertDateTime(d.von, "time")+" - "+convertDateTime(d.bis, "time")+"
  • "; + }); + } + catch(err) + { + var errmsg = err.message; + } + liste += ""; }); $("#pruefungenListe").append(liste); } @@ -1309,6 +1326,7 @@ function unmarkMissingFormEntry() function loadLehrveranstaltungen() { var studiensemester_kurzbz = $("#studiensemester").val(); + //alert(studiensemester_kurzbz); var mitarbeiter_uid = $("#mitarbeiter_uid").val(); $.ajax({ dataType: 'json', diff --git a/cis/private/lehre/pruefung/pruefungsanmeldung.json.php b/cis/private/lehre/pruefung/pruefungsanmeldung.json.php index bd093c2a5..137e27a45 100755 --- a/cis/private/lehre/pruefung/pruefungsanmeldung.json.php +++ b/cis/private/lehre/pruefung/pruefungsanmeldung.json.php @@ -31,6 +31,14 @@ require_once('../../../../include/mail.class.php'); require_once('../../../../include/anrechnung.class.php'); require_once('../../../../include/prestudent.class.php'); require_once('../../../../include/person.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(); @@ -361,6 +369,7 @@ function loadTermine() */ function saveAnmeldung($aktStudiensemester = null, $uid = null) { + global $p; $termin = new pruefungstermin($_REQUEST["termin_id"]); $pruefung = new pruefung(); $lehrveranstaltung = new lehrveranstaltung($_REQUEST["lehrveranstaltung_id"]); @@ -426,6 +435,10 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) $pruefung->getPruefungen($uid, NULL, $lehrveranstaltung->lehrveranstaltung_id); $anmeldung_moeglich = true; $anzahlPruefungen = count($pruefung->result); + + // Defaulteinstellung für Prüfungstypen - schauen, ob bereits aus KTU-Addon geladen + if(!isset($pruefungstyp_kurzbzArray)) + $pruefungstyp_kurzbzArray = array("Termin1","Termin2","kommPruef"); if(isset($pruefungstyp_kurzbzArray)) { if($anzahlPruefungen < count($pruefungstyp_kurzbzArray)) @@ -445,8 +458,8 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) { $pruefungsanmeldung = new pruefungsanmeldung($prf->pruefungsanmeldung_id); $pruefungstermin = new pruefungstermin($pruefungsanmeldung->pruefungstermin_id); - $p = new pruefungCis($pruefungstermin->pruefung_id); - $pruefungsfenster = new pruefungsfenster($p->pruefungsfenster_id); + $pf = new pruefungCis($pruefungstermin->pruefung_id); + $pruefungsfenster = new pruefungsfenster($pf->pruefungsfenster_id); $studiensemester = new studiensemester(); $stdsem = $studiensemester->getaktorNext(); $i=0; @@ -492,7 +505,7 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) if($creditpoints < $lehrveranstaltung->ects) { $data['error'] = 'true'; - $data['errormsg'] = 'Credit-Points-Guthaben ist zu gering.'; + $data['errormsg'] = $p->t('pruefung/zuWenigeCreditPoints'); return $data; } } @@ -506,7 +519,7 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) { $data['result'][$temp->pruefungstermin_id] = "true"; $data['error'] = 'true'; - $data['errormsg'] = 'Kollision mit anderer Anmeldung.'; + $data['errormsg'] = $p->t('pruefung/kollisionMitAndererAnmeldung'); } } if(isset($data['error']) && $data['error'] = 'true') @@ -517,14 +530,14 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) else { $data['error']='true'; - $data['errormsg']='Keine freien Plätze vorhanden.'; + $data['errormsg']=$p->t('pruefung/keineFreienPlaetzeVorhanden'); return $data; } } else { $data['error']='true'; - $data['errormsg']='Anmeldung auf Grund von Sperre nicht möglich.'; + $data['errormsg']=$p->t('pruefung/anmeldungAufgrundVonSperreNichtMoeglich'); return $data; } @@ -581,19 +594,19 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) else $to = $pruefung->mitarbeiter_uid."@".DOMAIN; $from = "noreply@".DOMAIN; - $subject = "Anmeldung zur Prüfung"; - $mail = new mail($to, $from, $subject, "Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen."); + $subject = $p->t('pruefung/emailLektorSubjectAnmeldung'); + $mail = new mail($to, $from, $subject, $p->t('pruefung/emailBodyBitteHtmlSicht')); $student = new student($uid); $datum = new datum(); $lv = new lehrveranstaltung($anmeldung->lehrveranstaltung_id); - $html = "StudentIn ".$student->vorname." ".$student->nachname." hat sich zur Prüfung ".$lv->bezeichnung." am ".$datum->formatDatum($termin->von, "m.d.Y")." von ".$datum->formatDatum($termin->von,"h:i")." Uhr bis ".$datum->formatDatum($termin->bis,"h:i")." Uhr angemeldet."; + $html = $p->t('pruefung/emailLektorStudentIn')." ".$student->vorname." ".$student->nachname." ".$p->t('pruefung/emailLektorHatSichZurPruefung')." ".$lv->bezeichnung." ".$p->t('pruefung/emailLektorAm')." ".$datum->formatDatum($termin->von, "m.d.Y")." ".$p->t('pruefung/emailLektorVon')." ".$datum->formatDatum($termin->von,"h:i")." ".$p->t('pruefung/emailLektorUhrBis')." ".$datum->formatDatum($termin->bis,"h:i")." ".$p->t('pruefung/emailLektorUhrAngemeldet'); $mail->setHTMLContent($html); $mail->send(); - $data['result'] = "Anmeldung erfolgreich!"; + $data['result'] = $p->t('pruefung/anmeldungErfolgreich'); $data['error']='false'; $data['errormsg']=''; } @@ -612,13 +625,13 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) else { $data['error']='true'; - $data['errormsg']="Prestudent nicht gefunden."; + $data['errormsg']=$p->t('pruefung/prestudentNichtGefunden'); } } else { $data['error']='true'; - $data['errormsg']="Prestudent nicht gefunden."; + $data['errormsg']=$p->t('pruefung/prestudentNichtGefunden'); } return $data; } @@ -694,6 +707,7 @@ function getAllPruefungen($aktStudiensemester = null, $uid = null) */ function stornoAnmeldung($uid = null) { + global $p; $pruefungsanmeldung_id=$_REQUEST['pruefungsanmeldung_id']; $pruefungsanmeldung = new pruefungsanmeldung($pruefungsanmeldung_id); $anrechnung = new anrechnung($pruefungsanmeldung->anrechnung_id); @@ -701,7 +715,7 @@ function stornoAnmeldung($uid = null) { if($anrechnung->delete($anrechnung->anrechnung_id)) { - $data['result'] = 'Anmeldung erfolgreich gelöscht.'; + $data['result'] = $p->t('pruefung/anmeldungErfolgreichGeloescht'); $data['error'] = 'false'; $data['errormsg'] = ''; } @@ -722,6 +736,7 @@ function stornoAnmeldung($uid = null) */ function getAnmeldungenTermin() { + global $p; $lehrveranstaltung_id = $_REQUEST["lehrveranstaltung_id"]; $pruefungstermin_id = $_REQUEST["pruefungstermin_id"]; $pruefungstermin = new pruefungstermin($pruefungstermin_id); @@ -751,7 +766,7 @@ function getAnmeldungenTermin() } else { - $data['errormsg']= 'Keine Anmeldungen vorhanden'; + $data['errormsg']= $p->t('pruefung/keineAnmeldungenVorhanden'); } } return $data; @@ -785,6 +800,7 @@ function saveReihung() */ function anmeldungBestaetigen($uid) { + global $p; $pruefungsanmeldung_id = $_REQUEST["pruefungsanmeldung_id"]; $status = "bestaetigt"; $anmeldung = new pruefungsanmeldung(); @@ -800,27 +816,27 @@ function anmeldungBestaetigen($uid) $to = $anmeldung->uid."@".DOMAIN; $from = "noreply@".DOMAIN; - $subject = "Anmeldungsbestätigung zur Prüfung"; - $html = "Ihre Anmeldung zur Prüfung wurde von ".$ma->vorname." ".$ma->nachname." bestätigt.
    "; + $subject = $p->t('pruefung/emailSubjectAnmeldungBestaetigung'); + $html = $p->t('pruefung/emailBody1')." ".$ma->vorname." ".$ma->nachname." ".$p->t('pruefung/emailBody2')."
    "; $html .= "
    "; - $html .= "Prüfung: ".$lv->bezeichnung."
    "; + $html .= $p->t('pruefung/emailBodyPruefung')." ".$lv->bezeichnung."
    "; if($pruefung->einzeln) { $date = $datum->formatDatum($termin->von, "Y-m-d h:i:s"); $date = strtotime($date); $date = $date+(60*$pruefung->pruefungsintervall*($anmeldung->reihung-1)); $von = date("h:i",$date); - $html .= "Termin: ".$datum->formatDatum($termin->von, "d.m.Y")." um ".$von."
    "; - $html .= "Dauer: ".$pruefung->pruefungsintervall." Minuten
    "; + $html .= $p->t('pruefung/emailBodyTermin')." ".$datum->formatDatum($termin->von, "d.m.Y")." ".$p->t('pruefung/emailBodyUm')." ".$von."
    "; + $html .= $p->t('pruefung/emailBodyDauer')." ".$pruefung->pruefungsintervall." ".$p->t('pruefung/emailBodyMinuten')."
    "; } else - $html .= "Termin: ".$datum->formatDatum($termin->von, "d.m.Y")." um ".$datum->formatDatum($termin->von, "h:i")."
    "; - $html .= "Ort: ".$ort->bezeichnung."
    "; + $html .= $p->t('pruefung/emailBodyTermin')." ".$datum->formatDatum($termin->von, "d.m.Y")." ".$p->t('pruefung/emailBodyUm')." ".$datum->formatDatum($termin->von, "h:i")."
    "; + $html .= $p->t('pruefung/anmeldungErfolgreich')." ".$ort->bezeichnung."
    "; $html .= "
    "; - $html .= "Link zur Anmeldung
    "; + $html .= "".$p->t('pruefung/emailBodyLinkZurAnmeldung')."
    "; $html .= "
    "; - $mail = new mail($to, $from, $subject,"Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen."); + $mail = new mail($to, $from, $subject,$p->t('pruefung/emailBodyBitteHtmlSicht')); $mail->setHTMLContent($html); $mail->send(); diff --git a/cis/private/lehre/pruefung/pruefungsbewertung.js.php b/cis/private/lehre/pruefung/pruefungsbewertung.js.php new file mode 100644 index 000000000..e6369eb97 --- /dev/null +++ b/cis/private/lehre/pruefung/pruefungsbewertung.js.php @@ -0,0 +1,300 @@ + + */ + + +require_once('../../../../config/cis.config.inc.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); + +?> + + +/** + * Error-Behandlung bei Ajax Requests + */ + + +function loadError(xhr, textStatus, errorThrown) +{ + if(xhr.status==200) + alert('Fehler:'+xhr.responseText); + else + alert('Fehler beim Laden der Daten. ErrorNr:'+xhr.status); +} + +/** + * Lädt alle Prüfungen eines Mitarbeiters + * @returns {undefined} + */ +function loadPruefungenMitarbeiter() +{ + var uid = $("#mitarbeiter_uid").val(); + $.ajax({ + dataType: 'json', + url: "./pruefungsbewertung.json.php", + type: "POST", + data: { + method: "getPruefungMitarbeiter", + mitarbeiter_uid: uid + }, + error: loadError + }).success(function(data){ + $("#pruefungen").find("h2").first().text("t('pruefung/pruefungPruefungenTitle'); ?> ("+uid+")"); + if(data.error === 'false') + { + var liste = ""; + data.result.forEach(function(e){ + liste += "
  • "+e.bezeichnung+"
      "; + e.pruefung.lehrveranstaltungen.forEach(function(d) + { + d.pruefung.termine.forEach(function(f){ + liste += "
    • "+convertDateTime(f.von)+"
    • "; + }); + }) + liste += "
    "; + }); + $("#pruefungenListe").html(liste); + } + else + { + $("#pruefungenListe").html(data.errormsg); + } + }); +} + +/** + * Lädt die Anmeldungen zu einer Prüfung + * @param {type} pruefungstermin_id ID des Prüfungstermins + * @param {type} lehrveranstaltung_id ID der Lehrveranstaltung + * @returns {undefined} + */ +function showTeilnehmer(pruefungstermin_id, lehrveranstaltung_id, lehrveranstaltung, datum) +{ + $("#modalOverlay").addClass("modalOverlay"); + $("#anmeldeDaten").empty(); + $("#anmeldungen").children("h2").text("Bewertungen zu "+lehrveranstaltung+" ("+datum+")"); + var noten = ""; + } + else + { + messageBox("message",data.errormsg, "red", "highlight", 1000); + } + }).complete(function(event, xhr, settings){ + var notenSelect = noten; + $.ajax({ + dataType: 'json', + url: "./pruefungsbewertung.json.php", + type: "POST", + data: { + method: "getAnmeldungenTermin", + pruefungstermin_id: pruefungstermin_id, + lehrveranstaltung_id: lehrveranstaltung_id + }, + error: loadError + }).success(function(data){ + var entry = ""; + if(data.error === "false") + { + data.result.forEach(function(d) + { + if(d.status_kurzbz === "bestaetigt") + { + var datum = d.von.split(" "); + if(d.pruefung.note===null) + { + entry = "
    "+d.student.vorname+" "+d.student.nachname+"
    "+notenSelect+"
    "; + } + else + { + entry = "
    "+d.student.vorname+" "+d.student.nachname+"
    "+notenSelect+"
    "; + } + $("#anmeldeDaten").append(entry); + if(d.pruefung.note!==null) + { + markAsSaved(document.getElementById(d.student.uid).firstChild); + $("#"+d.student.uid).find("select").val(d.pruefung.note); + } + else + { + markAsUnsaved(document.getElementById(d.student.uid).firstChild); + } + var t = $("#note_anmerkung_"+d.student.uid).parent().find('select').first().width(); + $("#note_anmerkung_"+d.student.uid).width(t); + } + }); + if(entry === "") + { + entry = "
    Keine Anmeldungen vorhanden.
    "; + $("#anmeldeDaten").html(entry); + } + } + else + { + entry = "
    "+data.errormsg+"
    "; + $("#anmeldeDaten").html(entry); + } + }).complete(function(event, xhr, settings){ + $("#modalOverlay").removeClass("modalOverlay"); + }); + }); +} + +/** + * Speichert eine Beurteilung + * @param {type} ele Element das die Funtkion aufruft + * @param {type} datum + * @param {type} pruefungsanmeldung_id ID der Anmeldung + * @param {type} pruefung_id ID der Prüfung + * @param {type} lehrveranstaltung_id ID der Lehrveranstaltung + * @returns {void} + */ +function saveBeurteilung(ele, datum, pruefungsanmeldung_id, pruefung_id, lehrveranstaltung_id) +{ + var student_uid = $(ele).parent().attr("id"); + var mitarbeiter_uid = $("#mitarbeiter_uid").val(); + var note = $(ele).parent().find("select").val(); + if((note === "null") || (note===null)) + { + messageBox("message", "Keine Note ausgewählt.", "red", "highlight", 1000); + return false; + } + var anmerkung = $("#note_anmerkung_"+student_uid).val(); + + $.ajax({ + dataType: 'json', + url: "./pruefungsbewertung.json.php", + type: "POST", + data: { + method: "saveBeurteilung", + pruefung_id: pruefung_id, + lehrveranstaltung_id: lehrveranstaltung_id, + student_uid: student_uid, + mitarbeiter_uid: mitarbeiter_uid, + note: note, + //TODO Datum der Prüfung oder der Beurteilung????? + datum: datum, + anmerkung: anmerkung, + pruefungsanmeldung_id: pruefungsanmeldung_id + }, + error: loadError + }).success(function(data){ + if(data.error != 'true') + { + markAsSaved(ele); + $(ele).attr("onclick", "updateBeurteilung(this,\""+data.result+"\")"); + } + else + { + messageBox("message",data.errormsg, "red", "highlight", 1000); + $(ele).parent().find("select").val(null); + } + }).complete(function(event, xhr, settings){ + + }); +} + +/** + * Aktualisiert eine Beurteilung + * @param {type} ele Element das die Funtkion aufruft + * @param {type} pruefung_id ID der Prüfung + * @returns {undefined} + */ +function updateBeurteilung(ele, pruefung_id) +{ + var student_uid = $(ele).parent().attr("id"); + var mitarbeiter_uid = $("#mitarbeiter_uid").val(); + var note = $(ele).parent().find("select").val(); + var anmerkung = $("#note_anmerkung_"+student_uid).val(); + if((note === "null") || (note===null)) + { + messageBox("message", "Keine Note ausgewählt.", "red", "highlight", 1000); + return false; + } + $.ajax({ + dataType: 'json', + url: "./pruefungsbewertung.json.php", + type: "POST", + data: { + method: "updateBeurteilung", + pruefung_id: pruefung_id, + note: note, + anmerkung: anmerkung + }, + error: loadError + }).success(function(data){ + if(data.error != 'true') + { + markAsSaved(ele); + } + else + { + messageBox("message",data.errormsg, "red", "highlight", 1000); + } + + + }).complete(function(event, xhr, settings){ + + }); +} + +/** + * Markiert einen Datensatz als gespeichert + * @param {type} ele Element das die Funtkion aufruft + * @returns {undefined} + */ +function markAsSaved(ele) +{ + $(ele).parent().removeClass("unsaved"); + $(ele).parent().addClass("saved"); +} + +/** + * Markiert einen Datensatz als ungespeichert + * @param {type} ele Element das die Funtkion aufruft + * @returns {undefined} + */ +function markAsUnsaved(ele) +{ + $(ele).parent().removeClass("saved"); + $(ele).parent().addClass("unsaved"); +} diff --git a/cis/private/lehre/pruefung/pruefungsbewertung.php b/cis/private/lehre/pruefung/pruefungsbewertung.php index 28894e13c..7137e0a35 100755 --- a/cis/private/lehre/pruefung/pruefungsbewertung.php +++ b/cis/private/lehre/pruefung/pruefungsbewertung.php @@ -62,7 +62,7 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA - + diff --git a/cis/private/lehre/pruefung/pruefungstermin_festlegen.php b/cis/private/lehre/pruefung/pruefungstermin_festlegen.php index 909ea18bd..31428cdaf 100755 --- a/cis/private/lehre/pruefung/pruefungstermin_festlegen.php +++ b/cis/private/lehre/pruefung/pruefungstermin_festlegen.php @@ -195,7 +195,7 @@ if(empty($lehrveranstaltung->lehrveranstaltungen) && !$rechte->isBerechtigt('leh
  • t('global/studiensemester'); ?>: -
    '; + foreach ($lv_diff1 as $key => $value) + { + $msg .= ''; + } + $msg .= ''; + foreach ($lv_diff1 as $key => $value) + { + $msg .= ''; + } + $msg .= ''; + foreach ($lv_diff2 as $key => $value) + { + $msg .= ''; + } + $msg .= '
    '.StringCut($key,10,false,'...').'
    '.$value.'
    '.$value.'
    '; + } + else + $msg="Please select 2 different courses"; +} + +if((isset($_REQUEST['transfer']) || isset($_REQUEST['mergeDelete'])) && isset($courseLeft) && isset($courseRight) && $courseLeft>=0 && $courseRight>=0) +{ + if($courseLeft==$courseRight) + { + $msg="The courses may not have the same ID"; + } + else + { + $msg=''; + $update_qry="BEGIN;"; + + if (isset($_REQUEST['transfer'])) + { + $update_qry.="UPDATE campus.tbl_benutzerlvstudiensemester SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).";"; + $update_qry.="UPDATE campus.tbl_lvgesamtnote SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).";"; + // Updates for Pruefungsverwaltung + $update_qry.="UPDATE campus.tbl_lehrveranstaltung_pruefung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND pruefung_id IN (SELECT pruefung_id FROM campus.tbl_pruefung WHERE studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).");"; + $update_qry.="UPDATE campus.tbl_pruefungsanmeldung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND pruefungstermin_id IN (SELECT pruefungstermin_id FROM campus.tbl_pruefungstermin JOIN campus.tbl_pruefung USING (pruefung_id) WHERE studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).");"; + + // LV-Infos will be copied if $courseRight has none and $courseLeft has some + $lvinfo_qry_right = "SELECT * FROM campus.tbl_lvinfo WHERE lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER).";"; + $result_right = $db->db_query($lvinfo_qry_right); + $lvinfo_qry_left = "SELECT * FROM campus.tbl_lvinfo WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $result_left = $db->db_query($lvinfo_qry_left); + // Check if $courseRight has lvinfos + if ($db->db_affected_rows($result_right)==0) + { + if ($db->db_affected_rows($result_left)>0) + { + while($row = $db->db_fetch_object($result_left)) + { + $update_qry.=" INSERT INTO campus.tbl_lvinfo (lehrveranstaltung_id, sprache, titel, lehrziele, lehrinhalte, methodik, voraussetzungen, unterlagen, pruefungsordnung, anmerkung, kurzbeschreibung, genehmigt, aktiv, updateamum, updatevon, insertamum, insertvon, anwesenheit) + SELECT ".$db->db_add_param($courseRight, FHC_INTEGER).", ".$db->db_add_param($row->sprache).", titel, lehrziele, lehrinhalte, methodik, voraussetzungen, unterlagen, pruefungsordnung, anmerkung, kurzbeschreibung, genehmigt, aktiv, NULL, NULL, now(), ".$db->db_add_param($uid).", anwesenheit + FROM campus.tbl_lvinfo + WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." + AND sprache=".$db->db_add_param($row->sprache).";"; + } + } + } + $update_qry.="/*
    */"; + $update_qry.="UPDATE lehre.tbl_lehreinheit SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).";"; + // If lerhfach_id was the same as the old lehrveranstaltung_id, it will be changed to + $update_qry.="UPDATE lehre.tbl_lehreinheit SET lehrfach_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrfach_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).";"; + $update_qry.="UPDATE lehre.tbl_zeugnisnote SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).";"; + $update_qry.="UPDATE lehre.tbl_moodle SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).";"; + $update_qry.="UPDATE lehre.tbl_lvangebot SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).";"; + // Notenschluesselzuordnung will be copied if $courseRight has none and $courseLeft has some + $notenschluessel_qry_right = "SELECT * FROM lehre.tbl_notenschluesselzuordnung WHERE lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER).";"; + $result_notenschluessel_right = $db->db_query($notenschluessel_qry_right); + $notenschluessel_qry_left = "SELECT * FROM lehre.tbl_notenschluesselzuordnung WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $result_notenschluessel_left = $db->db_query($notenschluessel_qry_left); + // Check if $courseRight has notenschluesselzuordnung + if ($db->db_affected_rows($result_notenschluessel_right)==0) + { + if ($db->db_affected_rows($result_notenschluessel_left)>0) + { + while($row = $db->db_fetch_object($result_notenschluessel_left)) + { + $update_qry.=" INSERT INTO lehre.tbl_notenschluesselzuordnung (notenschluessel_kurzbz, lehrveranstaltung_id, studienplan_id, oe_kurzbz, studiensemester_kurzbz) + SELECT notenschluessel_kurzbz, ".$db->db_add_param($courseRight, FHC_INTEGER).", studienplan_id, oe_kurzbz, studiensemester_kurzbz + FROM lehre.tbl_notenschluesselzuordnung + WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + } + } + } + $update_qry.="/*
    */"; + $update_qry.="UPDATE public.tbl_preincoming_lehrveranstaltung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="/*
    Addons
    */"; + + //addon lvevaluierung + if (in_array('lvevaluierung', $activeAddons)) + { + $update_qry.="UPDATE addon.tbl_lvevaluierung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).";"; + } + //addon lvevaluierung + if (in_array('lvinfo', $activeAddons)) + { + $update_qry.="UPDATE addon.tbl_lvinfo SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).";"; + } + } + + if (isset($_REQUEST['mergeDelete'])) + { + $update_qry.="UPDATE campus.tbl_benutzerlvstudiensemester SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE campus.tbl_feedback SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE campus.tbl_lehrveranstaltung_pruefung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE campus.tbl_lvgesamtnote SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE campus.tbl_lvinfo SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE campus.tbl_pruefungsanmeldung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="/*
    */"; + $update_qry.="UPDATE lehre.tbl_anrechnung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_anrechnung SET lehrveranstaltung_id_kompatibel=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id_kompatibel=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_lehreinheit SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_lehreinheit SET lehrfach_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrfach_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_lehrveranstaltung_kompatibel SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_lehrveranstaltung_kompatibel SET lehrveranstaltung_id_kompatibel=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id_kompatibel=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_lvangebot SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_lvregel SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_lvregel SET studienplan_lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE studienplan_lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_moodle SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_notenschluesselzuordnung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_studienplan_lehrveranstaltung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_studienplan_lehrveranstaltung SET studienplan_lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE studienplan_lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_studienplan_lehrveranstaltung SET studienplan_lehrveranstaltung_id_parent=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE studienplan_lehrveranstaltung_id_parent=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_vertrag SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_zeugnisnote SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="/*
    */"; + $update_qry.="UPDATE public.tbl_preincoming_lehrveranstaltung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="/*
    Addons
    */"; + //addon lvevaluierung + if (in_array('lvevaluierung', $activeAddons)) + { + $update_qry.="UPDATE addon.tbl_lvevaluierung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + } + //addon lvevaluierung + if (in_array('lvinfo', $activeAddons)) + { + $update_qry.="UPDATE addon.tbl_lvinfo SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + } + $update_qry.="/*
    */"; + $update_qry.="DELETE FROM lehre.tbl_lehrveranstaltung WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="/*

    */"; + } + + //$msg = "Merged successfully
    "; + //$msg .= "
    ".mb_eregi_replace(';',';
    ',$update_qry); + + if($db->db_query($update_qry)) + { + $msg = "Merged successfully
    "; + $msg_qry = mb_eregi_replace(';',';
    ',$update_qry); + $msg_qry = str_replace('/*', '', $msg_qry); + $msg_qry = str_replace('*/', '', $msg_qry); + $msg .= "
    ".$msg_qry; + $db->db_query("COMMIT;"); + } + else + { + $msg = $db->errormsg; + $msg .= "An error occured while updating data. No changes were made
    "; + $db->db_query("ROLLBACK;"); + $msg_qry = mb_eregi_replace(';',';
    ',$update_qry); + $msg_qry = str_replace('/*', '', $msg_qry); + $msg_qry = str_replace('*/', '', $msg_qry); + $msg.= "
    ".$msg_qry."ROLLBACK"; + } + //$courseLeft=0; + //$courseRight=0; + } +} +/*if((isset($courseLeft) && !isset($courseRight))||(!isset($courseLeft) && isset($courseRight)) || ($courseLeft<0 || $courseRight<0)) +{ + $msg="Please select a radio-button from each table"; +}*/ +?> + + + + + + + + + + + LV-Merge/Transfer + + +

    Merge/Transfer courses

    + +'.$msg.'
    '; +echo '
    '; +echo '
    +
    '; +////////// +// FILTER LEFT SIDE +////////// + +// Degree Program DropDown +$studiengang = new studiengang(); +$studiengang->getAll('typ, kurzbz'); + +//echo 'Degree Program '; +echo ''; +$typ = ''; +$maxsemester = array(); + +foreach ($studiengang->result as $stg) +{ + if ($typ != $stg->typ || $typ=='') + { + if ($typ!='') + echo ''; + echo ''; + } + + echo ''; + $maxsemester[$stg->studiengang_kz] = $stg->max_semester; + $typ = $stg->typ; +} +echo '
    or '; + +// Input text or ID +//echo ''; +echo ''; + +echo '
    '; + +// Semester DropDown +echo 'Semester
    '; + +// Orgform DropDown +echo ' Orgform
    '; + +// Studienplan DropDown +echo ' Studienplan
    '; + +// Type DropDown +echo ' Type
    '; + +echo ''; +echo '

    '; +echo ''; + +echo '
    '; + +echo '
    +
    '; +////////// +// FILTER RIGHT SIDE +////////// + +// Degree Program DropDown +$studiengang = new studiengang(); +$studiengang->getAll('typ, kurzbz'); + +//echo 'Degree Program '; +echo ''; +$typ = ''; +$maxsemester = array(); +foreach ($studiengang->result as $stg) +{ + if ($typ != $stg->typ || $typ=='') + { + if ($typ!='') + echo ''; + echo ''; + } + + echo ''; + $maxsemester[$stg->studiengang_kz] = $stg->max_semester; + $typ = $stg->typ; +} +echo '
    or '; + +// Input text or ID +//echo ''; +echo ''; + +echo '
    '; + +// Semester DropDown +echo 'Semester
    '; + +// Orgform DropDown +echo ' Orgform
    '; + +// Studienplan DropDown +echo ' Studienplan
    '; + +// Type DropDown +echo ' Type
    '; + +echo ''; +echo '

    '; +echo ''; + +echo '
    '; + +echo '
    +
    '; +echo '
    '; + +$stg_arr = new studiengang(); +$stg_arr->getAll(null,false); +foreach ($stg_arr->result as $row) + $studiengang_arr[$row->studiengang_kz] = $row->kurzbzlang; + +////////// +// COURSES LEFT SIDE +////////// +echo '
    '; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; + +echo ' '; + +echo ' | '; + +echo ' | '; + +echo ' '; + +echo '
    +
    '; + + +// Left table +echo 'Select course to be deleted or copied from'; +echo ''; +echo ""; +echo ""; +echo ""; +if ($select_stg_kz_left=='') + echo ""; +echo ""; +echo ""; +echo ""; +echo ""; +echo ""; +echo ""; +echo ""; +echo ""; +echo ""; + +//if ((substr($input_text_left,0,1)=='#' || ($input_text_left!='' && strlen($input_text_left)>=3)) || $select_studienplan_left!='' || $select_stg_kz_left!='') +if ((is_numeric($input_text_left) || ($input_text_left!='' && strlen($input_text_left)>=3)) || $select_studienplan_left!='' || $select_stg_kz_left!='') +{ + $qry_left = "SELECT DISTINCT * FROM lehre.tbl_lehrveranstaltung "; + + /*if ($input_text_left!='') + { + if (substr($input_text_left,0,1)=='#') + $qry_left .= " WHERE lehrveranstaltung_id=".$db->db_add_param(substr($input_text_left,1), FHC_INTEGER); + else + $qry_left .= " WHERE lower(bezeichnung) LIKE LOWER('%".$db->db_escape($input_text_left)."%')"; + } + else*/ + { + if ($select_studienplan_left!='') + $qry_left .= " JOIN lehre.tbl_studienplan_lehrveranstaltung USING (lehrveranstaltung_id)"; + + $qry_left .= " WHERE 1=1"; + if ($select_stg_kz_left!='') + $qry_left .= " AND studiengang_kz=".$db->db_add_param($select_stg_kz_left); + if (is_numeric($input_text_left)) + $qry_left .= " AND lehrveranstaltung_id=".$db->db_add_param($input_text_left, FHC_INTEGER); + elseif ($input_text_left!='' && strlen($input_text_left)>=3) + $qry_left .= " AND lower(bezeichnung) LIKE LOWER('%".$db->db_escape($input_text_left)."%')"; + if ($select_studienplan_left!='') + $qry_left .= " AND studienplan_id=".$db->db_add_param($select_studienplan_left, FHC_INTEGER); + if ($select_semester_left!='-1') + $qry_left .= " AND tbl_lehrveranstaltung.semester=".$db->db_add_param($select_semester_left, FHC_INTEGER); + if ($select_orgform_left!='') + $qry_left .= " AND orgform_kurzbz=".$db->db_add_param($select_orgform_left); + if ($select_lehrtyp_left!='') + $qry_left .= " AND lehrtyp_kurzbz=".$db->db_add_param($select_lehrtyp_left); + } + $qry_left .= " ORDER BY bezeichnung;"; + //echo $qry_left.'
    '; + + if($db->db_query($qry_left)) + { + while($row = $db->db_fetch_object()) + { + echo ''; + echo ''; + echo ''; + echo ''; + if ($select_stg_kz_left=='') + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ""; + } + } +} +echo "
    IDNameTypeDPSemesterLanguageECTSLVSALVSSWSLVPLS 
    '.$row->lehrveranstaltung_id.''.$row->bezeichnung.''.strtoupper($row->lehrtyp_kurzbz).''.$studiengang_arr[$row->studiengang_kz].''.$row->semester.''.$row->sprache.''.$row->ects.''.$row->lvs.''.$row->alvs.''.$row->sws.''.$row->lvps.'lehrveranstaltung_id)?'checked':'').' onclick="enableRadio(\'courseLeft\'); disableRadio(\'courseRight_'.$row->lehrveranstaltung_id.'\')">
    "; + +////////// +// COURSES RIGHT SIDE +////////// + +echo '
    +
    '; + +// Right table +echo 'Select course to remain or transfer to'; +echo ''; +echo ""; +echo ""; +echo ""; +echo ""; +if ($select_stg_kz_right=='') + echo ""; +echo ""; +echo ""; +echo ""; +echo ""; +echo ""; +echo ""; +echo ""; +echo ""; + +//if ((substr($input_text_right,0,1)=='#' || ($input_text_right!='' && strlen($input_text_right)>=3)) || $select_studienplan_right!='' || $select_stg_kz_right!='') +if ((is_numeric($input_text_right) || ($input_text_right!='' && strlen($input_text_right)>=3)) || $select_studienplan_right!='' || $select_stg_kz_right!='') +{ + $qry_right = "SELECT DISTINCT * FROM lehre.tbl_lehrveranstaltung "; + + /*if ($input_text_right!='') + { + if (substr($input_text_right,0,1)=='#') + $qry_right .= " WHERE lehrveranstaltung_id=".$db->db_add_param(substr($input_text_right,1), FHC_INTEGER); + else + $qry_right .= " WHERE lower(bezeichnung) LIKE LOWER ('%".$db->db_escape($input_text_right)."%')"; + } + else*/ + { + if ($select_studienplan_right!='') + $qry_right .= " JOIN lehre.tbl_studienplan_lehrveranstaltung USING (lehrveranstaltung_id)"; + + $qry_right .= " WHERE 1=1"; + if ($select_stg_kz_right!='') + $qry_right .= " AND studiengang_kz=".$db->db_add_param($select_stg_kz_right); + if (is_numeric($input_text_right)) + $qry_right .= " AND lehrveranstaltung_id=".$db->db_add_param($input_text_right, FHC_INTEGER); + elseif ($input_text_right!='' && strlen($input_text_right)>=3) + $qry_right .= " AND lower(bezeichnung) LIKE LOWER('%".$db->db_escape($input_text_right)."%')"; + if ($select_studienplan_right!='') + $qry_right .= " AND studienplan_id=".$db->db_add_param($select_studienplan_right, FHC_INTEGER); + if ($select_semester_right!='-1') + $qry_right .= " AND tbl_lehrveranstaltung.semester=".$db->db_add_param($select_semester_right, FHC_INTEGER); + if ($select_orgform_right!='') + $qry_right .= " AND orgform_kurzbz=".$db->db_add_param($select_orgform_right); + if ($select_lehrtyp_right!='') + $qry_right .= " AND lehrtyp_kurzbz=".$db->db_add_param($select_lehrtyp_right); + } + $qry_right .= " ORDER BY bezeichnung;"; + //echo $qry_right.'
    '; + + if($db->db_query($qry_right)) + { + while($row = $db->db_fetch_object()) + { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + if ($select_stg_kz_right=='') + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ""; + } + } +} +echo "
     IDNameTypeDPSemesterLanguageECTSLVSALVSSWSLVPLS
    lehrveranstaltung_id)?'checked':'').' onclick="enableRadio(\'courseRight\'); disableRadio(\'courseLeft_'.$row->lehrveranstaltung_id.'\')">'.$row->lehrveranstaltung_id.''.$row->bezeichnung.''.strtoupper($row->lehrtyp_kurzbz).''.$studiengang_arr[$row->studiengang_kz].''.$row->semester.''.$row->sprache.''.$row->ects.''.$row->lvs.''.$row->alvs.''.$row->sws.''.$row->lvps.'
    "; +echo '
    +
    '; +echo '
    '; +exit; + +?> + + + + diff --git a/vilesci/lehre/studienplan_gueltigkeit.php b/vilesci/lehre/studienplan_gueltigkeit.php new file mode 100644 index 000000000..8a506bf71 --- /dev/null +++ b/vilesci/lehre/studienplan_gueltigkeit.php @@ -0,0 +1,131 @@ +getBerechtigungen($user); + +if(!$rechte->isBerechtigt('assistenz', null, 'suid')) + die('keine Berechtigung für diese Seite!'); + +$studiengang_kz = isset($_GET['studiengang_kz'])?$_GET['studiengang_kz']:''; +$db = new basis_db(); + +echo ' + + + + '; +include('../../include/meta/jquery.php'); +include('../../include/meta/jquery-tablesorter.php'); + +echo ' + Studienplan Übersicht + + + +

    Studienplan Gültigkeit

    +
    + + +
    '; + +$max_semester=0; +if($studiengang_kz!='') +{ + $studienplan = new studienplan(); + $studienplan->getStudienplaeneFromSem($studiengang_kz); + + foreach($studienplan->result as $row) + { + if($max_semester < $row->semester) + $max_semester = $row->semester; + $gueltigkeit[$row->studiensemester_kurzbz][$row->semester][]=$row->bezeichnung; + } +} + +$studiensemester = new studiensemester(); +$studiensemester->getAll(); + +echo ' + + + '; + +for($i = 1; $i <= $max_semester; $i++) + echo ''; +echo ' + +'; +$start=0; +foreach($studiensemester->studiensemester as $row_stsem) +{ + + $row= ' + '; + + for($i = 1; $i <= $max_semester; $i++) + { + $row .= ''; + } + $row .= ''; + + if($start) + echo $row; +} +echo '
    '.$i.'. Semester
    '.$row_stsem->studiensemester_kurzbz.''; + if(isset($gueltigkeit[$row_stsem->studiensemester_kurzbz][$i]) && is_array($gueltigkeit[$row_stsem->studiensemester_kurzbz][$i])) + { + foreach($gueltigkeit[$row_stsem->studiensemester_kurzbz][$i] as $row_studienplan) + { + $start=true; + $row .= $row_studienplan.'
    '; + } + } + $row .= '
    '; +echo ' + +'; diff --git a/vilesci/personen/aliquote_reduktion.json.php b/vilesci/personen/aliquote_reduktion.json.php index 28eeae207..d7e50134a 100644 --- a/vilesci/personen/aliquote_reduktion.json.php +++ b/vilesci/personen/aliquote_reduktion.json.php @@ -211,9 +211,9 @@ switch($action) $maxlength[$spalte]=mb_strlen(""); } - $worksheet->writeNumber($zeile,++$spalte, $s->seqPlace); - if(mb_strlen($s->seqPlace)>$maxlength[$spalte]) - $maxlength[$spalte]=mb_strlen($s->seqPlace); + $worksheet->writeNumber($zeile,++$spalte, (isset($s->seqPlace)?$s->seqPlace:'')); + if(mb_strlen((isset($s->seqPlace)?$s->seqPlace:''))>$maxlength[$spalte]) + $maxlength[$spalte]=mb_strlen((isset($s->seqPlace)?$s->seqPlace:'')); if(isset($s->rt_gesamtpunkte) && $s->rt_gesamtpunkte) { @@ -272,7 +272,10 @@ switch($action) function studentsSort($a, $b) { - return $a->seqPlace > $b->seqPlace; + if(isset($a->seqPlace)) + return $a->seqPlace > $b->seqPlace; + else + return false; } diff --git a/vilesci/stammdaten/reihungstestverwaltung.php b/vilesci/stammdaten/reihungstestverwaltung.php index 81baa7382..7f7a0d657 100644 --- a/vilesci/stammdaten/reihungstestverwaltung.php +++ b/vilesci/stammdaten/reihungstestverwaltung.php @@ -616,7 +616,7 @@ if($reihungstest_id!='') '.($rtergebnis!=0 && $row->rt_punkte1==''?'übertragen':$row->rt_punkte1).' '; - $mailto.= ($mailto!=''?',':'').$row->email; + $mailto.= ($mailto!=''?DEFAULT_EMAILADRESSENTRENNZEICHEN:'').$row->email; } echo ""; echo "Mail an alle senden"; From fec722a4810d415f6af4946c701ad7a9e4a26451 Mon Sep 17 00:00:00 2001 From: Stefan Puraner Date: Mon, 23 May 2016 15:03:44 +0200 Subject: [PATCH 030/114] fixed missing else clause --- cis/private/profile/studienplan.php | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/cis/private/profile/studienplan.php b/cis/private/profile/studienplan.php index ed3ed7ada..9b7fb170e 100755 --- a/cis/private/profile/studienplan.php +++ b/cis/private/profile/studienplan.php @@ -365,7 +365,7 @@ function drawTree($tree, $depth) { global $uid, $stsem_arr, $noten_arr, $lvangebot_arr; global $datum_obj, $db, $lv_arr, $p, $note_pruef_arr; - + foreach($tree as $row_tree) { $style=''; @@ -498,7 +498,7 @@ function drawTree($tree, $depth) elseif(!$found) { if($abgeschlossen) - echo ''.$p->t('studienplan/regelabgeschlossen'),''; + echo ''.$p->t('studienplan/regelabgeschlossen'),''; elseif(!$row_tree->stpllv_pflicht) echo ''.$p->t('studienplan/optional').''; else @@ -508,7 +508,7 @@ function drawTree($tree, $depth) else { if($abgeschlossen) - echo ''.$p->t('studienplan/regelabgeschlossen'),''; + echo ''.$p->t('studienplan/regelabgeschlossen'),''; elseif(!$row_tree->stpllv_pflicht) echo ''.$p->t('studienplan/optional').''; else @@ -529,9 +529,10 @@ function drawTree($tree, $depth) // if($semester==$empfohlenesSemester) // $tdclass[]='empfehlung'; // } + + $tdinhalt=''; - // Ist bereits eine Note für diese LV in diesem Stsem vorhanden? if(isset($noten_arr[$row_tree->lehrveranstaltung_id][$stsem])) { @@ -542,16 +543,23 @@ function drawTree($tree, $depth) } elseif(count($kompatibleLVs) > 0) { + $found = false; foreach($kompatibleLVs as $komp) { if(isset($noten_arr[$komp][$stsem])) { - if($note_pruef_arr[$noten_arr[$komp][$stsem]]->positiv) - $tdinhalt .= ''.$note_pruef_arr[$noten_arr[$komp][$stsem]]->anmerkung.''; - else - $tdinhalt .= ''.$note_pruef_arr[$noten_arr[$komp][$stsem]]->anmerkung.''; + $found = true; + if($note_pruef_arr[$noten_arr[$komp][$stsem]]->positiv) + $tdinhalt .= ''.$note_pruef_arr[$noten_arr[$komp][$stsem]]->anmerkung.''; + else + $tdinhalt .= ''.$note_pruef_arr[$noten_arr[$komp][$stsem]]->anmerkung.''; } } + + if(!$found) + { + $tdinhalt.= '-'; + } } else { From d47e50697616ab7126f6993eea6ec53ab292fee2 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Tue, 24 May 2016 17:05:48 +0200 Subject: [PATCH 031/114] Ital. LV Bezeichnung --- include/lehrveranstaltung.class.php | 1 + 1 file changed, 1 insertion(+) diff --git a/include/lehrveranstaltung.class.php b/include/lehrveranstaltung.class.php index 4f76bd440..ec8c272a4 100755 --- a/include/lehrveranstaltung.class.php +++ b/include/lehrveranstaltung.class.php @@ -373,6 +373,7 @@ class lehrveranstaltung extends basis_db $lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag); $lv_obj->bezeichnung_arr['German'] = $row->bezeichnung; + $lv_obj->bezeichnung_arr['Italian'] = $row->bezeichnung; $lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english; if ($lv_obj->bezeichnung_arr['English'] == '') $lv_obj->bezeichnung_arr['English'] = $lv_obj->bezeichnung_arr['German']; From 54f8dfead7b300a14ab7af3191cee2e6cd5c8384 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Wed, 25 May 2016 18:38:37 +0200 Subject: [PATCH 032/114] studienjahr im rdf --- rdf/student.rdf.php | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/rdf/student.rdf.php b/rdf/student.rdf.php index 842a9a36f..3f3618c33 100755 --- a/rdf/student.rdf.php +++ b/rdf/student.rdf.php @@ -823,6 +823,10 @@ else } else $stg_kz = sprintf("%04s", abs($student->studiengang_kz)); + if (($semester % 2) == 0) + $studienjahr = $semester/2; + else + $studienjahr = intval($semester/2)+1; echo ' @@ -840,6 +844,7 @@ else verband.']]> gruppe.']]> + orgform_kurzbz.']]> bezeichnung.']]> From 9d0b2c1f0c9b3f0b81b3f374da548a4b0f36e9f2 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Wed, 25 May 2016 18:56:54 +0200 Subject: [PATCH 033/114] studienjahr_kurzbz added --- rdf/student.rdf.php | 1 + 1 file changed, 1 insertion(+) diff --git a/rdf/student.rdf.php b/rdf/student.rdf.php index 3f3618c33..e9f39dfc7 100755 --- a/rdf/student.rdf.php +++ b/rdf/student.rdf.php @@ -867,6 +867,7 @@ else convertISODate($studienbeginn).']]> studiensemester_kurzbz.']]> + studienjahr_kurzbz.']]> bezeichnung.']]> convertISODate($stsem->start).']]> From 41bf6847679d4e931b169cc46ce84f546ac379b5 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Thu, 26 May 2016 01:38:20 +0200 Subject: [PATCH 034/114] Matrikelnummer from Person added for use in generated list --- cis/private/lehre/anwesenheitsliste.pdf.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) mode change 100644 => 100755 cis/private/lehre/anwesenheitsliste.pdf.php diff --git a/cis/private/lehre/anwesenheitsliste.pdf.php b/cis/private/lehre/anwesenheitsliste.pdf.php old mode 100644 new mode 100755 index 063bc9edd..5a352cd18 --- a/cis/private/lehre/anwesenheitsliste.pdf.php +++ b/cis/private/lehre/anwesenheitsliste.pdf.php @@ -129,7 +129,7 @@ $qry = "SELECT tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe, (SELECT status_kurzbz FROM public.tbl_prestudentstatus WHERE prestudent_id=tbl_student.prestudent_id ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status, tbl_bisio.bisio_id, tbl_bisio.von, tbl_bisio.bis, tbl_student.studiengang_kz AS stg_kz_student, - tbl_zeugnisnote.note, tbl_mitarbeiter.mitarbeiter_uid + tbl_zeugnisnote.note, tbl_mitarbeiter.mitarbeiter_uid, tbl_person.matr_nr FROM campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid) JOIN public.tbl_person USING(person_id) LEFT JOIN public.tbl_student ON(uid=student_uid) @@ -186,6 +186,7 @@ if($result = $db->db_query($qry)) 'vorname'=>$row->vorname, 'nachname'=>$row->nachname, 'personenkennzeichen'=>trim($row->matrikelnr), + 'matr_nr'=>$row->matr_nr, 'semester'=>$row->semester, 'verband'=>trim($row->verband), 'gruppe'=>trim($row->gruppe), From 04955a3ff1c3b72d2939a0159adedf96c2e652c7 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Thu, 26 May 2016 03:10:53 +0200 Subject: [PATCH 035/114] Weiche f. milano --- cis/private/lehre/anwesenheitsliste_bilder.pdf.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) mode change 100644 => 100755 cis/private/lehre/anwesenheitsliste_bilder.pdf.php diff --git a/cis/private/lehre/anwesenheitsliste_bilder.pdf.php b/cis/private/lehre/anwesenheitsliste_bilder.pdf.php old mode 100644 new mode 100755 index bec92f46f..6a44d8daf --- a/cis/private/lehre/anwesenheitsliste_bilder.pdf.php +++ b/cis/private/lehre/anwesenheitsliste_bilder.pdf.php @@ -99,5 +99,9 @@ function getmax($val1,$val2) return ($val1>$val2)?$val1:$val2; } -require_once('../../../include/'.EXT_FKT_PATH.'/anwesenheitsliste_bilder.inc.php'); +if (file_exists('../../../addons/sfu-milano/include/'.EXT_FKT_PATH.'/anwesenheitsliste_bilder.inc.php')) + require_once('../../../addons/sfu-milano/include/'.EXT_FKT_PATH.'/anwesenheitsliste_bilder.inc.php'); +else + require_once('../../../include/'.EXT_FKT_PATH.'/anwesenheitsliste_bilder.inc.php'); + ?> From e390c49b2b02d13bf2573257ec52fd32f22a73bc Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Thu, 26 May 2016 03:38:01 +0200 Subject: [PATCH 036/114] added mat_nr --- rdf/student.rdf.php | 1 + 1 file changed, 1 insertion(+) diff --git a/rdf/student.rdf.php b/rdf/student.rdf.php index e9f39dfc7..1f56ae3e9 100755 --- a/rdf/student.rdf.php +++ b/rdf/student.rdf.php @@ -838,6 +838,7 @@ else vorname.']]> nachname.']]> matrikelnr.']]> + matr_nr.']]> convertISODate($student->gebdatum).']]> gebdatum.']]> gebort.']]> From de5eefc6fba4cc73b475f4fe566b9cf0b0c6f433 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Thu, 26 May 2016 04:14:49 +0200 Subject: [PATCH 037/114] expand list --- cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php | 4 ++++ locale/it-IT/benotungstool.php | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php b/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php index bd95242d3..e9263adbf 100755 --- a/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php +++ b/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php @@ -229,6 +229,8 @@ $rechte->getBerechtigungen($uid); t('global/nachname'); ?> t('global/matrikelnummer'); ?> t('global/datum'); ?> + t('benotungstool/note'); ?> + t('global/anmerkung'); ?> @@ -258,6 +260,8 @@ $rechte->getBerechtigungen($uid); echo ''.$student->nachname.''; echo ''.$student->matrikelnr.''; echo ''.$date.''; + echo ''; + echo ''; echo ''; } ?> diff --git a/locale/it-IT/benotungstool.php b/locale/it-IT/benotungstool.php index 15afeb510..7b2ee38fe 100755 --- a/locale/it-IT/benotungstool.php +++ b/locale/it-IT/benotungstool.php @@ -106,7 +106,7 @@ $this->phrasen['benotungstool/neueUebungAnlegen']='crea nuova esercitazione'; $this->phrasen['benotungstool/nichtFreigeschaltet']='non attivato'; $this->phrasen['benotungstool/nichtGespeichertKreuzerllisteNichtFreigegeben']='impossibile attivare cambiamenti in quanto la lista con caselle da barrare scelta non è attivata'; $this->phrasen['benotungstool/nichtVorbereitet']='non preparato'; -$this->phrasen['benotungstool/note']='voto'; +$this->phrasen['benotungstool/note']='Voto'; $this->phrasen['benotungstool/noteEingeben']='Inserire un voto tra 1 - 5 ovvero 7 (non valutato), 10 (superato), 14 (non superato) ovvero 16 (frequentato con successo)'; $this->phrasen['benotungstool/noteEingebenOderLeer']='Inserire un voto tra 1 - 5 ovvero 7 (non valutato), 10 (superato), 14 (non superato) ovvero 16 (frequentato con successo) o lasciare libero il campo'; $this->phrasen['benotungstool/noteIstUngueltig']='voto non valido'; From d7dc25dbc582a385e527dd72b47e106b4ba1576a Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Thu, 26 May 2016 04:33:31 +0200 Subject: [PATCH 038/114] liste erweitert --- .../lehre/pruefung/pruefungsanmeldungen_liste.php | 15 ++++++++++++++- locale/de-AT/pruefung.php | 3 ++- locale/en-US/pruefung.php | 3 +++ locale/it-IT/pruefung.php | 5 +++++ 4 files changed, 24 insertions(+), 2 deletions(-) diff --git a/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php b/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php index e9263adbf..cdd6516d5 100755 --- a/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php +++ b/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php @@ -258,7 +258,7 @@ $rechte->getBerechtigungen($uid); echo ''.$anmeldung->reihung.''; echo ''.$student->vorname.''; echo ''.$student->nachname.''; - echo ''.$student->matrikelnr.''; + echo ''.$student->matr_nr.''; echo ''.$date.''; echo ''; echo ''; @@ -278,6 +278,19 @@ $rechte->getBerechtigungen($uid); } ?> +
    + + + + + + + + + + + diff --git a/locale/de-AT/pruefung.php b/locale/de-AT/pruefung.php index be9bb41c7..3deaff762 100755 --- a/locale/de-AT/pruefung.php +++ b/locale/de-AT/pruefung.php @@ -138,6 +138,7 @@ $this->phrasen['pruefung/emailLektorAm'] = 'am'; $this->phrasen['pruefung/emailLektorVon'] = 'von'; $this->phrasen['pruefung/emailLektorUhrBis'] = 'Uhr bis'; $this->phrasen['pruefung/emailLektorUhrAngemeldet'] = 'Uhr angemeldet.'; - +$this->phrasen['pruefung/derLektor'] = 'LektorIn'; +$this->phrasen['pruefung/dieKommission'] = 'Kommission'; ?> diff --git a/locale/en-US/pruefung.php b/locale/en-US/pruefung.php index 9c7eb8343..d41d0c8c6 100755 --- a/locale/en-US/pruefung.php +++ b/locale/en-US/pruefung.php @@ -138,6 +138,9 @@ $this->phrasen['pruefung/emailLektorAm'] = 'am'; $this->phrasen['pruefung/emailLektorVon'] = 'von'; $this->phrasen['pruefung/emailLektorUhrBis'] = 'Uhr bis'; $this->phrasen['pruefung/emailLektorUhrAngemeldet'] = 'Uhr angemeldet.'; +$this->phrasen['pruefung/derLektor'] = 'LektorIn'; +$this->phrasen['pruefung/dieKommission'] = 'Kommission'; + ?> diff --git a/locale/it-IT/pruefung.php b/locale/it-IT/pruefung.php index e61d6c8f4..225986b43 100755 --- a/locale/it-IT/pruefung.php +++ b/locale/it-IT/pruefung.php @@ -137,4 +137,9 @@ $this->phrasen['pruefung/emailLektorAm'] = 'del'; $this->phrasen['pruefung/emailLektorVon'] = 'dalle'; $this->phrasen['pruefung/emailLektorUhrBis'] = 'alle'; $this->phrasen['pruefung/emailLektorUhrAngemeldet'] = '.'; +$this->phrasen['pruefung/derLektor'] = 'Il docente'; +$this->phrasen['pruefung/dieKommission'] = 'La commissione'; + + + ?> From 5fd6070ea3a50939026fd3c8cdeb71c531604706 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Thu, 26 May 2016 04:47:05 +0200 Subject: [PATCH 039/114] list changes --- cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php b/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php index cdd6516d5..85126e44a 100755 --- a/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php +++ b/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php @@ -279,11 +279,11 @@ $rechte->getBerechtigungen($uid); ?>
    t('pruefung/derLektor'); ?>getFullName(FALSE); ?>
    t('pruefung/dieKommission'); ?>

    - +
    - - - + + + From 7733f8df7966bbfb1c85273dd651cdb17fdb9a24 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Thu, 26 May 2016 05:00:38 +0200 Subject: [PATCH 040/114] matr_nr added --- rdf/konto.rdf.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/rdf/konto.rdf.php b/rdf/konto.rdf.php index f633ad4f6..f1af325af 100644 --- a/rdf/konto.rdf.php +++ b/rdf/konto.rdf.php @@ -275,6 +275,7 @@ elseif ($xmlformat=='xml') nachname."]]> vorname."]]> vornamen."]]> + matr_nr."]]> anrede.' '.$pers->titelpre.' '.$pers->vorname.' '.$pers->nachname.' '.$pers->titelpost)."]]> titelpre.' '.$pers->vorname.' '.$pers->nachname.' '.$pers->titelpost)."]]> convertISODate($pers->gebdatum)."]]> @@ -324,4 +325,4 @@ elseif ($xmlformat=='xml') echo "\n"; } -?> \ No newline at end of file +?> From 18036f7a40eb505f5633cfc6552a9912ea356972 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Thu, 26 May 2016 05:16:31 +0200 Subject: [PATCH 041/114] Studienjahr im rdf --- rdf/konto.rdf.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/rdf/konto.rdf.php b/rdf/konto.rdf.php index f1af325af..f0395384a 100644 --- a/rdf/konto.rdf.php +++ b/rdf/konto.rdf.php @@ -31,6 +31,7 @@ require_once('../config/vilesci.config.inc.php'); require_once('../include/konto.class.php'); require_once('../include/person.class.php'); require_once('../include/studiengang.class.php'); +require_once('../include/studiensemester.class.php'); require_once('../include/datum.class.php'); require_once('../include/functions.inc.php'); require_once('../include/student.class.php'); @@ -204,13 +205,15 @@ elseif ($xmlformat=='xml') { global $datum, $btyp; $rueckerstattung=false; - + $stg = new studiensemester($row->studiensemester_kurzbz); + echo " buchungsnr."]]> person_id."]]> studiengang_kz."]]> studiensemester_kurzbz."]]> + studienjahr_kurzbz."]]> buchungsnr_verweis."]]> betrag))."]]>"; if($row->buchungsnr_verweis!='') From 58738112e978f3de158bc75243904a167ee68a76 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Thu, 26 May 2016 05:19:33 +0200 Subject: [PATCH 042/114] typo --- rdf/konto.rdf.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rdf/konto.rdf.php b/rdf/konto.rdf.php index f0395384a..ce3be694f 100644 --- a/rdf/konto.rdf.php +++ b/rdf/konto.rdf.php @@ -213,7 +213,7 @@ elseif ($xmlformat=='xml') person_id."]]> studiengang_kz."]]> studiensemester_kurzbz."]]> - studienjahr_kurzbz."]]> + studienjahr_kurzbz."]]> buchungsnr_verweis."]]> betrag))."]]>"; if($row->buchungsnr_verweis!='') From 01143cd51d7f62122e0c23d427afcf310bfca937 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Thu, 26 May 2016 22:17:29 +0200 Subject: [PATCH 043/114] it phrase --- locale/it-IT/global.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/locale/it-IT/global.php b/locale/it-IT/global.php index b61422b7f..e37b79008 100755 --- a/locale/it-IT/global.php +++ b/locale/it-IT/global.php @@ -94,7 +94,7 @@ $this->phrasen['global/loeschen']='cancella'; $this->phrasen['global/löschen']='cancella'; $this->phrasen['global/mail']='messaggio mail'; $this->phrasen['global/mann']='maschio/uomo'; -$this->phrasen['global/matrikelnummer']='numero di matricola'; +$this->phrasen['global/matrikelnummer']='Matricola'; $this->phrasen['global/minute']='minuti'; $this->phrasen['global/mittwoch']='mercoledì'; $this->phrasen['global/montag']='lunedì'; From ba9d398b55d883aeabfab073be4e2ad241b315f5 Mon Sep 17 00:00:00 2001 From: oesi Date: Mon, 30 May 2016 16:00:26 +0200 Subject: [PATCH 044/114] Engliche Fehlermeldung bei Fehlerhaftem Login --- include/auth_mixed.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/auth_mixed.class.php b/include/auth_mixed.class.php index d6b861b0d..cff1d8635 100644 --- a/include/auth_mixed.class.php +++ b/include/auth_mixed.class.php @@ -144,7 +144,7 @@ class authentication extends auth { header('WWW-Authenticate: Basic realm="'.AUTH_NAME.'"'); header('HTTP/1.0 401 Unauthorized'); - echo "Ihre Zugangsdaten sind ungueltig!"; + echo "Invalid Credentials"; exit; } else From 5b0a843500da71d5f439c2d0063954c932104d93 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Mon, 30 May 2016 17:32:50 +0200 Subject: [PATCH 045/114] ital. phrases --- cis/public/accountactivation.php | 28 ++++++------- locale/de-AT/passwort.php | 5 ++- locale/en-US/passwort.php | 7 +++- locale/it-IT/news.php | 70 +++++++++++++++++++------------- locale/it-IT/passwort.php | 34 +++++++++------- 5 files changed, 85 insertions(+), 59 deletions(-) mode change 100644 => 100755 cis/public/accountactivation.php mode change 100644 => 100755 locale/de-AT/passwort.php mode change 100644 => 100755 locale/en-US/passwort.php diff --git a/cis/public/accountactivation.php b/cis/public/accountactivation.php old mode 100644 new mode 100755 index 1726ffaaa..823c50823 --- a/cis/public/accountactivation.php +++ b/cis/public/accountactivation.php @@ -36,10 +36,10 @@ if(isset($_GET['sprache'])) } $erfolgreichaktiviert=false; -$sprache = getSprache(); +$sprache = getSprache(); $p = new phrasen($sprache); -$securimage = new Securimage(); +$securimage = new Securimage(); $errormsg=''; $db = new basis_db(); @@ -55,9 +55,9 @@ else if(isset($_POST['submit'])) -{ - // Captcha Pruefen - if ($securimage->check($_POST['captcha_code']) == true) +{ + // Captcha Pruefen + if ($securimage->check($_POST['captcha_code']) == true) { // Benutzer laden $benutzer = new benutzer(); @@ -68,7 +68,7 @@ if(isset($_POST['submit'])) { $passwort = $_POST['passwort']; $passwort2 = $_POST['passwort2']; - + // Vergleichen ob beide Passwoerter gleich sind if($passwort==$passwort2) { @@ -89,22 +89,22 @@ if(isset($_POST['submit'])) } else { - $errormsg='Passwoerter stimmen nicht ueberein'; + $errormsg = $p->t('passwort/NichtUebereinstimmend'); } } else { - $errormsg='Code oder Username falsch'; + $errormsg = $p->t('passwort/CodeOderUsernameFalsch'); } } else { - $errormsg='Code oder Username falsch'; + $errormsg = $p->t('passwort/CodeOderUsernameFalsch'); } } else { - $errormsg= 'Captcha Code falsch'; + $errormsg= $p->t('passwort/CaptchaCodeFalsch'); } } @@ -118,7 +118,7 @@ echo ' @@ -132,8 +132,8 @@ echo ' if($erfolgreichaktiviert) { - echo '

    Ihr Account wurde erfolgreich aktiviert



    - >> Weiter zum Login'; + echo '

    '.$p->t('passwort/AccountErfolgreichAktiviert').'



    + >> '.$p->t('passwort/WeiterZumLogin').''; } else { @@ -159,7 +159,7 @@ else

    '; if(!isset($_SERVER['HTTPS']) || (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS']=='off')) { - + $httpspath = str_replace('http://','https://',APP_ROOT).'cis/public/accountactivation.php'; echo '
    '.$p->t('passwort/NoHttps').'
    '.$p->t('passwort/ZuHttpsWechseln').'

    '; diff --git a/locale/de-AT/passwort.php b/locale/de-AT/passwort.php old mode 100644 new mode 100755 index 272a887f0..e6822af8c --- a/locale/de-AT/passwort.php +++ b/locale/de-AT/passwort.php @@ -26,5 +26,8 @@ $this->phrasen['passwort/CaptchaEingabe']='Tippen Sie die angezeigten
    Zeichen $this->phrasen['passwort/ReloadCaptcha']='Ich kann das Bild nicht lesen - neu laden'; $this->phrasen['passwort/PasswortWaehlen']='Bitte wählen Sie ein Passwort für Ihren Account.'; $this->phrasen['passwort/AccountAktivierung']='Account Aktivierung'; - +$this->phrasen['passwort/CodeOderUsernameFalsch']='Code oder Username falsch'; +$this->phrasen['passwort/CaptchaCodeFalsch']='Captcha Code falsch'; +$this->phrasen['passwort/AccountErfolgreichAktiviert']='Ihr Account wurde erfolgreich aktiviert'; +$this->phrasen['passwort/WeiterZumLogin']='Weiter zum Login'; ?> diff --git a/locale/en-US/passwort.php b/locale/en-US/passwort.php old mode 100644 new mode 100755 index e9e4559e8..ba010c2f0 --- a/locale/en-US/passwort.php +++ b/locale/en-US/passwort.php @@ -1,7 +1,7 @@ phrasen['passwort/Title']='Changing password'; $this->phrasen['passwort/PasswortAenderFuer']='Changing password for User %s %s ( %s )'; -$this->phrasen['passwort/InfotextPolicy']='The password must contain at least 8 characters, +$this->phrasen['passwort/InfotextPolicy']='The password must contain at least 8 characters, of which 1 must be upper case, 1 lower case and 1 a numeral.

    The password may not include spaces or umlauts.
    The following special characters are allowed: -$#[]{}!().,*:;_'; @@ -26,4 +26,9 @@ $this->phrasen['passwort/CaptchaEingabe']='Enter the characters in
    the field $this->phrasen['passwort/ReloadCaptcha']='Reload picture'; $this->phrasen['passwort/PasswortWaehlen']='Please choose a password for your account'; $this->phrasen['passwort/AccountAktivierung']='Account Activation'; +$this->phrasen['passwort/CodeOderUsernameFalsch']='Code or Username wrong'; +$this->phrasen['passwort/CaptchaCodeFalsch']='Captcha Code wrong'; +$this->phrasen['passwort/AccountErfolgreichAktiviert']='Account has been activated successfully'; +$this->phrasen['passwort/WeiterZumLogin']='Proceed to Login'; + ?> diff --git a/locale/it-IT/news.php b/locale/it-IT/news.php index b3139ec14..a84d8e4a4 100755 --- a/locale/it-IT/news.php +++ b/locale/it-IT/news.php @@ -1,31 +1,45 @@ phrasen['news/allesemester']='tutti i semestri'; -$this->phrasen['news/allgemein']='generale'; -$this->phrasen['news/anlegen']=''; -$this->phrasen['news/betreff']=''; -$this->phrasen['news/eintragNochNichtVeroeffentlicht']=''; -$this->phrasen['news/eintragVeroeffentlicht']=''; -$this->phrasen['news/fehlerBeimSenden']='errore in sede di trasmissione della mail a %s'; -$this->phrasen['news/freifach']=''; -$this->phrasen['news/keinSemester']=''; -$this->phrasen['news/keinUebersetzerVorhanden']=''; -$this->phrasen['news/mailtext']=''; -$this->phrasen['news/mailtextHTML']=''; -$this->phrasen['news/maximal30Tage']=''; -$this->phrasen['news/neuereintrag']=''; -$this->phrasen['news/neuerNewseintrag']=''; -$this->phrasen['news/newsverwaltung']=''; -$this->phrasen['news/sichtbarab']=''; -$this->phrasen['news/sichtbarbis']=''; -$this->phrasen['news/studiengang']=''; -$this->phrasen['news/text']='testo'; -$this->phrasen['news/uebersetzen']='tradurre'; -$this->phrasen['news/uebersetzunganlegen']='salva la traduzione in '; -$this->phrasen['news/uebersetzungenvorhanden']=''; -$this->phrasen['news/uebersetzungsanforderungGesendet']='richiesta di traduzione trasmessa a %s'; -$this->phrasen['news/verfasser']=''; -$this->phrasen['news/veroeffentlichen']=''; -$this->phrasen['news/verwaltungstools']=''; -$this->phrasen['news/xsemester']=''; +$this->phrasen['news/verwaltungstools']='Strumenti di gestione'; +$this->phrasen['news/newsverwaltung']='Gestione notizie'; +$this->phrasen['news/neuereintrag']='Inserisci nuova notizia'; +$this->phrasen['news/verfasser']='Autore'; +$this->phrasen['news/betreff']='Oggetto'; +$this->phrasen['news/text']='Testo'; + +$this->phrasen['news/sichtbarab']='Visbile da'; +$this->phrasen['news/sichtbarbis']='Visibile fino'; +$this->phrasen['news/maximal30Tage']='(max. 30 giorni, opzionale)'; + +$this->phrasen['news/allgemein']='Generale'; +$this->phrasen['news/freifach']='Corso opzionale'; +$this->phrasen['news/studiengang']='Corso di studi'; + +$this->phrasen['news/uebersetzunganlegen']='Inserire traduzione in'; +$this->phrasen['news/uebersetzen']='Inserire traduzione'; +$this->phrasen['news/anlegen']='Inserisci'; +$this->phrasen['news/uebersetzungenvorhanden']='La notizia è già stata inserita in tutte le lingue possibili'; + +$this->phrasen['news/allesemester']='Tutti i semestri'; +$this->phrasen['news/xsemester']='%s.'; +$this->phrasen['news/keinSemester']='Nessun semestre (Notizia generale)'; + +$this->phrasen['news/neuerNewseintrag']='Nuova notizia disponibile per la traduzione'; //Betreff von Infomail an Uebersetzer. +$this->phrasen['news/mailtext']='Questo è un messaggio email autogenerato. + +E’ stata inserita una notizia nel sistema. Questa è ora disponibile per la traduzione. +(se non si vedono link e contenuto, accertarsi di aver attivato la visualizzazione html)'; //Plaintext im Infomail an Uebersetzer. +$this->phrasen['news/mailtextHTML']='Dies ist eine automatisch generierte E-Mail.

    + E’ stata inserita una notizia nel sistema. Questa è ora disponibile per la traduzione: per la notizia +



    + %s
    +
    +
    + %s'; //HTML-Text im Infomail an Uebersetzer. +$this->phrasen['news/uebersetzungsanforderungGesendet']='Richiesta di traduzione inviata a %s '; +$this->phrasen['news/fehlerBeimSenden']='Errore nell’invio a %s'; +$this->phrasen['news/keinUebersetzerVorhanden']='Nel sistema non sono state inserite persone addette alla traduzione'; //Leerlassen, falls keine Info diesbezueglich gewuenscht ist +$this->phrasen['news/eintragVeroeffentlicht']='Notizia %s pubblicata'; +$this->phrasen['news/eintragNochNichtVeroeffentlicht']='Notizia %s non ancora pubblicata'; +$this->phrasen['news/veroeffentlichen']='Pubblica'; ?> diff --git a/locale/it-IT/passwort.php b/locale/it-IT/passwort.php index 1d8b76633..50c3fddff 100755 --- a/locale/it-IT/passwort.php +++ b/locale/it-IT/passwort.php @@ -1,31 +1,35 @@ phrasen['passwort/AccountAktivierung']='Attiva account'; -$this->phrasen['passwort/AenderungFehler']='Passwort Änderung fehlgeschlagen:%s'; -$this->phrasen['passwort/AenderungOK']='Das Passwort wurde erfolgreich geaendert'; +$this->phrasen['passwort/AenderungFehler']='Cambio password fallito:%s'; +$this->phrasen['passwort/AenderungOK']='Cambio password avvenuto con successo'; $this->phrasen['passwort/AltesPasswort']='Vecchia password'; -$this->phrasen['passwort/CaptchaEingabe']='Cliccare sui campi visualizzati
    sul campo sottostante'; -$this->phrasen['passwort/Grossbuchstabe']='Das neue Passwort muss mindestens einen Grossbuchstaben enthalten.'; +$this->phrasen['passwort/CaptchaEingabe']='Inserire i caratteri visualizzati
    nel campo sottostante'; +$this->phrasen['passwort/Grossbuchstabe']='La nuova password deve contenere almeno una lettera maiuscola.'; $this->phrasen['passwort/InfotextPolicy']=' -La password deve contenere almeno 8 caratteri, di cui almeno 1 maiuscolo, 1 minuscolo e 1 cifra.
    +La password deve contenere almeno 8 caratteri, di cui almeno 1 maiuscolo, 1 minuscolo e 1 carattere numerico.
    La password non può contenere spazi e caratteri accentati.
    Caratteri speciali ammessi sono: -$#[]{}!().,*:;_ = '; -$this->phrasen['passwort/Kleinbuchstabe']='Das neue Passwort muss mindestens einen Kleinbuchstaben enthalten.'; -$this->phrasen['passwort/Leerzeichen']='Es darf kein Leerzeichen im Passwort vorkommen.'; +$this->phrasen['passwort/Kleinbuchstabe']='La nuova password deve contenere almeno una lettera minuscola.'; +$this->phrasen['passwort/Leerzeichen']='La password non può contenere spazi.'; $this->phrasen['passwort/MinLaenge']='La password deve contenere almeno 8 caratteri.'; $this->phrasen['passwort/NeuesPasswort']='Nuova password'; -$this->phrasen['passwort/NichtUebereinstimmend']='Passwörter stimmen nicht überein'; -$this->phrasen['passwort/NoHttps']='ATTENZIONE - state utilizzando una trasmissione in chiaro. La password dovrebbe essere cambiata solo in presenza di un sistema di trasmissione codificato,'; +$this->phrasen['passwort/NichtUebereinstimmend']='La nuova password non coincide nei due campi dedicati.'; +$this->phrasen['passwort/NoHttps']='ATTENZIONE - la connessione utilizzata in questo momento è una connessione normale. La password dovrebbe essere cambiata solo in presenza di una connessione sicura (https).'; $this->phrasen['passwort/PasswortAenderFuer']='Cambio password per utente %s %s ( %s )'; $this->phrasen['passwort/PasswortAendern']='Cambia password'; -$this->phrasen['passwort/PasswortWaehlen']='Bitte wählen Sie ein Passwort für Ihren Account.'; +$this->phrasen['passwort/PasswortWaehlen']='Per favore scegliere una password per il proprio account.'; $this->phrasen['passwort/PasswortWiederholung']='Conferma nuova password'; -$this->phrasen['passwort/ReloadCaptcha']='Ich kann das Bild nicht lesen - neu laden'; -$this->phrasen['passwort/Sonderzeichen']='Bitte verwenden Sie nur erlaubte Sonderzeichen'; +$this->phrasen['passwort/ReloadCaptcha']='Immagine non visibile - ricarica immagine'; +$this->phrasen['passwort/Sonderzeichen']='Per favore utilizzare solamente i caratteri speciali consentiti.'; $this->phrasen['passwort/Title']='Cambio password'; -$this->phrasen['passwort/Umlaute']='Es dürfen keine Umlaute verwendet werden.'; -$this->phrasen['passwort/Ziffer']='Es muss mindestens eine Ziffer vorhanden sein.'; -$this->phrasen['passwort/ZuHttpsWechseln']='Jetzt zu verschlüsselter Verbindung wechseln'; +$this->phrasen['passwort/Umlaute']='Non sono consentiti i caratteri accentati.'; +$this->phrasen['passwort/Ziffer']='La password deve contenere almeno un carattere numerico.'; +$this->phrasen['passwort/ZuHttpsWechseln']='Passa ora a una connessione sicura (https)'; +$this->phrasen['passwort/CodeOderUsernameFalsch']='Codice o nome utente errato'; +$this->phrasen['passwort/CaptchaCodeFalsch']='Il codice antispam inserito è errato'; +$this->phrasen['passwort/AccountErfolgreichAktiviert']='L’account è stato attivato con successo'; +$this->phrasen['passwort/WeiterZumLogin']='Prosegui al login'; ?> From b0b3fe845a28b4fe7a4080bc093d764ec144ea99 Mon Sep 17 00:00:00 2001 From: oesi Date: Wed, 1 Jun 2016 13:55:42 +0200 Subject: [PATCH 046/114] =?UTF-8?q?Aliqoute=20Reduktion=20verwendet=20die?= =?UTF-8?q?=20MasterZGV=20bei=20Masterstudieng=C3=A4ngen=20zur=20Reihung?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- include/prestudent.class.php | 34 +++++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/include/prestudent.class.php b/include/prestudent.class.php index a6d16ff89..17f84fd32 100755 --- a/include/prestudent.class.php +++ b/include/prestudent.class.php @@ -1756,7 +1756,38 @@ class prestudent extends person 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 + $stg_obj = new studiengang(); + $stg_obj->load($studiengang_kz); + + if($stg_obj->typ=='m') + { + $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(zgvmas_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).") || '%') + ) + );"; + } + else + { + $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) @@ -1779,6 +1810,7 @@ class prestudent extends person (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)) From 8c8753b6674ed8d4238217962e31342cab0026c7 Mon Sep 17 00:00:00 2001 From: kindlm Date: Wed, 1 Jun 2016 16:52:57 +0200 Subject: [PATCH 047/114] Merge branch 'master' of https://github.com/FH-Complete/FHC-Core # Conflicts: # include/studienplan.class.php --- cis/private/lehre/abgabe_lektor.php | 9 +++ cis/private/lehre/abgabe_lektor_details.php | 7 +++ .../lehre/benotungstool/verwaltung_listen.php | 21 ++++++- locale/de-AT/mail.php | 3 +- locale/en-US/mail.php | 49 ++++++++++++++++ rdf/diplomasupplement.xml.php | 26 ++++----- rdf/lehrauftrag.xml.php | 37 +++++++++--- system/mlists/mlists_generate.php | 6 +- vilesci/lehre/lv_merge.php | 27 +++++++-- .../personen/import/interessentenimport.php | 57 +++++++++++-------- vilesci/personen/institutsliste.php | 49 +++++++++------- 11 files changed, 212 insertions(+), 79 deletions(-) create mode 100644 locale/en-US/mail.php diff --git a/cis/private/lehre/abgabe_lektor.php b/cis/private/lehre/abgabe_lektor.php index 0e84bb5e9..2e6dd28b0 100644 --- a/cis/private/lehre/abgabe_lektor.php +++ b/cis/private/lehre/abgabe_lektor.php @@ -33,11 +33,20 @@ require_once('../../../include/person.class.php'); require_once('../../../include/benutzer.class.php'); require_once('../../../include/mitarbeiter.class.php'); require_once('../../../include/phrasen.class.php'); +require_once('../../../include/benutzerberechtigung.class.php'); if (!$db = new basis_db()) die('Fehler beim Herstellen der Datenbankverbindung'); $getuid=get_uid(); +$rechte = new benutzerberechtigung(); +$rechte->getBerechtigungen($getuid); + +if (isset($_GET['user'])) +{ + if ($rechte->isBerechtigt('admin',null,'suid')) + $getuid = $_GET['user']; +} $sprache = getSprache(); diff --git a/cis/private/lehre/abgabe_lektor_details.php b/cis/private/lehre/abgabe_lektor_details.php index e46d40dd2..abf17fc8c 100644 --- a/cis/private/lehre/abgabe_lektor_details.php +++ b/cis/private/lehre/abgabe_lektor_details.php @@ -76,6 +76,13 @@ $stg_arr = array(); $error = false; $rechte = new benutzerberechtigung(); $rechte->getBerechtigungen($user); + +if (isset($_GET['user'])) +{ + if ($rechte->isBerechtigt('admin',null,'suid')) + $user = $_GET['user']; +} + $htmlstr=''; if(!check_lektor($user)) diff --git a/cis/private/lehre/benotungstool/verwaltung_listen.php b/cis/private/lehre/benotungstool/verwaltung_listen.php index 4c0f30e30..57a149caa 100644 --- a/cis/private/lehre/benotungstool/verwaltung_listen.php +++ b/cis/private/lehre/benotungstool/verwaltung_listen.php @@ -497,8 +497,17 @@ if(isset($_POST['uebung_neu']) || isset($_POST['abgabe_neu'])) if ($angabedatei_up) { $name_up = pathinfo($_FILES["angabedatei"]["name"]); + //Handle double file extensions (e.g.: .tar.gz) + //Array of possible double extensions + $ext_array = array('.tar.gz','.tar.bz2','.tar.xz','.tar.lzma','.tar.Z'); + //Find occurence of extensions ending with ".tar." + if (in_array(substr($_FILES["angabedatei"]["name"], strripos($_FILES["angabedatei"]["name"], '.tar.')), $ext_array)) + $extension = substr($_FILES["angabedatei"]["name"], strripos($_FILES["angabedatei"]["name"]+1, '.tar.')); + else + $extension = $name_up["extension"]; + $name_neu = makeUploadName($db, $which='angabe', $lehreinheit_id=$lehreinheit_id, $uebung_id=$uebung_id, $ss=$stsem); - $angabedatei = $name_neu.".".$name_up["extension"]; + $angabedatei = $name_neu.".".$extension; $angabepfad = BENOTUNGSTOOL_PATH."angabe/".$angabedatei; //$angabepfad = BENOTUNGSTOOL_PATH.$angabedatei; @@ -661,8 +670,16 @@ if(isset($_POST['uebung_edit'])) if ($angabedatei_up) { $name_up = pathinfo($_FILES["angabedatei"]["name"]); + //Handle double file extensions (e.g.: .tar.gz) + //Array of possible double extensions + $ext_array = array('.tar.gz','.tar.bz2','.tar.xz','.tar.lzma','.tar.Z'); + //Find occurence of extensions ending with ".tar." + if (in_array(substr($_FILES["angabedatei"]["name"], strripos($_FILES["angabedatei"]["name"], '.tar.')), $ext_array)) + $extension = substr($_FILES["angabedatei"]["name"], strripos($_FILES["angabedatei"]["name"]+1, '.tar.')); + else + $extension = $name_up["extension"]; $name_neu = makeUploadName($db, $which='angabe', $lehreinheit_id=$lehreinheit_id, $uebung_id=$uebung_id, $ss=$stsem); - $angabedatei_neu = $name_neu.".".$name_up["extension"]; + $angabedatei_neu = $name_neu.".".$extension; $angabepfad = BENOTUNGSTOOL_PATH."angabe/".$angabedatei_neu; //$angabepfad = BENOTUNGSTOOL_PATH.$angabedatei; diff --git a/locale/de-AT/mail.php b/locale/de-AT/mail.php index 1b7d8c383..7299c88aa 100755 --- a/locale/de-AT/mail.php +++ b/locale/de-AT/mail.php @@ -42,8 +42,7 @@ These pages will give you a detailed overview of all services available. $this->phrasen['mail/incomingRegistrationEmail']='Dies ist eine automatisch generierte E-Mail.

    Vielen Dank für Ihre Registrierung.

    Sie wurden erfolgreich am System registriert. -


    Mit Hilfe Ihrer UID: %s können Sie sich in unserem -System (Link zur Anmeldung) anmelden und Ihre Daten bearbeiten.


    +


    Mit der UserID: %s können Sie sich in unserem System anmelden und Ihre Daten bearbeiten.


    Mit freundlichen Grüßen, Ihre Hochschule'; diff --git a/locale/en-US/mail.php b/locale/en-US/mail.php new file mode 100644 index 000000000..bcca01a40 --- /dev/null +++ b/locale/en-US/mail.php @@ -0,0 +1,49 @@ +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']="invalid@example.com"; + +$this->phrasen['mail/accountaktivierung']='
    Account Information

    +Name: %1$s %2$s
    +Username: %3$s
    +Aktivierungscode: %4$s
    +%5$s
    +E-Mail: %6$s
    +
    +
    +
    Account Mini FAQ Deutsch

    +
    +Wie aktiviere ich meinen Account?
    +Öffnen Sie mit ihrem Web-Browser die Adresse %7$s
    +Tragen Sie in das Formular Ihren Usernamen und Aktivierungscode ein und vergeben Sie ein Passwort für den Account. +

    +Wo erhalte ich weitere Informationen?
    +Die primäre Anlaufstelle für Fragen rund um den Netzwerkbetrieb ist die Webseite
    +%8$s
    +Verwenden Sie die Informationen auf dieser Seite, um einen Überblick über die vorhandenen Möglichkeiten zu erhalten. +

    +
    Account Mini FAQ English

    +
    +Account activation:
    +Open your web browser and go to %7$s
    +Enter your user name and activation key. Enter a new password for your account. +

    +Looking for further information?
    +For questions concerning the network services, see
    +%8$s
    +These pages will give you a detailed overview of all services available. +

    +'; + +$this->phrasen['mail/incomingRegistrationEmail']='This is an automatic email!

    +You have been successfully registrated to our system. +


    With the UserID: %s you can login to our system to complete your data.


    +Best regards, +your University of Applied Sciences'; + +?> diff --git a/rdf/diplomasupplement.xml.php b/rdf/diplomasupplement.xml.php index 7d74e46ea..e5e31384b 100644 --- a/rdf/diplomasupplement.xml.php +++ b/rdf/diplomasupplement.xml.php @@ -236,51 +236,51 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml") if($row->typ=='d') { - echo ' UNESCO ISCED 5A'; + echo ' UNESCO ISCED 7'; echo ' '; echo ' '; echo ' '; echo ' '; echo ' '; echo ' '; - echo ' Diplomstudium (UNESCO ISCED 5A)'; - echo ' Diploma degree program (UNESCO ISCED 5A)'; + echo ' Diplomstudium (UNESCO ISCED 7)'; + echo ' Diploma degree program (UNESCO ISCED 7)'; } elseif($row->typ=='m') { - echo ' UNESCO ISCED 5A'; + echo ' UNESCO ISCED 7'; echo ' '; echo ' '; echo ' '; echo ' '; echo ' '; echo ' '; - echo ' Masterstudium (UNESCO ISCED 5A)'; - echo ' Master degree program (UNESCO ISCED 5A)'; + echo ' Masterstudium (UNESCO ISCED 7)'; + echo ' Master degree program (UNESCO ISCED 7)'; } elseif($row->typ=='b') { - echo ' UNESCO ISCED 5A'; + echo ' UNESCO ISCED 6'; echo ' '; echo ' '; echo ' '; echo ' '; echo ' '; echo ' '; - echo ' Bachelorstudium (UNESCO ISCED 5A)'; - echo ' Bachelor degree program (UNESCO ISCED 5A)'; + echo ' Bachelorstudium (UNESCO ISCED 6)'; + echo ' Bachelor degree program (UNESCO ISCED 6)'; } elseif($row->typ=='r') { - echo ' UNESCO ISCED 6'; - echo ' Doktoratsstudium (UNESCO ISCED 6)'; - echo ' University doctoral studies (UNESCO ISCED 6)'; + echo ' UNESCO ISCED 8'; + echo ' Doktoratsstudium (UNESCO ISCED 8)'; + echo ' University doctoral studies (UNESCO ISCED 8)'; } elseif($row->typ=='l' || $row->typ=='k') { - echo ' UNESCO ISCED 5A'; + echo ' UNESCO ISCED 7'; echo ' Lehrgang zur Weiterbildung nach §9 FHStG idgF.'; echo ' Certificate Program for Further Education subjected to § 9 FHStG'; echo ' '; diff --git a/rdf/lehrauftrag.xml.php b/rdf/lehrauftrag.xml.php index 869321655..00919c8c1 100644 --- a/rdf/lehrauftrag.xml.php +++ b/rdf/lehrauftrag.xml.php @@ -344,14 +344,33 @@ function drawLehrauftrag($uid) $gesamtstunden = $gesamtstunden + $stunden; } } - $qry = "SELECT tbl_projektarbeit.projektarbeit_id, tbl_projektbetreuer.faktor, tbl_projektbetreuer.stunden, tbl_projektbetreuer.stundensatz, tbl_lehrveranstaltung.semester, - vorname, nachname, vw_student.studiengang_kz, projekttyp_kurzbz, tbl_fachbereich.fachbereich_kurzbz - FROM lehre.tbl_projektbetreuer, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung as lehrfach, lehre.tbl_lehrveranstaltung, public.tbl_fachbereich, - public.tbl_benutzer, lehre.tbl_projektarbeit, campus.vw_student - WHERE tbl_projektbetreuer.person_id=tbl_benutzer.person_id AND tbl_benutzer.uid=".$db->db_add_param($uid)." AND - tbl_projektarbeit.projektarbeit_id=tbl_projektbetreuer.projektarbeit_id AND student_uid=vw_student.uid AND tbl_fachbereich.oe_kurzbz=lehrfach.oe_kurzbz - AND tbl_lehreinheit.lehreinheit_id=tbl_projektarbeit.lehreinheit_id AND tbl_lehreinheit.lehrfach_id=lehrfach.lehrveranstaltung_id AND - tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($ss)." AND tbl_lehreinheit.lehrveranstaltung_id = tbl_lehrveranstaltung.lehrveranstaltung_id "; + $qry = "SELECT tbl_projektarbeit.projektarbeit_id + ,tbl_projektbetreuer.faktor + ,tbl_projektbetreuer.stunden + ,tbl_projektbetreuer.stundensatz + ,tbl_lehrveranstaltung.semester + ,vorname + ,nachname + ,vw_student.studiengang_kz + ,projekttyp_kurzbz + ,tbl_organisationseinheit.oe_kurzbz + FROM lehre.tbl_projektbetreuer + ,lehre.tbl_lehreinheit + ,lehre.tbl_lehrveranstaltung AS lehrfach + ,lehre.tbl_lehrveranstaltung + ,PUBLIC.tbl_organisationseinheit + ,PUBLIC.tbl_benutzer + ,lehre.tbl_projektarbeit + ,campus.vw_student + WHERE tbl_projektbetreuer.person_id = tbl_benutzer.person_id + AND tbl_benutzer.uid = ".$db->db_add_param($uid)." + AND tbl_projektarbeit.projektarbeit_id = tbl_projektbetreuer.projektarbeit_id + AND student_uid = vw_student.uid + AND tbl_organisationseinheit.oe_kurzbz = tbl_lehrveranstaltung.oe_kurzbz + AND tbl_lehreinheit.lehreinheit_id = tbl_projektarbeit.lehreinheit_id + AND tbl_lehreinheit.lehrfach_id = lehrfach.lehrveranstaltung_id + AND tbl_lehreinheit.studiensemester_kurzbz = ".$db->db_add_param($ss)." + AND tbl_lehreinheit.lehrveranstaltung_id = tbl_lehrveranstaltung.lehrveranstaltung_id"; if($studiengang_kz!='') $qry.=" AND tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER); if($result = $db->db_query($qry)) @@ -377,7 +396,7 @@ function drawLehrauftrag($uid) $lv[$anzahl_lvs]['lehreinheit_id'] = (isset($row->projektarbeit_id)?$kuerzel.$row->projektarbeit_id:' '); $lv[$anzahl_lvs]['lehrveranstaltung'] = 'Betreuung '.$row->vorname.' '.$row->nachname; - $lv[$anzahl_lvs]['fachbereich'] = (isset($row->fachbereich_kurzbz)?$fb_arr[$row->fachbereich_kurzbz]:' '); + $lv[$anzahl_lvs]['fachbereich'] = (isset($row->oe_kurzbz) && array_key_exists($row->oe_kurzbz, $fb_arr)?$fb_arr[$row->oe_kurzbz]:' '); $lv[$anzahl_lvs]['gruppe'] = ' '; $lv[$anzahl_lvs]['stunden'] = (isset($row->stunden)?number_format($row->stunden,2):' '); $lv[$anzahl_lvs]['satz'] = (isset($row->stundensatz)?$row->stundensatz:' '); diff --git a/system/mlists/mlists_generate.php b/system/mlists/mlists_generate.php index 56465f353..ffc3c655d 100644 --- a/system/mlists/mlists_generate.php +++ b/system/mlists/mlists_generate.php @@ -247,7 +247,7 @@ $error_msg=''; JOIN public.tbl_benutzer ON (mitarbeiter_uid=uid) JOIN public.tbl_benutzerfunktion USING(uid) JOIN public.tbl_studiengang USING(oe_kurzbz) - WHERE tbl_benutzer.aktiv AND (funktion_kurzbz='Leitung' OR funktion_kurzbz='gLtg') AND + WHERE tbl_benutzer.aktiv AND (funktion_kurzbz='Leitung' OR funktion_kurzbz='gLtg' OR funktion_kurzbz='stvLtg') AND (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now()))"; if(!($result = $db->db_query($sql_query))) @@ -262,7 +262,7 @@ $error_msg=''; } // Personen holen die nicht im Verteiler sind echo '
    '; - $sql_query="SELECT mitarbeiter_uid AS uid + $sql_query="SELECT DISTINCT mitarbeiter_uid AS uid FROM public.tbl_mitarbeiter JOIN public.tbl_benutzer ON (mitarbeiter_uid=uid) @@ -270,7 +270,7 @@ $error_msg=''; JOIN public.tbl_studiengang USING(oe_kurzbz) WHERE tbl_benutzer.aktiv AND - (tbl_benutzerfunktion.funktion_kurzbz='Leitung' OR funktion_kurzbz='gLtg') AND + (tbl_benutzerfunktion.funktion_kurzbz='Leitung' OR funktion_kurzbz='gLtg' OR funktion_kurzbz='stvLtg') AND (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now()) AND mitarbeiter_uid NOT LIKE '\\\\_%' AND mitarbeiter_uid NOT IN (SELECT uid FROM public.tbl_benutzergruppe WHERE UPPER(gruppe_kurzbz)=UPPER('$mlist_name'))"; diff --git a/vilesci/lehre/lv_merge.php b/vilesci/lehre/lv_merge.php index 04a143a59..8ce13220b 100644 --- a/vilesci/lehre/lv_merge.php +++ b/vilesci/lehre/lv_merge.php @@ -33,6 +33,7 @@ require_once('../../include/studienplan.class.php'); require_once('../../include/studiensemester.class.php'); require_once('../../include/lehrveranstaltung.class.php'); require_once('../../include/lehrtyp.class.php'); +require_once('../../include/log.class.php'); if (!$db = new basis_db()) die('Es konnte keine Verbindung zum Server aufgebaut werden.'); @@ -111,12 +112,12 @@ if (isset($_REQUEST['compare'])) $msg .= '
    '; foreach ($lv_diff1 as $key => $value) { - $msg .= ''; + $msg .= ''; } $msg .= ''; foreach ($lv_diff2 as $key => $value) { - $msg .= ''; + $msg .= ''; } $msg .= '
    t('pruefung/derLektor'); ?>getFullName(FALSE); ?>t('pruefung/derLektor'); ?>getFullName(FALSE); ?>
    t('pruefung/dieKommission'); ?>
    '.$value.''.(is_bool($value)?($value?'true':'false'):$value).'
    '.$value.''.(is_bool($value)?($value?'true':'false'):$value).'
    '; } @@ -259,6 +260,24 @@ if((isset($_REQUEST['transfer']) || isset($_REQUEST['mergeDelete'])) && isset($c $msg_qry = str_replace('*/', '', $msg_qry); $msg .= "
    ".$msg_qry; $db->db_query("COMMIT;"); + + //Log schreiben + $log = new log(); + + $log->new = true; + $log->sql = $update_qry; + $log->sqlundo = 'No undo statement implemented yet'; + $log->executetime = date('Y-m-d H:i:s'); + $log->mitarbeiter_uid = $uid; + if (isset($_REQUEST['transfer'])) + $log->beschreibung = "lv_merge.php: Merge of course $courseLeft to $courseRight"; + elseif (isset($_REQUEST['mergeDelete'])) + $log->beschreibung = "lv_merge.php: Deletion of course $courseLeft. Merged with $courseRight"; + + if(!$log->save()) + { + $msg .= "Error while writing log-file
    "; + } } else { @@ -634,7 +653,7 @@ echo "ID"; echo "Name"; echo "Type"; if ($select_stg_kz_left=='') - echo "DP"; + echo "DP"; echo "Semester"; echo "Language"; echo "ECTS"; @@ -720,7 +739,7 @@ echo "ID"; echo "Name"; echo "Type"; if ($select_stg_kz_right=='') - echo "DP"; + echo "DP"; echo "Semester"; echo "Language"; echo "ECTS"; diff --git a/vilesci/personen/import/interessentenimport.php b/vilesci/personen/import/interessentenimport.php index e6897f8f3..642061a61 100644 --- a/vilesci/personen/import/interessentenimport.php +++ b/vilesci/personen/import/interessentenimport.php @@ -129,41 +129,46 @@ if(isset($_GET['type']) && $_GET['type']=='getortcontent' && isset($_GET['plz']) exit; } -function getStudienplanDropDown($studiengang_kz, $orgform_kurzbz='', $studienplan_id='') +function getStudienplanDropDown($studiengang_kz, $orgform_kurzbz='', $studienplan_id='', $studiensemester_kurzbz, $ausbildungssemester='') { $db = new basis_db(); - $content= ''; $studienplan = new studienplan(); - $studienplan->getStudienplaene($studiengang_kz); - - foreach($studienplan->result as $row) + $studienplan->getStudienplaeneFromSem($studiengang_kz, $studiensemester_kurzbz, $ausbildungssemester, $orgform_kurzbz); + //var_dump($studienplan->result); + if (count($studienplan->result)==0) + $content.=""; + else { - if($studienplan_id=='') - $studienplan_id=$row->studienplan_id; - - if($studienplan_id==$row->studienplan_id) - $selected='selected'; - else - $selected=''; - - if($row->aktiv) + $content .= ''; + foreach($studienplan->result as $row) { - if($orgform_kurzbz=='' || $row->orgform_kurzbz=='' || $row->orgform_kurzbz==$orgform_kurzbz) - $content.=""; + if($studienplan_id=='') + $studienplan_id=$row->studienplan_id; + + if($studienplan_id==$row->studienplan_id) + $selected='selected'; + else + $selected=''; + + if($row->aktiv) + { + if($orgform_kurzbz=='' || $row->orgform_kurzbz=='' || $row->orgform_kurzbz==$orgform_kurzbz) + $content.=""; + } } - } + } $content.= ''; return $content; } -if(isset($_GET['type']) && $_GET['type']=='getstudienplancontent' && isset($_GET['studiengang_kz']) && isset($_GET['orgform_kurzbz'])) +if(isset($_GET['type']) && $_GET['type']=='getstudienplancontent' && isset($_GET['studiengang_kz']) && isset($_GET['orgform_kurzbz']) && isset ($_GET['studiensemester_kurzbz']) && isset ($_GET['ausbildungssemester'])) { header('Content-Type: text/html; charset=UTF-8'); - echo getStudienplanDropDown($_GET['studiengang_kz'], $_GET['orgform_kurzbz']); + echo getStudienplanDropDown($_GET['studiengang_kz'], $_GET['orgform_kurzbz'], '', $_GET['studiensemester_kurzbz'], $_GET['ausbildungssemester']); exit; } ?> @@ -389,8 +394,10 @@ function loadStudienplanData() var ts = jetzt.getTime(); var studiengang_kz = document.getElementById('studiengang_kz').value; var orgform_kurzbz = document.getElementById('orgform_kurzbz').value; + var studiensemester_kurzbz = document.getElementById('studiensemester_kurzbz').value; + var ausbildungssemester = document.getElementById('ausbildungssemester').value; var url= ''; - url += '&studiengang_kz='+encodeURIComponent(studiengang_kz)+"&orgform_kurzbz="+encodeURIComponent(orgform_kurzbz)+"&"+ts; + url += '&studiengang_kz='+encodeURIComponent(studiengang_kz)+"&orgform_kurzbz="+encodeURIComponent(orgform_kurzbz)+"&studiensemester_kurzbz="+encodeURIComponent(studiensemester_kurzbz)+"&ausbildungssemester="+encodeURIComponent(ausbildungssemester)+"&"+ts; anfrage.open("GET", url, true); anfrage.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); anfrage.onreadystatechange = setStudienplanData; @@ -1124,14 +1131,14 @@ foreach ($stg_obj->result as $row) } echo ''; echo ''; -echo 'Studiensemester *'; $stsem = new studiensemester(); $stsem->getAll(); foreach ($stsem->studiensemester as $row) echo ''; echo ''; echo ''; -echo 'Ausbildungssemester *'; for ($i=1;$i<9;$i++) echo ''; echo ''; @@ -1150,8 +1157,8 @@ echo ''; echo ''; echo "\n"; echo 'Studienplan
    '; -if($studiengang_kz!='') - echo getStudienplanDropDown($studiengang_kz, $orgform_kurzbz, $studienplan_id); +if($studiengang_kz!='' && $studiensemester_kurzbz!='') + echo getStudienplanDropDown($studiengang_kz, $orgform_kurzbz, $studienplan_id, $studiensemester_kurzbz); else echo 'Bitte zuerst einen Studiengang waehlen'; echo '
    diff --git a/vilesci/personen/institutsliste.php b/vilesci/personen/institutsliste.php index 0b7049826..1d0cd1715 100644 --- a/vilesci/personen/institutsliste.php +++ b/vilesci/personen/institutsliste.php @@ -47,7 +47,19 @@ echo ' - + + +

    Liste der MitarbeiterInnen der Institute

    '; @@ -85,7 +97,7 @@ else //Alle aktiven Mitarbeiter holen mit den ALVS-Stunden und der Hauptinstitutszuteilung $qry = "SELECT - vorname, nachname, fixangestellt, mitarbeiter_uid, kompetenzen, + personalnummer, vorname, nachname, fixangestellt, mitarbeiter_uid, kompetenzen, ( SELECT sum(semesterstunden) @@ -123,27 +135,21 @@ $qry = "SELECT if($result = $db->db_query($qry)) { - echo "

    + $count = $db->db_num_rows($result); + echo $count.' MitarbeiterInnen'; + echo "

    - - - - - - - - - - - - - - - - - - + + + + + + + + + + "; @@ -151,6 +157,7 @@ if($result = $db->db_query($qry)) while($row = $db->db_fetch_object($result)) { echo ''; + echo ""; echo ""; echo ""; echo ""; From 73b69d86573ae37be832e4544576a0ad9803b8fb Mon Sep 17 00:00:00 2001 From: kindlm Date: Wed, 1 Jun 2016 17:45:39 +0200 Subject: [PATCH 048/114] Reverted wrong commit --- system/mlists/mlists_generate.php | 6 +- .../personen/import/interessentenimport.php | 57 ++++++++----------- 2 files changed, 28 insertions(+), 35 deletions(-) diff --git a/system/mlists/mlists_generate.php b/system/mlists/mlists_generate.php index ffc3c655d..56465f353 100644 --- a/system/mlists/mlists_generate.php +++ b/system/mlists/mlists_generate.php @@ -247,7 +247,7 @@ $error_msg=''; JOIN public.tbl_benutzer ON (mitarbeiter_uid=uid) JOIN public.tbl_benutzerfunktion USING(uid) JOIN public.tbl_studiengang USING(oe_kurzbz) - WHERE tbl_benutzer.aktiv AND (funktion_kurzbz='Leitung' OR funktion_kurzbz='gLtg' OR funktion_kurzbz='stvLtg') AND + WHERE tbl_benutzer.aktiv AND (funktion_kurzbz='Leitung' OR funktion_kurzbz='gLtg') AND (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now()))"; if(!($result = $db->db_query($sql_query))) @@ -262,7 +262,7 @@ $error_msg=''; } // Personen holen die nicht im Verteiler sind echo '
    '; - $sql_query="SELECT DISTINCT mitarbeiter_uid AS uid + $sql_query="SELECT mitarbeiter_uid AS uid FROM public.tbl_mitarbeiter JOIN public.tbl_benutzer ON (mitarbeiter_uid=uid) @@ -270,7 +270,7 @@ $error_msg=''; JOIN public.tbl_studiengang USING(oe_kurzbz) WHERE tbl_benutzer.aktiv AND - (tbl_benutzerfunktion.funktion_kurzbz='Leitung' OR funktion_kurzbz='gLtg' OR funktion_kurzbz='stvLtg') AND + (tbl_benutzerfunktion.funktion_kurzbz='Leitung' OR funktion_kurzbz='gLtg') AND (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now()) AND mitarbeiter_uid NOT LIKE '\\\\_%' AND mitarbeiter_uid NOT IN (SELECT uid FROM public.tbl_benutzergruppe WHERE UPPER(gruppe_kurzbz)=UPPER('$mlist_name'))"; diff --git a/vilesci/personen/import/interessentenimport.php b/vilesci/personen/import/interessentenimport.php index 642061a61..e6897f8f3 100644 --- a/vilesci/personen/import/interessentenimport.php +++ b/vilesci/personen/import/interessentenimport.php @@ -129,46 +129,41 @@ if(isset($_GET['type']) && $_GET['type']=='getortcontent' && isset($_GET['plz']) exit; } -function getStudienplanDropDown($studiengang_kz, $orgform_kurzbz='', $studienplan_id='', $studiensemester_kurzbz, $ausbildungssemester='') +function getStudienplanDropDown($studiengang_kz, $orgform_kurzbz='', $studienplan_id='') { $db = new basis_db(); - $content= ' + '; $studienplan = new studienplan(); - $studienplan->getStudienplaeneFromSem($studiengang_kz, $studiensemester_kurzbz, $ausbildungssemester, $orgform_kurzbz); - //var_dump($studienplan->result); - if (count($studienplan->result)==0) - $content.=""; - else + $studienplan->getStudienplaene($studiengang_kz); + + foreach($studienplan->result as $row) { - $content .= ''; - foreach($studienplan->result as $row) + if($studienplan_id=='') + $studienplan_id=$row->studienplan_id; + + if($studienplan_id==$row->studienplan_id) + $selected='selected'; + else + $selected=''; + + if($row->aktiv) { - if($studienplan_id=='') - $studienplan_id=$row->studienplan_id; - - if($studienplan_id==$row->studienplan_id) - $selected='selected'; - else - $selected=''; - - if($row->aktiv) - { - if($orgform_kurzbz=='' || $row->orgform_kurzbz=='' || $row->orgform_kurzbz==$orgform_kurzbz) - $content.=""; - } + if($orgform_kurzbz=='' || $row->orgform_kurzbz=='' || $row->orgform_kurzbz==$orgform_kurzbz) + $content.=""; } - } + } $content.= ''; return $content; } -if(isset($_GET['type']) && $_GET['type']=='getstudienplancontent' && isset($_GET['studiengang_kz']) && isset($_GET['orgform_kurzbz']) && isset ($_GET['studiensemester_kurzbz']) && isset ($_GET['ausbildungssemester'])) +if(isset($_GET['type']) && $_GET['type']=='getstudienplancontent' && isset($_GET['studiengang_kz']) && isset($_GET['orgform_kurzbz'])) { header('Content-Type: text/html; charset=UTF-8'); - echo getStudienplanDropDown($_GET['studiengang_kz'], $_GET['orgform_kurzbz'], '', $_GET['studiensemester_kurzbz'], $_GET['ausbildungssemester']); + echo getStudienplanDropDown($_GET['studiengang_kz'], $_GET['orgform_kurzbz']); exit; } ?> @@ -394,10 +389,8 @@ function loadStudienplanData() var ts = jetzt.getTime(); var studiengang_kz = document.getElementById('studiengang_kz').value; var orgform_kurzbz = document.getElementById('orgform_kurzbz').value; - var studiensemester_kurzbz = document.getElementById('studiensemester_kurzbz').value; - var ausbildungssemester = document.getElementById('ausbildungssemester').value; var url= ''; - url += '&studiengang_kz='+encodeURIComponent(studiengang_kz)+"&orgform_kurzbz="+encodeURIComponent(orgform_kurzbz)+"&studiensemester_kurzbz="+encodeURIComponent(studiensemester_kurzbz)+"&ausbildungssemester="+encodeURIComponent(ausbildungssemester)+"&"+ts; + url += '&studiengang_kz='+encodeURIComponent(studiengang_kz)+"&orgform_kurzbz="+encodeURIComponent(orgform_kurzbz)+"&"+ts; anfrage.open("GET", url, true); anfrage.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); anfrage.onreadystatechange = setStudienplanData; @@ -1131,14 +1124,14 @@ foreach ($stg_obj->result as $row) } echo ''; echo '
    '; -echo ''; -echo ''; echo "\n"; echo ' From ee39e5a3f74dfce583af6eaf17b84f4fd8a4fc2f Mon Sep 17 00:00:00 2001 From: oesi Date: Tue, 7 Jun 2016 14:06:25 +0200 Subject: [PATCH 049/114] =?UTF-8?q?Maximalen=20Datumsbereich=20auf=20400?= =?UTF-8?q?=20Tage=20vergroessert=20da=20es=20sonst=20zu=20Problemen=20kom?= =?UTF-8?q?mt=20wenn=20das=20aktuelle=20und=20das=20n=C3=A4chste=20StSem?= =?UTF-8?q?=20nach=20Google=20exportiert=20wird?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cis/private/lvplan/stpl_kalender.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cis/private/lvplan/stpl_kalender.php b/cis/private/lvplan/stpl_kalender.php index 47258eab2..bae1b5795 100644 --- a/cis/private/lvplan/stpl_kalender.php +++ b/cis/private/lvplan/stpl_kalender.php @@ -231,7 +231,8 @@ if(!isset($begin) || !isset($ende)) } } -if($ende-$begin>31536000) + +if($ende-$begin>34560000) // = 400 Tage { die($p->t('lvplan/datumsbereichZuGross')."!"); } From cf3ce680d6f6887dfedcd3ea977d4bec652438c6 Mon Sep 17 00:00:00 2001 From: Stefan Puraner Date: Wed, 8 Jun 2016 13:32:06 +0200 Subject: [PATCH 050/114] config-eintraege hinzugefuegt; bugfixes pruefungsverwaltung und studienplanansicht im cis; anpassungen zeugnis --- CHANGELOG.md | 4 + .../benotungstool/lvgesamtnoteverwalten.php | 609 ++++++++++-------- cis/private/lehre/pruefung/pruefung.js | 4 +- cis/private/lehre/pruefung/pruefung.js.php | 30 +- .../pruefung/pruefungsanmeldung.json.php | 100 +-- .../lehre/pruefung/pruefungsanmeldung.php | 2 + cis/private/profile/studienplan.php | 88 ++- config/cis.config-default.inc.php | 3 + config/global.config-default.inc.php | 11 + rdf/lehrveranstaltungszeugnis_ktu.rdf.php | 14 +- rdf/zeugnis.rdf.php | 19 +- 11 files changed, 514 insertions(+), 370 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 336515567..27f75aa38 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,8 @@ - **[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. +- **[CIS]** Config-Einträge für die Tabellenspalten beim Eintragen der Gesamtnote hinzugefügt. +- **[CIS]** Prüfungsverwaltung: Config-Eintrag hinzugefügt um die Accordion-Elemente ein- und auszublenden. ### Changed - **[FAS]** Dokumente Menü im FAS neu sortiert um den Lebenszyklus des Studierenden abzubilden @@ -18,6 +20,8 @@ - **[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 +- **[CIS]** Studienplanansicht: Wenn eine LV nicht benotet ist, aber eine kompatible LV mit vorhandener Anrechnung benotet ist wird diese Note angezeigt. +- **[FAS]** Die RDF-Schnittstelle für das Zeugnis prüft bei Anrechnungen ob, die ECTS-Punkte übereinstimmen und wählt bei ungleichen Werten jene der angerechneten LV. ### 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. diff --git a/cis/private/lehre/benotungstool/lvgesamtnoteverwalten.php b/cis/private/lehre/benotungstool/lvgesamtnoteverwalten.php index c5827b826..b91eb180d 100644 --- a/cis/private/lehre/benotungstool/lvgesamtnoteverwalten.php +++ b/cis/private/lehre/benotungstool/lvgesamtnoteverwalten.php @@ -840,9 +840,15 @@ echo " - - - + "; + + if(defined("CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE") && CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE) + { + echo ""; + } + + + echo " @@ -853,26 +859,38 @@ echo "
    - - "; + "; + + if(defined('CIS_GESAMTNOTE_PRUEFUNG_TERMIN2') && CIS_GESAMTNOTE_PRUEFUNG_TERMIN2) + { + echo ""; + } if(defined('CIS_GESAMTNOTE_PRUEFUNG_TERMIN3') && CIS_GESAMTNOTE_PRUEFUNG_TERMIN3) { echo ""; } + if(defined('CIS_GESAMTNOTE_PRUEFUNG_KOMMPRUEF') && CIS_GESAMTNOTE_PRUEFUNG_KOMMPRUEF) + { + echo ""; + } echo " - + - - "; + "; + if(defined('CIS_GESAMTNOTE_PRUEFUNG_TERMIN2') && CIS_GESAMTNOTE_PRUEFUNG_TERMIN2) + { + echo ""; + } + if(defined('CIS_GESAMTNOTE_PRUEFUNG_TERMIN3') && CIS_GESAMTNOTE_PRUEFUNG_TERMIN3) { echo "
    ALVSInstitute
    NachnameVornameFix / FreiKompetenzen".$db->convert_html_chars($ws)."".$db->convert_html_chars($ss)."StudiengangHauptzuteilungSonstigePNrNachnameVornameFix / FreiKompetenzenALVS
    ".$db->convert_html_chars($ws)."
    ALVS
    ".$db->convert_html_chars($ss)."
    StudiengangInstitut HauptzuteilungSonstige Institutszuteilungen
    ".$db->convert_html_chars($row->personalnummer)."".$db->convert_html_chars($row->nachname)."".$db->convert_html_chars($row->vorname)."".($row->fixangestellt=='t'?'fix':'frei')."
    Studiensemester *
    Studiensemester *'; echo '
    Ausbildungssemester *
    Ausbildungssemester *'; @@ -1157,8 +1150,8 @@ echo ''; echo '
    Studienplan
    '; -if($studiengang_kz!='' && $studiensemester_kurzbz!='') - echo getStudienplanDropDown($studiengang_kz, $orgform_kurzbz, $studienplan_id, $studiensemester_kurzbz); +if($studiengang_kz!='') + echo getStudienplanDropDown($studiengang_kz, $orgform_kurzbz, $studienplan_id); else echo 'Bitte zuerst einen Studiengang waehlen'; echo '
    ".$p->t('global/uid')." ".$p->t('global/nachname')."".$p->t('global/vorname')."".($grade_from_moodle?''.$p->t('benotungstool/moodleNote').'':''.$p->t('benotungstool/leNoten').' (LE-ID)')."".$p->t('benotungstool/punkte').' / '.$p->t('benotungstool/note')."".$p->t('global/vorname')."".($grade_from_moodle?''.$p->t('benotungstool/moodleNote').'':''.$p->t('benotungstool/leNoten').' (LE-ID)')."".$p->t('benotungstool/punkte').' / '.$p->t('benotungstool/note')." ".$p->t('benotungstool/lvNote')."
    ".$p->t('benotungstool/zeugnisnote')."".$p->t('benotungstool/nachpruefung')."".$p->t('benotungstool/zeugnisnote')."".$p->t('benotungstool/nachpruefung')."".$p->t('benotungstool/nachpruefung2')."".$p->t('benotungstool/kommissionellePruefung')."".$p->t('benotungstool/kommissionellePruefung')."
      - - - - - - -
    ".$p->t('global/datum')."".$p->t('benotungstool/note')."
    -
      + + + + + + +
    ".$p->t('global/datum')."".$p->t('benotungstool/note')."
    +
    @@ -885,66 +903,73 @@ echo "
    "; } - echo " - - - - - - - -
    ".$p->t('global/datum')."".$p->t('benotungstool/note')."
    - + + if(defined('CIS_GESAMTNOTE_PRUEFUNG_KOMMPRUEF') && CIS_GESAMTNOTE_PRUEFUNG_KOMMPRUEF) + { + echo " + + + + + + + +
    ".$p->t('global/datum')."".$p->t('benotungstool/note')."
    + "; + } + echo " "; + if(defined("CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE") && CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE) + { + if($grade_from_moodle) + { + flush(); + ob_flush(); - if($grade_from_moodle) - { - flush(); - ob_flush(); + $moodle24 = new moodle24_course(); + $moodle24->loadNoten($lvid, $stsem); - $moodle24 = new moodle24_course(); - $moodle24->loadNoten($lvid, $stsem); + $moodle24_course_bezeichnung=array(); - $moodle24_course_bezeichnung=array(); + if(count($moodle24->result)>0) + { + // Bezeichnungen der Moodlekurse laden + foreach($moodle24->result as $obj) + { + if(!isset($moodle24_course_bezeichnung[$obj->mdl_course_id])) + { + $moodle24course = new moodle24_course(); + $moodle24course->load($obj->mdl_course_id); - if(count($moodle24->result)>0) - { - // Bezeichnungen der Moodlekurse laden - foreach($moodle24->result as $obj) - { - if(!isset($moodle24_course_bezeichnung[$obj->mdl_course_id])) - { - $moodle24course = new moodle24_course(); - $moodle24course->load($obj->mdl_course_id); + $moodle24_course_bezeichnung[$obj->mdl_course_id]=$moodle24course->mdl_shortname; + } - $moodle24_course_bezeichnung[$obj->mdl_course_id]=$moodle24course->mdl_shortname; - } + if(!isset($moodle24_course_gewicht[$obj->mdl_course_id])) + { + $mdl_obj = new moodle24_course(); + $mdl_lehreinheiten=$mdl_obj->getLeFromCourse($obj->mdl_course_id); - if(!isset($moodle24_course_gewicht[$obj->mdl_course_id])) - { - $mdl_obj = new moodle24_course(); - $mdl_lehreinheiten=$mdl_obj->getLeFromCourse($obj->mdl_course_id); + foreach($mdl_lehreinheiten as $row_mdl_lehreinheit) + { + if($row_mdl_lehreinheit!='') + { + $lehreinheit_gewicht_obj = new lehreinheit(); + $lehreinheit_gewicht_obj->load($row_mdl_lehreinheit); - foreach($mdl_lehreinheiten as $row_mdl_lehreinheit) - { - if($row_mdl_lehreinheit!='') - { - $lehreinheit_gewicht_obj = new lehreinheit(); - $lehreinheit_gewicht_obj->load($row_mdl_lehreinheit); - - if($lehreinheit_gewicht_obj->gewicht!='') - { - $moodle24_course_gewicht[$obj->mdl_course_id]=$lehreinheit_gewicht_obj->gewicht; - break; - } - } - } - } - } - } - } + if($lehreinheit_gewicht_obj->gewicht!='') + { + $moodle24_course_gewicht[$obj->mdl_course_id]=$lehreinheit_gewicht_obj->gewicht; + break; + } + } + } + } + } + } + } + } // studentenquery $qry_stud = "SELECT @@ -978,165 +1003,168 @@ echo " $note_le_gewichtet=0; $gewichtsumme=0; $note=0; - if($grade_from_moodle) - { - //Moodle 1.9 + if(defined("CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE") && CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE) + { + if($grade_from_moodle) + { + //Moodle 1.9 - // Alle Moodlekursdaten zu Lehreinheit und Semester lesen wenn noch nicht belegt. - if (is_null($mdldaten) && defined('CONN_STRING_MOODLE')) - { - //Noten aus Moodle - if (!isset($moodle_course)) - $moodle_course = new moodle19_course(); + // Alle Moodlekursdaten zu Lehreinheit und Semester lesen wenn noch nicht belegt. + if (is_null($mdldaten) && defined('CONN_STRING_MOODLE')) + { + //Noten aus Moodle + if (!isset($moodle_course)) + $moodle_course = new moodle19_course(); - if (!$mdldaten = $moodle_course->loadNoten($lvid, $stsem, '', true,$debg)) - $mdldaten=''; - } - // Verarbeitet die Kursdaten - if (!is_null($mdldaten) && is_array($mdldaten)) - { - reset($mdldaten); - $title=""; - $mdl_shortname=''; - for ($imdldaten=0;$imdldatenloadNoten($lvid, $stsem, '', true,$debg)) + $mdldaten=''; + } + // Verarbeitet die Kursdaten + if (!is_null($mdldaten) && is_array($mdldaten)) + { + reset($mdldaten); + $title=""; + $mdl_shortname=''; + for ($imdldaten=0;$imdldatenresult; - $kursArr=(isset($mdldata[2])?$mdldata[2]:array()); - $kursasObj=(isset($mdldata[3])?$mdldata[3]:array()); - $kursname=(isset($mdldata[7])?$mdldata[7]:''); - $shortname=(isset($mdldata[8])?$mdldata[8]:''); + $mdldata=$mdldaten[$imdldaten]->result; + $kursArr=(isset($mdldata[2])?$mdldata[2]:array()); + $kursasObj=(isset($mdldata[3])?$mdldata[3]:array()); + $kursname=(isset($mdldata[7])?$mdldata[7]:''); + $shortname=(isset($mdldata[8])?$mdldata[8]:''); - $note=0; - $userGef=false; + $note=0; + $userGef=false; - reset($kursArr); - for ($iKurs=0;$iKursuid))==strtolower(trim($kursArr[$iKurs][2])) ) - { - $note=trim($kursArr[$iKurs][6]); - $userGef=true; + reset($kursArr); + for ($iKurs=0;$iKursuid))==strtolower(trim($kursArr[$iKurs][2])) ) + { + $note=trim($kursArr[$iKurs][6]); + $userGef=true; - if (is_numeric($note) || $debg) - { - if (is_numeric($note)) - { - $note_le += $note; - $note_le_gewichtet +=$note*$gewichtung; - $gewichtsumme+=$gewichtung; - $le_anz += 1; - } - if ($note == 5) - $leneg = " style='color:red; font-weight:bold'"; - else - $leneg = " style='font-weight:bold'"; + if (is_numeric($note) || $debg) + { + if (is_numeric($note)) + { + $note_le += $note; + $note_le_gewichtet +=$note*$gewichtung; + $gewichtsumme+=$gewichtung; + $le_anz += 1; + } + if ($note == 5) + $leneg = " style='color:red; font-weight:bold'"; + else + $leneg = " style='font-weight:bold'"; - $mdl_shortname=$mdldaten[$imdldaten]->mdl_shortname; - $title="\r\nMoodle 1.9 KursID: ".$mdldaten[$imdldaten]->mdl_course_id ."\r\n\r\n".$kursname.', '.$mdl_shortname."\r\n"; - foreach ($kursasObj[$iKurs] as $key => $value) - { - $title.=$key."=>".$value."\r\n"; - } + $mdl_shortname=$mdldaten[$imdldaten]->mdl_shortname; + $title="\r\nMoodle 1.9 KursID: ".$mdldaten[$imdldaten]->mdl_course_id ."\r\n\r\n".$kursname.', '.$mdl_shortname."\r\n"; + foreach ($kursasObj[$iKurs] as $key => $value) + { + $title.=$key."=>".$value."\r\n"; + } - $note_les_str .= "".$note." (".$mdl_shortname.") "; - } - } // ende If Richtiger User + $note_les_str .= "".$note." (".$mdl_shortname.") "; + } + } // ende If Richtiger User - if ($userGef) - { - $iKurs=count($kursArr)+1; // diesen USER for beenden - user wurde gefunden - } + if ($userGef) + { + $iKurs=count($kursArr)+1; // diesen USER for beenden - user wurde gefunden + } - } // ende Kursschleife - } // MoodleKurse abarbeiten + } // ende Kursschleife + } // MoodleKurse abarbeiten - #echo "

    $title Anzahl Noten gef. $le_anz $note_le

    "; - } - else - { - if(defined('CONN_STRING_MOODLE')) - { - //den Error nur einmal anzeigen und nicht fuer jeden Studenten - $moodle_course->errormsg=trim($moodle_course->errormsg); - if(!$errorshown && !empty($moodle_course->errormsg) ) - { - //echo '
    '.$moodle_course->errormsg.'
    '; - $errorshown=true; - } - } - } + #echo "

    $title Anzahl Noten gef. $le_anz $note_le

    "; + } + else + { + if(defined('CONN_STRING_MOODLE')) + { + //den Error nur einmal anzeigen und nicht fuer jeden Studenten + $moodle_course->errormsg=trim($moodle_course->errormsg); + if(!$errorshown && !empty($moodle_course->errormsg) ) + { + //echo '
    '.$moodle_course->errormsg.'
    '; + $errorshown=true; + } + } + } - // Moodle 2.4 - if(isset($moodle24) && count($moodle24->result)>0) - { - foreach($moodle24->result as $moodle24_noten) - { - if($moodle24_noten->uid==$row_stud->uid) - { - $gewichtung=1; - $note_le+=$moodle24_noten->note; - if(isset($moodle24_course_gewicht[$moodle24_noten->mdl_course_id])) - $gewichtung=$moodle24_course_gewicht[$moodle24_noten->mdl_course_id]; + // Moodle 2.4 + if(isset($moodle24) && count($moodle24->result)>0) + { + foreach($moodle24->result as $moodle24_noten) + { + if($moodle24_noten->uid==$row_stud->uid) + { + $gewichtung=1; + $note_le+=$moodle24_noten->note; + if(isset($moodle24_course_gewicht[$moodle24_noten->mdl_course_id])) + $gewichtung=$moodle24_course_gewicht[$moodle24_noten->mdl_course_id]; - if($gewichtung=='') - $gewichtung=1; - $note_le_gewichtet+=$moodle24_noten->note*$gewichtung; - $gewichtsumme+=$gewichtung; - $le_anz+=1; - //if ($moodle24_noten->note == 5) - // $leneg = " style='color:red; font-weight:bold'"; - //else - $leneg = ' style="font-weight: bold;"'; - $title="Moodle KursID: ".$moodle24_noten->mdl_course_id. - "\nKursbezeichnung: ".$moodle24_course_bezeichnung[$moodle24_noten->mdl_course_id]. - "\nUser: ".$moodle24_noten->uid. - "\nNote: ".$moodle24_noten->note; - if(defined('CIS_GESAMTNOTE_GEWICHTUNG') && CIS_GESAMTNOTE_GEWICHTUNG) - $title.="\nGewichtung: ".$gewichtung; - $note_les_str .= "
    ".$moodle24_noten->note." (".$moodle24_course_bezeichnung[$moodle24_noten->mdl_course_id].") "; + if($gewichtung=='') + $gewichtung=1; + $note_le_gewichtet+=$moodle24_noten->note*$gewichtung; + $gewichtsumme+=$gewichtung; + $le_anz+=1; + //if ($moodle24_noten->note == 5) + // $leneg = " style='color:red; font-weight:bold'"; + //else + $leneg = ' style="font-weight: bold;"'; + $title="Moodle KursID: ".$moodle24_noten->mdl_course_id. + "\nKursbezeichnung: ".$moodle24_course_bezeichnung[$moodle24_noten->mdl_course_id]. + "\nUser: ".$moodle24_noten->uid. + "\nNote: ".$moodle24_noten->note; + if(defined('CIS_GESAMTNOTE_GEWICHTUNG') && CIS_GESAMTNOTE_GEWICHTUNG) + $title.="\nGewichtung: ".$gewichtung; + $note_les_str .= "
    ".$moodle24_noten->note." (".$moodle24_course_bezeichnung[$moodle24_noten->mdl_course_id].") "; - } - } - } - } - else - { - //Noten aus Uebungstool - $le = new lehreinheit(); - $le->load_lehreinheiten($lvid, $stsem); - foreach($le->lehreinheiten as $l) - { - $legesamtnote = new legesamtnote($l->lehreinheit_id); + } + } + } + } + else + { + //Noten aus Uebungstool + $le = new lehreinheit(); + $le->load_lehreinheiten($lvid, $stsem); + foreach($le->lehreinheiten as $l) + { + $legesamtnote = new legesamtnote($l->lehreinheit_id); - if (!$legesamtnote->load($row_stud->uid,$l->lehreinheit_id)) - { - //$note_les_str .= "- (".$l->lehreinheit_id.")"; - } - else - { - $note_le += $legesamtnote->note; + if (!$legesamtnote->load($row_stud->uid,$l->lehreinheit_id)) + { + //$note_les_str .= "- (".$l->lehreinheit_id.")"; + } + else + { + $note_le += $legesamtnote->note; - $gewicht = $l->gewicht; - if($l->gewicht=='') - $gewicht = 1; - $note_le_gewichtet+=$legesamtnote->note*$gewicht; - $gewichtsumme+=$gewicht; + $gewicht = $l->gewicht; + if($l->gewicht=='') + $gewicht = 1; + $note_le_gewichtet+=$legesamtnote->note*$gewicht; + $gewichtsumme+=$gewicht; - $le_anz += 1; - if ($legesamtnote->note == 5) - $leneg = " style='color:red; font-weight:bold'"; - else - $leneg = ""; - if(defined('CIS_GESAMTNOTE_GEWICHTUNG') && CIS_GESAMTNOTE_GEWICHTUNG) - $title='Gewichtung: '.$l->gewicht; - else - $title=''; - $note_les_str .= ''.$legesamtnote->note.' ('.$l->lehreinheit_id.') '; - } - } - } + $le_anz += 1; + if ($legesamtnote->note == 5) + $leneg = " style='color:red; font-weight:bold'"; + else + $leneg = ""; + if(defined('CIS_GESAMTNOTE_GEWICHTUNG') && CIS_GESAMTNOTE_GEWICHTUNG) + $title='Gewichtung: '.$l->gewicht; + else + $title=''; + $note_les_str .= ''.$legesamtnote->note.' ('.$l->lehreinheit_id.') '; + } + } + } + } if ($lvgesamtnote = new lvgesamtnote($lvid,$row_stud->uid,$stsem)) { @@ -1190,8 +1218,10 @@ echo " else $znote = null; - - echo "".$note_les_str." "; + if(defined("CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE") && CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE) + { + echo "".$note_les_str." "; + } if (key_exists($row_stud->uid,$studpruef_arr)) $hide = "style='display:none;visibility:hidden;'"; @@ -1275,43 +1305,46 @@ echo " if(isset($noten_array[$znote]) && $noten_array[$znote]['positiv']==false) $summe_ng++; - // Pruefung 2. Termin - if (key_exists($row_stud->uid, $studpruef_arr)) + if(defined('CIS_GESAMTNOTE_PRUEFUNG_TERMIN2') && CIS_GESAMTNOTE_PRUEFUNG_TERMIN2) { - echo ""; - echo ""; - echo ""; - $le_id_arr = array(); - $le_id_arr = array_keys($studpruef_arr[$row_stud->uid]); - foreach ($le_id_arr as $le_id_stud) - { - $pr_note = $studpruef_arr[$row_stud->uid][$le_id_stud]["note"]; - $pr_punkte = $studpruef_arr[$row_stud->uid][$le_id_stud]["punkte"]; - $pr_datum = $studpruef_arr[$row_stud->uid][$le_id_stud]["datum"]; - $pr_le_id = $le_id_stud; + // Pruefung 2. Termin + if (key_exists($row_stud->uid, $studpruef_arr)) + { + echo ""; - } - else - { - if (!is_null($note_lv) || !is_null($znote)) - echo ""; - else - echo ""; - } + echo ' + + + '; + } + echo "
    "; + echo ""; + echo ""; + $le_id_arr = array(); + $le_id_arr = array_keys($studpruef_arr[$row_stud->uid]); + foreach ($le_id_arr as $le_id_stud) + { + $pr_note = $studpruef_arr[$row_stud->uid][$le_id_stud]["note"]; + $pr_punkte = $studpruef_arr[$row_stud->uid][$le_id_stud]["punkte"]; + $pr_datum = $studpruef_arr[$row_stud->uid][$le_id_stud]["datum"]; + $pr_le_id = $le_id_stud; - if($pr_punkte!='') - $pr_notenbezeichnung = $noten_array[$pr_note]['bezeichnung'].' ('.number_format($pr_punkte,2).')'; - else - $pr_notenbezeichnung = $noten_array[$pr_note]['bezeichnung']; + if($pr_punkte!='') + $pr_notenbezeichnung = $noten_array[$pr_note]['bezeichnung'].' ('.number_format($pr_punkte,2).')'; + else + $pr_notenbezeichnung = $noten_array[$pr_note]['bezeichnung']; - echo ' - - - '; - } - echo "
    '.$pr_datum.''.$pr_notenbezeichnung.' -
    "; - echo "
    "; - echo "
    '.$pr_datum.''.$pr_notenbezeichnung.' +
    "; + echo "
    "; + echo ""; + } + else + { + if (!is_null($note_lv) || !is_null($znote)) + echo ""; + else + echo ""; + } + } if(defined('CIS_GESAMTNOTE_PRUEFUNG_TERMIN3') && CIS_GESAMTNOTE_PRUEFUNG_TERMIN3) { @@ -1354,39 +1387,42 @@ echo " } } - // komm Pruefung - if (key_exists($row_stud->uid,$studpruef_komm)) + if(defined('CIS_GESAMTNOTE_PRUEFUNG_KOMMPRUEF') && CIS_GESAMTNOTE_PRUEFUNG_KOMMPRUEF) { - echo ""; - echo ""; - echo ""; - $le_id_arr = array(); - $le_id_arr = array_keys($studpruef_komm[$row_stud->uid]); - foreach ($le_id_arr as $le_id_stud) - { - $pr_note = $studpruef_komm[$row_stud->uid][$le_id_stud]["note"]; - $pr_punkte = $studpruef_komm[$row_stud->uid][$le_id_stud]["punkte"]; - $pr_datum = $studpruef_komm[$row_stud->uid][$le_id_stud]["datum"]; - $pr_le_id = $le_id_stud; + // komm Pruefung + if (key_exists($row_stud->uid,$studpruef_komm)) + { + echo ""; - } - else - { - echo ""; - } + echo ' + + + '; + } + echo "
    "; + echo ""; + echo ""; + $le_id_arr = array(); + $le_id_arr = array_keys($studpruef_komm[$row_stud->uid]); + foreach ($le_id_arr as $le_id_stud) + { + $pr_note = $studpruef_komm[$row_stud->uid][$le_id_stud]["note"]; + $pr_punkte = $studpruef_komm[$row_stud->uid][$le_id_stud]["punkte"]; + $pr_datum = $studpruef_komm[$row_stud->uid][$le_id_stud]["datum"]; + $pr_le_id = $le_id_stud; - if($pr_punkte!='') - $pr_notenbezeichnung = $noten_array[$pr_note]['bezeichnung'].' ('.number_format($pr_punkte,2).')'; - else - $pr_notenbezeichnung = $noten_array[$pr_note]['bezeichnung']; + if($pr_punkte!='') + $pr_notenbezeichnung = $noten_array[$pr_note]['bezeichnung'].' ('.number_format($pr_punkte,2).')'; + else + $pr_notenbezeichnung = $noten_array[$pr_note]['bezeichnung']; - echo ' - - - '; - } - echo "
    '.$pr_datum.''.$pr_notenbezeichnung.'
    "; - echo "
    "; - echo "
    '.$pr_datum.''.$pr_notenbezeichnung.'
    "; + echo "
    "; + echo ""; + } + else + { + echo ""; + } + } echo ""; $i++; @@ -1397,12 +1433,27 @@ echo " echo " Σ - $summe_stud - - $summe_ng - $summe_t2 - $summe_t3 - $summe_komm + $summe_stud"; + if(defined("CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE") && (!CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE)) + { + echo ""; + } + else + { + echo ""; + } + echo "$summe_ng"; + + if(defined('CIS_GESAMTNOTE_PRUEFUNG_TERMIN2') && CIS_GESAMTNOTE_PRUEFUNG_TERMIN2): ?> + "'>$summe_t2; + + "'>$summe_t3"; + + "'>$summe_komm + diff --git a/cis/private/lehre/pruefung/pruefung.js b/cis/private/lehre/pruefung/pruefung.js index a68c07d08..620f20db0 100644 --- a/cis/private/lehre/pruefung/pruefung.js +++ b/cis/private/lehre/pruefung/pruefung.js @@ -589,6 +589,8 @@ function resetForm() */ function setTablesorter(tableId) { + if($("#"+tableId).length != 0) + { if($("#"+tableId)[0].hasInitialized !== true) { $("#"+tableId).tablesorter({ @@ -602,6 +604,7 @@ function setTablesorter(tableId) var sorting = [[1,0],[0,0]]; $("#"+tableId).trigger("sorton",[sorting]); } + } } /** @@ -688,7 +691,6 @@ function showAnmeldungen(pruefungstermin_id, lehrveranstaltung_id) function writeAnmeldungen(data) { - console.log(data); if(data.error === 'false') { var terminId = data.result.anmeldungen[0].pruefungstermin_id; diff --git a/cis/private/lehre/pruefung/pruefung.js.php b/cis/private/lehre/pruefung/pruefung.js.php index 3ef462d05..02d0e1b9d 100755 --- a/cis/private/lehre/pruefung/pruefung.js.php +++ b/cis/private/lehre/pruefung/pruefung.js.php @@ -633,19 +633,22 @@ function resetForm() */ function setTablesorter(tableId) { - if($("#"+tableId)[0].hasInitialized !== true) - { - $("#"+tableId).tablesorter({ - widgets: ["zebra"], - sortList: [[1,0]] - }); - } - else - { - $("#"+tableId).trigger("updateAll"); - var sorting = [[1,0],[0,0]]; - $("#"+tableId).trigger("sorton",[sorting]); - } + if($("#"+tableId).length != 0) + { + if($("#"+tableId)[0].hasInitialized !== true) + { + $("#"+tableId).tablesorter({ + widgets: ["zebra"], + sortList: [[1,0]] + }); + } + else + { + $("#"+tableId).trigger("updateAll"); + var sorting = [[1,0],[0,0]]; + $("#"+tableId).trigger("sorton",[sorting]); + } + } } /** @@ -732,7 +735,6 @@ function showAnmeldungen(pruefungstermin_id, lehrveranstaltung_id) function writeAnmeldungen(data) { - console.log(data); if(data.error === 'false') { var terminId = data.result.anmeldungen[0].pruefungstermin_id; diff --git a/cis/private/lehre/pruefung/pruefungsanmeldung.json.php b/cis/private/lehre/pruefung/pruefungsanmeldung.json.php index 137e27a45..90b13f5bc 100755 --- a/cis/private/lehre/pruefung/pruefungsanmeldung.json.php +++ b/cis/private/lehre/pruefung/pruefungsanmeldung.json.php @@ -500,6 +500,7 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) $konto = new konto(); $creditpoints = $konto->getCreditPoints($uid, $aktStudiensemester); + if($creditpoints !== false) { if($creditpoints < $lehrveranstaltung->ects) @@ -547,6 +548,8 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) $person->getPersonFromBenutzer($uid); $prestudent = new prestudent(); $prestudent->getPrestudenten($person->person_id); + $studiensemester = new studiensemester(); + $stdsem = $studiensemester->getaktorNext(); if(count($prestudent->result) > 0) { @@ -563,58 +566,65 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) } if($prestudent_id != "") { - $anrechungSaveResult = false; - if(!defined('CIS_PRUEFUNGSANMELDUNG_ANRECHNUNG') || CIS_PRUEFUNGSANMELDUNG_ANRECHNUNG == true) - { - $anrechnung->lehrveranstaltung_id = $lehrveranstaltung->lehrveranstaltung_id; - $anrechnung->lehrveranstaltung_id_kompatibel = $lv_komp->lehrveranstaltung_id; - $anrechnung->prestudent_id = $prestudent_id; - $anrechnung->begruendung_id = "2"; - $anrechnung->genehmigt_von = CIS_PRUEFUNGSANMELDUNG_USER; - $anrechnung->new = true; - $anrechungSaveResult = $anrechnung->save(); - } - else - { - $anrechungSaveResult = true; - } - + $anrechungSaveResult = false; + if(!defined('CIS_PRUEFUNGSANMELDUNG_ANRECHNUNG') || CIS_PRUEFUNGSANMELDUNG_ANRECHNUNG == true) + { + if($lv_komp->lehrveranstaltung_id != null && ($lv_komp->lehrveranstaltung_id != $lehrveranstaltung->lehrveranstaltung_id)) + { + $anrechnung->lehrveranstaltung_id = $lv_komp->lehrveranstaltung_id; + $anrechnung->lehrveranstaltung_id_kompatibel = $lehrveranstaltung->lehrveranstaltung_id; + $anrechnung->prestudent_id = $prestudent_id; + $anrechnung->begruendung_id = "2"; + $anrechnung->genehmigt_von = CIS_PRUEFUNGSANMELDUNG_USER; + $anrechnung->new = true; + $anrechungSaveResult = $anrechnung->save(); + } + else + { + $anrechungSaveResult = true; + } + } + 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); - if(defined('CIS_PRUEFUNG_MAIL_EMPFAENGER_ANMEDLUNG') && (CIS_PRUEFUNG_MAIL_EMPFAENGER_ANMEDLUNG !== "")) - $to = CIS_PRUEFUNG_MAIL_EMPFAENGER_ANMEDLUNG."@".DOMAIN; + if($anrechnung->anrechnung_id == "") + $anmeldung->anrechnung_id = null; else - $to = $pruefung->mitarbeiter_uid."@".DOMAIN; - $from = "noreply@".DOMAIN; - $subject = $p->t('pruefung/emailLektorSubjectAnmeldung'); - $mail = new mail($to, $from, $subject, $p->t('pruefung/emailBodyBitteHtmlSicht')); + $anmeldung->anrechnung_id = $anrechnung->anrechnung_id; - $student = new student($uid); - $datum = new datum(); + if($anmeldung->save(true)) + { + $pruefung = new pruefungCis($termin->pruefung_id); + if(defined('CIS_PRUEFUNG_MAIL_EMPFAENGER_ANMEDLUNG') && (CIS_PRUEFUNG_MAIL_EMPFAENGER_ANMEDLUNG !== "")) + $to = CIS_PRUEFUNG_MAIL_EMPFAENGER_ANMEDLUNG."@".DOMAIN; + else + $to = $pruefung->mitarbeiter_uid."@".DOMAIN; + $from = "noreply@".DOMAIN; + $subject = $p->t('pruefung/emailLektorSubjectAnmeldung'); + $mail = new mail($to, $from, $subject, $p->t('pruefung/emailBodyBitteHtmlSicht')); - $lv = new lehrveranstaltung($anmeldung->lehrveranstaltung_id); + $student = new student($uid); + $datum = new datum(); - $html = $p->t('pruefung/emailLektorStudentIn')." ".$student->vorname." ".$student->nachname." ".$p->t('pruefung/emailLektorHatSichZurPruefung')." ".$lv->bezeichnung." ".$p->t('pruefung/emailLektorAm')." ".$datum->formatDatum($termin->von, "m.d.Y")." ".$p->t('pruefung/emailLektorVon')." ".$datum->formatDatum($termin->von,"h:i")." ".$p->t('pruefung/emailLektorUhrBis')." ".$datum->formatDatum($termin->bis,"h:i")." ".$p->t('pruefung/emailLektorUhrAngemeldet'); - $mail->setHTMLContent($html); - $mail->send(); + $lv = new lehrveranstaltung($anmeldung->lehrveranstaltung_id); - $data['result'] = $p->t('pruefung/anmeldungErfolgreich'); - $data['error']='false'; - $data['errormsg']=''; - } - else - { - $data['error']='true'; - $data['errormsg']=$anmeldung->errormsg; - } + $html = $p->t('pruefung/emailLektorStudentIn')." ".$student->vorname." ".$student->nachname." ".$p->t('pruefung/emailLektorHatSichZurPruefung')." ".$lv->bezeichnung." ".$p->t('pruefung/emailLektorAm')." ".$datum->formatDatum($termin->von, "m.d.Y")." ".$p->t('pruefung/emailLektorVon')." ".$datum->formatDatum($termin->von,"h:i")." ".$p->t('pruefung/emailLektorUhrBis')." ".$datum->formatDatum($termin->bis,"h:i")." ".$p->t('pruefung/emailLektorUhrAngemeldet'); + $mail->setHTMLContent($html); + $mail->send(); + + $data['result'] = $p->t('pruefung/anmeldungErfolgreich'); + $data['error']='false'; + $data['errormsg']=''; + } + else + { + $data['error']='true'; + $data['errormsg']=$anmeldung->errormsg; + } } else { diff --git a/cis/private/lehre/pruefung/pruefungsanmeldung.php b/cis/private/lehre/pruefung/pruefungsanmeldung.php index 900e25a0a..5551adb70 100755 --- a/cis/private/lehre/pruefung/pruefungsanmeldung.php +++ b/cis/private/lehre/pruefung/pruefungsanmeldung.php @@ -230,6 +230,7 @@ $studiensemester->getAll(); +

    t('pruefung/lvVonStudiengang'); ?>

    @@ -246,6 +247,7 @@ $studiensemester->getAll();
    +

    t('pruefung/lvAlle'); ?>

    diff --git a/cis/private/profile/studienplan.php b/cis/private/profile/studienplan.php index 9b7fb170e..5ae32db11 100755 --- a/cis/private/profile/studienplan.php +++ b/cis/private/profile/studienplan.php @@ -43,6 +43,7 @@ require_once('../../../include/benutzergruppe.class.php'); require_once('../../../include/konto.class.php'); require_once('../../../include/lvinfo.class.php'); require_once('../../../include/addon.class.php'); +require_once('../../../include/anrechnung.class.php'); $uid = get_uid(); @@ -305,7 +306,9 @@ if($zeugnisnote->getZeugnisnoten('',$uid,'')) foreach($zeugnisnote->result as $row_note) { if($row_note->note!='') + { $noten_arr[$row_note->lehrveranstaltung_id][$row_note->studiensemester_kurzbz]=$row_note->note; + } } } @@ -364,7 +367,7 @@ drawTree($tree,0); function drawTree($tree, $depth) { global $uid, $stsem_arr, $noten_arr, $lvangebot_arr; - global $datum_obj, $db, $lv_arr, $p, $note_pruef_arr; + global $datum_obj, $db, $lv_arr, $p, $note_pruef_arr, $student; foreach($tree as $row_tree) { @@ -448,7 +451,7 @@ function drawTree($tree, $depth) $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? @@ -471,23 +474,40 @@ function drawTree($tree, $depth) $found = false; $i = 0; while(!$found && $i < count($kompatibleLVs)) - { - for($i; $i < (count($kompatibleLVs)); $i++) + { + foreach($kompatibleLVs as $komp) { - if(isset($noten_arr[$kompatibleLVs[$i]])) + + $anrechnung = new anrechnung(); + $anrechnung->getAnrechnungPrestudent($student->prestudent_id, $row_tree->lehrveranstaltung_id, $komp); + + if(count($anrechnung->result) == 1) { - $positiv=false; - foreach($noten_arr[$kompatibleLVs[$i]] as $note) + $lv = $anrechnung->result[0]->lehrveranstaltung_id_kompatibel; + if(isset($noten_arr[$lv])) { - if($note_pruef_arr[$note]->positiv) - $positiv=true; + $positiv=false; + foreach($noten_arr[$lv] as $note) + { + if($note_pruef_arr[$note]->positiv) + $positiv=true; + } + + $found = true; + } + else + { + /* wenn zu mehreren kompatiblen lvs eine Anrechnung existiert + * darf found nicht auf false gesetzt werden wenn es zuvor bereits auf true gesetzt wurde + */ + if(!$found) + $found = false; } - - $found = true; } + $i++; } - $i++; } + if($found) { if($positiv) @@ -544,22 +564,34 @@ function drawTree($tree, $depth) elseif(count($kompatibleLVs) > 0) { $found = false; - foreach($kompatibleLVs as $komp) - { - if(isset($noten_arr[$komp][$stsem])) - { - $found = true; - if($note_pruef_arr[$noten_arr[$komp][$stsem]]->positiv) - $tdinhalt .= ''.$note_pruef_arr[$noten_arr[$komp][$stsem]]->anmerkung.''; - else - $tdinhalt .= ''.$note_pruef_arr[$noten_arr[$komp][$stsem]]->anmerkung.''; - } - } - - if(!$found) - { - $tdinhalt.= '-'; - } + $i = 0; + while(!$found && $i < count($kompatibleLVs)) + { + foreach($kompatibleLVs as $komp) + { + $anrechnung = new anrechnung(); + $anrechnung->getAnrechnungPrestudent($student->prestudent_id, $row_tree->lehrveranstaltung_id, $komp); + + if(count($anrechnung->result) == 1) + { + $lv = $anrechnung->result[0]->lehrveranstaltung_id_kompatibel; + if(isset($noten_arr[$lv][$stsem])) + { + $found = true; + if($note_pruef_arr[$noten_arr[$lv][$stsem]]->positiv) + $tdinhalt .= ''.$note_pruef_arr[$noten_arr[$lv][$stsem]]->anmerkung.''; + else + $tdinhalt .= ''.$note_pruef_arr[$noten_arr[$lv][$stsem]]->anmerkung.''; + } + } + $i++; + } + + if(!$found) + { + $tdinhalt.= '-'; + } + } } else { diff --git a/config/cis.config-default.inc.php b/config/cis.config-default.inc.php index 0ec57fc77..84d4613fe 100644 --- a/config/cis.config-default.inc.php +++ b/config/cis.config-default.inc.php @@ -215,6 +215,9 @@ define('CIS_PRUEFUNGSANMELDUNG_USER','p.pruefungsanmeldung'); // Soll für die Prüfungsanmeldungen eine Anrechnung erstellt werden define('CIS_PRUEFUNGSANMELDUNG_ANRECHNUNG', true); +//Gibt an, ob der Bereich zur Anmeldung zu Pruefungen des gesamten Studiengangs angezeigt werden soll +define('CIS_PRUEFUNGSANMELDUNG_LEHRVERANSTALTUNGEN_AUS_STUDIENGANG', true); + //Gibt an, wie viele Semester aus der Vergangenheit unter Meine LV angezeigt werden define('CIS_MEINELV_ANZAHL_SEMESTER_PAST', 3); diff --git a/config/global.config-default.inc.php b/config/global.config-default.inc.php index 01925ac08..75a31a31c 100644 --- a/config/global.config-default.inc.php +++ b/config/global.config-default.inc.php @@ -59,9 +59,20 @@ define('CIS_GESAMTNOTE_UEBERSCHREIBEN',true); // Gewichtung der Lehreinheiten bei Noteneintragung true|false define('CIS_GESAMTNOTE_GEWICHTUNG', true); +// Bei Gesamtnote eine zusaetzliche Spalte fuer den 2. Termin anzeigen +define('CIS_GESAMTNOTE_PRUEFUNG_TERMIN2',true); + // Bei Gesamtnote eine zusaetzliche Spalte fuer den 3. Termin anzeigen define('CIS_GESAMTNOTE_PRUEFUNG_TERMIN3',true); +// Bei Gesamtnote eine zusaetzliche Spalte fuer die kommissionelle Pruefung anlegen +define('CIS_GESAMTNOTE_PRUEFUNG_KOMMPRUEF', true); + +// Bei Gesamtnote eine zusaetzliche Spalte fuer die kommissionelle Pruefung anlegen +define('CIS_GESAMTNOTE_PRUEFUNG_MOODLE_NOTE', true); + +// Bei Gesamtnote die Spalte fuer die Quelle der Noten anzeigen (Moodle oder LE) +define('CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE', true); // Gibt an ob im FAS bei den Lehrveranstaltungsnoten ein zusaetzliches Formular angezeigt wird um // Vertraege fuer Pruefungshonorare anzulegen diff --git a/rdf/lehrveranstaltungszeugnis_ktu.rdf.php b/rdf/lehrveranstaltungszeugnis_ktu.rdf.php index b8f4020f9..e632a92e6 100755 --- a/rdf/lehrveranstaltungszeugnis_ktu.rdf.php +++ b/rdf/lehrveranstaltungszeugnis_ktu.rdf.php @@ -315,7 +315,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml") $xml .= " ".$lehrform_kurzbz.""; $xml .= " ".$lehrform_bezeichnung.""; $xml .= " ".($sws==0?'':number_format(sprintf('%.1F',$sws),1)).""; - $xml .= " ".number_format($ects,1).""; + $xml .= " ".$leiter_titel." ".$leiter_vorname." ".$leiter_nachname.($leiter_titelpost!=''?', '.$leiter_titelpost:'').""; $xml .= " "; $xml .= " "; @@ -327,6 +327,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml") } $xml .= " "; + $anrechnung = new anrechnung(); $anrechnung->getAnrechnungPrestudent($student->prestudent_id, null, $lehrveranstaltung_id); @@ -339,6 +340,17 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml") $xml .= $anrechnung->result[0]->lehrveranstaltung_bez; } $xml .= ""; + + if($lehrveranstaltung_id_kompatibel != "") + { + $lv = new lehrveranstaltung($lehrveranstaltung_id_kompatibel); + if(($lv->ects !== $ects) && ($lv->ects != "") && ($lv->ects != null)) + { + $ects = $lv->ects; + } + } + + $xml .= " ".number_format($ects,1).""; $lehrveranstaltung->loadLehrveranstaltungStudienplan($studienplan_id); diff --git a/rdf/zeugnis.rdf.php b/rdf/zeugnis.rdf.php index 805b29aa0..efc8a36d8 100644 --- a/rdf/zeugnis.rdf.php +++ b/rdf/zeugnis.rdf.php @@ -33,6 +33,7 @@ require_once('../include/datum.class.php'); require_once('../include/note.class.php'); require_once('../include/studiengang.class.php'); require_once('../include/mitarbeiter.class.php'); +require_once('../include/anrechnung.class.php'); $datum = new datum(); $db = new basis_db(); @@ -241,6 +242,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml") $obj->getZeugnisnoten($lehrveranstaltung_id=null, $uid_arr[$i], $studiensemester_kurzbz); $ects_gesamt = 0; + $prestudent_id = $row->prestudent_id; foreach ($obj->result as $row) { if($row->zeugnis) @@ -368,7 +370,20 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml") $xml .= " ".$note2.""; $xml .= " ".($row->semesterstunden==0?'':number_format(sprintf('%.1F',$row->semesterstunden/$wochen),1)).""; $ectspunkte=''; - + + + $anrechnung = new anrechnung(); + $anrechnung->getAnrechnungPrestudent($prestudent_id, null, $row->lehrveranstaltung_id); + + if($anrechnung->result != null) + { + $lv = new lehrveranstaltung($anrechnung->result[0]->lehrveranstaltung_id); + if(($lv->ects !== $row->ects) && ($lv->ects != "") && ($lv->ects != null)) + { + $row->ects = $lv->ects; + } + } + if($row->ects==0 || $row->ects=='') $ectspunkte=''; else @@ -379,7 +394,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml") else $ectspunkte=number_format($row->ects,2); } - $ects_gesamt+=$ectspunkte; + $ects_gesamt+=$ectspunkte; $xml .= " ".$ectspunkte.""; $xml .= " ".$row->lv_lehrform_kurzbz.""; From 8d10a9a6540dfe526abe7ab00e7697800e2447d2 Mon Sep 17 00:00:00 2001 From: oesi Date: Wed, 8 Jun 2016 18:14:30 +0200 Subject: [PATCH 051/114] =?UTF-8?q?Fehlerbehandlung=20bei=20Dokumentenexpo?= =?UTF-8?q?rt=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- include/dokument_export.class.php | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/include/dokument_export.class.php b/include/dokument_export.class.php index f60f94c3e..89ccfea65 100644 --- a/include/dokument_export.class.php +++ b/include/dokument_export.class.php @@ -291,6 +291,9 @@ class dokument_export if($download) { + if(headers_sent()) + exit('Header wurden bereits gesendet -> Abbruch'); + switch($this->outputformat) { case 'pdf': @@ -310,6 +313,8 @@ class dokument_export header('Content-Disposition: attachment; filename="'.$this->filename.'.odt"'); header('Content-Length: '.$fsize); break; + default: + exit('Outputformat is not defined'); } while (!feof($handle)) @@ -389,5 +394,11 @@ class dokument_export } return $_xml_data->asXML(); } + + public function getXML() + { + $this->xml_data->formatOutput=true; + return $this->xml_data->saveXML(); + } } ?> From 6089be78f767341b29af615a6f17169e0915ca8a Mon Sep 17 00:00:00 2001 From: oesi Date: Thu, 9 Jun 2016 09:53:00 +0200 Subject: [PATCH 052/114] Anmerkung/Prio wird bei Aliqoute Reduktion mit angezeigt --- include/prestudent.class.php | 8 ++++++-- vilesci/personen/aliquote_reduktion.php | 4 ++++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/include/prestudent.class.php b/include/prestudent.class.php index 17f84fd32..0656aa110 100755 --- a/include/prestudent.class.php +++ b/include/prestudent.class.php @@ -1761,7 +1761,9 @@ class prestudent extends person if($stg_obj->typ=='m') { - $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 + $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, + (Select anmerkung from public.tbl_prestudentstatus where prestudent_id=tbl_prestudent.prestudent_id AND studiensemester_kurzbz=". $this->db_add_param($studiensemester_kurzbz)." + AND status_kurzbz='Bewerber') as anmerkung FROM public.tbl_prestudent JOIN public.tbl_person USING(person_id) @@ -1787,7 +1789,9 @@ class prestudent extends person } else { - $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 + $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, + (Select anmerkung from public.tbl_prestudentstatus where prestudent_id=tbl_prestudent.prestudent_id AND studiensemester_kurzbz=". $this->db_add_param($studiensemester_kurzbz)." + AND status_kurzbz='Bewerber') as anmerkung FROM public.tbl_prestudent JOIN public.tbl_person USING(person_id) diff --git a/vilesci/personen/aliquote_reduktion.php b/vilesci/personen/aliquote_reduktion.php index be9094b7d..6cc58cce1 100644 --- a/vilesci/personen/aliquote_reduktion.php +++ b/vilesci/personen/aliquote_reduktion.php @@ -403,6 +403,7 @@ + @@ -418,6 +419,7 @@ + + @@ -455,6 +458,7 @@ + + + @@ -462,6 +464,8 @@ + + @@ -514,6 +518,8 @@ + + @@ -529,6 +535,8 @@ + + From 673e7a2a2fb514ef947ced28cb1cef839d4ccb98 Mon Sep 17 00:00:00 2001 From: oesi Date: Fri, 24 Jun 2016 17:15:13 +0200 Subject: [PATCH 067/114] Berechnung korrigiert damit alle Bewerber einberechnet werden und nicht nur die noch nicht aufgenommenen --- vilesci/personen/aliquote_reduktion.php | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/vilesci/personen/aliquote_reduktion.php b/vilesci/personen/aliquote_reduktion.php index 990cd428e..ef9499a63 100644 --- a/vilesci/personen/aliquote_reduktion.php +++ b/vilesci/personen/aliquote_reduktion.php @@ -241,17 +241,17 @@ var neededStudentsCount = aqr.selectedStudienplatz.apz - aqr.getAcceptedCount(); var perZGV = aqr.studenten.length; var zgvElems = []; - var allApplicants = []; + var allCountedStudents = []; aqr.studenten.forEach(function(j) { - if(j.applicant) - allApplicants.push(j); + if((j.applicant || j.selected)) + allCountedStudents.push(j); }); var applicantCount = aqr.selectedStudienplatz.apz; - if(applicantCount > allApplicants.length) - applicantCount = allApplicants.length; + if(applicantCount > allCountedStudents.length) + applicantCount = allCountedStudents.length; zgvs.forEach(function(i) @@ -259,12 +259,12 @@ var applicantsFromZGV = []; aqr.studenten.forEach(function(j) { - if(j.applicant && j.bezeichnung === i) + if((j.applicant || j.selected) && j.bezeichnung === i) applicantsFromZGV.push(j); }); // calculate the aliquote reduction for every ZGV - var percent = applicantsFromZGV.length / allApplicants.length * 100; + var percent = applicantsFromZGV.length / allCountedStudents.length * 100; var neededFromZGV = (applicantCount / 100 * percent) - aqr.getAcceptedCount(i); if(neededFromZGV < 0) From fbf33e708ea98b35dff9403055703269fdb386ed Mon Sep 17 00:00:00 2001 From: oesi Date: Mon, 27 Jun 2016 09:31:01 +0200 Subject: [PATCH 068/114] Fixed Typo --- vilesci/personen/aliquote_reduktion.json.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/vilesci/personen/aliquote_reduktion.json.php b/vilesci/personen/aliquote_reduktion.json.php index 891f4eabc..7cadce97d 100644 --- a/vilesci/personen/aliquote_reduktion.json.php +++ b/vilesci/personen/aliquote_reduktion.json.php @@ -343,7 +343,7 @@ function getAllStudentenFromStudienplanAndStudsem($studienplan_id, $studiensemes if($stg_obj->typ=='m') { $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, - (Select anmerkung from public.tbl_prestudentstatus where prestudent_id=tbl_prestudent.prestudent_id AND studiensemester_kurzbz=". $this->db_add_param($studiensemester_kurzbz)." + (Select anmerkung from public.tbl_prestudentstatus where prestudent_id=tbl_prestudent.prestudent_id AND studiensemester_kurzbz=". $db->db_add_param($studiensemester_kurzbz)." AND status_kurzbz='Bewerber') as anmerkung, rt_punkte1, rt_punkte2, (SELECT kontakt FROM public.tbl_kontakt where kontakttyp='email' AND zustellung AND person_id=tbl_person.person_id limit 1) as email_privat FROM @@ -365,7 +365,7 @@ function getAllStudentenFromStudienplanAndStudsem($studienplan_id, $studiensemes AND ( studienplan_id=". $db->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).") || '%') + (anmerkung like '%' || (SELECT orgform_kurzbz || '_' || sprache FROM lehre.tbl_studienplan WHERE studienplan_id=". $db->db_add_param($studienplan_id).") || '%') ) );"; } From 4d77c603d00e78733ee24aa273e6261fb59ef969 Mon Sep 17 00:00:00 2001 From: kindlm Date: Mon, 27 Jun 2016 11:29:10 +0200 Subject: [PATCH 069/114] =?UTF-8?q?Letzte=20Rolle=20nur=20durch=20admin=20?= =?UTF-8?q?l=C3=B6schbar?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- content/student/studentDBDML.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/student/studentDBDML.php b/content/student/studentDBDML.php index 0578f7eb7..667cb39c7 100644 --- a/content/student/studentDBDML.php +++ b/content/student/studentDBDML.php @@ -932,10 +932,10 @@ if(!$error) { if($row = $db->db_fetch_object($result)) { - if($row->anzahl<=1) + if($row->anzahl<=1 && !$rechte->isBerechtigt('admin', null, 'suid')) { $return = false; - $errormsg = 'Die letzte Rolle darf nicht geloescht werden'; + $errormsg = 'Die letzte Rolle kann nur durch den Administrator geloescht werden'; $error = true; } } From c773cd3ddc0acc0a860615d871f363692338b762 Mon Sep 17 00:00:00 2001 From: kindlm Date: Mon, 27 Jun 2016 11:30:29 +0200 Subject: [PATCH 070/114] Korrektur Query DeleteFirmaOrganisationseinheit --- include/firma.class.php | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/include/firma.class.php b/include/firma.class.php index 180bd9f3c..4eae7d012 100644 --- a/include/firma.class.php +++ b/include/firma.class.php @@ -747,11 +747,7 @@ class firma extends basis_db $this->errormsg = 'Organisationseinheit/Firma_id ist ungueltig'; return false; } - $qry = "delete from public.tbl_firma_organisationseinheit WHERE firma_organisationseinheit_id>0"; - if ($firma_organisationseinheit_id) - $qry.=" and firma_organisationseinheit_id=".$this->db_add_param($firma_organisationseinheit_id, FHC_INTEGER); - - $qry.=';'; + $qry = "DELETE FROM public.tbl_firma_organisationseinheit WHERE firma_organisationseinheit_id=".$this->db_add_param($firma_organisationseinheit_id, FHC_INTEGER); if($this->db_query($qry)) return true; From 5071605ce2774262440b137c5f662e66317f83ef Mon Sep 17 00:00:00 2001 From: kindlm Date: Mon, 27 Jun 2016 11:31:12 +0200 Subject: [PATCH 071/114] =?UTF-8?q?Pr=C3=BCfungsprotokoll=20Master-Lehrg?= =?UTF-8?q?=C3=A4nge?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- system/xsl/PrProtMA_Lehrgaenge.xsl | 624 +++++++++++++++++++++++++++++ 1 file changed, 624 insertions(+) create mode 100644 system/xsl/PrProtMA_Lehrgaenge.xsl diff --git a/system/xsl/PrProtMA_Lehrgaenge.xsl b/system/xsl/PrProtMA_Lehrgaenge.xsl new file mode 100644 index 000000000..09abecdcd --- /dev/null +++ b/system/xsl/PrProtMA_Lehrgaenge.xsl @@ -0,0 +1,624 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Protokoll kommissionelle Masterprüfung + abgehalten am Master-Lehrgang , LgKz + + + Personenkennzeichen: + + + + + + + + + + + + + + Prüfungssenat + + + + + + + + + + + + + Vorsitzende/r + + + + + + + + + + + + + + + 1. Prüfer/in + + + + + + + + + + + + + + + 2. Prüfer/in + + + + + + + + + + + + + + + Prüfungsdatum + + + + + + + Prüfungsbeginn + + + + + + + Prüfungsende + + + + + + + + + + + Prüfungsantritt + + + + + + Erstantritt + + + + / 1. Wiederholung + + + + / 2. Wiederholung + + + + + + + + + + + + + + Thema und Beurteilung der Masterarbeit + + + + + + + + + + + + Note (Information): + + + + + + Prüfungsgegenstand + + + + Prüfungsgespräch über Masterarbeit und Querverbindungen zu Fächern des Studienplans sowie Prüfungsgespräch über Stoffgebiet + + + + + + + + + + + Prüfungsteil/e in Englisch (Optional –entsprechend der Vorgabe des Studiengangs): + + + + Präsentation der Masterarbeit + Prüfungsgespräch über die Masterarbeit und Querverbindungen + zu Fächern des Studienplans + Prüfungsgespräch über sonstige studienplanrelevante Inhalte + + + + + + + + + + + Notizen zur Präsentation der Masterarbeit + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Personenkennzeichen: + + + + + + + + + + + + + + Fragen zur Eröffnung des Prüfungsgesprächs + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Beurteilung des Prüfungsgesprächs nach + fachlicher Korrektheit, Vollständigkeit, Strukturiertheit und sprachlicher Qualität. + + + + + + + (+++) mit ausgezeichnetem Erfolg bestanden + + + (++) mit gutem Erfolg bestanden + + + (+) bestanden + + + (-) nicht bestanden + + + + + + + + + + + Gründe für negative Beurteilung ODER allfällige Anmerkungen bei positiver Beurteilung + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Allfällige besondere Vorkommnisse + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + _____________________________________________________________________ + Unterschrift des/der Vorsitzenden1. Prüfer/in2. Prüfer/in + + \ No newline at end of file From 4c21acc5f21c7cb16acb051884a847e97478c358 Mon Sep 17 00:00:00 2001 From: kindlm Date: Mon, 27 Jun 2016 11:33:17 +0200 Subject: [PATCH 072/114] =?UTF-8?q?Firma=20DeleteOrganisationseinheit;=20N?= =?UTF-8?q?ur=20Eigene=20l=C3=B6schen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 1 + include/wochenplan.class.php | 2 +- vilesci/stammdaten/firma_details.php | 7 +++++-- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 27f75aa38..ad9601ddb 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -22,6 +22,7 @@ - **[CORE]** Removed NOT NULL constraint on 'verfasser\_uid' from public.tbl\_notiz - **[CIS]** Studienplanansicht: Wenn eine LV nicht benotet ist, aber eine kompatible LV mit vorhandener Anrechnung benotet ist wird diese Note angezeigt. - **[FAS]** Die RDF-Schnittstelle für das Zeugnis prüft bei Anrechnungen ob, die ECTS-Punkte übereinstimmen und wählt bei ungleichen Werten jene der angerechneten LV. +- **[FAS]** Der Ausbildungsvertrag kann nun jederzeit erstellt werden, auch wenn eine Person noch kein Student ist. Wenn in der Vorlage des Ausbildungsvertrags ein Attribut des Studenten-Datensatzen (zB Personenkennzeichen) abgefragt wird und eine Person noch nicht Student ist, kann dieses nicht angedruckt werden und sollte aus der Vorlage entfernt werden. ### 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. diff --git a/include/wochenplan.class.php b/include/wochenplan.class.php index 9135a503a..a76fdaaf4 100644 --- a/include/wochenplan.class.php +++ b/include/wochenplan.class.php @@ -1616,7 +1616,7 @@ class wochenplan extends basis_db { if($anzahl<=$max_kollision) { - echo ' - + @@ -495,7 +496,7 @@ - + From 81ca197020c6ec6fb9c46894fb70659736b13d22 Mon Sep 17 00:00:00 2001 From: Andreas Moik Date: Thu, 30 Jun 2016 16:15:05 +0200 Subject: [PATCH 077/114] bugfix --- vilesci/personen/aliquote_reduktion.php | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/vilesci/personen/aliquote_reduktion.php b/vilesci/personen/aliquote_reduktion.php index b06069349..8aa9aa2a4 100644 --- a/vilesci/personen/aliquote_reduktion.php +++ b/vilesci/personen/aliquote_reduktion.php @@ -245,7 +245,7 @@ aqr.studenten.forEach(function(j) { - if((j.applicant || j.selected)) + if(j.rt_gesamtpunkte !== null && j.rt_gesamtpunkte > 0) allCountedStudents.push(j); }); @@ -253,33 +253,31 @@ if(applicantCount > allCountedStudents.length) applicantCount = allCountedStudents.length; - zgvs.forEach(function(i) { var applicantsFromZGV = []; aqr.studenten.forEach(function(j) { - if((j.applicant || j.selected) && j.bezeichnung === i) + if((j.rt_gesamtpunkte !== null && j.rt_gesamtpunkte > 0) && j.bezeichnung === i) applicantsFromZGV.push(j); }); // calculate the aliquote reduction for every ZGV var percent = applicantsFromZGV.length / allCountedStudents.length * 100; - var neededFromZGV = (applicantCount / 100 * percent); + var neededFromZGV = (applicantCount / 100 * percent) - aqr.getAcceptedCount(i); if(neededFromZGV < 0) neededFromZGV = 0; - zgvElems.push({name:i, needed:neededFromZGV, percent:percent, accepted: aqr.getAcceptedCount(i), overallNeeded: (applicantCount / 100 * percent) + aqr.getAcceptedCount(i)}); + zgvElems.push({name:i, needed:neededFromZGV, percent:percent, accepted: aqr.getAcceptedCount(i), overallNeeded: neededFromZGV + aqr.getAcceptedCount(i)}); }); - aqr.zgvElems = JSON.parse(JSON.stringify(zgvElems)); // calculate the already distributed students var residual = 0; zgvElems.forEach(function(i) { - residual += i.needed; + residual += parseInt(i.needed); }); // calculate the difference from needed to already distributed @@ -292,11 +290,13 @@ { if(resDiff > 0) { + i.overallNeeded ++; i.needed ++; resDiff --; } }); } + aqr.zgvElems = JSON.parse(JSON.stringify(zgvElems)); aqr.recursiveChoose(neededStudentsCount, zgvElems); } } From c96b6de669c453cbac5345aa5dbd19546524e210 Mon Sep 17 00:00:00 2001 From: oesi Date: Fri, 1 Jul 2016 08:57:10 +0200 Subject: [PATCH 078/114] Fehler behoben wodurch der letzte Tag des Studiensemesters nicht korrekt dem Studiensemester zugeordnet wurde --- include/functions.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/functions.inc.php b/include/functions.inc.php index fc465035b..fe9d3ee92 100755 --- a/include/functions.inc.php +++ b/include/functions.inc.php @@ -366,7 +366,7 @@ function getStudiensemesterFromDatum($datum, $naechstes=true) $qry = "SELECT studiensemester_kurzbz FROM public.tbl_studiensemester WHERE"; if($naechstes) - $qry.= " ende>".$db->db_add_param($datum)." ORDER BY ende ASC "; + $qry.= " ende>=".$db->db_add_param($datum)." ORDER BY ende ASC "; else $qry.= " start<".$db->db_add_param($datum)." ORDER BY ende DESC "; From be79ca299ca38f3affd1793de1c29dde0af340ad Mon Sep 17 00:00:00 2001 From: oesi Date: Mon, 4 Jul 2016 09:19:56 +0200 Subject: [PATCH 079/114] =?UTF-8?q?Breite=20der=20DropDowns=20auf=20100%?= =?UTF-8?q?=20ge=C3=A4ndert?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...addon_lehrveranstaltungen_studienplan.inc.php | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/cms/menu/menu_addon_lehrveranstaltungen_studienplan.inc.php b/cms/menu/menu_addon_lehrveranstaltungen_studienplan.inc.php index df4da04ea..a9d11ccfd 100644 --- a/cms/menu/menu_addon_lehrveranstaltungen_studienplan.inc.php +++ b/cms/menu/menu_addon_lehrveranstaltungen_studienplan.inc.php @@ -131,7 +131,7 @@ class menu_addon_lehrveranstaltungen_studienplan extends menu_addon '; if(!defined('CIS_LVALISTE_NOTENEINGABE_ANZEIGEN') || CIS_LVALISTE_NOTENEINGABE_ANZEIGEN) echo ''; + + + if($lvinfo) + echo ''; + echo ' @@ -192,6 +204,10 @@ require_once('../../../include/lvangebot.class.php'); echo ''; if(!defined('CIS_LVALISTE_NOTENEINGABE_ANZEIGEN') || CIS_LVALISTE_NOTENEINGABE_ANZEIGEN) echo ''; + + if($lvinfo) + echo ''; + echo ''; echo ''; if ($row->lehrfach_bez!=$row->lv_bezeichnung) @@ -228,6 +244,11 @@ require_once('../../../include/lvangebot.class.php'); echo ''; echo ''; } + else + { + echo ' + '; + } //echo ''; Lektoren sollen die Anmerkung dzt. nicht sehen, da nur für intern gedacht echo ''; @@ -238,8 +259,12 @@ require_once('../../../include/lvangebot.class.php'); echo ''; if(!defined('CIS_LVALISTE_NOTENEINGABE_ANZEIGEN') || CIS_LVALISTE_NOTENEINGABE_ANZEIGEN) echo ''; + if($lvinfo) + echo ''; + echo ''; echo ''; + echo ''; echo ''; echo ''; diff --git a/locale/de-AT/lvaliste.php b/locale/de-AT/lvaliste.php index 46b7e3750..aa4087528 100755 --- a/locale/de-AT/lvaliste.php +++ b/locale/de-AT/lvaliste.php @@ -30,3 +30,4 @@ $this->phrasen['lvaliste/koordination']='Koordination'; $this->phrasen['lvaliste/gesamtnote']='Noten eintragen'; $this->phrasen['lvaliste/anzahl']='Anzahl'; $this->phrasen['lvaliste/summe']='Summe'; +$this->phrasen['lvaliste/lvinfo']='LV-Info'; From 6ba0787cb7cd5a9cf880cd09c882c96a88f6f16a Mon Sep 17 00:00:00 2001 From: kindlm Date: Fri, 8 Jul 2016 17:41:19 +0200 Subject: [PATCH 082/114] =?UTF-8?q?Neues=20Logo;=20user=20als=20Parameter?= =?UTF-8?q?=20f=C3=BCr=20admins?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- include/tw/abgabe_lektor_benotung.php | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/include/tw/abgabe_lektor_benotung.php b/include/tw/abgabe_lektor_benotung.php index 3eb00949e..5972d3a3b 100644 --- a/include/tw/abgabe_lektor_benotung.php +++ b/include/tw/abgabe_lektor_benotung.php @@ -33,6 +33,7 @@ require_once('../../include/datum.class.php'); require_once('../../include/person.class.php'); require_once('../../include/benutzer.class.php'); require_once('../../include/mitarbeiter.class.php'); +require_once('../../include/benutzerberechtigung.class.php'); if (!$db = new basis_db()) die('Fehler beim Herstellen der Datenbankverbindung'); @@ -44,6 +45,20 @@ require_once('../../include/pdf/fpdf.php'); require_once('../../include/pdf.inc.php'); $getuid=get_uid(); + +$rechte = new benutzerberechtigung(); +$rechte->getBerechtigungen($getuid); + +if (isset($_GET['user'])) +{ + if ($rechte->isBerechtigt('admin',null,'suid')) + $getuid = $_GET['user']; + else + $getuid=get_uid(); +} +else + $getuid=get_uid(); + $datum_obj = new datum(); $htmlstr = ""; $qualitaet=''; @@ -153,7 +168,7 @@ else $pdf->SetXY(30,30); //Logo - $pdf->Image("../../skin/images/logo.jpg","400","25","160","54","jpg",""); + $pdf->Image("../../skin/styles/tw/logo.jpg","400","25","150","78","jpg",""); $pdf->SetFont('Arial','',12); $pdf->SetFillColor(190,190,190); From 38ed9a6e437fd1882db73ca2158de2a2d53162cd Mon Sep 17 00:00:00 2001 From: kindlm Date: Fri, 8 Jul 2016 17:47:35 +0200 Subject: [PATCH 083/114] Ausbildungsvertrag D und E aktualisiert MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fehlende Attribute im RDF ergänzt --- rdf/ausbildungsvertrag.xml.php | 45 +- system/xsl/AusbVerEng_0.xsl | 464 ++++++----- system/xsl/Ausbildungsver_0.xsl | 1389 ++++++++++++++++--------------- 3 files changed, 991 insertions(+), 907 deletions(-) diff --git a/rdf/ausbildungsvertrag.xml.php b/rdf/ausbildungsvertrag.xml.php index db6566a76..77dbd5fdd 100755 --- a/rdf/ausbildungsvertrag.xml.php +++ b/rdf/ausbildungsvertrag.xml.php @@ -307,7 +307,34 @@ foreach($prestudent_arr as $prest_id) echo "\t\t".$studiengang->sprache.""; echo "\t\t".date('Y').""; - + + $prestudent_orgform = new prestudent(); + $prestudent_orgform->getLastStatus($prest_id, null, null); + + if($prestudent_orgform->orgform_kurzbz!='') + $orgform = $prestudent_orgform->orgform_kurzbz; + else + $orgform = $studiengang->orgform_kurzbz; + + echo "\t\t".$orgform."\n"; + + // check ob Quereinsteiger + $ausbildungssemester = ($prestudent_orgform->ausbildungssemester!='')?$prestudent_orgform->ausbildungssemester:'1'; + echo "\t\t".$ausbildungssemester.""; + + $prestudent = new prestudent(); + + $studiensemester_beginn = new studiensemester(); + $studienbeginn = ($prestudent->getFirstStatus($prest_id, 'Student'))?$prestudent->studiensemester_kurzbz:''; + $studiensemester_beginn->load($studienbeginn); + + echo "\t\t".$studiensemester_beginn->bezeichnung.""; + + $studiensemester_endedatum = new studiensemester(); + $studiensemester_endedatum->load($studiensemester_endedatum->getaktorNext(1)); + + echo "\t\t".date('d.m.Y',strtotime($studiensemester_endedatum->ende)).""; + switch($studiengang->typ) { case 'b': @@ -332,6 +359,10 @@ foreach($prestudent_arr as $prest_id) echo "\t\t".$studiengang->max_semester."\n"; echo "\t\t".($studiengang->max_semester/2)."\n"; + //Wenn Quereinsteiger stimmt studiengang_maxsemester nicht mit der tatsaechlichen Ausbildungsdauer ueberein + $student_maxsemester = ($studiengang->max_semester-$ausbildungssemester)+1; + echo "\t\t".$student_maxsemester."\n"; + echo "\t\t".($student_maxsemester/2)."\n"; //Bis die Akadgrad-Tabelle an die Studienordnung angepasst ist, wird der Akadgrad hier ermittelt @@ -370,18 +401,6 @@ foreach($prestudent_arr as $prest_id) break; } } - $prestudent_orgform = new prestudent(); - $prestudent_orgform->getLastStatus($prest_id, null, null); - - if($prestudent_orgform->orgform_kurzbz!='') - $orgform = $prestudent_orgform->orgform_kurzbz; - else - $orgform = $studiengang->orgform_kurzbz; - - echo "\t\t".$orgform."\n"; - - $ausbildungssemester = ($prestudent_orgform->ausbildungssemester!='')?$prestudent_orgform->ausbildungssemester:'1'; - echo "\t\t".$ausbildungssemester.""; } } echo "\t\n"; diff --git a/system/xsl/AusbVerEng_0.xsl b/system/xsl/AusbVerEng_0.xsl index 393fbe26d..da35c62d9 100644 --- a/system/xsl/AusbVerEng_0.xsl +++ b/system/xsl/AusbVerEng_0.xsl @@ -50,7 +50,13 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + + + + + + + @@ -501,6 +507,18 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn + + + + + + + + + + + + @@ -759,6 +777,13 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn Ausbildungsvertrag + + + Keine Sozialversicherungsnummer oder Ersatzkennzeichen vorhanden + Kein Geburtsdatum vorhanden + Kein akademischer Grad vorhanden + Keine Ausbildungsdauer vorhanden + @@ -813,7 +838,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - Gemäß § 3 Absatz 1 des Bildungsdokumentationsgesetzes (BGBl. I Nr. 12/2002 idgF) und der Bildungsdokumentationsverordnung-Fachhochschulen (BGBl. II Nr. 29/2004 idgF) hat der Erhalter die Sozialversicherungsnummer zu erfassen und gemäß § 7 Absatz 2 im Wege der Agentur für Qualitätssicherung und Akkreditierung Austria an das zuständige Bundesministerium und die Bundesanstalt Statistik Österreich zu übermitteln. + Gemäß § 3 Absatz 1 des Bildungsdokumentationsgesetzes und der Bildungsdokumentationsverordnung-Fachhochschulen hat der Erhalter die Sozialversicherungsnummer zu erfassen und gemäß § 7 Absatz 2 im Wege der Agentur für Qualitätssicherung und Akkreditierung Austria an das zuständige Bundesministerium und die Bundesanstalt Statistik Österreich zu übermitteln. @@ -837,7 +862,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - Pursuant to § 3 section 1 of the Education Documentation Act (Federal Law Gazette I No. 12/2002 as amended) and the Education Documentation Regulation for Universities of Applied Sciences (Federal Law Gazette II No. 29/2004 as amended), the operator shall record the social security number pursuant to § 7 paragraph 2 and shall transfer it via the Agency for Quality Assurance and Accreditation Austria to the competent Ministry and Statistics Austria. + Pursuant to § 3 section 1 of the Education Documentation Act and the Education Documentation Regulation for Universities of Applied Sciences, the operator shall record the social security number pursuant to § 7 paragraph 2 and shall transfer it via the Agency for Quality Assurance and Accreditation Austria to the competent Ministry and Statistics Austria. @@ -848,9 +873,6 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn : - - Personenkennz. (Personal identifier): - @@ -911,7 +933,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn 1. Ausbildungsort - Studienort sind die Räumlichkeiten der FH Technikum Wien, 1200 Wien, Höchstädtplatz und 1210 Wien, Giefinggasse. Bei Bedarf kann der Erhalter einen anderen Studienort festlegen. + Studienort sind die Räumlichkeiten der FH Technikum Wien, 1200 Wien, Höchstädtplatz und 1210 Wien, Giefinggasse. Bei Bedarf kann der Erhalter einen anderen Studienort in Wien festlegen, außerhochschulische Aktivitäten (zB Exkursionen) können auch außerhalb von Wien stattfinden. 2. Vertragsgrundlage @@ -928,7 +950,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn Die Ausbildungsdauer beträgt Semester. - Nachgewiesene erworbene Kenntnisse können auf einzelne Lehrveranstaltungen angerechnet werden bzw. zum Erlass einer Lehrveranstaltung oder des Berufspraktikums führen. Hierzu bedarf es eines Antrages der Studentin bzw. des Studenten und der nachfolgenden Feststellung der inhaltlichen und umfänglichen Gleichwertigkeit durch die Studiengangsleitung. + Die Studentin bzw. der Student hat das Recht, eine Anerkennung nachgewiesener Kenntnisse beim Studiengang zu beantragen. Eine solche Anerkennung setzt voraus, dass die erworbenen Kenntnisse mit dem Inhalt und dem Umfang der Lehrveranstaltung bzw. eines Berufspraktikums gleichwertig sind und bewirkt die Anrechnung der entsprechenden Lehrveranstaltung oder des Berufspraktikums. @@ -938,7 +960,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - Places of training are the premises of the UAS Technikum Wien, 1200 Vienna, Höchstädt-platz and 1210 Vienna, Giefinggasse. If necessary, the operator may specify a different place of study. + Places of training are the premises of the UAS Technikum Wien, 1200 Vienna, Höchstädt-platz and 1210 Vienna, Giefinggasse. If necessary, the operator may specify a different place of study in Vienna. Non-university activities (e.g. excursions) may take place away from Vienna. @@ -960,7 +982,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn The training period lasts semesters. - Demonstration of knowledge acquired can be accredited to individual courses or lead to exemption from a course or internship. This requires an application by the student and the subsequent establishment by the Program Director of the content and extent of equivalence. + The student has the right to apply to the degree program for Recognition of Prior Learning (RPL). Such recognition requires that the knowledge previously acquired is equivalent in content and scope to that of the course or internship and means that the student will be exempted from the respective course or internship. @@ -969,7 +991,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - Die Ausbildung endet mit der positiven Absolvierung der das jeweilige Studium abschließenden kommissionellen Prüfung. Nach dem Abschluss der vorgeschriebenen Prüfungen wird der akademische Grad Bachelor/Master of Science in Engineering (BSc/MSc) durch das FH-Kollegium verliehen. + Die Ausbildung endet mit der positiven Absolvierung der das jeweilige Studium abschließenden kommissionellen Prüfung. Nach dem Abschluss der vorgeschriebenen Prüfungen wird der akademische Grad of Science in Engineering () durch das FH-Kollegium verliehen. 5. Rechte und Pflichten des Erhalters @@ -1007,7 +1029,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - Der Erhalter ist verpflichtet, all jene Voraussetzungen zu bieten, damit das Studium innerhalb der Ausbildungsdauer (Pkt. 3) erfolgreich abgeschlossen werden kann. + Der Erhalter verpflichtet sich zur ordnungsgemäßen Planung und Durchführung des Studienganges in der Regelstudiendauer. Der Erhalter ist verpflichtet, allfällige Änderungen des akkreditierten Studienganges zeitgerecht bekannt zu geben. @@ -1018,7 +1040,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - The training ends with the positive completion of the final examination before a committee for the respective course. After completion of the required examinations, the academic degree Bachelor / Master of Science in Engineering (BSc / MSc) is awarded by the University of Applied Sciences Council. + The training ends with the positive completion of the final examination before a committee for the respective course. After completion of the required examinations, the academic degree of Science in Engineering () is awarded by the University of Applied Sciences Council. @@ -1068,16 +1090,13 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - The operator undertakes to provide all the necessary conditions for the study to be successfully completed within the duration of training (point 3). + The operator undertakes to plan and hold the degree program in a proper manner within the expected time period. The operator is obliged to give adequate notice of any changes to the accredited degree program. - Die Voraussetzungen zur Erfüllung dieser Verpflichtung sind Gegenstand des akkreditierten Studienganges idgF, der Satzung der FH Technikum Wien idgF und der Hausordnung idgF. - - - Der Erhalter ist weiters verpflichtet, das Studium auf der Grundlage höchster Qualitätsansprüche hinsichtlich der Erreichung der Ausbildungsziele zu gestalten und allfällige Änderungen des akkreditierten Studienganges bekannt zu geben. + Der Erhalter verpflichtet sich, jedenfalls folgende Dokumente zur Verfügung zu stellen: Studierendenausweis, Diploma Supplement, Urkunde über die Verleihung des akademischen Grades, Studienerfolgsbestätigung, Inskriptionsbestätigung. Der Erhalter verpflichtet sich zur sorgfaltsgemäßen Verwendung der personenbezogenen Daten der Studierenden. Die Daten werden nur im Rahmen der gesetzlichen und vertraglichen Verpflichtungen sowie des Studienbetriebes verwendet und nicht an nicht berechtigte Dritte weitergegeben. @@ -1087,10 +1106,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - The conditions for the fulfillment of this obligation are the subject of the accredited study program as amended, the Statutes of the UAS Technikum Wien as amended, and the House Rules as amended. - - - The operator also undertakes to design the study on the basis of the highest possible quality standards as regards the achievement of the educational goals and to make known any changes to the accredited degree program. + The operator undertakes to make the following documents available in any event: student ID card, diploma supplement, certificate attesting to the award of the academic degree, confirmation of success in the degree program, confirmation of registration. The operator is committed to use the personal data of the students carefully. The data is only to be used within the operator’s legal and contractual obligations as well as its program of studies and is not to be handed on to unauthorized third parties. @@ -1110,7 +1126,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn 6.1 Rechte - + @@ -1118,13 +1134,10 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn Die Studentin bzw. der Student hat das Recht auf - + einen Studienbetrieb gemäß den im akkreditierten Studiengang idgF und in der Satzung der FH Technikum Wien idgF festgelegten Bedingungen; - - ein Zeugnis über die im laufenden Semester abgelegten Prüfungen; - Unterbrechung der Ausbildung aus nachgewiesenen zwingenden persönlichen, gesundheitlichen oder beruflichen Gründen. @@ -1134,25 +1147,41 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn 6.2 Pflichten - 6.2.1 Studienbeitrag - Die Studentin bzw. der Student ist verpflichtet, zwei Wochen vor Beginn jedes Semesters (StudienanfängerInnen: bis 20. August vor Studienbeginn) einen Studienbeitrag gemäß Fachhochschul-Studiengesetz (BGBl. Nr. 340/1993 idgF) in der Höhe von derzeit € 363,36 netto pro Semester zu entrichten. Dies gilt auch in Semestern mit DiplomandInnenenstatus o.ä. Im Falle einer Erhöhung des gesetzlichen Studienbeitrags-satzes erhöht sich der angeführte Betrag entsprechend. Bei Nichtantritt des Studiums oder Abbruch zu Beginn oder während des Semesters verfällt der Studienbeitrag. - - - + + 6.2.1 Einhaltung studienrelevanter Bestimmungen + Die Studentin bzw der Student ist verpflichtet, insbesondere folgende Bestimmungen einzuhalten: + + + Studienordnung und Studienrechtliche Bestimmungen / Prüfungsordnung idgF + + + Hausordnung idgF + + + Brandschutzordnung idgF + + + Bibliotheksordnung idgF + + + Die für den jeweiligen Studiengang geltende/n Laborordnung/en idgF + + + + Diese Dokumente sind öffentlich zugänglich unter www.technikum-wien.at. 6. Rights and Duties of the Students + - - - + - + @@ -1166,13 +1195,10 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn The student has the right to - + a course of study according to the conditions specified in the accredited degree program as amended and in the Statutes of the UAS Technikum Wien as amended; - - a certificate showing the examinations successfully passed in the current semester; - interrupt the training due to proof of compelling personal, health or professional reasons. @@ -1182,37 +1208,57 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn 6.2 Duties - 6.2.1 Tuition Fees - Two weeks before the beginning of each semester (new students: up to August 20 before taking up studies) the student undertakes to pay tuition fees according to the University of Applied Sciences Studies Act (Federal Law Gazette No 340/1993 as amended) currently to the sum of € 363.36 net payable per semester. This also applies in semesters with graduand status etc. In the event of an increase in the legal tuition fees rate, the amount quoted will increase accordingly. For non-commencement or termination of the study at the beginning or during the semester, the tuition fee is forfeited. - - 6.2.2 Studierendenbeitrag („ÖH-Beitrag“) - Gemäß § 4 Abs. 10 des Fachhochschul-Studiengesetzes (BGBl. Nr. 340/1993 idgF und der Bundesministeriengesetz-Novelle 2007, BGBl. I Nr. 6/2007) gehören ordentliche und außerordentliche Studierende an Fachhochschul-Studiengängen der Österreichischen HochschülerInnenschaft (ÖH) gemäß Hochschülerinnen- und Hochschülerschaftsgesetz (HSG 2014) an. Daraus resultiert die Verpflichtung der Studentin oder des Studenten zur Entrichtung des ÖH-Beitrags. Dies gilt auch in Semestern mit DiplomandInnenstatus. Der Studierendenbeitrag kann jährlich durch die ÖH indexiert werden; die genaue Höhe des Studierendenbeitrags wird von der ÖH jährlich für das folgende Studienjahr bekannt gegeben. - Die Einhebung des Betrags erfolgt durch die Fachhochschule. Der Erhalter überweist in Folge die eingezahlten Beträge der Studierenden ohne Abzüge an die ÖH. Die Entrichtung des Betrags ist Voraussetzung für die Zulassung zum Studium bzw. für dessen Fortsetzung. - - 6.2.3 Kaution + + 6.2.1 Compliance with regulations relevant to the studies + In particular the student undertakes to comply with the following regulations: + + + Study Regulations and Studies Act Provisions / Examination Regulations as amended + + + General Rules of Conduct as amended + + + Fire Regulations as amended + + + Library Regulations as amended + + + The Laboratory Regulations applicable to the respective degree program as amended + + + + These documents are publically available at www.technikum-wien.at. + + 6.2.2 Studienbeitrag + Die Studentin bzw. der Student ist verpflichtet, zwei Wochen vor Beginn jedes Semesters (StudienanfängerInnen: bis 20. August vor Studienbeginn) einen Studienbeitrag gemäß Fachhochschul-Studiengesetz in der Höhe von derzeit € 363,36 netto pro Semester zu entrichten. Dies gilt auch in Semestern mit DiplomandInnenenstatus o.ä. Im Falle einer Erhöhung des gesetzlichen Studienbeitrags-satzes erhöht sich der angeführte Betrag entsprechend. Die vollständige Bezahlung des Studienbeitrags ist Voraussetzung für die Aufnahme bzw. die Fortsetzung des Studiums. Bei Nichtantritt des Studiums oder Abbruch zu Beginn oder während des Semesters verfällt der Studienbeitrag. + + 6.2.3 ÖH-Beitrag + Gemäß § 4 Abs 10 FHStG sind Studierende an Fachhochschulen Mitglieder der Österreichischen HochschülerInnenschaft (ÖH). Der/Die Studierende hat semesterweise einen ÖH-Beitrag an den Erhalter zu entrichten, der diesen an die ÖH abführt. Die Entrichtung des Betrags ist Voraussetzung für die Zulassung zum Studium bzw. für dessen Fortsetzung. + + 6.2.4 Kaution Im Zuge der Einschreibung ist der Nachweis über die einbezahlte Kaution zu erbringen. - Die Kaution beträgt € 150,–. + Die Kaution beträgt € 150,–. Bei Nichtantritt des Studiums oder Abbruch während des ersten oder zweiten Semesters verfällt die Kaution. Bei aufrechtem Inskriptionsverhältnis zu Beginn des zweiten Semesters wird die Kaution auf den Unkostenbeitrag (siehe nächster Punkt) des ersten und zweiten Semesters angerechnet. + 6.2.2 Tuition Fees + Two weeks before the beginning of each semester (new students: up to August 20 before taking up studies) the student undertakes to pay tuition fees according to the University of Applied Sciences Studies Act currently to the sum of € 363.36 net payable per semester. This also applies in semesters with graduand status etc. In the event of an increase in the legal tuition fees rate, the amount quoted will increase accordingly. Full payment of the tuition fees is a prerequisite both for enrolling on the course and continuing with the degree program. For non-commencement or termination of the study at the beginning or during the semester, the tuition fee is forfeited. - - 6.2.2 Student fee ("Austrian Student Union fee") - Pursuant to § 4 section 10 of the Universities of Applied Sciences Studies Act (Federal Law Gazette No 340/1993 as amended and the Federal Ministries Act - 2007 amendment, Federal Law Gazette I No. 6/2007), internal and external students at universities of applied sciences degree programs are members of the Austrian Students Union in accordance with the Students Act (HSG 2014).This results in the student being obliged to pay the Austrian Student Union fee. This also applies in semesters with graduand status. The student fee can be annually indexed by the Austrian Students ' Union; the exact amount of the student fee for the following year is announced annually by the Austrian Students' Union. - The amount is levied by the University of Applied Sciences. The operator then transfers the amounts paid by the students without deductions to the Students' Union. Payment of the student fee is a pre-requisite for admission to the course or for its continuation. - - - - 6.2.3 Deposit + 6.2.3 Austrian Student Union fee + In accordance with § 4 para.10 FHStG (University of Applied Sciences Studies Act) students at Universities of Applied Sciences are members of the Austrian National Union of Students (ÖH). Each semester the student is required to pay an ÖH fee to the operator. This fee is then paid to the ÖH. Payment of this fee is a prerequisite for admission to the course of study or its continuation. + + 6.2.4 Deposit During the process of registration, proof of deposit paid must be provided. - The deposit is € 150,–. + The deposit is € 150,–. For non-commencement of studies or termination during the first or second semester, the deposit shall be forfeited. If, by the beginning of the second semester, registration has been completed correctly the deposit will be credited to the contribution towards expenses (see next point) for the first and second semester. + + 6.2.5 Unkostenbeitrag + + Pro Semester ist ein Unkostenbeitrag zu entrichten, wobei es sich nicht um einen Pauschalbetrag handelt. Der Unkostenbeitrag stellt eine Abgeltung für über das Normalmaß hinausgehende Serviceleistungen der FH dar, z.B. Freifächer, Beratung/Info Auslands-studium, Sponsionsfeiern, Vorträge / Job-börse, Mensa etc. - - 6.2.4 Unkostenbeitrag - Pro Semester ist ein Unkostenbeitrag zu entrichten, wobei es sich nicht um einen Pauschalbetrag handelt. Der Unkostenbeitrag stellt eine Abgeltung für über das Normalmaß hinausgehende Serviceleistungen der FH dar, z.B. Freifächer, Beratung/Info Auslands-studium, Sponsionsfeiern, Vorträge / Job-börse, Mensa etc. - - Die Höhe des Unkostenbeitrages beträgt derzeit € 75,– pro Semester. Eine allfällige Anpassung wird durch Aushang bekannt gemacht. + Die Höhe des Unkostenbeitrages beträgt derzeit € 75,– pro Semester. Eine allfällige Anpassung wird durch Aushang bekannt gemacht. Der Unkostenbeitrag ist @@ -1225,15 +1271,14 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn 3. Semester gleichzeitig mit der Studiengebühr vor Beginn des Semesters zu entrichten. Bei Vertragsauflösung vor Studienabschluss aus Gründen, die die Studentin bzw. der Student zu vertreten hat, oder auf deren bzw. dessen Wunsch, wird der Unkostenbeitrag zur Abdeckung der dem Erhalter erwachsenen administrativen Zusatzkosten einbehalten. - - 6.2.5 Lehr- und Lernbehelfe - Die Anschaffung unterrichtsbezogener Literatur und individueller Lernbehelfe ist durch den Unkostenbeitrag nicht abgedeckt. Eventuelle zusätzliche Kosten, die sich beispielsweise durch die studiengangsbezogene, gemeinsame Anschaffung von Lehr- bzw. Lernbehelfen (Skripten, CDs, Bücher, Projektmaterialien, Kopierpapier etc.) oder durch Exkursionen ergeben, werden von jedem Studiengang individuell eingehoben. + + 6.2.6 Lehr- und Lernbehelfe + Die Anschaffung unterrichtsbezogener Literatur und individueller Lernbehelfe ist durch den Unkostenbeitrag nicht abgedeckt. Eventuelle zusätzliche Kosten, die sich beispielsweise durch die studiengangsbezogene, gemeinsame Anschaffung von Lehr- bzw. Lernbehelfen (Skripten, CDs, Bücher, Projektmaterialien, Kopierpapier etc.) oder durch Exkursionen ergeben, werden von jedem Studiengang individuell eingehoben. - - 6.2.4 Contribution towards Expenses + 6.2.5 Contribution towards Expenses A contribution towards expenses, which is not a lump sum, is payable per semester. The contribution towards expenses represents compensation for the services provided by the UAS that go beyond the normal level, such as electives, counseling/ information about studying abroad, graduation ceremonies, lectures/job market, cafeteria, etc. - - The amount of the contribution is currently € 75,– per semester. Any possible adjustment is posted on the noticeboard. + + The amount of the contribution is currently € 75,– per semester. Any possible adjustment is posted on the noticeboard. @@ -1244,137 +1289,169 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn the 3rd semester the contribution towards expenses must be paid together with the tuition fees before the start of the semester. - + If the contract is cancelled before graduation for reasons that are the fault of the student, or on their wishes, the contribution towards expenses shall be deducted to cover the additional administrative costs borne by the operator. - 6.2.5 Teaching Aids and Learning Tools + 6.2.6 Teaching Aids and Learning Tools The acquisition of teaching-related literature and individual learning tools is not covered by the contribution towards expenses. Any additional costs, which arise for example from the course-related, joint purchase of teaching and / or learning materials (scripts, CDs, books, project materials, copying paper, etc.) or result from field trips, are levied by each individual degree program. - - + + 6.2.7 Beibringung persönlicher Daten - 6.2.6 Beibringung persönlicher Daten - - Die Studentin bzw. der Student ist verpflichtet, persönliche Daten beizubringen, die auf Grund eines Gesetzes, einer Verordnung oder eines Bescheides vom Erhalter erfasst werden müssen oder zur Erfüllung des Ausbildungsvertrages bzw. für den Studienbetrieb unerlässlich sind. + Die Studentin bzw. der Student ist verpflichtet, persönliche Daten beizubringen, die auf Grund eines Gesetzes, einer Verordnung oder eines Bescheides vom Erhalter erfasst werden müssen oder zur Erfüllung des Ausbildungsvertrages bzw. für den Studienbetrieb unerlässlich sind. - 6.2.7 Aktualisierung eigener Daten und Bezug von Informationen - Die Studentin bzw. der Student hat unaufgefordert dafür zu sorgen, dass die von ihr/ihm beigebrachten Daten aktuell sind. Änderungen sind der Studiengangsassistenz unverzüglich schriftlich mitzuteilen. Darüber hinaus trifft sie/ihn die Pflicht, sich von studienbezogenen Informationen, die ihr/ihm an die vom Erhalter zur Verfügung gestellte Emailadresse zugestellt werden, in geeigneter Weise Kenntnis zu verschaffen. - - 6.2.6 Providing Personal Data + 6.2.8 Aktualisierung eigener Daten und Bezug von Informationen + Die Studentin bzw. der Student hat unaufgefordert dafür zu sorgen, dass die von ihr/ihm beigebrachten Daten aktuell sind. Änderungen sind der Studiengangsassistenz unverzüglich schriftlich mitzuteilen. Darüber hinaus trifft sie/ihn die Pflicht, sich von studienbezogenen Informationen, die ihr/ihm an die vom Erhalter zur Verfügung gestellte Emailadresse zugestellt werden, in geeigneter Weise Kenntnis zu verschaffen. + 6.2.7 Providing Personal Data The student is obliged to produce personal data which must be registered because of a law, regulation or a decision by the operator, or is essential fort he fulfilling of the training contract or fort he program of studies. - 6.2.7 Updating personal data and the retrieval of information + 6.2.8 Updating personal data and the retrieval of information Without being reminded, the student must ensure that the data provided by them is up-to-date. Changes are to be immediately communicated to the administrative assistant in writing. Furthermore, it is the students’ responsibility to make themselves suitably aware of information relating to their studies which has been sent to them at the email address provided for them by the operator. - - - - + + - 6.2.8 Verwertungsrechte + 6.2.9 Verwertungsrechte Sofern nicht im Einzelfall andere Regelungen zwischen dem Erhalter und der Studentin oder dem Studenten getroffen wurden, ist die Studentin oder der Student verpflichtet, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen auf dessen schriftliche Anfrage hin anzubieten. - 6.2.9 Aufzeichnungen und Mitschnitte + 6.2.10 Aufzeichnungen und Mitschnitte Es ist der/dem Studierenden ausdrücklich untersagt, Lehrveranstaltungen als Ganzes oder nur Teile davon aufzuzeichnen und/oder mitzuschneiden (z.B. durch Film- und/oder Tonaufnahmen oder sonstige hierfür geeignete audiovisuelle Mittel). Darüber hinaus ist jede Form der öffentlichen Zurverfügungstellung (drahtlos oder drahtgebunden) der vorgenannten Aufnahmen z.B. in sozialen Netzwerken wie Facebook, StudiVZ etc, aber auch auf Youtube usw. oder durch sonstige für diese Zwecke geeignete Kommunikations-mittel untersagt. Diese Regelungen gelten sinngemäß auch für Skripten, sonstige Lernbehelfe und Prüfungsangaben. Ausgenommen hiervon ist eine Aufzeichnung zu ausschließlichen Lern-, Studien- und Forschungszwecken und zum privaten Gebrauch, sofern hierfür der Vortragende vorab ausdrücklich seine schriftliche Zustimmung erteilt hat. - - 6.2.10 Geheimhaltungspflicht + 6.2.11 Geheimhaltungspflicht Die Studentin bzw. der Student ist zur Geheimhaltung von Forschungs- und Entwicklungsaktivitäten und -ergebnissen gegenüber Dritten verpflichtet. - - 6.2.8 Exploitation Rights + + 6.2.9 Exploitation Rights Unless other arrangements have been agreed between the operator and the student at an individual level, on written request, the student undertakes to offer the operator the rights to research and development results. - 6.2.9 Recordings + 6.2.10 Recordings It is expressly forbidden for the student to record lectures in part or in total (e.g. by using film and / or sound recordings or other audio-visual means suitable for this purpose). In addition, any form of making the aforementioned recordings publically available (wired or wireless) for example in social networks such as Facebook, StudiVZ etc, but also on Youtube, etc., or by other means of communication designed for these purposes is strictly prohibited. These regulations shall apply correspondingly to scripts, other learning aids and examination data. The only exception is a recording exclusively for the purpose of learning, study and research and for personal use, provided that the lecturer has expressly granted his / her prior written consent. - - - 6.2.10 Confidentiality + 6.2.11 Confidentiality The student is required to maintain confidentiality towards third parties of research and development activities and results. - - 6.2.11 Unfallmeldung - Im Falle eines Unfalles mit körperlicher Verletzung des/der Studierenden im Zusammenhang mit dem Studium ist die/der Studierende verpflichtet, innerhalb von drei Tagen eine Meldung am Studiengangssekretariat einzubringen. Dies betrifft auch Wegunfälle zur oder von der FH. - + 6.2.12 Unfallmeldung + Im Falle eines Unfalles mit körperlicher Verletzung des/der Studierenden im Zusammenhang mit dem Studium ist die/der Studierende verpflichtet, diesen innerhalb von drei Tagen dem Studiengangssekretariat zu melden. Dies betrifft auch Wegunfälle zur oder von der FH. + + 6.2.13 Schadensmeldung + Im Falle des Eintretens eines Schadens am Inventar der Fachhochschule ist der/die Studierende verpflichtet, diesen innerhalb von drei Tagen dem Studiengangssekretariat zu melden. Allfällige Haftungsansprüche bleiben hiervon unberührt. + + 6.2.14 Rückgabeverpflichtung bei Studienende + Die Studentin bzw der Student ist verpflichtet, bei einer Beendigung des Studiums unverzüglich alle zur Verfügung gestellten Gerätschaften, Bücher, Schlüssel und sonstige Materialien zurückzugeben. + 7. Beendigung des Vertrages 7.1 Auflösung im beiderseitigen Einvernehmen - - Im beiderseitigen Einvernehmen ist die Auflösung des Ausbildungsvertrages jederzeit ohne Angabe von Gründen möglich. Die einvernehmliche Auflösung bedarf der Schriftform. - - + Im beiderseitigen Einvernehmen ist die Auflösung des Ausbildungsvertrages jederzeit ohne Angabe von Gründen möglich. Die einvernehmliche Auflösung bedarf der Schriftform. + 7.2 Kündigung durch die Studentin bzw. den Studenten Die Studentin bzw. der Student kann den Ausbildungsvertrag schriftlich jeweils zum Ende eines Semesters kündigen. - - 7.3 Ausschluss durch den Erhalter - - Der Erhalter kann die Studentin bzw. den Studenten aus wichtigem Grund mit sofortiger Wirkung vom weiteren Studium ausschließen, und zwar beispielsweise wegen - - - nicht genügender Leistung im Sinne der Prüfungsordnung; - - - mehrmaligem unentschuldigten Verletzen der Anwesenheitspflicht ; - - - wiederholtem Nichteinhalten von Prüfungsterminen und Abgabeterminen für Seminararbeiten, Projektarbeiten etc.; - - - schwerwiegender bzw. wiederholter Verstöße gegen die Hausordnung; - - - - - 6.2.11 Accident Report - In the event of an accident with bodily injury to a student in connection with his / her studies, he / she is obliged to bring a report to the administrative assistant of the degree program within three days. This also applies to accidents on the way to or from the UAS. + 6.2.12 Accident Report + In the event of an accident with bodily injury to a student in connection with his / her studies, he / she is obliged to report this to the administrative assistant of the degree program within three days. This also applies to accidents on the way to or from the UAS. - + 6.2.13 Damage Report + If any damage should be caused to the inventory of the University of Applied Sciences, the student undertakes to report this to the administrative assistant of the degree program within three days. Any liability claims shall remain unaffected. + + 6.2.14 Obligation to Return Borrowed Items + The student undertakes to return promptly all equipment, books, keys and other materials that have been made available, when the course is finished or broken off. + + + + 7. Termination of the contract - - 7.1 Annulment by Mutual Agreement - + 7.1 Annulment by Mutual Agreement By mutual consent, the annulment of the training contract is possible at any time, without notice and for any reason. The amicable annulment must be put down in writing. - + 7.2 Termination by the Student - + The student may terminate the training contract in writing at the end of each semester. + + + + + 7.3 Automatische Beendigung des Vertrages + + Nach erfolgreicher Beendigung des Studiums endet der Vertrag automatisch mit der Verleihung des akademischen Grades. + Der Vertrag endet automatisch durch die negative Beurteilung der letztmöglichen Prüfungswiederholung. + + + 7.4 Ausschluss durch den Erhalter + + Der Erhalter kann die Studentin bzw. den Studenten aus wichtigem Grund mit sofortiger Wirkung vom weiteren Studium ausschließen, und zwar beispielsweise wegen + + + nicht genügender Leistung im Sinne der Prüfungsordnung; + + + mehrmaligem unentschuldigten Verletzen der Anwesenheitspflicht; + + + wiederholtem Nichteinhalten von Prüfungsterminen und Abgabeterminen für Seminararbeiten, Projektarbeiten etc.; + + + schwerwiegender bzw. wiederholter Verstöße gegen die Hausordnung; + + + persönlichem Verhalten, das zu einer Beeinträchtigung des Images und/oder Betriebes des Studienganges, der Fach-hochschule bzw. des Erhalters oder von Personen führt, die für die Fachhochschule bzw. den Erhalter tätig sind; + + + Verletzung der Verpflichtung, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen anzubieten (siehe Pkt. 6.2.9); + + + Verletzung der Geheimhaltungspflicht (siehe Pkt. 6.2.11); + + + strafgerichtlicher Verurteilung (wobei die Art des Deliktes und der Grad der Schuld berücksichtigt werden); + + + + + + + 7.3 Automatic Ending of the Contract + + + + + When the course of study has been completed successfully the contract ends automatically with the awarding of the academic degree. + The contract ends automatically if the last possible repeat of an examination ends in failure. + - 7.3 Expulsion by the Operator + 7.4 Expulsion by the Operator The operator may exclude the student from further study with immediate effect for good cause, for example because of - + insufficient achievement for the purposes of the examination regulations; @@ -1387,61 +1464,45 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn serious or repeated violation of the house rules; + + personal behavior, which leads to an adverse effect on the image and / or operation of the course, the university or the operator or on persons who are working for the university or the operator; + + + + breach of the obligation to offer the operator the rights to research and development results (see Section 6.2.9); + + + + breach of confidentiality (see Section 6.2.11); + + + a criminal conviction (whereby the nature of the offence and the level of culpability are taken into account); + - - - persönlichem Verhalten, das zu einer Beeinträchtigung des Images und/oder Betriebes des Studienganges, der Fach-hochschule bzw. des Erhalters oder von Personen führt, die für die Fachhochschule bzw. den Erhalter tätig sind; - - - Verletzung der Verpflichtung, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen anzubieten (siehe Pkt. 6.2.8); - - - Verletzung der Geheimhaltungspflicht (siehe Pkt. 6.2.10); - - - strafgerichtlicher Verurteilung (wobei die Art des Deliktes und der Grad der Schuld berücksichtigt werden); - + Nichterfüllung finanzieller Verpflichtungen trotz Mahnung (z.B. Unkostenbeitrag, Studienbeitrag etc.); - Weigerung zur Beibringung von Daten (siehe Pkt. 6.2.6) + Weigerung zur Beibringung von Daten (siehe Pkt. 6.2.7); - Plagiieren im Rahmen wissenschaftlicher Arbeiten + Plagiieren im Rahmen wissenschaftlicher Arbeiten. Der Ausschluss kann mündlich erklärt werden. Mit Ausspruch des Ausschlusses endet der Ausbildungsvertrag, es sei denn, es wird ausdrücklich auf einen anderen Endtermin hingewiesen. Eine schriftliche Bestätigung des Ausschlusses wird innerhalb von zwei Wochen nach dessen Ausspruch per Post an die bekannt gegebene Adresse abgeschickt oder auf andere geeignete Weise übermittelt. Gleichzeitig mit dem Ausspruch des Ausschlusses kann auch ein Hausverbot verhängt werden. - - 7.4 Erlöschen - - Der Ausbildungsvertrag erlischt mit der Verleihung des akademischen Grades. - - - - personal behavior, which leads to an adverse effect on the image and / or operation of the course, the university or the operator or on persons who are working for the university or the operator; - - - - breach of the obligation to offer the operator the rights to research and development results (see Section 6.2.8); - - - - breach of confidentiality (see Section 6.2.10); - - - a criminal conviction (whereby the nature of the offence and the level of culpability are taken into account); - + + non-fulfilment of the financial obligations, despite a reminder (e.g. contribution towards expenses, tuition fees , etc.); - refusal to provide any data (see section 6.2.6); + refusal to provide any data (see section 6.2.7); plagiarism in academic work. @@ -1451,13 +1512,10 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn The expulsion can be explained verbally. Once notice of the expulsion has been given the training contract ends unless another deadline is explicitly made clear. Within two weeks of notice being given, written confirmation of the expulsion is mailed by post to the address provided or transmitted in any other appropriate manner. Simultaneously with notice of expulsion being given an exclusion order from entering the building may also be imposed. - - - - 7.4 Expiry + + + - This contract expires with the award of the degree. - 8. Ergänzende Vereinbarungen @@ -1480,11 +1538,10 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn 8. - Unwirksamkeit von Vertrags-bestimmungen, Vertragslücke + Unwirksamkeit von Vertrags-bestimmungen Sollten einzelne Bestimmungen dieses Vertrages unwirksam oder nichtig sein oder werden, so berührt dies die Gültigkeit der übrigen Bestimmungen dieses Vertrages nicht. - Die Vertragsparteien verpflichten sich, unwirksame oder nichtige Bestimmungen durch neue Bestimmungen zu ersetzen, die dem in den unwirksamen oder nichtigen Bestimmungen enthaltenen Regelungsgehalt in rechtlich zulässiger Weise gerecht werden. Zur Ausfüllung einer allfälligen Lücke verpflichten sich die Vertragsparteien, auf die Etablierung angemessener Regelungen in diesem Vertrag hinzuwirken, die dem am nächsten kommen, was sie nach dem Sinn und Zweck des Vertrages bestimmt hätten, wenn der Punkt von ihnen bedacht worden wäre. @@ -1516,11 +1573,10 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - Invalidity of Contractual Provisions, Contractual Gap + Invalidity of Contractual Provisions If any provision of this agreement should be or become invalid or void, this shall not affect the validity of the remaining provisions of this agreement. - The parties undertake to replace the invalid or void provisions with new provisions that meet the content of the rules contained in the invalid or void provisions in a legally permissible manner. To fill a possible gap, the parties undertake to work towards the establishment of appropriate regulations in this contract, which come closest to what they would have determined in terms of meaning and purpose of the contract, if the point had been considered by them. @@ -1533,15 +1589,16 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn 9. - Ausfertigungen, Gebühren, Gerichtsstand + Ausfertigungen, Gebühren, Gerichtsstand, geltendes Recht - Die Ausfertigung dieses Vertrages erfolgt in zweifacher Ausführung. Ein Original verbleibt im zuständigen Administrationsbüro des Fachhochschul-Studienganges. Eine Ausfertigung wird der Studentin bzw. dem Studenten übergeben. + Die Ausfertigung dieses Vertrages erfolgt in zweifacher Ausführung. Ein Original verbleibt im zuständigen Administrationsbüro des Fachhochschul-Studienganges. Eine Ausfertigung wird der Studentin bzw. dem Studenten übergeben. + + Für Streitigkeiten aus diesem Vertrag gilt österreichisches Recht als vereinbart, allfällige Klagen gegen den Erhalter sind beim sachlich zuständigen Gericht in Wien einzubringen. Die englische Übersetzung des deutschsprachigen Vertrages dient nur als Referenz. Rechtsgültigkeit hat ausschließlich der deutsche Vertrag. Der Ausbildungsvertrag ist gebührenfrei. - Gerichtsstand ist Wien, Innere Stadt. @@ -1556,40 +1613,52 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - Copies, Fees, Place of Jurisdiction + Copies, Fees, Place of Jurisdiction, Applicable Law - This contract is provided in duplicate. An original remains with the competent administrations office of the University of Applied Sciences’ Degree Program. A copy is given to the student. + This contract is provided in duplicate. An original remains with the competent administrations office of the University of Applied Sciences’ Degree Program. A copy is given to the student. - The English translation of the German contract is intended as a reference only. Only the German version of this contract is legally valid in a Court of Law. + In respect of any disputes arising from this contract, Austrian law shall apply. Any complaints about the operator should be introduced at the competent court in Vienna. + + The English translation of the German contract is intended as a reference only. Only the German version of this contract is legally valid in a Court of Law. The training contract is free of charge. - Place of Jurisdiction is Vienna, Inner City. - Wien (Vienna), - Ort, Datum (City, Date) + + + + + + + + + Wien (Vienna), + + - + Ort, Datum (City, Date) - - - + Ort, Datum (City, Date) + + + + @@ -1598,19 +1667,14 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn Die Studentin/der Student /ggf. gesetzliche VertreterInnen - (The student / - - - - if necessary legal representatives) + (The student /if necessary legal representatives) - + Für die FH Technikum Wien - (For the UAS Technikum Wien) diff --git a/system/xsl/Ausbildungsver_0.xsl b/system/xsl/Ausbildungsver_0.xsl index 986bf2abe..4d8ef9d5a 100644 --- a/system/xsl/Ausbildungsver_0.xsl +++ b/system/xsl/Ausbildungsver_0.xsl @@ -7,403 +7,404 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + - - - - - - - - Ausbildungsvertrag - + + + + + + + + Ausbildungsvertrag + Keine Sozialversicherungsnummer oder Ersatzkennzeichen vorhanden Kein Geburtsdatum vorhanden Kein akademischer Grad vorhanden + Keine Ausbildungsdauer vorhanden - - Dieser Vertrag regelt das Rechtsverhältnis zwischen dem - Verein Fachhochschule Technikum Wien, 1060 Wien, Mariahilfer Straße 37-39 (kurz „Erhalter“ genannt) einerseits und - - Familienname: - Vorname: - Akademische/r Titel: + + Dieser Vertrag regelt das Rechtsverhältnis zwischen dem + Verein Fachhochschule Technikum Wien, 1060 Wien, Mariahilfer Straße 37-39 (kurz „Erhalter“ genannt) einerseits und + + Familienname: + Vorname: + Akademische/r Titel: - - - - - - - - Adresse: ; - Geburtsdatum: - - Sozialversicherungsnummer: - - - - 1 - - - - - - Gemäß § 3 Absatz 1 des Bildungsdokumentationsgesetzes und der Bildungsdokumentationsverordnung-Fachhochschulen hat der Erhalter die Sozialversicherungsnummer zu erfassen und gemäß § 7 Absatz 2 im Wege der Agentur für Qualitätssicherung und Akkreditierung Austria an das zuständige Bundesministerium und die Bundesanstalt Statistik Österreich zu übermitteln. - - - - - - - - - (kurz „Studentin“ bzw. „Student“ genannt) andererseits im Rahmen des Studienganges „“, StgKz , in der Organisationsform eines + + + + - + + + Adresse: ; + Geburtsdatum: + + Sozialversicherungsnummer: + + + + 1 + + + + + + Gemäß § 3 Absatz 1 des Bildungsdokumentationsgesetzes und der Bildungsdokumentationsverordnung-Fachhochschulen hat der Erhalter die Sozialversicherungsnummer zu erfassen und gemäß § 7 Absatz 2 im Wege der Agentur für Qualitätssicherung und Akkreditierung Austria an das zuständige Bundesministerium und die Bundesanstalt Statistik Österreich zu übermitteln. + + + + + + + + + (kurz „Studentin“ bzw. „Student“ genannt) andererseits im Rahmen des Studienganges „“, StgKz , in der Organisationsform eines berufsbegleitenden Studiums. @@ -416,145 +417,145 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - - - - - - Ausbildungsort - - - - - Studienort sind die Räumlichkeiten der FH Technikum Wien, 1200 Wien, Höchstädtplatz und 1210 Wien, Giefinggasse. Bei Bedarf kann der Erhalter einen anderen Studienort in Wien festlegen, außerhochschulische Aktivitäten (zB Exkursionen) können auch außerhalb von Wien stattfinden. - - - - - - Vertragsgrundlage - - - - - Die Ausbildung erfolgt auf der Grundlage des Fachhochschul-Studiengesetzes, BGBl. Nr. 340/1993 idgF, des Hochschul-Qualitätssicherungsgesetzes, BGBl. I Nr. 74/2011 idgF, des Akkreditierungsbescheides des Board der AQ Austria vom 9.5.2012, GZ FH12020016 idgF und des Fördervertrags mit dem für Fachhochschulen zuständigen Bundesministerium idgF. - - - - - - Ausbildungsdauer - - - - - Die Ausbildungsdauer beträgt Semester. - - Die Studentin bzw. der Student hat das Recht, eine Anerkennung nachgewiesener Kenntnisse beim Studiengang zu beantragen. Eine solche Anerkennung setzt voraus, dass die erworbenen Kenntnisse mit dem Inhalt und dem Umfang der Lehrveranstaltung bzw. eines Berufspraktikums gleichwertig sind und bewirkt die Anrechnung der entsprechenden Lehrveranstaltung oder des Berufspraktikums. - - - - - - Ausbildungsabschluss - - - - - Die Ausbildung endet mit der positiven Absolvierung der das jeweilige Studium abschließenden kommissionellen Prüfung. Nach dem Abschluss der vorgeschriebenen Prüfungen wird der akademische Grad of Science in Engineering () durch das FH-Kollegium verliehen. - - - - - - Rechte und Pflichten des Erhalters - - - - - 5.1 Rechte - Der Erhalter führt eine periodische Überprüfung des Studiums im Hinblick auf Relevanz und Aktualität durch und ist im Einvernehmen mit dem FH-Kollegium berechtigt, daraus Änderungen des akkreditierten Studienganges abzuleiten. - - Der Erhalter ist berechtigt, die Daten der/des Studierenden an den FH Technikum Wien Alumni Club zu übermitteln. Der Alumni Club ist der AbsolventInnenverein der FH Technikum Wien. Er hat zum Ziel, AbsolventInnen, Studierende und Lehrende miteinander zu vernetzen sowie AbsolventInnen laufend über Aktivitäten an der FH Technikum Wien zu informieren. Einer Zusendung von Informationen durch den Alumni Club kann jederzeit widersprochen werden. - - - - - - 5.2 Pflichten - - - Der Erhalter verpflichtet sich zur ordnungsgemäßen Planung und Durchführung des Studienganges in der Regelstudiendauer. Der Erhalter ist verpflichtet, allfällige Änderungen des akkreditierten Studienganges zeitgerecht bekannt zu geben. - - - Der Erhalter verpflichtet sich, jedenfalls folgende Dokumente zur Verfügung zu stellen: Studierendenausweis, Diploma Supplement, Urkunde über die Verleihung des akademischen Grades, Studienerfolgsbestätigung, Inskriptionsbestätigung. - - - Der Erhalter verpflichtet sich zur sorgfaltsgemäßen Verwendung der personenbezogenen Daten der Studierenden. Die Daten werden nur im Rahmen der gesetzlichen und vertraglichen Verpflichtungen sowie des Studienbetriebes verwendet und nicht an nicht berechtigte Dritte weitergegeben. - - - - - - - - Rechte und Pflichten der Studierenden - - - - - 6.1 Rechte - Die Studentin bzw. der Student hat das Recht auf - - - einen Studienbetrieb gemäß den im akkreditierten Studiengang idgF und in der Satzung der FH Technikum Wien idgF festgelegten Bedingungen; - - - - Unterbrechung der Ausbildung aus nachgewiesenen zwingenden persönlichen, gesundheitlichen oder beruflichen Gründen. - - - - - 6.2 Pflichten - 6.2.1 Einhaltung studienrelevanter Bestimmungen - Die Studentin bzw der Student ist verpflichtet, insbesondere folgende Bestimmungen einzuhalten: - - - Studienordnung und Studienrechtliche Bestimmungen / Prüfungsordnung idgF - - - Hausordnung idgF - - - Brandschutzordnung idgF - - - Bibliotheksordnung idgF - - - Die für den jeweiligen Studiengang geltende/n Laborordnung/en idgF - - - - Diese Dokumente sind öffentlich zugänglich unter www.technikum-wien.at. - - 6.2.2 Studienbeitrag - Die Studentin bzw. der Student ist verpflichtet, zwei Wochen vor Beginn jedes Semesters (StudienanfängerInnen: bis 20. August vor Studienbeginn) einen Studienbeitrag gemäß Fachhochschul-Studiengesetz in der Höhe von derzeit € 363,36 netto pro Semester zu entrichten. Dies gilt auch in Semestern mit DiplomandInnenstatus o.ä. Im Falle einer Erhöhung des gesetzlichen Studienbeitragssatzes erhöht sich der angeführte Betrag entsprechend. Die vollständige Bezahlung des Studienbeitrags ist Voraussetzung für die Aufnahme bzw. die Fortsetzung des Studiums. Bei Nichtantritt des Studiums oder Abbruch zu Beginn oder während des Semesters verfällt der Studienbeitrag. - - 6.2.3 ÖH-Beitrag - Gemäß § 4 Abs 10 FHStG sind Studierende an Fachhochschulen Mitglieder der Österreichischen HochschülerInnenschaft (ÖH). Der/Die Studierende hat semesterweise einen ÖH-Beitrag an den Erhalter zu entrichten, der diesen an die ÖH abführt. Die Entrichtung des Betrags ist Voraussetzung für die Zulassung zum Studium bzw. für dessen Fortsetzung. - - 6.2.4 Kaution - Im Zuge der Einschreibung ist der Nachweis über die einbezahlte Kaution zu erbringen. - Die Kaution beträgt € 150,–. - Bei Nichtantritt des Studiums oder Abbruch während des ersten oder zweiten Semesters verfällt die Kaution. - Bei aufrechtem Inskriptionsverhältnis zu Beginn des zweiten Semesters wird die Kaution auf den Unkostenbeitrag (siehe nächster Punkt) des ersten und zweiten Semesters angerechnet. - - 6.2.5 Unkostenbeitrag - Pro Semester ist ein Unkostenbeitrag zu entrichten, wobei es sich nicht um einen Pauschalbetrag handelt. Der Unkostenbeitrag stellt eine Abgeltung für über das Normalmaß hinausgehende Serviceleistungen der FH dar, z.B. Freifächer, Beratung/Info Auslandsstudium, Sponsionsfeiern, Vorträge / Jobbörse, Mensa etc. - Die Höhe des Unkostenbeitrages beträgt derzeit € 75,– pro Semester. Eine allfällige Anpassung wird durch Aushang bekannt gemacht. - Der Unkostenbeitrag ist + + + + + + Ausbildungsort + + + + + Studienort sind die Räumlichkeiten der FH Technikum Wien, 1200 Wien, Höchstädtplatz und 1210 Wien, Giefinggasse. Bei Bedarf kann der Erhalter einen anderen Studienort in Wien festlegen, außerhochschulische Aktivitäten (zB Exkursionen) können auch außerhalb von Wien stattfinden. + + + + + + Vertragsgrundlage + + + + + Die Ausbildung erfolgt auf der Grundlage des Fachhochschul-Studiengesetzes, BGBl. Nr. 340/1993 idgF, des Hochschul-Qualitätssicherungsgesetzes, BGBl. I Nr. 74/2011 idgF, des Akkreditierungsbescheides des Board der AQ Austria vom 9.5.2012, GZ FH12020016 idgF und des Fördervertrags mit dem für Fachhochschulen zuständigen Bundesministerium idgF. + + + + + + Ausbildungsdauer + + + + + Die Ausbildungsdauer beträgt Semester. + + Die Studentin bzw. der Student hat das Recht, eine Anerkennung nachgewiesener Kenntnisse beim Studiengang zu beantragen. Eine solche Anerkennung setzt voraus, dass die erworbenen Kenntnisse mit dem Inhalt und dem Umfang der Lehrveranstaltung bzw. eines Berufspraktikums gleichwertig sind und bewirkt die Anrechnung der entsprechenden Lehrveranstaltung oder des Berufspraktikums. + + + + + + Ausbildungsabschluss + + + + + Die Ausbildung endet mit der positiven Absolvierung der das jeweilige Studium abschließenden kommissionellen Prüfung. Nach dem Abschluss der vorgeschriebenen Prüfungen wird der akademische Grad of Science in Engineering () durch das FH-Kollegium verliehen. + + + + + + Rechte und Pflichten des Erhalters + + + + + 5.1 Rechte + Der Erhalter führt eine periodische Überprüfung des Studiums im Hinblick auf Relevanz und Aktualität durch und ist im Einvernehmen mit dem FH-Kollegium berechtigt, daraus Änderungen des akkreditierten Studienganges abzuleiten. + + Der Erhalter ist berechtigt, die Daten der/des Studierenden an den FH Technikum Wien Alumni Club zu übermitteln. Der Alumni Club ist der AbsolventInnenverein der FH Technikum Wien. Er hat zum Ziel, AbsolventInnen, Studierende und Lehrende miteinander zu vernetzen sowie AbsolventInnen laufend über Aktivitäten an der FH Technikum Wien zu informieren. Einer Zusendung von Informationen durch den Alumni Club kann jederzeit widersprochen werden. + + + + + + 5.2 Pflichten + + + Der Erhalter verpflichtet sich zur ordnungsgemäßen Planung und Durchführung des Studienganges in der Regelstudiendauer. Der Erhalter ist verpflichtet, allfällige Änderungen des akkreditierten Studienganges zeitgerecht bekannt zu geben. + + + Der Erhalter verpflichtet sich, jedenfalls folgende Dokumente zur Verfügung zu stellen: Studierendenausweis, Diploma Supplement, Urkunde über die Verleihung des akademischen Grades, Studienerfolgsbestätigung, Inskriptionsbestätigung. + + + Der Erhalter verpflichtet sich zur sorgfaltsgemäßen Verwendung der personenbezogenen Daten der Studierenden. Die Daten werden nur im Rahmen der gesetzlichen und vertraglichen Verpflichtungen sowie des Studienbetriebes verwendet und nicht an nicht berechtigte Dritte weitergegeben. + + + + + + + + Rechte und Pflichten der Studierenden + + + + + 6.1 Rechte + Die Studentin bzw. der Student hat das Recht auf + + + einen Studienbetrieb gemäß den im akkreditierten Studiengang idgF und in der Satzung der FH Technikum Wien idgF festgelegten Bedingungen; + + + + Unterbrechung der Ausbildung aus nachgewiesenen zwingenden persönlichen, gesundheitlichen oder beruflichen Gründen. + + + + + 6.2 Pflichten + 6.2.1 Einhaltung studienrelevanter Bestimmungen + Die Studentin bzw der Student ist verpflichtet, insbesondere folgende Bestimmungen einzuhalten: + + + Studienordnung und Studienrechtliche Bestimmungen / Prüfungsordnung idgF + + + Hausordnung idgF + + + Brandschutzordnung idgF + + + Bibliotheksordnung idgF + + + Die für den jeweiligen Studiengang geltende/n Laborordnung/en idgF + + + + Diese Dokumente sind öffentlich zugänglich unter www.technikum-wien.at. + + 6.2.2 Studienbeitrag + Die Studentin bzw. der Student ist verpflichtet, zwei Wochen vor Beginn jedes Semesters (StudienanfängerInnen: bis 20. August vor Studienbeginn) einen Studienbeitrag gemäß Fachhochschul-Studiengesetz in der Höhe von derzeit € 363,36 netto pro Semester zu entrichten. Dies gilt auch in Semestern mit DiplomandInnenstatus o.ä. Im Falle einer Erhöhung des gesetzlichen Studienbeitragssatzes erhöht sich der angeführte Betrag entsprechend. Die vollständige Bezahlung des Studienbeitrags ist Voraussetzung für die Aufnahme bzw. die Fortsetzung des Studiums. Bei Nichtantritt des Studiums oder Abbruch zu Beginn oder während des Semesters verfällt der Studienbeitrag. + + 6.2.3 ÖH-Beitrag + Gemäß § 4 Abs 10 FHStG sind Studierende an Fachhochschulen Mitglieder der Österreichischen HochschülerInnenschaft (ÖH). Der/Die Studierende hat semesterweise einen ÖH-Beitrag an den Erhalter zu entrichten, der diesen an die ÖH abführt. Die Entrichtung des Betrags ist Voraussetzung für die Zulassung zum Studium bzw. für dessen Fortsetzung. + + 6.2.4 Kaution + Im Zuge der Einschreibung ist der Nachweis über die einbezahlte Kaution zu erbringen. + Die Kaution beträgt € 150,–. + Bei Nichtantritt des Studiums oder Abbruch während des ersten oder zweiten Semesters verfällt die Kaution. + Bei aufrechtem Inskriptionsverhältnis zu Beginn des zweiten Semesters wird die Kaution auf den Unkostenbeitrag (siehe nächster Punkt) des ersten und zweiten Semesters angerechnet. + + 6.2.5 Unkostenbeitrag + Pro Semester ist ein Unkostenbeitrag zu entrichten, wobei es sich nicht um einen Pauschalbetrag handelt. Der Unkostenbeitrag stellt eine Abgeltung für über das Normalmaß hinausgehende Serviceleistungen der FH dar, z.B. Freifächer, Beratung/Info Auslandsstudium, Sponsionsfeiern, Vorträge / Jobbörse, Mensa etc. + Die Höhe des Unkostenbeitrages beträgt derzeit € 75,– pro Semester. Eine allfällige Anpassung wird durch Aushang bekannt gemacht. + Der Unkostenbeitrag ist im @@ -564,177 +565,177 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn 3. Semester gleichzeitig mit der Studiengebühr vor Beginn des Semesters zu entrichten. - Bei Vertragsauflösung vor Studienabschluss aus Gründen, die die Studentin bzw. der Student zu vertreten hat, oder auf deren bzw. dessen Wunsch, wird der Unkostenbeitrag zur Abdeckung der dem Erhalter erwachsenen administrativen Zusatzkosten einbehalten. - - 6.2.6 Lehr- und Lernbehelfe - Die Anschaffung unterrichtsbezogener Literatur und individueller Lernbehelfe ist durch den Unkostenbeitrag nicht abgedeckt. Eventuelle zusätzliche Kosten, die sich beispielsweise durch die studiengangsbezogene, gemeinsame Anschaffung von Lehr- bzw. Lernbehelfen (Skripten, CDs, Bücher, Projektmaterialien, Kopierpapier etc.) oder durch Exkursionen ergeben, werden von jedem Studiengang individuell eingehoben. - - 6.2.7 Beibringung persönlicher Daten - Die Studentin bzw. der Student ist verpflichtet, persönliche Daten beizubringen, die auf Grund eines Gesetzes, einer Verordnung oder eines Bescheides vom Erhalter erfasst werden müssen oder zur Erfüllung des Ausbildungsvertrages bzw für den Studienbetrieb unerlässlich sind. - - 6.2.8 Aktualisierung eigener Daten und Bezug von Informationen - Die Studentin bzw. der Student hat unaufgefordert dafür zu sorgen, dass die von ihr/ihm beigebrachten Daten aktuell sind. Änderungen sind der Studiengangsassistenz unverzüglich schriftlich mitzuteilen. Darüber hinaus trifft sie/ihn die Pflicht, sich von studienbezogenen Informationen, die ihr/ihm an die vom Erhalter zur Verfügung gestellte Emailadresse zugestellt werden, in geeigneter Weise Kenntnis zu verschaffen. - - 6.2.9 Verwertungsrechte - Sofern nicht im Einzelfall andere Regelungen zwischen dem Erhalter und der Studentin oder dem Studenten getroffen wurden, ist die Studentin oder der Student verpflichtet, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen auf dessen schriftliche Anfrage hin anzubieten. - - 6.2.10 Aufzeichnungen und Mitschnitte - Es ist der/dem Studierenden ausdrücklich untersagt, Lehrveranstaltungen als Ganzes oder nur Teile davon aufzuzeichnen und/oder mitzuschneiden (z.B. durch Film- und/oder Tonaufnahmen oder sonstige hierfür geeignete audiovisuelle Mittel). Darüber hinaus ist jede Form der öffentlichen Zurverfügungstellung (drahtlos oder drahtgebunden) der vorgenannten Aufnahmen z.B. in sozialen Netzwerken wie Facebook, StudiVZ etc, aber auch auf Youtube usw. oder durch sonstige für diese Zwecke geeignete Kommunikationsmittel untersagt. Diese Regelungen gelten sinngemäß auch für Skripten, sonstige Lernbehelfe und Prüfungsangaben. - Ausgenommen hiervon ist eine Aufzeichnung zu ausschließlichen Lern-, Studien- und Forschungszwecken und zum privaten Gebrauch, sofern hierfür der Vortragende vorab ausdrücklich seine schriftliche Zustimmung erteilt hat. - - 6.2.11 Geheimhaltungspflicht - Die Studentin bzw. der Student ist zur Geheimhaltung von Forschungs- und Entwicklungsaktivitäten und -ergebnissen gegenüber Dritten verpflichtet. - - - 6.2.12 Unfallmeldung - Im Falle eines Unfalles mit körperlicher Verletzung des/der Studierenden im Zusammenhang mit dem Studium ist die/der Studierende verpflichtet, diesen innerhalb von drei Tagen dem Studiengangssekretariat zu melden. Dies betrifft auch Wegunfälle zur oder von der FH. - - - 6.2.13 Schadensmeldung - Im Falle des Eintretens eines Schadens am Inventar der Fachhochschule ist der/die Studierende verpflichtet, diesen innerhalb von drei Tagen dem Studiengangssekretariat zu melden. Allfällige Haftungsansprüche bleiben hiervon unberührt. - - - 6.2.14 Rückgabeverpflichtung bei Studienende - Die Studentin bzw der Student ist verpflichtet, bei einer Beendigung des Studiums unverzüglich alle zur Verfügung gestellten Gerätschaften, Bücher, Schlüssel und sonstige Materialien zurückzugeben. - - - - - - Beendigung des Vertrages - - - - - 7.1 Auflösung im beiderseitigen Einvernehmen - Im beiderseitigen Einvernehmen ist die Auflösung des Ausbildungsvertrages jederzeit ohne Angabe von Gründen möglich. Die einvernehmliche Auflösung bedarf der Schriftform. - - 7.2 Kündigung durch die Studentin bzw. den Studenten - Die Studentin bzw. der Student kann den Ausbildungsvertrag schriftlich jeweils zum Ende eines Semesters kündigen. - - 7.3 Automatische Beendigung des Vertrages - Nach erfolgreicher Beendigung des Studiums endet der Vertrag automatisch mit der Verleihung des akademischen Grades. - Der Vertrag endet automatisch durch die negative Beurteilung der letztmöglichen Prüfungswiederholung. - - 7.4 Ausschluss durch den Erhalter - Der Erhalter kann die Studentin bzw. den Studenten aus wichtigem Grund mit sofortiger Wirkung vom weiteren Studium ausschließen, und zwar beispielsweise wegen - - - nicht genügender Leistung im Sinne der Prüfungsordnung; - - - mehrmaligem unentschuldigten Verletzen der Anwesenheitspflicht ; - - - wiederholtem Nichteinhalten von Prüfungsterminen und Abgabeterminen für Seminararbeiten, Projektarbeiten etc.; - - - schwerwiegender bzw. wiederholter Verstöße gegen die Hausordnung; - - - persönlichem Verhalten, das zu einer Beeinträchtigung des Images und/oder Betriebes des Studienganges, der Fachhochschule bzw. des Erhalters oder von Personen führt, die für die Fachhochschule bzw. den Erhalter tätig sind; - - - Verletzung der Verpflichtung, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen anzubieten (siehe Pkt. 6.2.9); - - - Verletzung der Geheimhaltungspflicht (siehe Pkt. 6.2.11); - - - strafgerichtlicher Verurteilung (wobei die Art des Deliktes und der Grad der Schuld berücksichtigt werden); - - - Nichterfüllung finanzieller Verpflichtungen trotz Mahnung (z.B. Unkostenbeitrag, Studienbeitrag etc.); - - - Weigerung zur Beibringung von Daten (siehe Pkt. 6.2.7) - - - Plagiieren im Rahmen wissenschaftlicher Arbeiten - - - - Der Ausschluss kann mündlich erklärt werden. Mit Ausspruch des Ausschlusses endet der Ausbildungsvertrag, es sei denn, es wird ausdrücklich auf einen anderen Endtermin hingewiesen. Eine schriftliche Bestätigung des Ausschlusses wird innerhalb von zwei Wochen nach dessen Ausspruch per Post an die bekannt gegebene Adresse abgeschickt oder auf andere geeignete Weise übermittelt. - Gleichzeitig mit dem Ausspruch des Ausschlusses kann auch ein Hausverbot verhängt werden. - - - + Bei Vertragsauflösung vor Studienabschluss aus Gründen, die die Studentin bzw. der Student zu vertreten hat, oder auf deren bzw. dessen Wunsch, wird der Unkostenbeitrag zur Abdeckung der dem Erhalter erwachsenen administrativen Zusatzkosten einbehalten. + + 6.2.6 Lehr- und Lernbehelfe + Die Anschaffung unterrichtsbezogener Literatur und individueller Lernbehelfe ist durch den Unkostenbeitrag nicht abgedeckt. Eventuelle zusätzliche Kosten, die sich beispielsweise durch die studiengangsbezogene, gemeinsame Anschaffung von Lehr- bzw. Lernbehelfen (Skripten, CDs, Bücher, Projektmaterialien, Kopierpapier etc.) oder durch Exkursionen ergeben, werden von jedem Studiengang individuell eingehoben. + + 6.2.7 Beibringung persönlicher Daten + Die Studentin bzw. der Student ist verpflichtet, persönliche Daten beizubringen, die auf Grund eines Gesetzes, einer Verordnung oder eines Bescheides vom Erhalter erfasst werden müssen oder zur Erfüllung des Ausbildungsvertrages bzw für den Studienbetrieb unerlässlich sind. + + 6.2.8 Aktualisierung eigener Daten und Bezug von Informationen + Die Studentin bzw. der Student hat unaufgefordert dafür zu sorgen, dass die von ihr/ihm beigebrachten Daten aktuell sind. Änderungen sind der Studiengangsassistenz unverzüglich schriftlich mitzuteilen. Darüber hinaus trifft sie/ihn die Pflicht, sich von studienbezogenen Informationen, die ihr/ihm an die vom Erhalter zur Verfügung gestellte Emailadresse zugestellt werden, in geeigneter Weise Kenntnis zu verschaffen. + + 6.2.9 Verwertungsrechte + Sofern nicht im Einzelfall andere Regelungen zwischen dem Erhalter und der Studentin oder dem Studenten getroffen wurden, ist die Studentin oder der Student verpflichtet, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen auf dessen schriftliche Anfrage hin anzubieten. + + 6.2.10 Aufzeichnungen und Mitschnitte + Es ist der/dem Studierenden ausdrücklich untersagt, Lehrveranstaltungen als Ganzes oder nur Teile davon aufzuzeichnen und/oder mitzuschneiden (z.B. durch Film- und/oder Tonaufnahmen oder sonstige hierfür geeignete audiovisuelle Mittel). Darüber hinaus ist jede Form der öffentlichen Zurverfügungstellung (drahtlos oder drahtgebunden) der vorgenannten Aufnahmen z.B. in sozialen Netzwerken wie Facebook, StudiVZ etc, aber auch auf Youtube usw. oder durch sonstige für diese Zwecke geeignete Kommunikationsmittel untersagt. Diese Regelungen gelten sinngemäß auch für Skripten, sonstige Lernbehelfe und Prüfungsangaben. + Ausgenommen hiervon ist eine Aufzeichnung zu ausschließlichen Lern-, Studien- und Forschungszwecken und zum privaten Gebrauch, sofern hierfür der Vortragende vorab ausdrücklich seine schriftliche Zustimmung erteilt hat. + + 6.2.11 Geheimhaltungspflicht + Die Studentin bzw. der Student ist zur Geheimhaltung von Forschungs- und Entwicklungsaktivitäten und -ergebnissen gegenüber Dritten verpflichtet. + + + 6.2.12 Unfallmeldung + Im Falle eines Unfalles mit körperlicher Verletzung des/der Studierenden im Zusammenhang mit dem Studium ist die/der Studierende verpflichtet, diesen innerhalb von drei Tagen dem Studiengangssekretariat zu melden. Dies betrifft auch Wegunfälle zur oder von der FH. + + + 6.2.13 Schadensmeldung + Im Falle des Eintretens eines Schadens am Inventar der Fachhochschule ist der/die Studierende verpflichtet, diesen innerhalb von drei Tagen dem Studiengangssekretariat zu melden. Allfällige Haftungsansprüche bleiben hiervon unberührt. + + + 6.2.14 Rückgabeverpflichtung bei Studienende + Die Studentin bzw der Student ist verpflichtet, bei einer Beendigung des Studiums unverzüglich alle zur Verfügung gestellten Gerätschaften, Bücher, Schlüssel und sonstige Materialien zurückzugeben. + + - - - - Ergänzende Vereinbarungen - - - - - - Das gesamte Studienprogramm wird in englischer Sprache angeboten. Die Studentin bzw. der Student erklärt, die englische Sprache in Wort und Schrift in dem für eine akademische Ausbildung erforderlichen Ausmaß zu beherrschen. - - - Studierende des Studiengangs sind verpflichtet, eine EDV-Ausstattung zu beschaffen und zu unterhalten, die es ermöglicht, an den Fernlehrelementen teilzunehmen. Die gesamten Kosten der Anschaffung und des Betriebs (inkl. Kosten für Internet und e-mail) trägt der Student bzw. die Studentin. - - + + + Beendigung des Vertrages + + + + + 7.1 Auflösung im beiderseitigen Einvernehmen + Im beiderseitigen Einvernehmen ist die Auflösung des Ausbildungsvertrages jederzeit ohne Angabe von Gründen möglich. Die einvernehmliche Auflösung bedarf der Schriftform. + + 7.2 Kündigung durch die Studentin bzw. den Studenten + Die Studentin bzw. der Student kann den Ausbildungsvertrag schriftlich jeweils zum Ende eines Semesters kündigen. + + 7.3 Automatische Beendigung des Vertrages + Nach erfolgreicher Beendigung des Studiums endet der Vertrag automatisch mit der Verleihung des akademischen Grades. + Der Vertrag endet automatisch durch die negative Beurteilung der letztmöglichen Prüfungswiederholung. + + 7.4 Ausschluss durch den Erhalter + Der Erhalter kann die Studentin bzw. den Studenten aus wichtigem Grund mit sofortiger Wirkung vom weiteren Studium ausschließen, und zwar beispielsweise wegen + + + nicht genügender Leistung im Sinne der Prüfungsordnung; + + + mehrmaligem unentschuldigten Verletzen der Anwesenheitspflicht ; + + + wiederholtem Nichteinhalten von Prüfungsterminen und Abgabeterminen für Seminararbeiten, Projektarbeiten etc.; + + + schwerwiegender bzw. wiederholter Verstöße gegen die Hausordnung; + + + persönlichem Verhalten, das zu einer Beeinträchtigung des Images und/oder Betriebes des Studienganges, der Fachhochschule bzw. des Erhalters oder von Personen führt, die für die Fachhochschule bzw. den Erhalter tätig sind; + + + Verletzung der Verpflichtung, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen anzubieten (siehe Pkt. 6.2.9); + + + Verletzung der Geheimhaltungspflicht (siehe Pkt. 6.2.11); + + + strafgerichtlicher Verurteilung (wobei die Art des Deliktes und der Grad der Schuld berücksichtigt werden); + + + Nichterfüllung finanzieller Verpflichtungen trotz Mahnung (z.B. Unkostenbeitrag, Studienbeitrag etc.); + + + Weigerung zur Beibringung von Daten (siehe Pkt. 6.2.7) + + + Plagiieren im Rahmen wissenschaftlicher Arbeiten + + + + Der Ausschluss kann mündlich erklärt werden. Mit Ausspruch des Ausschlusses endet der Ausbildungsvertrag, es sei denn, es wird ausdrücklich auf einen anderen Endtermin hingewiesen. Eine schriftliche Bestätigung des Ausschlusses wird innerhalb von zwei Wochen nach dessen Ausspruch per Post an die bekannt gegebene Adresse abgeschickt oder auf andere geeignete Weise übermittelt. + Gleichzeitig mit dem Ausspruch des Ausschlusses kann auch ein Hausverbot verhängt werden. + + + + + + + + Ergänzende Vereinbarungen + + + + + + Das gesamte Studienprogramm wird in englischer Sprache angeboten. Die Studentin bzw. der Student erklärt, die englische Sprache in Wort und Schrift in dem für eine akademische Ausbildung erforderlichen Ausmaß zu beherrschen. + + + Studierende des Studiengangs sind verpflichtet, eine EDV-Ausstattung zu beschaffen und zu unterhalten, die es ermöglicht, an den Fernlehrelementen teilzunehmen. Die gesamten Kosten der Anschaffung und des Betriebs (inkl. Kosten für Internet und e-mail) trägt der Student bzw. die Studentin. + + - - - - - Unwirksamkeit von Vertragsbestimmungen - - - - - Sollten einzelne Bestimmungen dieses Vertrages unwirksam oder nichtig sein oder werden, so berührt dies die Gültigkeit der übrigen Bestimmungen dieses Vertrages nicht. - - - - - - Ausfertigungen, Gebühren, Gerichtsstand, geltendes Recht - - - - - Die Ausfertigung dieses Vertrages erfolgt in zweifacher Ausführung. Ein Original verbleibt im zuständigen Administrationsbüro des Fachhochschul-Studienganges. Eine Ausfertigung wird der Studentin bzw. dem Studenten übergeben. - Für Streitigkeiten aus diesem Vertrag gilt österreichisches Recht als vereinbart, allfällige Klagen gegen den Erhalter sind beim sachlich zuständigen Gericht in Wien einzubringen. - - Der Ausbildungsvertrag ist gebührenfrei. - - - - Wien, - - - - - - - Ort, Datum - - - - - - Ort, Datum - - - - - - - - Die Studentin/der Studentggf. gesetzliche VertreterInnen - - - - - - Für die FH Technikum Wien - - - - + + + + + Unwirksamkeit von Vertragsbestimmungen + + + + + Sollten einzelne Bestimmungen dieses Vertrages unwirksam oder nichtig sein oder werden, so berührt dies die Gültigkeit der übrigen Bestimmungen dieses Vertrages nicht. + + + + + + Ausfertigungen, Gebühren, Gerichtsstand, geltendes Recht + + + + + Die Ausfertigung dieses Vertrages erfolgt in zweifacher Ausführung. Ein Original verbleibt im zuständigen Administrationsbüro des Fachhochschul-Studienganges. Eine Ausfertigung wird der Studentin bzw. dem Studenten übergeben. + Für Streitigkeiten aus diesem Vertrag gilt österreichisches Recht als vereinbart, allfällige Klagen gegen den Erhalter sind beim sachlich zuständigen Gericht in Wien einzubringen. + + Der Ausbildungsvertrag ist gebührenfrei. + + + + Wien, + + + + + + + Ort, Datum + + + + + + Ort, Datum + + + + + + + + Die Studentin/der Studentggf. gesetzliche VertreterInnen + + + + + + Für die FH Technikum Wien + + + + \ No newline at end of file From a9daf5bdc67359a02b42b6b3bb03ce65cb453bd9 Mon Sep 17 00:00:00 2001 From: kindlm Date: Fri, 8 Jul 2016 17:48:50 +0200 Subject: [PATCH 084/114] =?UTF-8?q?Fehler=20in=20Bildpr=C3=BCfung=20behobe?= =?UTF-8?q?n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Wenn Student oder Mitarbeiter gewählt wird und weniger als 100 Einträge vorhanden sind, kann es vorkommen, dass wegen der Random-Funktion keine Ergebnisse kommen --- vilesci/fhausweis/bildpruefung.php | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/vilesci/fhausweis/bildpruefung.php b/vilesci/fhausweis/bildpruefung.php index f49497fe8..5df40c11f 100755 --- a/vilesci/fhausweis/bildpruefung.php +++ b/vilesci/fhausweis/bildpruefung.php @@ -322,11 +322,11 @@ $qry_anzahl_mitarbeiter = " WHERE person_id=tbl_person.person_id ORDER BY datum desc, person_fotostatus_id desc LIMIT 1) AND uid IN (SELECT mitarbeiter_uid FROM public.tbl_mitarbeiter) "; -$anzahl = ''; +$anzahl_ma = ''; if($result_anzahl = $db->db_query($qry_anzahl_mitarbeiter)) if($row_anzahl = $db->db_fetch_object($result_anzahl)) - $anzahl = $row_anzahl->anzahl; -echo '
    Mitarbeiter: '.$anzahl; + $anzahl_ma = $row_anzahl->anzahl; +echo '
    Mitarbeiter: '.$anzahl_ma; //anzahl studenten $qry_anzahl_studenten = " @@ -345,11 +345,11 @@ $qry_anzahl_studenten = " WHERE person_id=tbl_person.person_id ORDER BY datum desc, person_fotostatus_id desc LIMIT 1) AND uid NOT IN (SELECT mitarbeiter_uid FROM public.tbl_mitarbeiter) "; -$anzahl = ''; +$anzahl_std = ''; if($result_anzahl = $db->db_query($qry_anzahl_studenten)) if($row_anzahl = $db->db_fetch_object($result_anzahl)) - $anzahl = $row_anzahl->anzahl; -echo '
    Studenten: '.$anzahl; + $anzahl_std = $row_anzahl->anzahl; +echo '
    Studenten: '.$anzahl_std; //anzahl gesamt $qry_anzahl_gesamt = " @@ -366,11 +366,11 @@ $qry_anzahl_gesamt = " AND 'abgewiesen' NOT IN (SELECT fotostatus_kurzbz FROM public.tbl_person_fotostatus WHERE person_id=tbl_person.person_id ORDER BY datum desc, person_fotostatus_id desc LIMIT 1) "; -$anzahl = ''; +$anzahl_gesamt = ''; if($result_anzahl = $db->db_query($qry_anzahl_gesamt)) if($row_anzahl = $db->db_fetch_object($result_anzahl)) - $anzahl = $row_anzahl->anzahl; - echo '
    Gesamt: '.$anzahl.'
    '; + $anzahl_gesamt = $row_anzahl->anzahl; + echo '
    Gesamt: '.$anzahl_gesamt.'
    '; echo '
    '; @@ -403,7 +403,7 @@ else { // Wenn es weniger als 100 Eintraege sind kommen die Bilder nicht mehr Random, da es sonst // vorkommen kann, dass kein Ergebnis geliefert wird - if($anzahl>100) + if(isset($_GET['ansicht']) && (($_GET['ansicht'] == 'mitarbeiter' && $anzahl_ma>100) || ($_GET['ansicht'] == 'studenten' && $anzahl_std>100)) || ($ansicht == '' && $anzahl_gesamt>100)) { // Zufaellige Reihenfolge $qry.=" AND random() <0.05"; @@ -438,7 +438,7 @@ if($result = $db->db_query($qry))
    Reihung RT Gesamt InterviewbogenAnmerkung/Prio Status {{aqr.choosenStuds}}/{{aqr.selectedStudienplatz.apz}} {{aqr.choosenStuds}}/Keine APZ{{stud.seqPlace}} {{stud.rt_gesamtpunkte}} {{stud.interviewbogen?'vorhanden':'nicht vorhanden'}}{{stud.anmerkung}} {{stud.laststatus}} @@ -441,6 +443,7 @@ Reihung RT Gesamt InterviewbogenAnmerkung/Prio Status
    {{stud.seqPlace}} {{stud.rt_gesamtpunkte}} {{stud.interviewbogen?'vorhanden':'nicht vorhanden'}}{{stud.anmerkung}} {{stud.laststatus}} From c8e743d7cd9d1eeff4d10c3489460abbafbfd210 Mon Sep 17 00:00:00 2001 From: Stefan Puraner Date: Fri, 10 Jun 2016 14:49:34 +0200 Subject: [PATCH 053/114] added stg bezeichnung --- rdf/lehrveranstaltungszeugnis_ktu.rdf.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/rdf/lehrveranstaltungszeugnis_ktu.rdf.php b/rdf/lehrveranstaltungszeugnis_ktu.rdf.php index e632a92e6..28b3036c6 100755 --- a/rdf/lehrveranstaltungszeugnis_ktu.rdf.php +++ b/rdf/lehrveranstaltungszeugnis_ktu.rdf.php @@ -300,6 +300,8 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml") $stg = new studiengang(); $stg->load($lvstg); + + $xml .= " ".$stg_oe_obj->bezeichnung.""; $xml .= " ".$stg->bezeichnung.""; $xml .= " ".$stg->typ.""; $xml .= " ".sprintf('%04s',$lvstg).""; From c57b84d10cb8c69f60a21bf2243a23221a5566b6 Mon Sep 17 00:00:00 2001 From: Andreas Moik Date: Tue, 14 Jun 2016 10:11:16 +0200 Subject: [PATCH 054/114] implemented the aliquote reduction --- vilesci/personen/aliquote_reduktion.php | 87 ++++++++++++++++++++++--- 1 file changed, 77 insertions(+), 10 deletions(-) diff --git a/vilesci/personen/aliquote_reduktion.php b/vilesci/personen/aliquote_reduktion.php index 6cc58cce1..b46ee84a1 100644 --- a/vilesci/personen/aliquote_reduktion.php +++ b/vilesci/personen/aliquote_reduktion.php @@ -74,6 +74,7 @@ aqr.studiengaenge = []; aqr.studiensemester = []; aqr.studienplaetze = []; + aqr.zgvElems = []; aqr.actualSequence = 1; SERVICE_TARGET = "aliquote_reduktion.json.php"; @@ -112,6 +113,12 @@ if(!confirm("Es wurden zu viel Studenten gewählt!")) return; } + else + { + if(!confirm("Sind Sie sicher, dass Sie die ausgewählten Personen aufnehmen wollen?")) + return; + } + var prestudent_ids = []; aqr.studenten.forEach(function(i) @@ -190,7 +197,7 @@ aqr.studenten=res; aqr.studenten.forEach(function(i) { - if(i.laststatus=='Wartender'||i.laststatus=='Bewerber') + if((i.laststatus=='Wartender'||i.laststatus=='Bewerber') && i.rt_gesamtpunkte !== null) i.applicant = true; else if(i.laststatus=='Student'||i.laststatus=='Aufgenommener') i.selected=true; @@ -212,12 +219,12 @@ return ret; } - aqr.getAcceptedCount = function() + aqr.getAcceptedCount = function(zgvGruppe) { var ret = 0; aqr.studenten.forEach(function(i) { - if(i.laststatus=='Student'||i.laststatus=='Aufgenommener') + if((i.laststatus=='Student'||i.laststatus=='Aufgenommener') && (zgvGruppe === undefined || zgvGruppe === i.bezeichnung)) ret++; }); return ret; @@ -225,24 +232,55 @@ aqr.doPreselection = function() { - if(parseInt(aqr.selectedStudienplatz.apz) >= 0) + aqr.zgvElems = []; + if(parseInt(aqr.selectedStudienplatz.apz) >= 0) // we only preselect, if we have an APZ { aqr.studenten.sort(sortStudentenRTP); var zgvs = aqr.getZGVArray(); var neededStudentsCount = aqr.selectedStudienplatz.apz - aqr.getAcceptedCount(); - var perZGV = parseInt(neededStudentsCount / zgvs.length); + var perZGV = aqr.studenten.length; var zgvElems = []; + var allApplicants = []; + + aqr.studenten.forEach(function(j) + { + if(j.applicant) + allApplicants.push(j); + }); zgvs.forEach(function(i) { - zgvElems.push({name:i,needed:perZGV}); + var applicantsFromZGV = []; + aqr.studenten.forEach(function(j) + { + if(j.applicant && j.bezeichnung === i) + applicantsFromZGV.push(j); + }); + + // calculate the aliquote reduction for every ZGV + var percent = applicantsFromZGV.length / allApplicants.length * 100; + var neededFromZGV = (aqr.selectedStudienplatz.apz / 100 * percent) - aqr.getAcceptedCount(i); + + if(neededFromZGV < 0) + neededFromZGV = 0; + + zgvElems.push({name:i, needed:neededFromZGV, percent:percent, accepted: aqr.getAcceptedCount(i), neededSum: (aqr.selectedStudienplatz.apz / 100 * percent)}); }); - var residual = perZGV * zgvs.length; + aqr.zgvElems = JSON.parse(JSON.stringify(zgvElems)); + + // calculate the already distributed students + var residual = 0; + zgvElems.forEach(function(i) + { + residual += i.needed; + }); + + // calculate the difference from needed to already distributed var resDiff = neededStudentsCount - residual; // distribute the remaining places on the present ZGVs - while(resDiff > 0) + while(resDiff > 0 && zgvElems.length > 0/*if there are no zgvs(to prevent a deadlock)*/) { zgvElems.forEach(function(i) { @@ -284,9 +322,10 @@ if( aqr.studenten[j].laststatus!='Abgewiesener' && aqr.studenten[j].laststatus!='Abbrecher' - && zgvElems[i].needed > 0 + && parseInt(zgvElems[i].needed) > 0 && aqr.studenten[j].bezeichnung == zgvElems[i].name - && !aqr.studenten[j].seqPlace) + && !aqr.studenten[j].seqPlace + && !aqr.studenten[j].selected) { aqr.setSequence(aqr.studenten[j]); zgvElems[i].needed --; @@ -431,6 +470,34 @@ +

    ZGV Informationen

    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NameProzentInsgesamt benötigtBereits aufgenommenNoch benötigte Personen
    {{zgv.name}}{{zgv.percent | number: 2}}%{{zgv.neededSum | parseInt}}{{zgv.accepted}}{{zgv.needed | parseInt}}
    Summe{{aqr.selectedStudienplatz.apz}}{{aqr.getAcceptedCount()}}{{aqr.selectedStudienplatz.apz - aqr.getAcceptedCount()}}

    Bereits aufgenommene

    From 7ba5026436eb969c3a7a408876eab93c3553a5dc Mon Sep 17 00:00:00 2001 From: oesi Date: Tue, 14 Jun 2016 17:09:49 +0200 Subject: [PATCH 055/114] =?UTF-8?q?Personen=20ohne=20RTGesamtpunkte=20werd?= =?UTF-8?q?en=20nicht=20ber=C3=BCcksichtigt=20Wenn=20zu=20weniger=20Bewerb?= =?UTF-8?q?er=20als=20APZ=20vorhanden=20sind=20wird=20die=20Anzahl=20der?= =?UTF-8?q?=20Personen=20aufgrund=20der=20Gesamtzahl=20der=20Bewerber=20be?= =?UTF-8?q?rechnet=20anstatt=20anhand=20der=20APZ?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- vilesci/personen/aliquote_reduktion.php | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/vilesci/personen/aliquote_reduktion.php b/vilesci/personen/aliquote_reduktion.php index b46ee84a1..dd2f86df2 100644 --- a/vilesci/personen/aliquote_reduktion.php +++ b/vilesci/personen/aliquote_reduktion.php @@ -197,7 +197,7 @@ aqr.studenten=res; aqr.studenten.forEach(function(i) { - if((i.laststatus=='Wartender'||i.laststatus=='Bewerber') && i.rt_gesamtpunkte !== null) + if((i.laststatus=='Wartender'||i.laststatus=='Bewerber') && i.rt_gesamtpunkte !== null && i.rt_gesamtpunkte > 0) i.applicant = true; else if(i.laststatus=='Student'||i.laststatus=='Aufgenommener') i.selected=true; @@ -249,6 +249,11 @@ allApplicants.push(j); }); + var applicantCount = aqr.selectedStudienplatz.apz; + if(applicantCount > allApplicants.length) + applicantCount = allApplicants.length; + + zgvs.forEach(function(i) { var applicantsFromZGV = []; @@ -260,12 +265,12 @@ // calculate the aliquote reduction for every ZGV var percent = applicantsFromZGV.length / allApplicants.length * 100; - var neededFromZGV = (aqr.selectedStudienplatz.apz / 100 * percent) - aqr.getAcceptedCount(i); + var neededFromZGV = (applicantCount / 100 * percent) - aqr.getAcceptedCount(i); if(neededFromZGV < 0) neededFromZGV = 0; - zgvElems.push({name:i, needed:neededFromZGV, percent:percent, accepted: aqr.getAcceptedCount(i), neededSum: (aqr.selectedStudienplatz.apz / 100 * percent)}); + zgvElems.push({name:i, needed:neededFromZGV, percent:percent, accepted: aqr.getAcceptedCount(i), neededSum: (applicantCount / 100 * percent)}); }); aqr.zgvElems = JSON.parse(JSON.stringify(zgvElems)); @@ -314,7 +319,7 @@ { var beginNeeded = needed; - //distribute the remainig applicants to the present ZGVs + //distribute the applicants to the present ZGVs for(var i=0; i < zgvElems.length; i++) { for(var j in aqr.studenten) @@ -325,7 +330,8 @@ && parseInt(zgvElems[i].needed) > 0 && aqr.studenten[j].bezeichnung == zgvElems[i].name && !aqr.studenten[j].seqPlace - && !aqr.studenten[j].selected) + && !aqr.studenten[j].selected + && aqr.studenten[j].applicant) { aqr.setSequence(aqr.studenten[j]); zgvElems[i].needed --; @@ -342,7 +348,7 @@ //distribute the rest of the applicants, WITH a ZGV group for(var j in aqr.studenten) { - if(!aqr.studenten[j].selected && aqr.studenten[j].bezeichnung) + if(!aqr.studenten[j].selected && aqr.studenten[j].bezeichnung && aqr.studenten[j].applicant) { aqr.setSequence(aqr.studenten[j]); if(needed > 0 && (aqr.studenten[j].laststatus=='Wartender'||aqr.studenten[j].laststatus=='Bewerber')) @@ -355,7 +361,7 @@ //distribute the rest of the applicants, WITHOUT a ZGV group for(var j in aqr.studenten) { - if(!aqr.studenten[j].selected && !aqr.studenten[j].bezeichnung) + if(!aqr.studenten[j].selected && !aqr.studenten[j].bezeichnung && aqr.studenten[j].applicant) { aqr.setSequence(aqr.studenten[j]); if(needed > 0 && (aqr.studenten[j].laststatus=='Wartender'||aqr.studenten[j].laststatus=='Bewerber')) @@ -490,7 +496,7 @@ - + @@ -499,7 +505,7 @@
    {{zgv.needed | parseInt}}
    SummeGesamt {{aqr.selectedStudienplatz.apz}} {{aqr.getAcceptedCount()}}
    -

    Bereits aufgenommene

    +

    Restliche Studenten

    From a09a892b0b7f3003e64d129608a83df160ec8032 Mon Sep 17 00:00:00 2001 From: oesi Date: Tue, 14 Jun 2016 17:12:41 +0200 Subject: [PATCH 056/114] =?UTF-8?q?Automatische=20Gruppe=20f=C3=BCr=20alle?= =?UTF-8?q?=20Leitungen=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- system/mlists/mlists_generate.php | 36 +++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/system/mlists/mlists_generate.php b/system/mlists/mlists_generate.php index 56465f353..211431324 100644 --- a/system/mlists/mlists_generate.php +++ b/system/mlists/mlists_generate.php @@ -1702,6 +1702,42 @@ $error_msg=''; $error_msg.=$db->db_last_error().' '.$sql_querys; } + $sql_query.=" AND uid NOT IN (SELECT uid FROM public.tbl_benutzergruppe WHERE gruppe_kurzbz='$mlist_name')"; + if(!($result_oe = $db->db_query($sql_query))) + $error_msg.=$db->db_last_error().' '.$sql_query; + // Personen holen die nicht im Verteiler sind + while($row_oe = $db->db_fetch_object($result_oe)) + { + $sql_query="INSERT INTO public.tbl_benutzergruppe(uid, gruppe_kurzbz, insertamum, insertvon) VALUES ('$row_oe->uid','".$mlist_name."', now(), 'mlists_generate')"; + if(!$db->db_query($sql_query)) + { + $error_msg.=$db->db_last_error().$sql_query; + } + } + + // ************************************************************** + // Alle MA mit Funktion Leitung oder stvLeitung oder gfLtg + $mlist_name='TW_LEITUNG'; + + $grp = new gruppe(); + setGeneriert($mlist_name); + + // Personen holen die nicht mehr in den Verteiler gehoeren + echo '
    '.$mlist_name.' wird abgeglichen!'; + flush(); + + $sql_query = "SELECT DISTINCT uid FROM tbl_person JOIN tbl_benutzer + USING (person_id) JOIN tbl_benutzerfunktion USING (uid) + WHERE funktion_kurzbz in('Leitung','stvLtg','gLtg') + AND (tbl_benutzerfunktion.datum_von<=now() OR tbl_benutzerfunktion.datum_von is null) + AND (tbl_benutzerfunktion.datum_bis>=now() OR tbl_benutzerfunktion.datum_bis is null)"; + + $sql_querys="DELETE FROM public.tbl_benutzergruppe WHERE gruppe_kurzbz='$mlist_name' AND uid NOT IN ($sql_query)"; + if(!$db->db_query($sql_querys)) + { + $error_msg.=$db->db_last_error().' '.$sql_querys; + } + $sql_query.=" AND uid NOT IN (SELECT uid FROM public.tbl_benutzergruppe WHERE gruppe_kurzbz='$mlist_name')"; if(!($result_oe = $db->db_query($sql_query))) $error_msg.=$db->db_last_error().' '.$sql_query; From a4fbebbf305b1f066173813371e1bdaa20655db5 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Wed, 15 Jun 2016 00:38:19 +0200 Subject: [PATCH 057/114] layout pruefungsanmeldeliste, ital phrases --- cis/private/lehre/pruefung/pruefungsanmeldung.json.php | 10 ++++++---- .../lehre/pruefung/pruefungsanmeldungen_liste.php | 4 ++-- locale/it-IT/pruefung.php | 4 ++-- 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/cis/private/lehre/pruefung/pruefungsanmeldung.json.php b/cis/private/lehre/pruefung/pruefungsanmeldung.json.php index 90b13f5bc..805fb2409 100755 --- a/cis/private/lehre/pruefung/pruefungsanmeldung.json.php +++ b/cis/private/lehre/pruefung/pruefungsanmeldung.json.php @@ -486,8 +486,8 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) { if($termin->teilnehmer_max > $termin->getNumberOfParticipants() || $termin->teilnehmer_max == NULL) { - $pruefung = new pruefungCis(); - $reihung = $pruefung->getLastOfReihung($_REQUEST["termin_id"]); + $pruefung = new pruefungCis(); + $reihung = $pruefung->getLastOfReihung($_REQUEST["termin_id"]); $anmeldung = new pruefungsanmeldung(); $anmeldung->lehrveranstaltung_id = $_REQUEST["lehrveranstaltung_id"]; $anmeldung->pruefungstermin_id = $_REQUEST["termin_id"]; @@ -500,7 +500,7 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) $konto = new konto(); $creditpoints = $konto->getCreditPoints($uid, $aktStudiensemester); - + if($creditpoints !== false) { if($creditpoints < $lehrveranstaltung->ects) @@ -550,6 +550,8 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) $prestudent->getPrestudenten($person->person_id); $studiensemester = new studiensemester(); $stdsem = $studiensemester->getaktorNext(); + if ($aktStudiensemester) + $stdsem = $aktStudiensemester; if(count($prestudent->result) > 0) { @@ -588,7 +590,7 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) { $anrechungSaveResult = true; } - + if($anrechungSaveResult) { if($anrechnung->anrechnung_id == "") diff --git a/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php b/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php index 85126e44a..bcb256b9b 100755 --- a/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php +++ b/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php @@ -66,7 +66,7 @@ $rechte->getBerechtigungen($uid); min-height: 297mm; padding: 20mm; margin: 10mm auto; - border: 1px #D3D3D3 solid; + border: 1px #ffffff solid; border-radius: 5px; background: white; box-shadow: 0 0 5px rgba(0, 0, 0, 0.1); @@ -75,7 +75,7 @@ $rechte->getBerechtigungen($uid); #subpage { padding: 10mm; - border: 1px black solid; + border: 1px white solid; height: 256mm; outline: 20mm } diff --git a/locale/it-IT/pruefung.php b/locale/it-IT/pruefung.php index e61d6c8f4..f3839a96d 100755 --- a/locale/it-IT/pruefung.php +++ b/locale/it-IT/pruefung.php @@ -46,7 +46,7 @@ $this->phrasen['pruefung/anmeldenMoeglichBis'] = 'Possibilità di iscrizione ent $this->phrasen['pruefung/stornoNichtMehrMoeglich'] = 'Non è più possibile annullare l’iscrizione.'; $this->phrasen['pruefung/zurLvAnmeldung'] = 'iscriversi al corso'; $this->phrasen['pruefung/zuerstPruefungAuswaehlen'] = 'Scegliere prima l’esame.'; -$this->phrasen['pruefung/bemerkungVonLektorHinzugefuegt'] = 'inserito da docente'; +$this->phrasen['pruefung/bemerkungVonLektorHinzugefuegt'] = 'iscrizione da segreteria'; $this->phrasen['pruefung/bestaetigen'] = 'Confermare'; $this->phrasen['pruefung/anmerkungDesStudenten'] = 'Osservazioni dello studente:
    '; $this->phrasen['pruefung/bestaetigt'] = 'confermato'; @@ -102,7 +102,7 @@ $this->phrasen['pruefung/keineLvAngegeben'] = 'Nessun corso definito.'; $this->phrasen['pruefung/kollisionMitAnderemTermin'] = 'Date sovrapposte.'; $this->phrasen['pruefung/terminNichtInDerVergangenheit'] = 'La data dell’appello non è nel passato.'; $this->phrasen['pruefung/keineLehreinheitenVorhanden'] = 'Nessun corso disponibile.'; -$this->phrasen['pruefung/keineAnmeldungenVorhanden'] = 'Nessuna registrazione disponibile.'; +$this->phrasen['pruefung/keineAnmeldungenVorhanden'] = 'Nessuna studente iscritto.'; // anmeldungen Verwalten $this->phrasen['pruefung/anmeldungenVerwaltenTitle'] = 'Gestione delle prenotazioni degli appelli'; From 41f9f5def4154cbd1f08878553d91ef3a124b2e9 Mon Sep 17 00:00:00 2001 From: kindlm Date: Wed, 15 Jun 2016 15:36:42 +0200 Subject: [PATCH 058/114] PDF-Export MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Werden PreStudent-IDs übergeben, wird die Vorlage des betreffenden Studiengangs ermittelt. Beim archivieren von Dokumenten wird nun das Style der DB berücksichtigt --- content/pdfExport.php | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/content/pdfExport.php b/content/pdfExport.php index 460834f13..ef7a4e23a 100755 --- a/content/pdfExport.php +++ b/content/pdfExport.php @@ -70,7 +70,7 @@ else $xsl_stg_kz=$_GET['stg_kz']; else { - // Werden UIDs uebergeben, wird die Vorlage des Studiengangs genommen + // Werden UIDs oder Prestudent_IDs uebergeben, wird die Vorlage des Studiengangs genommen // in dem der 1. Studierende in der Liste ist if(isset($_GET['uid']) && $_GET['uid']!='') { @@ -85,6 +85,19 @@ else $xsl_stg_kz=$student_obj->studiengang_kz; } } + elseif(isset($_GET['prestudent_id']) && $_GET['prestudent_id']!='') + { + if(strstr($_GET['prestudent_id'],';')) + $prestudent_ids = explode(';',$_GET['prestudent_id']); + else + $prestudent_ids[1] = $_GET['prestudent_id']; + + $prestudent_obj = new prestudent(); + if($prestudent_obj->load($prestudent_ids[1])) + { + $xsl_stg_kz=$prestudent_obj->studiengang_kz; + } + } } } if(isset($_GET['xsl_oe_kurzbz'])) @@ -662,7 +675,7 @@ else // Wenn ein Style XSL uebergeben wurde wird ein zweites XML File erstellt mit den // Styleanweisungen und ebenfalls zum Zip hinzugefuegt - if(isset($_GET['style_xsl'])) + if(isset($_GET['style_xsl']) || $vorlage->style!='') { //Wenn die Spalte style in der DB befuellt ist, wird dieses verwendet if($vorlage->style!='') From c4ebb5a395b2c239e3eb25ee05cf64e3ae5da1ae Mon Sep 17 00:00:00 2001 From: kindlm Date: Wed, 15 Jun 2016 16:24:48 +0200 Subject: [PATCH 059/114] Mlists_generate Mailverteiler tw_stgl um StellvertreterInnen erweitert --- system/mlists/mlists_generate.php | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/system/mlists/mlists_generate.php b/system/mlists/mlists_generate.php index 211431324..46ad74f2f 100644 --- a/system/mlists/mlists_generate.php +++ b/system/mlists/mlists_generate.php @@ -233,6 +233,7 @@ $error_msg=''; // ************************************************************** // Studiengangsleiter-Verteiler abgleichen + // Es werden auch StellvertreterInnen hinzugefügt $mlist_name='tw_stgl'; setGeneriert($mlist_name); // Personen holen die nicht mehr in den Verteiler gehoeren @@ -247,9 +248,10 @@ $error_msg=''; JOIN public.tbl_benutzer ON (mitarbeiter_uid=uid) JOIN public.tbl_benutzerfunktion USING(uid) JOIN public.tbl_studiengang USING(oe_kurzbz) - WHERE tbl_benutzer.aktiv AND (funktion_kurzbz='Leitung' OR funktion_kurzbz='gLtg') AND + WHERE tbl_benutzer.aktiv AND (funktion_kurzbz='Leitung' OR funktion_kurzbz='gLtg' OR funktion_kurzbz='stvLtg') AND (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND - (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now()))"; + (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now()) + AND tbl_studiengang.aktiv=true)"; if(!($result = $db->db_query($sql_query))) $error_msg.=$db->db_last_error(); while($row=$db->db_fetch_object($result)) @@ -262,7 +264,7 @@ $error_msg=''; } // Personen holen die nicht im Verteiler sind echo '
    '; - $sql_query="SELECT mitarbeiter_uid AS uid + $sql_query="SELECT DISTINCT mitarbeiter_uid AS uid FROM public.tbl_mitarbeiter JOIN public.tbl_benutzer ON (mitarbeiter_uid=uid) @@ -270,10 +272,11 @@ $error_msg=''; JOIN public.tbl_studiengang USING(oe_kurzbz) WHERE tbl_benutzer.aktiv AND - (tbl_benutzerfunktion.funktion_kurzbz='Leitung' OR funktion_kurzbz='gLtg') AND + (tbl_benutzerfunktion.funktion_kurzbz='Leitung' OR funktion_kurzbz='gLtg' OR funktion_kurzbz='stvLtg') AND (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now()) AND - mitarbeiter_uid NOT LIKE '\\\\_%' AND mitarbeiter_uid NOT IN (SELECT uid FROM public.tbl_benutzergruppe WHERE UPPER(gruppe_kurzbz)=UPPER('$mlist_name'))"; + mitarbeiter_uid NOT LIKE '\\\\_%' AND mitarbeiter_uid NOT IN (SELECT uid FROM public.tbl_benutzergruppe WHERE UPPER(gruppe_kurzbz)=UPPER('$mlist_name')) + AND tbl_studiengang.aktiv=true"; if(!($result = $db->db_query($sql_query))) $error_msg.=$db->db_last_error(); while($row=$db->db_fetch_object($result)) From f2b45b7f2aa71d7e61282e75e057de4f2278e06e Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Sun, 19 Jun 2016 19:03:11 +0200 Subject: [PATCH 060/114] ital phrases --- .../lehre/pruefung/pruefungsbewertung.js.php | 20 +++++++++---------- locale/de-AT/pruefung.php | 2 ++ locale/en-US/pruefung.php | 2 ++ locale/it-IT/pruefung.php | 3 +++ 4 files changed, 17 insertions(+), 10 deletions(-) mode change 100644 => 100755 cis/private/lehre/pruefung/pruefungsbewertung.js.php diff --git a/cis/private/lehre/pruefung/pruefungsbewertung.js.php b/cis/private/lehre/pruefung/pruefungsbewertung.js.php old mode 100644 new mode 100755 index e6369eb97..f5871cd9c --- a/cis/private/lehre/pruefung/pruefungsbewertung.js.php +++ b/cis/private/lehre/pruefung/pruefungsbewertung.js.php @@ -96,8 +96,8 @@ function showTeilnehmer(pruefungstermin_id, lehrveranstaltung_id, lehrveranstalt { $("#modalOverlay").addClass("modalOverlay"); $("#anmeldeDaten").empty(); - $("#anmeldungen").children("h2").text("Bewertungen zu "+lehrveranstaltung+" ("+datum+")"); - var noten = ""; $.ajax({ dataType: 'json', url: "./pruefungsbewertung.json.php", @@ -138,15 +138,15 @@ function showTeilnehmer(pruefungstermin_id, lehrveranstaltung_id, lehrveranstalt data.result.forEach(function(d) { if(d.status_kurzbz === "bestaetigt") - { - var datum = d.von.split(" "); + { + var datum = d.von.split(" "); if(d.pruefung.note===null) { - entry = "
    "+d.student.vorname+" "+d.student.nachname+"
    "+notenSelect+"
    "; + entry = "
    "+d.student.vorname+" "+d.student.nachname+"
    "+notenSelect+"'/>
    ' />
    "; } else { - entry = "
    "+d.student.vorname+" "+d.student.nachname+"
    "+notenSelect+"
    "; + entry = "
    "+d.student.vorname+" "+d.student.nachname+"
    "+notenSelect+"'/>
    ' value='"+d.pruefung.anmerkung+"' />
    "; } $("#anmeldeDaten").append(entry); if(d.pruefung.note!==null) @@ -199,7 +199,7 @@ function saveBeurteilung(ele, datum, pruefungsanmeldung_id, pruefung_id, lehrver return false; } var anmerkung = $("#note_anmerkung_"+student_uid).val(); - + $.ajax({ dataType: 'json', url: "./pruefungsbewertung.json.php", @@ -229,7 +229,7 @@ function saveBeurteilung(ele, datum, pruefungsanmeldung_id, pruefung_id, lehrver $(ele).parent().find("select").val(null); } }).complete(function(event, xhr, settings){ - + }); } @@ -270,8 +270,8 @@ function updateBeurteilung(ele, pruefung_id) { messageBox("message",data.errormsg, "red", "highlight", 1000); } - - + + }).complete(function(event, xhr, settings){ }); diff --git a/locale/de-AT/pruefung.php b/locale/de-AT/pruefung.php index be9bb41c7..fbf7ab6a3 100755 --- a/locale/de-AT/pruefung.php +++ b/locale/de-AT/pruefung.php @@ -73,6 +73,8 @@ $this->phrasen['pruefung/lvErfolgreichEntfernt'] = 'Lehrveranstaltung erfolgreic $this->phrasen['pruefung/pruefungStorniert'] = 'Prüfung storniert'; $this->phrasen['pruefung/terminGeloescht'] = 'Termin gelöscht'; $this->phrasen['pruefung/unbegrenzt'] = 'unbegrenzt'; +$this->phrasen['pruefung/bewertungenZu'] = 'Bewertungen zu'; +$this->phrasen['pruefung/keineAuswahl'] = 'Keine Auswahl'; // pruefungsbewertung $this->phrasen['pruefung/pruefungsbewertungTitle'] = 'Prüfungsbewertung'; diff --git a/locale/en-US/pruefung.php b/locale/en-US/pruefung.php index 9c7eb8343..ca32086a8 100755 --- a/locale/en-US/pruefung.php +++ b/locale/en-US/pruefung.php @@ -73,6 +73,8 @@ $this->phrasen['pruefung/lvErfolgreichEntfernt'] = 'Lehrveranstaltung erfolgreic $this->phrasen['pruefung/pruefungStorniert'] = 'Prüfung storniert'; $this->phrasen['pruefung/terminGeloescht'] = 'Termin gelöscht'; $this->phrasen['pruefung/unbegrenzt'] = 'unlimited'; +$this->phrasen['pruefung/bewertungenZu'] = 'Bewertungen zu'; +$this->phrasen['pruefung/keineAuswahl'] = 'Keine Auswahl'; // pruefungsbewertung $this->phrasen['pruefung/pruefungsbewertungTitle'] = 'Prüfungsbewertung'; diff --git a/locale/it-IT/pruefung.php b/locale/it-IT/pruefung.php index f3839a96d..90b7a7ad7 100755 --- a/locale/it-IT/pruefung.php +++ b/locale/it-IT/pruefung.php @@ -73,6 +73,9 @@ $this->phrasen['pruefung/lvErfolgreichEntfernt'] = 'Insegnamento tolto con succe $this->phrasen['pruefung/pruefungStorniert'] = 'Esame cancellato'; $this->phrasen['pruefung/terminGeloescht'] = 'Appello eliminato'; $this->phrasen['pruefung/unbegrenzt'] = ''; +$this->phrasen['pruefung/bewertungenZu'] = 'Bewertungen zu'; +$this->phrasen['pruefung/keineAuswahl'] = 'Keine Auswahl'; + // pruefungsbewertung $this->phrasen['pruefung/pruefungsbewertungTitle'] = 'Voti d’esame'; $this->phrasen['pruefung/pruefungsbewertungAnmeldungen'] = 'Iscrizioni'; From 7758fa38075ffed679d5e3e49d01b52d988228da Mon Sep 17 00:00:00 2001 From: Andreas Moik Date: Mon, 20 Jun 2016 14:46:55 +0200 Subject: [PATCH 061/114] fixed timestamp bug in eventkalender --- include/jahresplan.class.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/include/jahresplan.class.php b/include/jahresplan.class.php index 9977730b8..a3bff5f29 100644 --- a/include/jahresplan.class.php +++ b/include/jahresplan.class.php @@ -548,8 +548,10 @@ class jahresplan extends basis_db $qry.=", to_char(tbl_veranstaltung.start, 'Q') as \"start_quartal\" "; $qry.=", to_char(tbl_veranstaltung.ende, 'Q') as \"ende_quartal\" "; - $qry.=", EXTRACT(EPOCH FROM tbl_veranstaltung.start) as \"start_timestamp\" "; - $qry.=", EXTRACT(EPOCH FROM tbl_veranstaltung.ende) as \"ende_timestamp\" "; + $qry.=", EXTRACT(EPOCH FROM tbl_veranstaltung.start::TIMESTAMP WITHOUT TIME +ZONE at time zone 'CEST' ) as \"start_timestamp\" "; + $qry.=", EXTRACT(EPOCH FROM tbl_veranstaltung.ende::TIMESTAMP WITHOUT TIME +ZONE at time zone 'CEST' ) as \"ende_timestamp\" "; $qry.=", to_char(tbl_veranstaltung.start, 'DD.MM.YYYY') as \"start_datum\" "; From fab06f9ddbde45e34bffbe91a0fc3592c9f3c7cb Mon Sep 17 00:00:00 2001 From: oesi Date: Tue, 21 Jun 2016 14:30:11 +0200 Subject: [PATCH 062/114] =?UTF-8?q?Neue=20Funktionen=20f=C3=BCr=20Zugriff?= =?UTF-8?q?=20auf=20Studienplaene=20hinzguef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- include/lehrveranstaltung.class.php | 7 +- include/studiengang.class.php | 206 ++++++++++++++++++---------- include/studienordnung.class.php | 12 +- include/studienplan.class.php | 71 +++++----- locale/de-AT/lehre.php | 3 + 5 files changed, 188 insertions(+), 111 deletions(-) diff --git a/include/lehrveranstaltung.class.php b/include/lehrveranstaltung.class.php index ec8c272a4..40b8f64f7 100755 --- a/include/lehrveranstaltung.class.php +++ b/include/lehrveranstaltung.class.php @@ -1177,7 +1177,7 @@ class lehrveranstaltung extends basis_db * @param $semeser Semester optional * @return boolean true wenn ok, false im Fehlerfall */ - public function loadLehrveranstaltungStudienplan($studienplan_id, $semester = null) + public function loadLehrveranstaltungStudienplan($studienplan_id, $semester = null, $order=null) { if (!is_numeric($studienplan_id) || $studienplan_id === '') { @@ -1204,7 +1204,10 @@ class lehrveranstaltung extends basis_db { $qry.=" AND tbl_studienplan_lehrveranstaltung.semester=" . $this->db_add_param($semester, FHC_INTEGER); } - $qry.=" ORDER BY stpllv_sort, semester, sort"; + if(is_null($order)) + $qry.=" ORDER BY stpllv_sort, semester, sort"; + else + $qry.=' ORDER BY '.$order; $this->lehrveranstaltungen = array(); if ($result = $this->db_query($qry)) { diff --git a/include/studiengang.class.php b/include/studiengang.class.php index 00317acf8..73c35f4b5 100755 --- a/include/studiengang.class.php +++ b/include/studiengang.class.php @@ -16,15 +16,15 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. * * Authors: Christian Paminger , - * Andreas Oesterreicher , - * Rudolf Hangl and - * Gerald Raab . + * Andreas Oesterreicher , + * Rudolf Hangl and + * Gerald Raab . */ require_once(dirname(__FILE__).'/basis_db.class.php'); class studiengang extends basis_db { - public $new; // boolean + public $new; // boolean public $result = array(); // studiengang Objekt public $studiengang_kz; // integer @@ -63,7 +63,7 @@ class studiengang extends basis_db public $projektarbeit_note_anzeige; // boolean public $bezeichnung_arr = array(); - public $beschreibung; + public $beschreibung; /** * Konstruktor @@ -75,13 +75,6 @@ class studiengang extends basis_db if(!is_null($studiengang_kz)) $this->load($studiengang_kz); - - //$this->getAllTypes(); -/* $this->studiengang_typ_arr["b"] = "Bachelor"; - $this->studiengang_typ_arr["d"] = "Diplom"; - $this->studiengang_typ_arr["m"] = "Master"; - $this->studiengang_typ_arr["l"] = "LLL"; - $this->studiengang_typ_arr["e"] = "Erhalter"; */ } public function __get($value) @@ -234,22 +227,16 @@ class studiengang extends basis_db /** * Gibt alle Studiengaenge zurueck, fuer die man sich online bewerben kann - * @param array $studiensemester_kurzbz default: null Array aus Studiensemestern fuer die man sich onlinebewerben kann * @return boolean */ - public function getAllForBewerbung($studiensemester_kurzbz_arr=null) + public function getAllForBewerbung() { $qry = 'SELECT DISTINCT studiengang_kz, typ, organisationseinheittyp_kurzbz, studiengangbezeichnung, standort, studiengangbezeichnung_englisch, lgartcode, tbl_lgartcode.bezeichnung ' . 'FROM lehre.vw_studienplan ' . 'LEFT JOIN bis.tbl_lgartcode USING (lgartcode) ' . 'WHERE onlinebewerbung IS TRUE ' . 'AND aktiv IS TRUE '; - - /*if (!is_null($studiensemester_kurzbz_arr)) - { - $studiensemester_kurzbz_arr = $this->implode4SQL($studiensemester_kurzbz_arr); - $qry .= ' AND studiensemester_kurzbz IN('.$studiensemester_kurzbz_arr.')'; - }*/ + $qry .= ' ORDER BY typ, studiengangbezeichnung, tbl_lgartcode.bezeichnung ASC'; if(!$result = $this->db_query($qry)) @@ -693,56 +680,62 @@ class studiengang extends basis_db return $result; } - public function getStudiengangTyp($typ) - { - $qry = "SELECT * FROM public.tbl_studiengangstyp WHERE typ =".$this->db_add_param($typ,FHC_STRING).";"; + /** + * Laedt einen Studiengangstyp + * + * @param $typ Studiengangstyp + * @return boolean true wenn erfolgreich geladen, false im Fehlerfall + */ + public function getStudiengangTyp($typ) + { + $qry = "SELECT * FROM public.tbl_studiengangstyp WHERE typ =".$this->db_add_param($typ,FHC_STRING).";"; - if($result = $this->db_query($qry)) - { - if($row = $this->db_fetch_object($result)) - { - $this->typ = $row->typ; - $this->bezeichnung = $row->bezeichnung; - $this->beschreibung = $row->beschreibung; - } + if($result = $this->db_query($qry)) + { + if($row = $this->db_fetch_object($result)) + { + $this->typ = $row->typ; + $this->bezeichnung = $row->bezeichnung; + $this->beschreibung = $row->beschreibung; + } - return true; - } - else - { - $this->errormsg = "Fehler bei der Abfrage aufgetreten"; - return false; - } - } + return true; + } + else + { + $this->errormsg = "Fehler bei der Abfrage aufgetreten"; + return false; + } + } - /** - * @param $studiengaenge array - * @return array|bool - */ - public function getTypes($studiengaenge) { + /** + * @param $studiengaenge array + * @return array|bool + */ + public function getTypes($studiengaenge) { - $qry = 'SELECT distinct typ ' . - 'FROM public.tbl_studiengang ' . - 'WHERE studiengang_kz IN (' . implode(',', $studiengaenge) . ')'; + $qry = 'SELECT distinct typ ' . + 'FROM public.tbl_studiengang ' . + 'WHERE studiengang_kz IN (' . implode(',', $studiengaenge) . ')'; - $types = array(); + $types = array(); - if($result = $this->db_query($qry)) - { - while($row = $this->db_fetch_object($result)) { + if($result = $this->db_query($qry)) + { + while($row = $this->db_fetch_object($result)) { - $types[] = $row->typ; + $types[] = $row->typ; - } + } - return $types; - } - else - { - $this->errormsg = "Fehler bei der Abfrage aufgetreten"; - return false; - } - } + return $types; + } + else + { + $this->errormsg = "Fehler bei der Abfrage aufgetreten"; + return false; + } + } /** * Sucht nach einem Studiengang @@ -751,13 +744,13 @@ class studiengang extends basis_db */ public function search($searchItem) { - $qry = 'SELECT * FROM public.tbl_studiengang WHERE - LOWER(bezeichnung) LIKE LOWER(\'%'.$this->db_escape((implode(' ',$searchItem))).'%\') OR - LOWER(english) LIKE LOWER(\'%'.$this->db_escape((implode(' ',$searchItem))).'%\') - ORDER BY typ,bezeichnung;'; + $qry = 'SELECT * FROM public.tbl_studiengang WHERE + LOWER(bezeichnung) LIKE LOWER(\'%'.$this->db_escape((implode(' ',$searchItem))).'%\') OR + LOWER(english) LIKE LOWER(\'%'.$this->db_escape((implode(' ',$searchItem))).'%\') + ORDER BY typ,bezeichnung;'; - if($this->db_query($qry)) - { + if($this->db_query($qry)) + { while($row = $this->db_fetch_object()) { $obj = new studiengang(); @@ -799,12 +792,12 @@ class studiengang extends basis_db $this->result[] = $obj; } return true; - } - else - { + } + else + { $this->errormsg = 'Fehler beim Laden des Studiengangs'; return false; - } + } } /** @@ -911,4 +904,75 @@ class studiengang extends basis_db return false; } } + + /** + * Laedt die Studiengänge die innerhalb eines Studiensemesters gültig sind + * @param $studiensemester_kurzbz + */ + public function loadStudiengangFromStudiensemester($studiensemester_kurzbz) + { + $qry = "SELECT + distinct tbl_studiengang.* + FROM + public.tbl_studiengang + JOIN lehre.tbl_studienordnung USING(studiengang_kz) + JOIN lehre.tbl_studienplan USING(studienordnung_id) + JOIN lehre.tbl_studienplan_semester USING(studienplan_id) + WHERE + tbl_studienplan_semester.studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz)." + ORDER BY + typ, kurzbz"; + + if($this->db_query($qry)) + { + while($row = $this->db_fetch_object()) + { + $obj = new studiengang(); + + $obj->studiengang_kz = $row->studiengang_kz; + $obj->kurzbz = $row->kurzbz; + $obj->kurzbzlang = $row->kurzbzlang; + $obj->bezeichnung = $row->bezeichnung; + $obj->english = $row->english; + $obj->typ = $row->typ; + $obj->farbe = $row->farbe; + $obj->email = $row->email; + $obj->max_semester = $row->max_semester; + $obj->max_verband = $row->max_verband; + $obj->max_gruppe = $row->max_gruppe; + $obj->erhalter_kz = $row->erhalter_kz; + $obj->bescheid = $row->bescheid; + $obj->bescheidbgbl1 = $row->bescheidbgbl1; + $obj->bescheidbgbl2 = $row->bescheidbgbl2; + $obj->bescheidgz = $row->bescheidgz; + $obj->bescheidvom = $row->bescheidvom; + $obj->ext_id = $row->ext_id; + $obj->kuerzel = mb_strtoupper($row->typ . $row->kurzbz); + $obj->orgform_kurzbz = $row->orgform_kurzbz; + $obj->zusatzinfo_html = $row->zusatzinfo_html; + $obj->sprache = $row->sprache; + $obj->testtool_sprachwahl = $this->db_parse_bool($row->testtool_sprachwahl); + $obj->studienplaetze = $row->studienplaetze; + $obj->oe_kurzbz = $row->oe_kurzbz; + $obj->lgartcode = $row->lgartcode; + $obj->telefon = $row->telefon; + $obj->titelbescheidvom = $row->titelbescheidvom; + $obj->onlinebewerbung = $this->db_parse_bool($row->onlinebewerbung); + $obj->moodle = $this->db_parse_bool($row->moodle); + $obj->mischform = $this->db_parse_bool($row->mischform); + $obj->projektarbeit_note_anzeige = $this->db_parse_bool($row->projektarbeit_note_anzeige); + + $obj->bezeichnung_arr['German'] = $obj->bezeichnung; + $obj->bezeichnung_arr['English'] = $obj->english; + + $this->result[] = $obj; + } + return true; + } + else + { + $this->errormsg = "Fehler bei der Datenbankabfrage aufgetreten."; + return false; + } + } } diff --git a/include/studienordnung.class.php b/include/studienordnung.class.php index 73c05709b..2dbf270f2 100644 --- a/include/studienordnung.class.php +++ b/include/studienordnung.class.php @@ -149,24 +149,30 @@ class studienordnung extends basis_db if(is_null($studiensemester_kurzbz)) { - $qry = 'SELECT sto.*, s.bezeichnung as status_bezeichnung FROM lehre.tbl_studienordnung sto + $qry = 'SELECT sto.*, s.bezeichnung as status_bezeichnung, tbl_studiensemester.start as gueltig_startdatum + FROM lehre.tbl_studienordnung sto LEFT JOIN lehre.tbl_studienordnungstatus s USING(status_kurzbz) + LEFT JOIN public.tbl_studiensemester ON(sto.gueltigvon=tbl_studiensemester.studiensemester_kurzbz) WHERE studiengang_kz='.$this->db_add_param($studiengang_kz, FHC_INTEGER, false); } else { - $qry = 'SELECT distinct sto.*, s.bezeichnung as status_bezeichnung, sem.* FROM lehre.tbl_studienordnung sto + $qry = 'SELECT distinct sto.*, s.bezeichnung as status_bezeichnung, sem.*, tbl_studiensemester.start as gueltig_startdatum + 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) + LEFT JOIN public.tbl_studiensemester ON(sto.gueltigvon=tbl_studiensemester.studiensemester_kurzbz) WHERE studiengang_kz='.$this->db_add_param($studiengang_kz, FHC_INTEGER, false); if (!is_null($studiensemester_kurzbz)) - $qry.=" AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz, FHC_STRING,false); + $qry.=" AND sem.studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz, FHC_STRING,false); if (!is_null($semester)) $qry.=" AND semester=".$this->db_add_param($semester, FHC_INTEGER,false); } + $qry.=" ORDER BY gueltig_startdatum desc"; + if(!$this->db_query($qry)) { $this->errormsg = 'Fehler bei einer Datenbankabfrage'; diff --git a/include/studienplan.class.php b/include/studienplan.class.php index 9cc117d85..f71c37d2a 100644 --- a/include/studienplan.class.php +++ b/include/studienplan.class.php @@ -157,6 +157,7 @@ class studienplan extends basis_db if(!is_null($orgform_kurzbz)) $qry.=" AND orgform_kurzbz=".$this->db_add_param($orgform_kurzbz); + $qry.=" ORDER BY bezeichnung"; if($this->db_query($qry)) { @@ -703,42 +704,42 @@ class studienplan extends basis_db function getStudienplaeneFromSem($studiengang_kz, $studiensemester_kurzbz, $ausbildungssemester="", $orgform_kurzbz = "") { $qry = "SELECT - studienplan_id, - studienordnung_id, - orgform_kurzbz, - tbl_studienplan.version AS version_studienplan, - tbl_studienplan.bezeichnung AS bezeichnung_studienplan, - regelstudiendauer, - sprache, - aktiv, - semesterwochen, - testtool_sprachwahl, - tbl_studienplan.insertamum AS insertamum_studienplan, - tbl_studienplan.insertvon AS insertvon_studienplan, - tbl_studienplan.updateamum AS updateamum_studienplan, - tbl_studienplan.updatevon AS updatevon_studienplan, - ects_stpl, - pflicht_sws, - pflicht_lvs, - studiengang_kz, + studienplan_id, + studienordnung_id, + orgform_kurzbz, + tbl_studienplan.version AS version_studienplan, + tbl_studienplan.bezeichnung AS bezeichnung_studienplan, + regelstudiendauer, + sprache, + aktiv, + semesterwochen, + testtool_sprachwahl, + tbl_studienplan.insertamum AS insertamum_studienplan, + tbl_studienplan.insertvon AS insertvon_studienplan, + tbl_studienplan.updateamum AS updateamum_studienplan, + tbl_studienplan.updatevon AS updatevon_studienplan, + ects_stpl, + pflicht_sws, + pflicht_lvs, + studiengang_kz, tbl_studienordnung.version AS version_studienordnung, - gueltigvon, - gueltigbis, - tbl_studienordnung.bezeichnung AS bezeichnung_studienordnung, - ects, - studiengangbezeichnung, - studiengangbezeichnung_englisch, - studiengangkurzbzlang, - akadgrad_id, - tbl_studienordnung.insertamum AS insertamum_studienordnung, - tbl_studienordnung.insertvon AS insertvon_studienordnung, - tbl_studienordnung.updateamum AS updateamum_studienordnung, - tbl_studienordnung.updatevon AS updatevon_studienordnung, - status_kurzbz, - standort_id, - studienplan_semester_id, - studiensemester_kurzbz, - semester + gueltigvon, + gueltigbis, + tbl_studienordnung.bezeichnung AS bezeichnung_studienordnung, + ects, + studiengangbezeichnung, + studiengangbezeichnung_englisch, + studiengangkurzbzlang, + akadgrad_id, + tbl_studienordnung.insertamum AS insertamum_studienordnung, + tbl_studienordnung.insertvon AS insertvon_studienordnung, + tbl_studienordnung.updateamum AS updateamum_studienordnung, + tbl_studienordnung.updatevon AS updatevon_studienordnung, + status_kurzbz, + standort_id, + studienplan_semester_id, + studiensemester_kurzbz, + semester FROM lehre.tbl_studienplan JOIN lehre.tbl_studienordnung USING(studienordnung_id) diff --git a/locale/de-AT/lehre.php b/locale/de-AT/lehre.php index 97f73c35a..69a144ca5 100755 --- a/locale/de-AT/lehre.php +++ b/locale/de-AT/lehre.php @@ -41,4 +41,7 @@ $this->phrasen['lehre/AbmeldungErfolgreich']='Sie wurden erfolgreich von der Leh $this->phrasen['lehre/AbmeldungAusGruppeNichtMoeglich']='Sie können sich nicht von dieser Lehrveranstaltung abmelden'; $this->phrasen['lehre/confirmAbmeldung']='Wollen Sie sich wirklich von der Lehrveranstaltung "%s" abmelden?'; $this->phrasen['lehre/nichtzugeteilt']='Sie sind nicht zu dieser Lehrveranstaltung zugeteilt'; + +$this->phrasen['lehre/studienordnung']='Studienordnung'; +$this->phrasen['lehre/studienplan']='Studienplan'; ?> From 3c93439955aefcfe93b28257f5560cc507be9872 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Tue, 21 Jun 2016 15:09:49 +0200 Subject: [PATCH 063/114] ital phrases --- locale/it-IT/pruefung.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/locale/it-IT/pruefung.php b/locale/it-IT/pruefung.php index 90b7a7ad7..20a8c92f0 100755 --- a/locale/it-IT/pruefung.php +++ b/locale/it-IT/pruefung.php @@ -73,8 +73,8 @@ $this->phrasen['pruefung/lvErfolgreichEntfernt'] = 'Insegnamento tolto con succe $this->phrasen['pruefung/pruefungStorniert'] = 'Esame cancellato'; $this->phrasen['pruefung/terminGeloescht'] = 'Appello eliminato'; $this->phrasen['pruefung/unbegrenzt'] = ''; -$this->phrasen['pruefung/bewertungenZu'] = 'Bewertungen zu'; -$this->phrasen['pruefung/keineAuswahl'] = 'Keine Auswahl'; +$this->phrasen['pruefung/bewertungenZu'] = 'Studenti iscritti all’appello di'; +$this->phrasen['pruefung/keineAuswahl'] = 'Nessuna selezione'; // pruefungsbewertung $this->phrasen['pruefung/pruefungsbewertungTitle'] = 'Voti d’esame'; @@ -105,7 +105,7 @@ $this->phrasen['pruefung/keineLvAngegeben'] = 'Nessun corso definito.'; $this->phrasen['pruefung/kollisionMitAnderemTermin'] = 'Date sovrapposte.'; $this->phrasen['pruefung/terminNichtInDerVergangenheit'] = 'La data dell’appello non è nel passato.'; $this->phrasen['pruefung/keineLehreinheitenVorhanden'] = 'Nessun corso disponibile.'; -$this->phrasen['pruefung/keineAnmeldungenVorhanden'] = 'Nessuna studente iscritto.'; +$this->phrasen['pruefung/keineAnmeldungenVorhanden'] = 'Nessun studente iscritto.'; // anmeldungen Verwalten $this->phrasen['pruefung/anmeldungenVerwaltenTitle'] = 'Gestione delle prenotazioni degli appelli'; From 0701a4dd2e68d412429a6baeabb819e5e5ad5d91 Mon Sep 17 00:00:00 2001 From: oesi Date: Tue, 21 Jun 2016 17:22:40 +0200 Subject: [PATCH 064/114] =?UTF-8?q?Neues=20Menu=20Addon=20f=C3=BCr=20Studi?= =?UTF-8?q?enplan-Basierte=20Ansicht?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...on_lehrveranstaltungen_studienplan.inc.php | 352 ++++++++++++++++++ 1 file changed, 352 insertions(+) create mode 100644 cms/menu/menu_addon_lehrveranstaltungen_studienplan.inc.php diff --git a/cms/menu/menu_addon_lehrveranstaltungen_studienplan.inc.php b/cms/menu/menu_addon_lehrveranstaltungen_studienplan.inc.php new file mode 100644 index 000000000..df4da04ea --- /dev/null +++ b/cms/menu/menu_addon_lehrveranstaltungen_studienplan.inc.php @@ -0,0 +1,352 @@ + + */ +/** + * Menue Addon zur Auswahl von LVs + * + * Dieses Addon erstellt ein Formular zur Auswahl von + * Studiensemester, Studiengang, Ausbildungssemester, Studienplan und zeigt die + * zugehoerigen LVs an + * + * Parameter fuer das Params Array: + * - studiengang_kz + * - semester + * - studiensemester_kurzbz + * - studienplan_id + * - studiengang_kurzbz_lo 3-stelliges Studiengangskuerzel kleingeschrieben + * - studiengang_kurzbz_hi 3-stelliges Studiengangskuerzel grossgeschrieben + */ +require_once(dirname(__FILE__).'/menu_addon.class.php'); +require_once(dirname(__FILE__).'/../../include/studiengang.class.php'); +require_once(dirname(__FILE__).'/../../include/studienordnung.class.php'); +require_once(dirname(__FILE__).'/../../include/studienplan.class.php'); +require_once(dirname(__FILE__).'/../../include/lehrveranstaltung.class.php'); +require_once(dirname(__FILE__).'/../../include/organisationsform.class.php'); +require_once(dirname(__FILE__).'/../../include/functions.inc.php'); +require_once(dirname(__FILE__).'/../../include/phrasen.class.php'); +require_once(dirname(__FILE__).'/../../include/student.class.php'); + +class menu_addon_lehrveranstaltungen_studienplan extends menu_addon +{ + public function __construct() + { + global $params; + + parent::__construct(); + + $this->link=false; + + $sprache = getSprache(); + $user = get_uid(); + $student = new student(); + $studiengang_kz=''; + $semester=''; + $studienplan_id=''; + $studienordnung_id=''; + $db = new basis_db(); + + if($student->load($user)) + { + $studiengang_kz=$student->studiengang_kz; + $semester=$student->semester; + } + + $p = new phrasen($sprache); + + $sprachen_obj = new sprache(); + $sprachen_obj->getAll(); + $sprachen_arr=array(); + + foreach($sprachen_obj->result as $row) + { + if(isset($row->bezeichnung_arr[$sprache])) + $sprachen_arr[$row->sprache]=$row->bezeichnung_arr[$sprache]; + else + $sprachen_arr[$row->sprache]=$row->sprache; + } + + $orgform_obj = new organisationsform(); + $orgform_obj->getAll(); + $orgform_arr=array(); + foreach($orgform_obj->result as $row) + $orgform_arr[$row->orgform_kurzbz]=$row->bezeichnung; + + + $stsem = new studiensemester(); + $studiensemester_kurzbz=$stsem->getaktornext(); + + if(isset($params['studiensemester_kurzbz'])) + $studiensemester_kurzbz=$params['studiensemester_kurzbz']; + + 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 + { + if(!isset($semester)) + $semester=1; + } + if(isset($params['studienplan_id'])) + $studienplan_id=$params['studienplan_id']; + + $this->block.=' + '; + + $this->block.=' +
    '; + + // Studiensemester + + $this->block.=' + + + '; + + // Studiengang + $this->block.=' + + + + + + + + '; + + $this->block.='
    + Studiensemester
    + '; + } + else + + $errormsg .= $studiensemester->errormsg; + $this->block.=' +
    + Studiengang
    + +
    + Semester
    + +
    + Studienplan
    +


    '; + + $this->block.= ''; + + if (!$lv_obj = new lehrveranstaltung()) + die('Fehler beim Oeffnen der Lehrveranstaltung'); + + $lv_obj->lehrveranstaltungen=array(); + if($lv_obj->loadLehrveranstaltungStudienplan($studienplan_id, $semester,'bezeichnung')) + { + $tree = $lv_obj->getLehrveranstaltungTree(); + $this->printTree($tree, $sprache); + } + + $this->output(); + } + + /** + * Stellt die Lehrveranstaltungen in einer Baumstruktur dar. + */ + private function printTree($tree, $sprache) + { + $this->block.='"; + } + + private function CutString($strVal, $limit) + { + if(mb_strlen($strVal) > $limit+3) + { + return mb_substr($strVal, 0, $limit) . "..."; + } + else + { + return $strVal; + } + } +} +new menu_addon_lehrveranstaltungen_studienplan(); +?> From 942dfb8633287d9c37d9cc42484f9df5d52167a8 Mon Sep 17 00:00:00 2001 From: oesi Date: Thu, 23 Jun 2016 11:09:42 +0200 Subject: [PATCH 065/114] =?UTF-8?q?Noteneintr=C3=A4ge=20werden=20nicht=20m?= =?UTF-8?q?ehr=20zur=20=C3=9Cbernahme=20markiert=20wenn=20die=20Zeungisnot?= =?UTF-8?q?e=20neuer=20ist=20als=20die=20LVGesamtnote,=20die=20Note=20die?= =?UTF-8?q?=20selbe=20aber=20die=20Punkte=20unterschiedlich=20sind,=20da?= =?UTF-8?q?=20sonst=20die=20Punkte=20der=20komm.=20Pruefung=20=C3=BCbersch?= =?UTF-8?q?rieben=20werden=20falls=20die=20Note=20die=20selbe=20bleibt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- content/lvplanung/lehrveranstaltungoverlay.js.php | 3 +-- content/student/studentoverlay.js.php | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/content/lvplanung/lehrveranstaltungoverlay.js.php b/content/lvplanung/lehrveranstaltungoverlay.js.php index f2ff916a7..e927a1a17 100644 --- a/content/lvplanung/lehrveranstaltungoverlay.js.php +++ b/content/lvplanung/lehrveranstaltungoverlay.js.php @@ -1605,12 +1605,11 @@ function LehrveranstaltungGesamtNotenTreeSelectDifferent() break; } - //Wenn die Noten unterschiedlich sind, aber das benotungsdatum im Zeugnis + //Wenn das benotungsdatum im Zeugnis //nach dem benotungsdatum des lektors liegt, dann wird die zeile auch nicht markiert. //damit wird verhindert, dass pruefungsnoten die nur von der assistenz eingetragen wurden, //durch den alten eintrag des lektors wieder ueberschrieben werden if(zeugnisuid==lvgesamtuid - && zeugnisnote!=lvgesamtnote && zeugnisbenotungsdatum>lvgesamtbenotungsdatum) { found=true; diff --git a/content/student/studentoverlay.js.php b/content/student/studentoverlay.js.php index e5cb83c94..8ae0ad39e 100644 --- a/content/student/studentoverlay.js.php +++ b/content/student/studentoverlay.js.php @@ -3557,12 +3557,11 @@ function StudentNotenTreeSelectDifferent() break; } - //Wenn die Noten unterschiedlich sind, aber das benotungsdatum im Zeugnis + //Wenn das benotungsdatum im Zeugnis //nach dem benotungsdatum des lektors liegt, dann wird die zeile auch nicht markiert. //damit wird verhindert, dass pruefungsnoten die nur von der assistenz eingetragen wurden, //durch den alten eintrag des lektors wieder ueberschrieben werden if(zeugnislehrveranstaltung_id==lvgesamtlehrveranstaltung_id - && zeugnisnote!=lvgesamtnote && zeugnisbenotungsdatum>lvgesamtbenotungsdatum) { found=true; From ad335ad240e591442cb36cdbe850ad3ccaa28cb7 Mon Sep 17 00:00:00 2001 From: oesi Date: Fri, 24 Jun 2016 17:04:56 +0200 Subject: [PATCH 066/114] =?UTF-8?q?RTPunkte1,=20RTPunkte2=20und=20Private?= =?UTF-8?q?=20EMail=20hinzugef=C3=BCgt.=20Funktion=20aus=20Klasse=20entfer?= =?UTF-8?q?nt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- include/prestudent.class.php | 99 ------------- vilesci/personen/aliquote_reduktion.json.php | 140 ++++++++++++++++++- vilesci/personen/aliquote_reduktion.php | 8 ++ 3 files changed, 146 insertions(+), 101 deletions(-) diff --git a/include/prestudent.class.php b/include/prestudent.class.php index 0656aa110..f12ac7fc6 100755 --- a/include/prestudent.class.php +++ b/include/prestudent.class.php @@ -1733,103 +1733,4 @@ class prestudent extends person 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; - } - - $stg_obj = new studiengang(); - $stg_obj->load($studiengang_kz); - - if($stg_obj->typ=='m') - { - $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, - (Select anmerkung from public.tbl_prestudentstatus where prestudent_id=tbl_prestudent.prestudent_id AND studiensemester_kurzbz=". $this->db_add_param($studiensemester_kurzbz)." - AND status_kurzbz='Bewerber') as anmerkung - FROM - public.tbl_prestudent - JOIN public.tbl_person USING(person_id) - LEFT JOIN bis.tbl_zgvgruppe_zuordnung USING(zgvmas_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).") || '%') - ) - );"; - } - else - { - $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, - (Select anmerkung from public.tbl_prestudentstatus where prestudent_id=tbl_prestudent.prestudent_id AND studiensemester_kurzbz=". $this->db_add_param($studiensemester_kurzbz)." - AND status_kurzbz='Bewerber') as anmerkung - 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; - } - } } diff --git a/vilesci/personen/aliquote_reduktion.json.php b/vilesci/personen/aliquote_reduktion.json.php index d7e50134a..891f4eabc 100644 --- a/vilesci/personen/aliquote_reduktion.json.php +++ b/vilesci/personen/aliquote_reduktion.json.php @@ -62,8 +62,7 @@ switch($action) die("keine studiensemester_kurzbz erhalten"); $studiensemester_kurzbz = $_REQUEST["studiensemester_kurzbz"]; - $prestudent = new prestudent(); - $return = $prestudent->getAllStudentenFromStudienplanAndStudsem($studienplan_id, $studiensemester_kurzbz, $studiengang_kz); + $return = getAllStudentenFromStudienplanAndStudsem($studienplan_id, $studiensemester_kurzbz, $studiengang_kz); $db = new basis_db(); foreach($return as $key=>$value) @@ -170,10 +169,16 @@ switch($action) $maxlength[$spalte]=10; $worksheet->write($zeile,++$spalte,'Reihung',$format_bold); $maxlength[$spalte]=8; + $worksheet->write($zeile,++$spalte,'RT Punkte 1',$format_bold); + $maxlength[$spalte]=8; + $worksheet->write($zeile,++$spalte,'RT Punkte 2',$format_bold); + $maxlength[$spalte]=8; $worksheet->write($zeile,++$spalte,'RT Gesamt',$format_bold); $maxlength[$spalte]=8; $worksheet->write($zeile,++$spalte,'Interviewbogen',$format_bold); $maxlength[$spalte]=14; + $worksheet->write($zeile,++$spalte,'EMail',$format_bold); + $maxlength[$spalte]=8; $worksheet->write($zeile,++$spalte,'Status',$format_bold); $maxlength[$spalte]=8; $worksheet->write($zeile,++$spalte,'Auswahl',$format_bold); @@ -215,6 +220,31 @@ switch($action) if(mb_strlen((isset($s->seqPlace)?$s->seqPlace:''))>$maxlength[$spalte]) $maxlength[$spalte]=mb_strlen((isset($s->seqPlace)?$s->seqPlace:'')); + if(isset($s->rt_punkte1) && $s->rt_punkte1) + { + $worksheet->writeNumber($zeile,++$spalte, $s->rt_punkte1, $format_float); + if(mb_strlen($s->rt_punkte1)>$maxlength[$spalte]) + $maxlength[$spalte]=mb_strlen($s->rt_punkte1); + } + else + { + $worksheet->write($zeile,++$spalte, ""); + if(mb_strlen("")>$maxlength[$spalte]) + $maxlength[$spalte]=mb_strlen(""); + } + if(isset($s->rt_punkte2) && $s->rt_punkte2) + { + $worksheet->writeNumber($zeile,++$spalte, $s->rt_punkte2, $format_float); + if(mb_strlen($s->rt_punkte2)>$maxlength[$spalte]) + $maxlength[$spalte]=mb_strlen($s->rt_punkte2); + } + else + { + $worksheet->write($zeile,++$spalte, ""); + if(mb_strlen("")>$maxlength[$spalte]) + $maxlength[$spalte]=mb_strlen(""); + } + if(isset($s->rt_gesamtpunkte) && $s->rt_gesamtpunkte) { $worksheet->writeNumber($zeile,++$spalte, $s->rt_gesamtpunkte, $format_float); @@ -240,6 +270,11 @@ switch($action) if(mb_strlen("")>$maxlength[$spalte]) $maxlength[$spalte]=mb_strlen(""); } + + $worksheet->write($zeile,++$spalte, $s->email_privat); + if(mb_strlen($s->email_privat)>$maxlength[$spalte]) + $maxlength[$spalte]=mb_strlen($s->email_privat); + $worksheet->write($zeile,++$spalte, $s->laststatus); if(mb_strlen($s->laststatus)>$maxlength[$spalte]) $maxlength[$spalte]=mb_strlen($s->laststatus); @@ -279,4 +314,105 @@ function studentsSort($a, $b) } +/** + * Laedt die Studenten fuer die Reduktion + * @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 + */ +function getAllStudentenFromStudienplanAndStudsem($studienplan_id, $studiensemester_kurzbz, $studiengang_kz) +{ + $db = new basis_db(); + + if(!is_numeric($studienplan_id)) + { + $errormsg = 'studienplan_id ist ungueltig'; + return false; + } + + if(!$studiensemester_kurzbz || $studiensemester_kurzbz == "") + { + $errormsg = 'studiensemester_kurzbz ist ungueltig'; + return false; + } + + $stg_obj = new studiengang(); + $stg_obj->load($studiengang_kz); + + if($stg_obj->typ=='m') + { + $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, + (Select anmerkung from public.tbl_prestudentstatus where prestudent_id=tbl_prestudent.prestudent_id AND studiensemester_kurzbz=". $this->db_add_param($studiensemester_kurzbz)." + AND status_kurzbz='Bewerber') as anmerkung, rt_punkte1, rt_punkte2, + (SELECT kontakt FROM public.tbl_kontakt where kontakttyp='email' AND zustellung AND person_id=tbl_person.person_id limit 1) as email_privat + FROM + public.tbl_prestudent + JOIN public.tbl_person USING(person_id) + LEFT JOIN bis.tbl_zgvgruppe_zuordnung USING(zgvmas_code) + LEFT JOIN bis.tbl_zgvgruppe USING(gruppe_kurzbz) + WHERE + tbl_prestudent.studiengang_kz=". $db->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=". $db->db_add_param($studiensemester_kurzbz)." + AND status_kurzbz='Bewerber' + AND ( + studienplan_id=". $db->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).") || '%') + ) + );"; + } + else + { + $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, + (Select anmerkung from public.tbl_prestudentstatus where prestudent_id=tbl_prestudent.prestudent_id AND studiensemester_kurzbz=". $db->db_add_param($studiensemester_kurzbz)." + AND status_kurzbz='Bewerber') as anmerkung, rt_punkte1, rt_punkte2, + (SELECT kontakt FROM public.tbl_kontakt where kontakttyp='email' AND zustellung AND person_id=tbl_person.person_id limit 1) as email_privat + 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=". $db->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=". $db->db_add_param($studiensemester_kurzbz)." + AND status_kurzbz='Bewerber' + AND ( + studienplan_id=". $db->db_add_param($studienplan_id)." + OR + (anmerkung like '%' || (SELECT orgform_kurzbz || '_' || sprache FROM lehre.tbl_studienplan WHERE studienplan_id=". $db->db_add_param($studienplan_id).") || '%') + ) + );"; + } + + + if($result = $db->db_query($qry)) + { + $ret = array(); + + while($row = $db->db_fetch_object($result)) + $ret[] = $row; + + return $ret; + } + else + { + $errormsg = 'Fehler beim Laden der Daten'; + return false; + } +} ?> diff --git a/vilesci/personen/aliquote_reduktion.php b/vilesci/personen/aliquote_reduktion.php index dd2f86df2..990cd428e 100644 --- a/vilesci/personen/aliquote_reduktion.php +++ b/vilesci/personen/aliquote_reduktion.php @@ -446,6 +446,8 @@
    Vorname ZGV Gruppe ReihungRT Punkte 1RT Punkte 2 RT Gesamt Interviewbogen Anmerkung/Prio{{stud.bezeichnung}} Keine Angabe {{stud.seqPlace}}{{stud.rt_punkte1}}{{stud.rt_punkte2}} {{stud.rt_gesamtpunkte}} {{stud.interviewbogen?'vorhanden':'nicht vorhanden'}} {{stud.anmerkung}}Vorname ZGV Gruppe ReihungRT Punkte 1RT Punkte 2 RT Gesamt Interviewbogen Anmerkung/Prio{{stud.bezeichnung}} Keine Angabe {{stud.seqPlace}}{{stud.rt_punkte1}}{{stud.rt_punkte2}} {{stud.rt_gesamtpunkte}} {{stud.interviewbogen?'vorhanden':'nicht vorhanden'}} {{stud.anmerkung}}
    Name ProzentInsgesamt benötigtInsgesamt benötigt Bereits aufgenommen Noch benötigte Personen
    {{zgv.name}} {{zgv.percent | number: 2}}%{{zgv.neededSum | parseInt}}{{zgv.overallNeeded | parseInt}} {{zgv.accepted}} {{zgv.needed | parseInt}}
    Studiensemester
    - '; //Anzeigen des DropDown Menues mit Studiensemester $studiensemester = new studiensemester(); @@ -165,7 +165,7 @@ class menu_addon_lehrveranstaltungen_studienplan extends menu_addon
    Studiengang
    - '; $stg_obj = new studiengang(); $stg_obj->loadStudiengangFromStudiensemester($studiensemester_kurzbz); @@ -201,7 +201,7 @@ class menu_addon_lehrveranstaltungen_studienplan extends menu_addon
    Semester
    - '; $vorhandenesemester=array(); @@ -241,7 +241,7 @@ class menu_addon_lehrveranstaltungen_studienplan extends menu_addon
    Studienplan
    - '; // Studienplan $studienplan_obj = new studienplan(); @@ -309,7 +309,7 @@ class menu_addon_lehrveranstaltungen_studienplan extends menu_addon if($lv_obj->loadLehrveranstaltungStudienplan($studienplan_id, $semester,'bezeichnung')) { $tree = $lv_obj->getLehrveranstaltungTree(); - $this->printTree($tree, $sprache); + $this->printTree($tree, $sprache, $studiensemester_kurzbz); } $this->output(); @@ -318,7 +318,7 @@ class menu_addon_lehrveranstaltungen_studienplan extends menu_addon /** * Stellt die Lehrveranstaltungen in einer Baumstruktur dar. */ - private function printTree($tree, $sprache) + private function printTree($tree, $sprache, $studiensemester_kurzbz) { $this->block.='"; } From 9707c523e0de3985cee43456f79fc785676a0c78 Mon Sep 17 00:00:00 2001 From: oesi Date: Mon, 4 Jul 2016 18:31:25 +0200 Subject: [PATCH 080/114] =?UTF-8?q?Studienordnung=5Fsemester=20auf=20Studi?= =?UTF-8?q?enplan=5Fsemester=20ge=C3=A4ndert?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- include/studienplan.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/studienplan.class.php b/include/studienplan.class.php index f71c37d2a..36227cc79 100644 --- a/include/studienplan.class.php +++ b/include/studienplan.class.php @@ -861,7 +861,7 @@ class studienplan extends basis_db WHERE tbl_studienplan_lehrveranstaltung.lehrveranstaltung_id=".$this->db_add_param($lehrveranstaltung_id, FHC_INTEGER)." AND EXISTS ( - SELECT 1 FROM lehre.tbl_studienordnung_semester + SELECT 1 FROM lehre.tbl_studienplan_semester WHERE studienordnung_id=tbl_studienplan.studienordnung_id AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz)." AND semester = tbl_studienplan_lehrveranstaltung.semester) From 5de98911ec844e0e4464257abaa3569400d80625 Mon Sep 17 00:00:00 2001 From: oesi Date: Tue, 5 Jul 2016 13:57:26 +0200 Subject: [PATCH 081/114] =?UTF-8?q?Link=20zu=20LV-Infos=20zur=20Lehrverans?= =?UTF-8?q?taltungs=C3=BCbersicht=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cis/private/profile/lva_liste.php | 25 +++++++++++++++++++++++++ locale/de-AT/lvaliste.php | 1 + 2 files changed, 26 insertions(+) diff --git a/cis/private/profile/lva_liste.php b/cis/private/profile/lva_liste.php index 04889e6a5..ee30987a4 100644 --- a/cis/private/profile/lva_liste.php +++ b/cis/private/profile/lva_liste.php @@ -35,6 +35,7 @@ require_once('../../../include/studiensemester.class.php'); require_once('../../../include/datum.class.php'); require_once('../../../include/datum.class.php'); require_once('../../../include/lvangebot.class.php'); +require_once('../../../include/addon.class.php'); if (!$db = new basis_db()) @@ -57,6 +58,12 @@ require_once('../../../include/lvangebot.class.php'); $datum = new datum(); + $addon = new addon(); + if(in_array('lvinfo',$addon->aktive_addons)) + $lvinfo=true; + else + $lvinfo=false; + //Studiensemester abfragen. Letzten 5, aktuelles und naechstes. $sql_query='SELECT * FROM public.tbl_studiensemester WHERE (start<=(now()::date+240) AND ende>=(now()::date-900)) ORDER BY start'; $result_stdsem=$db->db_query($sql_query); @@ -161,6 +168,11 @@ require_once('../../../include/lvangebot.class.php');
    '.$p->t('lvaliste/gesamtnote').''.$p->t('lvaliste/lvinfo').''.$p->t('lvaliste/lehrfach').' '.$p->t('lvaliste/lehrform').'
    '.$p->t('lvaliste/gesamtnote').''.$p->t('lvaliste/lvinfo').''.$row->lehrfach.''.$row->le_lehrform_kurzbz.''.$datum->formatDatum($lvangebot->result[0]->anmeldefenster_start, "d.m.Y").''.$datum->formatDatum($lvangebot->result[0]->anmeldefenster_ende, "d.m.Y").'  '.$row->le_anmerkung.'
            Vorname: '.$db->convert_html_chars($row->vorname).'
    Nachname: '.$db->convert_html_chars($row->nachname).'
    - '.($row->mitarbeiter=='1'?'Mitarbeiter':'Student').' + '.($row->mitarbeiter=='1'?'MitarbeiterIn':'StudentIn').'
    '; From a5c29fa2f720eabbbfab0e81ea52b5016fab61c9 Mon Sep 17 00:00:00 2001 From: kindlm Date: Fri, 8 Jul 2016 17:53:20 +0200 Subject: [PATCH 085/114] Berechtigungsabfrage granularer; GUI-Verbesserungen --- vilesci/lehre/lv_merge.php | 51 ++++++++++++++++++++++++++------------ 1 file changed, 35 insertions(+), 16 deletions(-) diff --git a/vilesci/lehre/lv_merge.php b/vilesci/lehre/lv_merge.php index 8ce13220b..327240d79 100644 --- a/vilesci/lehre/lv_merge.php +++ b/vilesci/lehre/lv_merge.php @@ -112,12 +112,22 @@ if (isset($_REQUEST['compare'])) $msg .= ''; foreach ($lv_diff1 as $key => $value) { - $msg .= ''.(is_bool($value)?($value?'true':'false'):$value).''; + if (is_bool($value)) + $msg .= ''.($value?'true':'false').''; + elseif ($key == 'farbe') + $msg .= ''.$value.'     '; + else + $msg .= ''.$value.''; } $msg .= ''; foreach ($lv_diff2 as $key => $value) { - $msg .= ''.(is_bool($value)?($value?'true':'false'):$value).''; + if (is_bool($value)) + $msg .= ''.($value?'true':'false').''; + elseif ($key == 'farbe') + $msg .= ''.$value.'     '; + else + $msg .= ''.$value.''; } $msg .= ''; } @@ -133,6 +143,9 @@ if((isset($_REQUEST['transfer']) || isset($_REQUEST['mergeDelete'])) && isset($c } else { + if(!$rechte->isBerechtigt('lehre/lehrveranstaltung', NULL, 'sui')) + die($rechte->errormsg); + $msg=''; $update_qry="BEGIN;"; @@ -208,6 +221,9 @@ if((isset($_REQUEST['transfer']) || isset($_REQUEST['mergeDelete'])) && isset($c if (isset($_REQUEST['mergeDelete'])) { + if(!$rechte->isBerechtigt('lehre/lehrveranstaltung', NULL, 'suid')) + die($rechte->errormsg); + $update_qry.="UPDATE campus.tbl_benutzerlvstudiensemester SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; $update_qry.="UPDATE campus.tbl_feedback SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; $update_qry.="UPDATE campus.tbl_lehrveranstaltung_pruefung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; @@ -623,22 +639,25 @@ echo ''; echo ''; -echo ' '; - -echo ' '; + + echo ' | '; } -echo ' | '; - -echo ' | '; +if($rechte->isBerechtigt('lehre/lehrveranstaltung', NULL, 'suid')) + echo ' | '; echo ' '; From 4abf10d3e399585457ffa1a570f2b044796289e1 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Mon, 11 Jul 2016 15:52:31 +0200 Subject: [PATCH 086/114] phrases for pruefungstool --- locale/de-AT/pruefung.php | 2 ++ locale/en-US/pruefung.php | 2 ++ locale/it-IT/pruefung.php | 2 ++ 3 files changed, 6 insertions(+) diff --git a/locale/de-AT/pruefung.php b/locale/de-AT/pruefung.php index fbf7ab6a3..1f127dfea 100755 --- a/locale/de-AT/pruefung.php +++ b/locale/de-AT/pruefung.php @@ -106,6 +106,8 @@ $this->phrasen['pruefung/kollisionMitAnderemTermin'] = 'Kollision mit anderem Te $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.'; +$this->phrasen['pruefung/derLektor'] = 'Lektor'; +$this->phrasen['pruefung/dieKommission'] = 'Kommission'; // anmeldungen Verwalten $this->phrasen['pruefung/anmeldungenVerwaltenTitle'] = 'Prüfungsanmeldung Verwaltung'; diff --git a/locale/en-US/pruefung.php b/locale/en-US/pruefung.php index ca32086a8..e46fc9aef 100755 --- a/locale/en-US/pruefung.php +++ b/locale/en-US/pruefung.php @@ -106,6 +106,8 @@ $this->phrasen['pruefung/kollisionMitAnderemTermin'] = 'Kollision mit anderem Te $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.'; +$this->phrasen['pruefung/derLektor'] = 'Lektor'; +$this->phrasen['pruefung/dieKommission'] = 'Kommission'; // anmeldungen Verwalten $this->phrasen['pruefung/anmeldungenVerwaltenTitle'] = 'Prüfungsanmeldung Verwaltung'; diff --git a/locale/it-IT/pruefung.php b/locale/it-IT/pruefung.php index 20a8c92f0..476b14ec0 100755 --- a/locale/it-IT/pruefung.php +++ b/locale/it-IT/pruefung.php @@ -106,6 +106,8 @@ $this->phrasen['pruefung/kollisionMitAnderemTermin'] = 'Date sovrapposte.'; $this->phrasen['pruefung/terminNichtInDerVergangenheit'] = 'La data dell’appello non è nel passato.'; $this->phrasen['pruefung/keineLehreinheitenVorhanden'] = 'Nessun corso disponibile.'; $this->phrasen['pruefung/keineAnmeldungenVorhanden'] = 'Nessun studente iscritto.'; +$this->phrasen['pruefung/derLektor'] = 'Docente'; +$this->phrasen['pruefung/dieKommission'] = 'Commissione'; // anmeldungen Verwalten $this->phrasen['pruefung/anmeldungenVerwaltenTitle'] = 'Gestione delle prenotazioni degli appelli'; From 57c6e59eb9e270e124394c5025f4d58cc9108079 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Mon, 11 Jul 2016 18:20:43 +0200 Subject: [PATCH 087/114] fixed numbering on exam-list, lv-name in exam header --- cis/private/lehre/pruefung/pruefung.js.php | 4 ++++ cis/private/lehre/pruefung/pruefungsanmeldung.json.php | 5 +++++ cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php | 3 ++- .../lehre/pruefung/pruefungsanmeldungen_verwalten.php | 2 +- 4 files changed, 12 insertions(+), 2 deletions(-) diff --git a/cis/private/lehre/pruefung/pruefung.js.php b/cis/private/lehre/pruefung/pruefung.js.php index 02d0e1b9d..97a309fc9 100755 --- a/cis/private/lehre/pruefung/pruefung.js.php +++ b/cis/private/lehre/pruefung/pruefung.js.php @@ -741,6 +741,9 @@ function writeAnmeldungen(data) var pruefung_id = data.result.anmeldungen[0].pruefung_id; var lehrveranstaltung_id = data.result.anmeldungen[0].lehrveranstaltung_id; var ort_kurzbz = data.result.ort_kurzbz; + var lv_bezeichnung = data.result.lv_bezeichnung; + var lv_lehrtyp = data.result.lv_lehrtyp; + var prf_termin = data.result.datum; var liste = "
      "; var count = 0; var studiensemester = $("#filter_studiensemester option:selected").val(); @@ -776,6 +779,7 @@ function writeAnmeldungen(data) liste += "
    "; $("#anmeldung_hinzufuegen").html("' onclick='saveAnmeldung(\""+lehrveranstaltung_id+"\",\""+terminId+"\");'/>"); $("#reihungSpeichernButton").html("' onclick='saveReihung(\""+terminId+"\", \""+lehrveranstaltung_id+"\");'>"); + $("#lvdaten").html(lv_bezeichnung+" ("+prf_termin+")"); $("#anmeldeDaten").html(liste); $("#listeDrucken").html("t('pruefung/listeDrucken'); ?>"); if(ort_kurzbz !== null) diff --git a/cis/private/lehre/pruefung/pruefungsanmeldung.json.php b/cis/private/lehre/pruefung/pruefungsanmeldung.json.php index 805fb2409..fe60b3247 100755 --- a/cis/private/lehre/pruefung/pruefungsanmeldung.json.php +++ b/cis/private/lehre/pruefung/pruefungsanmeldung.json.php @@ -754,6 +754,11 @@ function getAnmeldungenTermin() $pruefungstermin = new pruefungstermin($pruefungstermin_id); $pruefungsanmeldung = new pruefungsanmeldung(); $pruefungstermin->anmeldungen = $pruefungsanmeldung->getAnmeldungenByTermin($pruefungstermin_id, $lehrveranstaltung_id); + $lv = new lehrveranstaltung($lehrveranstaltung_id); + $pruefungstermin->lv_bezeichnung = $lv->bezeichnung; + $pruefungstermin->lv_lehrtyp = $lv->lehrtyp_kurzbz; + $datum = new DateTime($pruefungstermin->von); + $pruefungstermin->datum = $datum->format('d.m.Y'); foreach($pruefungstermin->anmeldungen as $a) { $student = new student($a->uid); diff --git a/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php b/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php index bcb256b9b..d01bada61 100755 --- a/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php +++ b/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php @@ -253,9 +253,10 @@ $rechte->getBerechtigungen($uid); else { $date = $datum->formatDatum($prfTermin->von,"d.m.Y - H:i"); + $count++; } echo ''; - echo ''.$anmeldung->reihung.''; + echo ''.$count.''; echo ''.$student->vorname.''; echo ''.$student->nachname.''; echo ''.$student->matr_nr.''; diff --git a/cis/private/lehre/pruefung/pruefungsanmeldungen_verwalten.php b/cis/private/lehre/pruefung/pruefungsanmeldungen_verwalten.php index b1cd1eb82..a4c0ca182 100755 --- a/cis/private/lehre/pruefung/pruefungsanmeldungen_verwalten.php +++ b/cis/private/lehre/pruefung/pruefungsanmeldungen_verwalten.php @@ -275,7 +275,7 @@ if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungA
    -

    t('pruefung/pruefungsbewertungAnmeldungen'); ?>

    +

    t('pruefung/pruefungsbewertungAnmeldungen'); ?>

    From c0379b775553487bf17ecb1dc3457fcaf5040c2f Mon Sep 17 00:00:00 2001 From: kindlm Date: Mon, 11 Jul 2016 19:51:33 +0200 Subject: [PATCH 088/114] Studienplan_sprache in ausbildungsvertrag.xml.php MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Überarbeitung Ausbildungsvertrag zweisprachig --- rdf/ausbildungsvertrag.xml.php | 7 + system/xsl/AusbVerEngHead_0.xsl | 106 +- system/xsl/AusbVerEng_0.xsl | 1876 +++++++++++++++---------------- 3 files changed, 948 insertions(+), 1041 deletions(-) diff --git a/rdf/ausbildungsvertrag.xml.php b/rdf/ausbildungsvertrag.xml.php index 77dbd5fdd..cde2c980b 100755 --- a/rdf/ausbildungsvertrag.xml.php +++ b/rdf/ausbildungsvertrag.xml.php @@ -31,6 +31,7 @@ require_once('../include/akadgrad.class.php'); require_once('../include/studiensemester.class.php'); require_once('../include/nation.class.php'); require_once('../include/prestudent.class.php'); +require_once('../include/studienplan.class.php'); $uid_arr = (isset($_REQUEST['uid'])?$_REQUEST['uid']:null); $prestudent_arr = (isset($_REQUEST['prestudent_id'])?$_REQUEST['prestudent_id']:null); @@ -318,6 +319,12 @@ foreach($prestudent_arr as $prest_id) echo "\t\t".$orgform."\n"; + //Sprache des Studienplans holen + $studienplan = new studienplan(); + $studienplan->loadStudienplan($prestudent_orgform->studienplan_id); + + echo "\t\t".$studienplan->sprache."\n"; + // check ob Quereinsteiger $ausbildungssemester = ($prestudent_orgform->ausbildungssemester!='')?$prestudent_orgform->ausbildungssemester:'1'; echo "\t\t".$ausbildungssemester.""; diff --git a/system/xsl/AusbVerEngHead_0.xsl b/system/xsl/AusbVerEngHead_0.xsl index 0dd54156b..e98fc5042 100644 --- a/system/xsl/AusbVerEngHead_0.xsl +++ b/system/xsl/AusbVerEngHead_0.xsl @@ -11,10 +11,10 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + - + @@ -48,7 +48,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -58,7 +58,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -66,39 +66,39 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + - + - + - + - + - + - + - + - + @@ -139,11 +139,11 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + - + @@ -159,9 +159,8 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - - - + + @@ -195,7 +194,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -207,7 +206,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -230,7 +229,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -242,7 +241,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -286,6 +285,9 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn + + + @@ -463,7 +465,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -481,7 +483,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -499,7 +501,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -524,7 +526,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -542,7 +544,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -560,7 +562,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -638,7 +640,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -656,7 +658,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -674,7 +676,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -699,7 +701,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -717,7 +719,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -735,7 +737,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -858,7 +860,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -871,21 +873,19 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - - - + - + - + - + @@ -893,16 +893,16 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - - - + + + - - - - + + + + @@ -912,14 +912,18 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - 11 + 12 + + + -Studiengang (Degree Program) () + @@ -932,11 +936,15 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn 1 + + + -Studiengang (Degree Program) () + diff --git a/system/xsl/AusbVerEng_0.xsl b/system/xsl/AusbVerEng_0.xsl index da35c62d9..eab924112 100644 --- a/system/xsl/AusbVerEng_0.xsl +++ b/system/xsl/AusbVerEng_0.xsl @@ -1,22 +1,62 @@ - + - + - - + - + @@ -44,19 +84,13 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + - - - - - - - + @@ -65,17 +99,13 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + - - - - @@ -83,7 +113,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -91,34 +121,38 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + - + - + - + - + + + + + - - + + @@ -137,149 +171,6 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -287,41 +178,29 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - - - + + + + + + + - - - - - - - - - + - + - + - - - - - + - - - - - + @@ -329,103 +208,49 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + - + - - - - + - - - - - - - - + - + - + - - - - - - - - - - - - - + - - - - - - - - - - - - - + - - - - - - - - - + - - - - - - - - - - - - - - + + - + - + @@ -433,92 +258,260 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - + + - - - + + + - - + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - + + - - - - - + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -532,160 +525,121 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - + - - - - + - + - + - - - - + - + - + - + + + + - + - + - + - + - + - - - - + - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - - + + - + + + + - - - - + - - + + + + + + + + + + + + + + @@ -708,67 +662,21 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + @@ -776,58 +684,56 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - Ausbildungsvertrag + Ausbildungsvertrag + + Keine Sozialversicherungsnummer oder Ersatzkennzeichen vorhanden + Kein Geburtsdatum vorhanden + Kein akademischer Grad vorhanden + Keine Ausbildungsdauer vorhanden - - Keine Sozialversicherungsnummer oder Ersatzkennzeichen vorhanden - Kein Geburtsdatum vorhanden - Kein akademischer Grad vorhanden - Keine Ausbildungsdauer vorhanden - - - - - Dieser Vertrag regelt das Rechtsverhältnis zwischen - - dem Verein Fachhochschule Technikum Wien, - 1060 Wien, Mariahilfer Straße 37-39 (kurz „Erhalter“ genannt) einerseits - und + + + + Dieser Vertrag regelt das Rechtsverhältnis zwischen + + dem Verein Fachhochschule Technikum Wien, + 1060 Wien, Mariahilfer Straße 37-39 (kurz „Erhalter“ genannt) einerseits + und - - - Training Contract + + + Training Contract - - - - This contract governs the legal relationship between - - the University of Applied Sciences Technikum Wien Association, 1060 Vienna, Mariahilferstraße 37-39 (referred to as "operator") on the one hand and + + + + This contract governs the legal relationship between + + the University of Applied Sciences Technikum Wien Association, 1060 Vienna, Mariahilferstraße 37-39 (referred to as "operator") on the one hand and - - - + + + - - Familienname (Surname): + + Familienname (Surname): - Vorname (First Name): - - Akademischer Titel (Academic degree): + Vorname (First Name): + + Akademischer Titel (Academic degree): - - Adresse (Address): - ; + + Adresse (Address): - + - - Geburtsdatum (Date of birth): + + Geburtsdatum (Date of birth): - + Sozialversicherungsnr. @@ -835,31 +741,31 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn 1 - + - Gemäß § 3 Absatz 1 des Bildungsdokumentationsgesetzes und der Bildungsdokumentationsverordnung-Fachhochschulen hat der Erhalter die Sozialversicherungsnummer zu erfassen und gemäß § 7 Absatz 2 im Wege der Agentur für Qualitätssicherung und Akkreditierung Austria an das zuständige Bundesministerium und die Bundesanstalt Statistik Österreich zu übermitteln. + Gemäß § 3 Absatz 1 des Bildungsdokumentationsgesetzes und der Bildungsdokumentationsverordnung-Fachhochschulen hat der Erhalter die Sozialversicherungsnummer zu erfassen und gemäß § 7 Absatz 2 im Wege der Agentur für Qualitätssicherung und Akkreditierung Austria an das zuständige Bundesministerium und die Bundesanstalt Statistik Österreich zu übermitteln. - + - + - : + : - - + + (Social security number) - + 2 - + Pursuant to § 3 section 1 of the Education Documentation Act and the Education Documentation Regulation for Universities of Applied Sciences, the operator shall record the social security number pursuant to § 7 paragraph 2 and shall transfer it via the Agency for Quality Assurance and Accreditation Austria to the competent Ministry and Statistics Austria. @@ -869,20 +775,20 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + - : + : - - + + - (kurz „Studentin“ bzw. „Student“ genannt) + (kurz „Studentin“ bzw. „Student“ genannt) - (referred to as "student") - on the other, + (referred to as "student") + on the other, - andererseits, + andererseits, @@ -890,12 +796,11 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - im Rahmen des -Studienganges - - - , StgKz , - in der Organisationsform eines - + im Rahmen des -Studienganges + + , StgKz , + in der Organisationsform eines + berufsbegleitenden Studiums. @@ -909,9 +814,9 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - within the degree program - “, program abbrev. , in the organizational form of a - + within the degree program + “, program abbrev. , in the organizational form of a + part-time course. @@ -928,73 +833,70 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - - - 1. Ausbildungsort + + 1. Ausbildungsort - - Studienort sind die Räumlichkeiten der FH Technikum Wien, 1200 Wien, Höchstädtplatz und 1210 Wien, Giefinggasse. Bei Bedarf kann der Erhalter einen anderen Studienort in Wien festlegen, außerhochschulische Aktivitäten (zB Exkursionen) können auch außerhalb von Wien stattfinden. - + + Studienort sind die Räumlichkeiten der FH Technikum Wien, 1200 Wien, Höchstädtplatz und 1210 Wien, Giefinggasse. Bei Bedarf kann der Erhalter einen anderen Studienort in Wien festlegen, außerhochschulische Aktivitäten (zB Exkursionen) können auch außerhalb von Wien stattfinden. + - 2. Vertragsgrundlage + 2. Vertragsgrundlage - - Die Ausbildung erfolgt auf der Grundlage des Fachhochschul-Studiengesetzes, BGBl. Nr. 340/1993 idgF, des Hochschul-Qualitätssicherungsgesetzes, BGBl. Nr. 74/2011 idgF, des Akkreditierungsbescheides des Board der AQ Austria vom 9.5.2012, GZ FH12020016 idgF und des Fördervertrags mit dem Bundesministerium für Wissenschaft und Forschung idgF. - - + + Die Ausbildung erfolgt auf der Grundlage des Fachhochschul-Studiengesetzes, BGBl. Nr. 340/1993 idgF, des Hochschul-Qualitätssicherungsgesetzes, BGBl. Nr. 74/2011 idgF, des Akkreditierungsbescheides des Board der AQ Austria vom 9.5.2012, GZ FH12020016 idgF und des Fördervertrags mit dem Bundesministerium für Wissenschaft und Forschung idgF. + + - 3. Ausbildungsdauer + 3. Ausbildungsdauer - - Die Ausbildungsdauer beträgt Semester. - - Die Studentin bzw. der Student hat das Recht, eine Anerkennung nachgewiesener Kenntnisse beim Studiengang zu beantragen. Eine solche Anerkennung setzt voraus, dass die erworbenen Kenntnisse mit dem Inhalt und dem Umfang der Lehrveranstaltung bzw. eines Berufspraktikums gleichwertig sind und bewirkt die Anrechnung der entsprechenden Lehrveranstaltung oder des Berufspraktikums. - - + + Die Ausbildungsdauer beträgt Semester. + + Die Studentin bzw. der Student hat das Recht, eine Anerkennung nachgewiesener Kenntnisse beim Studiengang zu beantragen. Eine solche Anerkennung setzt voraus, dass die erworbenen Kenntnisse mit dem Inhalt und dem Umfang der Lehrveranstaltung bzw. eines Berufspraktikums gleichwertig sind und bewirkt die Anrechnung der entsprechenden Lehrveranstaltung oder des Berufspraktikums. + + + + 1. Place of Training + + + + + Places of training are the premises of the UAS Technikum Wien, 1200 Vienna, Höchstädt-platz and 1210 Vienna, Giefinggasse. If necessary, the operator may specify a different place of study in Vienna. Non-university activities (e.g. excursions) may take place away from Vienna. + - 1. Place of Training + 2. Contractual Basis - + - - Places of training are the premises of the UAS Technikum Wien, 1200 Vienna, Höchstädt-platz and 1210 Vienna, Giefinggasse. If necessary, the operator may specify a different place of study in Vienna. Non-university activities (e.g. excursions) may take place away from Vienna. - + + The training is based on the University of Applied Sciences Studies Act, Federal Law Gazette No. 340/1993 as amended, the Higher Education Quality Assurance Act, Federal Law Gazette I No. 74/2011 as amended, the notification of accreditation by the Board of AQ Austria from 9.5.2012, GZ FH12020016 as amended and the subsidy agreement with the Federal Ministry responsible for UASs as amended. + - 2. Contractual Basis + 3. Duration of Training - + - - The training is based on the University of Applied Sciences Studies Act, Federal Law Gazette No. 340/1993 as amended, the Higher Education Quality Assurance Act, Federal Law Gazette I No. 74/2011 as amended, the notification of accreditation by the Board of AQ Austria from 9.5.2012, GZ FH12020016 as amended and the subsidy agreement with the Federal Ministry responsible for UASs as amended. - - + + + The training period lasts semesters. + + + The student has the right to apply to the degree program for Recognition of Prior Learning (RPL). Such recognition requires that the knowledge previously acquired is equivalent in content and scope to that of the course or internship and means that the student will be exempted from the respective course or internship. + - 3. Duration of Training + 4. Ausbildungsabschluss - + - - - The training period lasts semesters. - - - The student has the right to apply to the degree program for Recognition of Prior Learning (RPL). Such recognition requires that the knowledge previously acquired is equivalent in content and scope to that of the course or internship and means that the student will be exempted from the respective course or internship. - + + Die Ausbildung endet mit der positiven Absolvierung der das jeweilige Studium abschließenden kommissionellen Prüfung. Nach dem Abschluss der vorgeschriebenen Prüfungen wird der akademische Grad of Science in Engineering () durch das FH-Kollegium verliehen. + - - 4. Ausbildungsabschluss - - - - - Die Ausbildung endet mit der positiven Absolvierung der das jeweilige Studium abschließenden kommissionellen Prüfung. Nach dem Abschluss der vorgeschriebenen Prüfungen wird der akademische Grad of Science in Engineering () durch das FH-Kollegium verliehen. - - - 5. Rechte und Pflichten des Erhalters + 5. Rechte und Pflichten des Erhalters @@ -1006,260 +908,249 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn 5.1 Rechte - + - - Der Erhalter führt eine periodische Überprüfung des Studiums im Hinblick auf Relevanz und Aktualität durch und ist im Einvernehmen mit dem FH-Kollegium berechtigt, daraus Änderungen des akkreditierten Studienganges abzuleiten. - - - Der Erhalter ist berechtigt, die Daten der/des Studierenden an den FH Technikum Wien Alumni Club zu übermitteln. Der Alumni Club ist der AbsolventInnenverein der FH Technikum Wien. Er hat zum Ziel, AbsolventInnen, Studierende und Lehrende miteinander zu vernetzen sowie AbsolventInnen laufend über Aktivitäten an der FH Technikum Wien zu informieren. Einer Zusendung von Informationen durch den Alumni Club kann jederzeit widersprochen werden. + + Der Erhalter führt eine periodische Überprüfung des Studiums im Hinblick auf Relevanz und Aktualität durch und ist im Einvernehmen mit dem FH-Kollegium berechtigt, daraus Änderungen des akkreditierten Studienganges abzuleiten. + + + Der Erhalter ist berechtigt, die Daten der/des Studierenden an den FH Technikum Wien Alumni Club zu übermitteln. Der Alumni Club ist der AbsolventInnenverein der FH Technikum Wien. Er hat zum Ziel, AbsolventInnen, Studierende und Lehrende miteinander zu vernetzen sowie AbsolventInnen laufend über Aktivitäten an der FH Technikum Wien zu informieren. Einer Zusendung von Informationen durch den Alumni Club kann jederzeit widersprochen werden. - + 5.2 Pflichten - + - - - - - - - Der Erhalter verpflichtet sich zur ordnungsgemäßen Planung und Durchführung des Studienganges in der Regelstudiendauer. Der Erhalter ist verpflichtet, allfällige Änderungen des akkreditierten Studienganges zeitgerecht bekannt zu geben. - - - - - - 4. Formal Completion of Training - - - - - The training ends with the positive completion of the final examination before a committee for the respective course. After completion of the required examinations, the academic degree of Science in Engineering () is awarded by the University of Applied Sciences Council. - - - - 5. Rights and Duties of the Operator - - - - - + + + Der Erhalter verpflichtet sich zur ordnungsgemäßen Planung und Durchführung des Studienganges in der Regelstudiendauer. Der Erhalter ist verpflichtet, allfällige Änderungen des akkreditierten Studienganges zeitgerecht bekannt zu geben. + + + + + 4. Formal Completion of Training + + + + + The training ends with the positive completion of the final examination before a committee for the respective course. After completion of the required examinations, the academic degree of Science in Engineering () is awarded by the University of Applied Sciences Council. + + + + 5. Rights and Duties of the Operator + + + + + + + + + - + 5.1 Rights - - + - + - + - The operator performs a periodic review of the course in terms of relevance and topicality, and is authorized, in consultation with the University of Applied Sciences Council, to deduce from this changes in the accredited degree program. - - - The operator is entitled to communicate a student’s data to the UAS Technikum Wien Alumni Club. The Alumni Club is the graduate association of the UAS Technikum Wien. Its goal is to provide links between graduates, students and lecturers as well as to keep graduates informed of the activities at the UAS Technikum Wien. A mailing of information from the Alumni Club can be vetoed at any time. + The operator performs a periodic review of the course in terms of relevance and topicality, and is authorized, in consultation with the University of Applied Sciences Council, to deduce from this changes in the accredited degree program. + + + The operator is entitled to communicate a student’s data to the UAS Technikum Wien Alumni Club. The Alumni Club is the graduate association of the UAS Technikum Wien. Its goal is to provide links between graduates, students and lecturers as well as to keep graduates informed of the activities at the UAS Technikum Wien. A mailing of information from the Alumni Club can be vetoed at any time. - - - - + + + + 5.2 Duties - + - + - + - The operator undertakes to plan and hold the degree program in a proper manner within the expected time period. The operator is obliged to give adequate notice of any changes to the accredited degree program. + The operator undertakes to plan and hold the degree program in a proper manner within the expected time period. The operator is obliged to give adequate notice of any changes to the accredited degree program. + + + + + Der Erhalter verpflichtet sich, jedenfalls folgende Dokumente zur Verfügung zu stellen: Studierendenausweis, Diploma Supplement, Urkunde über die Verleihung des akademischen Grades, Studienerfolgsbestätigung, Inskriptionsbestätigung. + + + + Der Erhalter verpflichtet sich zur sorgfaltsgemäßen Verwendung der personenbezogenen Daten der Studierenden. Die Daten werden nur im Rahmen der gesetzlichen und vertraglichen Verpflichtungen sowie des Studienbetriebes verwendet und nicht an nicht berechtigte Dritte weitergegeben. - - - - Der Erhalter verpflichtet sich, jedenfalls folgende Dokumente zur Verfügung zu stellen: Studierendenausweis, Diploma Supplement, Urkunde über die Verleihung des akademischen Grades, Studienerfolgsbestätigung, Inskriptionsbestätigung. - - - Der Erhalter verpflichtet sich zur sorgfaltsgemäßen Verwendung der personenbezogenen Daten der Studierenden. Die Daten werden nur im Rahmen der gesetzlichen und vertraglichen Verpflichtungen sowie des Studienbetriebes verwendet und nicht an nicht berechtigte Dritte weitergegeben. - - - - - - - The operator undertakes to make the following documents available in any event: student ID card, diploma supplement, certificate attesting to the award of the academic degree, confirmation of success in the degree program, confirmation of registration. - - - The operator is committed to use the personal data of the students carefully. The data is only to be used within the operator’s legal and contractual obligations as well as its program of studies and is not to be handed on to unauthorized third parties. - - - - - - 6. Rechte und Pflichten der Studierenden + + + 6. Rechte und Pflichten der Studierenden - + - + 6.1 Rechte - + - Die Studentin bzw. der Student hat das Recht auf - + Die Studentin bzw. der Student hat das Recht auf + - einen Studienbetrieb gemäß den im akkreditierten Studiengang idgF und in der Satzung der FH Technikum Wien idgF festgelegten Bedingungen; + einen Studienbetrieb gemäß den im akkreditierten Studiengang idgF und in der Satzung der FH Technikum Wien idgF festgelegten Bedingungen; - Unterbrechung der Ausbildung aus nachgewiesenen zwingenden persönlichen, gesundheitlichen oder beruflichen Gründen. + Unterbrechung der Ausbildung aus nachgewiesenen zwingenden persönlichen, gesundheitlichen oder beruflichen Gründen. - - - - 6.2 Pflichten - - - 6.2.1 Einhaltung studienrelevanter Bestimmungen - Die Studentin bzw der Student ist verpflichtet, insbesondere folgende Bestimmungen einzuhalten: - + - Studienordnung und Studienrechtliche Bestimmungen / Prüfungsordnung idgF + + The operator undertakes to make the following documents available in any event: student ID card, diploma supplement, certificate attesting to the award of the academic degree, confirmation of success in the degree program, confirmation of registration. - Hausordnung idgF - - - Brandschutzordnung idgF - - - Bibliotheksordnung idgF - - - Die für den jeweiligen Studiengang geltende/n Laborordnung/en idgF + The operator is committed to use the personal data of the students carefully. The data is only to be used within the operator’s legal and contractual obligations as well as its program of studies and is not to be handed on to unauthorized third parties. - - Diese Dokumente sind öffentlich zugänglich unter www.technikum-wien.at. - - + + + + - 6. Rights and Duties of the Students + 6. Rights and Duties of the Students - + - + - + 6.1 Rights - + The student has the right to - + - a course of study according to the conditions specified in the accredited degree program as amended and in the Statutes of the UAS Technikum Wien as amended; + a course of study according to the conditions specified in the accredited degree program as amended and in the Statutes of the UAS Technikum Wien as amended; - interrupt the training due to proof of compelling personal, health or professional reasons. + interrupt the training due to proof of compelling personal, health or professional reasons. - - - + + 6.2 Pflichten + + + 6.2.1 Einhaltung studienrelevanter Bestimmungen + Die Studentin bzw. der Student ist verpflichtet, insbesondere folgende Bestimmungen einzuhalten: + + + Studienordnung und Studienrechtliche Bestimmungen / Prüfungsordnung idgF + + + Hausordnung idgF + + + Brandschutzordnung idgF + + + Bibliotheksordnung idgF + + + Die für den jeweiligen Studiengang geltende/n Laborordnung/en idgF + + + + Diese Dokumente sind öffentlich zugänglich unter www.technikum-wien.at. + + 6.2.2 Studienbeitrag + Die Studentin bzw. der Student ist verpflichtet, zwei Wochen vor Beginn jedes Semesters (StudienanfängerInnen: bis 20. August vor Studienbeginn) einen Studienbeitrag gemäß Fachhochschul-Studiengesetz in der Höhe von derzeit € 363,36 netto pro Semester zu entrichten. Dies gilt auch in Semestern mit DiplomandInnenenstatus o.ä. Im Falle einer Erhöhung des gesetzlichen Studienbeitrags-satzes erhöht sich der angeführte Betrag entsprechend. Die vollständige Bezahlung des Studienbeitrags ist Voraussetzung für die Aufnahme bzw. die Fortsetzung des Studiums. Bei Nichtantritt des Studiums oder Abbruch zu Beginn oder während des Semesters verfällt der Studienbeitrag. + 6.2 Duties - 6.2.1 Compliance with regulations relevant to the studies - In particular the student undertakes to comply with the following regulations: + 6.2.1 Compliance with regulations relevant to the studies + In particular the student undertakes to comply with the following regulations: - Study Regulations and Studies Act Provisions / Examination Regulations as amended + Study Regulations and Studies Act Provisions / Examination Regulations as amended - General Rules of Conduct as amended + General Rules of Conduct as amended - Fire Regulations as amended + Fire Regulations as amended - Library Regulations as amended + Library Regulations as amended - The Laboratory Regulations applicable to the respective degree program as amended + The Laboratory Regulations applicable to the respective degree program as amended + + These documents are publically available at www.technikum-wien.at. - These documents are publically available at www.technikum-wien.at. - - 6.2.2 Studienbeitrag - Die Studentin bzw. der Student ist verpflichtet, zwei Wochen vor Beginn jedes Semesters (StudienanfängerInnen: bis 20. August vor Studienbeginn) einen Studienbeitrag gemäß Fachhochschul-Studiengesetz in der Höhe von derzeit € 363,36 netto pro Semester zu entrichten. Dies gilt auch in Semestern mit DiplomandInnenenstatus o.ä. Im Falle einer Erhöhung des gesetzlichen Studienbeitrags-satzes erhöht sich der angeführte Betrag entsprechend. Die vollständige Bezahlung des Studienbeitrags ist Voraussetzung für die Aufnahme bzw. die Fortsetzung des Studiums. Bei Nichtantritt des Studiums oder Abbruch zu Beginn oder während des Semesters verfällt der Studienbeitrag. - - 6.2.3 ÖH-Beitrag - Gemäß § 4 Abs 10 FHStG sind Studierende an Fachhochschulen Mitglieder der Österreichischen HochschülerInnenschaft (ÖH). Der/Die Studierende hat semesterweise einen ÖH-Beitrag an den Erhalter zu entrichten, der diesen an die ÖH abführt. Die Entrichtung des Betrags ist Voraussetzung für die Zulassung zum Studium bzw. für dessen Fortsetzung. - - 6.2.4 Kaution - Im Zuge der Einschreibung ist der Nachweis über die einbezahlte Kaution zu erbringen. - Die Kaution beträgt € 150,–. - Bei Nichtantritt des Studiums oder Abbruch während des ersten oder zweiten Semesters verfällt die Kaution. - Bei aufrechtem Inskriptionsverhältnis zu Beginn des zweiten Semesters wird die Kaution auf den Unkostenbeitrag (siehe nächster Punkt) des ersten und zweiten Semesters angerechnet. - 6.2.2 Tuition Fees + 6.2.2 Tuition Fees Two weeks before the beginning of each semester (new students: up to August 20 before taking up studies) the student undertakes to pay tuition fees according to the University of Applied Sciences Studies Act currently to the sum of € 363.36 net payable per semester. This also applies in semesters with graduand status etc. In the event of an increase in the legal tuition fees rate, the amount quoted will increase accordingly. Full payment of the tuition fees is a prerequisite both for enrolling on the course and continuing with the degree program. For non-commencement or termination of the study at the beginning or during the semester, the tuition fee is forfeited. - - 6.2.3 Austrian Student Union fee - In accordance with § 4 para.10 FHStG (University of Applied Sciences Studies Act) students at Universities of Applied Sciences are members of the Austrian National Union of Students (ÖH). Each semester the student is required to pay an ÖH fee to the operator. This fee is then paid to the ÖH. Payment of this fee is a prerequisite for admission to the course of study or its continuation. - - 6.2.4 Deposit - During the process of registration, proof of deposit paid must be provided. - The deposit is € 150,–. - For non-commencement of studies or termination during the first or second semester, the deposit shall be forfeited. - If, by the beginning of the second semester, registration has been completed correctly the deposit will be credited to the contribution towards expenses (see next point) for the first and second semester. - - 6.2.5 Unkostenbeitrag + + 6.2.3 ÖH-Beitrag + Gemäß § 4 Abs 10 FHStG sind Studierende an Fachhochschulen Mitglieder der Österreichischen HochschülerInnenschaft (ÖH). Der/Die Studierende hat semesterweise einen ÖH-Beitrag an den Erhalter zu entrichten, der diesen an die ÖH abführt. Die Entrichtung des Betrags ist Voraussetzung für die Zulassung zum Studium bzw. für dessen Fortsetzung. + + 6.2.4 Kaution + Im Zuge der Einschreibung ist der Nachweis über die einbezahlte Kaution zu erbringen. + Die Kaution beträgt € 150,–. + Bei Nichtantritt des Studiums oder Abbruch während des ersten oder zweiten Semesters verfällt die Kaution. + Bei aufrechtem Inskriptionsverhältnis zu Beginn des zweiten Semesters wird die Kaution auf den Unkostenbeitrag (siehe nächster Punkt) des ersten und zweiten Semesters angerechnet. + + + + + 6.2.5 Unkostenbeitrag Pro Semester ist ein Unkostenbeitrag zu entrichten, wobei es sich nicht um einen Pauschalbetrag handelt. Der Unkostenbeitrag stellt eine Abgeltung für über das Normalmaß hinausgehende Serviceleistungen der FH dar, z.B. Freifächer, Beratung/Info Auslands-studium, Sponsionsfeiern, Vorträge / Job-börse, Mensa etc. Die Höhe des Unkostenbeitrages beträgt derzeit € 75,– pro Semester. Eine allfällige Anpassung wird durch Aushang bekannt gemacht. - Der Unkostenbeitrag ist + Der Unkostenbeitrag ist im @@ -1269,17 +1160,20 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn 3. Semester gleichzeitig mit der Studiengebühr vor Beginn des Semesters zu entrichten. + 6.2.3 Austrian Student Union fee + In accordance with § 4 para.10 FHStG (University of Applied Sciences Studies Act) students at Universities of Applied Sciences are members of the Austrian National Union of Students (ÖH). Each semester the student is required to pay an ÖH fee to the operator. This fee is then paid to the ÖH. Payment of this fee is a prerequisite for admission to the course of study or its continuation. + + 6.2.4 Deposit + During the process of registration, proof of deposit paid must be provided. + The deposit is € 150,–. + For non-commencement of studies or termination during the first or second semester, the deposit shall be forfeited. + If, by the beginning of the second semester, registration has been completed correctly the deposit will be credited to the contribution towards expenses (see next point) for the first and second semester. + + 6.2.5 Contribution towards Expenses + A contribution towards expenses, which is not a lump sum, is payable per semester. The contribution towards expenses represents compensation for the services provided by the UAS that go beyond the normal level, such as electives, counseling/ information about studying abroad, graduation ceremonies, lectures/job market, cafeteria, etc. - Bei Vertragsauflösung vor Studienabschluss aus Gründen, die die Studentin bzw. der Student zu vertreten hat, oder auf deren bzw. dessen Wunsch, wird der Unkostenbeitrag zur Abdeckung der dem Erhalter erwachsenen administrativen Zusatzkosten einbehalten. - - 6.2.6 Lehr- und Lernbehelfe - Die Anschaffung unterrichtsbezogener Literatur und individueller Lernbehelfe ist durch den Unkostenbeitrag nicht abgedeckt. Eventuelle zusätzliche Kosten, die sich beispielsweise durch die studiengangsbezogene, gemeinsame Anschaffung von Lehr- bzw. Lernbehelfen (Skripten, CDs, Bücher, Projektmaterialien, Kopierpapier etc.) oder durch Exkursionen ergeben, werden von jedem Studiengang individuell eingehoben. - - 6.2.5 Contribution towards Expenses - A contribution towards expenses, which is not a lump sum, is payable per semester. The contribution towards expenses represents compensation for the services provided by the UAS that go beyond the normal level, such as electives, counseling/ information about studying abroad, graduation ceremonies, lectures/job market, cafeteria, etc. - - The amount of the contribution is currently € 75,– per semester. Any possible adjustment is posted on the noticeboard. - + The amount of the contribution is currently € 75,– per semester. Any possible adjustment is posted on the noticeboard. + In @@ -1289,249 +1183,271 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn the 3rd semester the contribution towards expenses must be paid together with the tuition fees before the start of the semester. - - If the contract is cancelled before graduation for reasons that are the fault of the student, or on their wishes, the contribution towards expenses shall be deducted to cover the additional administrative costs borne by the operator. - - 6.2.6 Teaching Aids and Learning Tools - The acquisition of teaching-related literature and individual learning tools is not covered by the contribution towards expenses. Any additional costs, which arise for example from the course-related, joint purchase of teaching and / or learning materials (scripts, CDs, books, project materials, copying paper, etc.) or result from field trips, are levied by each individual degree program. - - 6.2.7 Beibringung persönlicher Daten + Bei Vertragsauflösung vor Studienabschluss aus Gründen, die die Studentin bzw. der Student zu vertreten hat, oder auf deren bzw. dessen Wunsch, wird der Unkostenbeitrag zur Abdeckung der dem Erhalter erwachsenen administrativen Zusatzkosten einbehalten. + + 6.2.6 Lehr- und Lernbehelfe + Die Anschaffung unterrichtsbezogener Literatur und individueller Lernbehelfe ist durch den Unkostenbeitrag nicht abgedeckt. Eventuelle zusätzliche Kosten, die sich beispielsweise durch die studiengangsbezogene, gemeinsame Anschaffung von Lehr- bzw. Lernbehelfen (Skripten, CDs, Bücher, Projektmaterialien, Kopierpapier etc.) oder durch Exkursionen ergeben, werden von jedem Studiengang individuell eingehoben. + + 6.2.7 Beibringung persönlicher Daten + Die Studentin bzw. der Student ist verpflichtet, persönliche Daten beizubringen, die auf Grund eines Gesetzes, einer Verordnung oder eines Bescheides vom Erhalter erfasst werden müssen oder zur Erfüllung des Ausbildungsvertrages bzw. für den Studienbetrieb unerlässlich sind. - Die Studentin bzw. der Student ist verpflichtet, persönliche Daten beizubringen, die auf Grund eines Gesetzes, einer Verordnung oder eines Bescheides vom Erhalter erfasst werden müssen oder zur Erfüllung des Ausbildungsvertrages bzw. für den Studienbetrieb unerlässlich sind. + + 6.2.8 Aktualisierung eigener Daten und Bezug von Informationen + Die Studentin bzw. der Student hat unaufgefordert dafür zu sorgen, dass die von ihr/ihm beigebrachten Daten aktuell sind. Änderungen sind der Studiengangsassistenz unverzüglich schriftlich mitzuteilen. Darüber hinaus trifft sie/ihn die Pflicht, sich von studienbezogenen Informationen, die ihr/ihm an die vom Erhalter zur Verfügung gestellte Emailadresse zugestellt werden, in geeigneter Weise Kenntnis zu verschaffen. - - 6.2.8 Aktualisierung eigener Daten und Bezug von Informationen - Die Studentin bzw. der Student hat unaufgefordert dafür zu sorgen, dass die von ihr/ihm beigebrachten Daten aktuell sind. Änderungen sind der Studiengangsassistenz unverzüglich schriftlich mitzuteilen. Darüber hinaus trifft sie/ihn die Pflicht, sich von studienbezogenen Informationen, die ihr/ihm an die vom Erhalter zur Verfügung gestellte Emailadresse zugestellt werden, in geeigneter Weise Kenntnis zu verschaffen. - 6.2.7 Providing Personal Data - The student is obliged to produce personal data which must be registered because of a law, regulation or a decision by the operator, or is essential fort he fulfilling of the training contract or fort he program of studies. - - - - 6.2.8 Updating personal data and the retrieval of information - Without being reminded, the student must ensure that the data provided by them is up-to-date. Changes are to be immediately communicated to the administrative assistant in writing. Furthermore, it is the students’ responsibility to make themselves suitably aware of information relating to their studies which has been sent to them at the email address provided for them by the operator. - - + If the contract is cancelled before graduation for reasons that are the fault of the student, or on their wishes, the contribution towards expenses shall be deducted to cover the additional administrative costs borne by the operator. + + 6.2.6 Teaching Aids and Learning Tools + The acquisition of teaching-related literature and individual learning tools is not covered by the contribution towards expenses. Any additional costs, which arise for example from the course-related, joint purchase of teaching and / or learning materials (scripts, CDs, books, project materials, copying paper, etc.) or result from field trips, are levied by each individual degree program. + + + + 6.2.7 Providing Personal Data + The student is obliged to produce personal data which must be registered because of a law, regulation or a decision by the operator, or is essential fort he fulfilling of the training contract or fort he program of studies. + + + + 6.2.8 Updating personal data and the retrieval of information + + Without being reminded, the student must ensure that the data provided by them is up-to-date. Changes are to be immediately communicated to the administrative assistant in writing. Furthermore, it is the students’ responsibility to make themselves suitably aware of information relating to their studies which has been sent to them at the email address provided for them by the operator. + + + - 6.2.9 Verwertungsrechte + 6.2.9 Verwertungsrechte + - Sofern nicht im Einzelfall andere Regelungen zwischen dem Erhalter und der Studentin oder dem Studenten getroffen wurden, ist die Studentin oder der Student verpflichtet, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen auf dessen schriftliche Anfrage hin anzubieten. - - 6.2.10 Aufzeichnungen und Mitschnitte - Es ist der/dem Studierenden ausdrücklich untersagt, Lehrveranstaltungen als Ganzes oder nur Teile davon aufzuzeichnen und/oder mitzuschneiden (z.B. durch Film- und/oder Tonaufnahmen oder sonstige hierfür geeignete audiovisuelle Mittel). Darüber hinaus ist jede Form der öffentlichen Zurverfügungstellung (drahtlos oder drahtgebunden) der vorgenannten Aufnahmen z.B. in sozialen Netzwerken wie Facebook, StudiVZ etc, aber auch auf Youtube usw. oder durch sonstige für diese Zwecke geeignete Kommunikations-mittel untersagt. Diese Regelungen gelten sinngemäß auch für Skripten, sonstige Lernbehelfe und Prüfungsangaben. - Ausgenommen hiervon ist eine Aufzeichnung zu ausschließlichen Lern-, Studien- und Forschungszwecken und zum privaten Gebrauch, sofern hierfür der Vortragende vorab ausdrücklich seine schriftliche Zustimmung erteilt hat. - - - 6.2.11 Geheimhaltungspflicht + Sofern nicht im Einzelfall andere Regelungen zwischen dem Erhalter und der Studentin oder dem Studenten getroffen wurden, ist die Studentin oder der Student verpflichtet, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen auf dessen schriftliche Anfrage hin anzubieten. + + 6.2.10 Aufzeichnungen und Mitschnitte + Es ist der/dem Studierenden ausdrücklich untersagt, Lehrveranstaltungen als Ganzes oder nur Teile davon aufzuzeichnen und/oder mitzuschneiden (z.B. durch Film- und/oder Tonaufnahmen oder sonstige hierfür geeignete audiovisuelle Mittel). Darüber hinaus ist jede Form der öffentlichen Zurverfügungstellung (drahtlos oder drahtgebunden) der vorgenannten Aufnahmen z.B. in sozialen Netzwerken wie Facebook, StudiVZ etc, aber auch auf Youtube usw. oder durch sonstige für diese Zwecke geeignete Kommunikations-mittel untersagt. Diese Regelungen gelten sinngemäß auch für Skripten, sonstige Lernbehelfe und Prüfungsangaben. + Ausgenommen hiervon ist eine Aufzeichnung zu ausschließlichen Lern-, Studien- und Forschungszwecken und zum privaten Gebrauch, sofern hierfür der Vortragende vorab ausdrücklich seine schriftliche Zustimmung erteilt hat. + + + 6.2.11 Geheimhaltungspflicht - Die Studentin bzw. der Student ist zur Geheimhaltung von Forschungs- und Entwicklungsaktivitäten und -ergebnissen gegenüber Dritten verpflichtet. - - - 6.2.9 Exploitation Rights - Unless other arrangements have been agreed between the operator and the student at an individual level, on written request, the student undertakes to offer the operator the rights to research and development results. - - - - 6.2.10 Recordings - It is expressly forbidden for the student to record lectures in part or in total (e.g. by using film and / or sound recordings or other audio-visual means suitable for this purpose). In addition, any form of making the aforementioned recordings publically available (wired or wireless) for example in social networks such as Facebook, StudiVZ etc, but also on Youtube, etc., or by other means of communication designed for these purposes is strictly prohibited. These regulations shall apply correspondingly to scripts, other learning aids and examination data. - The only exception is a recording exclusively for the purpose of learning, study and research and for personal use, provided that the lecturer has expressly granted his / her prior written consent. - - - - - 6.2.11 Confidentiality - The student is required to maintain confidentiality towards third parties of research and development activities and results. - - - 6.2.12 Unfallmeldung - Im Falle eines Unfalles mit körperlicher Verletzung des/der Studierenden im Zusammenhang mit dem Studium ist die/der Studierende verpflichtet, diesen innerhalb von drei Tagen dem Studiengangssekretariat zu melden. Dies betrifft auch Wegunfälle zur oder von der FH. - - 6.2.13 Schadensmeldung - Im Falle des Eintretens eines Schadens am Inventar der Fachhochschule ist der/die Studierende verpflichtet, diesen innerhalb von drei Tagen dem Studiengangssekretariat zu melden. Allfällige Haftungsansprüche bleiben hiervon unberührt. - - 6.2.14 Rückgabeverpflichtung bei Studienende - Die Studentin bzw der Student ist verpflichtet, bei einer Beendigung des Studiums unverzüglich alle zur Verfügung gestellten Gerätschaften, Bücher, Schlüssel und sonstige Materialien zurückzugeben. - - - 7. Beendigung des Vertrages + Die Studentin bzw. der Student ist zur Geheimhaltung von Forschungs- und Entwicklungsaktivitäten und -ergebnissen gegenüber Dritten verpflichtet. + + 6.2.9 Exploitation Rights + Unless other arrangements have been agreed between the operator and the student at an individual level, on written request, the student undertakes to offer the operator the rights to research and development results. + + + + 6.2.10 Recordings + It is expressly forbidden for the student to record lectures in part or in total (e.g. by using film and / or sound recordings or other audio-visual means suitable for this purpose). In addition, any form of making the aforementioned recordings publically available (wired or wireless) for example in social networks such as Facebook, StudiVZ etc, but also on Youtube, etc., or by other means of communication designed for these purposes is strictly prohibited. These regulations shall apply correspondingly to scripts, other learning aids and examination data. + The only exception is a recording exclusively for the purpose of learning, study and research and for personal use, provided that the lecturer has expressly granted his / her prior written consent. + + + + + + 6.2.11 Confidentiality + The student is required to maintain confidentiality towards third parties of research and development activities and results. + + + + 6.2.12 Unfallmeldung + Im Falle eines Unfalles mit körperlicher Verletzung des/der Studierenden im Zusammenhang mit dem Studium ist die/der Studierende verpflichtet, diesen innerhalb von drei Tagen dem Studiengangssekretariat zu melden. Dies betrifft auch Wegunfälle zur oder von der FH. + + 6.2.13 Schadensmeldung + Im Falle des Eintretens eines Schadens am Inventar der Fachhochschule ist der/die Studierende verpflichtet, diesen innerhalb von drei Tagen dem Studiengangssekretariat zu melden. Allfällige Haftungsansprüche bleiben hiervon unberührt. + + 6.2.14 Rückgabeverpflichtung bei Studienende + Die Studentin bzw. der Student ist verpflichtet, bei einer Beendigung des Studiums unverzüglich alle zur Verfügung gestellten Gerätschaften, Bücher, Schlüssel und sonstige Materialien zurückzugeben. + + + 7. Beendigung des Vertrages - 7.1 Auflösung im beiderseitigen Einvernehmen - - Im beiderseitigen Einvernehmen ist die Auflösung des Ausbildungsvertrages jederzeit ohne Angabe von Gründen möglich. Die einvernehmliche Auflösung bedarf der Schriftform. - - - 7.2 Kündigung durch die Studentin bzw. den Studenten - - Die Studentin bzw. der Student kann den Ausbildungsvertrag schriftlich jeweils zum Ende eines Semesters kündigen. - - 6.2.12 Accident Report - In the event of an accident with bodily injury to a student in connection with his / her studies, he / she is obliged to report this to the administrative assistant of the degree program within three days. This also applies to accidents on the way to or from the UAS. - - - 6.2.13 Damage Report - If any damage should be caused to the inventory of the University of Applied Sciences, the student undertakes to report this to the administrative assistant of the degree program within three days. Any liability claims shall remain unaffected. - - 6.2.14 Obligation to Return Borrowed Items - The student undertakes to return promptly all equipment, books, keys and other materials that have been made available, when the course is finished or broken off. - - - - - 7. Termination of the contract + - 7.1 Annulment by Mutual Agreement - - By mutual consent, the annulment of the training contract is possible at any time, without notice and for any reason. The amicable annulment must be put down in writing. - - + 7.1 Auflösung im beiderseitigen Einvernehmen + Im beiderseitigen Einvernehmen ist die Auflösung des Ausbildungsvertrages jederzeit ohne Angabe von Gründen möglich. Die einvernehmliche Auflösung bedarf der Schriftform. + + + 7.2 Kündigung durch die Studentin bzw. den Studenten + + Die Studentin bzw. der Student kann den Ausbildungsvertrag schriftlich jeweils zum Ende eines Semesters kündigen. + + 6.2.12 Accident Report + In the event of an accident with bodily injury to a student in connection with his / her studies, he / she is obliged to report this to the administrative assistant of the degree program within three days. This also applies to accidents on the way to or from the UAS. + + + 6.2.13 Damage Report + If any damage should be caused to the inventory of the University of Applied Sciences, the student undertakes to report this to the administrative assistant of the degree program within three days. Any liability claims shall remain unaffected. + + 6.2.14 Obligation to Return Borrowed Items + The student undertakes to return promptly all equipment, books, keys and other materials that have been made available, when the course is finished or broken off. + + + + + + 7. Termination of the contract + + + + + 7.1 Annulment by Mutual Agreement + + + By mutual consent, the annulment of the training contract is possible at any time, without notice and for any reason. The amicable annulment must be put down in writing. + + 7.2 Termination by the Student - - The student may terminate the training contract in writing at the end of each semester. - - + + The student may terminate the training contract in writing at the end of each semester. + + - - 7.3 Automatische Beendigung des Vertrages - Nach erfolgreicher Beendigung des Studiums endet der Vertrag automatisch mit der Verleihung des akademischen Grades. - Der Vertrag endet automatisch durch die negative Beurteilung der letztmöglichen Prüfungswiederholung. - - + Nach erfolgreicher Beendigung des Studiums endet der Vertrag automatisch mit der Verleihung des akademischen Grades. + Der Vertrag endet automatisch durch die negative Beurteilung der letztmöglichen Prüfungswiederholung. + + 7.4 Ausschluss durch den Erhalter - Der Erhalter kann die Studentin bzw. den Studenten aus wichtigem Grund mit sofortiger Wirkung vom weiteren Studium ausschließen, und zwar beispielsweise wegen - + Der Erhalter kann die Studentin bzw. den Studenten aus wichtigem Grund mit sofortiger Wirkung vom weiteren Studium ausschließen, und zwar beispielsweise wegen + - nicht genügender Leistung im Sinne der Prüfungsordnung; + nicht genügender Leistung im Sinne der Prüfungsordnung; - mehrmaligem unentschuldigten Verletzen der Anwesenheitspflicht; + mehrmaligem unentschuldigten Verletzen der Anwesenheitspflicht; - wiederholtem Nichteinhalten von Prüfungsterminen und Abgabeterminen für Seminararbeiten, Projektarbeiten etc.; + wiederholtem Nichteinhalten von Prüfungsterminen und Abgabeterminen für Seminararbeiten, Projektarbeiten etc.; - schwerwiegender bzw. wiederholter Verstöße gegen die Hausordnung; + schwerwiegender bzw. wiederholter Verstöße gegen die Hausordnung; - persönlichem Verhalten, das zu einer Beeinträchtigung des Images und/oder Betriebes des Studienganges, der Fach-hochschule bzw. des Erhalters oder von Personen führt, die für die Fachhochschule bzw. den Erhalter tätig sind; + persönlichem Verhalten, das zu einer Beeinträchtigung des Images und/oder Betriebes des Studienganges, der Fach-hochschule bzw. des Erhalters oder von Personen führt, die für die Fachhochschule bzw. den Erhalter tätig sind; - Verletzung der Verpflichtung, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen anzubieten (siehe Pkt. 6.2.9); + Verletzung der Verpflichtung, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen anzubieten (siehe Pkt. 6.2.9); - Verletzung der Geheimhaltungspflicht (siehe Pkt. 6.2.11); + Verletzung der Geheimhaltungspflicht (siehe Pkt. 6.2.11); - strafgerichtlicher Verurteilung (wobei die Art des Deliktes und der Grad der Schuld berücksichtigt werden); + strafgerichtlicher Verurteilung (wobei die Art des Deliktes und der Grad der Schuld berücksichtigt werden); - - + 7.3 Automatic Ending of the Contract - - When the course of study has been completed successfully the contract ends automatically with the awarding of the academic degree. - The contract ends automatically if the last possible repeat of an examination ends in failure. - + + When the course of study has been completed successfully the contract ends automatically with the awarding of the academic degree. + The contract ends automatically if the last possible repeat of an examination ends in failure. + 7.4 Expulsion by the Operator - The operator may exclude the student from further study with immediate effect for good cause, for example because of - - + The operator may exclude the student from further study with immediate effect for good cause, for example because of + + - insufficient achievement for the purposes of the examination regulations; + insufficient achievement for the purposes of the examination regulations; - repeated unexcused violation of the compulsory attendance regulation; + repeated unexcused violation of the compulsory attendance regulation; - repeated non-compliance with examination dates and deadlines for seminar papers, project work etc.; + repeated non-compliance with examination dates and deadlines for seminar papers, project work etc.; - serious or repeated violation of the house rules; + serious or repeated violation of the house rules; - personal behavior, which leads to an adverse effect on the image and / or operation of the course, the university or the operator or on persons who are working for the university or the operator; + personal behavior, which leads to an adverse effect on the image and / or operation of the course, the university or the operator or on persons who are working for the university or the operator; - breach of the obligation to offer the operator the rights to research and development results (see Section 6.2.9); + breach of the obligation to offer the operator the rights to research and development results (see Section 6.2.9); - breach of confidentiality (see Section 6.2.11); + breach of confidentiality (see Section 6.2.11); - a criminal conviction (whereby the nature of the offence and the level of culpability are taken into account); + a criminal conviction (whereby the nature of the offence and the level of culpability are taken into account); - - - + + - Nichterfüllung finanzieller Verpflichtungen trotz Mahnung (z.B. Unkostenbeitrag, Studienbeitrag etc.); + Nichterfüllung finanzieller Verpflichtungen trotz Mahnung (z.B. Unkostenbeitrag, Studienbeitrag etc.); - Weigerung zur Beibringung von Daten (siehe Pkt. 6.2.7); + Weigerung zur Beibringung von Daten (siehe Pkt. 6.2.7); - Plagiieren im Rahmen wissenschaftlicher Arbeiten. + Plagiieren im Rahmen wissenschaftlicher Arbeiten. - - Der Ausschluss kann mündlich erklärt werden. Mit Ausspruch des Ausschlusses endet der Ausbildungsvertrag, es sei denn, es wird ausdrücklich auf einen anderen Endtermin hingewiesen. Eine schriftliche Bestätigung des Ausschlusses wird innerhalb von zwei Wochen nach dessen Ausspruch per Post an die bekannt gegebene Adresse abgeschickt oder auf andere geeignete Weise übermittelt. - Gleichzeitig mit dem Ausspruch des Ausschlusses kann auch ein Hausverbot verhängt werden. - - - - - non-fulfilment of the financial obligations, despite a reminder (e.g. contribution towards expenses, tuition fees , etc.); - - - refusal to provide any data (see section 6.2.7); - - - plagiarism in academic work. - - - - - The expulsion can be explained verbally. Once notice of the expulsion has been given the training contract ends unless another deadline is explicitly made clear. Within two weeks of notice being given, written confirmation of the expulsion is mailed by post to the address provided or transmitted in any other appropriate manner. - Simultaneously with notice of expulsion being given an exclusion order from entering the building may also be imposed. - - - - - - - 8. Ergänzende Vereinbarungen + + Der Ausschluss kann mündlich erklärt werden. Mit Ausspruch des Ausschlusses endet der Ausbildungsvertrag, es sei denn, es wird ausdrücklich auf einen anderen Endtermin hingewiesen. Eine schriftliche Bestätigung des Ausschlusses wird innerhalb von zwei Wochen nach dessen Ausspruch per Post an die bekannt gegebene Adresse abgeschickt oder auf andere geeignete Weise übermittelt. + Gleichzeitig mit dem Ausspruch des Ausschlusses kann auch ein Hausverbot verhängt werden. + + + + 8. Ergänzende Vereinbarungen - - - Das gesamte Studienprogramm wird in englischer Sprache angeboten. Die Studentin bzw. der Student erklärt, die englische Sprache in Wort und Schrift in dem für eine akademische Ausbildung erforderlichen Ausmaß zu beherrschen. + + + Das gesamte Studienprogramm wird in englischer Sprache angeboten. Die Studentin bzw. der Student erklärt, die englische Sprache in Wort und Schrift in dem für eine akademische Ausbildung erforderlichen Ausmaß zu beherrschen. - - Studierende des Studiengangs sind verpflichtet, eine EDV-Ausstattung zu beschaffen und zu unterhalten, die es ermöglicht, an den Fernlehrelementen teilzunehmen. Die gesamten Kosten der Anschaffung und des Betriebs (inkl. Kosten für Internet und e-mail) trägt der Student bzw. die Studentin. - + + Studierende des Studiengangs sind verpflichtet, eine EDV-Ausstattung zu beschaffen und zu unterhalten, die es ermöglicht, an den Fernlehrelementen teilzunehmen. Die gesamten Kosten der Anschaffung und des Betriebs (inkl. Kosten für Internet und e-mail) trägt der Student bzw. die Studentin. - - + + + non-fulfilment of the financial obligations, despite a reminder (e.g. contribution towards expenses, tuition fees , etc.); + + + refusal to provide any data (see section 6.2.7); + + + plagiarism in academic work. + + + + + The expulsion can be explained verbally. Once notice of the expulsion has been given the training contract ends unless another deadline is explicitly made clear. Within two weeks of notice being given, written confirmation of the expulsion is mailed by post to the address provided or transmitted in any other appropriate manner. + Simultaneously with notice of expulsion being given an exclusion order from entering the building may also be imposed. + + + + + 8. Supplementary Agreements + + + + The entire degree program is offered in English. The student declares he / she masters the + English language in word and in writing to the extent necessary for an academic degree program. + + + + Students in the program are required to obtain and maintain computer equipment which allows them to participate in the distance learning elements. The total cost of acquisition and operation (including costs for Internet and e-mail) shall be borne by the student. + + + + - + 9. @@ -1539,50 +1455,15 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn Unwirksamkeit von Vertrags-bestimmungen + - - Sollten einzelne Bestimmungen dieses Vertrages unwirksam oder nichtig sein oder werden, so berührt dies die Gültigkeit der übrigen Bestimmungen dieses Vertrages nicht. - - - - - 8. Supplementary Agreements - - - - The entire degree program is offered in English. The student declares he / she masters the - English language in word and in writing to the extent necessary for an academic degree program. - - - - - Students in the program are required to obtain and maintain computer equipment which allows them to participate in the distance learning elements. The total cost of acquisition and operation (including costs for Internet and e-mail) shall be borne by the student. - - - - - - - + + Sollten einzelne Bestimmungen dieses Vertrages unwirksam oder nichtig sein oder werden, so berührt dies die Gültigkeit der übrigen Bestimmungen dieses Vertrages nicht. + + + - - 9. - - - 8. - - - - Invalidity of Contractual Provisions - - - If any provision of this agreement should be or become invalid or void, this shall not affect the validity of the remaining provisions of this agreement. - - - - - - + 10. @@ -1598,22 +1479,33 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn Die englische Übersetzung des deutschsprachigen Vertrages dient nur als Referenz. Rechtsgültigkeit hat ausschließlich der deutsche Vertrag. - Der Ausbildungsvertrag ist gebührenfrei. - - - - - + Der Ausbildungsvertrag ist gebührenfrei. + + - - 10. + + 9. - 9. + 8. - - Copies, Fees, Place of Jurisdiction, Applicable Law + Invalidity of Contractual Provisions + + + If any provision of this agreement should be or become invalid or void, this shall not affect the validity of the remaining provisions of this agreement. + + + + + + 10. + + + 9. + + + Copies, Fees, Place of Jurisdiction, Applicable Law This contract is provided in duplicate. An original remains with the competent administrations office of the University of Applied Sciences’ Degree Program. A copy is given to the student. @@ -1623,66 +1515,66 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn The English translation of the German contract is intended as a reference only. Only the German version of this contract is legally valid in a Court of Law. - The training contract is free of charge. - - - + + The training contract is free of charge. + + - - + + - - - - - - - - - Wien (Vienna), - - - Ort, Datum (City, Date) + - + - Ort, Datum (City, Date) - - - - + Wien (Vienna), - - Die Studentin/der Student /ggf. gesetzliche VertreterInnen + Ort, Datum (City, Date) + + + + + + Ort, Datum (City, Date) + + + + + + + + + + Die Studentin/der Student /ggf. gesetzliche VertreterInnen - - (The student /if necessary legal representatives) + + (The student /if necessary legal representatives) - + - - Für die FH Technikum Wien - - (For the UAS Technikum Wien) + + Für die FH Technikum Wien + + (For the UAS Technikum Wien) - + - + \ No newline at end of file From 18729af6392fa34429b10e91c0463197c96bfb2f Mon Sep 17 00:00:00 2001 From: kindlm Date: Tue, 12 Jul 2016 10:49:02 +0200 Subject: [PATCH 089/114] Verbesserungen in Personensuche --- vilesci/personen/personen_details.php | 6 ++++- vilesci/personen/suche.php | 34 ++++++++++++++++++++------- 2 files changed, 30 insertions(+), 10 deletions(-) diff --git a/vilesci/personen/personen_details.php b/vilesci/personen/personen_details.php index 956bbfd7c..9fde7d32e 100644 --- a/vilesci/personen/personen_details.php +++ b/vilesci/personen/personen_details.php @@ -346,6 +346,10 @@ if(!$error_person_save) $kurzbeschreibung = $person->kurzbeschreibung; } +$akte = new akte(); +if($akte->getAkten($person_id, 'Lichtbil')) + $dms_id_lichtbild = $akte->result[0]->dms_id; + // PERSON echo " - + @@ -556,7 +563,7 @@ else if($method=="lehrveranstaltungen") echo'
    '; echo $p->t('global/studiengang').':'; @@ -606,6 +614,17 @@ else if($method=="lehrveranstaltungen") //Uebersicht LVs + /* Erklaerung der Datumszeitraeume ab Zeile 650: + * |=============== Studiensemester ===============| + * |--------------| Incoming beginnt vor SS-Beginn und endet VOR SS-Ende jedoch ueberwiegend innerhalb SS + * |--------------| Incoming beginnt VOR SS-Ende und endet NACH SS-Ende, jedoch ueberwiegend innerhalb SS + * |------------------------------| Incoming ist innerhalb oder GENAU SS da + * |------------------------------------------------------| Incoming ist VOR SS-Anfang und NACH SS-Ende da, jedoch ueberwiegend ueberlappend mit SS + * --------------------------------------------------------- Von und Bis ist NULL + * -------------------| Von ist NULL und bis innerhalb SS + * |----------------------- Bis ist NULL und von innerhalb SS + */ + $qry = "SELECT tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_lehrveranstaltung.studiengang_kz, tbl_lehrveranstaltung.ects, tbl_lehrveranstaltung.bezeichnung, tbl_lehrveranstaltung.semester, tbl_lehrveranstaltung.sprache, @@ -638,9 +657,15 @@ else if($method=="lehrveranstaltungen") JOIN public.tbl_preincoming using(preincoming_id) WHERE lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id AND - (von is null OR von <= '$stsem->start') - AND - (bis is null OR bis >= (DATE '$stsem->ende')) + ( + (bis - '$stsem->start' > '$stsem->start' - von) OR + ('$stsem->start' <= von AND bis >= '$stsem->ende' AND '$stsem->ende' - von > bis - '$stsem->ende') OR + (von >= '$stsem->start' AND bis <= '$stsem->ende') OR + (von <= '$stsem->start' AND bis >= '$stsem->ende') OR + (von IS NULL AND bis IS NULL) OR + (von IS NULL AND bis <= '$stsem->ende' AND bis > '$stsem->start') OR + (bis IS NULL AND von < '$stsem->ende' AND von >= '$stsem->start') + ) AND aktiv = true )a ) as anzahl FROM @@ -697,6 +722,8 @@ else if($method=="lehrveranstaltungen") $typ = 'BA'; else if ($studiengang->typ == 'm') $typ = 'MA'; + else + $typ = '-'; echo ''; echo ''; if(!$preincoming->checkLehrveranstaltung($preincoming->preincoming_id, $row->lehrveranstaltung_id) && $freieplaetze>0) @@ -1806,7 +1833,7 @@ else - + diff --git a/locale/de-AT/incoming.php b/locale/de-AT/incoming.php index cf59da9bb..44fcf6328 100755 --- a/locale/de-AT/incoming.php +++ b/locale/de-AT/incoming.php @@ -120,5 +120,7 @@ $this->phrasen['incoming/bereitsAusgewaehlt']='Diese Universität wurde bereits $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'; -$this->phrasen['incoming/noVacancies']='LV voll belegt'; +$this->phrasen['incoming/noVacancies']='LV voll belegt'; +$this->phrasen['incoming/alleStudiengaenge']='Alle Studiengänge'; +$this->phrasen['incoming/downloadLearningAgreement']='Download Learning Agreement'; ?> \ No newline at end of file diff --git a/locale/en-US/incoming.php b/locale/en-US/incoming.php index a99e43e0d..df7869c90 100755 --- a/locale/en-US/incoming.php +++ b/locale/en-US/incoming.php @@ -121,5 +121,7 @@ $this->phrasen['incoming/bereitsAusgewaehlt']='This universtity has already been $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'; -$this->phrasen['incoming/noVacancies']='No vacancies'; +$this->phrasen['incoming/noVacancies']='No vacancies'; +$this->phrasen['incoming/alleStudiengaenge']='All Degree Programs'; +$this->phrasen['incoming/downloadLearningAgreement']='Download Learning Agreement'; ?> \ No newline at end of file diff --git a/vilesci/personen/incoming_detail.php b/vilesci/personen/incoming_detail.php index fb872e042..7cc8205f9 100644 --- a/vilesci/personen/incoming_detail.php +++ b/vilesci/personen/incoming_detail.php @@ -1074,6 +1074,7 @@ function print_lehrveranstaltungen()
    @@ -464,7 +468,7 @@ echo "
    Anmerkungen Bild hochladen

    diff --git a/vilesci/personen/suche.php b/vilesci/personen/suche.php index 6c1ad5b35..35500dd50 100644 --- a/vilesci/personen/suche.php +++ b/vilesci/personen/suche.php @@ -47,6 +47,11 @@ if(isset($_GET['searchstr'])) else $searchstr = ''; +if(isset($_GET['filter'])) + $filter = $_GET['filter']; +else + $filter = ''; + $datum_obj = new datum(); echo ' @@ -70,20 +75,31 @@ echo '
    Bitte Suchbegriff eingeben: + Nur MitarbeiterInnen + Nur Studierende
    '; if($searchstr!='') { - $qry = "SELECT person_id FROM public.tbl_person WHERE person_id in( - SELECT distinct person_id FROM public.tbl_person LEFT JOIN public.tbl_benutzer USING(person_id) WHERE - nachname ~* '".$db->db_escape($searchstr)."' OR - vorname ~* '".$db->db_escape($searchstr)."' OR - alias ~* '".$db->db_escape($searchstr)."' OR - COALESCE(nachname,'') || ' ' || COALESCE(vorname,'') = '".$db->db_escape($searchstr)."' OR - COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') = '".$db->db_escape($searchstr)."' OR - uid ~* '".$db->db_escape($searchstr)."' - ) ORDER BY nachname, vorname;"; + $qry = "SELECT + distinct on (nachname, vorname, person_id) * + FROM + public.tbl_person + LEFT JOIN public.tbl_benutzer USING(person_id)"; + + if ($filter=='mitarbeiter') + $qry .= " JOIN public.tbl_mitarbeiter ON (uid=mitarbeiter_uid) "; + elseif ($filter=='student') + $qry .= " JOIN public.tbl_prestudent USING (person_id) "; + + $qry .= " WHERE true + AND nachname ~* '".$db->db_escape($searchstr)."' OR + vorname ~* '".$db->db_escape($searchstr)."' OR + (nachname || ' ' || vorname) ~* '".$db->db_escape($searchstr)."' OR + (vorname || ' ' || nachname) ~* '".$db->db_escape($searchstr)."' OR + uid=".$db->db_add_param($searchstr)." + ORDER BY nachname, vorname;"; if($result = $db->db_query($qry)) { From c57aa20058616e7419ca31657ea1514968be6778 Mon Sep 17 00:00:00 2001 From: kindlm Date: Wed, 13 Jul 2016 10:53:50 +0200 Subject: [PATCH 090/114] =?UTF-8?q?Incoming-Plattform=20=C3=BCberarbeitet?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Zählung Anmeldungen korrigiert - Learning Agreement als statischer Link ins DMS - StudiengangsDropDown auch englisch - "Austausch" und "Freemover" in Austauschprogramm-DropDown --- cis/public/incoming/incoming.php | 41 +++++++++++++++++++++++----- locale/de-AT/incoming.php | 4 ++- locale/en-US/incoming.php | 4 ++- vilesci/personen/incoming_detail.php | 2 ++ 4 files changed, 42 insertions(+), 9 deletions(-) diff --git a/cis/public/incoming/incoming.php b/cis/public/incoming/incoming.php index 8f85e5d9a..01d57cfdf 100644 --- a/cis/public/incoming/incoming.php +++ b/cis/public/incoming/incoming.php @@ -203,7 +203,14 @@ if($method =="austauschprogram") $selected=""; if($mob->mobilitaetsprogramm_code == $preincoming->mobilitaetsprogramm_code) $selected = "selected"; - echo '\n"; + $anzeigetext=""; + if ($mob->kurzbz=='Austausch' && $sprache=='English') + $anzeigetext = 'Exchange'; + elseif ($mob->kurzbz=='selbst') + $anzeigetext = 'Freemover'; + else + $anzeigetext = $mob->kurzbz; + echo '\n"; } echo '
    '.$row->lehrveranstaltung_id.'4. '.$p->t('incoming/lehrveranstaltungenauswählen').'
    5. '.$p->t('incoming/learningagreementerstellen').'5. '.$p->t('incoming/downloadLearningAgreement').'
    6. '.$p->t("incoming/uploadLearningAgreement").'
    + @@ -1083,6 +1084,7 @@ function print_lehrveranstaltungen() foreach($lv->lehrveranstaltungen as $row) { echo ''; + echo ''; echo ''; echo ''; echo ''; From c309c311620e21b3b812597f072d96cc4da5f27f Mon Sep 17 00:00:00 2001 From: kindlm Date: Wed, 13 Jul 2016 10:54:26 +0200 Subject: [PATCH 091/114] Korrekturen Ausbildungsvertrag --- system/xsl/AusbVerEng_0.xsl | 4 ++-- system/xsl/Ausbildungsver_0.xsl | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/system/xsl/AusbVerEng_0.xsl b/system/xsl/AusbVerEng_0.xsl index eab924112..4b4e2cffd 100644 --- a/system/xsl/AusbVerEng_0.xsl +++ b/system/xsl/AusbVerEng_0.xsl @@ -744,7 +744,7 @@ - Gemäß § 3 Absatz 1 des Bildungsdokumentationsgesetzes und der Bildungsdokumentationsverordnung-Fachhochschulen hat der Erhalter die Sozialversicherungsnummer zu erfassen und gemäß § 7 Absatz 2 im Wege der Agentur für Qualitätssicherung und Akkreditierung Austria an das zuständige Bundesministerium und die Bundesanstalt Statistik Österreich zu übermitteln. + Gemäß § 3 Absatz 1 des Bildungsdokumentationsgesetzes idgF und der Bildungsdokumentationsverordnung-Fachhochschulen idgFhat der Erhalter die Sozialversicherungsnummer zu erfassen und gemäß § 7 Absatz 2 im Wege der Agentur für Qualitätssicherung und Akkreditierung Austria an das zuständige Bundesministerium und die Bundesanstalt Statistik Österreich zu übermitteln. @@ -768,7 +768,7 @@ - Pursuant to § 3 section 1 of the Education Documentation Act and the Education Documentation Regulation for Universities of Applied Sciences, the operator shall record the social security number pursuant to § 7 paragraph 2 and shall transfer it via the Agency for Quality Assurance and Accreditation Austria to the competent Ministry and Statistics Austria. + Pursuant to § 3 section 1 of the Education Documentation Act as amended and the Education Documentation Regulation for Universities of Applied Sciences as amended, the operator shall record the social security number pursuant to § 7 paragraph 2 and shall transfer it via the Agency for Quality Assurance and Accreditation Austria to the competent Ministry and Statistics Austria. diff --git a/system/xsl/Ausbildungsver_0.xsl b/system/xsl/Ausbildungsver_0.xsl index 4d8ef9d5a..c55a2f38e 100644 --- a/system/xsl/Ausbildungsver_0.xsl +++ b/system/xsl/Ausbildungsver_0.xsl @@ -395,7 +395,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - Gemäß § 3 Absatz 1 des Bildungsdokumentationsgesetzes und der Bildungsdokumentationsverordnung-Fachhochschulen hat der Erhalter die Sozialversicherungsnummer zu erfassen und gemäß § 7 Absatz 2 im Wege der Agentur für Qualitätssicherung und Akkreditierung Austria an das zuständige Bundesministerium und die Bundesanstalt Statistik Österreich zu übermitteln. + Gemäß § 3 Absatz 1 des Bildungsdokumentationsgesetzes idgF und der Bildungsdokumentationsverordnung-Fachhochschulen idgF hat der Erhalter die Sozialversicherungsnummer zu erfassen und gemäß § 7 Absatz 2 im Wege der Agentur für Qualitätssicherung und Akkreditierung Austria an das zuständige Bundesministerium und die Bundesanstalt Statistik Österreich zu übermitteln. From c4d04d60a6b4fb5763d49bf482c671eccbbc12b6 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Wed, 13 Jul 2016 13:51:33 +0200 Subject: [PATCH 092/114] set zeugnisnote from pruefung, add reihungstest_datum to student-list in fas --- .../pruefung/pruefungsbewertung.json.php | 30 ++++++++++++++++++- content/student/studentenoverlay.xul.php | 5 ++++ rdf/student.rdf.php | 10 +++++-- 3 files changed, 42 insertions(+), 3 deletions(-) mode change 100644 => 100755 content/student/studentenoverlay.xul.php diff --git a/cis/private/lehre/pruefung/pruefungsbewertung.json.php b/cis/private/lehre/pruefung/pruefungsbewertung.json.php index 0ff901e0c..6e5aad377 100755 --- a/cis/private/lehre/pruefung/pruefungsbewertung.json.php +++ b/cis/private/lehre/pruefung/pruefungsbewertung.json.php @@ -5,13 +5,19 @@ header( 'Cache-Control: no-store, no-cache, must-revalidate' ); header( 'Pragma: no-cache' ); header('Content-Type: text/html;charset=UTF-8'); -require_once('../../../../config/cis.config.inc.php'); +require_once('../../../../config/global.config.inc.php'); +if (defined('CIS_PRUEFUNG_SET_ZEUGNISNOTE') && CIS_PRUEFUNG_SET_ZEUGNISNOTE) + require_once('../../../../config/vilesci.config.inc.php'); +else + require_once('../../../../config/cis.config.inc.php'); + require_once('../../../../include/functions.inc.php'); require_once('../../../../include/pruefungCis.class.php'); require_once('../../../../include/lehrveranstaltung.class.php'); require_once('../../../../include/benutzerberechtigung.class.php'); require_once('../../../../include/studiensemester.class.php'); require_once('../../../../include/note.class.php'); +require_once('../../../../include/zeugnisnote.class.php'); require_once('../../../../include/pruefung.class.php'); require_once('../../../../include/pruefungsanmeldung.class.php'); require_once('../../../../include/student.class.php'); @@ -271,6 +277,28 @@ function saveBeurteilung($lehrveranstaltung_id, $student_uid, $mitarbeiter_uid, $data['error']='true'; $data['errormsg']=$pruefung->errormsg; } + if (defined('CIS_PRUEFUNG_SET_ZEUGNISNOTE') && CIS_PRUEFUNG_SET_ZEUGNISNOTE) + { + $zeugnisnote = new zeugnisnote(); + $zeugnisnote->new = true; + $zeugnisnote->lehrveranstaltung_id = $lehrveranstaltung_id; + $zeugnisnote->student_uid = $student_uid; + $zeugnisnote->studiensemester_kurzbz = $pruefungCis->studiensemester_kurzbz; + $zeugnisnote->note = $note; + $zeugnisnote->benotungsdatum = $pruefung->datum; + $zeugnisnote->insertamum = date('Y-m-d H:i:s'); + $zeugnisnote->insertvon = $uid; + $zeugnisnote_check = new zeugnisnote(); + if (!$zeugnisnote_check->load($zeugnisnote->lehrveranstaltung_id, $zeugnisnote->student_uid, $zeugnisnote->studiensemester_kurzbz)) + { + $zeugnisnote->save(true); + } + else + { + $data['error'] = 'true'; + $data['errormsg'] = 'Existing Grade'; + } + } } else { diff --git a/content/student/studentenoverlay.xul.php b/content/student/studentenoverlay.xul.php old mode 100644 new mode 100755 index 2efe9be9e..6431e8f43 --- a/content/student/studentenoverlay.xul.php +++ b/content/student/studentenoverlay.xul.php @@ -284,6 +284,10 @@ else class="sortDirectionIndicator" sort="rdf:http://www.technikum-wien.at/student/rdf#punkte3" onclick="StudentTreeSort()"/> +
    ID Bezeichnung Studiengang Semester
    '.$row->lehrveranstaltung_id.''.$row->bezeichnung.''.$stg->kuerzel_arr[$row->studiengang_kz].''.$row->semester.'. Semester
    + + +
    Course application is currently disabled. Please contact the office to apply for courses.
    '; + /*echo '
    @@ -625,7 +629,7 @@ else if($method=="lehrveranstaltungen") * |----------------------- Bis ist NULL und von innerhalb SS */ - $qry = "SELECT + /*$qry = "SELECT tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_lehrveranstaltung.studiengang_kz, tbl_lehrveranstaltung.ects, tbl_lehrveranstaltung.bezeichnung, tbl_lehrveranstaltung.semester, tbl_lehrveranstaltung.sprache, tbl_lehrveranstaltung.bezeichnung_english, tbl_lehrveranstaltung.incoming, tbl_lehrveranstaltung.orgform_kurzbz, @@ -749,7 +753,7 @@ else if($method=="lehrveranstaltungen") //} } } - echo '
    '; + echo '';*/ } } else if ($method == "university") From 96f3f1a243608efb600af33a2491e6089a42ba4f Mon Sep 17 00:00:00 2001 From: kindlm Date: Mon, 18 Jul 2016 12:04:21 +0200 Subject: [PATCH 097/114] Interpunktionskorrekturen allg. Ausb.-Vertrag Diverse Anpassungen und Korrekturen Ausb.-Vertrag AOs --- system/xsl/AusbVerEngHead_9005.xsl | 49 +- system/xsl/AusbVerEng_0.xsl | 10 +- system/xsl/AusbVerEng_9005.xsl | 2093 +++++++++++++--------------- system/xsl/Ausbildungsver_0.xsl | 12 +- system/xsl/Ausbildungsver_9005.xsl | 1283 ++++++++--------- 5 files changed, 1679 insertions(+), 1768 deletions(-) diff --git a/system/xsl/AusbVerEngHead_9005.xsl b/system/xsl/AusbVerEngHead_9005.xsl index dca264a3a..2234bc022 100644 --- a/system/xsl/AusbVerEngHead_9005.xsl +++ b/system/xsl/AusbVerEngHead_9005.xsl @@ -34,7 +34,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -48,7 +48,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -58,7 +58,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -66,39 +66,39 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + - + - + - + - + - + - + - + - + @@ -139,11 +139,11 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + - + @@ -159,9 +159,8 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - - - + + @@ -286,6 +285,9 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn + + + @@ -876,7 +878,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -891,18 +893,15 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - - + + - - - - - + + diff --git a/system/xsl/AusbVerEng_0.xsl b/system/xsl/AusbVerEng_0.xsl index 4b4e2cffd..da59cec66 100644 --- a/system/xsl/AusbVerEng_0.xsl +++ b/system/xsl/AusbVerEng_0.xsl @@ -837,7 +837,7 @@ 1. Ausbildungsort - Studienort sind die Räumlichkeiten der FH Technikum Wien, 1200 Wien, Höchstädtplatz und 1210 Wien, Giefinggasse. Bei Bedarf kann der Erhalter einen anderen Studienort in Wien festlegen, außerhochschulische Aktivitäten (zB Exkursionen) können auch außerhalb von Wien stattfinden. + Studienort sind die Räumlichkeiten der FH Technikum Wien, 1200 Wien, Höchstädtplatz und 1210 Wien, Giefinggasse. Bei Bedarf kann der Erhalter einen anderen Studienort in Wien festlegen, außerhochschulische Aktivitäten (z.B. Exkursionen) können auch außerhalb von Wien stattfinden. 2. Vertragsgrundlage @@ -1103,7 +1103,7 @@ Diese Dokumente sind öffentlich zugänglich unter www.technikum-wien.at. 6.2.2 Studienbeitrag - Die Studentin bzw. der Student ist verpflichtet, zwei Wochen vor Beginn jedes Semesters (StudienanfängerInnen: bis 20. August vor Studienbeginn) einen Studienbeitrag gemäß Fachhochschul-Studiengesetz in der Höhe von derzeit € 363,36 netto pro Semester zu entrichten. Dies gilt auch in Semestern mit DiplomandInnenenstatus o.ä. Im Falle einer Erhöhung des gesetzlichen Studienbeitrags-satzes erhöht sich der angeführte Betrag entsprechend. Die vollständige Bezahlung des Studienbeitrags ist Voraussetzung für die Aufnahme bzw. die Fortsetzung des Studiums. Bei Nichtantritt des Studiums oder Abbruch zu Beginn oder während des Semesters verfällt der Studienbeitrag. + Die Studentin bzw. der Student ist verpflichtet, zwei Wochen vor Beginn jedes Semesters (StudienanfängerInnen: bis 20. August vor Studienbeginn) einen Studienbeitrag gemäß Fachhochschul-Studiengesetz idgF in der Höhe von derzeit € 363,36 netto pro Semester zu entrichten. Dies gilt auch in Semestern mit DiplomandInnenenstatus o.ä. Im Falle einer Erhöhung des gesetzlichen Studienbeitrags-satzes erhöht sich der angeführte Betrag entsprechend. Die vollständige Bezahlung des Studienbeitrags ist Voraussetzung für die Aufnahme bzw. die Fortsetzung des Studiums. Bei Nichtantritt des Studiums oder Abbruch zu Beginn oder während des Semesters verfällt der Studienbeitrag. 6.2 Duties @@ -1131,7 +1131,7 @@ These documents are publically available at www.technikum-wien.at. 6.2.2 Tuition Fees - Two weeks before the beginning of each semester (new students: up to August 20 before taking up studies) the student undertakes to pay tuition fees according to the University of Applied Sciences Studies Act currently to the sum of € 363.36 net payable per semester. This also applies in semesters with graduand status etc. In the event of an increase in the legal tuition fees rate, the amount quoted will increase accordingly. Full payment of the tuition fees is a prerequisite both for enrolling on the course and continuing with the degree program. For non-commencement or termination of the study at the beginning or during the semester, the tuition fee is forfeited. + Two weeks before the beginning of each semester (new students: up to August 20 before taking up studies) the student undertakes to pay tuition fees according to the University of Applied Sciences Studies Act as amended currently to the sum of € 363.36 net payable per semester. This also applies in semesters with graduand status etc. In the event of an increase in the legal tuition fees rate, the amount quoted will increase accordingly. Full payment of the tuition fees is a prerequisite both for enrolling on the course and continuing with the degree program. For non-commencement or termination of the study at the beginning or during the semester, the tuition fee is forfeited. 6.2.3 ÖH-Beitrag Gemäß § 4 Abs 10 FHStG sind Studierende an Fachhochschulen Mitglieder der Österreichischen HochschülerInnenschaft (ÖH). Der/Die Studierende hat semesterweise einen ÖH-Beitrag an den Erhalter zu entrichten, der diesen an die ÖH abführt. Die Entrichtung des Betrags ist Voraussetzung für die Zulassung zum Studium bzw. für dessen Fortsetzung. @@ -1220,7 +1220,7 @@ Sofern nicht im Einzelfall andere Regelungen zwischen dem Erhalter und der Studentin oder dem Studenten getroffen wurden, ist die Studentin oder der Student verpflichtet, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen auf dessen schriftliche Anfrage hin anzubieten. 6.2.10 Aufzeichnungen und Mitschnitte - Es ist der/dem Studierenden ausdrücklich untersagt, Lehrveranstaltungen als Ganzes oder nur Teile davon aufzuzeichnen und/oder mitzuschneiden (z.B. durch Film- und/oder Tonaufnahmen oder sonstige hierfür geeignete audiovisuelle Mittel). Darüber hinaus ist jede Form der öffentlichen Zurverfügungstellung (drahtlos oder drahtgebunden) der vorgenannten Aufnahmen z.B. in sozialen Netzwerken wie Facebook, StudiVZ etc, aber auch auf Youtube usw. oder durch sonstige für diese Zwecke geeignete Kommunikations-mittel untersagt. Diese Regelungen gelten sinngemäß auch für Skripten, sonstige Lernbehelfe und Prüfungsangaben. + Es ist der/dem Studierenden ausdrücklich untersagt, Lehrveranstaltungen als Ganzes oder nur Teile davon aufzuzeichnen und/oder mitzuschneiden (z.B. durch Film- und/oder Tonaufnahmen oder sonstige hierfür geeignete audiovisuelle Mittel). Darüber hinaus ist jede Form der öffentlichen Zurverfügungstellung (drahtlos oder drahtgebunden) der vorgenannten Aufnahmen z.B. in sozialen Netzwerken wie Facebook, StudiVZ etc., aber auch auf Youtube usw. oder durch sonstige für diese Zwecke geeignete Kommunikations-mittel untersagt. Diese Regelungen gelten sinngemäß auch für Skripten, sonstige Lernbehelfe und Prüfungsangaben. Ausgenommen hiervon ist eine Aufzeichnung zu ausschließlichen Lern-, Studien- und Forschungszwecken und zum privaten Gebrauch, sofern hierfür der Vortragende vorab ausdrücklich seine schriftliche Zustimmung erteilt hat. @@ -1235,7 +1235,7 @@ 6.2.10 Recordings - It is expressly forbidden for the student to record lectures in part or in total (e.g. by using film and / or sound recordings or other audio-visual means suitable for this purpose). In addition, any form of making the aforementioned recordings publically available (wired or wireless) for example in social networks such as Facebook, StudiVZ etc, but also on Youtube, etc., or by other means of communication designed for these purposes is strictly prohibited. These regulations shall apply correspondingly to scripts, other learning aids and examination data. + It is expressly forbidden for the student to record lectures in part or in total (e.g. by using film and / or sound recordings or other audio-visual means suitable for this purpose). In addition, any form of making the aforementioned recordings publically available (wired or wireless) for example in social networks such as Facebook, StudiVZ etc., but also on Youtube, etc., or by other means of communication designed for these purposes is strictly prohibited. These regulations shall apply correspondingly to scripts, other learning aids and examination data. The only exception is a recording exclusively for the purpose of learning, study and research and for personal use, provided that the lecturer has expressly granted his / her prior written consent. diff --git a/system/xsl/AusbVerEng_9005.xsl b/system/xsl/AusbVerEng_9005.xsl index 493db37fc..7b0d6d6bc 100644 --- a/system/xsl/AusbVerEng_9005.xsl +++ b/system/xsl/AusbVerEng_9005.xsl @@ -9,14 +9,13 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - - + - + @@ -44,32 +43,21 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + - + - - - - - - - - - - - - + @@ -77,7 +65,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -85,56 +73,33 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + - + - - + + + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - + @@ -142,33 +107,152 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - + + + - - - - + - + - + - + + + + + - + + + + + + + + + @@ -176,487 +260,256 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + - + - + + + + + - + - + - + - - - - + - + - - + + + - - - + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + - - - + + - + - + - + - + - - - - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - + + + - - - + + + - - - + + + - + - - + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + @@ -665,130 +518,160 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -819,7 +702,9 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + + + @@ -827,689 +712,661 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - Ausbildungsvertrag - außerordentliches Studium (Besuch einzelner Lehrveranstaltungen eines Studiengangs) - - - Dieser Vertrag regelt das Rechtsverhältnis zwischen - - dem Verein Fachhochschule Technikum Wien, - 1060 Wien, Mariahilfer Straße 37-39 (kurz „Erhalter“ genannt) einerseits - und + Ausbildungsvertrag + außerordentliches Studium (Besuch einzelner Lehrveranstaltungen eines Studiengangs) + + Keine Sozialversicherungsnummer oder Ersatzkennzeichen vorhanden + Kein Geburtsdatum vorhanden + Keine Ausbildungsdauer vorhanden + + + + Dieser Vertrag regelt das Rechtsverhältnis zwischen + dem Verein Fachhochschule Technikum Wien, + 1060 Wien, Mariahilfer Straße 37-39 (kurz „Erhalter“ genannt) einerseits + und - - - Training Contract + + + Training Contract - for external students (attending individual courses of a degree program) - - - This contract governs the legal relationship between - - the University of Applied Sciences Technikum Wien Association, 1060 Vienna, Mariahilferstraße 37-39 (referred to as "operator") on the one hand and + for external students (attending individual courses of a degree program) + + + This contract governs the legal relationship between the University of Applied Sciences Technikum Wien Association, 1060 Vienna, Mariahilferstraße 37-39 (referred to as "operator") on the one hand and - + + + - - Familienname (Surname): + + Familienname (Surname): - Vorname (First Name): - - Akademischer Titel (Academic degree): + Vorname (First Name): + + Akademischer Titel (Academic degree): - - Adresse (Address): - ; + + Adresse (Address): - - + + - - Geburtsdatum (Date of birth): + + Geburtsdatum (Date of birth): - - Sozialversicherungsnr. + + Sozialversicherungsnr. - + 1 - - + + - Gemäß § 3 Absatz 1 des Bildungsdokumentationsgesetzes (BGBl. I Nr. 12/2002 idgF) und der Bildungsdokumentationsverordnung-Fachhochschulen (BGBl. II Nr. 29/2004 idgF) hat der Erhalter die Sozialversicherungsnummer zu erfassen und gemäß § 7 Absatz 2 im Wege der Agentur für Qualitätssicherung und Akkreditierung Austria an das zuständige Bundesministerium und die Bundesanstalt Statistik Österreich zu übermitteln. + Gemäß § 3 Absatz 1 des Bildungsdokumentationsgesetzes idgF und der Bildungsdokumentationsverordnung-Fachhochschulen idgF hat der Erhalter die Sozialversicherungsnummer zu erfassen und gemäß § 7 Absatz 2 im Wege der Agentur für Qualitätssicherung und Akkreditierung Austria an das zuständige Bundesministerium und die Bundesanstalt Statistik Österreich zu übermitteln. - + - + - : + : - - + + (Social security number) - + 2 - + - Pursuant to § 3 section 1 of the Education Documentation Act (Federal Law Gazette I No. 12/2002 as amended) and the Education Documentation Regulation for Universities of Applied Sciences (Federal Law Gazette II No. 29/2004 as amended), the operator shall record the social security number pursuant to § 7 paragraph 2 and shall transfer it via the Agency for Quality Assurance and Accreditation Austria to the competent Ministry and Statistics Austria. + Pursuant to § 3 section 1 of the Education Documentation Act as amended and the Education Documentation Regulation for Universities of Applied Sciences as amended, the operator shall record the social security number pursuant to § 7 paragraph 2 and shall transfer it via the Agency for Quality Assurance and Accreditation Austria to the competent Ministry and Statistics Austria. - + - : + : - - Personenkennz. (Personal identifier): + + + (kurz „ao. Studentin“ bzw. „ao. Student“ genannt)(referred to as "external student") + on the andererseits, + other, - - - - (kurz „ao. Studentin“ bzw. „ao. Student“ genannt) - (referred to as "external student") - - - andererseits, - on the other, - - - + - - im Rahmen des außerordentlichen Studiums bzw. des Besuchs einzelner Lehrveranstaltungen an der FH Technikum Wien + + im Rahmen des außerordentlichen Studiums bzw. des Besuchs einzelner Lehrveranstaltungen an der FH Technikum Wien. Die konkreten Lehrveranstaltungen des außerordentlichen Studiums sind in der Information über die Zulassung zum außerordentlichen Studium angeführt. - - as part of an external course of study or attending individual courses at the UAS Technikum Wien + as part of an external course of study or attending individual courses at the UAS Technikum Wien. The specific courses of an external study program are included in the Information about Admission to an External Study Program. + + 1. Ausbildungsort - + + Studienort sind die Räumlichkeiten der FH Technikum Wien, 1200 Wien, Höchstädtplatz und 1210 Wien, Giefinggasse. Bei Bedarf kann der Erhalter einen anderen Studienort in Wien festlegen, außerhochschulische Aktivitäten (z.B. Exkursionen) können auch außerhalb von Wien stattfinden. + - 1. Ausbildungsort + 2. Vertragsgrundlage - - Studienort sind die Räumlichkeiten der FH Technikum Wien, 1200 Wien, Höchstädtplatz und 1210 Wien, Giefinggasse. Bei Bedarf kann der Erhalter einen anderen Studienort festlegen. - - - 2. Vertragsgrundlage - - - Die Ausbildung erfolgt auf der Grundlage von § 4 Abs. 2 und 3 des Fachhochschul-Studiengesetzes, BGBl. Nr. 340/1993 idgF, des Hochschul-Qualitätssicherungsgesetzes, BGBl. I Nr. 74/2011 idgF, und des Akkreditierungsbescheides des Board der AQ Austria vom 9.5.2012, GZ FH12020016 idgF. - - + + Die Ausbildung erfolgt auf der Grundlage von § 4 Abs. 2 und 3 des Fachhochschul-Studiengesetzes, BGBl. Nr. 340/1993 idgF, des Hochschul-Qualitätssicherungsgesetzes, BGBl. I Nr. 74/2011 idgF, und des Akkreditierungs-bescheides des Board der AQ Austria vom 9.5.2012, GZ FH12020016 idgF und der Satzung der Fachhochschule Technikum Wien idgF. + + - 3. Ausbildungsdauer + 3. Ausbildungsdauer - - Die Ausbildungsdauer des außerordentlichen Studiums ist durch die Dauer der Lehrveranstaltung/en, zu der bzw. denen die ao. Studentin bzw. der ao. Student zugelassen ist, definiert. - - - + + Die Ausbildungsdauer des außerordentlichen Studiums ist durch die Dauer der Lehrveranstaltung/en, zu der bzw. denen die ao. Studentin bzw. der ao. Student zugelassen ist, definiert. + + - 1. Place of Training + 4. Ausbildungsabschluss - + - - Places of training are the premises of the UAS Technikum Wien, 1200 Vienna, Höchstädt-platz and 1210 Vienna, Giefinggasse. If necessary, the operator may specify a different place of study. - - + + Die Ausbildung endet mit der positiven Absolvierung der das jeweilige Studium abschließenden kommissionellen Prüfung. Nach dem Abschluss der vorgeschriebenen Prüfungen wird der akademische Grad Bachelor of Science in Engineering (BSc) durch das FH-Kollegium verliehen. + - 2. Contractual Basis + 1. Place of Training - + - - The training is based on § 4 paras. 2 and 3 of the University of Applied Sciences Studies Act, Federal Law Gazette No. 340/1993 as amended, the Higher Education Quality Assurance Act, Federal Law Gazette I No. 74/2011 as amended and the notification of accreditation by the Board of AQ Austria from 9.5.2012, GZ FH12020016 as amended. - + + Places of training are the premises of the UAS Technikum Wien, 1200 Vienna, Höchstädt-platz and 1210 Vienna, Giefinggasse. If necessary, the operator may specify a different place of study in Vienna. Non-university activities (e.g. excursions) may take place away from Vienna. + - 3. Duration of Training + 2. Contractual Basis - - - - The duration of the external course of study is defined by the duration of the courses that the external student is allowed to attend. - - - - 4. Ausbildungsabschluss - - + - Das außerordentliche Studium endet mit der positiven Absolvierung der in den jeweiligen Lehrveranstaltungen vorgesehenen Leistungsanforderungen. Nach dem positiven Abschluss wird der für die jeweilige Lehrveranstaltung vorgesehene Leistungs-nachweis ausgestellt. - + The training is based on § 4 paras. 2 and 3 of the University of Applied Sciences Studies Act, Federal Law Gazette No. 340/1993 as amended, the Higher Education Quality Assurance Act, Federal Law Gazette I No. 74/2011 as amended and the notification of accreditation by the Board of AQ Austria from 9.5.2012, GZ FH12020016 as amended and the statutes of the University of Applied Sciences Technikum Wien. + - 5. Rechte und Pflichten des Erhalters + + 3. Duration of Training + + + + + + The duration of the external course of study is defined by the duration of the courses that the + external student is allowed to attend. + + + + + + + 4. Formal Completion of Training + + + + + The training ends with the positive completion of the final examination before a committee for the respective course. After completion of the required examinations, the academic degree Bachelor of Science in Engineering (BSc) is awarded by the University of Applied Sciences Council. + + 5. Rechte und Pflichten des Erhalters - + - 5.1 Rechte + 5.1 Rechte - + - - Der Erhalter führt eine periodische Überprüfung des Studiums im Hinblick auf Relevanz und Aktualität durch und ist im Einvernehmen mit dem FH-Kollegium berechtigt, daraus Änderungen des akkreditierten Studienganges abzuleiten. - - Der Erhalter ist berechtigt, die Daten der/des ao. Studierenden an den FH Technikum Wien Alumni Club zu übermitteln. Der Alumni Club ist der AbsolventInnenverein der FH Technikum Wien. Er hat zum Ziel, AbsolventInnen, Studierende und Lehrende miteinander zu vernetzen sowie AbsolventInnen laufend über Aktivitäten an der FH Technikum Wien zu informieren. Einer Zusendung von Informationen durch den Alumni Club kann jederzeit widersprochen werden. - + + Der Erhalter führt eine periodische Überprüfung des Studiums im Hinblick auf Relevanz und Aktualität durch und ist im Einvernehmen mit dem FH-Kollegium berechtigt, daraus Änderungen des akkreditierten Studienganges abzuleiten. + + + Der Erhalter ist berechtigt, die Daten der/des ao. Studierenden an den FH Technikum Wien Alumni Club zu übermitteln. Der Alumni Club ist der AbsolventInnenverein der FH Technikum Wien. Er hat zum Ziel, AbsolventInnen, Studierende und Lehrende miteinander zu vernetzen sowie AbsolventInnen laufend über Aktivitäten an der FH Technikum Wien zu informieren. Einer Zusendung von Informationen durch den Alumni Club kann jederzeit widersprochen werden. + + - 5.2 Pflichten + 5.2 Pflichten - + - + - + - Der Erhalter ist verpflichtet, all jene Voraussetzungen zu bieten, damit das Studium innerhalb der Ausbildungsdauer (Pkt. 3) erfolgreich abgeschlossen werden kann. + Der Erhalter verpflichtet sich zur ordnungsgemäßen Planung und Durchführung der Lehrveranstaltung/en in der vorgesehenen Zeit. Der Erhalter ist verpflichtet, allfällige Änderungen des akkreditierten Studienganges zeitgerecht bekannt zu geben. + + + + Der Erhalter verpflichtet sich zur sorgfaltsgemäßen Verwendung der personenbezogenen Daten der ao. Studierenden. Die Daten werden nur im Rahmen der gesetzlichen und vertraglichen Verpflichtungen sowie des Studienbetriebes verwendet und nicht an nicht berechtigte Dritte weitergegeben. + - - + - 4. Formal Completion of Training + 5. Rights and Duties of the Operator - + - - The external course of study ends when the course requirements defined in the respective courses have been successfully completed. In the event of a course being successfully completed the respective performance record provided will be issued. - - - + - 5. Rights and Duties of the Operator - - - - - - + - + - + - + - 5.1 Rights + 5.1 Rights - + - + - + - The operator performs a periodic review of the course in terms of relevance and topicality, and is authorized, in consultation with the University of Applied Sciences Council, to deduce from this changes in the accredited degree program. - - The operator is entitled to communicate an external student’s data to the UAS Technikum Wien Alumni Club. The Alumni Club is the graduate association of the UAS Technikum Wien. Its goal is to provide links between graduates, students and lecturers as well as to keep graduates informed of the activities at the UAS Technikum Wien. A mailing of information from the Alumni Club can be vetoed at any time. - - - - + The operator performs a periodic review of the course in terms of relevance and topicality, and is authorized, in consultation with the University of Applied Sciences Council, to deduce from this changes in the accredited degree program. + + + The operator is entitled to communicate an external student’s data to the UAS Technikum Wien Alumni Club. The Alumni Club is the graduate association of the UAS Technikum Wien. Its goal is to provide links between graduates, students and lecturers as well as to keep graduates informed of the activities at the UAS Technikum Wien. A mailing of information from the Alumni Club can be vetoed at any time. + + + + + - 5.2 Duties + 5.2 Duties - + - + - + - The operator undertakes to provide all the necessary conditions for the study to be successfully completed within the duration of training (point 3). + The operator undertakes to plan and hold the degree program in a proper manner within the expected time period. The operator is obliged to give adequate notice of any changes to the accredited degree program. + + + + The operator is committed to use the personal data of the external students carefully. The data is only to be used within the operator’s legal and contractual obligations as well as its program of studies and is not to be handed on to unauthorized third parties. - + + 6. Rechte und Pflichten der ao. Studierenden - + + + + + + + + 6.1 Rechte + + + + + + + + + Die ao. Studentin bzw. der ao. Student hat das Recht auf + - Die Voraussetzungen zur Erfüllung dieser Verpflichtung sind Gegenstand des akkreditierten Studienganges idgF, der Satzung der FH Technikum Wien idgF und der Hausordnung idgF. + einen Lehrveranstaltungsbetrieb gemäß den im akkreditierten Studiengang idgF und in der Satzung der FH Technikum Wien idgF festgelegten Bedingungen; - Der Erhalter ist weiters verpflichtet, das Studium auf der Grundlage höchster Qualitätsansprüche hinsichtlich der Erreichung der Ausbildungsziele zu gestalten und allfällige Änderungen des akkreditierten Studienganges bekannt zu geben. - - - Der Erhalter verpflichtet sich zur sorgfaltsgemäßen Verwendung der personenbezogenen Daten der ao. Studierenden. Die Daten werden nur im Rahmen der gesetzlichen und vertraglichen Verpflichtungen sowie des Studienbetriebes verwendet und nicht an nicht berechtigte Dritte weitergegeben. + ein Zeugnis über die im laufenden Semester abgelegten Prüfungen. - - + + + + + 6.2 Pflichten + + + 6.2.1 Einhaltung studienrelevanter Bestimmungen + Die ao. Studentin bzw. der ao. Student ist verpflichtet, insbesondere folgende Bestimmungen einzuhalten: + - - The conditions for the fulfillment of this obligation are the subject of the accredited study program as amended, the Statutes of the UAS Technikum Wien as amended, and the House Rules as amended. + Studienordnung und Studienrechtliche Bestimmungen / Prüfungsordnung idgF - The operator also undertakes to design the study on the basis of the highest possible quality standards as regards the achievement of the educational goals and to make known any changes to the accredited degree program. + Hausordnung idgF - The operator is committed to use the personal data of the external students carefully. The data is only to be used within the operator’s legal and contractual obligations as well as its program of studies and is not to be handed on to unauthorized third parties. + Brandschutzordnung idgF + + + Bibliotheksordnung idgF + + + Die für den jeweiligen Studiengang geltende/n Laborordnung/en idgF - - - - 6. Rechte und Pflichten der Studierenden - - - - - - - - - 6.1 Rechte - - - - - - - - - Die ao. Studentin bzw. der ao. Student hat das Recht auf - - - einen Lehrveranstaltungsbetrieb gemäß den im akkreditierten Studiengang idgF und in der Satzung der FH Technikum Wien idgF festgelegten Bedingungen; - - - - ein Zeugnis über die im laufenden Semester abgelegten Prüfungen. - - - - - - 6.2 Pflichten - - 6.2.1 Studienbeitrag - - Die ao. Studentin bzw. der ao. Student ist verpflichtet, zwei Wochen vor Beginn jedes Semesters einen Studienbeitrag gemäß Fachhochschul-Studiengesetz (BGBl. Nr. 340/1993 idgF) in der Höhe von derzeit € 363,36 netto pro Semester zu entrichten. Im Falle einer Erhöhung des gesetzlichen Studienbeitragssatzes erhöht sich der angeführte Betrag entsprechend. Bei Nichtantritt des Studiums oder Abbruch zu Beginn oder während des Semesters verfällt der Studienbeitrag. - - - 6.2.2 Studierendenbeitrag („ÖH-Beitrag“) - - Gemäß § 4 Abs. 10 des Fachhochschul-Studiengesetzes (BGBl. Nr. 340/1993 idgF) gehören ordentliche und außerordentliche Studierende der Österreichischen Hochschülerinnen- und Hochschülerschaft (ÖH) gemäß Hochschülerinnen- und Hochschülerschaftsgesetz 2014 - HSG 2014, BGBl. I Nr. 45/2014, an. Daraus resultiert die Verpflichtung der ao. Studentin oder des ao. Studenten zur Entrichtung des ÖH-Beitrags. - - - - - - - - 6. Rights and Duties of the Students - - - - - - - - - - - - - - - - 6.1 Rights - - - - - - - - The external student has the right to - - - attend a course being run in accordance with the conditions laid down in the accredited degree program as amended and in the statute of the UAS Technikum Wien as amended - - - - a certificate showing the examinations successfully passed in the current semester. - - - - - - 6.2 Duties - - 6.2.1 Tuition Fees - Two weeks before the beginning of each semester the external student undertakes to pay tuition fees according to the University of Applied Sciences Studies Act (Federal Law Gazette No 340/1993 as amended) currently to the sum of € 363.36 net payable per semester. In the event of an increase in the legal tuition fees rate, the amount quoted will increase accordingly. For non-commencement or termination of the study at the beginning or during the semester, the tuition fee is forfeited. - - 6.2.2 Student fee ("Austrian Student Union fee") - Pursuant to § 4 section 10 of the Universities of Applied Sciences Studies Act (Federal Law Gazette No 340/1993 as amended and the Federal Ministries Act - 2007 amendment, Federal Law Gazette I No. 6/2007), internal and external students at universities of applied sciences degree programs are members of the Austrian Students Union in accordance with the Students Act (HSG 2014).This results in the external student being obliged to pay the Austrian Student Union fee. This also applies in semesters with graduand status. - - - Der Studierendenbeitrag kann jährlich durch die ÖH indexiert werden; die genaue Höhe des Studierendenbeitrags wird von der ÖH jährlich für das folgende Studienjahr bekannt gegeben. Die Einhebung des Betrags erfolgt durch die Fachhochschule. Der Erhalter überweist in Folge die eingezahlten Beträge der ao. Studierenden ohne Abzüge an die ÖH. Die Entrichtung des Betrags ist Voraussetzung für die Zulassung zum ao. Studium bzw. für dessen Fortsetzung. - - - 6.2.3 Unkostenbeitrag - Pro Semester ist ein Unkostenbeitrag zu entrichten, wobei es sich nicht um einen Pauschalbetrag handelt. Der Unkostenbeitrag stellt eine Abgeltung für über das Normalmaß hinausgehende Serviceleistungen der FH dar, z.B. Freifächer, Vorträge / Job-börse, Mensa etc. - - Die Höhe des Unkostenbeitrages beträgt derzeit € 75,– pro Semester. Eine allfällige Anpassung wird durch Aushang bekannt gemacht. - Der Unkostenbeitrag ist gleichzeitig mit der Studiengebühr vor Beginn des Semesters zu entrichten. - - Bei Vertragsauflösung vor Studienabschluss aus Gründen, die die ao. Studentin bzw. der ao. Student zu vertreten hat, oder auf deren bzw. dessen Wunsch, wird der Unkostenbeitrag zur Abdeckung der dem Erhalter erwachsenen administrativen Zusatzkosten einbehalten. - - - The student fee can be annually indexed by the Austrian Students' Union; the exact amount of the student fee for the following year is announced annually by the Austrian Students' Union. - - The amount is levied by the University of Applied Sciences. The operator then transfers the amounts paid by the external students without deductions to the Students' Union. Payment of the student fee is a pre-requisite for admission to the course or for its continuation. - - - 6.2.3 Contribution towards Expenses - A contribution towards expenses, which is not a lump sum, is payable per semester. The contribution towards expenses represents compensation for the services provided by the UAS that go beyond the normal level, such as electives, lectures/job market, cafeteria, etc. - - - The amount of the contribution is currently € 75,– per semester. Any possible adjustment is posted on the noticeboard. - The contribution towards expenses must be paid together with the tuition fees before the start of the semester. - - If the contract is cancelled before graduation for reasons that are the fault of the external student, or on their wishes, the contribution towards expenses shall be deducted to cover the additional administrative costs borne by the operator. - - 6.2.4 Lehr- und Lernbehelfe - Die Anschaffung unterrichtsbezogener Literatur und individueller Lernbehelfe ist durch den Unkostenbeitrag nicht abgedeckt. Eventuelle zusätzliche Kosten, die sich beispielsweise durch die studiengangsbezogene, gemeinsame Anschaffung von Lehr- bzw. Lernbehelfen (Skripten, CDs, Bücher, Projektmaterialien, Kopierpapier etc.) oder durch Exkursionen ergeben, werden von jedem Studiengang individuell eingehoben. - - 6.2.5 Beibringung persönlicher Daten - Die ao. Studentin bzw. der ao. Student ist verpflichtet, persönliche Daten beizubringen, die auf Grund eines Gesetzes, einer Verordnung oder eines Bescheides vom Erhalter erfasst werden müssen oder zur Erfüllung des Ausbildungsvertrages bzw. für den Studienbetrieb unerlässlich sind. - - - 6.2.6 Aktualisierung eigener Daten und Bezug von Informationen - Die ao. Studentin bzw. der ao. Student hat unaufgefordert dafür zu sorgen, dass die von ihr/ihm beigebrachten Daten aktuell sind. Änderungen sind der Studiengangsassistenz unverzüglich schriftlich mitzuteilen. Darüber hinaus trifft sie/ihn die Pflicht, sich von studienbezogenen Informationen, die ihr/ihm an die vom Erhalter zur Verfügung gestellte Emailadresse zugestellt werden, in geeigneter Weise Kenntnis zu verschaffen. - - - 6.2.7 Verwertungsrechte - - Sofern nicht im Einzelfall andere Regelungen zwischen dem Erhalter und der ao. Studentin oder dem ao. Studenten getroffen wurden, ist die ao. Studentin oder der ao. Student verpflichtet, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen auf dessen schriftliche Anfrage hin anzubieten. - - - 6.2.4 Teaching Aids and Learning Tools - The acquisition of teaching-related literature and individual learning tools is not covered by the contribution towards expenses. Any additional costs, which arise for example from the course-related, joint purchase of teaching and / or learning materials (scripts, CDs, books, project materials, copying paper, etc.) or result from field trips, are levied by each individual degree program. - - - - 6.2.5 Providing Personal Data - The external student is obliged to produce personal data which must be registered because of a law, regulation or a decision by the operator, or is essential fort he fulfilling of the training contract or fort he program of studies. - - - 6.2.6 Updating personal data and the retrieval of information - Without being reminded, the external student must ensure that the data provided by them is up-to-date. Changes are to be immediately communicated to the administrative assistant in writing. Furthermore, it is the external students’ responsibility to make themselves suitably aware of information relating to their studies which has been sent to them at the email address provided for them by the operator. - - - - 6.2.7 Exploitation Rights - Unless other arrangements have been agreed between the operator and the external student at an individual level, on written request, the external student undertakes to offer the operator the rights to research and development results. - - - - 6.2.8 Aufzeichnungen und Mitschnitte - Es ist der/dem ao. Studierenden ausdrücklich untersagt, Lehrveranstaltungen als Ganzes oder nur Teile davon aufzuzeichnen und/oder mitzuschneiden (z.B. durch Film- und/oder Tonaufnahmen oder sonstige hierfür geeignete audiovisuelle Mittel). Darüber hinaus ist jede Form der öffentlichen Zurverfügungstellung (drahtlos oder drahtgebunden) der vorgenannten Aufnahmen z.B. in sozialen Netzwerken wie Facebook, StudiVZ etc, aber auch auf Youtube usw. oder durch sonstige für diese Zwecke geeignete Kommunikations-mittel untersagt. Diese Regelungen gelten sinngemäß auch für Skripten, sonstige Lernbehelfe und Prüfungsangaben. - Ausgenommen hiervon ist eine Aufzeichnung zu ausschließlichen Lern-, Studien- und Forschungszwecken und zum privaten Gebrauch, sofern hierfür der Vortragende vorab ausdrücklich seine schriftliche Zustimmung erteilt hat. - - - 6.2.9 Geheimhaltungspflicht - - Die ao. Studentin bzw. der ao. Student ist zur Geheimhaltung von Forschungs- und Entwicklungsaktivitäten und -ergebnissen gegenüber Dritten verpflichtet. - - 6.2.10 Unfallmeldung - Im Falle eines Unfalles mit körperlicher Verletzung des/der ao. Studierenden im Zusammenhang mit dem ao. Studium ist die/der ao. Studierende verpflichtet, innerhalb von drei Tagen eine Meldung am Studiengangssekretariat einzubringen. Dies betrifft auch Wegunfälle zur oder von der FH. - - 6.2.8 Recordings - It is expressly forbidden for the external student to record lectures in part or in total (e.g. by using film and / or sound recordings or other audio-visual means suitable for this purpose). In addition, any form of making the aforementioned recordings publically available (wired or wireless) for example in social networks such as Facebook, StudiVZ etc, but also on Youtube, etc., or by other means of communication designed for these purposes is strictly prohibited. These regulations shall apply correspondingly to scripts, other learning aids and examination data. - The only exception is a recording exclusively for the purpose of learning, study and research and for personal use, provided that the lecturer has expressly granted his / her prior written consent. - - - - - - 6.2.9 Confidentiality - The external student is required to maintain confidentiality towards third parties of research and development activities and results. - - - 6.2.10 Accident Report - In the event of an accident with bodily injury to an external student in connection with his / her studies, he / she is obliged to bring a report to the administrative assistant of the degree program within three days. This also applies to accidents on the way to or from the UAS. - - - 7. Beendigung des Vertrages - - - 7.1 Auflösung im beiderseitigen Einvernehmen - - Im beiderseitigen Einvernehmen ist die Auflösung des Ausbildungsvertrages jederzeit ohne Angabe von Gründen möglich. Die einvernehmliche Auflösung bedarf der Schriftform. - - - 7.2 Kündigung durch die Studentin bzw. den Studenten - - Die ao. Studentin bzw. der ao. Student kann den Ausbildungsvertrag schriftlich jeweils zum Ende eines Semesters kündigen. - - - 7.3 Ausschluss durch den Erhalter - - Der Erhalter kann die ao. Studentin bzw. den ao. Studenten aus wichtigem Grund mit sofortiger Wirkung vom weiteren Studium ausschließen, und zwar beispielsweise wegen - - - nicht genügender Leistung im Sinne der Prüfungsordnung; - - - mehrmaligem unentschuldigten Verletzen der Anwesenheitspflicht ; - - - wiederholtem Nichteinhalten von Prüfungsterminen und Abgabeterminen für Seminararbeiten, Projektarbeiten etc.; - - - schwerwiegender bzw. wiederholter Verstöße gegen die Hausordnung; - - - persönlichem Verhalten, das zu einer Beeinträchtigung des Images und/oder Betriebes des Studienganges, der Fach-hochschule bzw. des Erhalters oder von Personen führt, die für die Fachhochschule bzw. den Erhalter tätig sind; - - - Verletzung der Verpflichtung, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen anzubieten (siehe Pkt. 6.2.7); - - - - - + Diese Dokumente sind öffentlich zugänglich unter www.technikum-wien.at. + - 7. Termination of the contract + 6. Rights and Duties of the external Students + + + + + + + + + - + + + 6.1 Rights + + + + + + + + The external student has the right to + + + attend a course being run in accordance with the conditions laid down in the accredited degree program as amended and in the statute of the UAS Technikum Wien as amended + + + a certificate showing the examinations successfully passed in the current semester. + + + + + + + 6.2 Duties + + + 6.2.1 Compliance with regulations relevant to the studies + In particular the external student undertakes to comply with the following regulations: + + + Study Regulations and Studies Act Provisions / Examination Regulations as amended + + + General Rules of Conduct as amended + + + Fire Regulations as amended + + + Library Regulations as amended + + + The Laboratory Regulations applicable to the respective degree program as amended + + + + These documents are publically available at www.technikum-wien.at. + 6.2.2 Studienbeitrag + + Die ao. Studentin bzw. der ao. Student ist verpflichtet, zwei Wochen vor Beginn jedes Semesters (StudienanfängerInnen: bis 20. August vor Studienbeginn) einen Studienbeitrag gemäß Fachhochschul-Studiengesetz in der Höhe von derzeit € 363,36 netto pro Semester zu entrichten. Im Falle einer Erhöhung des gesetzlichen Studienbeitragssatzes erhöht sich der angeführte Betrag entsprechend. + Die vollständige Bezahlung des Studienbeitrags ist Voraussetzung für die Aufnahme bzw. die Fortsetzung des ao. Studiums. Bei Nichtantritt des ao. Studiums oder Abbruch zu Beginn oder während des Semesters verfällt der Studienbeitrag. + + 6.2.3 ÖH-Beitrag + Gemäß § 4 Abs 10 FHStG sind Studierende an Fachhochschulen Mitglieder der Österreichischen HochschülerInnenschaft (ÖH). Der/Die ao. Studierende hat semesterweise einen ÖH-Beitrag an den Erhalter zu entrichten, der diesen an die ÖH abführt. Die Entrichtung des Betrags ist Voraussetzung für die Zulassung zum ao. Studium bzw. für dessen Fortsetzung. + + + 6.2.4 Unkostenbeitrag + Pro Semester ist ein Unkostenbeitrag zu entrichten, wobei es sich nicht um einen Pauschalbetrag handelt. Der Unkostenbeitrag stellt eine Abgeltung für über das Normalmaß hinausgehende Serviceleistungen der FH dar, z.B. Freifächer, Beratung/Info Auslands-studium, Sponsionsfeiern, Vorträge / Job-börse, Mensa etc. + 6.2.2 Tuition Fees + Two weeks before the beginning of each semester (new students: up to August 20 before taking up studies) the external student undertakes to pay tuition fees according to the University of Applied Sciences Studies Act currently to the sum of € 363.36 net payable per semester. In the event of an increase in the legal tuition fees rate, the amount quoted will increase accordingly. + + Full payment of the tuition fees is a prerequisite both for enrolling on the course and continuing with the degree program. For non-commencement or termination of the external + study at the beginning or during the semester, the tuition fee is forfeited. + + 6.2.3 Austrian Student Union fee + In accordance with § 4 para.10 FHStG (University of Applied Sciences Studies Act) students at Universities of Applied Sciences are members of the Austrian National Union of Students (ÖH). Each semester the external student is required to pay an ÖH fee to the operator. This fee is then paid to the ÖH. Payment of this fee is a prerequisite for admission to the course of external study or its continuation. + + 6.2.4 Contribution towards Expenses + A contribution towards expenses, which is not a lump sum, is payable per semester. The contribution towards expenses represents compensation for the services provided by the UAS that go beyond the normal level, such as electives, counseling/ information about studying abroad, graduation ceremonies, lectures/job market, cafeteria, etc. + + Die Höhe des Unkostenbeitrages beträgt derzeit € 75,– pro Semester. Eine allfällige Anpassung wird durch Aushang bekannt gemacht. + Der Unkostenbeitrag ist gleichzeitig mit der Studiengebühr vor Beginn des Semesters zu entrichten. + + Bei Vertragsauflösung vor dem Ende der besuchten Lehrveranstaltungen aus Gründen, die die ao. Studentin bzw. der ao. Student zu vertreten hat, oder auf deren bzw. dessen Wunsch, wird der Unkostenbeitrag zur Abdeckung der dem Erhalter erwachsenen administrativen Zusatzkosten einbehalten. + + 6.2.5 Lehr- und Lernbehelfe + Die Anschaffung unterrichtsbezogener Literatur und individueller Lernbehelfe ist durch den Unkostenbeitrag nicht abgedeckt. Eventuelle zusätzliche Kosten, die sich beispielsweise durch die studiengangsbezogene, gemeinsame Anschaffung von Lehr- bzw. Lernbehelfen (Skripten, CDs, Bücher, Projektmaterialien, Kopierpapier etc.) oder durch Exkursionen ergeben, werden von jedem Studiengang individuell eingehoben. + + 6.2.6 Beibringung persönlicher Daten + Die ao. Studentin bzw. der ao. Student ist verpflichtet, persönliche Daten beizubringen, die auf Grund eines Gesetzes, einer Verordnung oder eines Bescheides vom Erhalter erfasst werden müssen oder zur Erfüllung des Ausbildungsvertrages bzw. für den Studienbetrieb unerlässlich sind. + The amount of the contribution is currently € 75,– per semester. Any possible adjustment is posted on the noticeboard. + The contribution towards expenses must be paid together with the tuition fees before the start of the semester. + + + If the contract is cancelled before graduation for reasons that are the fault of the external student, or on their wishes, the contribution towards expenses shall be deducted to cover the additional administrative costs borne by the operator. + + + 6.2.5 Teaching Aids and Learning Tools + The acquisition of teaching-related literature and individual learning tools is not covered by the contribution towards expenses. Any additional costs, which arise for example from the course-related, joint purchase of teaching and / or learning materials (scripts, CDs, books, project materials, copying paper, etc.) or result from field trips, are levied by each individual degree program. + + + + 6.2.6 Providing Personal Data + The external student is obliged to produce personal data which must be registered because of a law, regulation or a decision by the operator, or is essential fort he fulfilling of the training contract or fort he program of studies. + 6.2.7 Aktualisierung eigener Daten und Bezug von Informationen + + Die ao. Studentin bzw. der ao. Student hat unaufgefordert dafür zu sorgen, dass die von ihr/ihm beigebrachten Daten aktuell sind. Änderungen sind der Studiengangsassistenz unverzüglich schriftlich mitzuteilen. Darüber hinaus trifft sie/ihn die Pflicht, sich von studienbezogenen Informationen, die ihr/ihm an die vom Erhalter zur Verfügung gestellte Emailadresse zugestellt werden, in geeigneter Weise Kenntnis zu verschaffen. + + 6.2.8 Verwertungsrechte + Sofern nicht im Einzelfall andere Regelungen zwischen dem Erhalter und der ao. Studentin oder dem ao. Studenten getroffen wurden, ist die ao. Studentin oder der ao. Student verpflichtet, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen auf dessen schriftliche Anfrage hin anzubieten. + + 6.2.9 Aufzeichnungen und Mitschnitte + Es ist der/dem ao. Studierenden ausdrücklich untersagt, Lehrveranstaltungen als Ganzes oder nur Teile davon aufzuzeichnen und/oder mitzuschneiden (z.B. durch Film- und/oder Tonaufnahmen oder sonstige hierfür geeignete audiovisuelle Mittel). Darüber hinaus ist jede Form der öffentlichen Zurverfügungstellung (drahtlos oder drahtgebunden) der vorgenannten Aufnahmen z.B. in sozialen Netzwerken wie Facebook, StudiVZ etc, aber auch auf Youtube usw. oder durch sonstige für diese Zwecke geeignete Kommunikations-mittel untersagt. Diese Regelungen gelten sinngemäß auch für Skripten, sonstige Lernbehelfe und Prüfungsangaben. + + 6.2.7 Updating personal data and the retrieval of information + + Without being reminded, the external student must ensure that the data provided by them is up-to-date. Changes are to be immediately communicated to the administrative assistant in writing. Furthermore, it is the students’ responsibility to make themselves suitably aware of information relating to their studies which has been sent to them at the email address provided for them by the operator. + + + + + 6.2.8 Exploitation Rights + Unless other arrangements have been agreed between the operator and the external student at an individual level, on written request, the external student undertakes to offer the operator the rights to research and development results. + + + 6.2.9 Recordings + It is expressly forbidden for the external student to record lectures in part or in total (e.g. by using film and / or sound recordings or other audio-visual means suitable for this purpose). In addition, any form of making the aforementioned recordings publically available (wired or wireless) for example in social networks such as Facebook, StudiVZ etc, but also on Youtube, etc., or by other means of communication designed for these purposes is strictly prohibited. These regulations shall apply correspondingly to scripts, other learning aids and examination data. + Ausgenommen hiervon ist eine Aufzeichnung zu ausschließlichen Lern-, Studien- und Forschungszwecken und zum privaten Gebrauch, sofern hierfür der Vortragende vorab ausdrücklich seine schriftliche Zustimmung erteilt hat. + + 6.2.10 Geheimhaltungspflicht + Die ao. Studentin bzw. der ao. Student ist zur Geheimhaltung von Forschungs- und Entwicklungsaktivitäten und -ergebnissen gegenüber Dritten verpflichtet. + + 6.2.11 Unfallmeldung + Im Falle eines Unfalles mit körperlicher Verletzung des/der ao. Studierenden im Zusammenhang mit dem ao. Studium ist die/der ao. Studierende verpflichtet, diesen innerhalb von drei Tagen dem Studiengangssekretariat zu melden. Dies betrifft auch Wegunfälle zur oder von der FH. + + 6.2.12 Schadensmeldung + Im Falle des Eintretens eines Schadens am Inventar der Fachhochschule ist der/die ao. Studierende verpflichtet, diesen innerhalb von drei Tagen dem Studiengangssekretariat zu melden. Allfällige Haftungsansprüche bleiben hiervon unberührt. + + 6.2.13 Rückgabeverpflichtung bei Studienende + Die ao. Studentin bzw. der ao. Student ist verpflichtet, bei einer Beendigung des ao. Studiums unverzüglich alle zur Verfügung gestellten Gerätschaften, Bücher, Schlüssel und sonstige Materialien zurückzugeben. + The only exception is a recording exclusively for the purpose of learning, study and research and for personal use, provided that the lecturer has expressly granted his / her prior written consent. + + + 6.2.10 Confidentiality + The external student is required to maintain confidentiality towards third parties of research and development activities and results. + + + 6.2.11 Accident Report + In the event of an accident with bodily injury to an external student in connection with his / her external studies, he / she is obliged to report this to the administrative assistant of the degree program within three days. This also applies to accidents on the way to or from the UAS. + + 6.2.12 Damage Report + If any damage should be caused to the inventory of the University of Applied Sciences, the external student undertakes to report this to the administrative assistant of the degree program within three days. Any liability claims shall remain unaffected. + + 6.2.13 Obligation to Return Borrowed Items + The external student undertakes to return promptly all equipment, books, keys and other materials that have been made available, when the course is finished or broken off. + + 7. Beendigung des Vertrages + + + + + + 7.1 Auflösung im beiderseitigen Einvernehmen + Im beiderseitigen Einvernehmen ist die Auflösung des Ausbildungsvertrages jederzeit ohne Angabe von Gründen möglich. Die einvernehmliche Auflösung bedarf der Schriftform. + + + 7.2 Kündigung durch die ao. Studentin bzw. den ao. Studenten + + Die ao. Studentin bzw. der ao. Student kann den Ausbildungsvertrag schriftlich jeweils zum Ende eines Semesters kündigen. + + + 7.3 + Ausschluss durch den Erhalter + + Der Erhalter kann die ao. Studentin bzw. den ao. Studenten aus wichtigem Grund mit sofortiger Wirkung vom weiteren Studium ausschließen, und zwar beispielsweise wegen + + + nicht genügender Leistung im Sinne der Prüfungsordnung; + + + mehrmaligem unentschuldigten Verletzen der Anwesenheitspflicht; + + + wiederholtem Nichteinhalten von Prüfungsterminen und Abgabeterminen für Seminararbeiten, Projektarbeiten etc.; + + + schwerwiegender bzw. wiederholter Verstöße gegen die Hausordnung; + + + persönlichem Verhalten, das zu einer Beeinträchtigung des Images und/oder Betriebes des Studienganges, der Fach-hochschule bzw. des Erhalters oder von Personen führt, die für die Fachhochschule bzw. den Erhalter tätig sind; + + + Verletzung der Verpflichtung, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen anzubieten (siehe Pkt. 6.2.8); + + + + + 7. Termination of the contract + + + + + + + + 7.1 Annulment by Mutual Agreement - - By mutual consent, the annulment of the training contract is possible at any time, without notice and for any reason. The amicable annulment must be put down in writing. - - - - 7.2 Termination by the Student - - - - - The external student may terminate the training contract in writing at the end of each semester. - + + By mutual consent, the annulment of the training contract is possible at any time, without notice and for any reason. The amicable annulment must be put down in writing. + - 7.3 Expulsion by the Operator + + 7.2 Termination by the external Student + - The operator may exclude the external student from further study with immediate effect for good cause, for example because of - - + + + + + + The external student may terminate the training contract in writing at the end of each semester. + + 7.3 Expulsion by the Operator + The operator may exclude the student from further study with immediate effect for good cause, for example because of + + - insufficient achievement for the purposes of the examination regulations; + insufficient achievement for the purposes of the examination regulations; - repeated unexcused violation of the compulsory attendance regulation; + repeated unexcused violation of the compulsory attendance regulation; - repeated non-compliance with examination dates and deadlines for seminar papers, project work etc.; + repeated non-compliance with examination dates and deadlines for seminar papers, project work etc.; - serious or repeated violation of the house rules; + serious or repeated violation of the house rules; - personal behavior, which leads to an adverse effect on the image and / or operation of the course, the university or the operator or on persons who are working for the university or the operator; + personal behavior, which leads to an adverse effect on the image and / or operation of the course, the university or the operator or on persons who are working for the university or the operator; + - breach of the obligation to offer the operator the rights to research and development results (see Section 6.2.7); + breach of the obligation to offer the operator the rights to research and development results (see Section 6.2.8); + + + + Verletzung der Geheimhaltungspflicht (siehe Pkt. 6.2.10); + + + strafgerichtlicher Verurteilung (wobei die Art des Deliktes und der Grad der Schuld berücksichtigt werden); + + + Nichterfüllung finanzieller Verpflichtungen trotz Mahnung (z.B. Unkostenbeitrag, Studienbeitrag etc.); + + + Weigerung zur Beibringung von Daten (siehe Pkt. 6.2.6); + + + Plagiieren im Rahmen wissenschaftlicher Arbeiten. - - - + + Besucht die ao. Studentin bzw. der ao. Student nur eine Lehrveranstaltung, so ist damit zugleich der Ausschluss vom ao. Studium verbunden. + + Der Ausschluss kann mündlich erklärt werden. Mit Ausspruch des Ausschlusses endet der Ausbildungsvertrag, es sei denn, es wird ausdrücklich auf einen anderen Endtermin hingewiesen. Eine schriftliche Bestätigung des Ausschlusses wird innerhalb von zwei Wochen nach dessen Ausspruch per Post an die bekannt gegebene Adresse abgeschickt oder auf andere geeignete Weise übermittelt. + Gleichzeitig mit dem Ausspruch des Ausschlusses kann auch ein Hausverbot verhängt werden. + + 7.4 Erlöschen + + Der Ausbildungsvertrag erlischt mit der Beendigung der besuchten Lehrveranstaltungen durch die Ausstellung eines Zeugnisses oder einer Teilnahmebestätigung. Im Fall des Besuchs mehrerer Lehrveranstaltungen während eines Semesters gibt die Lehrveranstaltung mit der spätesten Ausstellung des Zeugnisses oder der Teilnahmebestätigung den Ausschlag. + + - Verletzung der Geheimhaltungspflicht (siehe Pkt. 6.2.9); + breach of confidentiality (see Section 6.2.10); - strafgerichtlicher Verurteilung (wobei die Art des Deliktes und der Grad der Schuld berücksichtigt werden); + a criminal conviction (whereby the nature of the offence and the level of culpability are taken into account); - Nichterfüllung finanzieller Verpflichtungen trotz Mahnung (z.B. Unkostenbeitrag, Studienbeitrag etc.); + non-fulfilment of the financial obligations, despite a reminder (e.g. contribution towards expenses, tuition fees , etc.); - Weigerung zur Beibringung von Daten (siehe Pkt. 6.2.6) + refusal to provide any data (see section 6.2.6); - Plagiieren im Rahmen wissenschaftlicher Arbeiten + plagiarism in academic work. - - - Besucht die ao. Studentin bzw. der ao. Student nur eine Lehrveranstaltung, so ist damit zugleich der Ausschluss vom ao. Studium verbunden. + + + If external students attend only one course, they are simultaneously excluded from an external course of study. + + + The expulsion can be explained verbally. Once notice of the expulsion has been given the training contract ends unless another deadline is explicitly made clear. Within two weeks of notice being given, written confirmation of the expulsion is mailed by post to the address provided or transmitted in any other appropriate manner. + + Simultaneously with notice of expulsion being given an exclusion order from entering the building may also be imposed. - - Der Ausschluss kann mündlich erklärt werden. Mit Ausspruch des Ausschlusses endet der Ausbildungsvertrag, es sei denn, es wird ausdrücklich auf einen anderen Endtermin hingewiesen. Eine schriftliche Bestätigung des Ausschlusses wird innerhalb von zwei Wochen nach dessen Ausspruch per Post an die bekannt gegebene Adresse abgeschickt oder auf andere geeignete Weise übermittelt. - Gleichzeitig mit dem Ausspruch des Ausschlusses kann auch ein Hausverbot verhängt werden. - - - 7.4 Erlöschen - - Der Ausbildungsvertrag erlischt mit der Beendigung der besuchten Lehrveranstaltungen durch die Ausstellung eines Zeugnisses oder einer Teilnahmebestätigung. Im Fall des Besuchs mehrerer Lehrveranstaltungen während eines Semesters gibt die Lehrveranstaltung mit der spätesten Ausstellung des Zeugnisses oder der Teilnahmebestätigung den Ausschlag. - - - - breach of confidentiality (see Section 6.2.9); - - - a criminal conviction (whereby the nature of the offence and the level of culpability are taken into account); - - - non-fulfilment of the financial obligations, despite a reminder (e.g. contribution towards expenses, tuition fees , etc.); - - - refusal to provide any data (see section 6.2.6); - - - plagiarism in academic work. - - - - - - - If external students attend only one course, they are simultaneously excluded from an external course of study. - - - - The expulsion can be explained verbally. Once notice of the expulsion has been given the training contract ends unless another deadline is explicitly made clear. Within two weeks of notice being given, written confirmation of the expulsion is mailed by post to the address provided or transmitted in any other appropriate manner. - Simultaneously with notice of expulsion being given an exclusion order from entering the building may also be imposed. - - - - 7.4 Expiry - - - The training contract comes to an end when the courses visited are shown to be completed by means of a certificate of achievement or an attendance certificate. If several courses have been attended during one semester, the course which is the last to issue its certificate of achievement or attendance certificate is the deciding factor. - - - - - 8. Ergänzende Vereinbarungen - - - - Das gesamte Studienprogramm wird in englischer Sprache angeboten. Die ao. Studentin bzw. der ao. Student erklärt, die englische Sprache in Wort und Schrift in dem für eine akademische Ausbildung erforderlichen Ausmaß zu beherrschen. - - - Ao. Studierende des Studiengangs sind verpflichtet, eine EDV-Ausstattung zu beschaffen und zu unterhalten, die es ermöglicht, an den Fernlehrelementen teilzunehmen. Die gesamten Kosten der Anschaffung und des Betriebs (inkl. Kosten für Internet und e-mail) trägt der ao. Student bzw. die ao. Studentin. - + + + 7.4 Expiry + The training contract comes to an end when the courses visited are shown to be completed by means of a certificate of achievement or an attendance certificate. If several courses have been attended during one semester, the course which is the last to issue its certificate of achievement or attendance certificate is the deciding factor. + + + + 8. Ergänzende Vereinbarungen + + Das gesamte Studienprogramm wird in englischer Sprache angeboten. Die ao. Studentin bzw. der ao. Student erklärt, die englische Sprache in Wort und Schrift in dem für eine akademische Ausbildung erforderlichen Ausmaß zu beherrschen. + + Ao. Studierende des Studiengangs sind verpflichtet, eine EDV-Ausstattung zu beschaffen und zu unterhalten, die es ermöglicht, an den Fernlehrelementen teilzunehmen. Die gesamten Kosten der Anschaffung und des Betriebs (inkl. Kosten für Internet und e-mail) trägt der ao. Student bzw. die ao. Studentin. + + 8. Supplementary Agreements + + The entire degree program is offered in English. The external student declares he / she masters the English language in word and in writing to the extent necessary for an academic degree program. + + + External students in the program are required to obtain and maintain computer equipment which allows them to participate in the distance learning elements. The total cost of acquisition and operation (including costs for Internet and e-mail) shall be borne by the external student. - - + + - - 9. - - - 8. - - - Unwirksamkeit von Vertrags-bestimmungen, Vertragslücke - - - Sollten einzelne Bestimmungen dieses Vertrages unwirksam oder nichtig sein oder werden, so berührt dies die Gültigkeit der übrigen Bestimmungen dieses Vertrages nicht. - Die Vertragsparteien verpflichten sich, unwirksame oder nichtige Bestimmungen durch neue Bestimmungen zu ersetzen, die dem in den unwirksamen oder nichtigen Bestimmungen enthaltenen Regelungsgehalt in rechtlich zulässiger Weise gerecht werden. Zur Ausfüllung einer allfälligen Lücke verpflichten sich die Vertragsparteien, auf die Etablierung angemessener Regelungen in diesem Vertrag hinzuwirken, die dem am nächsten kommen, was sie nach dem Sinn und Zweck des Vertrages bestimmt hätten, wenn der Punkt von ihnen bedacht worden wäre. - - - - - - - - - 8. Supplementary Agreements - - - - The entire degree program is offered in English. The external student declares he / she masters the - English language in word and in writing to the extent necessary for an academic degree program. - - - - External students in the program are required to obtain and maintain computer equipment which allows them to participate in the distance learning elements. The total cost of acquisition and operation (including costs for Internet and e-mail) shall be borne by the external student. - - - - - - - + 9. @@ -1517,108 +1374,126 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - Invalidity of Contractual Provisions, Contractual Gap + Unwirksamkeit von Vertrags-bestimmungen - - If any provision of this agreement should be or become invalid or void, this shall not affect the validity of the remaining provisions of this agreement. - The parties undertake to replace the invalid or void provisions with new provisions that meet the content of the rules contained in the invalid or void provisions in a legally permissible manner. To fill a possible gap, the parties undertake to work towards the establishment of appropriate regulations in this contract, which come closest to what they would have determined in terms of meaning and purpose of the contract, if the point had been considered by them. - - - - + + Sollten einzelne Bestimmungen dieses Vertrages unwirksam oder nichtig sein oder werden, so berührt dies die Gültigkeit der übrigen Bestimmungen dieses Vertrages nicht. + + + - + 10. 9. - Ausfertigungen, Gebühren, Gerichtsstand + + Ausfertigungen, Gebühren, Gerichtsstand, geltendes Recht - - Die Ausfertigung dieses Vertrages erfolgt in zweifacher Ausführung. Ein Original verbleibt im zuständigen Administrationsbüro des Fachhochschul-Studienganges. Eine Ausfertigung wird der ao. Studentin bzw. dem ao. Studenten übergeben. - - Die englische Übersetzung des deutschsprachigen Vertrages dient nur als Referenz. Rechtsgültigkeit hat ausschließlich der deutsche Vertrag. - + + Die Ausfertigung dieses Vertrages erfolgt in zweifacher Ausführung. Ein Original verbleibt im zuständigen Administrationsbüro des Fachhochschul-Studienganges. Eine Ausfertigung wird der ao. Studentin bzw. dem ao. Studenten übergeben. + + Für Streitigkeiten aus diesem Vertrag gilt österreichisches Recht als vereinbart, allfällige Klagen gegen den Erhalter sind beim sachlich zuständigen Gericht in Wien einzubringen. + + Die englische Übersetzung des deutschsprachigen Vertrages dient nur als Referenz. Rechtsgültigkeit hat ausschließlich der deutsche Vertrag. + Der Ausbildungsvertrag ist gebührenfrei. - Gerichtsstand ist Wien, Innere Stadt. - - - - - + + - - 10. + + 9. - 9. + 8. - Copies, Fees, Place of Jurisdiction + Invalidity of Contractual Provisions - - This contract is provided in duplicate. An original remains with the competent administrations office of the University of Applied Sciences’ Degree Program. A copy is given to the external student. - - - The English translation of the German contract is intended as a reference only. Only the German version of this contract is legally valid in a Court of Law. - - The training contract is free of charge. - Place of Jurisdiction is Vienna, Inner City. - - - + + If any provision of this agreement should be or become invalid or void, this shall not affect the validity of the remaining provisions of this agreement. + + + + + + 10. + + + 9. + + + + Copies, Fees, Place of Jurisdiction, Applicable Law + + + This contract is provided in duplicate. An original remains with the competent administrations office of the University of Applied Sciences’ Degree Program. A copy is given to the external student. + + + In respect of any disputes arising from this contract, Austrian law shall apply. Any complaints about the operator should be introduced at the competent court in Vienna. + + The English translation of the German contract is intended as a reference only. Only the German version of this contract is legally valid in a Court of Law. + + The training contract is free of charge. + - - Wien (Vienna), - Ort, Datum (City, Date) - + + - + - + - - - + Wien (Vienna), - - Die ao. Studentin/der ao. Student /ggf. gesetzliche VertreterInnen + Ort, Datum (City, Date) + + + + + + Ort, Datum (City, Date) + + + + + + + + + + Die ao. Studentin/der ao. Student /ggf. gesetzliche VertreterInnen - - (The external student / - - - - if necessary legal representatives) + + (The external student /if necessary legal representatives) - + - - Für die FH Technikum Wien - - - (For the UAS Technikum Wien) + + Für die FH Technikum Wien + + (For the UAS Technikum Wien) - + diff --git a/system/xsl/Ausbildungsver_0.xsl b/system/xsl/Ausbildungsver_0.xsl index c55a2f38e..5a372020c 100644 --- a/system/xsl/Ausbildungsver_0.xsl +++ b/system/xsl/Ausbildungsver_0.xsl @@ -427,7 +427,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - Studienort sind die Räumlichkeiten der FH Technikum Wien, 1200 Wien, Höchstädtplatz und 1210 Wien, Giefinggasse. Bei Bedarf kann der Erhalter einen anderen Studienort in Wien festlegen, außerhochschulische Aktivitäten (zB Exkursionen) können auch außerhalb von Wien stattfinden. + Studienort sind die Räumlichkeiten der FH Technikum Wien, 1200 Wien, Höchstädtplatz und 1210 Wien, Giefinggasse. Bei Bedarf kann der Erhalter einen anderen Studienort in Wien festlegen, außerhochschulische Aktivitäten (z.B. Exkursionen) können auch außerhalb von Wien stattfinden. @@ -519,7 +519,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn 6.2 Pflichten 6.2.1 Einhaltung studienrelevanter Bestimmungen - Die Studentin bzw der Student ist verpflichtet, insbesondere folgende Bestimmungen einzuhalten: + Die Studentin bzw. der Student ist verpflichtet, insbesondere folgende Bestimmungen einzuhalten: Studienordnung und Studienrechtliche Bestimmungen / Prüfungsordnung idgF @@ -541,7 +541,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn Diese Dokumente sind öffentlich zugänglich unter www.technikum-wien.at. 6.2.2 Studienbeitrag - Die Studentin bzw. der Student ist verpflichtet, zwei Wochen vor Beginn jedes Semesters (StudienanfängerInnen: bis 20. August vor Studienbeginn) einen Studienbeitrag gemäß Fachhochschul-Studiengesetz in der Höhe von derzeit € 363,36 netto pro Semester zu entrichten. Dies gilt auch in Semestern mit DiplomandInnenstatus o.ä. Im Falle einer Erhöhung des gesetzlichen Studienbeitragssatzes erhöht sich der angeführte Betrag entsprechend. Die vollständige Bezahlung des Studienbeitrags ist Voraussetzung für die Aufnahme bzw. die Fortsetzung des Studiums. Bei Nichtantritt des Studiums oder Abbruch zu Beginn oder während des Semesters verfällt der Studienbeitrag. + Die Studentin bzw. der Student ist verpflichtet, zwei Wochen vor Beginn jedes Semesters (StudienanfängerInnen: bis 20. August vor Studienbeginn) einen Studienbeitrag gemäß Fachhochschul-Studiengesetz idgF in der Höhe von derzeit € 363,36 netto pro Semester zu entrichten. Dies gilt auch in Semestern mit DiplomandInnenstatus o.ä. Im Falle einer Erhöhung des gesetzlichen Studienbeitragssatzes erhöht sich der angeführte Betrag entsprechend. Die vollständige Bezahlung des Studienbeitrags ist Voraussetzung für die Aufnahme bzw. die Fortsetzung des Studiums. Bei Nichtantritt des Studiums oder Abbruch zu Beginn oder während des Semesters verfällt der Studienbeitrag. 6.2.3 ÖH-Beitrag Gemäß § 4 Abs 10 FHStG sind Studierende an Fachhochschulen Mitglieder der Österreichischen HochschülerInnenschaft (ÖH). Der/Die Studierende hat semesterweise einen ÖH-Beitrag an den Erhalter zu entrichten, der diesen an die ÖH abführt. Die Entrichtung des Betrags ist Voraussetzung für die Zulassung zum Studium bzw. für dessen Fortsetzung. @@ -571,7 +571,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn Die Anschaffung unterrichtsbezogener Literatur und individueller Lernbehelfe ist durch den Unkostenbeitrag nicht abgedeckt. Eventuelle zusätzliche Kosten, die sich beispielsweise durch die studiengangsbezogene, gemeinsame Anschaffung von Lehr- bzw. Lernbehelfen (Skripten, CDs, Bücher, Projektmaterialien, Kopierpapier etc.) oder durch Exkursionen ergeben, werden von jedem Studiengang individuell eingehoben. 6.2.7 Beibringung persönlicher Daten - Die Studentin bzw. der Student ist verpflichtet, persönliche Daten beizubringen, die auf Grund eines Gesetzes, einer Verordnung oder eines Bescheides vom Erhalter erfasst werden müssen oder zur Erfüllung des Ausbildungsvertrages bzw für den Studienbetrieb unerlässlich sind. + Die Studentin bzw. der Student ist verpflichtet, persönliche Daten beizubringen, die auf Grund eines Gesetzes, einer Verordnung oder eines Bescheides vom Erhalter erfasst werden müssen oder zur Erfüllung des Ausbildungsvertrages bzw. für den Studienbetrieb unerlässlich sind. 6.2.8 Aktualisierung eigener Daten und Bezug von Informationen Die Studentin bzw. der Student hat unaufgefordert dafür zu sorgen, dass die von ihr/ihm beigebrachten Daten aktuell sind. Änderungen sind der Studiengangsassistenz unverzüglich schriftlich mitzuteilen. Darüber hinaus trifft sie/ihn die Pflicht, sich von studienbezogenen Informationen, die ihr/ihm an die vom Erhalter zur Verfügung gestellte Emailadresse zugestellt werden, in geeigneter Weise Kenntnis zu verschaffen. @@ -580,7 +580,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn Sofern nicht im Einzelfall andere Regelungen zwischen dem Erhalter und der Studentin oder dem Studenten getroffen wurden, ist die Studentin oder der Student verpflichtet, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen auf dessen schriftliche Anfrage hin anzubieten. 6.2.10 Aufzeichnungen und Mitschnitte - Es ist der/dem Studierenden ausdrücklich untersagt, Lehrveranstaltungen als Ganzes oder nur Teile davon aufzuzeichnen und/oder mitzuschneiden (z.B. durch Film- und/oder Tonaufnahmen oder sonstige hierfür geeignete audiovisuelle Mittel). Darüber hinaus ist jede Form der öffentlichen Zurverfügungstellung (drahtlos oder drahtgebunden) der vorgenannten Aufnahmen z.B. in sozialen Netzwerken wie Facebook, StudiVZ etc, aber auch auf Youtube usw. oder durch sonstige für diese Zwecke geeignete Kommunikationsmittel untersagt. Diese Regelungen gelten sinngemäß auch für Skripten, sonstige Lernbehelfe und Prüfungsangaben. + Es ist der/dem Studierenden ausdrücklich untersagt, Lehrveranstaltungen als Ganzes oder nur Teile davon aufzuzeichnen und/oder mitzuschneiden (z.B. durch Film- und/oder Tonaufnahmen oder sonstige hierfür geeignete audiovisuelle Mittel). Darüber hinaus ist jede Form der öffentlichen Zurverfügungstellung (drahtlos oder drahtgebunden) der vorgenannten Aufnahmen z.B. in sozialen Netzwerken wie Facebook, StudiVZ etc., aber auch auf Youtube usw. oder durch sonstige für diese Zwecke geeignete Kommunikationsmittel untersagt. Diese Regelungen gelten sinngemäß auch für Skripten, sonstige Lernbehelfe und Prüfungsangaben. Ausgenommen hiervon ist eine Aufzeichnung zu ausschließlichen Lern-, Studien- und Forschungszwecken und zum privaten Gebrauch, sofern hierfür der Vortragende vorab ausdrücklich seine schriftliche Zustimmung erteilt hat. 6.2.11 Geheimhaltungspflicht @@ -596,7 +596,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn 6.2.14 Rückgabeverpflichtung bei Studienende - Die Studentin bzw der Student ist verpflichtet, bei einer Beendigung des Studiums unverzüglich alle zur Verfügung gestellten Gerätschaften, Bücher, Schlüssel und sonstige Materialien zurückzugeben. + Die Studentin bzw. der Student ist verpflichtet, bei einer Beendigung des Studiums unverzüglich alle zur Verfügung gestellten Gerätschaften, Bücher, Schlüssel und sonstige Materialien zurückzugeben. diff --git a/system/xsl/Ausbildungsver_9005.xsl b/system/xsl/Ausbildungsver_9005.xsl index 7db6e7f06..17a77a4ae 100644 --- a/system/xsl/Ausbildungsver_9005.xsl +++ b/system/xsl/Ausbildungsver_9005.xsl @@ -7,639 +7,676 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + - - - - - - - - Ausbildungsvertrag außerordentliches Studium (Besuch einzelner Lehrveranstaltungen eines Studiengangs) - - Dieser Vertrag regelt das Rechtsverhältnis zwischen dem - Verein Fachhochschule Technikum Wien, 1060 Wien, Mariahilfer Straße 37-39 (kurz „Erhalter“ genannt) einerseits und - - Familienname: - Vorname: - Akademische/r Titel: + + + + + + + + Ausbildungsvertrag außerordentliches Studium (Besuch einzelner Lehrveranstaltungen eines Studiengangs) + + Keine Sozialversicherungsnummer oder Ersatzkennzeichen vorhanden + Kein Geburtsdatum vorhanden + Keine Ausbildungsdauer vorhanden + + Dieser Vertrag regelt das Rechtsverhältnis zwischen dem + Verein Fachhochschule Technikum Wien, 1060 Wien, Mariahilfer Straße 37-39 (kurz „Erhalter“ genannt) einerseits und + + Familienname: + Vorname: + Akademische/r Titel: - - - - - - - - Adresse: ; - Geburtsdatum: - - Sozialversicherungsnummer: - - - - 1 - - - - - - Gemäß § 3 Absatz 1 des Bildungsdokumentationsgesetzes (BGBl. I Nr. 12/2002 idgF) und der Bildungsdokumentationsverordnung-Fachhochschulen (BGBl. II Nr. 29/2004 idgF) hat der Erhalter die Sozialversicherungsnummer zu erfassen und gemäß § 7 Absatz 2 im Wege der Agentur für Qualitätssicherung und Akkreditierung Austria an das zuständige Bundesministerium und die Bundesanstalt Statistik Österreich zu übermitteln. - - - - - - - - Personenkennzeichen: - - (kurz „ao. Studentin“ bzw. „ao. Student“ genannt) andererseits im Rahmen des außerordentlichen Studiums bzw. des Besuchs einzelner Lehrveranstaltungen an der FH Technikum Wien. + + + + - + + + Adresse: ; + Geburtsdatum: + + Sozialversicherungsnummer: + + + + 1 + + + + + + Gemäß § 3 Absatz 1 des Bildungsdokumentationsgesetzes idgF und der Bildungsdokumentationsverordnung-Fachhochschulen idgF hat der Erhalter die Sozialversicherungsnummer zu erfassen und gemäß § 7 Absatz 2 im Wege der Agentur für Qualitätssicherung und Akkreditierung Austria an das zuständige Bundesministerium und die Bundesanstalt Statistik Österreich zu übermitteln. + + + + + + + + + (kurz „ao. Studentin“ bzw. „ao. Student“ genannt) andererseits im Rahmen des außerordentlichen Studiums bzw. des Besuchs einzelner Lehrveranstaltungen an der FH Technikum Wien. Die konkreten Lehrveranstaltungen des außerordentlichen Studiums sind in der Information über die Zulassung zum außerordentlichen Studium angeführt. - - - - - - Ausbildungsort - - - - - Studienort sind die Räumlichkeiten der FH Technikum Wien, 1200 Wien, Höchstädtplatz und 1210 Wien, Giefinggasse. Bei Bedarf kann der Erhalter einen anderen Studienort festlegen. - - - - - - Vertragsgrundlage - - - - - Die Ausbildung erfolgt auf der Grundlage von § 4 Abs. 2 und 3 des Fachhochschul-Studiengesetzes, BGBl. Nr. 340/1993 idgF, des Hochschul-Qualitätssicherungsgesetzes, BGBl. I Nr. 74/2011 idgF und des Akkreditierungsbescheides des Board der AQ Austria vom 9.5.2012, GZ FH12020016 idgF. - - - - - Ausbildungsdauer - - - - - Die Ausbildungsdauer des außerordentlichen Studiums ist durch die Dauer der Lehrveranstaltung/en, zu der bzw. denen die ao. Studentin bzw. der ao. Student zugelassen ist, definiert. - - - - - Ausbildungsabschluss - - - - - Das außerordentliche Studium endet mit der positiven Absolvierung der in den jeweiligen Lehrveranstaltungen vorgesehenen Leistungsanforderungen. Nach dem positiven Abschluss wird der für die jeweilige Lehrveranstaltung vorgesehene Leistungsnachweis ausgestellt. - - - - - - Rechte und Pflichten des Erhalters - - - - - 5.1 Rechte - Der Erhalter führt eine periodische Überprüfung des die Lehrveranstaltungen anbietenden Studiengangs im Hinblick auf Relevanz und Aktualität durch und ist im Einvernehmen mit dem FH-Kollegium berechtigt, daraus Änderungen im Lehrangebot des Studienganges abzuleiten. - - Der Erhalter ist berechtigt, die Daten der/des ao. Studierenden an den FH Technikum Wien Alumni Club zu übermitteln. Der Alumni Club ist der AbsolventInnenverein der FH Technikum Wien. Er hat zum Ziel, AbsolventInnen, Studierende und Lehrende miteinander zu vernetzen sowie AbsolventInnen laufend über Aktivitäten an der FH Technikum Wien zu informieren. Einer Zusendung von Informationen durch den Alumni Club kann jederzeit widersprochen werden. - - - - - - 5.2 Pflichten - - - Der Erhalter ist verpflichtet, all jene Voraussetzungen zu bieten, damit die besuchten Lehrveranstaltungen in der vorgesehenen Zeit erfolgreich abgeschlossen werden können. Die Voraussetzungen zur Erfüllung dieser Verpflichtung sind Gegenstand des akkreditierten Studienganges idgF, der Satzung der FH Technikum Wien idgF und der Hausordnung idgF. - - - Der Erhalter ist weiters verpflichtet, die Lehrveranstaltungen auf der Grundlage höchster Qualitätsansprüche hinsichtlich der Erreichung der Ausbildungsziele zu gestalten und allfällige Änderungen des akkreditierten Studienganges bekannt zu geben. - - - Der Erhalter verpflichtet sich zur sorgfaltsgemäßen Verwendung der personenbezogenen Daten der ao. Studierenden. Die Daten werden nur im Rahmen der gesetzlichen und vertraglichen Verpflichtungen sowie des Studienbetriebes verwendet und nicht an nicht berechtigte Dritte weitergegeben. - - - - - - - - Rechte und Pflichten der Studierenden - - - - - 6.1 Rechte - Die ao. Studentin bzw. der ao. Student hat das Recht auf - - - einen Lehrveranstaltungsbetrieb gemäß den im akkreditierten Studiengang idgF und in der Satzung der FH Technikum Wien idgF festgelegten Bedingungen; - - - ein Zeugnis über die im laufenden Semester abgelegten Prüfungen. - - - - 6.2 Pflichten - 6.2.1 Studienbeitrag - Die ao. Studentin bzw. der ao. Student ist verpflichtet, vor Beginn jedes Semesters bis zum jeweils bekannt gegebenen Termin einen Studienbeitrag gemäß Fachhochschul-Studiengesetz (BGBl. Nr. 340/1993 idgF) in der Höhe von derzeit € 363,36 netto pro Semester zu entrichten. Im Falle einer Erhöhung des gesetzlichen Studienbeitragssatzes erhöht sich der angeführte Betrag entsprechend. Bei Nichtantritt des ao. Studiums oder Abbruch zu Beginn oder während des Semesters verfällt der Studienbeitrag. - 6.2.2 Studierendenbeitrag („ÖH-Beitrag“) - Gemäß § 4 Abs. 10 des Fachhochschul-Studiengesetzes (BGBl. Nr. 340/1993 idgF) gehören ordentliche und außerordentliche Studierende der Österreichischen Hochschülerinnen- und Hochschülerschaft (ÖH) gemäß Hochschülerinnen- und Hochschülerschaftsgesetz 2014 - HSG 2014, BGBl. I Nr. 45/2014, an. Daraus resultiert die Verpflichtung der ao. Studentin oder des ao. Studenten zur Entrichtung des ÖH-Beitrags. Der Studierendenbeitrag kann jährlich durch die ÖH indexiert werden; die genaue Höhe des Studierendenbeitrags wird von der ÖH jährlich für das folgende Studienjahr bekannt gegeben. Die Einhebung des Betrags erfolgt durch die Fachhochschule. Der Erhalter überweist in Folge die eingezahlten Beträge der ao. Studierenden ohne Abzüge an die ÖH. Die Entrichtung des Betrags ist Voraussetzung für die Zulassung zum ao. Studium bzw. für dessen Fortsetzung. - 6.2.3 Unkostenbeitrag - Pro Semester ist ein Unkostenbeitrag zu entrichten. Die Höhe des Unkostenbeitrages beträgt € 75,– pro Semester. Eine allfällige Anpassung wird durch Aushang bekannt gemacht. Der Unkostenbeitrag ist gleichzeitig mit der Studiengebühr vor Beginn des Semesters zu entrichten. Bei Vertragsauflösung vor dem Ende der besuchten Lehrveranstaltungen aus Gründen, die die ao. Studentin bzw. der ao. Student zu vertreten hat, oder auf deren bzw. dessen Wunsch, wird der Unkostenbeitrag zur Abdeckung der dem Erhalter erwachsenen administrativen Zusatzkosten einbehalten. - 6.2.4 Lehr- und Lernbehelfe - Die Anschaffung unterrichtsbezogener Literatur und individueller Lernbehelfe ist durch den Unkostenbeitrag nicht abgedeckt. Eventuelle zusätzliche Kosten, die sich beispielsweise durch die lehrveranstaltungsbezogene, gemeinsame Anschaffung von Lehr- bzw. Lernbehelfen (Skripten, CDs, Bücher, Projektmaterialien, Kopierpapier etc.) oder durch Exkursionen ergeben, werden von jedem Studiengang individuell eingehoben. - 6.2.5 Beibringung persönlicher Daten - Die ao. Studentin bzw. der ao. Student ist verpflichtet, persönliche Daten beizubringen, die auf Grund eines Gesetzes, einer Verordnung oder eines Bescheides vom Erhalter erfasst werden müssen oder zur Erfüllung des Ausbildungsvertrages bzw für den Studienbetrieb unerlässlich sind. - 6.2.6 Aktualisierung eigener Daten und Bezug von Informationen - Die ao. Studentin bzw. der ao. Student hat unaufgefordert dafür zu sorgen, dass die von ihr/ihm beigebrachten Daten aktuell sind. Änderungen sind der Studiengangsassistenz unverzüglich schriftlich mitzuteilen. Darüber hinaus trifft sie/ihn die Pflicht, sich von studienbezogenen Informationen, die ihr/ihm an die vom Erhalter zur Verfügung gestellte Emailadresse zugestellt werden, in geeigneter Weise Kenntnis zu verschaffen. - 6.2.7 Verwertungsrechte - Sofern nicht im Einzelfall andere Regelungen zwischen dem Erhalter und der ao. Studentin oder dem ao. Studenten getroffen wurden, ist die ao. Studentin oder der ao. Student verpflichtet, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen auf dessen schriftliche Anfrage hin anzubieten. - 6.2.8 Aufzeichnungen und Mitschnitte - Es ist der/dem ao. Studierenden ausdrücklich untersagt, Lehrveranstaltungen als Ganzes oder nur Teile davon aufzuzeichnen und/oder mitzuschneiden (z.B. durch Film- und/oder Tonaufnahmen oder sonstige hierfür geeignete audiovisuelle Mittel). Darüber hinaus ist jede Form der öffentlichen Zurverfügungstellung (drahtlos oder drahtgebunden) der vorgenannten Aufnahmen z.B. in sozialen Netzwerken wie Facebook, StudiVZ etc, aber auch auf Youtube usw. oder durch sonstige für diese Zwecke geeignete Kommunikationsmittel untersagt. Diese Regelungen gelten sinngemäß auch für Skripten, sonstige Lernbehelfe und Prüfungsangaben. - Ausgenommen hiervon ist eine Aufzeichnung zu ausschließlichen Lern-, Studien- und Forschungszwecken und zum privaten Gebrauch, sofern hierfür der Vortragende vorab ausdrücklich seine schriftliche Zustimmung erteilt hat. - 6.2.9 Geheimhaltungspflicht - Die ao. Studentin bzw. der ao. Student ist zur Geheimhaltung von Forschungs- und Entwicklungsaktivitäten und -ergebnissen gegenüber Dritten verpflichtet. - 6.2.10 Unfallmeldung - Im Falle eines Unfalles mit körperlicher Verletzung des/der ao. Studierenden im Zusammenhang mit dem ao. Studium ist die/der ao. Studierende verpflichtet, innerhalb von drei Tagen eine Meldung am Studiengangssekretariat einzubringen. Dies betrifft auch Wegunfälle zur oder von der FH. - - - - - - Beendigung des Vertrages - - - - - 7.1 Auflösung im beiderseitigen Einvernehmen - Im beiderseitigen Einvernehmen ist die Auflösung des Ausbildungsvertrages jederzeit ohne Angabe von Gründen möglich. Die einvernehmliche Auflösung bedarf der Schriftform. - - 7.2 Kündigung durch die ao. Studentin bzw. den ao. Studenten - Die ao. Studentin bzw. der ao. Student kann den Ausbildungsvertrag schriftlich jeweils zum Ende eines Semesters kündigen. - - 7.3 Ausschluss durch den Erhalter - Der Erhalter kann die ao. Studentin bzw. den ao. Studenten aus wichtigem Grund mit sofortiger Wirkung vom weiteren Besuch einer bestimmten Lehrveranstaltung ausschließen, und zwar beispielsweise wegen - - - nicht genügender Leistung im Sinne der Prüfungsordnung; - - - mehrmaligem unentschuldigten Verletzen der Anwesenheitspflicht ; - - - wiederholtem Nichteinhalten von Prüfungsterminen und Abgabeterminen für Seminararbeiten, Projektarbeiten etc.; - - - schwerwiegender bzw. wiederholter Verstöße gegen die Hausordnung; - - - persönlichem Verhalten, das zu einer Beeinträchtigung des Images und/oder Betriebes des Studienganges, der Fachhochschule bzw. des Erhalters oder von Personen führt, die für die Fachhochschule bzw. den Erhalter tätig sind; - - - Verletzung der Verpflichtung, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen anzubieten (siehe Pkt. 6.2.7); - - - Verletzung der Geheimhaltungspflicht (siehe Pkt. 6.2.9); - - - strafgerichtlicher Verurteilung (wobei die Art des Deliktes und der Grad der Schuld berücksichtigt werden); - - - Nichterfüllung finanzieller Verpflichtungen trotz Mahnung (z.B. Unkostenbeitrag, Studienbeitrag etc.); - - - Weigerung zur Beibringung von Daten (siehe Pkt. 6.2.6) - - - Plagiieren im Rahmen wissenschaftlicher Arbeiten - - - - Besucht die ao. Studentin bzw. der ao. Student nur eine Lehrveranstaltung, so ist damit zugleich der Ausschluss vom ao. Studium verbunden. - Der Ausschluss kann mündlich erklärt werden. Mit Ausspruch des Ausschlusses vom ao. Studium endet der Ausbildungsvertrag, es sei denn, es wird ausdrücklich auf einen anderen Endtermin hingewiesen. Eine schriftliche Bestätigung des Ausschlusses wird innerhalb von zwei Wochen nach dessen Ausspruch per Post an die bekannt gegebene Adresse abgeschickt oder auf andere geeignete Weise übermittelt. Gleichzeitig mit dem Ausspruch des Ausschlusses kann auch ein Hausverbot verhängt werden. - - 7.4 Erlöschen - Der Ausbildungsvertrag erlischt mit der Beendigung der besuchten Lehrveranstaltungen durch die Ausstellung eines Zeugnisses oder einer Teilnahmebestätigung. Im Fall des Besuchs mehrerer Lehrveranstaltungen während eines Semesters gibt die Lehrveranstaltung mit der spätesten Ausstellung des Zeugnisses oder der Teilnahmebestätigung den Ausschlag. - - - + + - - - - Ergänzende Vereinbarungen - - - - - - Das gesamte Studienprogramm wird in englischer Sprache angeboten. Die ao. Studentin bzw. der ao. Student erklärt, die englische Sprache in Wort und Schrift in dem für eine akademische Ausbildung erforderlichen Ausmaß zu beherrschen. - - Ao. Studierende des Studiengangs sind verpflichtet, eine EDV-Ausstattung zu beschaffen und zu unterhalten, die es ermöglicht, an den Fernlehrelementen teilzunehmen. Die gesamten Kosten der Anschaffung und des Betriebs (inkl. Kosten für Internet und e-mail) trägt der ao. Student bzw. die ao. Studentin. - + + + Ausbildungsort + + + + + Studienort sind die Räumlichkeiten der FH Technikum Wien, 1200 Wien, Höchstädtplatz und 1210 Wien, Giefinggasse. Bei Bedarf kann der Erhalter einen anderen Studienort in Wien festlegen, außerhochschulische Aktivitäten (zB Exkursionen) können auch außerhalb von Wien stattfinden. + + + + + + Vertragsgrundlage + + + + + Die Ausbildung erfolgt auf der Grundlage von § 4 Abs. 2 und 3 des Fachhochschul-Studiengesetzes, BGBl. Nr. 340/1993 idgF, des Hochschul-Qualitätssicherungsgesetzes, BGBl. I Nr. 74/2011 idgF und des Akkreditierungsbescheides des Board der AQ Austria vom 9.5.2012, GZ FH12020016 idgF und der Satzung der Fachhochschule Technikum Wien idgF. + + + + + + Ausbildungsdauer + + + + + Die Ausbildungsdauer des außerordentlichen Studiums ist durch die Dauer der Lehrveranstaltung/en, zu der bzw. denen die ao. Studentin bzw. der ao. Student zugelassen ist, definiert. + + + + + + Ausbildungsabschluss + + + + + Das außerordentliche Studium endet mit der positiven Absolvierung der in den jeweiligen Lehrveranstaltungen vorgesehenen Leistungsanforderungen. Nach dem positiven Abschluss wird der für die jeweilige Lehrveranstaltung vorgesehene Leistungsnachweis ausgestellt. + + + + + + Rechte und Pflichten des Erhalters + + + + + 5.1 Rechte + Der Erhalter führt eine periodische Überprüfung des die Lehrveranstaltungen anbietenden Studiengangs im Hinblick auf Relevanz und Aktualität durch und ist im Einvernehmen mit dem FH-Kollegium berechtigt, daraus Änderungen im Lehrangebot des Studienganges abzuleiten. + + Der Erhalter ist berechtigt, die Daten der/des ao. Studierenden an den FH Technikum Wien Alumni Club zu übermitteln. Der Alumni Club ist der AbsolventInnenverein der FH Technikum Wien. Er hat zum Ziel, AbsolventInnen, Studierende und Lehrende miteinander zu vernetzen sowie AbsolventInnen laufend über Aktivitäten an der FH Technikum Wien zu informieren. Einer Zusendung von Informationen durch den Alumni Club kann jederzeit widersprochen werden. + + + + + + 5.2 Pflichten + + + Der Erhalter verpflichtet sich zur ordnungsgemäßen Planung und Durchführung der Lehrveranstaltung/en in der vorgesehenen Zeit. Der Erhalter ist verpflichtet, allfällige Änderungen des akkreditierten Studienganges zeitgerecht bekannt zu geben. + + + Der Erhalter verpflichtet sich zur sorgfaltsgemäßen Verwendung der personenbezogenen Daten der ao. Studierenden. Die Daten werden nur im Rahmen der gesetzlichen und vertraglichen Verpflichtungen sowie des Studienbetriebes verwendet und nicht an nicht berechtigte Dritte weitergegeben. + + + + + + + + Rechte und Pflichten der Studierenden + + + + + 6.1 Rechte + Die ao. Studentin bzw. der ao. Student hat das Recht auf + + + einen Lehrveranstaltungsbetrieb gemäß den im akkreditierten Studiengang idgF und in der Satzung der FH Technikum Wien idgF festgelegten Bedingungen; + + + ein Zeugnis über die im laufenden Semester abgelegten Prüfungen. + + + + 6.2 Pflichten + 6.2.1 Einhaltung studienrelevanter Bestimmungen + Die ao. Studentin bzw der ao. Student ist verpflichtet, insbesondere folgende Bestimmungen einzuhalten: + + + Studienordnung und Studienrechtliche Bestimmungen / Prüfungsordnung idgF + + + Hausordnung idgF + + + Brandschutzordnung idgF + + + Bibliotheksordnung idgF + + + Die für den jeweiligen Studiengang geltende/n Laborordnung/en idgF + + + + Diese Dokumente sind öffentlich zugänglich unter www.technikum-wien.at. + 6.2.2 Studienbeitrag + Die ao. Studentin bzw. der ao. Student ist verpflichtet, vor Beginn jedes Semesters bis zum jeweils bekannt gegebenen Termin einen Studienbeitrag gemäß Fachhochschul-Studiengesetz idgF in der Höhe von derzeit € 363,36 netto pro Semester zu entrichten. Im Falle einer Erhöhung des gesetzlichen Studienbeitragssatzes erhöht sich der angeführte Betrag entsprechend. Die vollständige Bezahlung des Studienbeitrags ist Voraussetzung für die Aufnahme bzw. die Fortsetzung des ao. Studiums. Bei Nichtantritt des ao. Studiums oder Abbruch zu Beginn oder während des Semesters verfällt der Studienbeitrag. + 6.2.3 ÖH-Beitrag + Gemäß § 4 Abs 10 FHStG sind ao. Studierende an Fachhochschulen Mitglieder der Österreichischen HochschülerInnenschaft (ÖH). Der/Die ao. Studierende hat semesterweise einen ÖH-Beitrag an den Erhalter zu entrichten, der diesen an die ÖH abführt. Die Entrichtung des Betrags ist Voraussetzung für die Zulassung zum ao. Studium bzw. für dessen Fortsetzung. + 6.2.4 Unkostenbeitrag + Pro Semester ist ein Unkostenbeitrag zu entrichten. Die Höhe des Unkostenbeitrages beträgt € 75,– pro Semester. Eine allfällige Anpassung wird durch Aushang bekannt gemacht. Der Unkostenbeitrag ist gleichzeitig mit der Studiengebühr vor Beginn des Semesters zu entrichten. Bei Vertragsauflösung vor dem Ende der besuchten Lehrveranstaltungen aus Gründen, die die ao. Studentin bzw. der ao. Student zu vertreten hat, oder auf deren bzw. dessen Wunsch, wird der Unkostenbeitrag zur Abdeckung der dem Erhalter erwachsenen administrativen Zusatzkosten einbehalten. + 6.2.5 Lehr- und Lernbehelfe + Die Anschaffung unterrichtsbezogener Literatur und individueller Lernbehelfe ist durch den Unkostenbeitrag nicht abgedeckt. Eventuelle zusätzliche Kosten, die sich beispielsweise durch die lehrveranstaltungsbezogene, gemeinsame Anschaffung von Lehr- bzw. Lernbehelfen (Skripten, CDs, Bücher, Projektmaterialien, Kopierpapier etc.) oder durch Exkursionen ergeben, werden von jedem Studiengang individuell eingehoben. + 6.2.6 Beibringung persönlicher Daten + Die ao. Studentin bzw. der ao. Student ist verpflichtet, persönliche Daten beizubringen, die auf Grund eines Gesetzes, einer Verordnung oder eines Bescheides vom Erhalter erfasst werden müssen oder zur Erfüllung des Ausbildungsvertrages bzw für den Studienbetrieb unerlässlich sind. + 6.2.7 Aktualisierung eigener Daten und Bezug von Informationen + Die ao. Studentin bzw. der ao. Student hat unaufgefordert dafür zu sorgen, dass die von ihr/ihm beigebrachten Daten aktuell sind. Änderungen sind der Studiengangsassistenz unverzüglich schriftlich mitzuteilen. Darüber hinaus trifft sie/ihn die Pflicht, sich von studienbezogenen Informationen, die ihr/ihm an die vom Erhalter zur Verfügung gestellte Emailadresse zugestellt werden, in geeigneter Weise Kenntnis zu verschaffen. + 6.2.8 Verwertungsrechte + Sofern nicht im Einzelfall andere Regelungen zwischen dem Erhalter und der ao. Studentin oder dem ao. Studenten getroffen wurden, ist die ao. Studentin oder der ao. Student verpflichtet, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen auf dessen schriftliche Anfrage hin anzubieten. + 6.2.9 Aufzeichnungen und Mitschnitte + Es ist der/dem ao. Studierenden ausdrücklich untersagt, Lehrveranstaltungen als Ganzes oder nur Teile davon aufzuzeichnen und/oder mitzuschneiden (z.B. durch Film- und/oder Tonaufnahmen oder sonstige hierfür geeignete audiovisuelle Mittel). Darüber hinaus ist jede Form der öffentlichen Zurverfügungstellung (drahtlos oder drahtgebunden) der vorgenannten Aufnahmen z.B. in sozialen Netzwerken wie Facebook, StudiVZ etc, aber auch auf Youtube usw. oder durch sonstige für diese Zwecke geeignete Kommunikationsmittel untersagt. Diese Regelungen gelten sinngemäß auch für Skripten, sonstige Lernbehelfe und Prüfungsangaben. + Ausgenommen hiervon ist eine Aufzeichnung zu ausschließlichen Lern-, Studien- und Forschungszwecken und zum privaten Gebrauch, sofern hierfür der Vortragende vorab ausdrücklich seine schriftliche Zustimmung erteilt hat. + 6.2.10 Geheimhaltungspflicht + Die ao. Studentin bzw. der ao. Student ist zur Geheimhaltung von Forschungs- und Entwicklungsaktivitäten und -ergebnissen gegenüber Dritten verpflichtet. + 6.2.11 Unfallmeldung + Im Falle eines Unfalles mit körperlicher Verletzung des/der ao. Studierenden im Zusammenhang mit dem ao. Studium ist die/der ao. Studierende verpflichtet, diesen innerhalb von drei Tagen dem Studiengangssekretariat zu melden. Dies betrifft auch Wegunfälle zur oder von der FH. + 6.2.12 Schadensmeldung + Im Falle des Eintretens eines Schadens am Inventar der Fachhochschule ist der/die ao. Studierende verpflichtet, diesen innerhalb von drei Tagen dem Studiengangssekretariat zu melden. Allfällige Haftungsansprüche bleiben hiervon unberührt. + 6.2.13 Rückgabeverpflichtung bei Studienende + Die ao. Studentin bzw der ao. Student ist verpflichtet, bei einer Beendigung des ao. Ausbildungsverhältnisses unverzüglich alle zur Verfügung gestellten Gerätschaften, Bücher, Schlüssel und sonstige Materialien zurückzugeben. + + + + + + Beendigung des Vertrages + + + + + 7.1 Auflösung im beiderseitigen Einvernehmen + Im beiderseitigen Einvernehmen ist die Auflösung des Ausbildungsvertrages jederzeit ohne Angabe von Gründen möglich. Die einvernehmliche Auflösung bedarf der Schriftform. + + 7.2 Kündigung durch die ao. Studentin bzw. den ao. Studenten + Die ao. Studentin bzw. der ao. Student kann den Ausbildungsvertrag schriftlich jeweils zum Ende eines Semesters kündigen. + + 7.3 Ausschluss durch den Erhalter + Der Erhalter kann die ao. Studentin bzw. den ao. Studenten aus wichtigem Grund mit sofortiger Wirkung vom weiteren Besuch einer bestimmten Lehrveranstaltung ausschließen, und zwar beispielsweise wegen + + + nicht genügender Leistung im Sinne der Prüfungsordnung; + + + mehrmaligem unentschuldigten Verletzen der Anwesenheitspflicht ; + + + wiederholtem Nichteinhalten von Prüfungsterminen und Abgabeterminen für Seminararbeiten, Projektarbeiten etc.; + + + schwerwiegender bzw. wiederholter Verstöße gegen die Hausordnung; + + + persönlichem Verhalten, das zu einer Beeinträchtigung des Images und/oder Betriebes des Studienganges, der Fachhochschule bzw. des Erhalters oder von Personen führt, die für die Fachhochschule bzw. den Erhalter tätig sind; + + + Verletzung der Verpflichtung, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen anzubieten (siehe Pkt. 6.2.8); + + + Verletzung der Geheimhaltungspflicht (siehe Pkt. 6.2.10); + + + strafgerichtlicher Verurteilung (wobei die Art des Deliktes und der Grad der Schuld berücksichtigt werden); + + + Nichterfüllung finanzieller Verpflichtungen trotz Mahnung (z.B. Unkostenbeitrag, Studienbeitrag etc.); + + + Weigerung zur Beibringung von Daten (siehe Pkt. 6.2.5) + + + Plagiieren im Rahmen wissenschaftlicher Arbeiten + + + + Besucht die ao. Studentin bzw. der ao. Student nur eine Lehrveranstaltung, so ist damit zugleich der Ausschluss vom ao. Studium verbunden. + Der Ausschluss kann mündlich erklärt werden. Mit Ausspruch des Ausschlusses vom ao. Studium endet der Ausbildungsvertrag, es sei denn, es wird ausdrücklich auf einen anderen Endtermin hingewiesen. Eine schriftliche Bestätigung des Ausschlusses wird innerhalb von zwei Wochen nach dessen Ausspruch per Post an die bekannt gegebene Adresse abgeschickt oder auf andere geeignete Weise übermittelt. Gleichzeitig mit dem Ausspruch des Ausschlusses kann auch ein Hausverbot verhängt werden. + + 7.4 Erlöschen + Der Ausbildungsvertrag erlischt mit der Beendigung der besuchten Lehrveranstaltungen durch die Ausstellung eines Zeugnisses oder einer Teilnahmebestätigung. Im Fall des Besuchs mehrerer Lehrveranstaltungen während eines Semesters gibt die Lehrveranstaltung mit der spätesten Ausstellung des Zeugnisses oder der Teilnahmebestätigung den Ausschlag. + + + + + + + + Ergänzende Vereinbarungen + + + + + + Das gesamte Studienprogramm wird in englischer Sprache angeboten. Die ao. Studentin bzw. der ao. Student erklärt, die englische Sprache in Wort und Schrift in dem für eine akademische Ausbildung erforderlichen Ausmaß zu beherrschen. + + Ao. Studierende des Studiengangs sind verpflichtet, eine EDV-Ausstattung zu beschaffen und zu unterhalten, die es ermöglicht, an den Fernlehrelementen teilzunehmen. Die gesamten Kosten der Anschaffung und des Betriebs (inkl. Kosten für Internet und e-mail) trägt der ao. Student bzw. die ao. Studentin. + - - - - - Unwirksamkeit von Vertragsbestimmungen, Vertragslücke - - - - - Sollten einzelne Bestimmungen dieses Vertrages unwirksam oder nichtig sein oder werden, so berührt dies die Gültigkeit der übrigen Bestimmungen dieses Vertrages nicht. - Die Vertragsparteien verpflichten sich, unwirksame oder nichtige Bestimmungen durch neue Bestimmungen zu ersetzen, die dem in den unwirksamen oder nichtigen Bestimmungen enthaltenen Regelungsgehalt in rechtlich zulässiger Weise gerecht werden. Zur Ausfüllung einer allfälligen Lücke verpflichten sich die Vertragsparteien, auf die Etablierung angemessener Regelungen in diesem Vertrag hinzuwirken, die dem am nächsten kommen, was sie nach dem Sinn und Zweck des Vertrages bestimmt hätten, wenn der Punkt von ihnen bedacht worden wäre. - - - - - - Ausfertigungen, Gebühren, Gerichtsstand - - - - - Die Ausfertigung dieses Vertrages erfolgt in zweifacher Ausführung. Ein Original verbleibt im zuständigen Administrationsbüro des Fachhochschul-Studienganges. Eine Ausfertigung wird der ao. Studentin bzw. dem ao. Studenten übergeben. - Der Ausbildungsvertrag ist gebührenfrei. - Gerichtsstand ist Wien, Innere Stadt. - - - - - Wien, - - - - - - - Ort, Datum - - - - - - Ort, Datum - - - - - - - - - Die ao. Studentin/der ao. Studentggf. gesetzliche VertreterInnen - - - - - - Für die FH Technikum Wien - - - - - + + + + + Unwirksamkeit von Vertragsbestimmungen + + + + + Sollten einzelne Bestimmungen dieses Vertrages unwirksam oder nichtig sein oder werden, so berührt dies die Gültigkeit der übrigen Bestimmungen dieses Vertrages nicht. + + + + + + Ausfertigungen, Gebühren, Gerichtsstand, geltendes Recht + + + + + Die Ausfertigung dieses Vertrages erfolgt in zweifacher Ausführung. Ein Original verbleibt im zuständigen Administrationsbüro des Fachhochschul-Studienganges. Eine Ausfertigung wird der ao. Studentin bzw. dem ao. Studenten übergeben. Für Streitigkeiten aus diesem Vertrag gilt österreichisches Recht als vereinbart, allfällige Klagen gegen den Erhalter sind beim sachlich zuständigen Gericht in Wien einzubringen. + Der Ausbildungsvertrag ist gebührenfrei. + + + + + Wien, + + + + + + + Ort, Datum + + + + + + Ort, Datum + + + + + + + + + Die ao. Studentin/der ao. Studentggf. gesetzliche VertreterInnen + + + + + + Für die FH Technikum Wien + + + + + \ No newline at end of file From 60e1e444e973e8bf4874f6f42448ac8cf1bca8c6 Mon Sep 17 00:00:00 2001 From: kindlm Date: Mon, 18 Jul 2016 12:05:28 +0200 Subject: [PATCH 098/114] =?UTF-8?q?Link=20zum=20DMS-File=20in=20Bildpr?= =?UTF-8?q?=C3=BCfung?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- vilesci/fhausweis/bildpruefung.php | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/vilesci/fhausweis/bildpruefung.php b/vilesci/fhausweis/bildpruefung.php index 5df40c11f..cf44746cd 100755 --- a/vilesci/fhausweis/bildpruefung.php +++ b/vilesci/fhausweis/bildpruefung.php @@ -294,11 +294,11 @@ if (isset($_GET['ansicht'])) { if ($_GET['ansicht'] == 'mitarbeiter') { - $ansicht = 'AND uid IN (SELECT mitarbeiter_uid FROM public.tbl_mitarbeiter)'; + $ansicht = 'AND tbl_benutzer.uid IN (SELECT mitarbeiter_uid FROM public.tbl_mitarbeiter)'; $mitarbeiterSubmit = ''; } if ($_GET['ansicht'] == 'studenten') - $ansicht = 'AND uid NOT IN (SELECT mitarbeiter_uid FROM public.tbl_mitarbeiter)'; + $ansicht = 'AND tbl_benutzer.uid NOT IN (SELECT mitarbeiter_uid FROM public.tbl_mitarbeiter)'; } else { @@ -320,7 +320,7 @@ $qry_anzahl_mitarbeiter = " WHERE person_id=tbl_person.person_id ORDER BY datum desc, person_fotostatus_id desc LIMIT 1) AND 'abgewiesen' NOT IN (SELECT fotostatus_kurzbz FROM public.tbl_person_fotostatus WHERE person_id=tbl_person.person_id ORDER BY datum desc, person_fotostatus_id desc LIMIT 1) - AND uid IN (SELECT mitarbeiter_uid FROM public.tbl_mitarbeiter) + AND tbl_benutzer.uid IN (SELECT mitarbeiter_uid FROM public.tbl_mitarbeiter) "; $anzahl_ma = ''; if($result_anzahl = $db->db_query($qry_anzahl_mitarbeiter)) @@ -388,9 +388,11 @@ $qry = " FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id) + JOIN public.tbl_akte USING (person_id) WHERE foto is not NULL AND tbl_benutzer.aktiv + AND tbl_akte.dokument_kurzbz='Lichtbil' ".$ansicht; @@ -453,6 +455,8 @@ if($result = $db->db_query($qry)) echo ''; echo '


    '; echo 'Bild Upload'; + echo '

    '; + echo 'DMS Download'; echo ''; } else From fe643a0f68e99a71006cf9414165896e5edf706d Mon Sep 17 00:00:00 2001 From: oesi Date: Wed, 27 Jul 2016 10:30:54 +0200 Subject: [PATCH 099/114] =?UTF-8?q?Anpassungen=20f=C3=BCr=20User=20Syncro?= =?UTF-8?q?=20mit=20Moodle=203.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- include/moodle24_user.class.php | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/include/moodle24_user.class.php b/include/moodle24_user.class.php index 810039730..e28bf7a21 100644 --- a/include/moodle24_user.class.php +++ b/include/moodle24_user.class.php @@ -63,6 +63,13 @@ class moodle24_user extends basis_db $client = new SoapClient($this->serverurl); $response = $client->fhcomplete_user_get_users(array(array('key'=>'username', 'value'=>$uid))); + if(is_object($response)) + { + $response_obj = $response; + unset($response); + $response['users']=$response_obj->users; + } + if(isset($response['users'][0])) { $this->mdl_user_id = $response['users'][0]['id']; From caae236c3b656fc619cdb63f6091d39a57e393f3 Mon Sep 17 00:00:00 2001 From: Werner Masik Date: Thu, 28 Jul 2016 11:06:44 +0200 Subject: [PATCH 100/114] =?UTF-8?q?Lieferbedingungen=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- include/firma.class.php | 174 +++++++++++++++++++++++++++++++++++++--- 1 file changed, 163 insertions(+), 11 deletions(-) diff --git a/include/firma.class.php b/include/firma.class.php index 671333e36..ab26d6472 100644 --- a/include/firma.class.php +++ b/include/firma.class.php @@ -36,6 +36,7 @@ class firma extends basis_db public $firma_id; // integer public $name; // string public $anmerkung; // string + public $lieferbedingungen; // string public $ext_id; // integer public $insertamum; // timestamp public $insertvon; // bigint @@ -56,7 +57,7 @@ class firma extends basis_db public $bezeichnung; // string public $kundennummer; // integer - public $oe_aktiv; // boolean + public $oe_aktiv; // boolean public $mailverteiler; // string public $tags = array(); @@ -95,6 +96,7 @@ class firma extends basis_db $this->firma_id = $row->firma_id; $this->name = $row->name; $this->anmerkung = $row->anmerkung; + $this->lieferbedingungen = $row->lieferbedingungen; $this->firmentyp_kurzbz = $row->firmentyp_kurzbz; $this->updateamum = $row->updateamum; $this->updatevon = $row->updatevon; @@ -147,7 +149,11 @@ class firma extends basis_db $this->errormsg = 'Anmerkung darf nicht länger als 256 Zeichen sein'; return false; } - + if(mb_strlen($this->lieferbedingungen)>256) + { + $this->errormsg = 'Lieferbedingungen darf nicht länger als 256 Zeichen sein'; + return false; + } $this->errormsg = ''; return true; } @@ -167,11 +173,12 @@ class firma extends basis_db if($this->new) { //Neuen Datensatz einfuegen - $qry='INSERT INTO public.tbl_firma (name, anmerkung, + $qry='INSERT INTO public.tbl_firma (name, anmerkung, lieferbedingungen, firmentyp_kurzbz, updateamum, updatevon, insertamum, insertvon, schule,steuernummer, gesperrt,aktiv,finanzamt) VALUES('. $this->db_add_param($this->name).', '. $this->db_add_param($this->anmerkung).', '. + $this->db_add_param($this->lieferbedingungen).', '. $this->db_add_param($this->firmentyp_kurzbz).', '. $this->db_add_param($this->updateamum).', '. $this->db_add_param($this->updatevon).', '. @@ -197,6 +204,7 @@ class firma extends basis_db 'firma_id='.$this->db_add_param($this->firma_id).', '. 'name='.$this->db_add_param($this->name).', '. 'anmerkung='.$this->db_add_param($this->anmerkung).', '. + 'lieferbedingungen='.$this->db_add_param($this->lieferbedingungen).', '. 'updateamum= now(), '. 'updatevon='.$this->db_add_param($this->updatevon).', '. 'firmentyp_kurzbz='.$this->db_add_param($this->firmentyp_kurzbz).', '. @@ -368,14 +376,14 @@ class firma extends basis_db $qry = " SELECT - firma_id, name, anmerkung, firmentyp_kurzbz, updateamum, updatevon, insertamum, insertvon, + firma_id, name, anmerkung, lieferbedingungen, firmentyp_kurzbz, updateamum, updatevon, insertamum, insertvon, ext_id, schule, steuernummer, gesperrt, aktiv, finanzamt, '1' as sort FROM public.tbl_firma WHERE UPPER(trim(public.tbl_firma.name)) like '".$this->db_escape($matchcode)."%' UNION SELECT - firma_id, name, anmerkung, firmentyp_kurzbz, updateamum, updatevon, insertamum, insertvon, + firma_id, name, anmerkung, lieferbedingungen, firmentyp_kurzbz, updateamum, updatevon, insertamum, insertvon, ext_id, schule, steuernummer, gesperrt, aktiv, finanzamt, '2' as sort FROM public.tbl_firma WHERE @@ -398,6 +406,7 @@ class firma extends basis_db $fa->firma_id = $row->firma_id; $fa->name = $row->name; $fa->anmerkung = $row->anmerkung; + $fa->lieferbedingungen = $row->lieferbedingungen; $fa->firmentyp_kurzbz = $row->firmentyp_kurzbz; $fa->updateamum = $row->updateamum; $fa->updatevon = $row->updatevon; @@ -450,14 +459,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"; 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)) @@ -469,6 +483,7 @@ class firma extends basis_db $fa->firma_id = $row->firma_id; $fa->name = $row->name; $fa->anmerkung = $row->anmerkung; + $fa->lieferbedingungen = $row->lieferbedingungen; $fa->firmentyp_kurzbz = $row->firmentyp_kurzbz; $fa->updateamum = $row->updateamum; $fa->updatevon = $row->updatevon; @@ -492,6 +507,144 @@ class firma extends basis_db } } + public function getLatestChanges($tage = 7) { + $this->result = array(); + $this->errormsg = ''; + + $qry ="SELECT * FROM (SElECT "; + $qry.=" distinct on(firma_id)"; + $qry.=" tbl_firma.firma_id,tbl_firma.* ,tbl_standort.kurzbz,tbl_standort.adresse_id,tbl_standort.standort_id,tbl_standort.bezeichnung "; + $qry.=" ,person_id, tbl_adresse.name as adress_name, strasse, plz, ort, gemeinde,nation,typ,heimatadresse,zustelladresse "; + $qry.=" FROM public.tbl_firma"; + $qry.=" LEFT JOIN public.tbl_standort USING(firma_id) "; + $qry.=" LEFT JOIN public.tbl_adresse on ( tbl_adresse.adresse_id=tbl_standort.adresse_id ) "; + $qry.=" WHERE 1=1"; + $qry.=") as a WHERE (updateamum is not null and updateamum > (now()::date - $tage)) or insertamum > (now()::date - $tage) ORDER BY name;"; + //echo $qry; + if($this->db_query($qry)) + { + while($row = $this->db_fetch_object()) + { + $fa = new firma(); + + $fa->firma_id = $row->firma_id; + $fa->name = $row->name; + $fa->anmerkung = $row->anmerkung; + $fa->lieferbedingungen = $row->lieferbedingungen; + $fa->firmentyp_kurzbz = $row->firmentyp_kurzbz; + $fa->updateamum = $row->updateamum; + $fa->updatevon = $row->updatevon; + $fa->insertamum = $row->insertamum; + $fa->insertvon = $row->insertvon; + $fa->ext_id = $row->ext_id; + $fa->schule = $this->db_parse_bool($row->schule); + $fa->steuernummer = $row->steuernummer; + $fa->gesperrt = $this->db_parse_bool($row->gesperrt); + $fa->aktiv = $this->db_parse_bool($row->aktiv); + $fa->finanzamt = $row->finanzamt; + $fa->kurzbz = $row->kurzbz; + $fa->adresse_id = $row->adresse_id; + $fa->standort_id = $row->standort_id; + $fa->bezeichnung = $row->bezeichnung; + $fa->person_id = $row->person_id; + $fa->adresse_id = $row->adresse_id; + $fa->strasse = $row->strasse; + $fa->plz = $row->plz; + $fa->ort = $row->ort; + $fa->gemeinde = $row->gemeinde; + $fa->nation = $row->nation; + $fa->typ = $row->typ; + $fa->adress_name = $row->adress_name; + $fa->heimatadresse = $this->db_parse_bool($row->heimatadresse); + $fa->zustelladresse = $this->db_parse_bool($row->zustelladresse); + + $this->result[] = $fa; + } + return true; + } + else + { + $this->errormsg = 'Fehler beim Laden des Datensatzes'; + return false; + } + } + + + /** + * Suche nur nach Firmennamen für die abgespeckte Firmenverwaltung + * @return true wenn ok, false im Fehlerfall + */ + public function searchByName($filter) + { + $this->result = array(); + $this->errormsg = ''; + + $qry ="SELECT * FROM (SElECT "; + $qry.=" distinct on(firma_id)"; + $qry.=" tbl_firma.firma_id,tbl_firma.* ,tbl_standort.kurzbz,tbl_standort.adresse_id,tbl_standort.standort_id,tbl_standort.bezeichnung "; + $qry.=" ,person_id, tbl_adresse.name as adress_name, strasse, plz, ort, gemeinde,nation,typ,heimatadresse,zustelladresse "; + $qry.=" FROM public.tbl_firma"; + $qry.=" LEFT JOIN public.tbl_standort USING(firma_id) "; + $qry.=" LEFT JOIN public.tbl_adresse on ( tbl_adresse.adresse_id=tbl_standort.adresse_id ) "; + $qry.=" WHERE 1=1"; + + if($filter!='') + $qry.= " and ( lower(tbl_firma.name) like lower('%".$this->db_escape($filter)."%') + + ) "; + + //if($filter=='' && $firmentyp_kurzbz=='') + // $qry.=" limit 500 "; + $qry.=") as a ORDER BY name;"; + + if($this->db_query($qry)) + { + while($row = $this->db_fetch_object()) + { + $fa = new firma(); + + $fa->firma_id = $row->firma_id; + $fa->name = $row->name; + $fa->anmerkung = $row->anmerkung; + $fa->lieferbedingungen = $row->lieferbedingungen; + $fa->firmentyp_kurzbz = $row->firmentyp_kurzbz; + $fa->updateamum = $row->updateamum; + $fa->updatevon = $row->updatevon; + $fa->insertamum = $row->insertamum; + $fa->insertvon = $row->insertvon; + $fa->ext_id = $row->ext_id; + $fa->schule = $this->db_parse_bool($row->schule); + $fa->steuernummer = $row->steuernummer; + $fa->gesperrt = $this->db_parse_bool($row->gesperrt); + $fa->aktiv = $this->db_parse_bool($row->aktiv); + $fa->finanzamt = $row->finanzamt; + $fa->kurzbz = $row->kurzbz; + $fa->adresse_id = $row->adresse_id; + $fa->standort_id = $row->standort_id; + $fa->bezeichnung = $row->bezeichnung; + $fa->person_id = $row->person_id; + $fa->adresse_id = $row->adresse_id; + $fa->strasse = $row->strasse; + $fa->plz = $row->plz; + $fa->ort = $row->ort; + $fa->gemeinde = $row->gemeinde; + $fa->nation = $row->nation; + $fa->typ = $row->typ; + $fa->adress_name = $row->adress_name; + $fa->heimatadresse = $this->db_parse_bool($row->heimatadresse); + $fa->zustelladresse = $this->db_parse_bool($row->zustelladresse); + + $this->result[] = $fa; + } + return true; + } + else + { + $this->errormsg = 'Fehler beim Laden des Datensatzes'; + return false; + } + } + /** * Laedt alle Firmen Standorte, und Adressen nach Suchstring und/oder eines bestimmen Firmentyps * @return true wenn ok, false im Fehlerfall @@ -543,6 +696,7 @@ class firma extends basis_db $fa->firma_id = $row->firma_id; $fa->name = $row->name; $fa->anmerkung = $row->anmerkung; + $fa->lieferbedingungen = $row->lieferbedingungen; $fa->firmentyp_kurzbz = $row->firmentyp_kurzbz; $fa->updateamum = $row->updateamum; $fa->updatevon = $row->updatevon; @@ -657,6 +811,7 @@ class firma extends basis_db $fa->firma_id = $row->firma_id; $fa->name = $row->name; $fa->anmerkung = $row->anmerkung; + $fa->lieferbedingungen = $row->lieferbedingungen; $fa->firmentyp_kurzbz = $row->firmentyp_kurzbz; $fa->updateamum = $row->updateamum; $fa->updatevon = $row->updatevon; @@ -742,11 +897,7 @@ class firma extends basis_db $this->errormsg = 'Organisationseinheit/Firma_id ist ungueltig'; return false; } - $qry = "delete from public.tbl_firma_organisationseinheit WHERE firma_organisationseinheit_id>0"; - if ($firma_organisationseinheit_id) - $qry.=" and firma_organisationseinheit_id=".$this->db_add_param($firma_organisationseinheit_id, FHC_INTEGER); - - $qry.=';'; + $qry = "DELETE FROM public.tbl_firma_organisationseinheit WHERE firma_organisationseinheit_id=".$this->db_add_param($firma_organisationseinheit_id, FHC_INTEGER); if($this->db_query($qry)) return true; @@ -926,6 +1077,7 @@ class firma extends basis_db $fi->firma_id = $row->firma_id; $fi->name = $row->name; $fi->anmerkung = $row->anmerkung; + $fi->lieferbedingungen = $row->lieferbedingungen; $fi->firmentyp_kurzbz = $row->firmentyp_kurzbz; $fi->updateamum = $row->updateamum; $fi->updatevon = $row->updatevon; From caf69b4d0b4fd2c1f17296a945b735468d238169 Mon Sep 17 00:00:00 2001 From: Werner Masik Date: Thu, 28 Jul 2016 16:58:24 +0200 Subject: [PATCH 101/114] =?UTF-8?q?Pfad=20f=C3=BCr=20Dokumente=20hinzugef?= =?UTF-8?q?=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/wawi.config-default.inc.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/config/wawi.config-default.inc.php b/config/wawi.config-default.inc.php index 95c7215d0..05d257c2f 100644 --- a/config/wawi.config-default.inc.php +++ b/config/wawi.config-default.inc.php @@ -97,4 +97,7 @@ define('MAIL_ZENTRALEINKAUF','info@technikum-wien.at'); //Gibt an welche Funktion zur generierung des PDF Files herangezogen wird //moegliche Werte: FOP | XSLFO2PDF define ('PDF_CREATE_FUNCTION','XSLFO2PDF'); + +// Ordner für DMS Dokumente +define('DMS_PATH','/var/www/fhcomplete/dms/'); ?> From 7b89d4dbbea45f2de75530f0f65ff714379c6dc2 Mon Sep 17 00:00:00 2001 From: oesi Date: Mon, 1 Aug 2016 14:25:06 +0200 Subject: [PATCH 102/114] =?UTF-8?q?Bugfix=20f=C3=BCr=20das=20L=C3=B6schen?= =?UTF-8?q?=20von=20Kursen=20mit=20Moodle=203.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- include/moodle24_course.class.php | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/include/moodle24_course.class.php b/include/moodle24_course.class.php index 5e2c943cd..8f43c5413 100644 --- a/include/moodle24_course.class.php +++ b/include/moodle24_course.class.php @@ -734,6 +734,15 @@ class moodle24_course extends basis_db $data = array($mdl_course_id); $response = $client->core_course_delete_courses(array($mdl_course_id)); + + if(is_object($response)) + { + $response_obj = $response; + unset($response); + if(isset($response_obj->warnings) && isset($response_obj->warnings->message)) + $response[0] = $response_obj->warnings->message; + } + if(isset($response[0])) { $this->errormsg = $response[0]; From 0f48d7996a64814b585a1f9f8c1b4944ca87a468 Mon Sep 17 00:00:00 2001 From: oesi Date: Mon, 1 Aug 2016 16:46:34 +0200 Subject: [PATCH 103/114] =?UTF-8?q?Config=20Eintrag=20f=C3=BCr=20Menu=20da?= =?UTF-8?q?mit=20keine=20Links=20angezeigt=20werden=20bei=20Modulen=20ohne?= =?UTF-8?q?=20Lehrauftrag?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cis/menu.php | 1 + cms/menu/menu_addon_lehrveranstaltungen_studienplan.inc.php | 6 +++++- config/global.config-default.inc.php | 3 +++ 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/cis/menu.php b/cis/menu.php index 5627f7b3b..089271e44 100644 --- a/cis/menu.php +++ b/cis/menu.php @@ -23,6 +23,7 @@ */ require_once('../config/cis.config.inc.php'); +require_once('../config/global.config.inc.php'); require_once('../include/functions.inc.php'); require_once('../cms/menu.inc.php'); require_once('../include/phrasen.class.php'); diff --git a/cms/menu/menu_addon_lehrveranstaltungen_studienplan.inc.php b/cms/menu/menu_addon_lehrveranstaltungen_studienplan.inc.php index a9d11ccfd..0455b87c6 100644 --- a/cms/menu/menu_addon_lehrveranstaltungen_studienplan.inc.php +++ b/cms/menu/menu_addon_lehrveranstaltungen_studienplan.inc.php @@ -329,7 +329,11 @@ class menu_addon_lehrveranstaltungen_studienplan extends menu_addon $bold='font-weight:bold;'; else $bold=''; - $this->block.= "
  • bezeichnung_arr[$sprache]."\" href=\"private/lehre/lesson.php?lvid=$row->lehrveranstaltung_id&studiensemester_kurzbz=$studiensemester_kurzbz\" target=\"content\">".$this->CutString($row->bezeichnung_arr[$sprache], 21).' '.$row->lehrform_kurzbz."
  • "; + if(!$row->lehrauftrag && defined('CIS_LEHRVERANSTALTUNG_MODULE_LINK') && !CIS_LEHRVERANSTALTUNG_MODULE_LINK) + $this->block.= "
  • ".$this->CutString($row->bezeichnung_arr[$sprache], 21).' '.$row->lehrform_kurzbz."
  • "; + else + $this->block.= "
  • bezeichnung_arr[$sprache]."\" href=\"private/lehre/lesson.php?lvid=$row->lehrveranstaltung_id&studiensemester_kurzbz=$studiensemester_kurzbz\" target=\"content\">".$this->CutString($row->bezeichnung_arr[$sprache], 21).' '.$row->lehrform_kurzbz."
  • "; + if(isset($row->childs)) $this->printTree($row->childs, $sprache, $studiensemester_kurzbz); } diff --git a/config/global.config-default.inc.php b/config/global.config-default.inc.php index 75a31a31c..e9183f358 100644 --- a/config/global.config-default.inc.php +++ b/config/global.config-default.inc.php @@ -25,6 +25,9 @@ define('CIS_LEHRVERANSTALTUNG_SEMESTERINFO_ANZEIGEN',true); define('CIS_LEHRVERANSTALTUNG_LEHRFACH_ANZEIGEN',false); define('CIS_LEHRVERANSTALTUNG_GESAMTNOTE_ANZEIGEN', true); +// Im CIS Menue Links bei Modulen anzeigen wenn Lehrauftrag +define('CIS_LEHRVERANSTALTUNG_MODULE_LINK',true); + // Legt fest, ob bei den LV-Infos der Block mit den Terminen zu den einzelnen LVs (laut Stundenplan) angezeigt werden soll define ('CIS_LVINFO_TERMINE_ANZEIGEN', false); From 4d800a39d3d416dda7591ee512b760567cc28f40 Mon Sep 17 00:00:00 2001 From: kindlm Date: Tue, 2 Aug 2016 11:38:12 +0200 Subject: [PATCH 104/114] Zutrittskarte.php Wenn kein Lichtbild in den Akten vorhanden ist, Foto aus tbl_person holen; Wenn der Inhalt des Lichtbilds leer ist, Foto aus tbl_person holen; Wenn auch kein Foto in tbl_person gespeichert ist, mit der naechsten UID fortfahren --- content/zutrittskarte.php | 42 +++++++++++++++++++++++++++++++++++++-- 1 file changed, 40 insertions(+), 2 deletions(-) diff --git a/content/zutrittskarte.php b/content/zutrittskarte.php index d825ba3b8..83fd0e4b4 100755 --- a/content/zutrittskarte.php +++ b/content/zutrittskarte.php @@ -101,8 +101,46 @@ if(copy($zipfile, $tempname_zip)) $cTmpHEX='/9j/4AAQSkZJRgABAQEASABIAAD/4QAWRXhpZgAATU0AKgAAAAgAAAAAAAD//gAXQ3JlYXRlZCB3aXRoIFRoZSBHSU1Q/9sAQwAFAwQEBAMFBAQEBQUFBgcMCAcHBwcPCwsJDBEPEhIRDxERExYcFxMUGhURERghGBodHR8fHxMXIiQiHiQcHh8e/9sAQwEFBQUHBgcOCAgOHhQRFB4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4e/8AAEQgAAQABAwEiAAIRAQMRAf/EABUAAQEAAAAAAAAAAAAAAAAAAAAI/8QAFBABAAAAAAAAAAAAAAAAAAAAAP/EABQBAQAAAAAAAAAAAAAAAAAAAAD/xAAUEQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIRAxEAPwCywAf/2Q=='; if($result = $db->db_query($qry)) { - if($row = $db->db_fetch_object($result)) - $cTmpHEX=$row->foto; + //Wenn kein Lichtbild in den Akten vorhanden ist, Foto aus tbl_person holen + if ($db->db_num_rows($result) == 0) + { + $qry_person = "SELECT foto FROM public.tbl_person WHERE person_id=".$db->db_add_param($bn->person_id, FHC_INTEGER); + + if($result_person = $db->db_query($qry_person)) + { + if($row_person = $db->db_fetch_object($result_person)) + { + //Wenn auch kein Foto in tbl_person gespeichert ist, mit der naechsten UID fortfahren + if($row_person->foto == '') + continue; + else + $cTmpHEX = $row_person->foto; + } + } + } + + if($row = $db->db_fetch_object($result)) + { + //Wenn der Inhalt des Lichtbilds leer ist, Foto aus tbl_person holen + if ($row->foto =='') + { + $qry_person = "SELECT foto FROM public.tbl_person WHERE person_id=".$db->db_add_param($bn->person_id, FHC_INTEGER); + + if($result_person = $db->db_query($qry_person)) + { + if($row_person = $db->db_fetch_object($result_person)) + { + //Wenn auch kein Foto in tbl_person gespeichert ist, mit der naechsten UID fortfahren + if($row_person->foto == '') + continue; + else + $cTmpHEX = $row_person->foto; + } + } + } + else + $cTmpHEX = $row->foto; + } } // Bild in den Temp Ordner zwischenspeichern From 243b4ece992e697fddf6d46d6c2f32318558f1b3 Mon Sep 17 00:00:00 2001 From: kindlm Date: Tue, 2 Aug 2016 11:39:14 +0200 Subject: [PATCH 105/114] Uebernahmebestaetigung Schluessel MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Wenn Typ Schlüssel ist, wird die Nummer des Schlüssels auf der Übernahmebestätigung angedruckt --- system/xsl/uebernahmebestaetigung_0.xsl | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/system/xsl/uebernahmebestaetigung_0.xsl b/system/xsl/uebernahmebestaetigung_0.xsl index 6f2080beb..37c4a1ea2 100644 --- a/system/xsl/uebernahmebestaetigung_0.xsl +++ b/system/xsl/uebernahmebestaetigung_0.xsl @@ -207,6 +207,16 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" + + + + Nummer + + + + + + Inventarnummer From 7574597fe646a95e6cdc41df2a73f65e44a5e592 Mon Sep 17 00:00:00 2001 From: kindlm Date: Tue, 2 Aug 2016 11:40:06 +0200 Subject: [PATCH 106/114] =?UTF-8?q?Freif=C3=A4cherzertifikat?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Lehrziele werden mit Aufzählungszeichen angedruckt --- system/xsl/ZertifikatFreifaecher_0.xsl | 104 ++++++++++++++++++++----- 1 file changed, 85 insertions(+), 19 deletions(-) diff --git a/system/xsl/ZertifikatFreifaecher_0.xsl b/system/xsl/ZertifikatFreifaecher_0.xsl index 6c9c68963..3966ce359 100644 --- a/system/xsl/ZertifikatFreifaecher_0.xsl +++ b/system/xsl/ZertifikatFreifaecher_0.xsl @@ -210,8 +210,60 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
    - - + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -220,7 +272,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + @@ -334,11 +386,15 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - + + + + + + @@ -389,19 +445,29 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + From 9610418a965ae9f6d2a6f5e994e34c539ff5aedf Mon Sep 17 00:00:00 2001 From: Stefan Puraner Date: Tue, 9 Aug 2016 09:21:19 +0200 Subject: [PATCH 107/114] fixed bug for missing data --- rdf/student.rdf.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rdf/student.rdf.php b/rdf/student.rdf.php index 44dc8e6ae..f9a5d509a 100755 --- a/rdf/student.rdf.php +++ b/rdf/student.rdf.php @@ -801,7 +801,7 @@ else break; } } - $prestudent = new prestudent(); + $prestudent = new prestudent($student->prestudent_id); $prestudent->getLastStatus($student->prestudent_id); $orgform_bezeichnung = new organisationsform(); From 20a750b9c3875b2f9ac7042908840454775eb746 Mon Sep 17 00:00:00 2001 From: Stefan Puraner Date: Tue, 9 Aug 2016 09:32:55 +0200 Subject: [PATCH 108/114] fixed date and time errors --- cis/private/lehre/pruefung/pruefungsanmeldung.json.php | 8 ++++---- cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/cis/private/lehre/pruefung/pruefungsanmeldung.json.php b/cis/private/lehre/pruefung/pruefungsanmeldung.json.php index fe60b3247..7a1dbbf6d 100755 --- a/cis/private/lehre/pruefung/pruefungsanmeldung.json.php +++ b/cis/private/lehre/pruefung/pruefungsanmeldung.json.php @@ -614,7 +614,7 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null) $lv = new lehrveranstaltung($anmeldung->lehrveranstaltung_id); - $html = $p->t('pruefung/emailLektorStudentIn')." ".$student->vorname." ".$student->nachname." ".$p->t('pruefung/emailLektorHatSichZurPruefung')." ".$lv->bezeichnung." ".$p->t('pruefung/emailLektorAm')." ".$datum->formatDatum($termin->von, "m.d.Y")." ".$p->t('pruefung/emailLektorVon')." ".$datum->formatDatum($termin->von,"h:i")." ".$p->t('pruefung/emailLektorUhrBis')." ".$datum->formatDatum($termin->bis,"h:i")." ".$p->t('pruefung/emailLektorUhrAngemeldet'); + $html = $p->t('pruefung/emailLektorStudentIn')." ".$student->vorname." ".$student->nachname." ".$p->t('pruefung/emailLektorHatSichZurPruefung')." ".$lv->bezeichnung." ".$p->t('pruefung/emailLektorAm')." ".$datum->formatDatum($termin->von, "d.m.Y")." ".$p->t('pruefung/emailLektorVon')." ".$datum->formatDatum($termin->von,"H:i")." ".$p->t('pruefung/emailLektorUhrBis')." ".$datum->formatDatum($termin->bis,"H:i")." ".$p->t('pruefung/emailLektorUhrAngemeldet'); $mail->setHTMLContent($html); $mail->send(); @@ -839,15 +839,15 @@ function anmeldungBestaetigen($uid) $html .= $p->t('pruefung/emailBodyPruefung')." ".$lv->bezeichnung."
    "; if($pruefung->einzeln) { - $date = $datum->formatDatum($termin->von, "Y-m-d h:i:s"); + $date = $datum->formatDatum($termin->von, "Y-m-d H:i:s"); $date = strtotime($date); $date = $date+(60*$pruefung->pruefungsintervall*($anmeldung->reihung-1)); - $von = date("h:i",$date); + $von = date("H:i",$date); $html .= $p->t('pruefung/emailBodyTermin')." ".$datum->formatDatum($termin->von, "d.m.Y")." ".$p->t('pruefung/emailBodyUm')." ".$von."
    "; $html .= $p->t('pruefung/emailBodyDauer')." ".$pruefung->pruefungsintervall." ".$p->t('pruefung/emailBodyMinuten')."
    "; } else - $html .= $p->t('pruefung/emailBodyTermin')." ".$datum->formatDatum($termin->von, "d.m.Y")." ".$p->t('pruefung/emailBodyUm')." ".$datum->formatDatum($termin->von, "h:i")."
    "; + $html .= $p->t('pruefung/emailBodyTermin')." ".$datum->formatDatum($termin->von, "d.m.Y")." ".$p->t('pruefung/emailBodyUm')." ".$datum->formatDatum($termin->von, "H:i")."
    "; $html .= $p->t('pruefung/anmeldungErfolgreich')." ".$ort->bezeichnung."
    "; $html .= "
    "; $html .= "".$p->t('pruefung/emailBodyLinkZurAnmeldung')."
    "; diff --git a/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php b/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php index d01bada61..ea07690bb 100755 --- a/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php +++ b/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php @@ -247,7 +247,7 @@ $rechte->getBerechtigungen($uid); $date = $datum->formatDatum($prfTermin->von, "Y-m-d H:i:s"); $date = strtotime($date); $date = $date+(60*$pruefungsintervall*($count)); - $date = $datum->formatDatum($prfTermin->von,"d.m.Y").' - '.date("h:i",$date); + $date = $datum->formatDatum($prfTermin->von,"d.m.Y").' - '.date("H:i",$date); $count++; } else From 4a5f0554c7ae8724990af30409d7ab8a9d1ce5f0 Mon Sep 17 00:00:00 2001 From: Stefan Puraner Date: Tue, 9 Aug 2016 09:44:03 +0200 Subject: [PATCH 109/114] fixed bug when saving a comment --- include/pruefungsanmeldung.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/pruefungsanmeldung.class.php b/include/pruefungsanmeldung.class.php index 49dd8dd54..67b32e65a 100644 --- a/include/pruefungsanmeldung.class.php +++ b/include/pruefungsanmeldung.class.php @@ -114,7 +114,7 @@ class pruefungsanmeldung extends basis_db { . 'wuensche='.$this->db_add_param($this->wuensche).', ' . 'reihung='.$this->db_add_param($this->reihung).', ' . 'kommentar='.$this->db_add_param($this->kommentar).', ' - . 'anrechnung_id='.$this->db_add_param($this->anrechnung_id) + . '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).';'; } From b75a82a4fae90c73f4d54453fb60dc3dbe978373 Mon Sep 17 00:00:00 2001 From: Stefan Puraner Date: Tue, 9 Aug 2016 10:04:24 +0200 Subject: [PATCH 110/114] fixed bug when saving anrechnung in FAS --- include/anrechnung.class.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/anrechnung.class.php b/include/anrechnung.class.php index 122e587fa..6ab323a96 100644 --- a/include/anrechnung.class.php +++ b/include/anrechnung.class.php @@ -166,9 +166,9 @@ class anrechnung extends basis_db . '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); + . 'WHERE anrechnung_id = ' . $this->db_add_param($this->anrechnung_id). ' RETURNING anrechnung_id;'; } - + if ($this->db_query($qry)) { $this->anrechnung_id = $this->db_fetch_object()->anrechnung_id; From 6bee67167449cb429909a618cf743eea852e0d8c Mon Sep 17 00:00:00 2001 From: Stefan Puraner Date: Tue, 9 Aug 2016 11:45:04 +0200 Subject: [PATCH 111/114] fixed bug in mehtod to check rules --- include/lvregel.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/lvregel.class.php b/include/lvregel.class.php index 4e264df5f..bf3de11fa 100644 --- a/include/lvregel.class.php +++ b/include/lvregel.class.php @@ -778,7 +778,7 @@ class lvregel extends basis_db $lv->load($stpllv->lehrveranstaltung_id); $this->debug('Abgeschlossen:'.$retval.' ECTS:'.$ects,1); - if($ects>=$lv->ects) + if($retval && ($ects>=$lv->ects)) return true; else return false; From cac1aae2351eb191f4f23242dbc45189e46ebee4 Mon Sep 17 00:00:00 2001 From: Andreas Moik Date: Thu, 18 Aug 2016 11:20:02 +0200 Subject: [PATCH 112/114] implemented cascading deletion of persons/employees/students --- vilesci/personen/suche.php | 1312 +++++++++++++++++++++++++++++++++++- 1 file changed, 1307 insertions(+), 5 deletions(-) diff --git a/vilesci/personen/suche.php b/vilesci/personen/suche.php index 35500dd50..a60c90676 100644 --- a/vilesci/personen/suche.php +++ b/vilesci/personen/suche.php @@ -29,6 +29,7 @@ require_once('../../include/person.class.php'); require_once('../../include/benutzer.class.php'); require_once('../../include/student.class.php'); require_once('../../include/prestudent.class.php'); +require_once('../../include/mitarbeiter.class.php'); require_once('../../include/datum.class.php'); require_once('../../include/authentication.class.php'); require_once('../../include/benutzerberechtigung.class.php'); @@ -47,6 +48,9 @@ if(isset($_GET['searchstr'])) else $searchstr = ''; +$msgString = ""; +$errString = ""; + if(isset($_GET['filter'])) $filter = $_GET['filter']; else @@ -54,12 +58,129 @@ else $datum_obj = new datum(); +$admin = false; +if($rechte->isBerechtigt('admin')) + $admin = true; + +if($admin) +{ + if(isset($_REQUEST["delete"])) + { + if(isset($_REQUEST["mitarbeiter"])) + { + $mita = new mitarbeiter(); + $mita->load($_REQUEST["mitarbeiter"]); + + if(!casDeleteMitarbeiter($db, $_REQUEST["mitarbeiter"])) + $errString = 'Fehler beim Loeschen des Mitarbeiter-Datensatzes'; + else + { + $msgString = ($mita->geschlecht == "w" ? "Mitarbeiterin '" : "Mitarbeiter '") . $mita->vorname . " " . $mita->nachname . "' wurde erfolgreich geloescht"; + } + } + else if(isset($_REQUEST["prestudent"])) + { + $pres = new prestudent(); + $pres->load($_REQUEST["prestudent"]); + + if(!casDeletePrestudent($db, $_REQUEST["prestudent"])) + $errString = 'Fehler beim Loeschen des Prestudent-Datensatzes'; + else + { + $msgString = ($pres->geschlecht == "w" ? "Studentin '" : "Student '") . $pres->vorname . " " . $pres->nachname . "' wurde erfolgreich geloescht"; + } + } + else if(isset($_REQUEST["person"])) + { + $pers = new person(); + $pers->load($_REQUEST["person"]); + + if(!casDeletePerson($db, $_REQUEST["person"])) + $errString = 'Fehler beim Loeschen des Person-Datensatzes'; + else + { + $msgString = "Person '" . $pers->vorname . " " . $pers->nachname . "' wurde erfolgreich geloescht"; + } + } + } +} + echo ' Suchergebnis + @@ -68,6 +189,7 @@ echo ' $stg = new studiengang(); $stg->getAll('typ, kurzbz', false); + $stg_arr = array(); foreach ($stg->result as $row) $stg_arr[$row->studiengang_kz]=$row->kuerzel; @@ -80,6 +202,9 @@ echo ' '; +echo "

    $errString

    "; +echo "

    $msgString

    "; + if($searchstr!='') { $qry = "SELECT @@ -112,6 +237,7 @@ if($searchstr!='') echo "Benutzer"; echo "Mitarbeiter"; echo "Student"; + if($admin){echo "";} echo ''; echo ''; echo "Nachname"; @@ -131,6 +257,7 @@ if($searchstr!='') echo "Gruppe"; echo "updateAmUm"; echo "updateVon"; + if($admin){echo "";} echo ''; while($row = $db->db_fetch_object($result)) @@ -144,7 +271,7 @@ if($searchstr!='') echo "$row_person->nachname"; echo "$row_person->vorname"; echo "".($row_person->gebdatum!=''?$datum_obj->convertISODate($row_person->gebdatum):'').""; - echo "".($row_person->updateamum!=''?date('d.m.Y H:i:s', $datum_obj->mktime_fromtimestamp($row_person->updateamum)):'').""; + echo "".($row_person->updateamum!=''?date('d.m.Y H:i:s', $datum_obj->mktime_FROMtimestamp($row_person->updateamum)):'').""; echo "$row_person->updatevon"; echo ""; echo ""; @@ -158,6 +285,7 @@ if($searchstr!='') echo ""; echo ""; echo ""; + if($admin){echo 'Löschen';} echo ''; $content = ''; @@ -189,15 +317,18 @@ if($searchstr!='') else $content.="Nein"; $content.= ""; - //$content.= "".($row_mitarbeiter->bnupdateamum!=''?date('d.m.Y H:i:s', $datum_obj->mktime_fromtimestamp($row_mitarbeiter->bnupdateamum)):'').""; + //$content.= "".($row_mitarbeiter->bnupdateamum!=''?date('d.m.Y H:i:s', $datum_obj->mktime_FROMtimestamp($row_mitarbeiter->bnupdateamum)):'').""; //$content.= "$row_mitarbeiter->bnupdatevon"; $content.= "$row_mitarbeiter->telefonklappe"; $content.= "$row_mitarbeiter->ort_kurzbz"; - $content.= "".($row_mitarbeiter->mupdateamum!=''?date('d.m.Y H:i:s', $datum_obj->mktime_fromtimestamp($row_mitarbeiter->mupdateamum)):'').""; + $content.= "".($row_mitarbeiter->mupdateamum!=''?date('d.m.Y H:i:s', $datum_obj->mktime_FROMtimestamp($row_mitarbeiter->mupdateamum)):'').""; $content.= "$row_mitarbeiter->mupdatevon"; $content.= ""; $content.= ""; + $content.= ""; + $content.= ""; + if($admin){$content.= 'Löschen';} $content.= ''; } } @@ -233,7 +364,7 @@ if($searchstr!='') else $content.="Nein"; $content.= ""; - //$content.= "".($row_student->bnupdateamum!=''?date('d.m.Y H:i:s', $datum_obj->mktime_fromtimestamp($row_student->bnupdateamum)):'').""; + //$content.= "".($row_student->bnupdateamum!=''?date('d.m.Y H:i:s', $datum_obj->mktime_FROMtimestamp($row_student->bnupdateamum)):'').""; //$content.= "$row_student->bnupdatevon"; $content.= ""; @@ -242,8 +373,9 @@ if($searchstr!='') $content.= ""; $content.= "".$stg_arr[$row_student->studiengang_kz].""; $content.= "$row_student->semester$row_student->verband$row_student->gruppe"; - $content.= "".($row_student->supdateamum!=''?date('d.m.Y H:i:s', $datum_obj->mktime_fromtimestamp($row_student->supdateamum)):'').""; + $content.= "".($row_student->supdateamum!=''?date('d.m.Y H:i:s', $datum_obj->mktime_FROMtimestamp($row_student->supdateamum)):'').""; $content.= "$row_student->supdatevon"; + if($admin){$content.= 'Löschen';} $content.= ''; } } @@ -257,6 +389,1176 @@ if($searchstr!='') } } + +/* + * Cascading delete functions + */ +function casDeleteMitarbeiter($db, $mitarbeiter_uid, $trans=true) +{ + /* + * Init + */ + if($trans){$db->db_query("BEGIN;");} + $error = false; + + $projektphase_ids = array(); + + // get all projektphase_ids, where the employee is involved with + if(!$error) + { + $qry = ' + SELECT projektphase_id FROM fue.tbl_projektphase + WHERE ressource_id IN (SELECT ressource_id FROM fue.tbl_ressource WHERE mitarbeiter_uid='.$db->db_add_param($mitarbeiter_uid).')'; + $res = $db->db_query($qry); + if(!$res) + { + $error = true; + } + else + { + while($row = $db->db_fetch_object($res)) + { + // and get FROM this projektphase_ids all other projekphase_ids recursively + $add = recursiveGetAllProjektphase_id($db, $row->projektphase_id); + if($add) + $projektphase_ids = array_merge($projektphase_ids, $add); + } + } + } + + if(!$error && !empty($projektphase_ids)) + { + $qry = ' + DELETE FROM fue.tbl_projekt_ressource + WHERE projektphase_id IN ('.$db->implode4SQL($projektphase_ids).')'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM fue.tbl_projekttask + WHERE ressource_id IN (SELECT ressource_id FROM fue.tbl_ressource WHERE mitarbeiter_uid='.$db->db_add_param($mitarbeiter_uid).')'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error && !empty($projektphase_ids)) + { + $qry = ' + DELETE FROM fue.tbl_projekt_dokument + WHERE projektphase_id IN ('.$db->implode4SQL($projektphase_ids).')'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error && !empty($projektphase_ids)) + { + $qry = ' + DELETE FROM fue.tbl_projekttask + WHERE projektphase_id IN ('.$db->implode4SQL($projektphase_ids).')'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error && !empty($projektphase_ids)) + { + $qry = ' + DELETE FROM fue.tbl_projektphase + WHERE projektphase_id IN ('.$db->implode4SQL($projektphase_ids).')'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM addon.tbl_lvevaluierung_selbstevaluierung + WHERE lvevaluierung_id IN (SELECT lvevaluierung_id FROM addon.tbl_lvevaluierung_antwort + WHERE lvevaluierung_code_id IN (SELECT lvevaluierung_code_id FROM addon.tbl_lvevaluierung_code + WHERE lvevaluierung_id IN (SELECT lvevaluierung_id FROM addon.tbl_lvevaluierung + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM campus.tbl_studentbeispiel + WHERE beispiel_id IN (SELECT beispiel_id FROM campus.tbl_beispiel + WHERE uebung_id IN (SELECT uebung_id FROM campus.tbl_uebung + WHERE lehreinheit_id IN (SELECT lehreinheit_id FROM lehre.tbl_lehreinheit + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung + WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).'))))))))'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM addon.tbl_lvevaluierung_antwort + WHERE lvevaluierung_code_id IN (SELECT lvevaluierung_code_id FROM addon.tbl_lvevaluierung_code + WHERE lvevaluierung_id IN (SELECT lvevaluierung_id FROM addon.tbl_lvevaluierung + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM campus.tbl_studentbeispiel + WHERE beispiel_id IN (SELECT beispiel_id FROM campus.tbl_beispiel + WHERE uebung_id IN (SELECT uebung_id FROM campus.tbl_uebung + WHERE lehreinheit_id IN (SELECT lehreinheit_id FROM lehre.tbl_lehreinheit + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung + WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).')))))))'; + if(!$db->db_query($qry)) + $error = true; + } + + + if(!$error) + { + $qry = ' + DELETE FROM addon.tbl_lvevaluierung_code + WHERE lvevaluierung_id IN (SELECT lvevaluierung_id FROM addon.tbl_lvevaluierung + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM campus.tbl_studentbeispiel + WHERE beispiel_id IN (SELECT beispiel_id FROM campus.tbl_beispiel + WHERE uebung_id IN (SELECT uebung_id FROM campus.tbl_uebung + WHERE lehreinheit_id IN (SELECT lehreinheit_id FROM lehre.tbl_lehreinheit + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung + WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).'))))))'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM addon.tbl_lvevaluierung + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM campus.tbl_studentbeispiel + WHERE beispiel_id IN (SELECT beispiel_id FROM campus.tbl_beispiel + WHERE uebung_id IN (SELECT uebung_id FROM campus.tbl_uebung + WHERE lehreinheit_id IN (SELECT lehreinheit_id FROM lehre.tbl_lehreinheit + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung + WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).')))))'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_studentbeispiel + WHERE beispiel_id IN (SELECT beispiel_id FROM campus.tbl_beispiel + WHERE uebung_id IN (SELECT uebung_id FROM campus.tbl_uebung + WHERE lehreinheit_id IN (SELECT lehreinheit_id FROM lehre.tbl_lehreinheit + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung + WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).'))))'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_beispiel + WHERE uebung_id IN (SELECT uebung_id FROM campus.tbl_uebung + WHERE lehreinheit_id IN (SELECT lehreinheit_id FROM lehre.tbl_lehreinheit + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung + WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).')))'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_studentuebung + WHERE uebung_id IN (SELECT uebung_id FROM campus.tbl_uebung + WHERE lehreinheit_id IN (SELECT lehreinheit_id FROM lehre.tbl_lehreinheit + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung + WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).')))'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_uebung + WHERE lehreinheit_id IN (SELECT lehreinheit_id FROM lehre.tbl_lehreinheit + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung + WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).'))'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_legesamtnote + WHERE lehreinheit_id IN (SELECT lehreinheit_id FROM lehre.tbl_lehreinheit + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung + WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).'))'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM lehre.tbl_moodle + WHERE lehreinheit_id IN (SELECT lehreinheit_id FROM lehre.tbl_lehreinheit + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung + WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).'))'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM public.tbl_preincoming_lehrveranstaltung + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung + WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).')'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_benutzerlvstudiensemester + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung + WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).')'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_feedback + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung + WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).')'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_feedback + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung + WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).')'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM lehre.tbl_moodle + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung + WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).')'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM lehre.tbl_projektbetreuer + WHERE projektarbeit_id IN (SELECT projektarbeit_id FROM lehre.tbl_projektarbeit + WHERE lehreinheit_id IN (SELECT lehreinheit_id FROM lehre.tbl_lehreinheit + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung + WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).')))'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM bis.tbl_bisfunktion + WHERE bisverwendung_id IN (SELECT bisverwendung_id FROM bis.tbl_bisverwendung WHERE mitarbeiter_uid='.$db->db_add_param($mitarbeiter_uid).')'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM fue.tbl_projektphase + WHERE ressource_id IN (SELECT ressource_id FROM fue.tbl_ressource WHERE mitarbeiter_uid='.$db->db_add_param($mitarbeiter_uid).')'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM fue.tbl_projekt_ressource + WHERE ressource_id IN (SELECT ressource_id FROM fue.tbl_ressource WHERE mitarbeiter_uid='.$db->db_add_param($mitarbeiter_uid).')'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM lehre.tbl_stundenplan + WHERE lehreinheit_id IN (SELECT lehreinheit_id FROM lehre.tbl_lehreinheit + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung + WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).'))'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_paabgabe + WHERE projektarbeit_id IN (SELECT projektarbeit_id FROM lehre.tbl_projektarbeit + WHERE lehreinheit_id IN (SELECT lehreinheit_id FROM lehre.tbl_lehreinheit + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung + WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).')))'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM lehre.tbl_projektarbeit + WHERE lehreinheit_id IN (SELECT lehreinheit_id FROM lehre.tbl_lehreinheit WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).'))'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM lehre.tbl_pruefung + WHERE lehreinheit_id IN (SELECT lehreinheit_id FROM lehre.tbl_lehreinheit WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).'))'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM lehre.tbl_stundenplandev + WHERE lehreinheit_id IN (SELECT lehreinheit_id FROM lehre.tbl_lehreinheit WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).'))'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM lehre.tbl_studienplan_lehrveranstaltung + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).')'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM lehre.tbl_zeugnisnote + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).')'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM lehre.tbl_lehreinheit + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).')'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_lvgesamtnote + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).')'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_lvinfo + WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).')'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + if(!$error) + { + if(!deleteWithFirstlevelDeps($db, 'mitarbeiter_uid', 'public', 'tbl_mitarbeiter', $mitarbeiter_uid, FHC_STRING)) + { + $error = true; + } + } + + /* + * Delete the tbl_mitarbeiter entry + */ + $qry = 'DELETE FROM public.tbl_mitarbeiter where mitarbeiter_uid='.$db->db_add_param($mitarbeiter_uid); + if(!$error && !$db->db_query($qry)) + $error = true; + + /* + * Rollback if an + * error occoured + */ + if(!$error) + { + + if($trans){$db->db_query("COMMIT;");} + return true; + } + + + if($trans){$db->db_query("ROLLBACK;");} + return false; +} + + + + + + +function casDeletePrestudent($db, $prestudent_id, $trans=true) +{ + /* + * Init + */ + if($trans){$db->db_query("BEGIN;");} + $error = false; + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_studentbeispiel + WHERE student_uid IN (SELECT student_uid FROM public.tbl_student WHERE prestudent_id='.$db->db_add_param($prestudent_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM bis.tbl_bisio + WHERE student_uid IN (SELECT student_uid FROM public.tbl_student WHERE prestudent_id='.$db->db_add_param($prestudent_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_legesamtnote + WHERE student_uid IN (SELECT student_uid FROM public.tbl_student WHERE prestudent_id='.$db->db_add_param($prestudent_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_lvgesamtnote + WHERE student_uid IN (SELECT student_uid FROM public.tbl_student WHERE prestudent_id='.$db->db_add_param($prestudent_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_studentuebung + WHERE student_uid IN (SELECT student_uid FROM public.tbl_student WHERE prestudent_id='.$db->db_add_param($prestudent_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM lehre.tbl_abschlusspruefung + WHERE student_uid IN (SELECT student_uid FROM public.tbl_student WHERE prestudent_id='.$db->db_add_param($prestudent_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM lehre.tbl_projektbetreuer + WHERE projektarbeit_id IN (SELECT projektarbeit_id FROM lehre.tbl_projektarbeit WHERE student_uid IN (SELECT student_uid FROM tbl_student WHERE prestudent_id='.$db->db_add_param($prestudent_id, FHC_INTEGER).'))'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_paabgabe + WHERE projektarbeit_id IN (SELECT projektarbeit_id FROM lehre.tbl_projektarbeit WHERE student_uid IN (SELECT student_uid FROM tbl_student WHERE prestudent_id='.$db->db_add_param($prestudent_id, FHC_INTEGER).'))'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM lehre.tbl_projektarbeit + WHERE student_uid IN (SELECT student_uid FROM public.tbl_student WHERE prestudent_id='.$db->db_add_param($prestudent_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM lehre.tbl_zeugnisnote + WHERE student_uid IN (SELECT student_uid FROM public.tbl_student WHERE prestudent_id='.$db->db_add_param($prestudent_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM public.tbl_studentlehrverband + WHERE student_uid IN (SELECT student_uid FROM public.tbl_student WHERE prestudent_id='.$db->db_add_param($prestudent_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM lehre.tbl_pruefung + WHERE student_uid IN (SELECT student_uid FROM public.tbl_student WHERE prestudent_id='.$db->db_add_param($prestudent_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM fue.tbl_projekt_ressource + WHERE ressource_id IN(SELECT ressource_id FROM fue.tbl_ressource + WHERE student_uid IN (SELECT student_uid FROM public.tbl_student WHERE prestudent_id='.$db->db_add_param($prestudent_id, FHC_INTEGER).'))'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM fue.tbl_ressource + WHERE student_uid IN (SELECT student_uid FROM public.tbl_student WHERE prestudent_id='.$db->db_add_param($prestudent_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + if(!deleteWithFirstlevelDeps($db, 'prestudent_id', 'public', 'tbl_prestudent', $prestudent_id, FHC_INTEGER)) + { + $error = true; + } + } + + /* + * Delete the tbl_student entry + */ + $qry = 'DELETE FROM public.tbl_student where prestudent_id='.$db->db_add_param($prestudent_id, FHC_INTEGER); + if(!$error && !$db->db_query($qry)) + $error = true; + + /* + * Delete the tbl_prestudent entry + */ + $qry = 'DELETE FROM public.tbl_prestudent where prestudent_id='.$db->db_add_param($prestudent_id, FHC_INTEGER); + if(!$error && !$db->db_query($qry)) + $error = true; + + /* + * Rollback if an + * error occoured + */ + if(!$error) + { + + if($trans){$db->db_query("COMMIT;");} + return true; + } + + + if($trans){$db->db_query("ROLLBACK;");} + return false; +} + + + + + + +function casDeletePerson($db, $person_id, $trans=true) +{ + /* + * Init + */ + if($trans){$db->db_query("BEGIN;");} + $error = false; + + if(!$error) + { + $qry = ' + DELETE FROM public.tbl_prestudentstatus + WHERE prestudent_id IN (SELECT prestudent_id FROM public.tbl_prestudent WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM public.tbl_dokumentprestudent + WHERE prestudent_id IN (SELECT prestudent_id FROM public.tbl_prestudent WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_feedback + WHERE uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM lehre.tbl_studienplan_lehrveranstaltung + WHERE koordinator IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM public.tbl_akte + WHERE uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM addon.tbl_casetime_gruppen + WHERE uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM addon.tbl_casetime_zeitaufzeichnung + WHERE uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM addon.tbl_casetime_zeitsperre + WHERE uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_zeitaufzeichnung + WHERE uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_contentlog + WHERE uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_coodle_ressource_termin + WHERE coodle_ressource_id IN (SELECT coodle_ressource_id FROM campus.tbl_coodle_ressource + WHERE coodle_id IN (SELECT coodle_id FROM campus.tbl_coodle + WHERE ersteller_uid IN(SELECT uid FROM public.tbl_benutzer + WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).' + ) + ) + )'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_coodle_ressource + WHERE coodle_id IN (SELECT coodle_id FROM campus.tbl_coodle WHERE ersteller_uid IN(SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).'))'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_coodle_termin + WHERE coodle_id IN (SELECT coodle_id FROM campus.tbl_coodle + WHERE ersteller_uid IN(SELECT uid FROM public.tbl_benutzer + WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).'))'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_coodle + WHERE ersteller_uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_coodle_ressource_termin + WHERE coodle_ressource_id IN (SELECT coodle_ressource_id FROM campus.tbl_coodle_ressource + WHERE uid IN (SELECT uid FROM public.tbl_benutzer + WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).' + ) + )'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_coodle_ressource + WHERE uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_zeitaufzeichnung + WHERE uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_zeitaufzeichnung + WHERE kunde_uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_news + WHERE uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM public.tbl_variable + WHERE uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM public.tbl_prestudentstatus + WHERE bestaetigtvon IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM wawi.tbl_betriebsmittelperson + WHERE uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM wawi.tbl_bestellung_bestellstatus + WHERE uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM wawi.tbl_rechnung + WHERE bestellung_id IN (SELECT bestellung_id FROM wawi.tbl_bestellung + WHERE besteller_uid IN(SELECT uid FROM public.tbl_benutzer + WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).'))'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = 'DELETE FROM wawi.tbl_betriebsmittelperson + WHERE betriebsmittel_id IN ( SELECT betriebsmittel_id FROM wawi.tbl_betriebsmittel + WHERE bestellung_id IN (SELECT bestellung_id FROM wawi.tbl_bestellung + WHERE besteller_uid IN(SELECT uid FROM public.tbl_benutzer + WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')))'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM wawi.tbl_betriebsmittel + WHERE bestellung_id IN (SELECT bestellung_id FROM wawi.tbl_bestellung + WHERE besteller_uid IN(SELECT uid FROM public.tbl_benutzer + WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).'))'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM wawi.tbl_bestellung + WHERE besteller_uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM wawi.tbl_bestellung_bestellstatus + WHERE uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM public.tbl_preinteressentstudiengang + WHERE preinteressent_id IN (SELECT preinteressent_id FROM public.tbl_preinteressent WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_reservierung + WHERE veranstaltung_id IN (SELECT veranstaltung_id FROM campus.tbl_veranstaltung + WHERE freigabevon IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).'))'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM campus.tbl_veranstaltung + WHERE freigabevon IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM public.tbl_preoutgoing + WHERE uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM addon.tbl_lvevaluierung_selbstevaluierung + WHERE uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + $error = true; + } + + if(!$error) + { + $qry = ' + DELETE FROM addon.tbl_software + WHERE ansprechperson_uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id='.$db->db_add_param($person_id, FHC_INTEGER).')'; + if(!$db->db_query($qry)) + { + $error = true; + } + } + + + + + + /* + * delete all prestudent entries + */ + if(!$error) + { + $queryPs = ' + SELECT tbl_prestudent.prestudent_id FROM tbl_prestudent + JOIN tbl_student ON (tbl_prestudent.prestudent_id = tbl_student.prestudent_id) + JOIN tbl_benutzer ON (tbl_student.student_uid = tbl_benutzer.uid) + WHERE tbl_benutzer.person_id = ' . $db->db_add_param($person_id, FHC_INTEGER).' + '; + $resultPs = $db->db_query($queryPs); + if(!$resultPs) + { + $error = true; + } + else + { + while($row = $db->db_fetch_object($resultPs)) + { + if(!$error) + { + if(!casDeletePrestudent($db, $row->prestudent_id, false)) + { + $error = true; + } + } + else { break; } + } + } + } + + /* + * delete all mitarbeiter entries + */ + if(!$error) + { + $queryMa = ' + SELECT tbl_mitarbeiter.mitarbeiter_uid FROM tbl_mitarbeiter + JOIN tbl_benutzer ON (tbl_mitarbeiter.mitarbeiter_uid = tbl_benutzer.uid) + WHERE tbl_benutzer.person_id = ' . $db->db_add_param($person_id, FHC_INTEGER).' + '; + $resultMa = $db->db_query($queryMa); + if(!$resultMa) + { + $error = true; + } + else + { + while($row = $db->db_fetch_object($resultMa)) + { + if(!$error) + { + if(!casDeleteMitarbeiter($db, $row->mitarbeiter_uid, false)) + $error = true; + } + else { break; } + } + } + } + + + + if(!$error) + { + if(!deleteWithFirstlevelDeps($db, 'person_id', 'public', 'tbl_person', $person_id, FHC_INTEGER)) + { + $error = true; + } + } + + /* + * Delete the tbl_person entry + */ + $qry = 'DELETE FROM public.tbl_person where person_id='.$db->db_add_param($person_id, FHC_INTEGER); + if(!$error && !$db->db_query($qry)) + { + $error = true; + } + + /* + * Rollback, if an + * error occoured + */ + if(!$error) + { + + if($trans){$db->db_query("COMMIT;");} + return true; + } + + + if($trans){$db->db_query("ROLLBACK;");} + return false; +} + + + + + +function deleteWithFirstlevelDeps($db, $column_name, $table_schema, $table_name, $data, $dataType) +{ + /* + * Resolve all neede Tables + */ + $qryResolve = ' + SELECT R.TABLE_NAME, R.TABLE_SCHEMA, R.COLUMN_NAME + FROM INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE u + INNER JOIN INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS FK + on U.CONSTRAINT_CATALOG = FK.UNIQUE_CONSTRAINT_CATALOG + AND U.CONSTRAINT_SCHEMA = FK.UNIQUE_CONSTRAINT_SCHEMA + AND U.CONSTRAINT_NAME = FK.UNIQUE_CONSTRAINT_NAME + INNER JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE R + ON R.CONSTRAINT_CATALOG = FK.CONSTRAINT_CATALOG + AND R.CONSTRAINT_SCHEMA = FK.CONSTRAINT_SCHEMA + AND R.CONSTRAINT_NAME = FK.CONSTRAINT_NAME + WHERE U.COLUMN_NAME = ' . $db->db_add_param($column_name) . ' + AND U.TABLE_SCHEMA = ' . $db->db_add_param($table_schema) . ' + AND U.TABLE_NAME = ' . $db->db_add_param($table_name) . ';'; + + $resultResolve = $db->db_query($qryResolve); + if(!$resultResolve) + return false; + + while($rowResolve = $db->db_fetch_object($resultResolve)) + { + $qryDelete = ' + DELETE FROM '.$rowResolve->table_schema.'.'.$rowResolve->table_name.' + WHERE '.$rowResolve->column_name.'='.$db->db_add_param($data, $dataType); + $resultDelete = $db->db_query($qryDelete); + if(!$resultDelete) + { + return false; + } + } + return true; +} + + + +function recursiveGetAllProjektphase_id($db, $projektphase_id, $arr = null) +{ + if(is_null($arr)) + $arr = array(); + + + $qry = 'SELECT projektphase_id FROM fue.tbl_projektphase WHERE projektphase_fk='.$db->db_add_param($projektphase_id, FHC_INTEGER).';'; + + $res = $db->db_query($qry); + if(!$res) + return false; + + while($row = $db->db_fetch_object($res)) + { + if(!is_null($row->projektphase_id)) + $arr = array_merge($arr, recursiveGetAllProjektphase_id($db, $row->projektphase_id, $arr)); + } + + $arr[] = $projektphase_id; + + return $arr; +} + ?> From 7e498482d8880986b35417b9d883d4924d6eae75 Mon Sep 17 00:00:00 2001 From: oesi Date: Thu, 18 Aug 2016 11:51:19 +0200 Subject: [PATCH 113/114] Meine LV zeigt jetzt LVs des Sommer- und Wintersemesters an wenn kein aktuelles Studiensemester vorhanden ist --- cms/menu/menu_addon_meinelv.inc.php | 54 +++++++++++++++++++---------- 1 file changed, 36 insertions(+), 18 deletions(-) diff --git a/cms/menu/menu_addon_meinelv.inc.php b/cms/menu/menu_addon_meinelv.inc.php index 590919149..a81bdb733 100755 --- a/cms/menu/menu_addon_meinelv.inc.php +++ b/cms/menu/menu_addon_meinelv.inc.php @@ -19,7 +19,7 @@ */ /** * Menue Addon zur Anzeige der zugeordneten LVs - * + * * Zeigt eine Liste mit den LVs zu denen der Lektor oder Student zugeordnet ist. */ require_once(dirname(__FILE__).'/menu_addon.class.php'); @@ -34,15 +34,15 @@ class menu_addon_meinelv extends menu_addon public function __construct() { parent::__construct(); - + $sprache = getSprache(); $user = get_uid(); - + $is_lector=check_lektor($user); - + $p = new phrasen($sprache); $cutlength=21; - + //Meine LVs Student if(!$is_lector) { @@ -51,10 +51,19 @@ class menu_addon_meinelv extends menu_addon if ($stsemobj = new studiensemester()) { - $stsem = $stsemobj->getNearest(); - $qry = "SELECT distinct lehrveranstaltung_id, bezeichnung, studiengang_kz, semester, lehre, - lehreverzeichnis from campus.vw_student_lehrveranstaltung - WHERE uid='".addslashes($user)."' AND studiensemester_kurzbz='".addslashes($stsem)."' + $stsem_arr=array(); + if(!$stsemobj->getakt()) + { + $stsem_arr[]=$stsemobj->getNearest(); + $stsem_arr[]=$stsemobj->getNearestFrom($stsem_arr[0]); + } + else + { + $stsem_arr[] = $stsemobj->getNearest(); + } + $qry = "SELECT distinct lehrveranstaltung_id, bezeichnung, studiengang_kz, semester, lehre, + lehreverzeichnis from campus.vw_student_lehrveranstaltung + WHERE uid=".$this->db_add_param($user)." AND studiensemester_kurzbz in(".$this->db_implode4SQL($stsem_arr).") AND lehre=true AND lehreverzeichnis<>'' ORDER BY studiengang_kz, semester, bezeichnung"; if($result = $this->db_query($qry)) { @@ -87,21 +96,30 @@ class menu_addon_meinelv extends menu_addon else { echo "Fehler Semester beim Auslesen der LV"; - } + } } - + //Eigenen LV des eingeloggten Lektors anzeigen if($is_lector) { if ($stsemobj = new studiensemester()) { - $stsem = $stsemobj->getNearest(); + $stsem_arr=array(); + if(!$stsemobj->getakt()) + { + $stsem_arr[]=$stsemobj->getNearest(); + $stsem_arr[]=$stsemobj->getNearestFrom($stsem_arr[0]); + } + else + { + $stsem_arr[] = $stsemobj->getNearest(); + } $qry = "SELECT distinct bezeichnung, studiengang_kz, semester, lehreverzeichnis, tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_lehrveranstaltung.orgform_kurzbz FROM lehre.tbl_lehrveranstaltung, lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter WHERE tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id AND tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id AND - mitarbeiter_uid='".addslashes($user)."' AND tbl_lehreinheit.studiensemester_kurzbz='".addslashes($stsem)."' + mitarbeiter_uid=".$this->db_add_param($user)." AND tbl_lehreinheit.studiensemester_kurzbz in(".$this->db_implode4SQL($stsem_arr).") ORDER BY studiengang_kz, semester, bezeichnung"; - + if($result = $this->db_query($qry)) { $this->items[] = array('title'=>$p->t("lvaliste/titel"), @@ -121,19 +139,19 @@ class menu_addon_meinelv extends menu_addon 'link'=>'private/freifaecher/lesson.php?lvid='.$row->lehrveranstaltung_id, 'name'=>'FF '.$this->CutString($row->lehreverzeichnis, $cutlength) ); - } + } else { $stg_obj = new studiengang(); $stg_obj->load($row->studiengang_kz); $kurzbz = $stg_obj->kuerzel.'-'.$row->semester.' '.$row->orgform_kurzbz; - + $this->items[] = array('title'=>$lv_obj->bezeichnung_arr[$sprache], 'target'=>'content', 'link'=>'private/lehre/lesson.php?lvid='.$row->lehrveranstaltung_id, 'name'=>$kurzbz.' '.$this->CutString($lv_obj->bezeichnung_arr[$sprache], $cutlength) ); - } + } } } else @@ -146,7 +164,7 @@ class menu_addon_meinelv extends menu_addon } $this->output(); } - + private function CutString($strVal, $limit) { if(mb_strlen($strVal) > $limit+3) From da3409cf1db271c98279270b0a5fb1a92e2a1229 Mon Sep 17 00:00:00 2001 From: oesi Date: Thu, 18 Aug 2016 14:26:52 +0200 Subject: [PATCH 114/114] =?UTF-8?q?PartTime=20in=20der=20Vorlage=20erg?= =?UTF-8?q?=C3=A4nzt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- system/xsl/AusbVerEng_0.xsl | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/system/xsl/AusbVerEng_0.xsl b/system/xsl/AusbVerEng_0.xsl index da59cec66..2a4773750 100644 --- a/system/xsl/AusbVerEng_0.xsl +++ b/system/xsl/AusbVerEng_0.xsl @@ -808,6 +808,9 @@ Vollzeitstudiums. + + berufsbegleitenden Studiums. + Fernstudiums. @@ -1577,4 +1580,4 @@ - \ No newline at end of file +