From f409aa2c6f3fe24340b65114a585d8e23cfe2404 Mon Sep 17 00:00:00 2001 From: alex Date: Fri, 24 May 2019 15:37:40 +0200 Subject: [PATCH 01/22] =?UTF-8?q?Ausbildungsvertrag=20au=C3=9Ferordentlich?= =?UTF-8?q?=20Studierende=20-=20Vorlage=20update?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- system/xsl/Ausbildungsver_9005.xsl | 68 ++++++++++++++++++++++-------- 1 file changed, 51 insertions(+), 17 deletions(-) diff --git a/system/xsl/Ausbildungsver_9005.xsl b/system/xsl/Ausbildungsver_9005.xsl index db74f0dbf..f781dc811 100644 --- a/system/xsl/Ausbildungsver_9005.xsl +++ b/system/xsl/Ausbildungsver_9005.xsl @@ -367,7 +367,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn Familienname: Vorname: - Akademische/r Titel: + Akademische/r Titel: @@ -390,7 +390,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, Standort Höchstädtplatz und 1210 Wien, Standort 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. @@ -436,8 +436,6 @@ 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 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. @@ -475,7 +473,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 ao. Studentin bzw der ao. Student ist verpflichtet, insbesondere folgende Bestimmungen einzuhalten: + Folgende Bestimmungen sind Bestandteil des Ausbildungsvertrags und von der ao. StudentIn/dem Studenten einzuhalten: Studienordnung und Studienrechtliche Bestimmungen / Prüfungsordnung idgF @@ -494,7 +492,25 @@ 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. + Diese Dokumente sind öffentlich zugänglich unter www.technikum-wien.at und nach Erhalt der Zugangsdaten auch im Intranet + abrufbar + + + + 1 + + + + + + https://www.technikum-wien.at/ueber-uns/satzung-und-leitbild-der-fh-technikum-wien/ oder CIS – Dokumente – Satzung + + + + + + + und werden bei den Einführungsveranstaltungen vorgestellt. 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 @@ -503,15 +519,18 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn 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 dem Studienbeitrag 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 + 6.2.6 Beibringung und Aktualisierung von personenbezogenen Daten + Die ao. Studentin bzw. der ao. Student ist verpflichtet, personenbezogene 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 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. + Es ist der ao. Studentin/dem ao. Studenten untersagt, die Daten des von der FH zur Verfügung gestellten Studierendenaccounts weiterzugeben. + 6.2.7 Bezug von Informationen durch die FH Gruppe + 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/die ao. Studierende stimmt zu, dass ihm/ihr Informationen der FH Gruppe (FH Technikum Wien, Technikum Wien GmbH sowie Technikum Wien Alumni Club) zur Pflege der Kontakte per E-Mail zugestellt werden (§ 107 TKG 2003 idgF). Ein Abbestellen dieser Informationen ist jederzeit möglich. 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, die im Rahmen von geförderten Projekten geschaffen wurden, auf dessen schriftliche Anfrage hin einzuräumen. 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/die Vortragende vorab ausdrücklich seine/ihre schriftliche Zustimmung erteilt hat. + 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) oder in Lehrveranstaltungen zu fotografieren. 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/die Vortragende und alle auf diesen Aufnahmen erkennbaren Personen vorab ausdrücklich seine/ihre 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 @@ -540,7 +559,25 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn 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; + nicht genügender Leistung im Sinne der + Prüfungsordnung + + + + 2 + + + + + + https://www.technikum-wien.at/ueber-uns/satzung-und-leitbild-der-fh-technikum-wien/ oder CIS – Dokumente - Satzung + + + + + + + ; mehrmaligem unentschuldigten Verletzen der Anwesenheitspflicht ; @@ -592,9 +629,9 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - 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. + Falls das gesamte Studienprogramm in englischer Sprache angeboten wird, erklärt die ao. Studentin bzw. der ao. Student, 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) trägt der ao. Student bzw. die ao. Studentin. + Ao. Studierende 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. @@ -622,8 +659,6 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn Der Ausbildungsvertrag ist gebührenfrei. - - Wien, @@ -641,7 +676,6 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn - From 6062579948dd2864926bb327fedca77cdbfccf42 Mon Sep 17 00:00:00 2001 From: alex Date: Thu, 6 Jun 2019 16:38:14 +0200 Subject: [PATCH 02/22] =?UTF-8?q?Ausbildungsvertrag=20for=20Lehrg=C3=A4nge?= =?UTF-8?q?=20=C3=BCberarbeitet?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- system/xsl/Ausbildungsver_Lehrgaenge.xsl | 96 +++++++++++++++--------- 1 file changed, 61 insertions(+), 35 deletions(-) diff --git a/system/xsl/Ausbildungsver_Lehrgaenge.xsl b/system/xsl/Ausbildungsver_Lehrgaenge.xsl index 616d90c1f..19108a7ba 100644 --- a/system/xsl/Ausbildungsver_Lehrgaenge.xsl +++ b/system/xsl/Ausbildungsver_Lehrgaenge.xsl @@ -433,7 +433,7 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" Adresse: ; Geburtsdatum: - (kurz „ao. Studentin“ bzw. „ao. Student“ genannt) andererseits, im Rahmen des Lehrgangs zur Weiterbildung nach §9 FHStG idgF + (kurz „ao. Studentin“ bzw. „ao. Student“ genannt) andererseits, im Rahmen des Lehrgangs zur Weiterbildung nach §9 FHStG idgF. @@ -442,7 +442,7 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" in der Organisationsform eines - + + Lehrgangs zur Weiterbildung. - Dieser Lehrgang wird von der Technikum Wien GmbH organisiert und gemeinsam mit der Fachhochschule Technikum Wien durchgeführt. Es gelten die AGB der Technikum Wien GmbH, diese sind unter https://academy.technikum-wien.at/agb jederzeit abrufbar. + Dieser Lehrgang wird in Kooperation mit der Technikum Wien GmbH organisiert und durchgeführt. Es gelten die AGB der Technikum Wien GmbH, diese sind unter https://academy.technikum-wien.at/agb jederzeit abrufbar. @@ -477,7 +478,7 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" - Die Ausbildung erfolgt auf der Grundlage des Fachhochschul-Studiengesetzes, BGBl. Nr. 340/1993 idgF und des Hochschul-Qualitätssicherungsgesetzes, BGBl. I Nr. 74/2011 idgF und der Satzung der Fachhochschule Technikum Wien idgF. + Die Ausbildung erfolgt auf Grundlage des Fachhochschul-Studiengesetzes, BGBI. Nr. 340/1993 idgF und des Hochschul-Qualitätssicherungsgesetzes, BGBI. Nr. 74/2011 idgF, des genehmigten Lehrgangantrags durch das Fachhoschul-Kollegium und der Satzung der Fachhoschule Technikum Wien idgF. @@ -488,7 +489,8 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" - Die Ausbildungsdauer beträgt Semester. + Die Ausbildungsdauer beträgt Semester. + In dieser Zeit sind von der Studierenden/dem Studierendem die Prüfungs- und Studienleistungen gemäß Studienordnung und Satzungsteil Studienrechtliche Bestimmungen/Prüfungsordnung zu erbringen. Die ao. Studentin bzw. der ao. Student hat das Recht, eine Anerkennung nachgewiesener Kenntnisse beim Lehrgang zu beantragen. Eine solche Anerkennung setzt voraus, dass die erworbenen Kenntnisse mit dem Inhalt und dem Umfang der Lehrveranstaltung gleichwertig sind und bewirkt die Anrechnung der entsprechenden Lehrveranstaltung. @@ -503,13 +505,13 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" - Nach Abschluss aller vorgeschriebenen Prüfungen wird der akademische Grad "" verliehen. + Nach positivem Abschluss aller vorgeschriebenen Prüfungen wird der Mastergrad "" verliehen. - Nach Abschluss aller vorgeschriebenen Prüfungen wird der Titel "" verliehen. + Nach positivem Abschluss aller vorgeschriebenen Prüfungen wird der Titel "" verliehen. - Nach Abschluss aller vorgeschriebenen Prüfungen wird ein Zertifizierungsdiplom der Technikum Wien Academy verliehen. + Nach positivem Abschluss aller vorgeschriebenen Prüfungen wird ein Zertifizierungsdiplom der Technikum Wien Academy verliehen. @@ -526,19 +528,18 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" 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 Lehrgangs zur Weiterbildung 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 des Lehrgangs. Der Erhalter ist verpflichtet, allfällige Änderungen des Lehrgangs 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, jedenfalls folgende Dokumente zur Verfügung zu stellen: Studierendenausweis, Studienerfolgsbestätigung und Inskriptionsbestätigung, sowie je nach absolviertem Lehrgang ein Zertifikat über den positiven Abschluss des Zertifikatslehrgangs bzw. einen Bescheid über die Verleihung des akademischen Grades inkl. Diploma Supplement. 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. @@ -555,32 +556,52 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" 6.1 Rechte - Die ao. Studentin bzw. der ao. Student hat das Recht auf einen Studienbetrieb gemäß den im Lehrgang zur Weiterbildung idgf und in der Satzung der FH Technikum Wien idgF festgelegten Bedingungen. + Die ao. Studentin bzw. der ao. Student hat das Recht auf einen Studienbetrieb gemäß den im Lehrgang zur Weiterbildung idgF. und in der Satzung der FH Technikum Wien idgF. festgelegten Bedingungen. 6.2 Pflichten 6.2.1 Einhaltung studienrelevanter Bestimmungen - Die ao. Studentin bzw. der ao. Student ist verpflichtet, insbesondere folgende Bestimmungen einzuhalten: + Folgende Bestimmungen sind Bestandteil des Ausbildungsvertrags und von der ao. Studentin/dem ao. Studenten einzuhalten: - Studienordnung und Prüfungsordnung für Lehrgänge idgF + Studienordnung und studienrechtliche Bestimmungen/Prüfungsordnung für Lehrgänge idgF. - Hausordnung idgF + Hausordnung idgF. - Brandschutzordnung idgF + Brandschutzordnung idgF. - Bibliotheksordnung idgF + Bibliotheksordnung idgF. - Die für den jeweiligen Lehrgang geltende/n Laborordnung/en idgF + Die für den jeweiligen Lehrgang geltende/n Laborordnung/en idgF. - Diese Dokumente sind öffentlich zugänglich unter www.technikum-wien.at. + Diese Dokumente sind öffentlich zugänglich unter www.technikum-wien.at und nach Erhalt der Zugangsdaten auch im Intranet + abrufbar + + + + 1 + + + + + + https://www.technikum-wien.at/ueber-uns/satzung-und-leitbild-der-fh-technikum-wien/ oder CIS – Dokumente – Satzung + + + + + + + . + + Darüber hinaus sind die AGB der Technikum Wien GmbH Bestandteil dieses Vertrages (https://academy.technikum-wien.at/agb). @@ -590,20 +611,25 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" 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 Studium bzw. für dessen Fortsetzung. - 6.2.3 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.4 Aktualisierung eigener Daten und Bezug von Informationen + 6.2.3 Beibringung und Aktualisierung von personenbezogenen Daten + Die ao. Studentin bzw. der ao. Student ist verpflichtet, personenbezogene 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 ao. Studentin bzw. der ao. Student hat unaufgefordert dafür zu sorgen, dass die von ihr/ihm beigebrachten Daten aktuell sind. Änderungen sind der Lehrgangsassistenz 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. + Es ist der ao. Studentin/dem ao. Studenten untersagt, die Daten des von der FH zur Verfügung gestellten Studierendenaccounts weiterzugeben. + 6.2.4 Bezug von Informationen durch die FH Gruppe + 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/die ao. Studierende stimmt zu, dass ihm/ihr nach Studienende Informationen der FH Gruppe /FH Technikum Wien, Technikum Wien GmbH sowie Technikum Wien Alumni Club) zur Pflege der Kontakte zu den Absolventinnen und Absolventen per E-Mail zugestellt werden (§ 107 TKG 2003 idgF.) Ein Abbestellen dieser Informationen ist jederzeit möglich. 6.2.5 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, die im Rahmen von geförderten Projekten geschaffen wurden, auf dessen schriftliche Anfrage hin einzuräumen. 6.2.6 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, WhatsAPP, LinkedIn, Xing etc, aber auch auf Youtube, Instagram 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/die Vortragende vorab ausdrücklich seine/ihre schriftliche Zustimmung erteilt hat. + 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) oder in Lehrveranstaltungen zu fotografieren. Darüber hinaus ist jede Form der öffentlichen Zurverfügungstellung (drahtlos und drahtgebunden) der vorgenannten Aufnahmen z.B. in sozialen Netzwerken wie Facebook, WhatsAPP, LinkedIn, Xing etc., aber auch Youtube, Instagram 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/die Vortragende und alle auf diesen Aufnahmen erkennbaren Personen vorab ausdrücklich seine/ihre schriftliche Zustimmung erteilt hat. 6.2.7 Geheimhaltungspflicht Die ao. Studentin bzw. der ao. Student ist zur Geheimhaltung von Forschungs- und Entwicklungsaktivitäten und -ergebnissen gegenüber Dritten verpflichtet. 6.2.8 Schadensmeldung Im Falle des Eintretens eines Schadens am Inventar der Fachhochschule ist der/die ao. Studierende verpflichtet, diesen unverzüglich, spätestens aber innerhalb von drei Tagen dem Lehrgangssekretariat zu melden. Allfällige Haftungsansprüche bleiben hiervon unberührt. - 6.2.9 Rückgabeverpflichtung bei Studienende + 6.2.9 Unfallmeldung + Im Falle eines Unfalles mit körperlicher Verletzung des/der Studierenden im Zusammenhang mit dem Studium ist die/der ao. Studierende verpflichtet, diesen innerhalb von drei Tagen dem Lehrgangssekretariat zu melden. Dies betrifft auch Wegunfälle zur oder von der FH. + 6.2.10 Rückgabeverpflichtung bei Studienende Die ao. Studentin bzw. der ao. Student ist verpflichtet, bei einer Beendigung des Lehrgangs unverzüglich alle zur Verfügung gestellten Gerätschaften, Bücher, Schlüssel und sonstige Materialien zurückzugeben. @@ -616,8 +642,8 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" - 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.1 Auflösung im beiderseitigem Einvernehmen + Im beiderseitigem 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. Die Verpflichtung zur vollständigen Leistung der Lehrgangskosten wird von einer Kündigung durch die ao. Studentin bzw. den ao. Studenten nicht berührt. @@ -643,9 +669,6 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" persönlichem Verhalten, das zu einer Beeinträchtigung des Images und/oder Betriebes des Lehrgangs, der Fachhochschule bzw. des Erhalters oder von Personen führt, die für die Fachhochschule bzw. den Erhalter tätig sind; - - Weigerung zur Beibringung von Daten (siehe Pkt. 6.2.3); - Verletzung der Verpflichtung, dem Erhalter die Rechte an Forschungs- und Entwicklungsergebnissen einzuräumen (siehe Pkt. 6.2.5); @@ -658,6 +681,9 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" Nichterfüllung finanzieller Verpflichtungen trotz Mahnung; + + Weigerung zur Beibringung von Daten (siehe Pkt. 6.2.3) + Plagiieren im Rahmen wissenschaftlicher Arbeiten. @@ -679,7 +705,7 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" - Ao. Studierende des Programms 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) trägt der ao. Student bzw. die ao. Studentin. + Ao. Studierende des Lehrgangs sind verpflichtet, eine EDV-Ausstattung zu beschaffen und zu unterhalten, die es ermöglicht, an den Fernlehreelementen 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. @@ -704,8 +730,8 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" - Die Ausfertigung dieses Vertrages erfolgt in zweifacher Ausführung. Ein Original verbleibt im zuständigen Administrationsbüro des Lehrgangs. 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 sind beim sachlich zuständigen Gericht in Wien einzubringen. + Die Ausfertigung dieses Vertrages erfolgt in zweifacher Ausführung. In Original verbleibt im zuständigen Administrationsbüro des Fachhochschul-Lehrgangs. Eine Ausfertigung wird der ao. Studentin bzw. dem ao. Studenten übergeben. + Für Streitigkeiten aus diesem Vertrag gilt österreichisches Recht vereinbart, allfällige Klagen gegen den Erhalter sind, sofern gesetzlich zulässig, beim sachlich zuständigen Gericht in Wien einzubringen. Der Ausbildungsvertrag ist gebührenfrei. From b950d666d0b1e2583639f3a82845260d226c91d1 Mon Sep 17 00:00:00 2001 From: Cris Date: Thu, 13 Jun 2019 12:42:46 +0200 Subject: [PATCH 03/22] Created table campus.tbl_zeitaufzeichnung_gd --- system/dbupdate_3.3.php | 81 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) diff --git a/system/dbupdate_3.3.php b/system/dbupdate_3.3.php index ac5f5fdba..08141c744 100644 --- a/system/dbupdate_3.3.php +++ b/system/dbupdate_3.3.php @@ -2938,6 +2938,86 @@ if(!$result = @$db->db_query("SELECT bezeichnung_mehrsprachig FROM bis.tbl_orgfo } } +// Create SEQUENCE tbl_zeitaufzeichnung_gd_id +if ($result = $db->db_query("SELECT 0 FROM pg_class WHERE relname = 'tbl_zeitaufzeichnung_gd_id_seq'")) +{ + if ($db->db_num_rows($result) == 0) + { + $qry = ' + CREATE SEQUENCE campus.tbl_zeitaufzeichnung_gd_id_seq + START WITH 1 + INCREMENT BY 1 + NO MAXVALUE + NO MINVALUE + CACHE 1; + '; + if (!$db->db_query($qry)) + echo 'campus.tbl_zeitaufzeichnung_gd_id_seq '.$db->db_last_error().'
'; + else + echo '
Created sequence: campus.tbl_zeitaufzeichnung_gd_id_seq'; + + // GRANT SELECT, UPDATE ON SEQUENCE campus.tbl_zeitaufzeichnung_gd_id_seq TO web; + $qry = 'GRANT SELECT, UPDATE ON SEQUENCE campus.tbl_zeitaufzeichnung_gd_id_seq TO web;'; + if (!$db->db_query($qry)) + echo 'campus.tbl_zeitaufzeichnung_gd_id_seq '.$db->db_last_error().'
'; + else + echo '
Granted privileges to vilesci on campus.tbl_zeitaufzeichnung_gd_id_seq'; + + // GRANT SELECT, UPDATE ON SEQUENCE campus.tbl_zeitaufzeichnung_gd_id_seq TO vilesci; + $qry = 'GRANT SELECT, UPDATE ON SEQUENCE campus.tbl_zeitaufzeichnung_gd_id_seq TO vilesci;'; + if (!$db->db_query($qry)) + echo 'campus.tbl_zeitaufzeichnung_gd_id_seq '.$db->db_last_error().'
'; + else + echo '
Granted privileges to vilesci on campus.tbl_zeitaufzeichnung_gd_id_seq'; + } +} + +// Create TABLE campus.tbl_zeitaufzeichnung_gd +if(!@$db->db_query("SELECT 0 FROM campus.tbl_zeitaufzeichnung_gd WHERE 0 = 1")) { + $qry = ' + CREATE TABLE campus.tbl_zeitaufzeichnung_gd + ( + zeitaufzeichnung_gd_id integer NOT NULL DEFAULT NEXTVAL(\'campus.tbl_zeitaufzeichnung_gd_id_seq\'::regclass), + uid varchar(32) NOT NULL, + studiensemester_kurzbz varchar(16) NOT NULL, + selbstverwaltete_pause boolean NOT NULL, + insertamum TIMESTAMP DEFAULT NOW(), + insertvon varchar(32), + updateamum TIMESTAMP, + updatevon varchar(32) + ); + + ALTER TABLE campus.tbl_zeitaufzeichnung_gd ADD CONSTRAINT pk_zeitaufzeichnung_gd_zeitaufzeichnung_gd_id PRIMARY KEY (zeitaufzeichnung_gd_id); + + ALTER TABLE campus.tbl_zeitaufzeichnung_gd ADD CONSTRAINT fk_zeitaufzeichnung_gd_uid FOREIGN KEY (uid) REFERENCES public.tbl_benutzer(uid) ON UPDATE CASCADE ON DELETE RESTRICT; + ALTER TABLE campus.tbl_zeitaufzeichnung_gd ADD CONSTRAINT fk_zeitaufzeichnung_gd_studiensemester_kurzbz FOREIGN KEY (studiensemester_kurzbz) REFERENCES public.tbl_studiensemester(studiensemester_kurzbz) ON UPDATE CASCADE ON DELETE RESTRICT; + + COMMENT ON TABLE campus.tbl_zeitaufzeichnung_gd IS \'Table to manage the lectors parted working times; gd = Geteilte Dienste\'; + COMMENT ON COLUMN campus.tbl_zeitaufzeichnung_gd.selbstverwaltete_pause IS \'Lectors (dis-)agreement to self-manage breaks\'; + + '; + if (!$db->db_query($qry)) + echo 'campus.tbl_zeitaufzeichnung_gd ' . $db->db_last_error() . '
'; + else + echo '
Created table campus.tbl_zeitaufzeichnung_gd'; + + + // GRANT SELECT, UPDATE, INSERT, DELETE ON TABLE campus.tbl_zeitaufzeichnung_gd TO web; + $qry = 'GRANT SELECT, UPDATE, INSERT, DELETE ON TABLE campus.tbl_zeitaufzeichnung_gd TO web;'; + if (!$db->db_query($qry)) + echo 'campus.tbl_zeitaufzeichnung_gd ' . $db->db_last_error() . '
'; + else + echo '
Granted privileges to web on campus.tbl_zeitaufzeichnung_gd'; + + // GRANT SELECT, UPDATE, INSERT, DELETE ON TABLE campus.tbl_zeitaufzeichnung_gd TO vilesci; + $qry = 'GRANT SELECT, UPDATE, INSERT, DELETE ON TABLE campus.tbl_zeitaufzeichnung_gd TO vilesci;'; + if (!$db->db_query($qry)) + echo 'campus.tbl_zeitaufzeichnung_gd ' . $db->db_last_error() . '
'; + else + echo '
Granted privileges to vilesci on campus.tbl_zeitaufzeichnung_gd'; + +} + // *** Pruefung und hinzufuegen der neuen Attribute und Tabellen echo '

Pruefe Tabellen und Attribute!

'; @@ -3022,6 +3102,7 @@ $tabellen=array( "campus.tbl_veranstaltung" => array("veranstaltung_id","titel","beschreibung","veranstaltungskategorie_kurzbz","inhalt","start","ende","freigabevon","freigabeamum","updateamum","updatevon","insertamum","insertvon"), "campus.tbl_veranstaltungskategorie" => array("veranstaltungskategorie_kurzbz","bezeichnung","bild","farbe"), "campus.tbl_zeitaufzeichnung" => array("zeitaufzeichnung_id","uid","aktivitaet_kurzbz","projekt_kurzbz","start","ende","beschreibung","oe_kurzbz_1","oe_kurzbz_2","insertamum","insertvon","updateamum","updatevon","ext_id","service_id","kunde_uid"), + "campus.tbl_zeitaufzeichnung_gd" => array("zeitaufzeichnung_gd_id","uid","studiensemester_kurzbz","selbstverwaltete_pause","insertamum","insertvon","updateamum","updatevon"), "campus.tbl_zeitsperre" => array("zeitsperre_id","zeitsperretyp_kurzbz","mitarbeiter_uid","bezeichnung","vondatum","vonstunde","bisdatum","bisstunde","vertretung_uid","updateamum","updatevon","insertamum","insertvon","erreichbarkeit_kurzbz","freigabeamum","freigabevon"), "campus.tbl_zeitsperretyp" => array("zeitsperretyp_kurzbz","beschreibung","farbe"), "campus.tbl_zeitwunsch" => array("stunde","mitarbeiter_uid","tag","gewicht","updateamum","updatevon","insertamum","insertvon"), From c887c61d968933b5a6bc7be30dc1d872d496cacc Mon Sep 17 00:00:00 2001 From: Cris Date: Thu, 13 Jun 2019 16:19:23 +0200 Subject: [PATCH 04/22] Created class zeitaufzeichnung_gd & method save() The save method saves the lectors decision about self-managing breaks during parted working times. --- include/zeitaufzeichnung_gd.class.php | 83 +++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 include/zeitaufzeichnung_gd.class.php diff --git a/include/zeitaufzeichnung_gd.class.php b/include/zeitaufzeichnung_gd.class.php new file mode 100644 index 000000000..c88cc9525 --- /dev/null +++ b/include/zeitaufzeichnung_gd.class.php @@ -0,0 +1,83 @@ +uid) && + is_string($this->studiensemester_kurzbz) && + is_bool($this->selbstverwaltete_pause)) + { + $qry = ' + INSERT INTO campus.tbl_zeitaufzeichnung_gd ( + uid, + studiensemester_kurzbz, + selbstverwaltete_pause, + insertvon + ) + VALUES ('. + $this->db_add_param($this->uid). ', '. + $this->db_add_param($this->studiensemester_kurzbz). ', '. + $this->db_add_param($this->selbstverwaltete_pause). ', '. + $this->db_add_param($this->uid). ' + ); + '; + + if ($this->db_query($qry)) + { + return true; + } + else + { + $this->errormsg = 'Fehler beim Speichern der selbstverwalteten Pause'; + return false; + } + } + else + { + $this->errormsg = 'Falsche Parameterübergabe'; + return false; + } + } +} \ No newline at end of file From 041d1be048b8aaeb3cf30084192359e55d778af1 Mon Sep 17 00:00:00 2001 From: Cris Date: Thu, 13 Jun 2019 16:23:16 +0200 Subject: [PATCH 05/22] Added GUI for acceptance of self-managed breaks + saving logic --- cis/private/profile/zeitwunsch.php | 54 ++++++++++++++++++++++++++---- 1 file changed, 48 insertions(+), 6 deletions(-) diff --git a/cis/private/profile/zeitwunsch.php b/cis/private/profile/zeitwunsch.php index ef0840c87..ffa38721f 100644 --- a/cis/private/profile/zeitwunsch.php +++ b/cis/private/profile/zeitwunsch.php @@ -29,6 +29,8 @@ require_once('../../../include/globals.inc.php'); require_once('../../../include/functions.inc.php'); require_once('../../../include/datum.class.php'); require_once('../../../include/zeitwunsch.class.php'); +require_once('../../../include/studiensemester.class.php'); +require_once('../../../include/zeitaufzeichnung_gd.class.php'); require_once('../../../include/benutzer.class.php'); require_once('../../../include/phrasen.class.php'); require_once('../../../include/sprache.class.php'); @@ -107,6 +109,28 @@ $person = new benutzer(); if(!$person->load($uid)) die($person->errormsg); +// Nächstes Studiensemester +$ss = new Studiensemester(); +$ss->getNextStudiensemester(); +$next_ss = $ss->studiensemester_kurzbz; + +// Erklärung zu Pausen bei geteilten Arbeitszeiten speichern +if (isset($_GET['selbstverwaltete-pause']) && !empty($_GET['submit'])) +{ + $selbstverwaltete_pause = ($_GET['selbstverwaltete-pause'] == 'yes') ? true : false; + + $zeitaufzeichnung_gd = new Zeitaufzeichnung_gd(); + $zeitaufzeichnung_gd->uid = $uid; + $zeitaufzeichnung_gd->studiensemester_kurzbz = $next_ss; + $zeitaufzeichnung_gd->selbstverwaltete_pause = $selbstverwaltete_pause; + + if (!$zeitaufzeichnung_gd->save()) + { + echo $zeitaufzeichnung_gd->errormsg; + } + +} + ?> @@ -206,12 +230,30 @@ if(!$person->load($uid)) ?> -
"; - echo $p->t('zeitwunsch/formularZumEintragenDerZeitsperren', array($href)); - ?> - -

t('zeitwunsch/erklärung');?>:

+ + +
+
+
+

Erklärung zu Pausen bei geteilten Arbeitszeiten


+

+ Ich kenne die arbeitsrechtlichen Betriebsvereinbarungen zur Pauseneinhaltung bei geteilten Arbeitszeiten.
+ Für das kommende Studiensemester erkläre ich mich einverstanden, meine Pausen selbst zu verwalten. + ja + nein

+ +

+
+
+

+ +

t('zeitwunsch/erklärung');?>:

+ + "; + echo $p->t('zeitwunsch/formularZumEintragenDerZeitsperren', array($href)); + ?> +

t('zeitwunsch/kontrollierenSieIhreZeitwuensche');?>!

From 8843462c7daeff10b19b8ff85da0dc42b6bb1e55 Mon Sep 17 00:00:00 2001 From: raab Date: Fri, 14 Jun 2019 11:49:50 +0200 Subject: [PATCH 06/22] load entry and display if exists --- cis/private/profile/zeitwunsch.php | 20 +++++++++-- include/zeitaufzeichnung_gd.class.php | 49 +++++++++++++++++++++++++-- 2 files changed, 63 insertions(+), 6 deletions(-) diff --git a/cis/private/profile/zeitwunsch.php b/cis/private/profile/zeitwunsch.php index ffa38721f..5b5b13d35 100644 --- a/cis/private/profile/zeitwunsch.php +++ b/cis/private/profile/zeitwunsch.php @@ -239,9 +239,23 @@ if (isset($_GET['selbstverwaltete-pause']) && !empty($_GET['submit']))

Ich kenne die arbeitsrechtlichen Betriebsvereinbarungen zur Pauseneinhaltung bei geteilten Arbeitszeiten.
Für das kommende Studiensemester erkläre ich mich einverstanden, meine Pausen selbst zu verwalten. - ja - nein

- + load($uid, $next_ss); + if ( ! $gd->uid ) + { + echo 'ja + nein

+ + '; + } + else + { + echo '

Zustimmung für '.$next_ss.': '.$gd->selbstverwaltete_pause; + } + //var_dump($gd); + ?> +

diff --git a/include/zeitaufzeichnung_gd.class.php b/include/zeitaufzeichnung_gd.class.php index c88cc9525..f8a68d653 100644 --- a/include/zeitaufzeichnung_gd.class.php +++ b/include/zeitaufzeichnung_gd.class.php @@ -39,6 +39,49 @@ class zeitaufzeichnung_gd extends basis_db parent::__construct(); } + /** + * Loads etry for specific user and semester + * @return boolean True, if saving succeeded. + */ + public function load($user, $sem) + { + if ($user && $sem) + { + $qry = ' + SELECT * FROM campus.tbl_zeitaufzeichnung_gd + WHERE uid = '.$this->db_add_param($user). + ' AND studiensemester_kurzbz = ' . $this->db_add_param($sem) . + 'limit 1'; + + if(!$this->db_query($qry)) + { + $this->errormsg = 'Fehler bei einer Datenbankabfrage'; + return false; + } + if($row = $this->db_fetch_object()) + { + $this->zeitaufzeichnung_gd_id = $row->zeitaufzeichnung_gd_id; + $this->uid = $row->uid; + $this->studiensemester_kurzbz = $row->studiensemester_kurzbz; + $this->insertamum = $row->insertamum; + $this->insertvon = $row->insertvon; + $this->updateamum = $row->updateamum; + $this->updatevon = $row->updatevon; + $this->selbstverwaltete_pause = $row->selbstverwaltete_pause; + } + else + { + $this->errormsg = 'Es ist kein Datensatz vorhanden'; + return false; + } + } + else + { + $this->errormsg = 'Falsche Parameterübergabe'; + return false; + } + } + /** * Saves decision about self-managing breaks during parted working times. * @return boolean True, if saving succeeded. @@ -49,7 +92,7 @@ class zeitaufzeichnung_gd extends basis_db is_string($this->studiensemester_kurzbz) && is_bool($this->selbstverwaltete_pause)) { - $qry = ' + $qry = ' INSERT INTO campus.tbl_zeitaufzeichnung_gd ( uid, studiensemester_kurzbz, @@ -59,7 +102,7 @@ class zeitaufzeichnung_gd extends basis_db VALUES ('. $this->db_add_param($this->uid). ', '. $this->db_add_param($this->studiensemester_kurzbz). ', '. - $this->db_add_param($this->selbstverwaltete_pause). ', '. + $this->db_add_param($this->selbstverwaltete_pause, FHC_BOOLEAN). ', '. $this->db_add_param($this->uid). ' ); '; @@ -80,4 +123,4 @@ class zeitaufzeichnung_gd extends basis_db return false; } } -} \ No newline at end of file +} From 6ad63faa86e15f85acdf86c5250653e0e54c55af Mon Sep 17 00:00:00 2001 From: raab Date: Mon, 24 Jun 2019 14:43:08 +0200 Subject: [PATCH 07/22] geteilte dienste --- cis/private/profile/zeitwunsch.php | 76 ++++++++++++++++----------- include/zeitaufzeichnung_gd.class.php | 4 +- system/dbupdate_3.3.php | 11 ++-- 3 files changed, 53 insertions(+), 38 deletions(-) diff --git a/cis/private/profile/zeitwunsch.php b/cis/private/profile/zeitwunsch.php index 5b5b13d35..8f7e0238d 100644 --- a/cis/private/profile/zeitwunsch.php +++ b/cis/private/profile/zeitwunsch.php @@ -123,8 +123,13 @@ if (isset($_GET['selbstverwaltete-pause']) && !empty($_GET['submit'])) $zeitaufzeichnung_gd->uid = $uid; $zeitaufzeichnung_gd->studiensemester_kurzbz = $next_ss; $zeitaufzeichnung_gd->selbstverwaltete_pause = $selbstverwaltete_pause; - - if (!$zeitaufzeichnung_gd->save()) + $za_gd = new Zeitaufzeichnung_gd(); + $za_gd->load($uid, $next_ss); + if ($za_gd->uid) + { + echo 'Bereits eingetragen'; + } + else if (!$zeitaufzeichnung_gd->save()) { echo $zeitaufzeichnung_gd->errormsg; } @@ -167,8 +172,45 @@ if (isset($_GET['selbstverwaltete-pause']) && !empty($_GET['submit'])) +
+ + + + + +
+

Zustimmung zu selbstverwalteten Pausen

+ +
+

Erklärung zu Pausen bei geteilten Arbeitszeiten


+

+ Ich bin mit der Verplanung meiner Lehre in getrennten Blöcken (Vormittags und Abends) einverstanden und berücksichtige bei der Einteilung meiner Pause,
+ dass ich die tägliche Höchstgrenze laut AZG (10 Stunden) nicht überschreite. Diese Zustimmung gilt jeweils für ein Semester. + load($uid, $next_ss); + if ( ! $gd->uid ) + { + echo '

Für das kommende Studiensemester '.$next_ss.' erkläre ich mich einverstanden, meine Pausen entsprechend selbst zu verwalten: '; + echo 'ja'; + echo 'nein'; + echo '




'; + } + else + { + $zustimmung = ($gd->selbstverwaltete_pause) ? ' erteilt' : 'abgelehnt'; + echo '

Zustimmung für '.$next_ss.': '.$zustimmung.' am '.$datum_obj->formatDatum($gd->insertamum,'d.m.Y H:i:s').'

'; + } + //var_dump($gd); + ?> + +

+
+ +

+

t('zeitwunsch/zeitwunsch');?>

@@ -231,35 +273,7 @@ if (isset($_GET['selbstverwaltete-pause']) && !empty($_GET['submit'])) - -
-
-
-

Erklärung zu Pausen bei geteilten Arbeitszeiten


-

- Ich kenne die arbeitsrechtlichen Betriebsvereinbarungen zur Pauseneinhaltung bei geteilten Arbeitszeiten.
- Für das kommende Studiensemester erkläre ich mich einverstanden, meine Pausen selbst zu verwalten. - load($uid, $next_ss); - if ( ! $gd->uid ) - { - echo 'ja - nein

- - '; - } - else - { - echo '

Zustimmung für '.$next_ss.': '.$gd->selbstverwaltete_pause; - } - //var_dump($gd); - ?> - -

-
-
-

+

t('zeitwunsch/erklärung');?>:

diff --git a/include/zeitaufzeichnung_gd.class.php b/include/zeitaufzeichnung_gd.class.php index f8a68d653..e91e2158a 100644 --- a/include/zeitaufzeichnung_gd.class.php +++ b/include/zeitaufzeichnung_gd.class.php @@ -40,7 +40,7 @@ class zeitaufzeichnung_gd extends basis_db } /** - * Loads etry for specific user and semester + * Loads entry for specific user and semester * @return boolean True, if saving succeeded. */ public function load($user, $sem) @@ -67,7 +67,7 @@ class zeitaufzeichnung_gd extends basis_db $this->insertvon = $row->insertvon; $this->updateamum = $row->updateamum; $this->updatevon = $row->updatevon; - $this->selbstverwaltete_pause = $row->selbstverwaltete_pause; + $this->selbstverwaltete_pause = $this->db_parse_bool($row->selbstverwaltete_pause); } else { diff --git a/system/dbupdate_3.3.php b/system/dbupdate_3.3.php index 08141c744..dfb52baad 100644 --- a/system/dbupdate_3.3.php +++ b/system/dbupdate_3.3.php @@ -2975,7 +2975,7 @@ if ($result = $db->db_query("SELECT 0 FROM pg_class WHERE relname = 'tbl_zeitauf // Create TABLE campus.tbl_zeitaufzeichnung_gd if(!@$db->db_query("SELECT 0 FROM campus.tbl_zeitaufzeichnung_gd WHERE 0 = 1")) { $qry = ' - CREATE TABLE campus.tbl_zeitaufzeichnung_gd + CREATE TABLE campus.tbl_zeitaufzeichnung_gd ( zeitaufzeichnung_gd_id integer NOT NULL DEFAULT NEXTVAL(\'campus.tbl_zeitaufzeichnung_gd_id_seq\'::regclass), uid varchar(32) NOT NULL, @@ -2986,15 +2986,16 @@ if(!@$db->db_query("SELECT 0 FROM campus.tbl_zeitaufzeichnung_gd WHERE 0 = 1")) updateamum TIMESTAMP, updatevon varchar(32) ); - + ALTER TABLE campus.tbl_zeitaufzeichnung_gd ADD CONSTRAINT pk_zeitaufzeichnung_gd_zeitaufzeichnung_gd_id PRIMARY KEY (zeitaufzeichnung_gd_id); - + ALTER TABLE campus.tbl_zeitaufzeichnung_gd ADD CONSTRAINT fk_zeitaufzeichnung_gd_uid FOREIGN KEY (uid) REFERENCES public.tbl_benutzer(uid) ON UPDATE CASCADE ON DELETE RESTRICT; ALTER TABLE campus.tbl_zeitaufzeichnung_gd ADD CONSTRAINT fk_zeitaufzeichnung_gd_studiensemester_kurzbz FOREIGN KEY (studiensemester_kurzbz) REFERENCES public.tbl_studiensemester(studiensemester_kurzbz) ON UPDATE CASCADE ON DELETE RESTRICT; - + ALTER TABLE campus.tbl_zeitaufzeichnung_gd ADD CONSTRAINT uk_uid_stsem UNIQUE (uid, studiensemester_kurzbz); + COMMENT ON TABLE campus.tbl_zeitaufzeichnung_gd IS \'Table to manage the lectors parted working times; gd = Geteilte Dienste\'; COMMENT ON COLUMN campus.tbl_zeitaufzeichnung_gd.selbstverwaltete_pause IS \'Lectors (dis-)agreement to self-manage breaks\'; - + '; if (!$db->db_query($qry)) echo 'campus.tbl_zeitaufzeichnung_gd ' . $db->db_last_error() . '
'; From 93ecdaaf0bc3ef089be219defb21e38c4ac49e28 Mon Sep 17 00:00:00 2001 From: Manfred Kindl Date: Fri, 28 Jun 2019 16:23:14 +0200 Subject: [PATCH 08/22] =?UTF-8?q?Erg=C3=A4nzung=20BugFix?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- vilesci/stammdaten/auswertung_fhtw.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/vilesci/stammdaten/auswertung_fhtw.php b/vilesci/stammdaten/auswertung_fhtw.php index 939093ecf..4bae503ca 100644 --- a/vilesci/stammdaten/auswertung_fhtw.php +++ b/vilesci/stammdaten/auswertung_fhtw.php @@ -743,7 +743,7 @@ if ($punkteUebertragen) if ($setRTPunkte->punkte == '') { $setRTPunkte->new = false; - $setRTPunkte->punkte = number_format($array['ergebnis'], 4); + $setRTPunkte->punkte = number_format(floatval($array['ergebnis']), 4); $setRTPunkte->updateamum = date('Y-m-d H:i:s'); $setRTPunkte->updatevon = $user; @@ -775,7 +775,7 @@ if ($punkteUebertragen) $setRTPunkte->anmeldedatum = ''; $setRTPunkte->ort_kurzbz = ''; $setRTPunkte->studienplan_id = $prestudentrolle->studienplan_id; - $setRTPunkte->punkte = number_format($array['ergebnis'], 4); + $setRTPunkte->punkte = number_format(floatval($array['ergebnis']), 4); $setRTPunkte->insertamum = date('Y-m-d H:i:s'); $setRTPunkte->insertvon = $user; From 7886cfc9e39e07ebb18dcebc538e613951fcf991 Mon Sep 17 00:00:00 2001 From: Andreas Oesterreicher Date: Mon, 1 Jul 2019 14:37:14 +0200 Subject: [PATCH 09/22] =?UTF-8?q?Tooltiptext=20f=C3=BCr=20Notendurchschnit?= =?UTF-8?q?t=20auf=20Gradeliste=20hinzugef=C3=BCgt.=20Men=C3=BCpunkt=20im?= =?UTF-8?q?=20FAS=20gegendert?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/views/person/gradelist/semester.php | 2 ++ locale/de-AT/fas.dtd | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/application/views/person/gradelist/semester.php b/application/views/person/gradelist/semester.php index e3614744f..532ef56aa 100644 --- a/application/views/person/gradelist/semester.php +++ b/application/views/person/gradelist/semester.php @@ -143,8 +143,10 @@ diff --git a/locale/de-AT/fas.dtd b/locale/de-AT/fas.dtd index 86415c024..61e7c6bb0 100644 --- a/locale/de-AT/fas.dtd +++ b/locale/de-AT/fas.dtd @@ -115,7 +115,7 @@ - + From 71791ada4bab73c5f452b2449722037a957e5984 Mon Sep 17 00:00:00 2001 From: Andreas Oesterreicher Date: Mon, 1 Jul 2019 14:42:27 +0200 Subject: [PATCH 10/22] =?UTF-8?q?Infotext=20Phrase=20f=C3=BCr=20Notendurch?= =?UTF-8?q?schnitt=20angepasst?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- system/phrasesupdate.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/system/phrasesupdate.php b/system/phrasesupdate.php index 4f5145034..0ee2aeda5 100644 --- a/system/phrasesupdate.php +++ b/system/phrasesupdate.php @@ -2425,7 +2425,7 @@ $phrases = array( 'phrases' => array( array( 'sprache' => 'German', - 'text' => 'Notendurchschnitt über alle Noten (inkl. negative)', + 'text' => 'Notendurchschnitt über alle studienplanrelevanten Noten (inkl. negative)', 'description' => '', 'insertvon' => 'system' ) @@ -2439,7 +2439,7 @@ $phrases = array( 'phrases' => array( array( 'sprache' => 'German', - 'text' => 'Notendurchschnitt über alle Noten (inkl. negative) gewichtet nach ECTS der LV. = (Summe (Note der LV * ECTS der LV))/Gesamtsumme der ECTS', + 'text' => 'Notendurchschnitt über alle studienplanrelevanten Noten (inkl. negative) gewichtet nach ECTS der LV. = (Summe (Note der LV * ECTS der LV))/Gesamtsumme der ECTS', 'description' => '', 'insertvon' => 'system' ) From a8f7199ee8076bbd0fe3272c6c5baf4583c0d695 Mon Sep 17 00:00:00 2001 From: raab Date: Mon, 1 Jul 2019 15:53:57 +0200 Subject: [PATCH 11/22] =?UTF-8?q?nur=20f=C3=BCr=20fixangestellte,=20neuer?= =?UTF-8?q?=20text?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cis/private/profile/zeitwunsch.php | 25 +++++++++++++++++-------- include/zeitaufzeichnung_gd.class.php | 2 +- system/dbupdate_3.3.php | 2 +- 3 files changed, 19 insertions(+), 10 deletions(-) diff --git a/cis/private/profile/zeitwunsch.php b/cis/private/profile/zeitwunsch.php index 8f7e0238d..623bc78fe 100644 --- a/cis/private/profile/zeitwunsch.php +++ b/cis/private/profile/zeitwunsch.php @@ -32,6 +32,7 @@ require_once('../../../include/zeitwunsch.class.php'); require_once('../../../include/studiensemester.class.php'); require_once('../../../include/zeitaufzeichnung_gd.class.php'); require_once('../../../include/benutzer.class.php'); +require_once('../../../include/mitarbeiter.class.php'); require_once('../../../include/phrasen.class.php'); require_once('../../../include/sprache.class.php'); @@ -48,6 +49,7 @@ $uid = get_uid(); if(!check_lektor($uid)) die($p->t('global/keineBerechtigungFuerDieseSeite')); + $PHP_SELF = $_SERVER['PHP_SELF']; if(isset($_GET['type'])) @@ -109,6 +111,9 @@ $person = new benutzer(); if(!$person->load($uid)) die($person->errormsg); +$ma = new mitarbeiter($uid); +$fixangestellt = $ma->fixangestellt; + // Nächstes Studiensemester $ss = new Studiensemester(); $ss->getNextStudiensemester(); @@ -175,23 +180,28 @@ if (isset($_GET['selbstverwaltete-pause']) && !empty($_GET['submit']))
- + - +
-

Zustimmung zu selbstverwalteten Pausen

+

Zustimmung zur Verplanung in geteilter Arbeitszeit

-

Erklärung zu Pausen bei geteilten Arbeitszeiten


- Ich bin mit der Verplanung meiner Lehre in getrennten Blöcken (Vormittags und Abends) einverstanden und berücksichtige bei der Einteilung meiner Pause,
- dass ich die tägliche Höchstgrenze laut AZG (10 Stunden) nicht überschreite. Diese Zustimmung gilt jeweils für ein Semester. + Ich bin mit der Verplanung meiner Lehre in getrennten Blöcken (vormittags und abends an einem Tag) einverstanden. +
Diese Zustimmung gilt jeweils für ein Semester. +

+ Erklärung zu täglichen Ruhepausen bei geteilter Arbeitszeit: Die Verplanung bei geteilter Arbeitszeit hat eine Auswirkung +
auf die zeitliche Gestaltung/Lage der täglichen Ruhepausen. +

+ Ich berücksichtige bei der Einteilung meiner täglichen Ruhepause, dass ich die tägliche Höchstgrenze der Arbeitszeit +
von 10 Stunden laut Arbeitszeitgesetz nicht überschritten wird. load($uid, $next_ss); if ( ! $gd->uid ) { - echo '

Für das kommende Studiensemester '.$next_ss.' erkläre ich mich einverstanden, meine Pausen entsprechend selbst zu verwalten: '; + echo '

Zustimmung für '.$next_ss.': '; echo 'ja'; echo 'nein'; echo '




'; @@ -206,11 +216,10 @@ if (isset($_GET['selbstverwaltete-pause']) && !empty($_GET['submit']))

-

t('zeitwunsch/zeitwunsch');?>

diff --git a/include/zeitaufzeichnung_gd.class.php b/include/zeitaufzeichnung_gd.class.php index e91e2158a..db678addb 100644 --- a/include/zeitaufzeichnung_gd.class.php +++ b/include/zeitaufzeichnung_gd.class.php @@ -41,7 +41,7 @@ class zeitaufzeichnung_gd extends basis_db /** * Loads entry for specific user and semester - * @return boolean True, if saving succeeded. + * @return boolean True, if entry is found. */ public function load($user, $sem) { diff --git a/system/dbupdate_3.3.php b/system/dbupdate_3.3.php index dfb52baad..dcac98148 100644 --- a/system/dbupdate_3.3.php +++ b/system/dbupdate_3.3.php @@ -2991,7 +2991,7 @@ if(!@$db->db_query("SELECT 0 FROM campus.tbl_zeitaufzeichnung_gd WHERE 0 = 1")) ALTER TABLE campus.tbl_zeitaufzeichnung_gd ADD CONSTRAINT fk_zeitaufzeichnung_gd_uid FOREIGN KEY (uid) REFERENCES public.tbl_benutzer(uid) ON UPDATE CASCADE ON DELETE RESTRICT; ALTER TABLE campus.tbl_zeitaufzeichnung_gd ADD CONSTRAINT fk_zeitaufzeichnung_gd_studiensemester_kurzbz FOREIGN KEY (studiensemester_kurzbz) REFERENCES public.tbl_studiensemester(studiensemester_kurzbz) ON UPDATE CASCADE ON DELETE RESTRICT; - ALTER TABLE campus.tbl_zeitaufzeichnung_gd ADD CONSTRAINT uk_uid_stsem UNIQUE (uid, studiensemester_kurzbz); + ALTER TABLE campus.tbl_zeitaufzeichnung_gd ADD CONSTRAINT uk_zeitaufzeichnung_gd_uid_stsem UNIQUE (uid, studiensemester_kurzbz); COMMENT ON TABLE campus.tbl_zeitaufzeichnung_gd IS \'Table to manage the lectors parted working times; gd = Geteilte Dienste\'; COMMENT ON COLUMN campus.tbl_zeitaufzeichnung_gd.selbstverwaltete_pause IS \'Lectors (dis-)agreement to self-manage breaks\'; From c3cd354f4ccec5ec9abf12da63a7b0321d04275b Mon Sep 17 00:00:00 2001 From: Manfred Kindl Date: Mon, 1 Jul 2019 16:03:52 +0200 Subject: [PATCH 12/22] =?UTF-8?q?Spalte=20"Fixangestellt"=20hinzugef=C3=BC?= =?UTF-8?q?gt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- content/statistik/lvplanung.xls.php | 48 +++++++++++++++++++++++++++-- 1 file changed, 46 insertions(+), 2 deletions(-) diff --git a/content/statistik/lvplanung.xls.php b/content/statistik/lvplanung.xls.php index 5e23fae10..286554392 100644 --- a/content/statistik/lvplanung.xls.php +++ b/content/statistik/lvplanung.xls.php @@ -198,8 +198,10 @@ $worksheet->write($zeile,$spalte,"Studiengang", $format_bold); $maxlength[$spalte]=11; $worksheet->write($zeile,++$spalte,"Organisationseinheit", $format_bold); $maxlength[$spalte]=25; -$worksheet->write($zeile,++$spalte,"Lektor", $format_bold); +$worksheet->write($zeile,++$spalte,"LektorIn", $format_bold); $maxlength[$spalte]=6; +$worksheet->write($zeile,++$spalte,"Fixangestellt", $format_bold); +$maxlength[$spalte]=10; $worksheet->write($zeile,++$spalte,"Bezeichnung", $format_bold); $maxlength[$spalte]=25; $worksheet->write($zeile,++$spalte,"Semester", $format_bold); @@ -268,6 +270,11 @@ if($result = $db->db_query($qry)) if($maxlength[$spalte]nachname.' '.$mitarbeiter->vorname)) $maxlength[$spalte]=mb_strlen($mitarbeiter->nachname.' '.$mitarbeiter->vorname); + //Fixangestellt + $worksheet->write($zeile,++$spalte,($mitarbeiter->fixangestellt ? 'Ja' : 'Nein')); + if($maxlength[$spalte]fixangestellt ? 'Ja' : 'Nein')) + $maxlength[$spalte]=mb_strlen($mitarbeiter->fixangestellt ? 'Ja' : 'Nein'); + //Lehrfach $worksheet->write($zeile,++$spalte,$row->lf_bezeichnung); //if($maxlength[$spalte]lf_bezeichnung)) @@ -380,7 +387,8 @@ if($result = $db->db_query($qry)) student_uid, stunden, tbl_projektbetreuer.stundensatz, - tbl_projektbetreuer.faktor + tbl_projektbetreuer.faktor, + tbl_projektbetreuer.person_id FROM lehre.tbl_projektarbeit, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung, @@ -419,6 +427,39 @@ if($result = $db->db_query($qry)) $spalte=0; $zeile++; + $benutzer = new benutzer(); + $benutzer->getBenutzerFromPerson($row->person_id, false); + if (count($benutzer->result) > 0) + { + foreach ($benutzer->result AS $bn) + { + $mitarbeiter = new mitarbeiter($bn->uid); + if ($mitarbeiter->load($bn->uid)) + { + if ($mitarbeiter->fixangestellt) + { + $fixangestellt = 'Ja'; + break; + } + else + { + $fixangestellt = 'Nein'; + break; + } + } + else + { + continue; + } + + } + } + else + { + $fixangestellt = 'Extern'; + } + + //Studiengang $worksheet->write($zeile,$spalte,$stg_obj->kuerzel_arr[$row->studiengang_kz]); if($maxlength[$spalte]kuerzel_arr[$row->studiengang_kz])) @@ -434,6 +475,9 @@ if($result = $db->db_query($qry)) //if($maxlength[$spalte]nachname.' '.$row->vorname)) //$maxlength[$spalte]=mb_strlen($row->nachname.' '.$row->vorname); + //Fixangestellt + $worksheet->write($zeile,++$spalte,$fixangestellt); + //Lehrfach $worksheet->write($zeile,++$spalte,$row->bezeichnung); //if($maxlength[$spalte]bezeichnung)) From 12d0bbfa520d5a605111424b2d04edfa9b81dd48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Wed, 3 Jul 2019 18:07:29 +0200 Subject: [PATCH 13/22] Fixed invalid Session Handling on Infoterminal Page --- cis/infoterminal/index.php | 8 -------- 1 file changed, 8 deletions(-) diff --git a/cis/infoterminal/index.php b/cis/infoterminal/index.php index acbd7b0e4..1a913c421 100644 --- a/cis/infoterminal/index.php +++ b/cis/infoterminal/index.php @@ -20,14 +20,6 @@ * Rudolf Hangl < rudolf.hangl@technikum-wien.at > * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at > */ - -// ------------------------------------------------------------------------------------------ -// Session Starten - Merk Anwenderdaten -// ------------------------------------------------------------------------------------------ - $SESSIONID=trim((isset($_REQUEST['SESSIONID']) ? $_REQUEST['SESSIONID']:'')); - if (session_start($SESSIONID)) - $SESSIONID=@session_id(); - require_once('../../config/cis.config.inc.php'); require_once('../../include/wochenplan.class.php'); require_once('../../include/benutzerberechtigung.class.php'); From f8ecc0b91649e287c4bebb9915264dc3bf0efa9f Mon Sep 17 00:00:00 2001 From: Nikolaus Krondraf Date: Thu, 4 Jul 2019 10:40:38 +0200 Subject: [PATCH 14/22] =?UTF-8?q?matr=5Fnr=20bei=20Studenten=20erg=C3=A4nz?= =?UTF-8?q?t?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- content/zutrittskarte.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/content/zutrittskarte.php b/content/zutrittskarte.php index f319dad73..70a0f91b0 100644 --- a/content/zutrittskarte.php +++ b/content/zutrittskarte.php @@ -40,6 +40,7 @@ require_once('../include/studiengang.class.php'); require_once('../include/benutzerfunktion.class.php'); require_once('../include/organisationseinheit.class.php'); require_once('../include/dokument_export.class.php'); +require_once('../include/person.class.php'); $user = get_uid(); $db = new basis_db(); @@ -232,6 +233,8 @@ foreach ($uid_arr as $uid) $konto = new konto(); $studiengang = new studiengang(); $studiengang->load($student->studiengang_kz); + $person = new person(); + $person->getPersonFromBenutzer($uid); $stsem_obj = new studiensemester(); $stsem = $stsem_obj->getaktorNext(); @@ -265,6 +268,7 @@ foreach ($uid_arr as $uid) 'studiengang' => $studiengang->kurzbzlang, 'gebdatum' => $datum_obj->formatDatum($bn->gebdatum, 'd.m.Y'), 'matrikelnummer' => $student->matrikelnr, + 'matr_nr' => $person->matr_nr, 'ausstellungsdatum' => date('M.Y'), 'gueltigbis' => $datum_obj->formatDatum($gueltigbis, 'd.m.Y') ); From 8f5b32ee94ded55616b897c7c6bc723b213edf41 Mon Sep 17 00:00:00 2001 From: alex Date: Thu, 4 Jul 2019 11:21:30 +0200 Subject: [PATCH 15/22] education/Lehreinheit_model: getLesForLv method: Lehreinheiten ordered by lehreinheit_id by default --- .../models/education/Lehreinheit_model.php | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/application/models/education/Lehreinheit_model.php b/application/models/education/Lehreinheit_model.php index 22778cb6a..10c122b94 100644 --- a/application/models/education/Lehreinheit_model.php +++ b/application/models/education/Lehreinheit_model.php @@ -28,6 +28,7 @@ class Lehreinheit_model extends DB_Model { $lehreinheiten = array(); + $this->addOrder('lehreinheit_id'); $les = $this->loadWhere( array('lehrveranstaltung_id' => $lehrveranstaltung_id, 'studiensemester_kurzbz' => $studiensemester) @@ -62,17 +63,17 @@ class Lehreinheit_model extends DB_Model if (hasData($studiengangresponse)) { $studiengang = $studiengangresponse->retval[0]; - $stgkuerzel = mb_strtoupper($studiengang->typ . $studiengang->kurzbz); + $stgkuerzel = mb_strtoupper($studiengang->typ.$studiengang->kurzbz); - $letoadd->lehreinheitgruppen[] = array( - 'semester' => $lehreinheitgruppe->semester, - 'verband' => $lehreinheitgruppe->verband, - 'gruppe' => $lehreinheitgruppe->gruppe, - 'gruppe_kurzbz' => $lehreinheitgruppe->gruppe_kurzbz, - 'direktinskription' => $lehreinheitgruppe->direktinskription, - 'studiengang_kz' => $lehreinheitgruppe->studiengang_kz, - 'studiengang_kuerzel' => $stgkuerzel - ); + $letoadd->lehreinheitgruppen[] = array( + 'semester' => $lehreinheitgruppe->semester, + 'verband' => $lehreinheitgruppe->verband, + 'gruppe' => $lehreinheitgruppe->gruppe, + 'gruppe_kurzbz' => $lehreinheitgruppe->gruppe_kurzbz, + 'direktinskription' => $lehreinheitgruppe->direktinskription, + 'studiengang_kz' => $lehreinheitgruppe->studiengang_kz, + 'studiengang_kuerzel' => $stgkuerzel + ); } } } From f664f1442fa4f86da4b21c5e492f2f7a3b40b54b Mon Sep 17 00:00:00 2001 From: alex Date: Thu, 4 Jul 2019 11:25:32 +0200 Subject: [PATCH 16/22] - public/js/DialogLib.js: if dialog already present, it is removed before new one is attached (if dialogs are displayed on same page one afte another) --- public/js/DialogLib.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/public/js/DialogLib.js b/public/js/DialogLib.js index 05558844a..f5d373604 100644 --- a/public/js/DialogLib.js +++ b/public/js/DialogLib.js @@ -55,7 +55,12 @@ var FHC_DialogLib = { */ alertDefault: function(title, html, width) { - var strDivDialog = "
"; + var dialogdiv = $("#fhc-dialoglib-dialog"); + + if (dialogdiv.length) + dialogdiv.remove(); + + var strDivDialog = "
"; strDivDialog += html; strDivDialog += "
"; From 48c57136882495a88901533fcc5c4f209f1c86af Mon Sep 17 00:00:00 2001 From: raab Date: Thu, 4 Jul 2019 17:02:11 +0200 Subject: [PATCH 17/22] geteilte arbeitszeit konfigurierbar --- cis/private/profile/zeitwunsch.php | 11 ++--------- config/cis.config-default.inc.php | 4 ++++ locale/de-AT/zeitwunsch.php | 5 +++-- locale/en-US/zeitwunsch.php | 5 +++-- 4 files changed, 12 insertions(+), 13 deletions(-) diff --git a/cis/private/profile/zeitwunsch.php b/cis/private/profile/zeitwunsch.php index 623bc78fe..73ba51bf9 100644 --- a/cis/private/profile/zeitwunsch.php +++ b/cis/private/profile/zeitwunsch.php @@ -180,7 +180,7 @@ if (isset($_GET['selbstverwaltete-pause']) && !empty($_GET['submit']))
- +'; echo ''; $z=$i-1; - if (($pers_uid==$uid)|| ($insertvon==$uid) || $rechte->isBerechtigt('lehre/reservierung', null, 'suid')) - echo ''; + if (($pers_uid==$uid || $insertvon==$uid) && $rechte->isBerechtigt('lehre/reservierung', null, 'suid')) + echo ''; echo ''; } echo '
@@ -188,15 +188,8 @@ if (isset($_GET['selbstverwaltete-pause']) && !empty($_GET['submit']))

- Ich bin mit der Verplanung meiner Lehre in getrennten Blöcken (vormittags und abends an einem Tag) einverstanden. -
Diese Zustimmung gilt jeweils für ein Semester. -

- Erklärung zu täglichen Ruhepausen bei geteilter Arbeitszeit: Die Verplanung bei geteilter Arbeitszeit hat eine Auswirkung -
auf die zeitliche Gestaltung/Lage der täglichen Ruhepausen. -

- Ich berücksichtige bei der Einteilung meiner täglichen Ruhepause, dass ich die tägliche Höchstgrenze der Arbeitszeit -
von 10 Stunden laut Arbeitszeitgesetz nicht überschritten wird. t('zeitwunsch/geteilteArbeitszeit'); $gd = new zeitaufzeichnung_gd(); $gd->load($uid, $next_ss); if ( ! $gd->uid ) diff --git a/config/cis.config-default.inc.php b/config/cis.config-default.inc.php index 3f75b0af3..28376a04f 100644 --- a/config/cis.config-default.inc.php +++ b/config/cis.config-default.inc.php @@ -245,4 +245,8 @@ define('CIS_LVMENUE_CUTLENGTH', 21); // Gibt an, auf welche Seite TicketIds ala #1234 im Jahresplan verlinkt werden zB zur Verlinkung in Bugtracker define('JAHRESPLAN_TICKET_LINK','https://bug.technikum-wien.at/otrs/index.pl?Action=AgentTicketZoom;TicketNumber='); + +//Gibt an ob der Block zu Verplanung in geteilter Arbeitszeit bei den Zeitwünschen angezeigt wird. Default: false +define('CIS_ZEITWUNSCH_GD', false); + ?> diff --git a/locale/de-AT/zeitwunsch.php b/locale/de-AT/zeitwunsch.php index 19e188530..a84da2b0e 100644 --- a/locale/de-AT/zeitwunsch.php +++ b/locale/de-AT/zeitwunsch.php @@ -14,7 +14,7 @@ $this->phrasen['zeitwunsch/bedeutung']='Bedeutung'; $this->phrasen['zeitwunsch/hierMoechteIchUnterrichten']='Hier möchte ich unterrichten'; $this->phrasen['zeitwunsch/hierKannIchUnterrichten']='Hier kann ich unterrichten'; $this->phrasen['zeitwunsch/nurInNotfaellen']='Hier unterrichte ich nur ungern'; -$this->phrasen['zeitwunsch/hierAufGarKeinenFall']='Hier kann ich gar nicht unterrichten'; +$this->phrasen['zeitwunsch/hierAufGarKeinenFall']='Hier kann ich gar nicht unterrichten'; $this->phrasen['zeitwunsch/folgendePunkteSindZuBeachten']='Folgende Punkte sind zu beachten'; $this->phrasen['zeitwunsch/verwendenSieDenWertNur']='Verwenden Sie den Wert -2 nur, wenn Sie zu dieser Stunde wirklich nicht können, um eine bessere Optimierung zu ermöglichen.'; $this->phrasen['zeitwunsch/sperrenSieNurTermine']='Markieren Sie mit den Werten -1 und -2 bitte nur Termine, die für die Lehre an der FH nicht in Frage kommen.
Die Zeitsperren sind nicht dafür gedacht, bereits zugesagte Stunden für bestimmte Studiengänge zu reservieren.'; @@ -22,4 +22,5 @@ $this->phrasen['zeitwunsch/esSolltenFuerJedeStunde']='Es sollten für jede Stund $this->phrasen['zeitwunsch/erklaerung']='Erklärung'; $this->phrasen['zeitwunsch/beiProblemenWendenSieSichAn']='Bei Problemen wenden Sie sich bitte an die'; $this->phrasen['zeitwunsch/profil']='Profil'; -?> \ No newline at end of file +$this->phrasen['zeitwunsch/geteilteArbeitszeit']='Ich bin mit der Verplanung meiner Lehre in getrennten Blöcken am Tagesrand einverstanden.'; +?> diff --git a/locale/en-US/zeitwunsch.php b/locale/en-US/zeitwunsch.php index 9d6e32119..dd9abdc3e 100644 --- a/locale/en-US/zeitwunsch.php +++ b/locale/en-US/zeitwunsch.php @@ -14,7 +14,7 @@ $this->phrasen['zeitwunsch/bedeutung']='Meaning'; $this->phrasen['zeitwunsch/hierMoechteIchUnterrichten']='I would like to teach at this time'; $this->phrasen['zeitwunsch/hierKannIchUnterrichten']='I can teach at this time'; $this->phrasen['zeitwunsch/nurInNotfaellen']='I would prefer not to teach at this time'; -$this->phrasen['zeitwunsch/hierAufGarKeinenFall']='I can not at all teach at this time'; +$this->phrasen['zeitwunsch/hierAufGarKeinenFall']='I can not at all teach at this time'; $this->phrasen['zeitwunsch/folgendePunkteSindZuBeachten']='Please note:'; $this->phrasen['zeitwunsch/verwendenSieDenWertNur']='To make a better optimization possible, please only use the value of -2 if you really can not teach at this time.'; $this->phrasen['zeitwunsch/sperrenSieNurTermine']='Please only mark times where you are absolutely not available to teach at the UAS with the numbers 1 and 2.
Do not mark times for specific courses that you have already been assigned to teach at the UAS as unavailable.'; @@ -22,4 +22,5 @@ $this->phrasen['zeitwunsch/esSolltenFuerJedeStunde']='The amount of preferred te $this->phrasen['zeitwunsch/erklaerung']='Explanation'; $this->phrasen['zeitwunsch/beiProblemenWendenSieSichAn']='If you are having problems, please contact the '; $this->phrasen['zeitwunsch/profil']='Profile'; -?> \ No newline at end of file +$this->phrasen['zeitwunsch/geteilteArbeitszeit']='Ich bin mit der Verplanung meiner Lehre in getrennten Blöcken am Tagesrand einverstanden.'; +?> From 638a0a90a46203bd99e22c87eb8d5c856a1f30cb Mon Sep 17 00:00:00 2001 From: alex Date: Thu, 4 Jul 2019 17:25:24 +0200 Subject: [PATCH 18/22] - Berechtigungscheck for reservation deletion on "meine Reservierungen anzeigen"-page corrected - removed "Alle Reservierungen anzeigen" Link --- cis/private/lvplan/stpl_reserve_list.php | 67 ++---------------------- locale/de-AT/lvplan.php | 1 - locale/en-US/lvplan.php | 1 - locale/it-IT/lvplan.php | 1 - 4 files changed, 3 insertions(+), 67 deletions(-) diff --git a/cis/private/lvplan/stpl_reserve_list.php b/cis/private/lvplan/stpl_reserve_list.php index a882b8344..82f70b612 100644 --- a/cis/private/lvplan/stpl_reserve_list.php +++ b/cis/private/lvplan/stpl_reserve_list.php @@ -67,7 +67,7 @@ if(!$rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid')) $reservierung = new reservierung(); if($reservierung->load($id)) { - if($reservierung->uid==$uid || $reservierung->insertvon==$uid || $rechte->isBerechtigt('lehre/reservierung', null, 'suid')) + if(($reservierung->uid==$uid || $reservierung->insertvon==$uid) && $rechte->isBerechtigt('lehre/reservierung', null, 'suid')) { if($reservierung->delete($id)) echo ''.$p->t('lvplan/reservierungWurdeGeloescht').'
'; @@ -135,8 +135,8 @@ if(!$rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid')) echo '

'.$db->convert_html_chars($pers_uid).''.$db->convert_html_chars($beschreibung).' DeleteDelete
'; @@ -146,67 +146,6 @@ if(!$rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid')) echo '

'; flush(); - if(isset($_GET['alle'])) - { - - //ALLE - $sql_query="SELECT * FROM campus.vw_reservierung - WHERE datum>=".$db->db_add_param($datum)." - ORDER BY datum, titel, ort_kurzbz, stunde"; - if (!$erg_res=$db->db_query($sql_query)) - die($db->db_last_error()); - - $num_rows_res=$db->db_num_rows($erg_res); - if ($num_rows_res>0) - { - echo $p->t('lvplan/alleReservierungen').':
'; - echo ''; - echo ' - - - - - - - - - '; - - for ($i=0; $i<$num_rows_res; $i++) - { - $zeile=$i % 2; - $id=$db->db_result($erg_res,$i,"reservierung_id"); - $datum=$db->db_result($erg_res,$i,"datum"); - $titel=$db->db_result($erg_res,$i,"titel"); - $stunde=$db->db_result($erg_res,$i,"stunde"); - $ort_kurzbz=$db->db_result($erg_res,$i,"ort_kurzbz"); - $pers_uid=$db->db_result($erg_res,$i,"uid"); - $beschreibung=$db->db_result($erg_res,$i,"beschreibung"); - $insertamum=$db->db_result($erg_res,$i,"insertamum"); - $insertvon=$db->db_result($erg_res,$i,"insertvon"); - - $datum = $datum_obj->formatDatum($datum, 'd.m.Y'); - if($insertamum!='') - $insertamum = $datum_obj->formatDatum($insertamum, 'd.m.Y H:i:s'); - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - $z=$i-1; - if (($pers_uid==$uid) || ($insertvon==$uid) || $rechte->isBerechtigt('lehre/reservierung', null, 'suid')) - echo ''; - echo ''; - } - echo '
'.$p->t('global/datum').''.$p->t('global/titel').''.$p->t('global/stunde').''.$p->t('lvplan/raum').''.$p->t('global/person').''.$p->t('global/beschreibung').''.$p->t('global/aktion').'
'.$db->convert_html_chars($datum).''.$db->convert_html_chars($titel).''.$db->convert_html_chars($stunde).''.$db->convert_html_chars($ort_kurzbz).''.$db->convert_html_chars($pers_uid).''.$db->convert_html_chars($beschreibung).' Delete
'; - flush(); - } - } - else - echo ''.$p->t('lvplan/alleReservierungenAnzeigen').''; - ?> diff --git a/locale/de-AT/lvplan.php b/locale/de-AT/lvplan.php index 6f7d3b58c..d7510d341 100644 --- a/locale/de-AT/lvplan.php +++ b/locale/de-AT/lvplan.php @@ -23,7 +23,6 @@ $this->phrasen['lvplan/fehlerUndFeedback']='Feedback geben'; $this->phrasen['lvplan/lvKoordinationsstelle']='LV-Koordinationsstelle'; $this->phrasen['lvplan/reservierungen']='Reservierungen'; $this->phrasen['lvplan/reservierungWurdeGeloescht']='Reservierung wurde geloescht'; -$this->phrasen['lvplan/alleReservierungenAnzeigen']='Alle Reservierungen anzeigen'; $this->phrasen['lvplan/alleReservierungen']='Alle Reservierungen'; $this->phrasen['lvplan/zurReservierung']='Zur Reservierung'; $this->phrasen['lvplan/raum']='Raum'; diff --git a/locale/en-US/lvplan.php b/locale/en-US/lvplan.php index e40e1f9e0..ebab1ce85 100644 --- a/locale/en-US/lvplan.php +++ b/locale/en-US/lvplan.php @@ -23,7 +23,6 @@ $this->phrasen['lvplan/fehlerUndFeedback']='Send Feedback'; $this->phrasen['lvplan/lvKoordinationsstelle']='Course-Coordination Office'; $this->phrasen['lvplan/reservierungen']='Reservations'; $this->phrasen['lvplan/reservierungWurdeGeloescht'] = 'Reservation successfully deleted'; -$this->phrasen['lvplan/alleReservierungenAnzeigen']='Show all reservations'; $this->phrasen['lvplan/alleReservierungen']='All reservations'; $this->phrasen['lvplan/zurReservierung']='Reservation'; $this->phrasen['lvplan/raum']='Room'; diff --git a/locale/it-IT/lvplan.php b/locale/it-IT/lvplan.php index 026caf68e..4434bdbdd 100644 --- a/locale/it-IT/lvplan.php +++ b/locale/it-IT/lvplan.php @@ -2,7 +2,6 @@ $this->phrasen['lvplan/aktuelleKW']='numero di settimana attuale'; $this->phrasen['lvplan/alleRaeume']='tutte le sale'; $this->phrasen['lvplan/alleReservierungen']='tutte le prenotazioni'; -$this->phrasen['lvplan/alleReservierungenAnzeigen']='mostra tutte le prenotazioni'; $this->phrasen['lvplan/anleitungLVPlanSync']=''; $this->phrasen['lvplan/anzahlPersonen']=''; $this->phrasen['lvplan/bereitsReserviert']=''; From 19425b93f0229f058513d449cfa0d5b6269d33bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Fri, 5 Jul 2019 07:29:03 +0200 Subject: [PATCH 19/22] Employees can now also be assigned directly to Courses (for Elective Courses) --- rdf/benutzer.rdf.php | 41 ++++++++++++++++++++++++++++------------- 1 file changed, 28 insertions(+), 13 deletions(-) diff --git a/rdf/benutzer.rdf.php b/rdf/benutzer.rdf.php index 182ce7058..3bcd2ef64 100644 --- a/rdf/benutzer.rdf.php +++ b/rdf/benutzer.rdf.php @@ -40,8 +40,8 @@ $filter = filter_input(INPUT_GET,'filter'); if (mb_strlen($filter) < 3) die('Filter muss mindestens 3 Zeichen lang sein'); -$benutzer = new student(); -$benutzer->getTab($filter, 'nachname, vorname'); +$benutzer = new benutzer(); +$benutzer->search(array($filter)); $studiengang = new studiengang(); $studiengang->getAll(null, false); @@ -49,22 +49,37 @@ $studiengang->getAll(null, false); $oRdf->sendHeader(); $db = new basis_db(); -if(count($benutzer->result) > 0) +if (count($benutzer->result) > 0) { - $i=0; - foreach($benutzer->result as $row) + $i = 0; + foreach ($benutzer->result as $row) { - if(isset($studiengang->kuerzel_arr[$row->studiengang_kz])) - $stg = $studiengang->kuerzel_arr[$row->studiengang_kz]; + $stud = new student(); + if ($stud->load($row->uid)) + { + if (isset($studiengang->kuerzel_arr[$stud->studiengang_kz])) + { + $stg = $studiengang->kuerzel_arr[$stud->studiengang_kz]; + $semester = $stud->semester; + } + else + { + $stg = ''; + $semester = ''; + } + } else + { $stg = ''; + $semester = ''; + } - $i=$oRdf->newObjekt($i); - $oRdf->obj[$i]->setAttribut('uid',$row->uid,true); - $oRdf->obj[$i]->setAttribut('vorname',$row->vorname,true); - $oRdf->obj[$i]->setAttribut('nachname',$row->nachname,true); - $oRdf->obj[$i]->setAttribut('studiengang',$stg,true); - $oRdf->obj[$i]->setAttribut('semester',$row->semester,true); + $i = $oRdf->newObjekt($i); + $oRdf->obj[$i]->setAttribut('uid', $row->uid, true); + $oRdf->obj[$i]->setAttribut('vorname', $row->vorname, true); + $oRdf->obj[$i]->setAttribut('nachname', $row->nachname, true); + $oRdf->obj[$i]->setAttribut('studiengang', $stg, true); + $oRdf->obj[$i]->setAttribut('semester', $semester, true); $oRdf->addSequence($i); $i++; } From 96783da0139f4640458f5c5ee5f2cf3bc7a53cc4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Fri, 5 Jul 2019 16:12:27 +0200 Subject: [PATCH 20/22] Bugfix to get old Sabredav working with php7 --- include/sabredav/lib/Sabre/CalDAV/CalendarQueryValidator.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/sabredav/lib/Sabre/CalDAV/CalendarQueryValidator.php b/include/sabredav/lib/Sabre/CalDAV/CalendarQueryValidator.php index 494aed1a7..4b05e8ca9 100644 --- a/include/sabredav/lib/Sabre/CalDAV/CalendarQueryValidator.php +++ b/include/sabredav/lib/Sabre/CalDAV/CalendarQueryValidator.php @@ -59,7 +59,7 @@ class CalendarQueryValidator { foreach($filters as $filter) { - $isDefined = isset($parent->$filter['name']); + $isDefined = isset($parent->{$filter['name']}); if ($filter['is-not-defined']) { @@ -75,7 +75,7 @@ class CalendarQueryValidator { } if ($filter['time-range']) { - foreach($parent->$filter['name'] as $subComponent) { + foreach($parent->{$filter['name']} as $subComponent) { if ($this->validateTimeRange($subComponent, $filter['time-range']['start'], $filter['time-range']['end'])) { continue 2; } From 02693ed79088aaaae2540024c59b4a40f6d04f2d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Fri, 5 Jul 2019 16:28:58 +0200 Subject: [PATCH 21/22] Infotext im Tempus angepasst bei Lektoren mit Selbstverwalteter Pause (SVP) --- include/zeitaufzeichnung_gd.class.php | 1 + rdf/lehreinheit-lvplan.rdf.php | 38 ++++++++++++++++++++++++--- 2 files changed, 35 insertions(+), 4 deletions(-) diff --git a/include/zeitaufzeichnung_gd.class.php b/include/zeitaufzeichnung_gd.class.php index db678addb..b21bf0570 100644 --- a/include/zeitaufzeichnung_gd.class.php +++ b/include/zeitaufzeichnung_gd.class.php @@ -68,6 +68,7 @@ class zeitaufzeichnung_gd extends basis_db $this->updateamum = $row->updateamum; $this->updatevon = $row->updatevon; $this->selbstverwaltete_pause = $this->db_parse_bool($row->selbstverwaltete_pause); + return true; } else { diff --git a/rdf/lehreinheit-lvplan.rdf.php b/rdf/lehreinheit-lvplan.rdf.php index ece1f3128..948e2327b 100644 --- a/rdf/lehreinheit-lvplan.rdf.php +++ b/rdf/lehreinheit-lvplan.rdf.php @@ -37,6 +37,7 @@ require_once('../include/functions.inc.php'); require_once('../include/lehreinheit.class.php'); require_once('../include/notiz.class.php'); require_once('../include/mitarbeiter.class.php'); +require_once('../include/zeitaufzeichnung_gd.class.php'); $uid=get_uid(); $error_msg=''; @@ -175,6 +176,21 @@ if ($anz>0) break; } } + + $selbstverwaltete_pause = false; + foreach ($l->lektor_uid as $lktuid) + { + $gd = new zeitaufzeichnung_gd(); + if($gd->load($lktuid, $studiensemester)) + { + if ($gd->selbstverwaltete_pause) + { + $selbstverwaltete_pause = true; + break; + } + } + } + sort($l->lektor); foreach($l->lektor as $lv) $lektor.=$lv.' '; @@ -274,12 +290,26 @@ if ($anz>0) continue; } } + + $fixangestellt_info = ''; + if($fixangestellt) + { + if($selbstverwaltete_pause) + { + $fixangestellt_info = 'SVP'; + } + else + $fixangestellt_info = 'FIX'; + } + else + $fixangestellt_info = 'EXT'; + echo' - - '.$lvnr.' + + '.$lvnr.' '.$l->unr.' '.$lektor.' - '.($fixangestellt?'Fix':'Frei').' + '.$fixangestellt_info.' '.$l->lehrfach_id.' '.$l->stg_kz[0].' '.$l->fachbereich.' @@ -305,7 +335,7 @@ if ($anz>0) '.$lehrverband.' '.$anzahl_notizen.' '.$l->lehreinheit_id[0].' - + '; } } From 93a6652c5f3df9193cd5627080d020e7ad6ccf53 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Fri, 5 Jul 2019 17:07:06 +0200 Subject: [PATCH 22/22] Gradelist - Max-ECTS-Sum includes ECTS of assigned Courses without Grades --- application/controllers/person/Gradelist.php | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/application/controllers/person/Gradelist.php b/application/controllers/person/Gradelist.php index e1ef14792..230c7f67f 100644 --- a/application/controllers/person/Gradelist.php +++ b/application/controllers/person/Gradelist.php @@ -46,6 +46,9 @@ class Gradelist extends Auth_Controller $this->_grades[$row->note]['anmerkung'] = $row->anmerkung; $this->_grades[$row->note]['notenwert'] = $row->notenwert; } + $this->_grades['']['positiv'] = false; + $this->_grades['']['anmerkung'] = ''; + $this->_grades['']['notenwert'] = 0; } /** @@ -386,6 +389,15 @@ class Gradelist extends Auth_Controller 'sws' => $row['sws'] ); } + elseif (isset($row['zugeordnet']) && $row['zugeordnet'] == true && $row['lehrtyp_kurzbz']=='lv') + { + // ECTS und SWS mitzaehlen wenn die Person zugeordnet ist auch wenn noch keine Noten vorhanden ist. + $grades[] = array( + 'note' => '', + 'ects' => $row['ects'], + 'sws' => $row['sws'] + ); + } if (isset($row['childs'])) {