refactor(messages): course-bugs fixed, exam/* finished

This commit is contained in:
Winnie Ros 2021-03-30 13:22:13 +02:00
parent ee7f32f5cc
commit 607fb12fa4
48 changed files with 1199 additions and 1282 deletions

View File

@ -24,7 +24,6 @@ BtnParentCandidatesInfer: Unterstudiengangs-Zuordnung automatisch lernen
BtnParentCandidatesDeleteAll: Alle Unterstudiengangs-Beobachtungen löschen
BtnStandaloneCandidatesDeleteAll: Alle Einzelstudiengangs-Beobachtungen löschen
BtnStandaloneCandidatesDeleteRedundant: Redundante Einzelstudiengangs-Beobachtungen löschen
BtnLecInvAccept: Annehmen
BtnLecInvDecline: Ablehnen
BtnCorrInvAccept: Annehmen
@ -33,9 +32,14 @@ BtnSubmissionsAssign: Abgaben automatisch zuteilen
BtnSubmissionsAssignAll: Abgaben automatisch zuteilen
BtnAllocationCompute: Vergabe berechnen
BtnAllocationAccept: Vergabe akzeptieren
BtnAllocationRegister: Teilnahme registrieren
BtnAllocationRegistrationEdit: Teilnahme anpassen
BtnAllocationApply: Bewerben
BtnAllocationApplicationEdit: Bewerbung ersetzen
BtnAllocationApplicationRetract: Bewerbung zurückziehen
BtnAllocationApplicationRate: Bewerbung bewerten
BtnSystemMessageHide: Verstecken
BtnSystemMessageUnhide: Nicht mehr verstecken
BtnCommunicationSend: Senden
BtnCommunicationTest: Test-Nachricht verschicken
BtnAcceptApplications: Bewerbungen akzeptieren
@ -62,6 +66,14 @@ TableSubmissionGroup: Feste Abgabegruppe
TableNoSubmissionGroup: Keine feste Abgabegruppe
TableMatrikelNr: Matrikelnummer
TableSex: Geschlecht
TableSchool: Institut
TableCourse: Kurs
TableCourseMembers: Teilnehmer:innen
TableExamOccurrence: Termin/Raum
TableExamName: Name
TableExamTime: Termin
TableExamRegistration: Prüfungsanmeldung
TableExamResult: Prüfungsergebnis
#headings
HeadingLegal: Rechtliche Informationen
@ -72,18 +84,6 @@ HeadingProfileData: Persönliche Daten
HeadingSchoolList: Institute
HeadingAdminCrontab: Crontab
HeadingAdminTokens: Tokens ausstellen
HeadingAllocationAccept: Platzvergabe akzeptieren
HeadingAllocationCompute: Platzvergabe berechnen
HeadingAllocationInfo: Hinweise zum Ablauf einer Zentralanmeldung
AllocationPriorities: Zentrale Dringlichkeiten
AllocationUsers: Bewerber:innen
HeadingCourseExamOffice: Prüfungsbeauftragte
HeadingExamList: Prüfungen
HeadingExamOfficeFields: Fächer
HeadingExamOfficeUsers: Benutzer:innen
HeadingExternalExamList: Externe Prüfungen
HeadingExternalExamNew: Neue externe Prüfung
SheetPersonalisedFilesDownload: Personalisierte Dateien herunterladen
HeadingCorrectionsAssign: Zuteilung der Korrekturen
HeadingUserAdd: Benutzer:in anlegen
@ -154,18 +154,12 @@ SchoolHeading school@SchoolName: Übersicht #{school}
LectureStart: Beginn Vorlesungen
Course: Kurs
CourseNoCapacity: In diesem Kurs sind keine Plätze mehr frei.
TutorialNoCapacity: In dieser Übung sind keine Plätze mehr frei.
ExamOccurrenceNoCapacity: Zu diesem Termin/Raum sind keine Plätze mehr frei.
CourseNotEmpty: In diesem Kurs sind momentan Teilnehmer angemeldet.
CourseApply: Zum Kurs bewerben
CourseStudyFeature: Assoziiertes Studienfach
CourseStudyFeatureTip: Dient ausschließlich der Information der Kursverwalter
CourseStudyFeatureUpdated: Assoziiertes Studienfach geändert
CourseStudyFeatureNone: Kein assoziiertes Studienfach
FFSheetName: Name
TermCourseListHeading tid@TermId: Kursübersicht #{tid}
TermSchoolCourseListHeading tid@TermId school@SchoolName: Kursübersicht #{tid} für #{school}
@ -174,58 +168,22 @@ TermSchoolCourseListTitle tid@TermId school@SchoolName: Kurse #{tid} für #{scho
CourseNewHeading: Neuen Kurs anlegen
CourseEditHeading tid@TermId ssh@SchoolId csh@CourseShorthand: Kurs #{tid}-#{ssh}-#{csh} editieren
CourseMembers: Teilnehmer
CourseMembersCount n@Int: #{n}
CourseMembersCountLimited n@Int max@Int: #{n}/#{max}
TutorialDeregisterUntilTip: Abmeldung ist ab "Anmeldungen von" bis zu diesem Zeitpunkt erlaubt. Die Abmeldung darf auch unbegrenzt erlaubt bleiben.
CourseFilterNone: —
BoolIrrelevant: —
CourseDeleteQuestion: Wollen Sie den unten aufgeführten Kurs wirklich löschen?
CourseDeleted: Kurs gelöscht
CourseUserRegister: Zum Kurs anmelden
CourseUserDeregister: Vom Kurs abmelden
CourseUserRegisterTutorial: Zu einem Tutorium anmelden
CourseUserRegisterExam: Zu einer Prüfung anmelden
CourseUserSendMail: Mitteilung verschicken
TutorialUserDeregister: Vom Tutorium Abmelden
TutorialUserSendMail: Mitteilung verschicken
TutorialUsersDeregistered count@Int64: #{show count} Tutorium-Teilnehmer abgemeldet
CourseAllocationCourseAcceptsSubstitutesUntil: Akzeptiert Nachrücker bis
CourseAllocationCourseAcceptsSubstitutesNever: Akzeptiert keine Nachrücker
CourseAllocationCourseParticipants: Teilnehmer
CourseAllocationApplicationInstructionsApplication: Anweisungen zur Bewerbung
CourseAllocationApplicationTemplateApplication: Bewerbungsvorlage(n)
CourseApplication: Bewerbung
CourseApplicationExists: Sie haben sich bereits für diesen Kurs beworben
CourseApplicationInvalidAction: Angegebene Aktion kann nicht durchgeführt werden
CourseApplicationCreated csh@CourseShorthand: Erfolgreich zu #{csh} beworben
CourseApplicationEdited csh@CourseShorthand: Bewerbung zu #{csh} erfolgreich angepasst
CourseApplicationNotEdited csh@CourseShorthand: Bewerbung zu #{csh} hat sich nicht verändert
CourseApplicationRated: Bewertung erfolgreich angepasst
CourseApplicationRatingDeleted: Bewertung erfolgreich entfernt
CourseApplicationDeleted csh@CourseShorthand: Bewerbung zu #{csh} erfolgreich zurückgezogen
CourseRegistrationDeleteToEdit: Um Ihre Anmeldungsdaten zu editieren müssen Sie sich zunächst ab- und dann erneut anmelden.
CourseLoginToApply: Um sich zum Kurz zu bewerben müssen Sie sich zunächst in Uni2work anmelden
CourseLoginToRegister: Um sich zum Kurs anzumelden müssen Sie zunächst in Uni2work anmelden
CourseAllApplicationsArchiveName tid@TermId ssh@SchoolId csh@CourseShorthand: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase csh}-bewerbungen
CourseAssistant: Assistent
TutorialRegisterFromTip: Ohne Datum ist keine eigenständige Anmeldung von Studierenden erlaubt.
TutorialRegisterToTip: Darf auch unbegrenzt offen bleiben
School: Institut
NoCourseDescription: Zu diesem Kurs ist keine Beschreibung verfügbar.
Sheet: Blatt
SheetList tid@TermId ssh@SchoolId csh@CourseShorthand: #{tid}-#{ssh}-#{csh} Übersicht Übungsblätter
SheetNewHeading tid@TermId ssh@SchoolId csh@CourseShorthand: #{tid}-#{ssh}-#{csh} Neues Übungsblatt anlegen
@ -408,7 +366,6 @@ UnauthorizedAllocationLecturer: Sie sind nicht als Veranstalter für eine Verans
UnauthorizedCorrector: Sie sind nicht als Korrektor für diese Veranstaltung eingetragen.
UnauthorizedSheetCorrector: Sie sind nicht als Korrektor für dieses Übungsblatt eingetragen.
UnauthorizedExamCorrector: Sie sind nicht als Korrektor für diese Prüfung eingetragen.
UnauthorizedExamCorrectorGrade: Sie haben nicht die Berechtigung für diese Prüfung Gesamtergebnisse einzutragen.
UnauthorizedCorrectorAny: Sie sind nicht als Korrektor für eine Veranstaltung eingetragen.
UnauthorizedRegistered: Sie sind nicht als Teilnehmer für diese Veranstaltung registriert.
UnauthorizedRegisteredExam: Sie sind nicht als Teilnehmer für diese Prüfung registriert.
@ -523,7 +480,7 @@ LegalHeading: Rechtliche Informationen
SystemMessageHeading: Uni2work Statusmeldung
SystemMessageListHeading: Uni2work Statusmeldungen
NotificationSettingsHeading displayName@Text: Benachrichtigungs-Einstellungen für #{displayName}
TokensLastReset: Tokens zuletzt invalidiert
TokensResetSuccess: Authorisierungs-Tokens invalidiert
NewsOpenAllocations: Offene Zentralanmeldungen
@ -622,9 +579,7 @@ HasCorrector: Korrektor zugeteilt
AssignedTime: Zuteilung
AchievedBonusPoints: Erreichte Bonuspunkte
AchievedNormalPoints: Erreichte Punkte
AchievedPoints: Erreichte Punkte
AchievedPassPoints: Erreichte Punkte zum Bestehen
AchievedPasses: Bestandene Blätter
PassAchievedOf points@Points passingPoints@Points maxPoints@Points: #{points} von #{maxPoints} (Bestanden ab #{passingPoints})
PassedResult: Ergebnis
Passed: Bestanden
@ -990,14 +945,8 @@ MailSubjectCorrectorInvitation tid@TermId ssh@SchoolId csh@CourseShorthand shn@S
MailSubjectTutorInvitation tid@TermId ssh@SchoolId csh@CourseShorthand tutn@TutorialName: [#{tid}-#{ssh}-#{csh}] Einladung zum Tutor für #{tutn}
MailSubjectExamCorrectorInvitation tid@TermId ssh@SchoolId csh@CourseShorthand examn@ExamName: [#{tid}-#{ssh}-#{csh}] Einladung zum Korrektor für #{examn}
MailSubjectExamRegistrationInvitation tid@TermId ssh@SchoolId csh@CourseShorthand examn@ExamName: [#{tid}-#{ssh}-#{csh}] Einladung zum Teilnehmer für #{examn}
MailSubjectSubmissionUserInvitation tid@TermId ssh@SchoolId csh@CourseShorthand shn@SheetName: [#{tid}-#{ssh}-#{csh}] Einladung zu einer Abgabe für #{shn}
MailSubjectExamOfficeUserInvitation displayName@Text: Berücksichtigung von Prüfungsleistungen in Uni2work
MailSubjectPasswordReset: Uni2work-Passwort ändern bzw. setzen
SheetGrading: Bewertung
@ -1167,19 +1116,8 @@ ErrMsgHeading: Fehlermeldung entschlüsseln
InvalidRoute: Konnte URL nicht interpretieren
ExternalExamEdit coursen@CourseName examn@ExamName: Bearbeiten: #{coursen}, #{examn}
ExternalExamGrades coursen@CourseName examn@ExamName: Prüfungsleistungen: #{coursen}, #{examn}
ExternalExamCorrectHeading coursen@CourseName examn@ExamName: Prüfungsleistungen für #{coursen}, #{examn} eintragen
ExternalExamUsers coursen@CourseName examn@ExamName: Teilnehmer: #{coursen}, #{examn}
TitleMetrics: Metriken
DeleteCopyStringIfSure n@Int: Wenn Sie sich sicher sind, dass Sie #{pluralDE n "das obige Objekt" "obige Objekte"} unwiderbringlich löschen möchten, schreiben Sie bitte zunächst den angezeigten Text ab.
DeletePressButtonIfSure n@Int: Wenn Sie sich sicher sind, dass Sie #{pluralDE n "das obige Objekt" "obige Objekte"} unwiderbringlich löschen möchten, bestätigen Sie dies bitte durch Drücken des untigen Knopfes.
DeleteConfirmation: Bestätigung
@ -1236,8 +1174,6 @@ MultiUserFieldInvitationExplanationAlways: Es wird an alle Adressen, die Sie hie
LecturerInvitationAccepted lType@Text csh@CourseShorthand: Sie wurden als #{lType} für #{csh} eingetragen
LecturerInvitationDeclined csh@CourseShorthand: Sie haben die Einladung, Kursverwalter für #{csh} zu werden, abgelehnt
CourseLecInviteHeading courseName@Text: Einladung zum Kursverwalter für #{courseName}
CourseLecInviteExplanation: Sie wurden eingeladen, Verwalter für einen Kurs zu sein.
CorrectorInvitationAccepted shn@SheetName: Sie wurden als Korrektor für #{shn} eingetragen
CorrectorInvitationDeclined shn@SheetName: Sie haben die Einladung, Korrektor für #{shn} zu werden, abgelehnt
@ -1249,48 +1185,11 @@ TutorInvitationDeclined tutn@TutorialName: Sie haben die Einladung, Tutor für #
TutorInviteHeading tutn@TutorialName: Einladung zum Tutor für #{tutn}
TutorInviteExplanation: Sie wurden eingeladen, Tutor zu sein.
ExamCorrectorInvitationAccepted examn@ExamName: Sie wurden als Korrektor für #{examn} eingetragen
ExamCorrectorInvitationDeclined examn@ExamName: Sie haben die Einladung, Korrektor für #{examn} zu werden, abgelehnt
ExamCorrectorInviteHeading examn@ExamName: Einladung zum Korrektor für #{examn}
ExamCorrectorInviteExplanation: Sie wurden eingeladen, Prüfungs-Korrektor zu sein.
ExamRegistrationInvitationAccepted examn@ExamName: Sie wurden als Teilnehmer für #{examn} eingetragen
ExamRegistrationInvitationDeclined examn@ExamName: Sie haben die Einladung, Teilnehmer für #{examn} zu werden, abgelehnt
ExamRegistrationInviteHeading examn@ExamName: Einladung zum Teilnehmer für #{examn}
ExamRegistrationInviteExplanation: Sie wurden eingeladen, Prüfungsteilnehmer zu sein.
ExamCorrectHeading examname@Text: Prüfungsergebnisse für #{examname} eintragen
ExamCorrectExamResultDelete: Prüfungsergebnis löschen
ExamCorrectExamResultNone: Keine Änderung
ExamCorrectUserCandidatesMore: und weitere
ExamCorrectHeadDate: Zeit
ExamCorrectHeadParticipant: Teilnehmer
ExamCorrectHeadPart exampartnum@ExamPartNumber: #{exampartnum}
ExamCorrectHeadPartName exampartname@ExamPartName: #{exampartname}
ExamCorrectHeadStatus: Status
ExamCorrectButtonSend: Senden
ExamCorrectErrorNeedleTooShort: Dieser Identifikator ist zu kurz.
ExamCorrectErrorMultipleMatchingParticipants: Dem Identifikator konnten mehrere Prüfungsteilnehmer zugeordnet werden.
ExamCorrectErrorNoMatchingParticipants: Dem Identifikator konnte kein Prüfungsteilnehmer zugeordnet werden.
ExamCorrectErrorPartResultOutOfBounds examPartNumber@ExamPartNumber: Prüfungsergebnis für Teil #{examPartNumber} ist nicht größer Null.
ExamCorrectErrorPartResultOutOfBoundsMax examPartNumber@ExamPartNumber maxPoints@Points: Prüfungsergebnis für Teil #{examPartNumber} liegt nicht zwischen 0 und #{maxPoints}.
ExternalExamCorrectErrorMultipleMatchingUsers: Dem Identifikator konnten mehrere Studierende zugeordnet werden.
ExternalExamCorrectErrorNoMatchingUsers: Dem Identifikator konnte kein Studierender zugeordnet werden.
SubmissionUserInvitationAccepted shn@SheetName: Sie wurden als Mitabgebende(r) für eine Abgabe zu #{shn} eingetragen
SubmissionUserInvitationDeclined shn@SheetName: Sie haben die Einladung, Mitabgebende(r) für #{shn} zu werden, abgelehnt
SubmissionUserInviteHeading shn@SheetName: Einladung zu einer Abgabe für #{shn}
SubmissionUserInviteExplanation: Sie wurden eingeladen, Mitabgebende(r) bei einer Abgabe zu sein.
ExamOfficeUserInviteHeading displayName@Text: Zugriff auf Ihre Prüfungsleistungen durch #{displayName}
ExamOfficeUserInviteExplanation: Um Ihre Prüfungsleistungen ordnungsgemäß anrechnen zu können (z.B. im finalen Transcript of Records für Erasmus-Studierende) werden sie eingeladen der hierfür zuständigen Stelle Einsicht zu gewähren.
ExamOfficeUserInvitationAccepted: Einsicht erfolgreich gewährt
ExamOfficeUserEmail: E-Mail
InvitationAction: Aktion
InvitationActionTip: Abgelehnte Einladungen können nicht mehr angenommen werden
InvitationMissingRestrictions: Authorisierungs-Token fehlen benötigte Daten
@ -1387,72 +1286,24 @@ HealthActiveJobExecutors: Anteil der job-workers, die neue Befehle annehmen
CourseParticipants n@Int: Derzeit #{n} angemeldete Kursteilnehmer
CourseParticipant: Teilnehmer:in
CourseParticipantsRegisteredWithoutField n@Int: #{n} Teilnehmer #{pluralDE n "wurde ohne assoziiertes Studienfach" "wurden ohne assoziierte Studienfächer"} angemeldet, da #{pluralDE n "kein eindeutiges Hauptfach bestimmt werden konnte" "keine eindeutigen Hauptfächer bestimmt werden konnten"}
ExamRegistrationAndCourseParticipantsRegistered n@Int: #{n} Teilnehmer #{pluralDE n "wurde" "wurden"} sowohl zum Kurs, als auch zur Prüfung angemeldet
ExamRegistrationNotRegisteredWithoutCourse n@Int: #{n} Teilnehmer #{pluralDE n "wurde" "wurden"} nicht zur Prüfung angemeldet, da #{pluralDE n "er" "sie"} nicht zum Kurs angemeldet #{pluralDE n "ist" "sind"}
ExamRegistrationRegisteredWithoutField n@Int: #{n} Teilnehmer #{pluralDE n "wurde" "wurden"} sowohl zur Prüfung, als auch #{pluralDE n "ohne assoziiertes Studienfach" "ohne assoziierte Studienfächer"} zum Kurs angemeldet, da #{pluralDE n "kein eindeutiges Hauptfach bestimmt werden konnte" "keine eindeutigen Hauptfächer bestimmt werden konnten"}
ExamRegistrationParticipantsRegistered n@Int: #{n} Teilnehmer #{pluralDE n "wurde" "wurden"} zur Prüfung angemeldet
ExamRegistrationInviteDeadline: Einladung nur gültig bis
ExamRegistrationEnlistDirectly: Bekannte Nutzer sofort als Teilnehmer eintragen
ExamRegistrationEnlistDirectlyTip: Sollen, wenn manche der E-Mail-Adressen bereits in Uni2work mit Nutzern assoziiert sind, jene Nutzer direkt zur Prüfung hinzugefügt werden? Ansonsten werden Einladung an alle E-Mail-Adressen (nicht nur unbekannte) versandt, die die Nutzer zunächst akzeptieren müssen um Prüfungsteilnehmer zu werden.
ExamRegistrationRegisterCourse: Nutzer auch zum Kurs anmelden
ExamRegistrationRegisterCourseTip: Nutzer, die keine Kursteilnehmer sind, werden sonst nicht zur Prüfung angemeldet.
ExamRegistrationInviteField: Einzuladende E-Mail-Adressen
ExamParticipantsRegisterHeading: Prüfungsteilnehmer hinzufügen
ExamParticipantsInvited n@Int: #{n} #{pluralDE n "Einladung" "Einladungen"} per E-Mail verschickt
ExamName: Name
ExamRoom: Raum
ExamTime: Termin
ExamsHeading: Prüfungen
ExamNameTip: Muss innerhalb der Veranstaltung eindeutig sein
ExamStart: Beginn
ExamEnd: Ende
ExamDescription: Beschreibung
ExamVisibleFrom: Sichtbar ab
ExamVisibleFromTip: Ohne Datum nie sichtbar und keine Anmeldung möglich
ExamRegisterFrom: Anmeldung ab
ExamRegisterFromTip: Zeitpunkt ab dem sich Kursteilnehmer selbständig zur Prüfung anmelden können; ohne Datum ist keine Anmeldung möglich
ExamRegisterTo: Anmeldung bis
ExamDeregisterUntil: Abmeldung bis
ExamPublishOccurrenceAssignments: Termin- bzw. Raumzuteilung den Teilnehmern mitteilen um
ExamPublishOccurrenceAssignmentsTip: Ab diesem Zeitpunkt können Teilnehmer einsehen zu welcher Teilprüfung bzw. welchen Raum sie angemeldet sind
ExamPublishOccurrenceAssignmentsParticipant: Termin- bzw. Raumzuteilung einsehbar ab
ExamFinished: Ergebnisse sichtbar ab
ExamFinishedOffice: Noten bekannt gegeben
ExamFinishedParticipant: Bewertung voraussichtlich abgeschlossen
ExamFinishedTip: Zeitpunkt zu dem Prüfungergebnisse den Teilnehmern gemeldet werden; ohne Datum werden die Prüfungsergebnisse zunächst nie gemeldet
ExamFinishedTipCloseOnFinished: Zeitpunkt zu dem Prüfungergebnisse den Teilnehmern und den Prüfungsverwaltungen gemeldet werden; ohne Datum werden die Prüfungsergebnisse zunächst nie gemeldet
ExamClosed: Noten gemeldet
ExamClosedTip: Prüfungsbeauftraget, die im System Noten einsehen, werden zu diesem Zeitpunkt benachrichtigt und danach bei Änderungen informiert
ExamGradingMode: Bewertungsmodus
ExamGradingModeTip: In welcher Form werden Prüfungsleistungen für diese Prüfung eingetragen?
ExamPublicStatistics: Statistik veröffentlichen
ExamPublicStatisticsTip: Soll die automatisch berechnete statistische Auswertung auch den Teilnehmern angezeigt werden, sobald diese ihre Noten einsehen können?
ExamAutomaticGrading: Automatische Notenberechnung
ExamAutomaticGradingTip: Sollen die Gesamtleistungen der Teilnehmer automatisch aus den in den einzelnen Teilprüfungen erreichten Leistungen berechnet werden? Etwaige Bonuspunkte werden dabei berücksichtigt. Manuelles Überschreiben der Gesamtleistung ist dennoch möglich.
ExamGradingRule: Notenberechnung
ExamGradingManual': Keine automatische Berechnung
UtilExamClosed: Noten gemeldet
UtilExamGradingRule: Notenberechnung
ExamGradingKey': Nach Schlüssel
ExamGradingKey: Notenschlüssel
ExamGradingKeyTip: Die Grenzen beziehen sich auf die effektive Maximalpunktzahl, nachdem etwaige Bonuspunkte aus dem Übungsbetrieb angerechnet und die Ergebnise der Teilprüfungen mit ihrem Gewicht multipliziert wurden
Points: Punkte
PointsMustBeNonNegative: Punktegrenzen dürfen nicht negativ sein
PointsMustBeMonotonic: Punktegrenzen müssen aufsteigend sein
GradingFrom: Ab
ExamNew: Neue Prüfung
ExamBonus: Bonuspunkte-System
ExamBonusRule: Prüfungsbonus aus Übungsbetrieb
ExamNoBonus': Kein automatischer Bonus
UtilExamBonusRule: Prüfungsbonus aus Übungsbetrieb
ExamBonusPoints': Umrechnung von Übungspunkten
ExamBonusManual': Manuelle Berechnung
ExamRegisterForOccurrence: Anmeldung zur Prüfung erfolgt durch Anmeldung zu einem Termin/Raum
ExamBonusAchieved: Bonuspunkte
ExamEditHeading examn@ExamName: #{examn} bearbeiten
ExamBonusMaxPoints: Maximal erreichbare Prüfungs-Bonuspunkte
ExamBonusMaxPointsTip: Bonuspunkte werden, anhand der erreichten Übungspunkte bzw. der Anzahl von bestandenen Übungsblättern, linear zwischen null und der angegebenen Schranke interpoliert.
ExamBonusMaxPointsNonPositive: Maximaler Prüfungsbonus muss positiv und größer null sein
@ -1463,52 +1314,11 @@ ExamBonusRoundTip: Bonuspunkte werden kaufmännisch auf ein Vielfaches der angeg
ExamAutomaticOccurrenceAssignment: Termin- bzw. Raumzuteilung
ExamAutomaticOccurrenceAssignmentTip: Sollen Prüfungsteilnehmer automatisch auf die zur Verfügung stehenden Räume bzw. Termine verteilt werden, sich selbstständig einen Raum bzw. Termin aussuchen dürfen oder manuell durch Kursverwalter zugeteilt werden? Die automatische Verteilung muss von einem Kursverwalter ausgelöst werden und geschieht nicht mit Ablauf einer Frist o.Ä.. Manuelle Umverteilung bzw. vorheriges Festlegen von Zuteilungen einzelner Teilnehmer ist somit immer möglich.
ExamOccurrenceRule: Verfahren
ExamOccurrenceRuleParticipant: Termin- bzw. Raumzuteilungsverfahren
ExamRoomManual': Keine automatische bzw. selbstständige Zuteilung
ExamRoomSurname': Nach Nachname
ExamRoomMatriculation': Nach Matrikelnummer
ExamRoomRandom': Zufällig pro Teilnehmer
ExamRoomFifo': Auswahl durch Teilnehmer bei Anmeldung
ExamOccurrenceRoomIsUnset: —
ExamOccurrenceRoomIsHidden: Raum wird nur Teilnehmern angezeigt
ExamOccurrence: Termin/Raum
ExamNoOccurrence: Kein Termin/Raum
ExamNoSuchOccurrence: Termin/Raum existiert nicht (mehr)
ExamOccurrences: Termine
ExamRooms: Räume
ExamTimes: Termine
ExamRoomRoom: Raum
ExamRoomRoomHidden: Raum nur für Angemeldete
ExamRoomRoomHiddenTip: Soll der Raum nur zu diesem Termin/Raum angemeldeten Prüfungsteilnehmern angezeigt werden?
ExamRoomAlreadyExists: Prüfung ist bereits eingetragen
ExamRoomName: Interne Bezeichnung
ExamRoomCapacity: Kapazität
ExamRoomCapacityNegative: Kapazität darf nicht negativ sein
ExamRoomTime: Termin
ExamRoomStart: Beginn
ExamRoomEnd: Ende
ExamRoomDescription: Beschreibung
ExamTimeTip: Nur zur Information der Studierenden, die tatsächliche Zeitangabe erfolgt pro Prüfungstermin/Raum
ExamRoomAssigned: Zugeteilt
ExamRoomRegistered: Anmeldung
ExamStaff: Prüfer/Verantwortliche Hochschullehrer
ExamStaffTip: Geben Sie bitte in jedem Fall einen Namen an, der den Prüfer/Veranstalter/Verantwortlichen Hochschullehrer eindeutig identifiziert! Sollte der Name des Prüfers allein womöglich nicht eindeutig sein, so geben Sie bitte eindeutig identifizierende Zusatzinfos, wie beispielsweise den Lehrstuhl bzw. die LFE o.Ä., an.
ExamStaffRequired: „Prüfer/Verantwortilche Hochschullehrer” muss angegeben werden
ExamExamOfficeSchools: Zusätzliche Institute
ExamExamOfficeSchoolsTip: Prüfungsbeauftragte von Instituten, die Sie hier angeben, erhalten im System (zusätzlich zum primären Institut des zugehörigen Kurses) volle Einsicht in sämtliche für diese Prüfung hinterlegten Leistungen, unabhängig von den Studiendaten der Teilnehmer.
NewsExamOccurrenceRoomIsUnset: —
NewsExamOccurrenceRoomIsHidden: Raum wird nur Teilnehmern angezeigt
ExamOccurrenceStart: Prüfungsbeginn
ExamFormTimes: Zeiten
ExamFormOccurrences: Prüfungstermine/Räume
ExamFormAutomaticFunctions: Automatische Funktionen
ExamFormCorrection: Korrektur
ExamFormParts: Teile
ExamFormMode: Ausgestaltung der Prüfung
ExamFormGrades: Prüfungsleistungen
ExamModeFormNone: Keine Angabe
ExamModeFormCustom: Benutzerdefiniert
ExamModeFormAids: Erlaubte Hilfsmittel
@ -1517,13 +1327,6 @@ ExamModeFormSynchronicity: Synchron/Asynchron
ExamModeFormRequiredEquipment: Erforderliche Hilfsmittel
ExamModeFormRequiredEquipmentIdentificationTip: Es wird stets ein Hinweis angezeigt, dass Teilnehmer sich ausweisen können müssen.
ExamShowAids: Erlaubte Hilfsmittel
ExamShowOnline: Online/Offline
ExamShowSynchronicity: Synchron/Asynchron
ExamShowRequiredEquipment: Erforderliche Hilfsmittel
ExamShowRequiredEquipmentNoneSet: Keine Angabe durch die Kursverwalter
ExamShowIdentificationRequired: Prüfungsteilnehmer müssen sich ausweisen können. Halten Sie dafür einen amtlichen Lichtbildausweis (Personalausweis, Reisepass, Aufenthaltstitel) und Ihren Studierendenausweis bereit.
ExamOpenBook: Open Book
ExamClosedBook: Closed Book
@ -1541,107 +1344,23 @@ ExamRequiredEquipmentCalculatorPaperPen: Stift, Papier & Taschenrechner
ExamRequiredEquipmentWebcamMicrophoneInternet: Webcam & Mikrophon
ExamRequiredEquipmentMicrophoneInternet: Mikrophon
ExamCorrectors: Korrektoren
ExamCorrectorsTip: Hier eingetragene Korrektoren können zwischen Beginn der Prüfung und "Bewertung abgeschlossen ab" Ergebnisse für alle Teilprüfungen und alle Teilnehmer im System hinterlegen.
ExamCorrectorAlreadyAdded: Ein Korrektor mit dieser E-Mail ist bereits für diese Prüfung eingetragen
ExamCorrectorEmail: E-Mail
ExamPart: Teilprüfung/Aufgabe
ExamParts: Teilprüfungen/Aufgaben
ExamPartWeightNegative: Gewicht aller Teilprüfungen muss größer oder gleich Null sein
ExamPartAlreadyExists: Teilprüfung mit diesem Namen existiert bereits
ExamPartNumber: Nummer
ExamPartNumbered examPartNumber@ExamPartNumber: Teil #{view _ExamPartNumber examPartNumber}
ExamPartNumberTip: Wird als interne Bezeichnung z.B. bei CSV-Export verwendet
ExamPartName: Titel
ExamPartNameTip: Wird den Studierenden angezeigt
ExamPartMaxPoints: Maximalpunktzahl
ExamPartWeight: Gewichtung
ExamPartWeightTip: Wird vor Anzeige oder automatischen Notenberechnung mit der erreichten Punktzahl und der Maximalpunktzahl multipliziert; Änderungen hier passen also auch bestehende Korrekturergebnisse an (derart geänderte Noten müssen erneut manuell übernommen werden)
ExamPartResultPoints: Erreichte Punkte
ExamPartSheets: Übungsblätter
ExamPartsFrom: Teile anzeigen ab
ExamPartsFromTip: Ab dem gegebenen Zeitpunkt wird die Liste von Prüfungsteilen/Aufgaben veröffentlicht, nicht jedoch die jeweilige Maximalpunktzahl. Ohne Zeitpunkt wird die Liste ab "Ergebnisse sichtbar ab" angezeigt.
ExamNameTaken exam@ExamName: Es existiert bereits eine Prüfung mit Namen #{exam}
ExamCreated exam@ExamName: #{exam} erfolgreich angelegt
ExamEdited exam@ExamName: #{exam} erfolgreich bearbeitet
ExamNoShow: Nicht erschienen
ExamVoided: Entwertet
ExamBonusManualParticipants: Von den Kursverwaltern manuell berechnet
ExamBonusPoints possible@Points: Maximal #{showFixed True possible} Prüfungspunkte
ExamBonusPointsPassed possible@Points: Maximal #{showFixed True possible} Prüfungspunkte, falls die Prüfung auch ohne Bonus bereits bestanden ist
ExamPassed: Bestanden
ExamNotPassed: Nicht bestanden
ExamResult: Prüfungsergebnis
ExamRegisteredSuccess exam@ExamName: Erfolgreich zur Prüfung #{exam} angemeldet
ExamDeregisteredSuccess exam@ExamName: Erfolgreich von der Prüfung #{exam} abgemeldet
ExamRegistered: Zur Prüfung angemeldet
ExamNotRegistered: Nicht zur Prüfung angemeldet
ExamRegistration: Prüfungsanmeldung
ExamLoginToRegister: Um sich zum Kurs anzumelden müssen Sie zunächst in Uni2work anmelden
NewsExamRegistered: Zur Prüfung angemeldet
NewsExamNotRegistered: Nicht zur Prüfung angemeldet
ExamRegistrationTime: Angemeldet seit
ExamRegisterToMustBeAfterRegisterFrom: "Anmeldung ab" muss vor "Anmeldung bis" liegen
ExamDeregisterUntilMustBeAfterRegisterFrom: "Abmeldung bis" muss nach "Anmeldung bis" liegen
ExamStartMustBeAfterPublishOccurrenceAssignments: Beginn muss nach Veröffentlichung der Termin- bzw. Raumzuordnung liegen
ExamEndMustBeAfterStart: Beginn der Prüfung muss vor ihrem Ende liegen
ExamFinishedMustBeAfterEnd: "Ergebnisse sichtbar ab" muss nach Ende liegen
ExamFinishedMustBeAfterStart: "Ergebnisse sichtbar ab" muss nach Beginn liegen
ExamClosedMustBeAfterFinished: "Noten stehen fest ab" muss nach "Ergebnisse sichtbar ab" liegen
ExamClosedMustBeAfterStart: "Noten stehen fest ab" muss nach Beginn liegen
ExamClosedMustBeAfterEnd: "Noten stehen fest ab" muss nach Ende liegen
ExamRegistrationMustFollowSchoolSeparationFromStart dayCount@Int: Nach Regeln des Instituts #{pluralDE dayCount "muss" "müssen"} zwischen "Anmeldung ab" und "Beginn" mindestens #{dayCount} #{pluralDE dayCount "Tag" "Tage"} liegen.
ExamRegistrationMustFollowSchoolDuration dayCount@Int: Nach Regeln des Instituts #{pluralDE dayCount "muss" "müssen"} zwischen "Anmeldung ab" und "Anmeldung bis" mindestens #{dayCount} #{pluralDE dayCount "Tag" "Tage"} liegen.
ExamModeRequiredForRegistration: Nach Regeln des Institus muss die "Ausgestaltung der Prüfung" vollständig angegeben sein, bevor "Anmeldung ab" festgelegt werden kann.
ExamModeSchoolDiscouraged: Nach Regeln des Instituts wird von der angegebenen "Ausgestaltung der Prüfung" abgeraten
ExamPartsFromMustBeBeforeFinished: "Teile anzeigen ab" muss vor "Ergebnisse sichtbar ab" liegen
ExamOccurrenceEndMustBeAfterStart eoName@ExamOccurrenceName: Beginn des Termins #{eoName} muss vor seinem Ende liegen
ExamOccurrenceStartMustBeAfterExamStart eoName@ExamOccurrenceName: Beginn des Termins #{eoName} muss nach Beginn der Prüfung liegen
ExamOccurrenceEndMustBeBeforeExamEnd eoName@ExamOccurrenceName: Ende des Termins #{eoName} liegt nach dem Ende der Prüfung
ExamOccurrenceDuplicate eoRoom@Text eoRange@Text: Raum #{eoRoom}, Termin #{eoRange} kommt mehrfach mit der selben Beschreibung vor
ExamOccurrenceDuplicateName eoName@ExamOccurrenceName: Interne Terminbezeichnung #{eoName} kommt mehrfach vor
ExamOccurrenceCannotBeDeletedDueToRegistrations eoName@ExamOccurrenceName: Termin #{eoName} kann nicht gelöscht werden, da noch Teilnehmer diesem Termin zugewiesen sind. Über die Liste von Prüfungsteilnehmern können Sie zunächst die entsprechenden Terminzuweisungen entfernen.
ExamPartCannotBeDeletedDueToResults exampartnum@ExamPartNumber: Teil #{exampartnum} kann nicht gelöscht werden, da bereits Prüfungsergebnisse für diesen Teil eingetragen wurden.
ExamPartCannotBeDeletedDueToSheetReference exampartnum@ExamPartNumber sheetName@SheetName: Teil #{exampartnum} kann nicht gelöscht werden, da Übungsblatt #{sheetName} den Bewertungsmodus „als Prüfungsaufgabe“ trägt.
VersionHistory: Versionsgeschichte
KnownBugs: Bekannte Bugs
ImplementationDetails: Implementierung
ExamSynchronised: Synchronisiert
ExamUsersHeading: Prüfungsteilnehmer
ExamUserDeregister: Teilnehmer von Prüfung abmelden
ExamUserAssignOccurrence: Termin/Raum zuweisen
ExamUserAcceptComputedResult: Berechnetes Prüfungsergebnis übernehmen
ExamUserResetToComputedResult: Prüfungsergebnis zurücksetzen
ExamUserResetBonus: Auch Bonuspunkte zurücksetzen
ExamUserResetParts: Auch Teilergebnisse zurücksetzen
ExamUserSetPartResult: Teilergebnis setzen
ExamUserSetBonus: Bonuspunkte setzen
ExamUserSetResult: Prüfungsergebnis setzen
ExamUsersDeregistered count@Int64: #{show count} Teilnehmer von der Prüfung abgemeldet
ExamUsersOccurrenceUpdated count@Int64: Termin/Raum für #{show count} Teilnehmer gesetzt
ExamUsersResultsAccepted count@Int64: Prüfungsergebnis für #{show count} Teilnehmer übernommen
ExamUsersResultsReset count@Int64: Prüfungsergebnis für #{show count} Teilnehmer zurückgesetzt
ExamUsersPartResultsSet count@Int64: Teilprüfungsergebnis für #{show count} Teilnehmer angepasst
ExamUsersBonusSet count@Int64: Bonuspunkte für #{show count} Teilnehmer angepasst
ExamUsersResultSet count@Int64: Prüfungsergebnis für #{show count} Teilnehmer angepasst
ExamUsersExamDataRequiresRegistration: Wenn Prüfungsbezogene Daten (Teil-/Ergebnis, Termin/Raum, Bonus) gesetzt bzw. angepasst werden sollen, muss der jeweilige Teilnehmer zur Prüfung angemeldet sein bzw. werden.
CourseUserSetSubmissionGroup: Feste Abgabegruppe setzen/entfernen
ExamUserSynchronised: Synchronisiert
ExamUserSyncOfficeName: Name
ExamUserSyncTime: Zeitpunkt
ExamUserSyncSchools: Institute
ExamUserSyncLastChange: Zuletzt geändert
ExamUserMarkSynchronised: Prüfungsleistung als synchronisiert markieren
ExternalExamUserMarkSynchronised: Prüfungsleistung als synchronisiert markieren
ExternalExamUserMarkSynchronisedTip: Sollen beim CSV-Export automatisch alle heruntergeladenen Prüfungsleistungen als synchronisiert markiert werden? Diese Markierung dient als Hinweis an andere Prüfungsbeauftragte und die Kursverwalter, dass die Leistung an der korrekten Stelle vermerkt wurde und keiner weiteren Handlung bedarf.
@ -1649,19 +1368,7 @@ ExternalExamUserEditOccurrence: Termin ändern
ExternalExamUserEditResult: Prüfungsergebnis ändern
ExternalExamUserDelete: Prüfungsteilnehmer entfernen
ExamUserMarkSynchronisedCsv: Prüfungsleistungen beim Export als synchronisiert markieren
ExamUserMarkSynchronisedCsvTip: Sollen beim CSV-Export automatisch alle heruntergeladenen Prüfungsleistungen als synchronisiert markiert werden? Diese Markierung dient als Hinweis an andere Prüfungsbeauftragte und die Kursverwalter, dass die Leistung an der korrekten Stelle vermerkt wurde und keiner weiteren Handlung bedarf.
ExamUserMarkedSynchronised n@Int: #{n} #{pluralDE n "Prüfungsleistung" "Prüfungsleistungen"} als synchronisiert markiert
ExternalExamOccurrence: Termin
ExternalExamUserMarkSynchronisedCsv: Prüfungsleistungen beim Export als synchronisiert markieren
ExternalExamUserMarkedSynchronised n@Int: #{n} #{pluralDE n "Prüfungsleistung" "Prüfungsleistungen"} als synchronisiert markiert
ExternalExamOccurrenceEdited count@Int64: #{count} #{pluralDE count "Termin" "Termine"} editiert
ExternalExamResultEdited count@Int64: #{count} #{pluralDE count "Prüfungsergebnis" "Prüfungsergebnisse"} editiert
ExternalExamUserDeleted count@Int64: #{count} Prüfungsteilnehmer entfernt
ExamOfficeExamUsersHeading: Prüfungsleistungen
ActionsHead: Aktionen
@ -1686,43 +1393,19 @@ CsvImportExplanationLabel: Hinweise zum CSV-Import
CsvExampleData: Beispiel-Datei
CsvExportExample: Beispiel-CSV exportieren
Proportion c@Text of'@Text prop@Rational: #{c}/#{of'} (#{rationalToFixed2 (100 * prop)}%)
ProportionNoRatio c@Text of'@Text: #{c}/#{of'}
TableProportion c@Text of'@Text prop@Rational: #{c}/#{of'} (#{rationalToFixed2 (100 * prop)}%)
TableProportionNoRatio c@Text of'@Text: #{c}/#{of'}
ExamUserCsvName tid@TermId ssh@SchoolId csh@CourseShorthand examn@ExamName: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase csh}-#{foldedCase examn}-teilnehmer
ExternalExamUserCsvName tid@TermId ssh@SchoolId coursen@CourseName examn@ExamName: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase coursen}-#{foldedCase examn}-teilnehmer
ParticipantsCsvName tid@TermId ssh@SchoolId: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-kursteilnehmer
CsvColumnsExplanationsLabel: Spalten- & Zellenformat
CsvColumnsExplanationsTip: Bedeutung und Format der in der CSV-Datei enthaltenen Spalten
CsvColumnExamUserSurname: Nachname(n) des Teilnehmers
CsvColumnExamUserFirstName: Vorname(n) des Teilnehmers
CsvColumnExamUserName: Voller Name des Teilnehmers (gewöhnlicherweise inkl. Vor- und Nachname(n))
CsvColumnExamUserMatriculation: Matrikelnummer des Teilnehmers
CsvColumnExamUserField: Studienfach, mit dem der Teilnehmer seine Kursanmeldung assoziiert hat
CsvColumnExamUserDegree: Abschluss, den der Teilnehmer im assoziierten Studienfach anstrebt
CsvColumnExamUserSemester: Fachsemester des Teilnehmers im assoziierten Studienfach
CsvColumnExamUserOccurrence: Prüfungstermin/-Raum, zu dem der Teilnehmer angemeldet ist
CsvColumnExamUserExercisePoints: Anzahl von Punkten, die der Teilnehmer im Übungsbetrieb erreicht hat
CsvColumnExamUserExercisePointsMax: Maximale Anzahl von Punkten, die der Teilnehmer im Übungsbetrieb bis zu seinem Prüfungstermin erreichen hätte können
CsvColumnExamUserExercisePasses: Anzahl von Übungsblättern, die der Teilnehmer bestanden hat
CsvColumnExamUserExercisePassesMax: Maximale Anzahl von Übungsblättern, die der Teilnehmer bis zu seinem Prüfungstermin bestehen hätte können
CsvColumnExamUserBonus: Anzurechnende Bonuspunkte
CsvColumnExamUserParts: Erreichte Punktezahlen in den Teilprüfungen, sofern vorhanden; eine Spalte pro Teilprüfung
CsvColumnExamUserResult: Erreichte Prüfungsleistung; "passed", "failed", "no-show", "voided", oder eine Note ("1.0", "1.3", "1.7", ..., "4.0", "5.0")
CsvColumnExamUserCourseNote: Notizen zum Teilnehmer
CsvColumnUserStudyFeatures: Alle relevanten Studiendaten des Teilnehmers als Semikolon (;) separierte Liste
CsvColumnUserField: Studienfach, mit dem der Teilnehmer seine Kursanmeldung assoziiert hat
CsvColumnUserDegree: Abschluss, den der Teilnehmer im assoziierten Studienfach anstrebt
CsvColumnUserSemester: Fachsemester des Teilnehmers im assoziierten Studienfach
CsvColumnExamOfficeExamUserOccurrenceStart: Prüfungstermin (ISO 8601)
Action: Aktion
ActionNoUsersSelected: Keine Benutzer ausgewählt
@ -1737,17 +1420,12 @@ ExamUserCsvCourseRegister: Benutzer zum Kurs und zur Prüfung anmelden
ExamUserCsvRegister: Kursteilnehmer zur Prüfung anmelden
ExamUserCsvAssignOccurrence: Teilnehmern einen anderen Termin/Raum zuweisen
ExamUserCsvDeregister: Teilnehmer von der Prüfung abmelden
ExamUserCsvSetCourseField: Kurs-assoziiertes Studienfach ändern
ExamUserCsvOverrideBonus: Bonuspunkte entgegen Bonusregelung überschreiben
ExamUserCsvOverrideResult: Ergebnis entgegen automatischer Notenberechnung überschreiben
ExamUserCsvSetBonus: Bonuspunkte eintragen
ExamUserCsvSetResult: Ergebnis eintragen
ExamUserCsvSetPartResult: Ergebnis einer Teilprüfung eintragen
ExamUserCsvSetCourseNote: Teilnehmer-Notizen anpassen
ExamBonusNone: Keine Bonuspunkte
ExamUserCsvCourseNoteDeleted: Notiz wird gelöscht
ExamUserCsvExceptionNoMatchingUser: Benutzer konnte nicht eindeutig identifiziert werden. Alle Identifikatoren des Benutzers (Vorname(n), Nachname, Voller Name, Matrikelnummer, ...) müssen exakt übereinstimmen. Sie können versuchen für diese Zeile manche der Identifikatoren zu entfernen (also z.B. nur eine Matrikelnummer angeben) um dem System zu erlauben nur Anhand der verbleibenden Identifikatoren zu suchen. Sie sollten dann natürlich besonders kontrollieren, dass das System den fraglichen Benutzer korrekt identifiziert hat.
ExamUserCsvExceptionMultipleMatchingUsers: Benutzer konnte nicht eindeutig identifiziert werden. Es wurden mehrere Benutzer gefunden, welche mit den gegebenen Identifikatoren übereinstimmen. Sie können versuchen, für diese Zeile weitere Identifikatoren anzugeben damit nur noch der gewünschte Benutzer mit diesen identifiziert werden kann.
ExamUserCsvExceptionNoMatchingStudyFeatures: Das angegebene Studienfach konnte keinem Studienfach des Benutzers zugeordnet werden. Sie können versuchen für diese Zeile die Studiengangsdaten zu entfernen um das System automatisch ein Studienfach wählen zu lassen.
@ -1760,25 +1438,13 @@ ExternalExamUserCsvSetTime: Zeitpunkt anpassen
ExternalExamUserCsvSetResult: Ergebnis anpassen
ExternalExamUserCsvDeregister: Hinterlegte Prüfungsleistung löschen
CourseApplicationsTableCsvSetField: Bewerbungs-assoziiertes Studienfach ändern
CourseApplicationsTableCsvSetVeto: Veto setzen/entfernen
CourseApplicationsTableCsvSetRating: Bewertung eintragen
CourseApplicationsTableCsvSetComment: Bewertungskommentar eintragen
CourseApplicationsTableCsvExceptionNoMatchingUser: Bewerber konnte nicht eindeutig identifiziert werden
CourseApplicationsTableCsvExceptionNoMatchingAllocation: Zentralanmeldung konnte nicht eindeutig identifiziert werden
CourseApplicationsTableCsvExceptionNoMatchingStudyFeatures: Das angegebene Studienfach konnte keinem Studienfach des Kursteilnehmers zugeordnet werden
TableHeadingCsvImport: CSV-Import
TableHeadingCsvExport: CSV-Export
ExamResultAttended: Teilgenommen
ExamResultGrade: Note
ExamResultPass: Bestanden/Nicht Bestanden
ExamResultNoShow: Nicht erschienen
ExamResultVoided: Entwertet
ExamResultNone: Kein Prüfungsergebnis
UtilExamResultGrade: Note
UtilExamResultPass: Bestanden/Nicht Bestanden
UtilExamResultNoShow: Nicht erschienen
UtilExamResultVoided: Entwertet
BtnAuthLDAP: Auf Campus-Kennung umstellen
BtnAuthPWHash: Auf Uni2work-Kennung umstellen
@ -1818,99 +1484,17 @@ MailSchoolFunctionInviteHeading school@SchoolName renderedFunction@Text: #{rende
SchoolFunctionInviteExplanation renderedFunction@Text: Sie wurden eingeladen, als #{renderedFunction} für ein Institut zu wirken. Sie erhalten, nachdem Sie die Einladung annehmen, erweiterte Rechte innerhalb des Instituts.
SchoolFunctionInvitationAccepted school@SchoolName renderedFunction@Text: #{renderedFunction}-Einladung zum Dozent für „#{school}“ angenommen
MailSubjectExternalExamStaffInvitation coursen@CourseName examn@ExamName: Einladung zum Prüfer für „#{examn}“ in „#{coursen}“
ExternalExamStaffInviteHeading coursen@CourseName examn@ExamName: Einladung zum Prüfer für „#{examn}“ in „#{coursen}“
ExternalExamStaffInviteExplanation: Sie wurden eingeladen als Prüfer für eine Uni2work-externe Prüfung zu wirken. Sie können dann u.A. Noten für die Prüfung hinterlegen.
ExternalExamStaffInvitationAccepted coursen@CourseName examn@ExamName: Sie sind nun als Prüfer für „#{examn}“ in „#{coursen}“ eingetragen.
AllocationActive: Aktiv
AllocationName: Name
AllocationAvailableCourses: Kurse
AllocationApplication: Bewerbung
AllocationAppliedCourses: Bewerbungen
AllocationNumCoursesAvailableApplied available@Int applied@Int: Sie haben sich bisher für #{applied}/#{available} #{pluralDE applied "Kurs" "Kursen"} beworben
AllocationTitle termText@Text ssh'@SchoolShorthand allocation@AllocationName: #{termText} - #{ssh'}: #{allocation}
AllocationShortTitle termText@Text ssh'@SchoolShorthand ash@AllocationShorthand: #{termText} - #{ssh'} - #{ash}
AllocationSchool: Institut
AllocationSemester: Semester
AllocationDescription: Beschreibung
AllocationStaffDescription: Beschreibung für Dozenten
AllocationStaffRegisterFrom: Eintragung der Kurse ab
AllocationStaffRegister: Eintragung der Kurse
AllocationRegisterFrom: Bewerbung ab
AllocationRegister: Bewerbung
AllocationRegisterClosed: Die Zentralanmeldung ist aktuell geschlossen.
AllocationRegisterOpensIn difftime@Text: Die Zentralanmeldung öffnet voraussichtlich in #{difftime}
AllocationStaffAllocationFrom: Bewertung der Bewerbungen ab
AllocationStaffAllocation: Bewertung der Bewerbungen
AllocationRegisterByStaff: An- und Abmeldung durch Kursverwalter
AllocationRegisterByStaffFrom: An- und Abmeldung durch Kursverwalter ab
AllocationRegisterByStaffTip: In diesem Zeitraum können Kursverwalter Teilnehmer zu und von ihren Kursen an- und abmelden.
AllocationRegisterByStaffFromTip: Ab diesem Zeitpunkt können Kursverwalter Teilnehmer zu und von ihren Kursen an- und abmelden.
AllocationRegisterByCourseFrom: Direkte An- und Abmeldung ab
AllocationRegisterByCourseFromTip: Frühestens ab diesem Zeitpunkt ist die eigentständige An- und Abmeldung zu und von den Kursen, die an der Zentralanmeldung teilnehmen, möglich. Kontrolle über die genauen Fristen haben die Kursverwalter.
AllocationOverrideDeregister: Abmeldung von den Kursen nur bis
AllocationProcess: Platzvergabe
AllocationNoApplication: Keine Bewerbung
AllocationPriority: Priorität
AllocationPriorityTip: Kurse, denen Sie eine höhere Priorität zuteilen, werden bei der Platzvergabe präferiert.
AllocationPriorityRelative: Die absoluten Prioritäts-Werte sind bedeutungslos, es wird nur jeweils betrachtet ob ein Kurs höhere Priorität hat als ein anderer.
AllocationTotalCoursesNegative: Gewünschte Kursanzahl muss größer null sein
AllocationTotalCourses: Gewünschte Anzahl von Kursen
AllocationTotalCoursesTip: Sie werden im Laufe dieser Zentralanmeldung maximal so vielen Kursen zugeteilt, wie Sie hier angeben
AllocationRegistered: Teilnahme an der Zentralanmeldung erfolgreich registriert
AllocationRegistrationEdited: Einstellungen zur Teilnahme an der Zentralanmeldung erfolgreich angepasst
BtnAllocationRegister: Teilnahme registrieren
BtnAllocationRegistrationEdit: Teilnahme anpassen
AllocationParticipation: Teilnahme an der Zentralanmeldung
AllocationParticipationLoginFirst: Um an der Zentralanmeldung teilzunehmen, loggen Sie sich bitte zunächst ein.
AllocationCourses: Kurse dieser Zentralanmeldung
AllocationData: Organisatorisches
AllocationCoursePriority i@Natural: #{i}. Wahl
AllocationCourseNoApplication: Keine Bewerbung
BtnAllocationApply: Bewerben
BtnAllocationApplicationEdit: Bewerbung ersetzen
BtnAllocationApplicationRetract: Bewerbung zurückziehen
BtnAllocationApplicationRate: Bewerbung bewerten
ApplicationPriority: Priorität
ApplicationVeto: Veto
ApplicationVetoTip: Bewerber mit Veto werden garantiert nicht dem Kurs zugeteilt
ApplicationRatingPoints: Bewertung
ApplicationRatingPointsTip: Bewerber mit 5.0 werden garantiert nicht dem Kurs zugeteilt
ApplicationRatingComment: Kommentar
ApplicationRatingCommentVisibleTip: Feedback an den Bewerbers
ApplicationRatingCommentInvisibleTip: Dient zunächst nur als Notiz für Kursverwalter
ApplicationRatingSection: Bewertung
ApplicationRatingSectionSelfTip: Sie verfügen über hinreichende Authorisierung um sowohl die Bewerbung als auch ihre Bewertung zu editieren.
AllocationNotificationNewCourse: Benachrichtigung bei neuen Kursen
AllocationNotificationNewCourseTip: Wollen Sie per E-Mail benachrichtigt werden, wenn für diese Zentralanmeldung ein neuer Kurs eingetragen wird? Dies überschreibt die systemweite Einstellung in "Anpassen".
AllocationNotificationNewCourseSuccessForceOn: Sie werden benachrichtigt, wenn ein neuer Kurs eingetragen wird
AllocationNotificationNewCourseSuccessForceOff: Sie werden nicht benachrichtigt, wenn ein neuer Kurs eingetragen wird
AllocationNotificationNewCourseCurrentlyOff: Aktuell würden Sie keine Benachrichtigung erhalten.
AllocationNotificationNewCourseCurrentlyOn: Aktuell würden Sie benachrichtigt werden.
AllocationNotificationLoginFirst: Um Ihre Benachrichtigungseinstellungen zu ändern, loggen Sie sich bitte zunächst ein.
AllocationNextSubstitutesDeadline: Nächster Kurs akzeptiert Nachrücker bis
AllocationNextSubstitutesDeadlineNever: Keine Kurse akzeptieren mehr Nachrücker
AllocationFreeCapacity: Freie Plätze
AllocationSchoolShort: Institut
Allocation: Zentralanmeldung
AllocationRegisterTo: Anmeldungen bis
AllocationListTitle: Zentralanmeldungen
CourseApplicationId: Bewerbungsnummer
CourseApplicationRatingPoints: Bewertung
UserMatriculation: Matrikelnummer
SchoolShort: Kürzel
SchoolName: Name
SchoolLdapOrganisations: Assoziierte LDAP-Fragmente
@ -1936,8 +1520,6 @@ SchoolEvaluation: Kursumfragenverwaltung
SchoolExamOffice: Prüfungsverwaltung
SchoolAllocation: Zentralanmeldungs-Administration
ApplicationEditTip: Während des Bewerbungszeitraums können eigene Bewerbungen beliebig angepasst und auch wieder zurückgezogen werden.
UserLdapSync: LDAP-Synchronisieren
AllUsersLdapSync: Alle LDAP-Synchronisieren
SynchroniseLdapUserQueued n@Int: LDAP-Synchronisation von #{n} #{pluralDE n "Benutzer" "Benutzern"} angestoßen
@ -1989,22 +1571,10 @@ MailAllocationNewCourseTip: Es wurde der folgende Kurs zur Zentralanmeldung eing
MailAllocationNewCourseEditApplicationsHere: Sie können Ihre Bewerbung(en) hier anpassen:
MailAllocationNewCourseApplyHere: Sie können sich hier bewerben:
ExamOfficeSubscribedUsers: Benutzer
ExamOfficeSubscribedUsersTip: Sie können mehrere Matrikelnummern mit Komma separieren
ExamOfficeSubscribedUsersExplanation: Für hier angegebene Benutzer können Sie (ungeachtet der Fächer des Studierenden) stets sämtliche Prüfungsergebnisse einsehen.
ExamOfficeSubscribedFieldsExplanation: Sie können für alle Benutzer, die mindestens eines der angegeben Studienfächer studieren, sämtliche Prüfungsergebnisse einsehen. Sie haben zusätzlich die Möglichkeit anzugeben, ob es den Benutzern gestattet sein soll, dieser Einsicht im Einzelfall (pro Kurs) zu widersprechen.
UserMatriculationNotFound matriculation@Text: Es existiert kein Uni2work-Benutzer mit Matrikelnummer „#{matriculation}“
UserMatriculationAmbiguous matriculation@Text: Matrikelnummer „#{matriculation}“ ist nicht eindeutig
TransactionExamOfficeUsersUpdated nDeleted@Int nAdded@Int: #{nAdded} Benutzer hinzugefügt, #{nDeleted} Benutzer gelöscht
TransactionExamOfficeFieldsUpdated nUpdates@Int: #{nUpdates} #{pluralDE nUpdates "Studienfach" "Studienfächer"} angepasst
ExamOfficeFieldNotSubscribed: —
ExamOfficeFieldSubscribed: Einsicht
ExamOfficeFieldForced: Forcierte Einsicht
InvalidExamOfficeFieldMode parseErr@Text: Konnte „#{parseErr}“ nicht interpretieren
LdapIdentification: Campus-Kennung
LdapIdentificationOrEmail: Campus-Kennung / E-Mail-Adresse
@ -2033,16 +1603,7 @@ MailSubjectChangeUserDisplayEmail: Diese E-Mail-Adresse in Uni2work veröffentli
MailIntroChangeUserDisplayEmail displayEmail@UserEmail: Der oben genannte Benutzer möchte „#{displayEmail}“ als öffentliche Adresse, assoziiert mit sich selbst, angeben. Wenn Sie diese Aktion nicht selbst ausgelöst haben, ignorieren Sie diese Mitteilung bitte!
MailTitleChangeUserDisplayEmail displayName@Text: #{displayName} möchte diese E-Mail-Adresse in Uni2work veröffentlichen
ExamOfficeOptOutsChanged: Zuständige Prüfungsbeauftragte erfolgreich angepasst
ExamCloseHeading: Prüfung abschließen
BtnCloseExam: Prüfung abschließen
ExamCloseTip: Wenn eine Prüfung abgeschlossen wird, werden Prüfungsbeauftragte, die im System Noten einsehen, benachrichtigt und danach bei Änderungen informiert.
ExamCloseReminder: Bitte schließen Sie die Prüfung frühstmöglich, sobald die Prüfungsleistungen sich voraussichtlich nicht mehr ändern werden. Z.B. direkt nach der Klausureinsicht.
ExamDidClose: Prüfung erfolgreich abgeschlossen
ExamCloseTipOnFinished: Die Prüfung wird automatisch abgeschlossen, also Prüfungsbeauftragte, die im System Note einsehen, benachrichtigt und danach bei Änderungen informiert, sobald die Noten für die Prüfungsteilnehmer veröffentlicht werden.
ExamClosedSince time@Text: Prüfung abgeschlossen seit #{time}
LecturerInfoTooltipNew: Neues Feature
LecturerInfoTooltipProblem: Feature mit bekannten Problemen
@ -2097,12 +1658,6 @@ StudyTermsDefaultFieldType: Default Typ
MenuLanguage: Sprache
LanguageChanged: Sprache erfolgreich geändert
ProfileLastLdapSynchronisation: Letzte LDAP-Synchronisation
ProfileLdapPrimaryKey: LDAP-Primärschlüssel
GroupSizeNotNatural: „Gruppengröße“ muss eine natürliche Zahl sein
AmbiguousEmail: E-Mail-Adresse nicht eindeutig
PointsPlaceholder: Punktezahl
@ -2130,7 +1685,6 @@ GlossaryTitle: Begriffsverzeichnis
Applicant: Bewerber
CourseParticipant: Kursteilnehmer
Administrator: Administrator
CsvFormat: CSV-Format
@ -2147,44 +1701,11 @@ MetricNoSamples: Keine Messwerte
MetricName: Name
MetricValue: Wert
ExternalExamSemester: Semester
ExternalExamSchool: Institut
ExternalExamCourseName: Veranstaltung
ExternalExamCourseNameTip: Muss nur innerhalb von Semester und Institut eindeutig sein.
ExternalExamCourseNamePlaceholder: Analysis I, Programmierung und Modellierung, ...
ExternalExamExamName: Prüfung
ExternalExamExamNameTip: Muss innerhalb der Veranstaltung eindeutig sein.
ExternalExamExamNamePlaceholder: Klausur, Nachklausur, Projektabnahme, ...
ExternalExamDefaultTime: Voreingestellter Zeitpunkt
ExternalExamDefaultTimePlaceholder: Zeitpunkt
ExternalExamDefaultTimeTip: Der Zeitpunkt zu dem die Prüfung abgelegt wurde, muss pro Teilnehmer festgelegt werden. Der hier angegebene Zeitpunkt wird als Standardwert für Teilnehmer verwendet, bei denen später nicht ein abweichender Zeitpunkt angegeben wird.
ExternalExamExamOfficeSchools: Zusätzliche Institute
ExternalExamExamOfficeSchoolsTip: Prüfungsbeauftragte von Instituten, die Sie hier angeben, erhalten im System (zusätzlich zum angegebenen primären Institut) volle Einsicht in sämtliche für diese Prüfung hinterlegten Leistungen, unabhängig von den Studiendaten der Teilnehmer.
ExternalExamStaff: Assoziierte Personen
ExternalExamStaffTip: Assoziierte Personen werden den Prüfungsbeauftragten und Teilnehmern angezeigt und dürfen Leistungen für die Prüfung hinterlegen.
ExternalExamStaffAlreadyAdded: Person wurde bereits der Prüfung hinzugefügt
ExternalExamStaffEmail: E-Mail
ExternalExamUserMustBeStaff: Sie selbst müssen stets assoziierte Person sein, für die externen Prüfungen, die Sie anlegen
ExternalExamCourseExists: Der angegebene Kurs existiert im System. Prüfungen sollten daher direkt beim Kurs (statt extern) hinterlegt werden.
ExternalExamExists coursen@CourseName examn@ExamName: Prüfung „#{examn}“ für Kurs „#{coursen}“ existiert bereits.
ExternalExamCreated coursen@CourseName examn@ExamName: Prüfung „#{examn}“ für Kurs „#{coursen}“ erfolgreich angelegt.
ExternalExamEdited coursen@CourseName examn@ExamName: Prüfung „#{examn}“ für Kurs „#{coursen}“ erfolgreich bearbeitet.
ExamAutoOccurrenceHeading: Automatische Raum-/Terminverteilung
ExamAutoOccurrenceMinimizeRooms: Verwendete Räume/Termine minimieren
ExamAutoOccurrenceMinimizeRoomsTip: Soll, für die Aufteilung, die Liste an Räumen/Terminen zunächst reduziert werden, sodass nur so wenige Räume verwendet werden, wie nötig (größte zuerst)?
ExamAutoOccurrenceOccurrencesChangedInFlight: Raumliste wurde verändert
ExamAutoOccurrenceParticipantsAssigned num@Int64: Verteilungstabelle erfolgreich gespeichert und #{num} Teilnehmer zugewiesen
TitleExamAutoOccurrence tid@TermId ssh@SchoolId csh@CourseShorthand examn@ExamName: #{tid} - #{ssh} - #{csh} #{examn}: Automatische Raum-/Terminverteilung
BtnExamAutoOccurrenceCalculate: Verteilungstabelle berechnen
BtnExamAutoOccurrenceAccept: Verteilung akzeptieren
BtnExamAutoOccurrenceNudgeUp: +
BtnExamAutoOccurrenceNudgeDown: -
ExamRoomMappingSurname: Nachnamen beginnend mit
ExamRoomMappingMatriculation: Matrikelnummern endend in
ExamRoomLoad: Auslastung
ExamRegisteredCount: Anmeldungen
ExamRegisteredCountOf num@Int64 count@Int64: #{num}/#{count}
NoFilter: Keine Einschränkung
@ -2201,31 +1722,11 @@ InfoLecturerAllocations: Zentralanmeldungen
ParticipantsIntersectCourseOption tid@TermId ssh@SchoolId coursen@CourseName: #{tid} - #{ssh} - #{coursen}
ParticipantsIntersectCourses: Kurse
AllocationUsersTitle tid@TermId ssh@SchoolId ash@AllocationShorthand: #{tid}-#{ssh}-#{ash}: Bewerber
AllocationUsersApplied: Bewerbungen
AllocationUsersAssigned: Zuweisungen
AllocationUsersVetoed: Vetos
AllocationUsersRequested: Angefragte Plätze
AllocationUsersPriority: Zentrale Dringlichkeit
CsvColumnAllocationUserSurname: Nachname(n) des Bewerbers
CsvColumnAllocationUserFirstName: Vorname(n) des Bewerbers
CsvColumnAllocationUserName: Voller Name des Bewerbers
CsvColumnAllocationUserMatriculation: Matrikelnummer des Bewerber
CsvColumnAllocationUserStudyFeatures: Studiendaten
CsvColumnAllocationUserRequested: Maximale Anzahl von Plätzen, die der Bewerber bereit ist, zu akzeptieren
CsvColumnAllocationUserApplied: Anzahl von Bewerbungen, die der Bewerber eingereicht hat
CsvColumnAllocationUserVetos: Anzahl von Bewerbungen, die von Kursverwaltern ein Veto oder eine Note erhalten haben, die äquivalent ist zu "Nicht Bestanden" (5.0)
CsvColumnAllocationUserAssigned: Anzahl von Plätzen, die der Bewerber durch diese Zentralanmeldung bereits erhalten hat
CsvColumnAllocationUserNewAssigned: Anzahl von Plätzen, die der Bewerber, nach Akzeptieren der berechneten Verteilung, zusätzlich erhalten würde
CsvColumnAllocationUserPriority: Zentrale Dringlichkeit des Bewerbers; entweder einzelne Zahl für Sortierungsbasierte Dringlichkeiten (höhere Dringlichkeit entspricht größerer Zahl) oder Komma-separierte Liste von numerischen Dringlichkeiten in eckigen Klammern (z.B. [1, 2, 3])
AllocationUsersCsvName tid@TermId ssh@SchoolId ash@AllocationShorthand: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase ash}-bewerber
AllocationPrioritiesMode: Modus
AllocationPrioritiesNumeric: Numerische Dringlichkeiten
AllocationPrioritiesOrdinal: Dringlichkeiten durch Sortierung
AllocationPriorityNumeric': Numerisch
AllocationPriorityOrdinal': Nach Sortierung
AllocationPriorityNumericValues: Numerische Werte
AllocationPriorityNumericValuesTip: Komma-separierte ganze Zahlen
AllocationPriorityNumericNoValues: Es wurden keine numerischen Werte angegeben
@ -2233,24 +1734,13 @@ AllocationPriorityNumericNoParse val@Text: Ganze Zahl konnte nicht geparst werde
AllocationPriorityOrdinalValueNegative: Sortier-Index darf nicht negativ sein
AllocationPriorityOrdinalValue: Sortier-Index
AllocationPriorityOrdinalValueTip: Null entspricht dem ersten Eintrag der Liste, höhere Indizes entsprechen später in der sortierten Liste vorkommenden Bewerbern und damit einer höheren Dringlichkeit
AllocationPrioritiesTitle tid@TermId ssh@SchoolId ash@AllocationShorthand: #{tid}-#{ssh}-#{ash}: Zentrale Dringlichkeiten
AllocationPrioritiesFile: CSV-Datei
AllocationPrioritiesSunk num@Int64: Zentrale Prioritäten für #{num} Bewerber erfolgreich hinterlegt
AllocationPrioritiesMissing num@Int64: Für #{num} Bewerber ist keine zentrale Priorität hinterlegt, da in der hochgeladenen CSV-Datei die #{pluralDE num "entsprechende Matrikelnummer" "entsprechenden Matrikelnummern"} nicht gefunden #{pluralDE num "wurde" "wurden"}
AllocationMissingPrioritiesIgnored: Bewerber, für die keine zentrale Priorität angegeben wird, werden bei der Vergabe ignoriert!
AllocationAddUserUserNotFound: E-Mail Adresse konnte keinem Benutzer zugeordnet werden
AllocationAddUserUser: Benutzer
AllocationAddUserUserPlaceholder: E-Mail
AllocationAddUserTotalCoursesLessThanOne: Anzahl angefragter Plätze muss größer null sein
AllocationAddUserTotalCourses: Angefragte Plätze
AllocationAddUserSetPriority: Zentrale Dringlichkeit eintragen?
AllocationAddUserPriority: Zentrale Dringlichkeit
AllocationAddUserApplications: Bewerbungen/Bewertungen
AllocationAddUserTitle termText@Text ssh'@SchoolShorthand allocation@AllocationName: #{termText} - #{ssh'} - #{allocation}: Bewerber hinzufügen
AllocationAddUserShortTitle tid@TermId ssh@SchoolId ash@AllocationShorthand: #{tid}-#{ssh}-#{ash}: Bewerber hinzufügen
AllocationAddUserUserAdded: Bewerber erfolgreich zur Zentralanmeldung hinzugefügt
AllocationAddUserUserExists: Der angegebene Benutzer ist bereits ein Bewerber zur Zentralanmeldung
#hier weiß ich nicht mehr was da als Nachricht stand:
AllocationPriorityNumeric':
AllocationPriorityOrdinal':
AllocationPriorityNumeric:
AllocationPriorityOrdinal:
AllocationPrioritiesNumeric:
AllocationPrioritiesOrdinal:
ExampleUser1FirstName: Max ZweiterName
ExampleUser1Surname: Mustermann
@ -2262,33 +1752,6 @@ ExampleUser3FirstName: Maria
ExampleUser3Surname: Beispiel
ExampleUser3DisplayName: Beispiel
AllocationUsersMissingPriorities: Teilnehmer ohne zentrale Dringlichkeit
AllocationUsersMissingPrioritiesTip: Es muss sichergestellt sein, dass keine Teilnehmer unberechtigt aus der Zentralvergabe ausgeschlossen werden, indem ihnen keine zentrale Dringlichkeit zugewiesen wurde.
AllocationUsersMissingPrioritiesOk: Es wurde sichergestellt, dass es für jeden der genannten Benutzer einen zulässigen Grund gibt, warum dieser nicht an der Zentralanmeldung teilnehmen sollte.
AllocationRestrictCourses: Kurse einschränken
AllocationRestrictCoursesTip: Sollen nur Plätze für eine Teilmenge von Kursen zugewiesen werden? So können u.A. Nachrücker verteilt werden. Diese Funktionalität sollte nur verwendet werden, wenn manche Kurse aus zulässigen Gründen ausgeschlossen werden müssen; z.B. weil ein Seminar bereits ein Treffen zur Organisation hatte und nun keine weiteren Teilnehmer mehr akzeptieren kann.
AllocationCourseRestrictionDontRestrict: Nicht einschränken
AllocationCourseRestrictionSubstitutes: Kurse, die aktuell Nachrücker azkeptieren
AllocationCourseRestrictionCustom: Benutzerdefiniert
AllocationRestrictCoursesSelection: Kurse
AllocationRestrictCoursesSelectionTip: Teilnehmer werden nur auf die Kurse verteilt, die hier angegeben werden.
AllocationUsersMissingPrioritiesNotOk: Zentralvergabe kann nicht erfolgen, solange nicht allen Teilnehmern, die nicht explizit von der Vergabe ausgeschlossen wurden („Teilnehmer ohne zentrale Dringlichkeit”), eine zentrale Dringlichkeit zugewiesen wurde!
AllocationComputed: Eine mögliche Zentralvergabe wurde berechnet und in Ihrer Session gespeichert. Es wurden noch keine Änderungen vorgenommen!
AllocationOnlyCompute: Durch Senden dieses Formulars wird zunächst nur eine mögliche Zentralvergabe berechnet und zur Kontrolle temporär gespeichert. Es werden keine Änderungen am Stand der Datenbank vorgenommen oder Benachrichtigungen verschickt.
AllocationAcceptFormDoesNotMatchSession: Das Formular zum Akzeptieren der Vergabe wurde für ein anderes Vergabeergebnis erzeugt, als aktuell in Ihrer Session gespeichert ist.
ComputedAllocation: Berechnete Vergabe
AllocationAccepted: Zentralvergabe gespeichert.
AllocationMatchedUsers: Neu zugeteilt
AllocationUnmatchedUsers: Teilnehmer ohne zugeteilte Plätze
AllocationUnmatchedCourses: Kurse ohne zugeteilte Teilnehmer
AllocationTime: Zeitpunkt der Vergabe
AllocationRequestedPlaces: Angefragte Plätze
AllocationOfferedPlaces: Angebotene Plätze
AllocationUserNewMatches: Neue Zuteilungen
AllocationUsersCount: Teilnehmer
AllocationCoursesCount: Kurse
AllocationCourseEligible: Berücksichtigt
CourseOption tid@TermId ssh@SchoolId coursen@CourseName: #{tid} - #{ssh} - #{coursen}
BearerTokenUsageWarning: Mit diesem Interface können quesi beliebige Rechte als Tokens kodiert und somit ohne wesentliche weitere Beschränkung frei übertragen werden. Benutzen Sie dieses Interface nur, wenn Sie von einem erfahrenen Entwickler über die Auswirkungen des konkreten Tokens, dass sie ausstellen möchten, beraten wurden!
@ -2314,18 +1777,12 @@ BearerTokenOverrideStart: Startzeitpunkt
BearerTokenOverrideStartTip: Wird kein Startzeitpunkt angegeben, wird bei Verwendung des Tokens nur der Ablaufzeitpunkt überprüft.
FaqTitle: Häufig gestellte Fragen
AdditionalFaqs: Weitere häufig gestellte Fragen
MultiActionUnknownAction: In einem von einem Eingabefeld abhängigen Formular wurde ein Wert gewählt, für den kein Formular verfügbar ist
CourseParticipantStateIsActive: Aktive Teilnehmer
CourseParticipantStateIsInactive: Ehemalige Teilnehmer
CourseParticipantStateIsActiveFilter: Ansicht
CourseUserReRegister: Wieder anmelden
CourseParticipantActive: Teilnehmer
CourseParticipantInactive: Abgemeldet
CourseParticipantNoShow: Nicht erschienen
CourseUserDownloadPersonalisedSheetFiles: Personalisierte Übungsblatt-Dateien herunterladen
TestDownload: Download-Test
TestDownloadMaxSize: Maximale Dateigröße
@ -2373,7 +1830,6 @@ PersonalisedSheetFilesDownloadAnonymousField: Anonymisierung
PersonalisedSheetFilesDownloadAnonymousFieldTip: Sollen Verzeichnisnamen innerhalb des Archivs von personalisierten Dateien anonymisiert werden (sie enthalten dann keinerlei unmittelbar identifizierende Informationen zu den Kursteilnehmern), oder sollen die Verzeichnisnamen mit einem Merkmal versehen werden und die Metainformations-Dateien zusätzlich persönliche Daten enthalten?
PersonalisedSheetFilesIgnored count@Int64: Es #{pluralDE count "wurde" "wurden"} #{count} hochgeladene #{pluralDE count "Datei" "Dateien"} ignoriert, da sie keinem Übungsblattdatei-Typ oder keinem Kursteilnehmer zugeordnet werden #{pluralDE count "konnte" "konnten"}.
PersonalisedSheetFilesIgnoredIntro: Es wurden die folgenden Dateien ignoriert:
CourseUserHasPersonalisedSheetFilesFilter: Teilnehmer hat personalisierte Übungsblatt-Dateien für
SheetPersonalisedFilesUsersList: Liste von Teilnehmern mit personalisierten Übungsblatt-Dateien
PersonalisedSheetFilesDownloadRestrictByExamNone: Keine Einschränkung
PersonalisedSheetFilesDownloadRestrictByExam: Nur Prüfungsteilnehmer
@ -2387,9 +1843,6 @@ SystemExamOffice: Prüfungsverwaltung
SystemFaculty: Fakultätsmitglied
SystemStudent: Student
ChangelogItemFeature: Feature
ChangelogItemBugfix: Bugfix

View File

@ -24,7 +24,6 @@ BtnParentCandidatesInfer: Infer parent-relation
BtnParentCandidatesDeleteAll: Delete all parent-observations
BtnStandaloneCandidatesDeleteAll: Delete all standalone-observations
BtnStandaloneCandidatesDeleteRedundant: Delete redundant standalone-observations
BtnLecInvAccept: Accept
BtnLecInvDecline: Decline
BtnCorrInvAccept: Accept
@ -33,15 +32,19 @@ BtnSubmissionsAssign: Assign submissions automatically
BtnSubmissionsAssignAll: Automatically distribute corrections
BtnAllocationCompute: Compute allocation
BtnAllocationAccept: Accept allocation
BtnAllocationRegister: Register participation
BtnAllocationRegistrationEdit: Edit registration
BtnAllocationApply: Apply
BtnAllocationApplicationEdit: Edit application
BtnAllocationApplicationRetract: Retract application
BtnAllocationApplicationRate: Grade application
BtnSystemMessageHide: Hide
BtnSystemMessageUnhide: Unhide
BtnCommunicationSend: Send
BtnCommunicationTest: Send test message
BtnAcceptApplications: Accept applications
BtnAcceptApplicationsTip: By clicking the button below you may fill the course with applicants (only up to the maximum capacity if configured). Grading of applications will be considered (no grading is treated as if graded between 2.3 and 2.7). Vetoed applicants and applications graded 5.0 will not be enrolled.
AcceptApplicationsDirect: Enroll directly
AcceptApplicationsInvite: Send invitations
AcceptApplicationsSecondaryRandom: Randomly
@ -62,6 +65,14 @@ TableSubmissionGroup: Registered submission group
TableNoSubmissionGroup: No registered submission group
TableMatrikelNr: Matriculation
TableSex: Sex
TableSchool: Department
TableCourse: Course
TableCourseMembers: Participants
TableExamOccurrence: Occurrence/room
TableExamName: Name
TableExamTime: Time
TableExamRegistration: Exam registration
TableExamResult: Exam result
#headings
HeadingLegal: Legal
@ -72,18 +83,6 @@ HeadingProfileData: Personal information
HeadingSchoolList: Departments
HeadingAdminCrontab: Crontab
HeadingAdminTokens: Issue tokens
HeadingAllocationAccept: Accept allocation
HeadingAllocationCompute: Compute allocation
HeadingAllocationInfo: Information regarding central allocations
AllocationPriorities: Central priorities
AllocationUsers: Applicants
HeadingCourseExamOffice: Exam offices
HeadingExamList: Exams
HeadingExamOfficeFields: Fields of study
HeadingExamOfficeUsers: Users
HeadingExternalExamList: External exams
HeadingExternalExamNew: New external exam
SheetPersonalisedFilesDownload: Download personalised sheet files
HeadingCorrectionsAssign: Assign corrections
HeadingUserAdd: Add user
@ -156,18 +155,12 @@ SchoolHeading school: #{school}
LectureStart: Lectures start
Course: Course
CourseNoCapacity: Course has reached maximum capacity
TutorialNoCapacity: Tutorial has reached maximum capacity
ExamOccurrenceNoCapacity: Occurrence/Room has reached maximum capacity
CourseNotEmpty: There are currently no participants enrolled for this course.
CourseApply: Apply for course
CourseStudyFeature: Associated subject
CourseStudyFeatureTip: For information purposes only (visible to course administrators)
CourseStudyFeatureUpdated: Successfully updated associated subject
CourseStudyFeatureNone: No associated subject
FFSheetName: Name
TermCourseListHeading tid: Courses #{tid}
TermSchoolCourseListHeading tid school: Courses #{tid}, #{school}
@ -177,55 +170,21 @@ TermSchoolCourseListTitle tid school: Courses #{tid}, #{school}
CourseNewHeading: Create new course
CourseEditHeading tid ssh csh: Edit course #{tid}-#{ssh}-#{csh}
CourseMembers: Participants
CourseMembersCount n: #{n}
CourseMembersCountLimited n max: #{n}/#{max}
TutorialRegisterFromTip: When left empty students will not be able to enrol themselves
TutorialRegisterToTip: May be left empty to allow enrolment indefinitely
TutorialDeregisterUntilTip: Participants may deregister from immediately after registration starts up to this time. May be left empty to allow deregistration indefinitely.
CourseFilterNone: —
BoolIrrelevant: —
CourseDeleteQuestion: Are you sure you want to delete the below-mentioned course?
CourseDeleted: Course deleted
CourseUserRegister: Enrol for course
CourseUserDeregister: Deregister from course
CourseUserRegisterTutorial: Register for a tutorial
CourseUserRegisterExam: Register for an exam
CourseUserSendMail: Send mail
TutorialUserDeregister: Deregister from tutorial
TutorialUserSendMail: Send mail
TutorialUsersDeregistered count: Successfully deregistered #{show count} participants from tutorial
CourseAllocationCourseAcceptsSubstitutesUntil: Accepts substitutes until
CourseAllocationCourseAcceptsSubstitutesNever: Does not accept substitutes
CourseAllocationCourseParticipants: Participants
CourseAllocationApplicationInstructionsApplication: Instructions for application
CourseAllocationApplicationTemplateApplication: Application template(s)
CourseApplication: Application
CourseApplicationExists: You already applied for this course
CourseApplicationInvalidAction: Invalid action
CourseApplicationCreated csh: Successfully applied for #{csh}
CourseApplicationEdited csh: Successfully changed application for #{csh}
CourseApplicationNotEdited csh: Application for #{csh} not changed
CourseApplicationRated: Successfully edited rating
CourseApplicationRatingDeleted: Successfully deleted rating
CourseApplicationDeleted csh: Successfully withdrew application for #{csh}
CourseRegistrationDeleteToEdit: You need to deregister and reregister to edit your registration.
CourseLoginToApply: You need to login to Uni2work before you can apply for this course.
CourseLoginToRegister: Your need to login to Uni2work before you can register for this course.
CourseAllApplicationsArchiveName tid ssh csh: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase csh}-applications
CourseAssistant: Assistant
School: Department
NoCourseDescription: This course does not provide a description.
Sheet: Sheet
SheetList tid ssh csh : #{tid}-#{ssh}-#{csh} Sheet Overview
SheetNewHeading tid ssh csh : #{tid}-#{ssh}-#{csh} New Exercise Sheet
@ -407,7 +366,6 @@ UnauthorizedAllocationLecturer: You are no administrator for any of the courses
UnauthorizedCorrector: You are no sheet corrector for this course.
UnauthorizedSheetCorrector: You are no corrector for this sheet.
UnauthorizedExamCorrector: You are no corrector for this exam.
UnauthorizedExamCorrectorGrade: You may not enter overall exam achievements for this exam.
UnauthorizedCorrectorAny: You are no corrector for any course.
UnauthorizedRegistered: You are no participant in this course.
UnauthorizedRegisteredExam: You are not registered for this exam.
@ -522,7 +480,7 @@ LegalHeading: Legal
SystemMessageHeading: Uni2work system message
SystemMessageListHeading: Uni2work system message
NotificationSettingsHeading displayName: Notification settings for #{displayName}
TokensLastReset: Tokens last reset
TokensResetSuccess: Successfully invalidated all authorisation tokens
NewsOpenAllocations: Active central allocations
@ -621,9 +579,7 @@ HasCorrector: Corrector assigned
AssignedTime: Assigned
AchievedBonusPoints: Bonus points achieved
AchievedNormalPoints: Points achieved
AchievedPoints: Points achieved
AchievedPassPoints: Points achieved to pass
AchievedPasses: Passed sheets
PassAchievedOf points passingPoints maxPoints: #{points} of #{maxPoints} (pass at #{passingPoints})
PassedResult: Result
Passed: Passed
@ -991,14 +947,8 @@ MailSubjectCorrectorInvitation tid ssh csh shn: [#{tid}-#{ssh}-#{csh}] Invitatio
MailSubjectTutorInvitation tid ssh csh tutn: [#{tid}-#{ssh}-#{csh}] Invitation to be a tutor for #{tutn}
MailSubjectExamCorrectorInvitation tid ssh csh examn: [#{tid}-#{ssh}-#{csh}] Invitation to be a corrector for #{examn}
MailSubjectExamRegistrationInvitation tid ssh csh examn: [#{tid}-#{ssh}-#{csh}] Invitation to be a participant of #{examn}
MailSubjectSubmissionUserInvitation tid ssh csh shn: [#{tid}-#{ssh}-#{csh}] Invitation to participate in a submission for #{shn}
MailSubjectExamOfficeUserInvitation displayName: Consideration of your exam achievements within Uni2work
MailSubjectPasswordReset: Set/Change Uni2work password
SheetGrading: Marking
@ -1163,19 +1113,8 @@ ErrMsgHeading: Decrypt error message
InvalidRoute: Could not interpret url
ExternalExamEdit coursen examn: Edit: #{coursen}, #{examn}
ExternalExamGrades coursen examn: Exam achievements: #{coursen}, #{examn}
ExternalExamCorrectHeading coursen examn: Enter exam results for #{coursen}, #{examn}
ExternalExamUsers coursen examn: Exam participants: #{coursen}, #{examn}
TitleMetrics: Metrics
DeleteCopyStringIfSure n: If you are sure that you want to permanently delete the #{pluralEN n "object" "objects"} listed below, please copy the shown text.
DeletePressButtonIfSure n: If you are sure that you want to permanently delete the #{pluralEN n "object" "objects"} listed below, please confirm the action by pressing the button.
DeleteConfirmation: Confirmation text
@ -1230,8 +1169,6 @@ MultiUserFieldInvitationExplanationAlways: An invitation will be sent via email
LecturerInvitationAccepted lType csh: You were registered as #{lType} for #{csh}
LecturerInvitationDeclined csh: You have declined the invitation to become course administrator for #{csh}
CourseLecInviteHeading courseName: Invitation to be a course administrator for #{courseName}
CourseLecInviteExplanation: You were invited to be a course administrator.
CorrectorInvitationAccepted shn: You are now a corrector for #{shn}
CorrectorInvitationDeclined shn: You have declined the invitation to be a corrector for #{shn}
@ -1243,49 +1180,11 @@ TutorInvitationDeclined tutn: You have declined the invitation to be a tutor for
TutorInviteHeading tutn: Invitation to be tutor for #{tutn}
TutorInviteExplanation: You were invited to be a tutor.
ExamCorrectorInvitationAccepted examn: You are now corrector for #{examn}
ExamCorrectorInvitationDeclined examn: You have declined the invitation to be a corrector for #{examn}
ExamCorrectorInviteHeading examn: Invitation to be a corrector for #{examn}
ExamCorrectorInviteExplanation: You were invited to be a corrector.
ExamRegistrationInvitationAccepted examn: You are now registered for #{examn}
ExamRegistrationInvitationDeclined examn: You have declined the invitation to participate in #{examn}
ExamRegistrationInviteHeading examn: Invitation to participate in #{examn}
ExamRegistrationInviteExplanation: You were invited to register for an exam.
ExamCorrectHeading examname: Submit corrections for #{examname}
ExamCorrectHeadDate: Time
ExamCorrectHeadParticipant: Participant
ExamCorrectHeadPart exampartnum: #{exampartnum}
ExamCorrectHeadPartName exampartname: #{exampartname}
ExamCorrectHeadStatus: Status
ExamCorrectButtonSend: Submit
ExamCorrectErrorNeedleTooShort: This identifier is too short.
ExamCorrectErrorMultipleMatchingParticipants: This identifier matches on multiple exam participants.
ExamCorrectErrorNoMatchingParticipants: This identifier does not match on any exam participant.
ExamCorrectErrorPartResultOutOfBounds examPartNumber: Exam part result for #{examPartNumber} ist not greater zero.
ExamCorrectErrorPartResultOutOfBoundsMax examPartNumber maxPoints: Exam part result for #{examPartNumber} is not between 0 and #{maxPoints}.
ExternalExamCorrectErrorMultipleMatchingUsers: This identifier matches on multiple students.
ExternalExamCorrectErrorNoMatchingUsers: This identifier does not match any student.
ExamCorrectExamResultDelete: Delete exam result
ExamCorrectExamResultNone: No change
ExamCorrectUserCandidatesMore: and more
SubmissionUserInvitationAccepted shn: You now participate in a submission for #{shn}
SubmissionUserInvitationDeclined shn: You have declined the invitation to participate in a submission for #{shn}
SubmissionUserInviteHeading shn: Invitation to participate in a submission for #{shn}
SubmissionUserInviteExplanation: You were invited to participate in a submission for an exercise sheet.
ExamOfficeUserInviteHeading displayName: Access of your exam achievements by #{displayName}
ExamOfficeUserInviteExplanation: To properly consider your exam achievements (e.g. in the final transcript of records for Erasmus-students) you are invited to grant access to the appropriate parties.
ExamOfficeUserInvitationAccepted: Access to exam achievements granted
ExamOfficeUserEmail: Email
InvitationAction: Action
InvitationActionTip: Declined invitations cannot be accepted later
InvitationMissingRestrictions: Your authorisation-token is missing required data
@ -1380,74 +1279,24 @@ HealthSMTPConnect: SMTP server is reachable
HealthWidgetMemcached: Memcached server is serving widgets correctly
HealthActiveJobExecutors: Proportion of job workers accepting new jobs
CourseParticipants n: Currently #{n} course #{pluralEN n "participant" "participants"}
CourseParticipant: Participant
CourseParticipantsRegisteredWithoutField n: #{n} #{pluralEN n "participant was" "participants were"} registered without #{pluralEN n "an associated field of study" "associated fields of study"}, because #{pluralEN n "it" "they"} could not be determined uniquely.
ExamRegistrationAndCourseParticipantsRegistered n: Registered #{n} #{pluralEN n "participant" "participants"} for the exam as well as for the course
ExamRegistrationNotRegisteredWithoutCourse n: #{n} #{pluralEN n "user" "users"} were not registered for the exam since they are not enrolled in the course
ExamRegistrationRegisteredWithoutField n: Registered #{n} #{pluralEN n "participant" "participants"} for the exam as well as for the course. The #{pluralEN n "participant was" "participants were"} enrolled without #{pluralEN n "an associated field of study" "associated fields of study"} since #{pluralEN n "it" "they"} could not be determined uniquely.
ExamRegistrationParticipantsRegistered n: #{n} #{pluralEN n "participant was" "participants were"} registered for the exam
ExamRegistrationInviteDeadline: Invitation valid until
ExamRegistrationEnlistDirectly: Register known users directly
ExamRegistrationEnlistDirectlyTip: Should users whose email addresses are known to the system be registered for the exam directly? Otherwise invitations will be sent to alle users, which they will have to accept first in order to be registered. Unknown users always receive an invitation.
ExamRegistrationRegisterCourse: Also enroll users in course
ExamRegistrationRegisterCourseTip: Users that aren't enrolled already won't be registered for the exam otherwise.
ExamRegistrationInviteField: Email addresses
ExamParticipantsRegisterHeading: Add exam participants
ExamParticipantsInvited n: #{n} #{pluralEN n "invitation" "invitations"} sent via email
ExamName: Name
ExamRoom: Room
ExamTime: Time
ExamsHeading: Exams
ExamNameTip: Needs to be unique within the course
ExamStart: Start
ExamEnd: End
ExamDescription: Description
ExamVisibleFrom: Visible from
ExamVisibleFromTip: If left empty the exam is never visible and course participants may not register.
ExamRegisterFrom: Register from
ExamRegisterFromTip: Start of the period in which course participants may register themselves for the exam. If left empty participants are never allowed to register.
ExamRegisterTo: Register to
ExamDeregisterUntil: Deregister until
ExamPublishOccurrenceAssignments: Publish occurrence/room-assignments
ExamPublishOccurrenceAssignmentsTip: At this time participants can find out to which occurrence/room they are assigned
ExamPublishOccurrenceAssignmentsParticipant: Occurrence/room-assignments published
ExamFinished: Results visible from
ExamFinishedOffice: Exam achievements published
ExamFinishedParticipant: Marking expected to be finished
ExamFinishedTip: At this participants are informed of their exam achievements. If left empty participants are never informed of their exam achievements.
ExamFinishedTipCloseOnFinished: At this time participants and exam offices are informed of the exam achievements. If left empty participants and exam offices are never informed of the exam achievements.
ExamClosed: Exam achievements registered
ExamClosedTip: At this time exam offices, which pull exam achievements from Uni2work, are informed. Changes to exam achievements trigger further notifications
ExamGradingMode: Grading mode
ExamGradingModeTip: In which format should grades for this exam be entered?
ExamPublicStatistics: Publish statistics
ExamPublicStatisticsTip: Should automatically computed statistics also be shown to participants as soon as they are informed of their achievements?
ExamAutomaticGrading: Automatically compute grades
ExamAutomaticGradingTip: Should the exam achievement be automatically computed from the results of the exam parts? Bonus points are considered if configured. Manually overriding the computed exam achievements remains possible.
ExamGradingRule: Grade computation
ExamGradingManual': No automatic computation
UtilExamClosed: Exam achievements registered
UtilExamGradingRule: Grade computation
ExamGradingKey': By grading scale
ExamGradingKey: Grading scale
ExamGradingKeyTip: Values in the grading scale refer to the effective maximum number of points. Bonus points from exercises are added and results for exam parts are multiplied with the part's weight.
Points: Points
PointsMustBeNonNegative: Point boundaries may not be negative
PointsMustBeMonotonic: Point boundaries must increase monotonically
GradingFrom: From
ExamNew: New Exam
ExamBonus: Bonus point system
ExamBonusRule: Bonus points from exercises
ExamNoBonus': No automatic exam bonus
UtilExamBonusRule: Bonus points from exercises
ExamBonusPoints': Compute from exercise achievements
ExamBonusManual': Manual computation
ExamRegisterForOccurrence: Registration for this exam is done by registering for an occurrence/room
ExamBonusAchieved: Bonus points
ExamEditHeading examn: Edit #{examn}
ExamBonusMaxPoints: Maximum exam bonus points
ExamBonusMaxPointsTip: Bonus points are linearly interpolated from the number of exercise points achieved (or exercise sheets passed as applicable) between zero and the given bound.
ExamBonusMaxPointsNonPositive: Maximum exam bonus points must be positive and greater than zero
@ -1458,52 +1307,11 @@ ExamBonusRoundTip: Bonus points are rounded commercially to a multiple of the gi
ExamAutomaticOccurrenceAssignment: Selection of occurrences/rooms for/by participants
ExamAutomaticOccurrenceAssignmentTip: Should exam participants be distributed automatically among the configured occurrences/rooms, should they instead be permitted to autonomously choose an occurrence/room, or should they be assigned to occurrences/rooms manually by course administrators? Automatic distribution needs to be triggered by a course administrator. It is not done automatically at a predefined time. Thus manipulation of the distribution and manually assigning participants remains possible.
ExamOccurrenceRule: Procedure
ExamOccurrenceRuleParticipant: Occurrence/room assignment procedure
ExamRoomManual': No automatic or autonomous assignment
ExamRoomSurname': By surname
ExamRoomMatriculation': By matriculation
ExamRoomRandom': Randomly
ExamRoomFifo': Selected by the participants when registering
ExamOccurrenceRoomIsUnset: —
ExamOccurrenceRoomIsHidden: Room is only displayed to participants registered for this occurrence/room
ExamOccurrence: Occurrence/room
ExamNoOccurrence: No occurrence/room
ExamNoSuchOccurrence: Occurrence/Room does not exist (anymore)
ExamOccurrences: Exams
ExamRooms: Rooms
ExamTimes: Times
ExamRoomRoom: Room
ExamRoomRoomHidden: Room only for participants
ExamRoomRoomHiddenTip: Should the room only be displayed to participants registered for this occurrence/room?
ExamRoomAlreadyExists: Occurrence already configured
ExamRoomName: Internal name
ExamRoomCapacity: Capacity
ExamRoomCapacityNegative: Capacity may not be negative
ExamRoomTime: Time
ExamRoomStart: Start
ExamRoomEnd: End
ExamRoomDescription: Description
ExamTimeTip: Only for informational purposes. The actual times are set for each occurrence/room
ExamRoomAssigned: Assigned
ExamRoomRegistered: Registration
ExamStaff: Examiner/Responsible university teacher
ExamStaffTip: Please always specify a name that uniquely identifies the examiner/organiser/repsonsible university teacher! If there is a possibility that the name alone is ambiguous please also specify some additional information e.g. the professorial chair or the educational and research unit.
ExamStaffRequired: “Examiner/Responsible university teacher” must be specified
ExamExamOfficeSchools: Additional departments
ExamExamOfficeSchoolsTip: Exam offices of departments you specify here will also have full access to all results for this exam disregarding the individual participants' features of study.
NewsExamOccurrenceRoomIsUnset: —
NewsExamOccurrenceRoomIsHidden: Room is only displayed to participants registered for this occurrence/room
ExamOccurrenceStart: Exam starts
ExamFormTimes: Times
ExamFormOccurrences: Occurrences/rooms
ExamFormAutomaticFunctions: Automatic functions
ExamFormCorrection: Correction
ExamFormParts: Exam parts
ExamFormMode: Exam design
ExamFormGrades: Exam achievements
ExamModeFormNone: Not specified
ExamModeFormCustom: Custom
ExamModeFormAids: Permitted exam aids
@ -1512,13 +1320,6 @@ ExamModeFormSynchronicity: Synchronous/Asynchronous
ExamModeFormRequiredEquipment: Required equipment
ExamModeFormRequiredEquipmentIdentificationTip: There will always be a note informing participants that they will need photo identification.
ExamShowAids: Permitted exam aids
ExamShowOnline: Online/Offline
ExamShowSynchronicity: Synchronous/Asynchronous
ExamShowRequiredEquipment: Required equipment
ExamShowRequiredEquipmentNoneSet: Not specified
ExamShowIdentificationRequired: Exam participants need to be able to identify themselves. Therefor please ensure that you have official photo identification („Personalausweis“, passport, residence permit) and your student identification at hand during the exam.
ExamOpenBook: Open book
ExamClosedBook: Closed book
@ -1536,108 +1337,23 @@ ExamRequiredEquipmentCalculatorPaperPen: Pen, paper & calculator
ExamRequiredEquipmentWebcamMicrophoneInternet: Webcam & microphone
ExamRequiredEquipmentMicrophoneInternet: Microphone
ExamCorrectors: Correctors
ExamCorrectorsTip: Correctors configured here may, after the start of the exam and until "Results visible from", enter exam part results for all exam parts and participants.
ExamCorrectorAlreadyAdded: A corrector with this email address already exists
ExamCorrectorEmail: Email
ExamPart: Exam part/question
ExamParts: Exam parts/questions
ExamPartWeightNegative: Weight of all exam parts must be greater than or equal to zero
ExamPartAlreadyExists: An exam part of this name already exists
ExamPartNumber: Number
ExamPartNumbered examPartNumber: Part #{view _ExamPartNumber examPartNumber}
ExamPartNumberTip: Will be used as an internal name e.g. during CSV-export
ExamPartName: Title
ExamPartNameTip: Will be shown to participants
ExamPartMaxPoints: Maximum points
ExamPartWeight: Weight
ExamPartWeightTip: Will be multiplied with the achieved number of points before they are shown to the participant or used in automatic grade computation. Thus this also affects existing exam results (changed exam achievements have to be accepted manually again)
ExamPartResultPoints: Achieved points
ExamPartSheets: Exercise sheets
ExamPartsFrom: Parts visible from
ExamPartsFromTip: At this time the list of exam parts/questions will be published, but without their respective maximum number of points. If left empty the list will be published with “Results visible from”
ExamNameTaken exam: There already is an exam named #{exam}
ExamCreated exam: Successfully created #{exam}
ExamEdited exam: Successfully edited #{exam}
ExamNoShow: Not present
ExamVoided: Voided
ExamBonusManualParticipants: Manually computed by course administrators
ExamBonusPoints possible: Up to #{showFixed True possible} exam points
ExamBonusPointsPassed possible: Up to #{showFixed True possible} exam points applied only if the exam would also be passed without
ExamPassed: Passed
ExamNotPassed: Failed
ExamResult: Exam result
ExamRegisteredSuccess exam: Successfully registered for the exam #{exam}
ExamDeregisteredSuccess exam: Successufly deregistered from the exam #{exam}
ExamRegistered: Registered for the exam
ExamNotRegistered: Not registered for the exam
ExamRegistration: Exam registration
ExamLoginToRegister: Your need to login to Uni2work before you can register for this course.
NewsExamRegistered: Registered for the exam
NewsExamNotRegistered: Not registered for the exam
ExamRegistrationTime: Registered since
ExamRegisterToMustBeAfterRegisterFrom: "Register to" must be after "register from"
ExamDeregisterUntilMustBeAfterRegisterFrom: "Deregister until" must be after "register from"
ExamStartMustBeAfterPublishOccurrenceAssignments: "Start" must be after "publish occurrence/room-assignments"
ExamEndMustBeAfterStart: "End" must be after "start"
ExamFinishedMustBeAfterEnd: "Results visible from" must be after "end"
ExamFinishedMustBeAfterStart: "Results visible from" must be after "start"
ExamClosedMustBeAfterFinished: "Exam achievements registered" must be after "results visible from"
ExamClosedMustBeAfterStart: "Exam achievements registered" must be after "start"
ExamClosedMustBeAfterEnd: "Exam achievements registered" must be after "end"
ExamRegistrationMustFollowSchoolSeparationFromStart dayCount: As per school rules there #{pluralEN dayCount "needs" "need"} to be at least #{dayCount} #{pluralEN dayCount "day" "days"} between "Register from" and "Start".
ExamRegistrationMustFollowSchoolDuration dayCount: As per school rules there #{pluralEN dayCount "needs" "need"} to be at least #{dayCount} #{pluralEN dayCount "day" "days"} between "Register from" and "Register to".
ExamModeRequiredForRegistration: As per school rules "Exam design" needs to be fully specified before "Register from" may be set.
ExamModeSchoolDiscouraged: As per school rules the specified "Exam design" is discouraged
ExamPartsFromMustBeBeforeFinished: “Parts visible from” must be before “Results visible from”
ExamOccurrenceEndMustBeAfterStart eoName: End of the occurrence #{eoName} must be after it's start
ExamOccurrenceStartMustBeAfterExamStart eoName: Start of the occurrence #{eoName} must be after the exam start
ExamOccurrenceEndMustBeBeforeExamEnd eoName: End of the occurrence #{eoName} must be before the exam end
ExamOccurrenceDuplicate eoRoom eoRange: Combination of room #{eoRoom} and occurrence #{eoRange} occurs multiple times
ExamOccurrenceDuplicateName eoName: Internal name #{eoName} occurs multiple times
ExamOccurrenceCannotBeDeletedDueToRegistrations eoName: Occurrence #{eoName} cannot be deleted because participants are registered for it. You can remove the offending registrations via the list of exam participants.
ExamPartCannotBeDeletedDueToResults exampartnum: Part #{exampartnum} cannot be deleted because some exam part results were already entered for it.
ExamPartCannotBeDeletedDueToSheetReference exampartnum sheetName: Part #{exampartnum} cannot be deleted, since exercise sheet #{sheetName} is configured “as an exam part”.
VersionHistory: Version history
KnownBugs: Known bugs
ImplementationDetails: Implementation
ExamSynchronised: Synchronised
ExamUsersHeading: Exam participants
ExamUserDeregister: Deregister participants
ExamUserAssignOccurrence: Assign occurrence/room
ExamUserAcceptComputedResult: Accept computed result
ExamUserResetToComputedResult: Reset result
ExamUserResetBonus: Also reset exam bonus
ExamUserResetParts: Also reset exam part results
ExamUserSetPartResult: Set exam part result
ExamUserSetBonus: Set exam bonus
ExamUserSetResult: Set exam result
ExamUsersDeregistered count: Successfully deregistered #{show count} #{pluralEN count "participant" "participants"}
ExamUsersOccurrenceUpdated count: Successfully assigned occurrence/room for #{show count} #{pluralEN count "participant" "participants"}
ExamUsersResultsAccepted count: Successfully accepted computed result for #{show count} #{pluralEN count "participant" "participants"}
ExamUsersResultsReset count: Successfully reset result for #{show count} #{pluralEN count "participant" "participants"}
ExamUsersPartResultsSet count: Successfully modified exam part result for #{show count} #{pluralEN count "participant" "participants"}
ExamUsersBonusSet count: Successfully modified exam bonus for #{show count} #{pluralEN count "participant" "participants"}
ExamUsersResultSet count: Sucessfully modified exam result for #{show count} #{pluralEN count "participant" "participants"}
ExamUsersExamDataRequiresRegistration: If exam data (part-/result, occurrence/room, bonus) is to be modified/set, the relenvant participant needs to be registered for the exam.
CourseUserSetSubmissionGroup: Set/Unset registered submission group
ExamUserSynchronised: Synchronised
ExamUserSyncOfficeName: Name
ExamUserSyncTime: Timestamp
ExamUserSyncSchools: Department
ExamUserSyncLastChange: Last changed
ExamUserMarkSynchronised: Mark exam achievements as synchronised
ExternalExamUserMarkSynchronised: Mark exam achievements as synchronised
ExternalExamUserMarkSynchronisedTip: Should all exam achievements, that are included in the download, be marked as synchronised? Marking exam achievemnts as synchronised serves as a notice to other exam offices and course administrators, that the exam achievement has been dealt with properly such that no further action is required.
@ -1645,19 +1361,7 @@ ExternalExamUserEditOccurrence: Edit occurrence
ExternalExamUserEditResult: Edit exam result
ExternalExamUserDelete: Delete exam participant
ExamUserMarkSynchronisedCsv: Mark exam achievements as synchronised while exporting
ExamUserMarkSynchronisedCsvTip: Should all exam achievements, that are included in the download, be marked as synchronised? Marking exam achievemnts as synchronised serves as a notice to other exam offices and course administrators, that the exam achievement has been dealt with properly such that no further action is required.
ExamUserMarkedSynchronised n: Successfully marked #{n} #{pluralEN n "exam achievement" "exam achievements"} as synchronised
ExternalExamOccurrence: Occurrence
ExternalExamUserMarkSynchronisedCsv: Mark exam achievements as synchronised while exporting
ExternalExamUserMarkedSynchronised n: Successfully marked #{n} #{pluralEN n "exam result" "exam results"} as synchronised
ExternalExamOccurrenceEdited count: Successfully edited #{count} #{pluralEN count "occurrence" "occurrences"}
ExternalExamResultEdited count: Successfully edited #{count} #{pluralEN count "exam result" "exam results"}
ExternalExamUserDeleted count: Successfully deleted #{count} #{pluralEN count "exam participant" "exam participants"}
ExamOfficeExamUsersHeading: Exam achievements
ActionsHead: Actions
@ -1682,43 +1386,19 @@ CsvImportExplanationLabel: Informating regarding CSV import
CsvExampleData: Example data
CsvExportExample: Export example CSV
Proportion c of' prop: #{c}/#{of'} (#{rationalToFixed2 (100 * prop)}%)
ProportionNoRatio c of': #{c}/#{of'}
TableProportion c of' prop: #{c}/#{of'} (#{rationalToFixed2 (100 * prop)}%)
TableProportionNoRatio c of': #{c}/#{of'}
ExamUserCsvName tid ssh csh examn: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase csh}-#{foldedCase examn}-participants
ExternalExamUserCsvName tid@TermId ssh@SchoolId coursen@CourseName examn@ExamName: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase coursen}-#{foldedCase examn}-participants
ParticipantsCsvName tid ssh: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-participants
CsvColumnsExplanationsLabel: Column & cell format
CsvColumnsExplanationsTip: Meaning and format of the columns contained in imported and exported CSV files
CsvColumnExamUserSurname: Participant's surname
CsvColumnExamUserFirstName: Participant's given name
CsvColumnExamUserName: Participant's full name (usually includes surname and given name)
CsvColumnExamUserMatriculation: Participant's matriculation
CsvColumnExamUserField: Field of study the participant specified when enrolling for the course
CsvColumnExamUserDegree: Degree the participant pursues in their associated field of study
CsvColumnExamUserSemester: Semester the participant is in wrt. to their associated field of study
CsvColumnExamUserOccurrence: Occurrence/room the participant has been assigned
CsvColumnExamUserExercisePoints: Number of points the participant has achieved in the excercise
CsvColumnExamUserExercisePointsMax: Maximum number of points the participant could have achieved up to their assigned exam occurrence
CsvColumnExamUserExercisePasses: Number of exercise sheets the participant has passed
CsvColumnExamUserExercisePassesMax: Maximum number of exercise sheets the participant could have passed up to their assigned exam occurrence
CsvColumnExamUserBonus: Exam bonus points
CsvColumnExamUserParts: Number of points the participant achieved per exam part. One column per exam part if applicable.
CsvColumnExamUserResult: Exam achievement; "passed", "failed", "no-show", "voided", or any number grade ("1.0", "1.3", "1.7", ..., "4.0", "5.0")
CsvColumnExamUserCourseNote: Course notes for the participant
CsvColumnUserStudyFeatures: All relevant features of study for the participant, separated by semicolon (;)
CsvColumnUserField: Field of study the participant specified when enrolling for the course
CsvColumnUserDegree: Degree the participant pursues in their associated field of study
CsvColumnUserSemester: Semester the participant is in wrt. to their associated field of study
CsvColumnExamOfficeExamUserOccurrenceStart: Exam occurrence (ISO 8601)
Action: Action
ActionNoUsersSelected: No users selected
@ -1733,17 +1413,12 @@ ExamUserCsvCourseRegister: Register users for the exam and enroll them in the co
ExamUserCsvRegister: Register users for the exam
ExamUserCsvAssignOccurrence: Assign occurrences/rooms to participants
ExamUserCsvDeregister: Deregister participants from the exam
ExamUserCsvSetCourseField: Modify field of study associated with the course
ExamUserCsvOverrideBonus: Override bonus points in contradiction of computed value
ExamUserCsvOverrideResult: Override exam result in contradiction of computed value
ExamUserCsvSetBonus: Set bonus points
ExamUserCsvSetResult: Set exam result
ExamUserCsvSetPartResult: Set result for exam part
ExamUserCsvSetCourseNote: Modify course participant notes
ExamBonusNone: No bonus points
ExamUserCsvCourseNoteDeleted: Course note will be deleted
ExamUserCsvExceptionNoMatchingUser: Course participant could not be identified uniquely. All identifiers (given name(s), surname, display name, matriculation, ..) must match exactly. You can try to remove some of the identifiers for the given line (i.e. all but matriculation). Uni2work will then search for users using only the remaining identifiers. In this case special care should be taken that Uni2work correctly identifies the intended user.
ExamUserCsvExceptionMultipleMatchingUsers: Course participant could not be identified uniquely. There are multiple users that match the given identifiers. You can try to add more identifiers for the given line to ensure that only the intended user can be identified with them.
ExamUserCsvExceptionNoMatchingStudyFeatures: The specified field did not match with any of the participant's fields of study. You can try to remove the field of study for the given line. Uni2work will then automatically choose a field of study.
@ -1756,25 +1431,13 @@ ExternalExamUserCsvSetTime: Adjust exam time
ExternalExamUserCsvSetResult: Adjust exam result
ExternalExamUserCsvDeregister: Delete stored exam achievement
CourseApplicationsTableCsvSetField: Modify field of study associated with the applicatio
CourseApplicationsTableCsvSetVeto: Set/remove veto
CourseApplicationsTableCsvSetRating: Set grading
CourseApplicationsTableCsvSetComment: Set comment
CourseApplicationsTableCsvExceptionNoMatchingUser: Applicant could not be identified uniquely
CourseApplicationsTableCsvExceptionNoMatchingAllocation: Central allocation could not be identified uniquely
CourseApplicationsTableCsvExceptionNoMatchingStudyFeatures: The specified field did not match with any of the participant's fields of study
TableHeadingCsvImport: CSV import
TableHeadingCsvExport: CSV export
ExamResultAttended: Attended
ExamResultGrade: Grade
ExamResultPass: Passed/Failed
ExamResultNoShow: Not present
ExamResultVoided: Voided
ExamResultNone: No exam result
UtilExamResultGrade: Grade
UtilExamResultPass: Passed/Failed
UtilExamResultNoShow: Not present
UtilExamResultVoided: Voided
BtnAuthLDAP: Change to campus account
BtnAuthPWHash: Change to Uni2work accont
@ -1814,99 +1477,17 @@ MailSchoolFunctionInviteHeading school renderedFunction: Invitation to be #{rend
SchoolFunctionInviteExplanation renderedFunction: You were invited to act as #{renderedFunction} for a department. By accepting the invitation you are granted elevated rights within the department.
SchoolFunctionInvitationAccepted school renderedFunction: Successfully accepted invitation to be #{renderedFunction} for “#{school}”
MailSubjectExternalExamStaffInvitation coursen examn: Invitation to act as examiner for “#{examn}” of “#{coursen}”
ExternalExamStaffInviteHeading coursen examn: Invitation to act as examiner for “#{examn}” of “#{coursen}”
ExternalExamStaffInviteExplanation: You have been invited to act as an examiner for a uni2work-external exam. After accepting you will be able to upload exam results.
ExternalExamStaffInvitationAccepted coursen examn: You are now registered as an examiner for “#{examn}” of “#{coursen}”.
AllocationActive: Active
AllocationName: Name
AllocationAvailableCourses: Courses
AllocationApplication: Application
AllocationAppliedCourses: Applications
AllocationNumCoursesAvailableApplied available applied: You have applied for #{applied}/#{available} #{pluralEN applied "course" "courses"}
AllocationTitle termText ssh' allocation: #{termText} - #{ssh'}: #{allocation}
AllocationShortTitle termText ssh' ash: #{termText} - #{ssh'} - #{ash}
AllocationSchool: Department
AllocationSemester: Semester
AllocationDescription: Description
AllocationStaffDescription: Staff description
AllocationStaffRegisterFrom: Registration of courses starts
AllocationStaffRegister: Registration of courses
AllocationRegisterFrom: Application period start
AllocationRegister: Application period
AllocationRegisterClosed: This central allocation is currently closed.
AllocationRegisterOpensIn difftime: This central allocation is expected to open in #{difftime}
AllocationStaffAllocationFrom: Grading of applications starts
AllocationStaffAllocation: Grading of applications
AllocationRegisterByStaff: Enrollment by course administrators
AllocationRegisterByStaffFrom: Enrollment by course administrators starts
AllocationRegisterByStaffTip: In this periods course administrators may enroll participants in their courses.
AllocationRegisterByStaffFromTip: Starting at this time course administrators may enroll participants in their courses.
AllocationRegisterByCourseFrom: Direct enrollment starts
AllocationRegisterByCourseFromTip: Starting at this time course administrators participating in this central allocation may open their courses for participants to manage their participation themselves.
AllocationOverrideDeregister: Leaving courses only until
AllocationProcess: Allocation process
AllocationNoApplication: No application
AllocationPriority: Priority
AllocationPriorityTip: Courses to which you assign a higher priority are preferred during the allocation process.
AllocationPriorityRelative: The absolute priority values are meaningless. The only consideration is whether one course has a higher priority than another.
AllocationTotalCoursesNegative: Requested number of placements must be greater than zero
AllocationTotalCourses: Requested number of placements
AllocationTotalCoursesTip: During the allocation process you will be placed in at most as many courses as specified
AllocationRegistered: Successfully registered participation in this central allocation
AllocationRegistrationEdited: Successfully edited registration for this central allocation
BtnAllocationRegister: Register participation
BtnAllocationRegistrationEdit: Edit registration
AllocationParticipation: Your participation in this central allocation
AllocationParticipationLoginFirst: To participate in this central allocation, please log in first
AllocationCourses: Centrally allocated courses
AllocationData: Organisation
AllocationCoursePriority i: #{ordinalEN i}
AllocationCourseNoApplication: No application
BtnAllocationApply: Apply
BtnAllocationApplicationEdit: Edit application
BtnAllocationApplicationRetract: Retract application
BtnAllocationApplicationRate: Grade application
ApplicationPriority: Priority
ApplicationVeto: Veto
ApplicationVetoTip: Vetoed applicants will not be assigned to the course
ApplicationRatingPoints: Grading
ApplicationRatingPointsTip: Applicants graded 5.0 will not be assigned to the course
ApplicationRatingComment: Comment
ApplicationRatingCommentVisibleTip: Feedback for the applicant
ApplicationRatingCommentInvisibleTip: Currently only a note for course administrators
ApplicationRatingSection: Grading
ApplicationRatingSectionSelfTip: You are authorised to edit the application as well as it's grading.
AllocationNotificationNewCourse: Notifications for new courses
AllocationNotificationNewCourseTip: Do you want to be notified if a new course is added to this central allocation? This overrides the system wide setting under “Settings”.
AllocationNotificationNewCourseSuccessForceOn: You will be notified if a new course is added
AllocationNotificationNewCourseSuccessForceOff: You will not be notified if a new course is added
AllocationNotificationNewCourseCurrentlyOff: Currently you would not receive a notification.
AllocationNotificationNewCourseCurrentlyOn: Currently you would be notified.
AllocationNotificationLoginFirst: To change your notification settings, please log in first.
AllocationNextSubstitutesDeadline: Next course accepts substitutes until
AllocationNextSubstitutesDeadlineNever: No course currently accepts substitutes
AllocationFreeCapacity: Free capacity
AllocationSchoolShort: Department
Allocation: Central allocation
AllocationRegisterTo: Registration until
AllocationListTitle: Central allocations
CourseApplicationId: Application number
CourseApplicationRatingPoints: Grading
UserMatriculation: Matriculation
SchoolShort: Shorthand
SchoolName: Name
SchoolLdapOrganisations: Associated LDAP fragments
@ -1932,8 +1513,6 @@ SchoolEvaluation: Course evaluation
SchoolExamOffice: Exam office
SchoolAllocation: Administration of central allocations
ApplicationEditTip: During the application period you may edit and retract your applications at will.
UserLdapSync: Synchronise with LDAP
AllUsersLdapSync: Synchronise all with LDAP
SynchroniseLdapUserQueued n: Triggered LDAP synchronisation of #{n} #{pluralEN n "user" "users"}.
@ -1985,22 +1564,10 @@ MailAllocationNewCourseTip: The following course was added to the central alloca
MailAllocationNewCourseEditApplicationsHere: You can modify your application here:
MailAllocationNewCourseApplyHere: You can apply here:
ExamOfficeSubscribedUsers: Users
ExamOfficeSubscribedUsersTip: You may specify multiple matriculations; comma-separated
ExamOfficeSubscribedUsersExplanation: You will be able to view all exam achievements (with no regard for the students fields of study) for all users specified here.
ExamOfficeSubscribedFieldsExplanation: You will be able to view all exam achievements for any user that has at least one of the specified fields of study. You may additionally configure whether users should be allowed to opt out on a course by course basis.
UserMatriculationNotFound matriculation: There is no uni2work-user with matriculation “#{matriculation}”
UserMatriculationAmbiguous matriculation: Matriculation “#{matriculation}” isn't unique
TransactionExamOfficeUsersUpdated nDeleted nAdded: Added #{nAdded} #{pluralEN nAdded "user" "users"}, deleted #{nDeleted}
TransactionExamOfficeFieldsUpdated nUpdates: Edited #{nUpdates} #{pluralEN nUpdates "field of study" "fields of study"}
ExamOfficeFieldNotSubscribed: —
ExamOfficeFieldSubscribed: Access
ExamOfficeFieldForced: Forced access
InvalidExamOfficeFieldMode parseErr: Could not parse “#{parseErr}”
LdapIdentification: Campus account
LdapIdentificationOrEmail: Campus account/email address
@ -2028,16 +1595,7 @@ MailSubjectChangeUserDisplayEmail: Publishing this email address in Uni2work
MailIntroChangeUserDisplayEmail displayEmail: The user mentioned above wants to publish “#{displayEmail}” as their own email address. If you have not caused this email to be sent, please ignore it!
MailTitleChangeUserDisplayEmail displayName: #{displayName} wants to publish this email address as their own in Uni2work
ExamOfficeOptOutsChanged: Successfully adjusted relevant exam offices
ExamCloseHeading: Close exam
BtnCloseExam: Close exam
ExamCloseTip: When an exam is closed all relevant exam offices, which pull exam achievements from Uni2work, are informed and kept up to date with changes.
ExamCloseReminder: Please close the exam as soon as possible, when exam achievements are no longer expected to change e.g. after inspection of the exam has concluced.
ExamDidClose: Successfully closed exam
ExamCloseTipOnFinished: The exam will be closed automatically as soon as exam participants are informed of their exam achievements. That means exam offices will be able notified once and after that each time a grade changes.
ExamClosedSince time: Exam closed since #{time}
LecturerInfoTooltipNew: New feature
LecturerInfoTooltipProblem: Feature with known issues
@ -2092,12 +1650,6 @@ StudyTermsDefaultFieldType: Default type
MenuLanguage: Language
LanguageChanged: Language changed successfully
ProfileLastLdapSynchronisation: Last LDAP synchronisation
ProfileLdapPrimaryKey: LDAP primary key
GroupSizeNotNatural: “Maximum group size” needs to be a natural number
AmbiguousEmail: Email address is ambiguous
PointsPlaceholder: Points
@ -2125,7 +1677,6 @@ GlossaryTitle: Glossary
Applicant: Applicant
CourseParticipant: Course participant
Administrator: Administrator
CsvFormat: CSV format
@ -2142,44 +1693,11 @@ MetricNoSamples: No samples
MetricName: Name
MetricValue: Value
ExternalExamSemester: Semester
ExternalExamSchool: Department
ExternalExamCourseName: Course
ExternalExamCourseNameTip: Needs only be unique among within semester and department.
ExternalExamCourseNamePlaceholder: Analysis I, Programming and Modelling, ...
ExternalExamExamName: Exam title
ExternalExamExamNameTip: Needs only be unique within the course.
ExternalExamExamNamePlaceholder: Exam, Exam resit, Project discussion, ...
ExternalExamDefaultTime: Default time
ExternalExamDefaultTimePlaceholder: Time
ExternalExamDefaultTimeTip: The time of the exam needs to be specified for each participant. The time entered here is used as a default value for participants for whom no different time is later specified.
ExternalExamExamOfficeSchools: Additional departments
ExternalExamExamOfficeSchoolsTip: Exam offices of departments you specify here will also have full access to all results for this exam disregarding the individual participants' features of study.
ExternalExamStaff: Associated persons
ExternalExamStaffTip: The list of ssociated persons is shown to exam offices and participants. Additionally associated persons may upload results for the exam.
ExternalExamStaffAlreadyAdded: Person is already associated with the exam.
ExternalExamStaffEmail: Email
ExternalExamUserMustBeStaff: You yourself must always be an associated person for exams you create.
ExternalExamCourseExists: This course already exists with uni2work. Exams for courses that exist within uni2work should be associated with the course directly instead of being created as an external exam.
ExternalExamExists coursen@CourseName examn@ExamName: Exam “#{examn}” already exists for course “#{coursen}”.
ExternalExamCreated coursen@CourseName examn@ExamName: Succesfully created exam “#{examn}” for course “#{coursen}”.
ExternalExamEdited coursen@CourseName examn@ExamName: Succesfully edited exam “#{examn}” for course “#{coursen}”.
ExamAutoOccurrenceHeading: Automatic occurrence/room distribution
ExamAutoOccurrenceMinimizeRooms: Minimize number of occurrences used
ExamAutoOccurrenceMinimizeRoomsTip: Should the list of occurrences/rooms be reduced prior to distribution? Only as many occurrence/rooms as necessary would be used (starting with the biggest).
ExamAutoOccurrenceOccurrencesChangedInFlight: Occurrences/rooms changed
ExamAutoOccurrenceParticipantsAssigned num: Occurrence/room assignment rule saved successfully. Also assigned occurence/room to #{num} #{pluralEN num "participant" "participants"}
TitleExamAutoOccurrence tid ssh csh examn: #{tid} - #{ssh} - #{csh} #{examn}: Automatic occurrence/room distribution
BtnExamAutoOccurrenceCalculate: Calculate assignment rules
BtnExamAutoOccurrenceAccept: Accept assignments
BtnExamAutoOccurrenceNudgeUp: +
BtnExamAutoOccurrenceNudgeDown: -
ExamRoomMappingSurname: Surnames starting with
ExamRoomMappingMatriculation: Matriculation numbers ending in
ExamRoomLoad: Utilisation
ExamRegisteredCount: Registrations
ExamRegisteredCountOf num count: #{num}/#{count}
NoFilter: No restriction
@ -2196,31 +1714,11 @@ InfoLecturerAllocations: Central allocations
ParticipantsIntersectCourseOption tid@TermId ssh@SchoolId coursen@CourseName: #{tid} - #{ssh} - #{coursen}
ParticipantsIntersectCourses: Courses
AllocationUsersTitle tid ssh ash: #{tid}-#{ssh}-#{ash}: Applicants
AllocationUsersApplied: Applications
AllocationUsersAssigned: Assignments
AllocationUsersVetoed: Vetos
AllocationUsersRequested: Requested assignments
AllocationUsersPriority: Central priority
CsvColumnAllocationUserSurname: Applicant's surname(s)
CsvColumnAllocationUserFirstName: Applicants's first name(s)
CsvColumnAllocationUserName: Applicant's full name
CsvColumnAllocationUserMatriculation: Applicant's matriculation
CsvColumnAllocationUserStudyFeatures: Features of study
CsvColumnAllocationUserRequested: Maximum number of placements the applicant is prepared to accept
CsvColumnAllocationUserApplied: Number of applications the applicant has provided
CsvColumnAllocationUserVetos: Number of applications that have received a veto from a course administrator or have been rated with a grade that is equivalent to "failed" (5.0)
CsvColumnAllocationUserAssigned: Number of assignments the applicant has already received
CsvColumnAllocationUserNewAssigned: Number of assignments the applicant would receive, if the calculated matching is accepted
CsvColumnAllocationUserPriority: Central priority of this applicant; either a number based on the applicants position in the list sorted by priority (higher numbers mean a higher priority) or a comma-separated list of numerical priorities in square brackets (e.g. [1, 2, 3])
AllocationUsersCsvName tid ssh ash: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase ash}-applicants
AllocationPrioritiesMode: Mode
AllocationPrioritiesNumeric: Numeric priorities
AllocationPrioritiesOrdinal: Priorities based on sorted list
AllocationPriorityNumeric': Numerical
AllocationPriorityOrdinal': Based on sorted list
AllocationPriorityNumericValues: Numerical values
AllocationPriorityNumericValuesTip: Comma separated whole numbers
AllocationPriorityNumericNoValues: No numerical values were provided
@ -2228,24 +1726,13 @@ AllocationPriorityNumericNoParse val: Whole number could not be parsed: “#{val
AllocationPriorityOrdinalValueNegative: Sorting index may not be negative
AllocationPriorityOrdinalValue: Sorting index
AllocationPriorityOrdinalValueTip: Zero corresponds to the first entry in the list; higher indices correspond to applicants occurring later in the sorted list and thus to higher central priorities
AllocationPrioritiesTitle tid ssh ash: #{tid}-#{ssh}-#{ash}: Central priorities
AllocationPrioritiesFile: CSV file
AllocationPrioritiesSunk num: Successfully registered central priorities for #{num} #{pluralEN num "applicant" "applicants"}
AllocationPrioritiesMissing num: Could not register central priorities for #{num} #{pluralEN num "applicant" "applicants"} because their matriculation was not found in the uploaded CSV file
AllocationMissingPrioritiesIgnored: Applicants for whom no central priority has been registered will be ignored during assignment!
AllocationAddUserUserNotFound: Email could not be resolved to an user
AllocationAddUserUser: User
AllocationAddUserUserPlaceholder: Email
AllocationAddUserTotalCoursesLessThanOne: Number of requested courses needs to be greater than zero
AllocationAddUserTotalCourses: Requested courses
AllocationAddUserSetPriority: Set central priority?
AllocationAddUserPriority: Central priority
AllocationAddUserApplications: Applications/Ratings
AllocationAddUserTitle termText ssh' allocation: #{termText} - #{ssh'} - #{allocation}: Add applicant
AllocationAddUserShortTitle tid@TermId ssh@SchoolId ash@AllocationShorthand: #{tid}-#{ssh}-#{ash}: Add applicant
AllocationAddUserUserAdded: Successfully added applicant to central allocation
AllocationAddUserUserExists: The specified user is already an applicant for the central allocation
#hier weiß ich nicht mehr was da als Nachricht stand:
AllocationPriorityNumeric':
AllocationPriorityOrdinal':
AllocationPriorityNumeric:
AllocationPriorityOrdinal:
AllocationPrioritiesNumeric:
AllocationPrioritiesOrdinal:
ExampleUser1FirstName: Max SecondName
ExampleUser1Surname: Mustermann
@ -2257,33 +1744,6 @@ ExampleUser3FirstName: Maria
ExampleUser3Surname: Example
ExampleUser3DisplayName: Example
AllocationUsersMissingPriorities: Participants without central priority
AllocationUsersMissingPrioritiesTip: Care must be taken, that no participant is excluded from the allocation by not having been assigned a central priority.
AllocationUsersMissingPrioritiesOk: It was ensured, that all participants mentioned above, are excluded from the allocation on valid grounds.
AllocationRestrictCourses: Restrict courses
AllocationRestrictCoursesTip: Should places be assigned only in a subset of courses? This functionality can be used to make alternate placements in the case that some participants withdraw from their assigned courses. This functionality should only be used to exclude courses on valid grounds. E.g. if a seminar already had a planning meeting and is thus unable to accept new participants.
AllocationCourseRestrictionDontRestrict: Don't restrict
AllocationCourseRestrictionSubstitutes: Courses which currently allow substitute registrations
AllocationCourseRestrictionCustom: Custom
AllocationRestrictCoursesSelection: Courses
AllocationRestrictCoursesSelectionTip: Participants will only be assigned to courses listed here.
AllocationUsersMissingPrioritiesNotOk: Central allocation cannot occur until all participants, that were not excluded explicitly (“Participants without central priority”), have been assigned a central priority!
AllocationComputed: A possible allocation has been computed and stored in your session. No changes have yet been made!
AllocationOnlyCompute: By sending this form a possible allocation will be computed and saved temporarily. You can then check that the computed allocation is as expected. No changes will yet be made to the state of the database and no notifications will be sent.
AllocationAcceptFormDoesNotMatchSession: The form to accept the computed allocation was generated for a different result than the one, that is currently saved in your session.
ComputedAllocation: Computed allocation
AllocationAccepted: Successfully saved allocation
AllocationMatchedUsers: Newly assigned
AllocationUnmatchedUsers: Participants without assigned places
AllocationUnmatchedCourses: Courses without assigned participants
AllocationTime: Time of allocation
AllocationRequestedPlaces: Requested places
AllocationOfferedPlaces: Offered places
AllocationUserNewMatches: New allocations
AllocationUsersCount: Participants
AllocationCoursesCount: Courses
AllocationCourseEligible: Considered
CourseOption tid ssh coursen: #{tid} - #{ssh} - #{coursen}
BearerTokenUsageWarning: Using this interface you are able to encode essentially arbitrary permissions inte bearer tokens. This allows you to freely hand permissions off arbitrarily and without relevant restrictions. Only use this interface if you have discussed the consequences of the specific token, that you want to issue, with an experienced developer!
@ -2309,18 +1769,13 @@ BearerTokenOverrideStart: Start time
BearerTokenOverrideStartTip: If no start time is given, only the expiration time will be checked when the token is used.
FaqTitle: Frequently asked questions
AdditionalFaqs: More frequently asked questions
MultiActionUnknownAction: In a form dependent on the value of a field a value was given for which no form is available
CourseParticipantStateIsActive: Active participants
CourseParticipantStateIsInactive: Former participants
CourseParticipantStateIsActiveFilter: View
CourseUserReRegister: Re-register
CourseParticipantActive: Participant
CourseParticipantInactive: Deregistered
CourseParticipantNoShow: No show
CourseUserDownloadPersonalisedSheetFiles: Download personalised sheet files
TestDownload: Download test
TestDownloadMaxSize: Maximum filesize
@ -2369,7 +1824,6 @@ PersonalisedSheetFilesDownloadAnonymousField: Anonymisation
PersonalisedSheetFilesDownloadAnonymousFieldTip: Should the ZIP-archive of personalised files be anonymised (it would then contain no immediately identifiable information regard the course participants) or should directory names be decorated with an identifiable feature of the user and the files of meta information contain additional personal data?
PersonalisedSheetFilesIgnored count: #{count} uploaded #{pluralEN count "file was" "files were"} ignored because #{pluralEN count "it" "they"} could not be associated with both a sheet file type and a course participant.
PersonalisedSheetFilesIgnoredIntro: The following files were ignored:
CourseUserHasPersonalisedSheetFilesFilter: Participant has personalised sheet files for
SheetPersonalisedFilesUsersList: List of course participants who have personalised sheet files
PersonalisedSheetFilesDownloadRestrictByExamNone: No restriction
PersonalisedSheetFilesDownloadRestrictByExam: Restrict to exam participants

View File

@ -0,0 +1,146 @@
AllocationAcceptFormDoesNotMatchSession: Das Formular zum Akzeptieren der Vergabe wurde für ein anderes Vergabeergebnis erzeugt, als aktuell in Ihrer Session gespeichert ist.
AllocationAccepted: Zentralvergabe gespeichert.
HeadingAllocationAccept: Platzvergabe akzeptieren
AllocationAddUserUserNotFound: E-Mail Adresse konnte keinem Benutzer zugeordnet werden
AllocationAddUserUser: Benutzer:in
AllocationAddUserUserPlaceholder: E-Mail
AllocationAddUserTotalCoursesLessThanOne: Anzahl angefragter Plätze muss größer null sein
AllocationAddUserTotalCourses: Angefragte Plätze
AllocationAddUserSetPriority: Zentrale Dringlichkeit eintragen?
AllocationAddUserPriority: Zentrale Dringlichkeit
AllocationAddUserApplications: Bewerbungen/Bewertungen
AllocationAddUserTitle termText@Text ssh'@SchoolShorthand allocation@AllocationName: #{termText} - #{ssh'} - #{allocation}: Bewerber:in hinzufügen
AllocationAddUserShortTitle tid@TermId ssh@SchoolId ash@AllocationShorthand: #{tid}-#{ssh}-#{ash}: Bewerber:in hinzufügen
AllocationAddUserUserAdded: Bewerber:in erfolgreich zur Zentralanmeldung hinzugefügt
AllocationAddUserUserExists: Der/Die angegebene Benutzer/Benutzerin ist bereits ein/eine Bewerber/Bewerberin zur Zentralanmeldung
AllocationPriority: Priorität
CourseAllocationCourseAcceptsSubstitutesUntil: Akzeptiert Nachrücker:innen bis
CourseAllocationCourseAcceptsSubstitutesNever: Akzeptiert keine Nachrücker:innen
CourseAllocationApplicationInstructionsApplication: Anweisungen zur Bewerbung
CourseAllocationApplicationTemplateApplication: Bewerbungsvorlage(n)
CourseApplication: Bewerbung
AllocationCoursePriority i@Natural: #{i}. Wahl
AllocationCourseNoApplication: Keine Bewerbung
ApplicationPriority: Priorität
ApplicationVeto: Veto
ApplicationVetoTip: Bewerber:in mit Veto werden garantiert nicht dem Kurs zugeteilt
ApplicationRatingPoints: Bewertung
ApplicationRatingPointsTip: Bewerber:in mit 5.0 werden garantiert nicht dem Kurs zugeteilt
ApplicationRatingComment: Kommentar
ApplicationRatingCommentVisibleTip: Feedback an Bewerber:in
ApplicationRatingCommentInvisibleTip: Dient zunächst nur als Notiz für Kursverwalter:innen
ApplicationRatingSection: Bewertung
ApplicationRatingSectionSelfTip: Sie verfügen über hinreichende Authorisierung um sowohl die Bewerbung als auch ihre Bewertung zu editieren.
CourseApplicationExists: Sie haben sich bereits für diesen Kurs beworben
CourseApplicationCreated csh@CourseShorthand: Erfolgreich zu #{csh} beworben
CourseApplicationInvalidAction: Angegebene Aktion kann nicht durchgeführt werden
CourseApplicationEdited csh@CourseShorthand: Bewerbung zu #{csh} erfolgreich angepasst
CourseApplicationNotEdited csh@CourseShorthand: Bewerbung zu #{csh} hat sich nicht verändert
CourseApplicationRated: Bewertung erfolgreich angepasst
CourseApplicationRatingDeleted: Bewertung erfolgreich entfernt
CourseApplicationDeleted csh@CourseShorthand: Bewerbung zu #{csh} erfolgreich zurückgezogen
AllocationUsersMissingPriorities: Teilnehmer:innen ohne zentrale Dringlichkeit
AllocationUsersMissingPrioritiesTip: Es muss sichergestellt sein, dass keine Teilnehmer:innen unberechtigt aus der Zentralvergabe ausgeschlossen werden, indem ihnen keine zentrale Dringlichkeit zugewiesen wurde.
AllocationUsersMissingPrioritiesOk: Es wurde sichergestellt, dass es für jeden der genannten Benutzer:innen einen zulässigen Grund gibt, warum dieser nicht an der Zentralanmeldung teilnehmen sollte.
AllocationUsersMissingPrioritiesNotOk: Zentralvergabe kann nicht erfolgen, solange nicht allen Teilnehmer:innen, die nicht explizit von der Vergabe ausgeschlossen wurden („Teilnehmer:in ohne zentrale Dringlichkeit”), eine zentrale Dringlichkeit zugewiesen wurde!
AllocationRestrictCourses: Kurse einschränken
AllocationRestrictCoursesTip: Sollen nur Plätze für eine Teilmenge von Kursen zugewiesen werden? So können u.A. Nachrücker:innen verteilt werden. Diese Funktionalität sollte nur verwendet werden, wenn manche Kurse aus zulässigen Gründen ausgeschlossen werden müssen; z.B. weil ein Seminar bereits ein Treffen zur Organisation hatte und nun keine weiteren Teilnehmer:innen mehr akzeptieren kann.
AllocationRestrictCoursesSelection: Kurse
AllocationRestrictCoursesSelectionTip: Teilnehmer:innen werden nur auf die Kurse verteilt, die hier angegeben werden.
AllocationOnlyCompute: Durch Senden dieses Formulars wird zunächst nur eine mögliche Zentralvergabe berechnet und zur Kontrolle temporär gespeichert. Es werden keine Änderungen am Stand der Datenbank vorgenommen oder Benachrichtigungen verschickt.
AllocationComputed: Eine mögliche Zentralvergabe wurde berechnet und in Ihrer Session gespeichert. Es wurden noch keine Änderungen vorgenommen!
HeadingAllocationCompute: Platzvergabe berechnen
HeadingAllocationInfo: Hinweise zum Ablauf einer Zentralanmeldung
AllocationAvailableCourses: Kurse
AllocationAppliedCourses: Bewerbungen
AllocationListTitle: Zentralanmeldungen
AllocationMissingPrioritiesIgnored: Bewerber:innen, für die keine zentrale Priorität angegeben wird, werden bei der Vergabe ignoriert!
AllocationPriorities: Zentrale Dringlichkeiten
AllocationPrioritiesTitle tid@TermId ssh@SchoolId ash@AllocationShorthand: #{tid}-#{ssh}-#{ash}: Zentrale Dringlichkeiten
AllocationPrioritiesFile: CSV-Datei
AllocationPrioritiesSunk num@Int64: Zentrale Prioritäten für #{num} Bewerber erfolgreich hinterlegt
AllocationPrioritiesMissing num@Int64: Für #{num} #{pluralDE num "Bewerber:in" "Bewerber:innen"} ist keine zentrale Priorität hinterlegt, da in der hochgeladenen CSV-Datei die #{pluralDE num "entsprechende Matrikelnummer" "entsprechenden Matrikelnummern"} nicht gefunden #{pluralDE num "wurde" "wurden"}
AllocationPrioritiesMode: Modus
AllocationTotalCoursesNegative: Gewünschte Kursanzahl muss größer null sein
AllocationTotalCourses: Gewünschte Anzahl von Kursen
AllocationTotalCoursesTip: Sie werden im Laufe dieser Zentralanmeldung maximal so vielen Kursen zugeteilt, wie Sie hier angeben
AllocationRegistered: Teilnahme an der Zentralanmeldung erfolgreich registriert
AllocationRegistrationEdited: Einstellungen zur Teilnahme an der Zentralanmeldung erfolgreich angepasst
AllocationTitle termText@Text ssh'@SchoolShorthand allocation@AllocationName: #{termText} - #{ssh'}: #{allocation}
AllocationShortTitle termText@Text ssh'@SchoolShorthand ash@AllocationShorthand: #{termText} - #{ssh'} - #{ash}
AllocationNotificationNewCourse: Benachrichtigung bei neuen Kursen
AllocationNotificationNewCourseTip: Wollen Sie per E-Mail benachrichtigt werden, wenn für diese Zentralanmeldung ein neuer Kurs eingetragen wird? Dies überschreibt die systemweite Einstellung in "Anpassen".
AllocationNotificationNewCourseSuccessForceOn: Sie werden benachrichtigt, wenn ein neuer Kurs eingetragen wird
AllocationNotificationNewCourseSuccessForceOff: Sie werden nicht benachrichtigt, wenn ein neuer Kurs eingetragen wird
AllocationNotificationNewCourseCurrentlyOff: Aktuell würden Sie keine Benachrichtigung erhalten.
AllocationNotificationNewCourseCurrentlyOn: Aktuell würden Sie benachrichtigt werden.
CsvColumnAllocationUserSurname: Nachname(n) des/der Bewerbers/Bewerberin
CsvColumnAllocationUserFirstName: Vorname(n) des/der Bewerbers/Bewerberin
CsvColumnAllocationUserName: Voller Name des/der Bewerbers/Bewerberin
CsvColumnAllocationUserMatriculation: Matrikelnummer des/der Bewerbers/Bewerberin
CsvColumnAllocationUserStudyFeatures: Studiendaten
CsvColumnAllocationUserRequested: Maximale Anzahl von Plätzen, die der Bewerber bereit ist, zu akzeptieren
CsvColumnAllocationUserApplied: Anzahl von Bewerbungen, die der/die Bewerber/Bewerberin eingereicht hat
CsvColumnAllocationUserVetos: Anzahl von Bewerbungen, die von Kursverwaltern ein Veto oder eine Note erhalten haben, die äquivalent ist zu "Nicht Bestanden" (5.0)
CsvColumnAllocationUserAssigned: Anzahl von Plätzen, die der/die Bewerber/Bewerberin durch diese Zentralanmeldung bereits erhalten hat
CsvColumnAllocationUserNewAssigned: Anzahl von Plätzen, die der/die Bewerber/Bewerberin, nach Akzeptieren der berechneten Verteilung, zusätzlich erhalten würde
CsvColumnAllocationUserPriority: Zentrale Dringlichkeit des/der Bewerbers/Bewerberin; entweder einzelne Zahl für Sortierungsbasierte Dringlichkeiten (höhere Dringlichkeit entspricht größerer Zahl) oder Komma-separierte Liste von numerischen Dringlichkeiten in eckigen Klammern (z.B. [1, 2, 3])
AllocationUsersCsvName tid@TermId ssh@SchoolId ash@AllocationShorthand: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase ash}-bewerber:in
AllocationUserNewMatches: Neue Zuteilungen
AllocationUsers: Bewerber:innen
AllocationUsersTitle tid@TermId ssh@SchoolId ash@AllocationShorthand: #{tid}-#{ssh}-#{ash}: Bewerber:innen
#templates allocation/show/course
AllocationNoApplication: Keine Bewerbung
CourseAllocationCourseParticipants: Teilnehmer:innen
CourseMembersCount n@Int: #{n}
CourseMembersCountLimited n@Int max@Int: #{n}/#{max}
#templates allocation/accept
ComputedAllocation: Berechnete Vergabe
AllocationUsersCount: Teilnehmer:innen
AllocationCoursesCount: Kurse
AllocationRequestedPlaces: Angefragte Plätze
AllocationOfferedPlaces: Angebotene Plätze
AllocationUnmatchedUsers: Teilnehmer:innen ohne zugeteilte Plätze
AllocationUnmatchedCourses: Kurse ohne zugeteilte Teilnehmer:innen
AllocationTime: Zeitpunkt der Vergabe
AllocationCourseEligible: Berücksichtigt
AllocationMatchedUsers: Neu zugeteilt
#templates allocation/show
AllocationSchool: Institut
AllocationSemester: Semester
AllocationDescription: Beschreibung
AllocationStaffDescription: Beschreibung für Dozierende
AllocationStaffRegisterFrom: Eintragung der Kurse ab
AllocationStaffRegister: Eintragung der Kurse
AllocationStaffAllocationFrom: Bewertung der Bewerbungen ab
AllocationStaffAllocation: Bewertung der Bewerbungen
AllocationRegisterFrom: Bewerbung ab
AllocationRegister: Bewerbung
AllocationRegisterClosed: Die Zentralanmeldung ist aktuell geschlossen.
AllocationRegisterOpensIn difftime@Text: Die Zentralanmeldung öffnet voraussichtlich in #{difftime}
AllocationRegisterByStaff: An- und Abmeldung durch Kursverwalter:in
AllocationRegisterByStaffFrom: An- und Abmeldung durch Kursverwalter:in ab
AllocationRegisterByStaffTip: In diesem Zeitraum können Kursverwalter:innen Teilnehmer:innen zu und von ihren Kursen an- und abmelden.
AllocationRegisterByStaffFromTip: Ab diesem Zeitpunkt können Kursverwalter:innen Teilnehmer:innen zu und von ihren Kursen an- und abmelden.
AllocationRegisterByCourseFrom: Direkte An- und Abmeldung ab
AllocationRegisterByCourseFromTip: Frühestens ab diesem Zeitpunkt ist die eigentständige An- und Abmeldung zu und von den Kursen, die an der Zentralanmeldung teilnehmen, möglich. Kontrolle über die genauen Fristen haben die Kursverwalter:innen.
AllocationRegisterTo: Anmeldungen bis
AllocationNextSubstitutesDeadline: Nächster Kurs akzeptiert Nachrücker:innen bis
AllocationNextSubstitutesDeadlineNever: Keine Kurse akzeptieren mehr Nachrücker:innen
AllocationFreeCapacity: Freie Plätze
AllocationOverrideDeregister: Abmeldung von den Kursen nur bis
AllocationParticipation: Teilnahme an der Zentralanmeldung
AllocationParticipationLoginFirst: Um an der Zentralanmeldung teilzunehmen, loggen Sie sich bitte zunächst ein.
AllocationNotificationLoginFirst: Um Ihre Benachrichtigungseinstellungen zu ändern, loggen Sie sich bitte zunächst ein.
AllocationCourses: Kurse dieser Zentralanmeldung
AllocationPriorityTip: Kurse, denen Sie eine höhere Priorität zuteilen, werden bei der Platzvergabe präferiert.
AllocationPriorityRelative: Die absoluten Prioritäts-Werte sind bedeutungslos, es wird nur jeweils betrachtet ob ein Kurs höhere Priorität hat als ein anderer.
ApplicationEditTip: Während des Bewerbungszeitraums können eigene Bewerbungen beliebig angepasst und auch wieder zurückgezogen werden.
AllocationNumCoursesAvailableApplied available@Int applied@Int: Sie haben sich bisher für #{applied}/#{available} #{pluralDE applied "Kurs" "Kursen"} beworben
AllocationCourseRestrictionDontRestrict:
AllocationCourseRestrictionSubstitutes:
AllocationCourseRestrictionCustom:

View File

@ -0,0 +1,146 @@
AllocationAcceptFormDoesNotMatchSession: The form to accept the computed allocation was generated for a different result than the one, that is currently saved in your session.
AllocationAccepted: Successfully saved allocation
HeadingAllocationAccept: Accept allocation
AllocationAddUserUserNotFound: Email could not be resolved to an user
AllocationAddUserUser: User
AllocationAddUserUserPlaceholder: Email
AllocationAddUserTotalCoursesLessThanOne: Number of requested courses needs to be greater than zero
AllocationAddUserTotalCourses: Requested courses
AllocationAddUserSetPriority: Set central priority?
AllocationAddUserPriority: Central priority
AllocationAddUserApplications: Applications/Ratings
AllocationAddUserTitle termText ssh' allocation: #{termText} - #{ssh'} - #{allocation}: Add applicant
AllocationAddUserShortTitle tid@TermId ssh@SchoolId ash@AllocationShorthand: #{tid}-#{ssh}-#{ash}: Add applicant
AllocationAddUserUserAdded: Successfully added applicant to central allocation
AllocationAddUserUserExists: The specified user is already an applicant for the central allocation
AllocationPriority: Priority
CourseAllocationCourseAcceptsSubstitutesUntil: Accepts substitutes until
CourseAllocationCourseAcceptsSubstitutesNever: Does not accept substitutes
CourseAllocationApplicationInstructionsApplication: Instructions for application
CourseAllocationApplicationTemplateApplication: Application template(s)
CourseApplication: Application
AllocationCoursePriority i: #{ordinalEN i}
AllocationCourseNoApplication: No
ApplicationPriority: Priority
ApplicationVeto: Veto
ApplicationVetoTip: Vetoed applicants will not be assigned to the course
ApplicationRatingPoints: Grading
ApplicationRatingPointsTip: Applicants graded 5.0 will not be assigned to the course
ApplicationRatingComment: Comment
ApplicationRatingCommentVisibleTip: Feedback for the applicant
ApplicationRatingCommentInvisibleTip: Currently only a note for course administrators
ApplicationRatingSection: Grading
ApplicationRatingSectionSelfTip: You are authorised to edit the application as well as it's grading.
CourseApplicationExists: You already applied for this course
CourseApplicationCreated csh: Successfully applied for #{csh}
CourseApplicationInvalidAction: Invalid action
CourseApplicationEdited csh: Successfully changed application for #{csh}
CourseApplicationNotEdited csh: Application for #{csh} not changed
CourseApplicationRated: Successfully edited rating
CourseApplicationRatingDeleted: Successfully deleted rating
CourseApplicationDeleted csh: Successfully withdrew application for #{csh}
AllocationUsersMissingPriorities: Participants without central priority
AllocationUsersMissingPrioritiesTip: Care must be taken, that no participant is excluded from the allocation by not having been assigned a central priority.
AllocationUsersMissingPrioritiesOk: It was ensured, that all participants mentioned above, are excluded from the allocation on valid grounds.
AllocationUsersMissingPrioritiesNotOk: Central allocation cannot occur until all participants, that were not excluded explicitly (“Participants without central priority”), have been assigned a central priority!
AllocationRestrictCourses: Restrict courses
AllocationRestrictCoursesTip: Should places be assigned only in a subset of courses? This functionality can be used to make alternate placements in the case that some participants withdraw from their assigned courses. This functionality should only be used to exclude courses on valid grounds. E.g. if a seminar already had a planning meeting and is thus unable to accept new participants.
AllocationRestrictCoursesSelection: Courses
AllocationRestrictCoursesSelectionTip: Participants will only be assigned to courses listed here.
AllocationOnlyCompute: By sending this form a possible allocation will be computed and saved temporarily. You can then check that the computed allocation is as expected. No changes will yet be made to the state of the database and no notifications will be sent.
AllocationComputed: A possible allocation has been computed and stored in your session. No changes have yet been made!
HeadingAllocationCompute: Compute allocation
HeadingAllocationInfo: Information regarding central allocations
AllocationAvailableCourses: Courses
AllocationAppliedCourses: Applications
AllocationListTitle: Central allocations
AllocationMissingPrioritiesIgnored: Applicants for whom no central priority has been registered will be ignored during assignment!
AllocationPriorities: Central priorities
AllocationPrioritiesTitle tid ssh ash: #{tid}-#{ssh}-#{ash}: Central priorities
AllocationPrioritiesFile: CSV file
AllocationPrioritiesSunk num: Successfully registered central priorities for #{num} #{pluralEN num "applicant" "applicants"}
AllocationPrioritiesMissing num: Could not register central priorities for #{num} #{pluralEN num "applicant" "applicants"} because their matriculation was not found in the uploaded CSV file
AllocationPrioritiesMode: Mode
AllocationTotalCoursesNegative: Requested number of placements must be greater than zero
AllocationTotalCourses: Requested number of placements
AllocationTotalCoursesTip: During the allocation process you will be placed in at most as many courses as specified
AllocationRegistered: Successfully registered participation in this central allocation
AllocationRegistrationEdited: Successfully edited registration for this central allocation
AllocationTitle termText ssh' allocation: #{termText} - #{ssh'}: #{allocation}
AllocationShortTitle termText ssh' ash: #{termText} - #{ssh'} - #{ash}
AllocationNotificationNewCourse: Notifications for new courses
AllocationNotificationNewCourseTip: Do you want to be notified if a new course is added to this central allocation? This overrides the system wide setting under “Settings”.
AllocationNotificationNewCourseSuccessForceOn: You will be notified if a new course is added
AllocationNotificationNewCourseSuccessForceOff: You will not be notified if a new course is added
AllocationNotificationNewCourseCurrentlyOff: Currently you would not receive a notification.
AllocationNotificationNewCourseCurrentlyOn: Currently you would be notified.
CsvColumnAllocationUserSurname: Applicant's surname(s)
CsvColumnAllocationUserFirstName: Applicants's first name(s)
CsvColumnAllocationUserName: Applicant's full name
CsvColumnAllocationUserMatriculation: Applicant's matriculation
CsvColumnAllocationUserStudyFeatures: Features of study
CsvColumnAllocationUserRequested: Maximum number of placements the applicant is prepared to accept
CsvColumnAllocationUserApplied: Number of applications the applicant has provided
CsvColumnAllocationUserVetos: Number of applications that have received a veto from a course administrator or have been rated with a grade that is equivalent to "failed" (5.0)
CsvColumnAllocationUserAssigned: Number of assignments the applicant has already received
CsvColumnAllocationUserNewAssigned: Number of assignments the applicant would receive, if the calculated matching is accepted
CsvColumnAllocationUserPriority: Central priority of this applicant; either a number based on the applicants position in the list sorted by priority (higher numbers mean a higher priority) or a comma-separated list of numerical priorities in square brackets (e.g. [1, 2, 3])
AllocationUsersCsvName tid ssh ash: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase ash}-applicants
AllocationUserNewMatches: New allocations
AllocationUsers: Applicants
AllocationUsersTitle tid ssh ash: #{tid}-#{ssh}-#{ash}: Applicants
#templates allocation/show/course
AllocationNoApplication: No application
CourseAllocationCourseParticipants: Participants
CourseMembersCount n: #{n}
CourseMembersCountLimited n max: #{n}/#{max}
#templates allocation/accept
ComputedAllocation: Computed allocation
AllocationUsersCount: Participants
AllocationCoursesCount: Courses
AllocationRequestedPlaces: Requested places
AllocationOfferedPlaces: Offered places
AllocationUnmatchedUsers: Participants without assigned places
AllocationUnmatchedCourses: Courses without assigned participants
AllocationTime: Time of allocation
AllocationCourseEligible: Considered
AllocationMatchedUsers: Newly assigned
#templates allocation/show
AllocationSchool: Department
AllocationSemester: Semester
AllocationDescription: Description
AllocationStaffDescription: Staff description
AllocationStaffRegisterFrom: Registration of courses starts
AllocationStaffRegister: Registration of courses
AllocationStaffAllocationFrom: Grading of applications starts
AllocationStaffAllocation: Grading of applications
AllocationRegisterFrom: Application period start
AllocationRegister: Application period
AllocationRegisterClosed: This central allocation is currently closed.
AllocationRegisterOpensIn difftime: This central allocation is expected to open in #{difftime}
AllocationRegisterByStaff: Enrollment by course administrators
AllocationRegisterByStaffFrom: Enrollment by course administrators starts
AllocationRegisterByStaffTip: In this periods course administrators may enroll participants in their courses.
AllocationRegisterByStaffFromTip: Starting at this time course administrators may enroll participants in their courses.
AllocationRegisterByCourseFrom: Direct enrollment starts
AllocationRegisterByCourseFromTip: Starting at this time course administrators participating in this central allocation may open their courses for participants to manage their participation themselves.
AllocationRegisterTo: Registration until
AllocationNextSubstitutesDeadline: Next course accepts substitutes until
AllocationNextSubstitutesDeadlineNever: No course currently accepts substitutes
AllocationFreeCapacity: Free capacity
AllocationOverrideDeregister: Leaving courses only until
AllocationParticipation: Your participation in this central allocation
AllocationParticipationLoginFirst: To participate in this central allocation, please log in first
AllocationNotificationLoginFirst: To change your notification settings, please log in first.
AllocationCourses: Centrally allocated courses
AllocationPriorityTip: Courses to which you assign a higher priority are preferred during the allocation process.
AllocationPriorityRelative: The absolute priority values are meaningless. The only consideration is whether one course has a higher priority than another.
ApplicationEditTip: During the application period you may edit and retract your applications at will.
AllocationNumCoursesAvailableApplied available applied: You have applied for #{applied}/#{available} #{pluralEN applied "course" "courses"}
AllocationCourseRestrictionDontRestrict:
AllocationCourseRestrictionSubstitutes:
AllocationCourseRestrictionCustom:

View File

@ -177,7 +177,6 @@ CourseUsersExamRegistered count@Int64: #{show count} Teilnehmer:innen zur Prüfu
CourseUsersSubmissionGroupSetNew count@Int64: #{show count} Benutzer:innen der festen Abgabegruppe zugeordnet
CourseUsersSubmissionGroupUnset count@Int64: #{show count} Benutzer:innen aus ihren jeweiligen festen Abgabegruppen entfernt
CourseUsersStateSet count@Int64: Zustand von #{show count} #{pluralDE count "Benutzer:in" "Benutzer:innen"} angepasst
HeadingCourseMembers: Kursteilnehmer:innen
#templates/course.hamlet
LecturerFor: Dozent:in
@ -233,3 +232,28 @@ CourseAllocationsBound numApps@Int numFirstChoice@Int: Vstl. zwischen #{numFirst
CourseAllocationsBoundCapped: Die obige Anzeige wurde durch die aktuell angegebene Kurskapazität reduziert.
CourseAllocationsBoundWarningOpen: Diese Informationen entsprechen nur dem aktuellen Stand der Bewerbungen und können sich noch ändern.
CourseApplications: Bewerbungen
CourseLoginToApply: Um sich zum Kurz zu bewerben müssen Sie sich zunächst in Uni2work anmelden
CourseLoginToRegister: Um sich zum Kurs anzumelden müssen Sie zunächst in Uni2work anmelden
CourseAllApplicationsArchiveName tid@TermId ssh@SchoolId csh@CourseShorthand: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase csh}-bewerbungen
CourseLecInviteHeading courseName@Text: Einladung zum/zur Kursverwalter/Kursverwalterin für #{courseName}
CourseLecInviteExplanation: Sie wurden eingeladen, Verwalter:in für einen Kurs zu sein.
CourseUserHasPersonalisedSheetFilesFilter: Teilnehmer:in hat personalisierte Übungsblatt-Dateien für
HeadingCourseMembers: Teilnehmer
CourseAssistant: Assitent
CourseParticipantStateIsInactive: Teilnehmer:in ist nicht aktiv
CourseParticipantStateIsActive: Teilnehmer:in ist aktiv
CourseUserSendMail: Nachricht an Teilnehmer:in senden
CourseUserRegisterTutorial: Tutorium eintragen
CourseUserRegisterExam: Prüfung eintragen
CourseUserDownloadPersonalisedSheetFiles: Personalisierte Übungsblätter herunterladen
CourseUserSetSubmissionGroup: Gruppenabgabe hinzufügen
CourseUserReRegister: Teilnehmer:in registrieren
CourseApplicationsTableCsvSetVeto: Veto hinzufügen
CourseApplicationsTableCsvSetRating: Rating hinzufügen
CourseApplicationsTableCsvSetComment: Kommentar hinzufügen
CourseApplicationsTableCsvExceptionNoMatchingUser: Kein:e passende:r Benutzer:in
CourseApplicationsTableCsvExceptionNoMatchingAllocation: Keine passende Bewerbung
CourseApplicationsTableCsvExceptionNoMatchingStudyFeatures: Kein passendes Studienfach

View File

@ -177,7 +177,6 @@ CourseUsersExamRegistered count: Successfully registered #{show count} users for
CourseUsersSubmissionGroupSetNew count: Successfully added #{show count} #{pluralEN count "user" "users"} to submission group
CourseUsersSubmissionGroupUnset count: Successfully removed #{show count} #{pluralEN count "user" "users"} from their #{pluralEN count "submission group" "respective submission groups"}
CourseUsersStateSet count: Successfully changed state of #{show count} #{pluralEN count "user" "users"}
HeadingCourseMembers: Participants
#templates/course.hamlet
LecturerFor: Lecturer
@ -233,3 +232,27 @@ CourseAllocationsBound numApps numFirstChoice: Est. between #{numFirstChoice} an
CourseAllocationsBoundCapped: The numbers listed above were modified based on the currently configured course capacity.
CourseAllocationsBoundWarningOpen: The information listed above represents only the current state of applications and is subject to change.
CourseApplications: Applications
CourseLoginToApply: You need to login to Uni2work before you can apply for this course.
CourseLoginToRegister: Your need to login to Uni2work before you can register for this course.
CourseAllApplicationsArchiveName tid ssh csh: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase csh}-applications
CourseLecInviteHeading courseName: Invitation to be a course administrator for #{courseName}
CourseLecInviteExplanation: You were invited to be a course administrator.
CourseUserHasPersonalisedSheetFilesFilter: Participant has personalised sheet files for
HeadingCourseMembers: Participants
CourseAssistant: Assistant
CourseParticipantStateIsInactive: Participant is CourseParticipantStateIsInactive
CourseParticipantStateIsActive: Participant is aktive
CourseUserSendMail: Send message to participant
CourseUserRegisterTutorial: Register tutorial
CourseUserRegisterExam: Register exam
CourseUserSetSubmissionGroup: Set group-submission
CourseUserReRegister: Reregister participant
CourseUserDownloadPersonalisedSheetFiles: Download personalised sheets
CourseApplicationsTableCsvSetVeto: Set veto
CourseApplicationsTableCsvSetRating: Set rating
CourseApplicationsTableCsvSetComment: Set comment
CourseApplicationsTableCsvExceptionNoMatchingUser: No matching user
CourseApplicationsTableCsvExceptionNoMatchingAllocation: No matching allocation
CourseApplicationsTableCsvExceptionNoMatchingStudyFeatures: no matching study features

View File

@ -0,0 +1,227 @@
ExamRegistrationInviteDeadline: Einladung nur gültig bis
ExamRegistrationEnlistDirectly: Bekannte Nutzer:innen sofort als Teilnehmer:innen eintragen
ExamRegistrationEnlistDirectlyTip: Sollen, wenn manche der E-Mail-Adressen bereits in Uni2work mit Nutzer:innen assoziiert sind, jene Nutzer:innen direkt zur Prüfung hinzugefügt werden? Ansonsten werden Einladung an alle E-Mail-Adressen (nicht nur unbekannte) versandt, die die Nutzer:innen zunächst akzeptieren müssen um Prüfungsteilnehmer:in zu werden.
ExamRegistrationRegisterCourse: Nutzer:in auch zum Kurs anmelden
ExamRegistrationRegisterCourseTip: Nutzer:innen, die keine Kursteilnehmer:innen sind, werden sonst nicht zur Prüfung angemeldet.
ExamRegistrationInviteField: Einzuladende E-Mail-Adressen
ExamParticipantsRegisterHeading: Prüfungsteilnehmer:in hinzufügen
ExamParticipantsInvited n@Int: #{n} #{pluralDE n "Einladung" "Einladungen"} per E-Mail verschickt
ExamRegistrationAndCourseParticipantsRegistered n@Int: #{n} #{pluralDE n "Teilnehmer:in" "Teilnehmer:innen"} #{pluralDE n "wurde" "wurden"} sowohl zum Kurs, als auch zur Prüfung angemeldet
ExamRegistrationNotRegisteredWithoutCourse n@Int: #{n} #{pluralDE n "Teilnehmer:in" "Teilnehmer:innen"} #{pluralDE n "wurde" "wurden"} nicht zur Prüfung angemeldet, da #{pluralDE n "er/sie" "sie"} nicht zum Kurs angemeldet #{pluralDE n "ist" "sind"}
ExamAutoOccurrenceMinimizeRooms: Verwendete Räume/Termine minimieren
ExamAutoOccurrenceMinimizeRoomsTip: Soll, für die Aufteilung, die Liste an Räumen/Terminen zunächst reduziert werden, sodass nur so wenige Räume verwendet werden, wie nötig (größte zuerst)?
ExamAutoOccurrenceOccurrencesChangedInFlight: Raumliste wurde verändert
ExamAutoOccurrenceParticipantsAssigned num@Int64: Verteilungstabelle erfolgreich gespeichert und #{num} #{pluralDE num "Teilnehmer:in" "Teilnehmer:innen"} zugewiesen
Proportion c@Text of'@Text prop@Rational: #{c}/#{of'} (#{rationalToFixed2 (100 * prop)}%)
ProportionNoRatio c@Text of'@Text: #{c}/#{of'}
ExamCorrectHeading examname@Text: Prüfungsergebnisse für #{examname} eintragen
ExamCorrectErrorNeedleTooShort: Dieser Identifikator ist zu kurz.
ExamCorrectErrorMultipleMatchingParticipants: Dem Identifikator konnten mehrere Prüfungsteilnehmer:innen zugeordnet werden.
ExamCorrectErrorNoMatchingParticipants: Dem Identifikator konnte kein Prüfungsteilnehmer/keine Prüfungsteilnehmerin zugeordnet werden.
ExamCorrectErrorPartResultOutOfBounds examPartNumber@ExamPartNumber: Prüfungsergebnis für Teil #{examPartNumber} ist nicht größer Null.
ExamCorrectErrorPartResultOutOfBoundsMax examPartNumber@ExamPartNumber maxPoints@Points: Prüfungsergebnis für Teil #{examPartNumber} liegt nicht zwischen 0 und #{maxPoints}.
UnauthorizedExamCorrectorGrade: Sie haben nicht die Berechtigung für diese Prüfung Gesamtergebnisse einzutragen.
MailSubjectExamCorrectorInvitation tid@TermId ssh@SchoolId csh@CourseShorthand examn@ExamName: [#{tid}-#{ssh}-#{csh}] Einladung zum Korrektor/zur Korrektorin für #{examn}
ExamCorrectorInviteHeading examn@ExamName: Einladung zum Korrektor/zur Korrektorin für #{examn}
ExamCorrectorInviteExplanation: Sie wurden eingeladen, Prüfungs-Korrektor:in zu sein.
ExamCorrectorInvitationAccepted examn@ExamName: Sie wurden als Korrektor:in für #{examn} eingetragen
ExamNameTaken exam@ExamName: Es existiert bereits eine Prüfung mit Namen #{exam}
ExamEdited exam@ExamName: #{exam} erfolgreich bearbeitet
ExamEditHeading examn@ExamName: #{examn} bearbeiten
ExamNameTip: Muss innerhalb der Veranstaltung eindeutig sein
ExamDescription: Beschreibung
ExamFormTimes: Zeiten
ExamFormOccurrences: Prüfungstermine/Räume
ExamFormAutomaticFunctions: Automatische Funktionen
ExamFormCorrection: Korrektur
ExamFormParts: Teile
ExamFormMode: Ausgestaltung der Prüfung
ExamFormGrades: Prüfungsleistungen
ExamStart: Beginn
ExamEnd: Ende
ExamTimeTip: Nur zur Information der Studierenden, die tatsächliche Zeitangabe erfolgt pro Prüfungstermin/Raum
ExamVisibleFrom: Sichtbar ab
ExamVisibleFromTip: Ohne Datum nie sichtbar und keine Anmeldung möglich
ExamRegisterFrom: Anmeldung ab
ExamRegisterFromTip: Zeitpunkt ab dem sich Kursteilnehmer:innen selbständig zur Prüfung anmelden können; ohne Datum ist keine Anmeldung möglich
ExamRegisterTo: Anmeldung bis
ExamDeregisterUntil: Abmeldung bis
ExamPublishOccurrenceAssignments: Termin- bzw. Raumzuteilung den Teilnehmer:innen mitteilen um
ExamPublishOccurrenceAssignmentsTip: Ab diesem Zeitpunkt können Teilnehmer:innen einsehen zu welcher Teilprüfung bzw. welchen Raum sie angemeldet sind
ExamPublishOccurrenceAssignmentsParticipant: Termin- bzw. Raumzuteilung einsehbar ab
ExamPartsFrom: Teile anzeigen ab
ExamPartsFromTip: Ab dem gegebenen Zeitpunkt wird die Liste von Prüfungsteilen/Aufgaben veröffentlicht, nicht jedoch die jeweilige Maximalpunktzahl. Ohne Zeitpunkt wird die Liste ab "Ergebnisse sichtbar ab" angezeigt.
ExamFinishedTip: Zeitpunkt zu dem Prüfungergebnisse den Teilnehmer:innen gemeldet werden; ohne Datum werden die Prüfungsergebnisse zunächst nie gemeldet
ExamFinished: Ergebnisse sichtbar ab
ExamFinishedTipCloseOnFinished: Zeitpunkt zu dem Prüfungergebnisse den Teilnehmer:innen und den Prüfungsverwaltungen gemeldet werden; ohne Datum werden die Prüfungsergebnisse zunächst nie gemeldet
ExamPublicStatistics: Statistik veröffentlichen
ExamPublicStatisticsTip: Soll die automatisch berechnete statistische Auswertung auch den Teilnehmer:innen angezeigt werden, sobald diese ihre Noten einsehen können?
ExamAutomaticGrading: Automatische Notenberechnung
ExamAutomaticGradingTip: Sollen die Gesamtleistungen der Teilnehmer:innen automatisch aus den in den einzelnen Teilprüfungen erreichten Leistungen berechnet werden? Etwaige Bonuspunkte werden dabei berücksichtigt. Manuelles Überschreiben der Gesamtleistung ist dennoch möglich.
ExamBonus: Bonuspunkte-System
ExamGradingMode: Bewertungsmodus
ExamGradingModeTip: In welcher Form werden Prüfungsleistungen für diese Prüfung eingetragen?
ExamStaff: Prüfer:innen/Verantwortliche Hochschullehrer:innen
ExamStaffTip: Geben Sie bitte in jedem Fall einen Namen an, der Prüfer:in/Veranstalter:in/Hochschullehrer:in eindeutig identifiziert! Sollte der Name des Prüfers/der Prüferin allein womöglich nicht eindeutig sein, so geben Sie bitte eindeutig identifizierende Zusatzinfos, wie beispielsweise den Lehrstuhl bzw. die LFE o.Ä., an.
ExamExamOfficeSchools: Zusätzliche Institute
ExamExamOfficeSchoolsTip: Prüfungsbeauftragte von Instituten, die Sie hier angeben, erhalten im System (zusätzlich zum primären Institut des zugehörigen Kurses) volle Einsicht in sämtliche für diese Prüfung hinterlegten Leistungen, unabhängig von den Studiendaten der Teilnehmer:innen.
ExamCorrectorEmail: E-Mail
ExamCorrectors: Korrektor:innen
ExamCorrectorsTip: Hier eingetragene Korrektor:innen können zwischen Beginn der Prüfung und "Bewertung abgeschlossen ab" Ergebnisse für alle Teilprüfungen und alle Teilnehmer:innen im System hinterlegen.
ExamCorrectorAlreadyAdded: Ein Korrektor/eine Korrektorin mit dieser E-Mail ist bereits für diese Prüfung eingetragen
ExamRoom: Raum
ExamRoomManual': Keine automatische bzw. selbstständige Zuteilung
ExamRoomSurname': Nach Nachname
ExamRoomMatriculation': Nach Matrikelnummer
ExamRoomRandom': Zufällig pro Teilnehmer:in
ExamRoomFifo': Auswahl durch Teilnehmer:in bei Anmeldung
ExamRooms: Räume
ExamRoomRoom: Raum
ExamRoomRoomHidden: Raum nur für Angemeldete
ExamRoomRoomHiddenTip: Soll der Raum nur zu diesem Termin/Raum angemeldeten Prüfungsteilnehmer:innen angezeigt werden?
ExamRoomAlreadyExists: Prüfung ist bereits eingetragen
ExamRoomName: Interne Bezeichnung
ExamRoomCapacity: Kapazität
ExamRoomCapacityNegative: Kapazität darf nicht negativ sein
ExamRoomTime: Termin
ExamRoomStart: Beginn
ExamRoomEnd: Ende
ExamRoomDescription: Beschreibung
ExamRoomAssigned: Zugeteilt
ExamRoomRegistered: Anmeldung
ExamRoomMappingSurname: Nachnamen beginnend mit
ExamRoomMappingMatriculation: Matrikelnummern endend in
ExamRoomLoad: Auslastung
ExamPart: Teilprüfung/Aufgabe
ExamParts: Teilprüfungen/Aufgaben
ExamPartWeightNegative: Gewicht aller Teilprüfungen muss größer oder gleich Null sein
ExamPartAlreadyExists: Teilprüfung mit diesem Namen existiert bereits
ExamPartNumber: Nummer
ExamPartNumbered examPartNumber@ExamPartNumber: Teil #{view _ExamPartNumber examPartNumber}
ExamPartNumberTip: Wird als interne Bezeichnung z.B. bei CSV-Export verwendet
ExamPartName: Titel
ExamPartNameTip: Wird den Studierenden angezeigt
ExamPartMaxPoints: Maximalpunktzahl
ExamPartWeight: Gewichtung
ExamPartWeightTip: Wird vor Anzeige oder automatischen Notenberechnung mit der erreichten Punktzahl und der Maximalpunktzahl multipliziert; Änderungen hier passen also auch bestehende Korrekturergebnisse an (derart geänderte Noten müssen erneut manuell übernommen werden)
ExamPartResultPoints: Erreichte Punkte
ExamPartSheets: Übungsblätter
ExamPartsFromMustBeBeforeFinished: "Teile anzeigen ab" muss vor "Ergebnisse sichtbar ab" liegen
ExamPartCannotBeDeletedDueToResults exampartnum@ExamPartNumber: Teil #{exampartnum} kann nicht gelöscht werden, da bereits Prüfungsergebnisse für diesen Teil eingetragen wurden.
ExamPartCannotBeDeletedDueToSheetReference exampartnum@ExamPartNumber sheetName@SheetName: Teil #{exampartnum} kann nicht gelöscht werden, da Übungsblatt #{sheetName} den Bewertungsmodus „als Prüfungsaufgabe“ trägt.
ExamRegisterToMustBeAfterRegisterFrom: "Anmeldung ab" muss vor "Anmeldung bis" liegen
ExamDeregisterUntilMustBeAfterRegisterFrom: "Abmeldung bis" muss nach "Anmeldung bis" liegen
ExamStartMustBeAfterPublishOccurrenceAssignments: Beginn muss nach Veröffentlichung der Termin- bzw. Raumzuordnung liegen
ExamEndMustBeAfterStart: Beginn der Prüfung muss vor ihrem Ende liegen
ExamFinishedMustBeAfterEnd: "Ergebnisse sichtbar ab" muss nach Ende liegen
ExamFinishedMustBeAfterStart: "Ergebnisse sichtbar ab" muss nach Beginn liegen
ExamOccurrenceEndMustBeAfterStart eoName@ExamOccurrenceName: Beginn des Termins #{eoName} muss vor seinem Ende liegen
ExamOccurrenceStartMustBeAfterExamStart eoName@ExamOccurrenceName: Beginn des Termins #{eoName} muss nach Beginn der Prüfung liegen
ExamOccurrenceEndMustBeBeforeExamEnd eoName@ExamOccurrenceName: Ende des Termins #{eoName} liegt nach dem Ende der Prüfung
ExamOccurrenceDuplicate eoRoom@Text eoRange@Text: Raum #{eoRoom}, Termin #{eoRange} kommt mehrfach mit der selben Beschreibung vor
ExamOccurrenceDuplicateName eoName@ExamOccurrenceName: Interne Terminbezeichnung #{eoName} kommt mehrfach vor
ExamOccurrenceRoomIsUnset: —
ExamOccurrenceRoomIsHidden: Raum wird nur Teilnehmer:innen angezeigt
ExamOccurrenceCannotBeDeletedDueToRegistrations eoName@ExamOccurrenceName: Termin #{eoName} kann nicht gelöscht werden, da noch Teilnehmer:innen diesem Termin zugewiesen sind. Über die Liste von Prüfungsteilnehmern können Sie zunächst die entsprechenden Terminzuweisungen entfernen.
ExamRegistrationMustFollowSchoolSeparationFromStart dayCount@Int: Nach Regeln des Instituts #{pluralDE dayCount "muss" "müssen"} zwischen "Anmeldung ab" und "Beginn" mindestens #{dayCount} #{pluralDE dayCount "Tag" "Tage"} liegen.
ExamRegistrationMustFollowSchoolDuration dayCount@Int: Nach Regeln des Instituts #{pluralDE dayCount "muss" "müssen"} zwischen "Anmeldung ab" und "Anmeldung bis" mindestens #{dayCount} #{pluralDE dayCount "Tag" "Tage"} liegen.
ExamModeRequiredForRegistration: Nach Regeln des Institus muss die "Ausgestaltung der Prüfung" vollständig angegeben sein, bevor "Anmeldung ab" festgelegt werden kann.
ExamModeSchoolDiscouraged: Nach Regeln des Instituts wird von der angegebenen "Ausgestaltung der Prüfung" abgeraten
ExamStaffRequired: „Prüfer:innen/Verantwortilche Hochschullehrer:innen” muss angegeben werden
ExamNotRegistered: Nicht zur Prüfung angemeldet
ExamRegistered: Zur Prüfung angemeldet
ExamsHeading: Prüfungen
ExamCreated exam@ExamName: #{exam} erfolgreich angelegt
ExamNew: Neue Prüfung
ExamDeregisteredSuccess exam@ExamName: Erfolgreich von der Prüfung #{exam} abgemeldet
ExamRegisteredSuccess exam@ExamName: Erfolgreich zur Prüfung #{exam} angemeldet
MailSubjectExamRegistrationInvitation tid@TermId ssh@SchoolId csh@CourseShorthand examn@ExamName: [#{tid}-#{ssh}-#{csh}] Einladung zum Teilnehmer/zur Teilnehmerin für #{examn}
ExamRegistrationInviteHeading examn@ExamName: Einladung zum Teilnehmer/zur Teilnehmerin für #{examn}
ExamRegistrationInviteExplanation: Sie wurden eingeladen, Prüfungsteilnehmer:in zu sein.
ExamUnauthorizedParticipant: Angegebener Benutzer/angegebene Benutzerin ist nicht als Teilnehmer:in dieser Veranstaltung registriert.
ExamRegistrationInvitationAccepted examn@ExamName: Sie wurden als Teilnehmer:in für #{examn} eingetragen
ExamFinishedParticipant: Bewertung voraussichtlich abgeschlossen
ExamLoginToRegister: Um sich zum Kurs anzumelden müssen Sie zunächst in Uni2work anmelden
ExamRegisterForOccurrence: Anmeldung zur Prüfung erfolgt durch Anmeldung zu einem Termin/Raum
ExamShowIdentificationRequired: Prüfungsteilnehmer:innen müssen sich ausweisen können. Halten Sie dafür einen amtlichen Lichtbildausweis (Personalausweis, Reisepass, Aufenthaltstitel) und Ihren Studierendenausweis bereit.
CsvColumnExamUserSurname: Nachname(n) des Teilnehmers/der Teilnehmerin
CsvColumnExamUserFirstName: Vorname(n) des Teilnehmers/der Teilnehmerin
CsvColumnExamUserName: Voller Name des Teilnehmers/der Teilnehmerin (gewöhnlicherweise inkl. Vor- und Nachname(n))
CsvColumnExamUserMatriculation: Matrikelnummer des Teilnehmers/der Teilnehmerin
CsvColumnExamUserOccurrence: Prüfungstermin/-Raum, zu dem der Teilnehmer/die Teilnehmerin angemeldet ist
CsvColumnExamUserExercisePoints: Anzahl von Punkten, die der Teilnehmer/die Teilnehmerin im Übungsbetrieb erreicht hat
CsvColumnExamUserExercisePointsMax: Maximale Anzahl von Punkten, die der Teilnehmer/die Teilnehmerin im Übungsbetrieb bis zu seinem Prüfungstermin erreichen hätte können
CsvColumnExamUserExercisePasses: Anzahl von Übungsblättern, die der Teilnehmer bestanden hat
CsvColumnExamUserExercisePassesMax: Maximale Anzahl von Übungsblättern, die der Teilnehmer/die Teilnehmerin bis zu seinem Prüfungstermin bestehen hätte können
CsvColumnExamUserBonus: Anzurechnende Bonuspunkte
CsvColumnExamUserParts: Erreichte Punktezahlen in den Teilprüfungen, sofern vorhanden; eine Spalte pro Teilprüfung
CsvColumnExamUserResult: Erreichte Prüfungsleistung; "passed", "failed", "no-show", "voided", oder eine Note ("1.0", "1.3", "1.7", ..., "4.0", "5.0")
CsvColumnExamUserCourseNote: Notizen zum Teilnehmer/zur Teilnehmerin
CsvColumnExamOfficeExamUserOccurrenceStart: Prüfungstermin (ISO 8601)
CsvColumnUserStudyFeatures: Alle relevanten Studiendaten des Teilnehmers/der Teilnehmerin als Semikolon (;) separierte Liste
ExamUserCsvName tid@TermId ssh@SchoolId csh@CourseShorthand examn@ExamName: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase csh}-#{foldedCase examn}-teilnehmer:in
AchievedPasses: Bestandene Blätter
AchievedPoints: Erreichte Punkte
ExamBonusAchieved: Bonuspunkte
ExamCourseUserNote: Notiz
ExamNoFilter: Keine Einschränkung
ExamUserResetBonus: Auch Bonuspunkte zurücksetzen
ExamUserResetParts: Auch Teilergebnisse zurücksetzen
ExamPoints: Punkte
ExamResultNone: Kein Prüfungsergebnis
ExamAction: Aktion
ExamUsersExamDataRequiresRegistration: Wenn Prüfungsbezogene Daten (Teil-/Ergebnis, Termin/Raum, Bonus) gesetzt bzw. angepasst werden sollen, muss der jeweilige Teilnehmer zur Prüfung angemeldet sein bzw. werden.
ExamNoOccurrence: Kein Termin/Raum
ExamBonusNone: Keine Bonuspunkte
ExamUserCsvCourseNoteDeleted: Notiz wird gelöscht
ExamUsersDeregistered count@Int64: #{show count} Teilnehmer:in von der Prüfung abgemeldet
ExamUsersOccurrenceUpdated count@Int64: Termin/Raum für #{show count} #{pluralDE count "Teilnehmer:in" "Teilnehmer:innen"} gesetzt
ExamUsersResultsAccepted count@Int64: Prüfungsergebnis für #{show count} #{pluralDE count "Teilnehmer:in" "Teilnehmer:innen"} übernommen
ExamUsersResultsReset count@Int64: Prüfungsergebnis für #{show count} #{pluralDE count "Teilnehmer:in" "Teilnehmer:innen"} zurückgesetzt
ExamUsersPartResultsSet count@Int64: Teilprüfungsergebnis für #{show count} #{pluralDE count "Teilnehmer:in" "Teilnehmer:innen"} angepasst
ExamUsersBonusSet count@Int64: Bonuspunkte für #{show count} #{pluralDE count "Teilnehmer:in" "Teilnehmer:innen"} angepasst
ExamUsersResultSet count@Int64: Prüfungsergebnis für #{show count} #{pluralDE count "Teilnehmer:in" "Teilnehmer:innen"} angepasst
ExamUsersHeading: Prüfungsteilnehmer:innen
ExamCorrectHeadDate: Zeit
ExamCorrectHeadParticipant: Teilnehmer:in
ExamCorrectHeadPart exampartnum@ExamPartNumber: #{exampartnum}
ExamCorrectHeadStatus: Status
ExamCorrectUserCandidatesMore: und weitere
ExamCorrectExamResultDelete: Prüfungsergebnis löschen
ExamCorrectExamResultNone: Keine Änderung
ExamCorrectButtonSend: Senden
ExamResultGrade: Note
ExamResultPass: Bestanden/Nicht Bestanden
ExamResultNoShow: Nicht erschienen
ExamResultVoided: Entwertet
#templates /exam-users
ExamCloseHeading: Prüfung abschließen
ExamAutoOccurrenceHeading: Automatische Raum-/Terminverteilung
#templates /exam-show
ExamShowOnline: Online/Offline
ExamShowSynchronicity: Synchron/Asynchron
ExamNever: Nie
ExamShowAids: Erlaubte Hilfsmittel
ExamShowRequiredEquipment: Erforderliche Hilfsmittel
ExamShowRequiredEquipmentNoneSet: Keine Angabe durch die Kursverwalter:innen
ExamClosed: Noten gemeldet
ExamGradingRule: Notenberechnung
ExamBonusRule: Prüfungsbonus aus Übungsbetrieb
ExamOccurrenceRule: Verfahren
ExamOccurrenceRuleParticipant: Termin- bzw. Raumzuteilungsverfahren
ExamRegisteredCount: Anmeldungen
ExamRegisteredCountOf num@Int64 count@Int64: #{num}/#{count}
ExamOccurrences: Termine
GradingFrom: Ab
ExamNoShow: Nicht erschienen
ExamVoided: Entwertet
#templates eidgets/bonus-rule
ExamBonusManualParticipants: Von den Kursverwalter:innen manuell berechnet
ExamBonusPoints possible@Points: Maximal #{showFixed True possible} Prüfungspunkte
ExamBonusPointsPassed possible@Points: Maximal #{showFixed True possible} Prüfungspunkte, falls die Prüfung auch ohne Bonus bereits bestanden ist
ExamUserResetToComputedResult:
ExamUserResetToComputedResultData:

View File

@ -0,0 +1,227 @@
ExamRegistrationInviteDeadline: Invitation valid until
ExamRegistrationEnlistDirectly: Register known users directly
ExamRegistrationEnlistDirectlyTip: Should users whose email addresses are known to the system be registered for the exam directly? Otherwise invitations will be sent to alle users, which they will have to accept first in order to be registered. Unknown users always receive an invitation.
ExamRegistrationRegisterCourse: Also enroll users in course
ExamRegistrationRegisterCourseTip: Users that aren't enrolled already won't be registered for the exam otherwise.
ExamRegistrationInviteField: Email addresses
ExamParticipantsRegisterHeading: Add exam participants
ExamParticipantsInvited n: #{n} #{pluralEN n "invitation" "invitations"} sent via email
ExamRegistrationAndCourseParticipantsRegistered n: Registered #{n} #{pluralEN n "participant" "participants"} for the exam as well as for the course
ExamRegistrationNotRegisteredWithoutCourse n: #{n} #{pluralEN n "user" "users"} were not registered for the exam since they are not enrolled in the course
ExamAutoOccurrenceMinimizeRooms: Minimize number of occurrences used
ExamAutoOccurrenceMinimizeRoomsTip: Should the list of occurrences/rooms be reduced prior to distribution? Only as many occurrence/rooms as necessary would be used (starting with the biggest).
ExamAutoOccurrenceOccurrencesChangedInFlight: Occurrences/rooms changed
ExamAutoOccurrenceParticipantsAssigned num: Occurrence/room assignment rule saved successfully. Also assigned occurence/room to #{num} #{pluralEN num "participant" "participants"}
Proportion c of' prop: #{c}/#{of'} (#{rationalToFixed2 (100 * prop)}%)
ProportionNoRatio c of': #{c}/#{of'}
ExamCorrectHeading examname: Submit corrections for #{examname}
ExamCorrectErrorNeedleTooShort: This identifier is too short.
ExamCorrectErrorMultipleMatchingParticipants: This identifier matches on multiple exam participants.
ExamCorrectErrorNoMatchingParticipants: This identifier does not match on any exam participant.
ExamCorrectErrorPartResultOutOfBounds examPartNumber: Exam part result for #{examPartNumber} ist not greater zero.
ExamCorrectErrorPartResultOutOfBoundsMax examPartNumber maxPoints: Exam part result for #{examPartNumber} is not between 0 and #{maxPoints}.
UnauthorizedExamCorrectorGrade: You may not enter overall exam achievements for this exam.
MailSubjectExamCorrectorInvitation tid ssh csh examn: [#{tid}-#{ssh}-#{csh}] Invitation to be a corrector for #{examn}
ExamCorrectorInviteHeading examn: Invitation to be a corrector for #{examn}
ExamCorrectorInviteExplanation: You were invited to be a corrector.
ExamCorrectorInvitationAccepted examn: You are now corrector for #{examn}
ExamNameTaken exam: There already is an exam named #{exam}
ExamEdited exam: Successfully edited #{exam}
ExamEditHeading examn: Edit #{examn}
ExamNameTip: Needs to be unique within the course
ExamDescription: Description
ExamFormTimes: Times
ExamFormOccurrences: Occurrences/rooms
ExamFormAutomaticFunctions: Automatic functions
ExamFormCorrection: Correction
ExamFormParts: Exam parts
ExamFormMode: Exam design
ExamFormGrades: Exam achievements
ExamStart: Start
ExamEnd: End
ExamTimeTip: Only for informational purposes. The actual times are set for each occurrence/room
ExamVisibleFrom: Visible from
ExamVisibleFromTip: If left empty the exam is never visible and course participants may not register.
ExamRegisterFrom: Register from
ExamRegisterFromTip: Start of the period in which course participants may register themselves for the exam. If left empty participants are never allowed to register.
ExamRegisterTo: Register to
ExamDeregisterUntil: Deregister until
ExamPublishOccurrenceAssignments: Publish occurrence/room-assignments
ExamPublishOccurrenceAssignmentsTip: At this time participants can find out to which occurrence/room they are assigned
ExamPublishOccurrenceAssignmentsParticipant: Occurrence/room-assignments published
ExamPartsFrom: Parts visible from
ExamPartsFromTip: At this time the list of exam parts/questions will be published, but without their respective maximum number of points. If left empty the list will be published with “Results visible from”
ExamFinishedTip: At this participants are informed of their exam achievements. If left empty participants are never informed of their exam achievements.
ExamFinishedTipCloseOnFinished: At this time participants and exam offices are informed of the exam achievements. If left empty participants and exam offices are never informed of the exam achievements.
ExamFinished: Results visible from
ExamPublicStatistics: Publish statistics
ExamPublicStatisticsTip: Should automatically computed statistics also be shown to participants as soon as they are informed of their achievements?
ExamAutomaticGrading: Automatically compute grades
ExamAutomaticGradingTip: Should the exam achievement be automatically computed from the results of the exam parts? Bonus points are considered if configured. Manually overriding the computed exam achievements remains possible.
ExamBonus: Bonus point system
ExamGradingMode: Grading mode
ExamGradingModeTip: In which format should grades for this exam be entered?
ExamStaff: Examiner/Responsible university teacher
ExamStaffTip: Please always specify a name that uniquely identifies the examiner/organiser/repsonsible university teacher! If there is a possibility that the name alone is ambiguous please also specify some additional information e.g. the professorial chair or the educational and research unit.
ExamExamOfficeSchools: Additional departments
ExamExamOfficeSchoolsTip: Exam offices of departments you specify here will also have full access to all results for this exam disregarding the individual participants' features of study.
ExamCorrectorEmail: Email
ExamCorrectors: Correctors
ExamCorrectorsTip: Correctors configured here may, after the start of the exam and until "Results visible from", enter exam part results for all exam parts and participants.
ExamCorrectorAlreadyAdded: A corrector with this email address already exists
ExamRoom: Room
ExamRoomManual': No automatic or autonomous assignment
ExamRoomSurname': By surname
ExamRoomMatriculation': By matriculation
ExamRoomRandom': Randomly
ExamRoomFifo': Selected by the participants when registering
ExamRooms: Rooms
ExamRoomRoom: Room
ExamRoomRoomHidden: Room only for participants
ExamRoomRoomHiddenTip: Should the room only be displayed to participants registered for this occurrence/room?
ExamRoomAlreadyExists: Occurrence already configured
ExamRoomName: Internal name
ExamRoomCapacity: Capacity
ExamRoomCapacityNegative: Capacity may not be negative
ExamRoomTime: Time
ExamRoomStart: Start
ExamRoomEnd: End
ExamRoomDescription: Description
ExamRoomAssigned: Assigned
ExamRoomRegistered: Registration
ExamRoomMappingSurname: Surnames starting with
ExamRoomMappingMatriculation: Matriculation numbers ending in
ExamRoomLoad: Utilisation
ExamPart: Exam part/question
ExamParts: Exam parts/questions
ExamPartWeightNegative: Weight of all exam parts must be greater than or equal to zero
ExamPartAlreadyExists: An exam part of this name already exists
ExamPartNumber: Number
ExamPartNumbered examPartNumber: Part #{view _ExamPartNumber examPartNumber}
ExamPartNumberTip: Will be used as an internal name e.g. during CSV-export
ExamPartName: Title
ExamPartNameTip: Will be shown to participants
ExamPartMaxPoints: Maximum points
ExamPartWeight: Weight
ExamPartWeightTip: Will be multiplied with the achieved number of points before they are shown to the participant or used in automatic grade computation. Thus this also affects existing exam results (changed exam achievements have to be accepted manually again)
ExamPartResultPoints: Achieved points
ExamPartSheets: Exercise sheets
ExamPartsFromMustBeBeforeFinished: “Parts visible from” must be before “Results visible from”
ExamPartCannotBeDeletedDueToResults exampartnum: Part #{exampartnum} cannot be deleted because some exam part results were already entered for it.
ExamPartCannotBeDeletedDueToSheetReference exampartnum sheetName: Part #{exampartnum} cannot be deleted, since exercise sheet #{sheetName} is configured “as an exam part”.
ExamRegisterToMustBeAfterRegisterFrom: "Register to" must be after "register from"
ExamDeregisterUntilMustBeAfterRegisterFrom: "Deregister until" must be after "register from"
ExamStartMustBeAfterPublishOccurrenceAssignments: "Start" must be after "publish occurrence/room-assignments"
ExamEndMustBeAfterStart: "End" must be after "start"
ExamFinishedMustBeAfterEnd: "Results visible from" must be after "end"
ExamFinishedMustBeAfterStart: "Results visible from" must be after "start"
ExamOccurrenceEndMustBeAfterStart eoName: End of the occurrence #{eoName} must be after it's start
ExamOccurrenceStartMustBeAfterExamStart eoName: Start of the occurrence #{eoName} must be after the exam start
ExamOccurrenceEndMustBeBeforeExamEnd eoName: End of the occurrence #{eoName} must be before the exam end
ExamOccurrenceDuplicate eoRoom eoRange: Combination of room #{eoRoom} and occurrence #{eoRange} occurs multiple times
ExamOccurrenceDuplicateName eoName: Internal name #{eoName} occurs multiple times
ExamOccurrenceRoomIsUnset: —
ExamOccurrenceRoomIsHidden: Room is only displayed to participants registered for this occurrence/room
ExamOccurrenceCannotBeDeletedDueToRegistrations eoName: Occurrence #{eoName} cannot be deleted because participants are registered for it. You can remove the offending registrations via the list of exam participants.
ExamRegistrationMustFollowSchoolSeparationFromStart dayCount: As per school rules there #{pluralEN dayCount "needs" "need"} to be at least #{dayCount} #{pluralEN dayCount "day" "days"} between "Register from" and "Start".
ExamRegistrationMustFollowSchoolDuration dayCount: As per school rules there #{pluralEN dayCount "needs" "need"} to be at least #{dayCount} #{pluralEN dayCount "day" "days"} between "Register from" and "Register to".
ExamModeRequiredForRegistration: As per school rules "Exam design" needs to be fully specified before "Register from" may be set.
ExamModeSchoolDiscouraged: As per school rules the specified "Exam design" is discouraged
ExamStaffRequired: “Examiner/Responsible university teacher” must be specified
ExamNotRegistered: Not registered for the exam
ExamRegistered: Registered for the exam
ExamsHeading: Exams
ExamCreated exam: Successfully created #{exam}
ExamNew: New Exam
ExamDeregisteredSuccess exam: Successufly deregistered from the exam #{exam}
ExamRegisteredSuccess exam: Successfully registered for the exam #{exam}
MailSubjectExamRegistrationInvitation tid ssh csh examn: [#{tid}-#{ssh}-#{csh}] Invitation to be a participant of #{examn}
ExamRegistrationInviteHeading examn: Invitation to participate in #{examn}
ExamRegistrationInviteExplanation: You were invited to register for an exam.
ExamUnauthorizedParticipant: The specified user is no participant of this course.
ExamRegistrationInvitationAccepted examn: You are now registered for #{examn}
ExamFinishedParticipant: Marking expected to be finished
ExamLoginToRegister: Your need to login to Uni2work before you can register for this course.
ExamRegisterForOccurrence: Registration for this exam is done by registering for an occurrence/room
ExamShowIdentificationRequired: Exam participants need to be able to identify themselves. Therefor please ensure that you have official photo identification („Personalausweis“, passport, residence permit) and your student identification at hand during the exam.
CsvColumnExamUserSurname: Participant's surname
CsvColumnExamUserFirstName: Participant's given name
CsvColumnExamUserName: Participant's full name (usually includes surname and given name)
CsvColumnExamUserMatriculation: Participant's matriculation
CsvColumnExamUserOccurrence: Occurrence/room the participant has been assigned
CsvColumnExamUserExercisePoints: Number of points the participant has achieved in the excercise
CsvColumnExamUserExercisePointsMax: Maximum number of points the participant could have achieved up to their assigned exam occurrence
CsvColumnExamUserExercisePasses: Number of exercise sheets the participant has passed
CsvColumnExamUserExercisePassesMax: Maximum number of exercise sheets the participant could have passed up to their assigned exam occurrence
CsvColumnExamUserBonus: Exam bonus points
CsvColumnExamUserParts: Number of points the participant achieved per exam part. One column per exam part if applicable.
CsvColumnExamUserResult: Exam achievement; "passed", "failed", "no-show", "voided", or any number grade ("1.0", "1.3", "1.7", ..., "4.0", "5.0")
CsvColumnExamUserCourseNote: Course notes for the participant
CsvColumnExamOfficeExamUserOccurrenceStart: Exam occurrence (ISO 8601)
CsvColumnUserStudyFeatures: All relevant features of study for the participant, separated by semicolon (;)
ExamUserCsvName tid ssh csh examn: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase csh}-#{foldedCase examn}-participants
AchievedPasses: Passed sheets
AchievedPoints: Points achieved
ExamBonusAchieved: Bonus points
ExamCourseUserNote: Note
ExamNoFilter: No restriction
ExamUserResetBonus: Also reset exam bonus
ExamUserResetParts: Also reset exam part results
ExamPoints: Points
ExamResultNone: No exam result
ExamAction: Action
ExamUsersExamDataRequiresRegistration: If exam data (part-/result, occurrence/room, bonus) is to be modified/set, the relenvant participant needs to be registered for the exam.
ExamNoOccurrence: No occurrence/room
ExamBonusNone: No bonus points
ExamUserCsvCourseNoteDeleted: Course note will be deleted
ExamUsersDeregistered count: Successfully deregistered #{show count} #{pluralEN count "participant" "participants"}
ExamUsersOccurrenceUpdated count: Successfully assigned occurrence/room for #{show count} #{pluralEN count "participant" "participants"}
ExamUsersResultsAccepted count: Successfully accepted computed result for #{show count} #{pluralEN count "participant" "participants"}
ExamUsersResultsReset count: Successfully reset result for #{show count} #{pluralEN count "participant" "participants"}
ExamUsersPartResultsSet count: Successfully modified exam part result for #{show count} #{pluralEN count "participant" "participants"}
ExamUsersBonusSet count: Successfully modified exam bonus for #{show count} #{pluralEN count "participant" "participants"}
ExamUsersResultSet count: Sucessfully modified exam result for #{show count} #{pluralEN count "participant" "participants"}
ExamUsersHeading: Exam participants
ExamCorrectHeadDate: Time
ExamCorrectHeadParticipant: Participant
ExamCorrectHeadPart exampartnum: #{exampartnum}
ExamCorrectHeadStatus: Status
ExamCorrectUserCandidatesMore: and more
ExamCorrectExamResultDelete: Delete exam result
ExamCorrectExamResultNone: No change
ExamCorrectButtonSend: Submit
ExamResultGrade: Grade
ExamResultPass: Passed/Failed
ExamResultNoShow: Not present
ExamResultVoided: Voided
#templates /exam-users
ExamCloseHeading: Close exam
ExamAutoOccurrenceHeading: Automatic occurrence/room distribution
#templates /exam-show
ExamNever: Never
ExamShowOnline: Online/Offline
ExamShowSynchronicity: Synchronous/Asynchronous
ExamShowAids: Permitted exam aids
ExamShowRequiredEquipment: Required equipment
ExamShowRequiredEquipmentNoneSet: Not specified
ExamClosed: Exam achievements registered
ExamGradingRule: Grade computation
ExamBonusRule: Bonus points from exercises
ExamOccurrenceRule: Procedure
ExamOccurrenceRuleParticipant: Occurrence/room assignment procedure
ExamRegisteredCount: Registrations
ExamRegisteredCountOf num count: #{num}/#{count}
ExamOccurrences: Exams
GradingFrom: From
#templates widgets/bonus-rule
ExamBonusManualParticipants: Manually computed by course administrators
ExamBonusPoints possible: Up to #{showFixed True possible} exam points
ExamBonusPointsPassed possible: Up to #{showFixed True possible} exam points applied only if the exam would also be passed without
ExamNoShow: Not present
ExamVoided: Voided
ExamUserResetToComputedResult:
ExamUserResetToComputedResultData:

View File

@ -0,0 +1,49 @@
ExamOfficeOptOutsChanged: Zuständige Prüfungsbeauftragte erfolgreich angepasst
HeadingCourseExamOffice: Prüfungsbeauftragte
ExamDidClose: Prüfung erfolgreich abgeschlossen
CsvColumnExamOfficeExamUserOccurrenceStartExamOffice: Prüfungstermin (ISO 8601)
CsvColumnUserStudyFeaturesExamOffice: Alle relevanten Studiendaten des Teilnehmers/derteilnehmerin als Semikolon (;) separierte Liste
CsvColumnExamUserSurnameExamOffice: Nachname(n) des Teilnehmers/der Teilnehmerin
CsvColumnExamUserFirstNameExamOffice: Vorname(n) des Teilnehmers/der Teilnehmerin
CsvColumnExamUserNameExamOffice: Voller Name des Teilnehmers/der Teilnehmerin (gewöhnlicherweise inkl. Vor- und Nachname(n))
CsvColumnExamUserMatriculationExamOffice: Matrikelnummer des Teilnehmers/der Teilnehmerin
CsvColumnExamUserResultExamOffice: Erreichte Prüfungsleistung; "passed", "failed", "no-show", "voided", oder eine Note ("1.0", "1.3", "1.7", ..., "4.0", "5.0")
ExamUserCsvNameExamOffice tid@TermId ssh@SchoolId csh@CourseShorthand examn@ExamName: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase csh}-#{foldedCase examn}-teilnehmer:in
ExamUserSynchronised: Synchronisiert
ExamOfficeExamUserMarkSynchronisedCsv: Prüfungsleistungen beim Export als synchronisiert markieren
ExamOfficeExamUserMarkSynchronisedCsvTip: Sollen beim CSV-Export automatisch alle heruntergeladenen Prüfungsleistungen als synchronisiert markiert werden? Diese Markierung dient als Hinweis an andere Prüfungsbeauftragte und die Kursverwalter, dass die Leistung an der korrekten Stelle vermerkt wurde und keiner weiteren Handlung bedarf.
ExamUserMarkedSynchronised n@Int: #{n} #{pluralDE n "Prüfungsleistung" "Prüfungsleistungen"} als synchronisiert markiert
ExamOfficeExamUsersHeading: Prüfungsleistungen
ExamSynchronised: Synchronisiert
HeadingExamList: Prüfungen
ExternalExamGrades coursen@CourseName examn@ExamName: Prüfungsleistungen: #{coursen}, #{examn}
InvalidExamOfficeFieldMode parseErr@Text: Konnte „#{parseErr}“ nicht interpretieren
TransactionExamOfficeFieldsUpdated nUpdates@Int: #{nUpdates} #{pluralDE nUpdates "Studienfach" "Studienfächer"} angepasst
HeadingExamOfficeFields: Fächer
HeadingExamOfficeUsers: Benutzer:innen
ExamOfficeSubscribedFieldsExplanation: Sie können für alle Benutzer:innen, die mindestens eines der angegeben Studienfächer studieren, sämtliche Prüfungsergebnisse einsehen. Sie haben zusätzlich die Möglichkeit anzugeben, ob es den Benutzer:innen gestattet sein soll, dieser Einsicht im Einzelfall (pro Kurs) zu widersprechen.
MailSubjectExamOfficeUserInvitation displayName@Text: Berücksichtigung von Prüfungsleistungen in Uni2work
ExamOfficeUserInviteHeading displayName@Text: Zugriff auf Ihre Prüfungsleistungen durch #{displayName}
ExamOfficeUserInviteExplanation: Um Ihre Prüfungsleistungen ordnungsgemäß anrechnen zu können (z.B. im finalen Transcript of Records für Erasmus-Studierende) werden sie eingeladen der hierfür zuständigen Stelle Einsicht zu gewähren.
ExamOfficeUserInvitationAccepted: Einsicht erfolgreich gewährt
ExamOfficeUserEmail: E-Mail
ExamOfficeSubscribedUsers: Benutzer:innen
ExamOfficeSubscribedUsersTip: Sie können mehrere Matrikelnummern mit Komma separieren
ExamOfficeSubscribedUsersExplanation: Für hier angegebene Benutzer:innen können Sie (ungeachtet der Fächer des Studierenden) stets sämtliche Prüfungsergebnisse einsehen.
TransactionExamOfficeUsersUpdated nDeleted@Int nAdded@Int: #{nAdded} Benutzer:innen hinzugefügt, #{nDeleted} Benutzer:innen gelöscht
#templates widgets/exam-close-on-finished "/exam-close
ExamCloseTipOnFinished: Die Prüfung wird automatisch abgeschlossen, also Prüfungsbeauftragte, die im System Note einsehen, benachrichtigt und danach bei Änderungen informiert, sobald die Noten für die Prüfungsteilnehmer:innen veröffentlicht werden.
ExamClosedSince time@Text: Prüfung abgeschlossen seit #{time}
ExamCloseTip: Wenn eine Prüfung abgeschlossen wird, werden Prüfungsbeauftragte, die im System Noten einsehen, benachrichtigt und danach bei Änderungen informiert.
ExamCloseReminder: Bitte schließen Sie die Prüfung frühstmöglich, sobald die Prüfungsleistungen sich voraussichtlich nicht mehr ändern werden. Z.B. direkt nach der Klausureinsicht.
#templates exam-office/*
ExamUserSyncOfficeName: Name
ExamUserSyncTime: Zeitpunkt
ExamUserSyncSchools: Institute
ExamUserSyncLastChange: Zuletzt geändert
ExamTimes: Termine
ExamOfficeFieldNotSubscribed: Nicht Abnonniert
ExamOfficeFieldSubscribed: Abboniert

View File

@ -0,0 +1,49 @@
ExamOfficeOptOutsChanged: Successfully adjusted relevant exam offices
HeadingCourseExamOffice: Exam offices
ExamDidClose: Successfully closed exam
CsvColumnExamOfficeExamUserOccurrenceStartExamOffice: Exam occurrence (ISO 8601)
CsvColumnUserStudyFeaturesExamOffice: All relevant features of study for the participant, separated by semicolon (;)
CsvColumnExamUserSurnameExamOffice: Participant's surname
CsvColumnExamUserFirstNameExamOffice: Participant's given name
CsvColumnExamUserNameExamOffice: Participant's full name (usually includes surname and given name)
CsvColumnExamUserMatriculationExamOffice: Participant's matriculation
CsvColumnExamUserResultExamOffice: Exam achievement; "passed", "failed", "no-show", "voided", or any number grade ("1.0", "1.3", "1.7", ..., "4.0", "5.0")
ExamUserCsvNameExamOffice tid ssh csh examn: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase csh}-#{foldedCase examn}-participants
ExamUserSynchronised: Synchronised
ExamUserMarkedSynchronised n: Successfully marked #{n} #{pluralEN n "exam achievement" "exam achievements"} as synchronised
ExamOfficeExamUsersHeading: Exam achievements
ExamSynchronised: Synchronised
ExamOfficeExamUserMarkSynchronisedCsv: Mark exam achievements as synchronised while exporting
ExamOfficeExamUserMarkSynchronisedCsvTip: Should all exam achievements, that are included in the download, be marked as synchronised? Marking exam achievemnts as synchronised serves as a notice to other exam offices and course administrators, that the exam achievement has been dealt with properly such that no further action is required.
HeadingExamList: Exams
ExternalExamGrades coursen examn: Exam achievements: #{coursen}, #{examn}
InvalidExamOfficeFieldMode parseErr: Could not parse “#{parseErr}”
TransactionExamOfficeFieldsUpdated nUpdates: Edited #{nUpdates} #{pluralEN nUpdates "field of study" "fields of study"}
HeadingExamOfficeFields: Fields of study
HeadingExamOfficeUsers: Users
ExamOfficeSubscribedFieldsExplanation: You will be able to view all exam achievements for any user that has at least one of the specified fields of study. You may additionally configure whether users should be allowed to opt out on a course by course basis.
MailSubjectExamOfficeUserInvitation displayName: Consideration of your exam achievements within Uni2work
ExamOfficeUserInviteHeading displayName: Access of your exam achievements by #{displayName}
ExamOfficeUserInviteExplanation: To properly consider your exam achievements (e.g. in the final transcript of records for Erasmus-students) you are invited to grant access to the appropriate parties.
ExamOfficeUserInvitationAccepted: Access to exam achievements granted
ExamOfficeUserEmail: Email
ExamOfficeSubscribedUsers: Users
ExamOfficeSubscribedUsersTip: You may specify multiple matriculations; comma-separated
ExamOfficeSubscribedUsersExplanation: You will be able to view all exam achievements (with no regard for the students fields of study) for all users specified here.
TransactionExamOfficeUsersUpdated nDeleted nAdded: Added #{nAdded} #{pluralEN nAdded "user" "users"}, deleted #{nDeleted}
#templates widgets/exam-close-on-finished "/exam-close
ExamCloseTipOnFinished: The exam will be closed automatically as soon as exam participants are informed of their exam achievements. That means exam offices will be able notified once and after that each time a grade changes.
ExamClosedSince time: Exam closed since #{time}
ExamCloseTip: When an exam is closed all relevant exam offices, which pull exam achievements from Uni2work, are informed and kept up to date with changes.
ExamCloseReminder: Please close the exam as soon as possible, when exam achievements are no longer expected to change e.g. after inspection of the exam has concluced.
#templates exam-office/*
ExamUserSyncOfficeName: Name
ExamUserSyncTime: Timestamp
ExamUserSyncSchools: Department
ExamUserSyncLastChange: Last changed
ExamTimes: Times
ExamOfficeFieldNotSubscribed: Not subscribed
ExamOfficeFieldSubscribed: subscribed

View File

@ -0,0 +1,52 @@
CsvColumnUserStudyFeaturesExternal: Alle relevanten Studiendaten des Teilnehmers/der Teilnehmerin als Semikolon (;) separierte Liste
CsvColumnExternalExamUserSurname: Nachname(n) des Teilnehmers/der Teilnehmerin
CsvColumnExternalExamUserFirstName: Vorname(n) des Teilnehmers/der Teilnehmerin
CsvColumnExternalExamUserName: Voller Name des Teilnehmers/der Teilnehmerin (gewöhnlicherweise inkl. Vor- und Nachname(n))
CsvColumnExternalExamUserMatriculation: Matrikelnummer des Teilnehmers/der Teilnehmerin
CsvColumnExternalExamUserResult: Erreichte Prüfungsleistung; "passed", "failed", "no-show", "voided", oder eine Note ("1.0", "1.3", "1.7", ..., "4.0", "5.0")
CsvColumnExamOfficeExamUserOccurrenceStartExternal: Prüfungstermin (ISO 8601)
ExternalExamCorrectHeading coursen@CourseName examn@ExamName: Prüfungsleistungen für #{coursen}, #{examn} eintragen
ExternalExamUsers coursen@CourseName examn@ExamName: Teilnehmer:innen: #{coursen}, #{examn}
ExternalExamCorrectErrorNeedleTooShort: Dieser Identifikator ist zu kurz.
UnauthorizedExternalExamCorrectorGrade: Sie haben nicht die Berechtigung für diese Prüfung Gesamtergebnisse einzutragen.
ExternalExamCorrectErrorMultipleMatchingUsers: Dem Identifikator konnten mehrere Studierende zugeordnet werden.
ExternalExamCorrectErrorNoMatchingUsers: Dem Identifikator konnte kein Studierender zugeordnet werden.
ExternalExamEdited coursen@CourseName examn@ExamName: Prüfung „#{examn}“ für Kurs „#{coursen}“ erfolgreich bearbeitet.
ExternalExamExists coursen@CourseName examn@ExamName: Prüfung „#{examn}“ für Kurs „#{coursen}“ existiert bereits.
ExternalExamEdit coursen@CourseName examn@ExamName: Bearbeiten: #{coursen}, #{examn}
ExternalExamSemester: Semester
ExternalExamSchool: Institut
ExternalExamCourseName: Veranstaltung
ExternalExamCourseNameTip: Muss nur innerhalb von Semester und Institut eindeutig sein.
ExternalExamCourseNamePlaceholder: Analysis I, Programmierung und Modellierung, ...
ExternalExamExamName: Prüfung
ExternalExamExamNameTip: Muss innerhalb der Veranstaltung eindeutig sein.
ExternalExamExamNamePlaceholder: Klausur, Nachklausur, Projektabnahme, ...
ExternalExamDefaultTime: Voreingestellter Zeitpunkt
ExternalExamDefaultTimePlaceholder: Zeitpunkt
ExternalExamDefaultTimeTip: Der Zeitpunkt zu dem die Prüfung abgelegt wurde, muss pro Teilnehmer:in festgelegt werden. Der hier angegebene Zeitpunkt wird als Standardwert für Teilnehmer:innen verwendet, bei denen später nicht ein abweichender Zeitpunkt angegeben wird.
ExternalExamGradingMode: Bewertungsmodus
ExternalExamGradingModeTip: In welcher Form werden Prüfungsleistungen für diese Prüfung eingetragen?
ExternalExamExamOfficeSchools: Zusätzliche Institute
ExternalExamExamOfficeSchoolsTip: Prüfungsbeauftragte von Instituten, die Sie hier angeben, erhalten im System (zusätzlich zum angegebenen primären Institut) volle Einsicht in sämtliche für diese Prüfung hinterlegten Leistungen, unabhängig von den Studiendaten der Teilnehmer:innen.
ExternalExamStaffInviteHeading coursen@CourseName examn@ExamName: Einladung zum Prüfer/zur Prüferin für „#{examn}“ in „#{coursen}“
ExternalExamStaffInviteExplanation: Sie wurden eingeladen als Prüfer:in für eine Uni2work-externe Prüfung zu wirken. Sie können dann u.A. Noten für die Prüfung hinterlegen.
ExternalExamStaffInvitationAccepted coursen@CourseName examn@ExamName: Sie sind nun als Prüfer:in für „#{examn}“ in „#{coursen}“ eingetragen.
ExternalExamStaff: Assoziierte Personen
ExternalExamStaffTip: Assoziierte Personen werden den Prüfungsbeauftragten und Teilnehmer:innen angezeigt und dürfen Leistungen für die Prüfung hinterlegen.
ExternalExamStaffAlreadyAdded: Person wurde bereits der Prüfung hinzugefügt
ExternalExamStaffEmail: E-Mail
ExternalExamUserMustBeStaff: Sie selbst müssen stets assoziierte Person sein, für die externen Prüfungen, die Sie anlegen
ExternalExamCourseExists: Der angegebene Kurs existiert im System. Prüfungen sollten daher direkt beim Kurs (statt extern) hinterlegt werden.
HeadingExternalExamList: Externe Prüfungen
HeadingExternalExamNew: Neue externe Prüfung
ExternalExamCreated coursen@CourseName examn@ExamName: Prüfung „#{examn}“ für Kurs „#{coursen}“ erfolgreich angelegt.
MailSubjectExternalExamStaffInvitation coursen@CourseName examn@ExamName: Einladung zum Prüfer/zur Prüferin für „#{examn}“ in „#{coursen}“
ExternalExamOccurrenceEdited count@Int64: #{count} #{pluralDE count "Termin" "Termine"} editiert
ExternalExamResultEdited count@Int64: #{count} #{pluralDE count "Prüfungsergebnis" "Prüfungsergebnisse"} editiert
ExternalExamUserDeleted count@Int64: #{count} #{pluralDE count "Prüfungsteilnehmer:in" "Prüfungsteilnehmer:innen"} entfernt
ExternalExamResult: Prüfungsergebnis
ExternalExamNoShow: Nicht erschienen
ExternalExamVoided: Entwertet
ExternalExamUserMarkSynchronisedCsv: Prüfungsleistungen beim Export als synchronisiert markieren
ExternalExamUserMarkSynchronisedCsvTip: Sollen beim CSV-Export automatisch alle heruntergeladenen Prüfungsleistungen als synchronisiert markiert werden? Diese Markierung dient als Hinweis an andere Prüfungsbeauftragte und die Kursverwalter:innen, dass die Leistung an der korrekten Stelle vermerkt wurde und keiner weiteren Handlung bedarf.

View File

@ -0,0 +1,52 @@
CsvColumnUserStudyFeaturesExternal: All relevant features of study for the participant, separated by semicolon (;)
CsvColumnExternalExamUserSurname: Participant's surname
CsvColumnExternalExamUserFirstName: Participant's given name
CsvColumnExternalExamUserName: Participant's full name (usually includes surname and given name)
CsvColumnExternalExamUserMatriculation: Participant's matriculation
CsvColumnExternalExamUserResult: Exam achievement; "passed", "failed", "no-show", "voided", or any number grade ("1.0", "1.3", "1.7", ..., "4.0", "5.0")
CsvColumnExamOfficeExamUserOccurrenceStartExternal: Exam occurrence (ISO 8601)
ExternalExamCorrectHeading coursen examn: Enter exam results for #{coursen}, #{examn}
ExternalExamUsers coursen examn: Exam participants: #{coursen}, #{examn}
ExternalExamCorrectErrorNeedleTooShort: This identifier is too short.
UnauthorizedExternalExamCorrectorGrade: You may not enter overall exam achievements for this exam.
ExternalExamCorrectErrorMultipleMatchingUsers: This identifier matches on multiple students.
ExternalExamCorrectErrorNoMatchingUsers: This identifier does not match any student.
ExternalExamEdited coursen@CourseName examn@ExamName: Succesfully edited exam “#{examn}” for course “#{coursen}”.
ExternalExamExists coursen@CourseName examn@ExamName: Exam “#{examn}” already exists for course “#{coursen}”.
ExternalExamEdit coursen examn: Edit: #{coursen}, #{examn}
ExternalExamSemester: Semester
ExternalExamSchool: Department
ExternalExamCourseName: Course
ExternalExamCourseNameTip: Needs only be unique among within semester and department.
ExternalExamCourseNamePlaceholder: Analysis I, Programming and Modelling, ...
ExternalExamExamName: Exam title
ExternalExamExamNameTip: Needs only be unique within the course.
ExternalExamExamNamePlaceholder: Exam, Exam resit, Project discussion, ...
ExternalExamDefaultTime: Default time
ExternalExamDefaultTimePlaceholder: Time
ExternalExamDefaultTimeTip: The time of the exam needs to be specified for each participant. The time entered here is used as a default value for participants for whom no different time is later specified.
ExternalExamGradingMode: Grading mode
ExternalExamGradingModeTip: In which format should grades for this exam be entered?
ExternalExamExamOfficeSchools: Additional departments
ExternalExamExamOfficeSchoolsTip: Exam offices of departments you specify here will also have full access to all results for this exam disregarding the individual participants' features of study.
ExternalExamStaffInviteHeading coursen examn: Invitation to act as examiner for “#{examn}” of “#{coursen}”
ExternalExamStaffInviteExplanation: You have been invited to act as an examiner for a uni2work-external exam. After accepting you will be able to upload exam results.
ExternalExamStaffInvitationAccepted coursen examn: You are now registered as an examiner for “#{examn}” of “#{coursen}”.
ExternalExamStaff: Associated persons
ExternalExamStaffTip: The list of ssociated persons is shown to exam offices and participants. Additionally associated persons may upload results for the exam.
ExternalExamStaffAlreadyAdded: Person is already associated with the exam.
ExternalExamStaffEmail: Email
ExternalExamUserMustBeStaff: You yourself must always be an associated person for exams you create.
ExternalExamCourseExists: This course already exists with uni2work. Exams for courses that exist within uni2work should be associated with the course directly instead of being created as an external exam.
HeadingExternalExamList: External exams
HeadingExternalExamNew: New external exam
ExternalExamCreated coursen@CourseName examn@ExamName: Succesfully created exam “#{examn}” for course “#{coursen}”.
MailSubjectExternalExamStaffInvitation coursen examn: Invitation to act as examiner for “#{examn}” of “#{coursen}”
ExternalExamOccurrenceEdited count: Successfully edited #{count} #{pluralEN count "occurrence" "occurrences"}
ExternalExamResultEdited count: Successfully edited #{count} #{pluralEN count "exam result" "exam results"}
ExternalExamUserDeleted count: Successfully deleted #{count} #{pluralEN count "exam participant" "exam participants"}
ExternalExamResult: Exam result
ExternalExamNoShow: Not present
ExternalExamVoided: Voided
ExternalExamUserMarkSynchronisedCsv: Mark exam achievements as synchronised while exporting
ExternalExamUserMarkSynchronisedCsvTip: Should all exam achievements, that are included in the download, be marked as synchronised? Marking exam achievemnts as synchronised serves as a notice to other exam offices and course administrators, that the exam achievement has been dealt with properly such that no further action is required.

View File

@ -8,4 +8,5 @@ HelpEmail: E-Mail
HelpAnonymous: Keine Antwort (Anonym)
HelpSubject: Betreff
HelpRequest: Supportanfrage/Verbesserungsvorschlag
HelpSent: Ihre Supportanfrage wurde weitergeleitet.
HelpSent: Ihre Supportanfrage wurde weitergeleitet.
AdditionalFaqs: Weitere häufig gestellte Fragen

View File

@ -8,4 +8,5 @@ HelpEmail: Email
HelpAnonymous: Send no answers (anonymous)
HelpSubject: Subject
HelpRequest: Support request / Suggestion
HelpSent: Your support request has been sent.
HelpSent: Your support request has been sent.
AdditionalFaqs: More frequently asked questions

View File

@ -50,4 +50,4 @@ AuthTagRead: Zugriff ist nur lesend
AuthTagWrite: Zugriff ist i.A. schreibend
AuthTagSubmissionGroup: Nutzer:in ist Mitglied in registrierter Abgabegruppe
AuthTagWorkflow: Nutzer:in hat passende Workflow-Rolle
AuthTagStudent: Nutzer:in ist Student:in
AuthTagStudent: Nutzer:in ist Student:in

View File

@ -51,3 +51,4 @@ AuthTagWrite: Access might write
AuthTagSubmissionGroup: User is part of a submission group
AuthTagWorkflow: User has matching workflow role
AuthTagStudent: User is a student

View File

@ -79,4 +79,9 @@ NotificationTriggerAllocationNewCourseTip: Kann pro Zentralanmeldung überschrie
UserDisplayNameRules: Vorgaben für den angezeigten Namen
BtnResetTokens: Authorisierungs-Tokens invalidieren
BtnResetTokens: Authorisierungs-Tokens invalidieren
TokensLastReset: Tokens zuletzt invalidiert
ProfileNever: Nie
ProfileLastLdapSynchronisation: Letzte LDAP-Synchronisation
ProfileLdapPrimaryKey: LDAP-Primärschlüssel

View File

@ -79,4 +79,9 @@ NotificationTriggerAllocationNewCourseTip: Can be overridden per central allocat
UserDisplayNameRules: Specification for display names
BtnResetTokens: Invalidate tokens
BtnResetTokens: Invalidate tokens
TokensLastReset: Tokens last reset
ProfileNever: Never
ProfileLastLdapSynchronisation: Last LDAP synchronisation
ProfileLdapPrimaryKey: LDAP primary key

View File

@ -5,7 +5,7 @@ module Foundation.I18n
( appLanguages, appLanguagesOpts
, UniWorXMessage(..), UniWorXTestMessage(..), UniWorXSettingsMessage(..)
, UniWorXHelpMessage(..), UniWorXNavigationMessage(..), UniWorXWorkflowMessage(..)
, UniWorXCourseMessage(..)
, UniWorXCourseMessage(..), UniWorXAllocationMessage(..), UniWorXExamMessage(..)
, ShortTermIdentifier(..)
, MsgLanguage(..)
, ShortSex(..)
@ -140,6 +140,8 @@ mkMessageAddition ''UniWorX "Help" "messages/uniworx/uniworx_new/help" "de-de-fo
mkMessageAddition ''UniWorX "Navigation" "messages/uniworx/uniworx_new/navigation" "de-de-formal"
mkMessageAddition ''UniWorX "Workflow" "messages/uniworx/uniworx_new/workflows" "de-de-formal"
mkMessageAddition ''UniWorX "Course" "messages/uniworx/uniworx_new/courses" "de-de-formal"
mkMessageAddition ''UniWorX "Allocation" "messages/uniworx/uniworx_new/allocation" "de-de-formal"
mkMessageAddition ''UniWorX "Exam" "messages/uniworx/uniworx_new/exam" "de-de-formal"
mkMessageVariant ''UniWorX ''CampusMessage "messages/auth/campus" "de"
mkMessageVariant ''UniWorX ''DummyMessage "messages/auth/dummy" "de"
mkMessageVariant ''UniWorX ''PWHashMessage "messages/auth/pw-hash" "de"

View File

@ -322,11 +322,11 @@ courseUserExamsSection (Entity cid Course{..}) (Entity uid _) = do
)
dbtColonnade = mconcat
[ dbSelect (_2 . applying _2) _1 $ return . view (_dbrOutput . _1 . _entityKey)
, sortable (Just "name") (i18nCell MsgExamName) $ tellCell (Any True, mempty) . anchorCell' (\(view $ _dbrOutput . _1 . _entityVal -> Exam{..}) -> CExamR courseTerm courseSchool courseShorthand examName EShowR) (view $ _dbrOutput . _1 . _entityVal . _examName)
, sortable (Just "occurrence") (i18nCell MsgExamOccurrence) $ maybe mempty (cell . toWidget) . preview (_dbrOutput . _2 . _Just . _entityVal . _examOccurrenceName)
, sortable (Just "name") (i18nCell MsgTableExamName) $ tellCell (Any True, mempty) . anchorCell' (\(view $ _dbrOutput . _1 . _entityVal -> Exam{..}) -> CExamR courseTerm courseSchool courseShorthand examName EShowR) (view $ _dbrOutput . _1 . _entityVal . _examName)
, sortable (Just "occurrence") (i18nCell MsgTableExamOccurrence) $ maybe mempty (cell . toWidget) . preview (_dbrOutput . _2 . _Just . _entityVal . _examOccurrenceName)
, sortable (Just "registration-time") (i18nCell MsgExamRegistrationTime) $ maybe mempty (cell . formatTimeW SelFormatDateTime) . preview (_dbrOutput . _5 . _Just . _entityVal . _examRegistrationTime)
, sortable (Just "bonus") (i18nCell MsgExamBonusAchieved) $ maybe mempty i18nCell . preview (_dbrOutput . _3 . _Just . _entityVal . _examBonusBonus)
, sortable (Just "result") (i18nCell MsgExamResult) $ maybe mempty i18nCell . preview (_dbrOutput . _4 . _Just . _entityVal . _examResultResult)
, sortable (Just "result") (i18nCell MsgTableExamResult) $ maybe mempty i18nCell . preview (_dbrOutput . _4 . _Just . _entityVal . _examResultResult)
]
dbtSorting = mconcat
[ singletonMap "name" . SortColumn $ \exam -> exam E.^. ExamName
@ -363,7 +363,7 @@ courseUserExamsSection (Entity cid Course{..}) (Entity uid _) = do
[ singletonMap ExamDeregister $
pure ExamDeregisterData
, singletonMap ExamSetResult $
ExamSetResultData <$> aopt (examResultModeField (Just $ SomeMessage MsgExamResultNone) ExamGradingMixed) (fslI MsgExamResult) Nothing
ExamSetResultData <$> aopt (examResultModeField (Just $ SomeMessage MsgExamResultNone) ExamGradingMixed) (fslI MsgTableExamResult) Nothing
]
(res, formWgt) <- multiActionM actionMap (fslI MsgAction) Nothing csrf

View File

@ -558,7 +558,7 @@ postCUsersR tid ssh csh = do
& Map.fromListWith (<>)
& imap (\k v -> case v of
[] -> pure (k, Nothing)
_ -> (k,) <$> aopt (selectField' (Just $ SomeMessage MsgExamNoOccurrence) $ examOccOpts v) (fslI MsgExamOccurrence) (Just Nothing)
_ -> (k,) <$> aopt (selectField' (Just $ SomeMessage MsgExamNoOccurrence) $ examOccOpts v) (fslI MsgTableExamOccurrence) (Just Nothing)
)
where
examOccOpts :: [Entity ExamOccurrence] -> Handler (OptionList ExamOccurrenceId)
@ -685,7 +685,7 @@ postCUsersR tid ssh csh = do
let headingLong = [whamlet|_{MsgHeadingCourseMembers} #{courseName} #{tid}|]
headingShort = prependCourseTitle tid ssh csh MsgCourseMembers
headingShort = prependCourseTitle tid ssh csh MsgHeadingCourseMembers
siteLayout headingLong $ do
setTitleI headingShort
$(widgetFile "course-participants")

View File

@ -68,7 +68,7 @@ postEAddUserR tid ssh csh examn = do
deadline <- wreq utcTimeField (fslI MsgExamRegistrationInviteDeadline) (Just defDeadline)
enlist <- wpopt checkBoxField (fslI MsgExamRegistrationEnlistDirectly & setTooltip MsgExamRegistrationEnlistDirectlyTip) (Just False)
registerCourse <- wpopt checkBoxField (fslI MsgExamRegistrationRegisterCourse & setTooltip MsgExamRegistrationRegisterCourseTip) (Just False)
occurrence <- wopt (examOccurrenceField eid) (fslI MsgExamOccurrence) Nothing
occurrence <- wopt (examOccurrenceField eid) (fslI MsgTableExamOccurrence) Nothing
mr <- getMessageRender
users <- wreq (multiUserInvitationField . maybe MUIAlwaysInvite (const $ MUILookupAnyUser Nothing) $ formResultToMaybe enlist)
(fslpI MsgExamRegistrationInviteField (mr MsgLdapIdentificationOrEmail) & setTooltip MsgMultiEmailFieldTip) Nothing

View File

@ -114,7 +114,7 @@ examForm (Entity _ Course{..}) template csrf = hoist liftHandler $ do
School{..} <- liftHandler . runDBRead $ getJust courseSchool
flip (renderAForm FormStandard) csrf $ ExamForm
<$> areq ciField (fslpI MsgExamName (mr MsgExamName) & setTooltip MsgExamNameTip) (efName <$> template)
<$> areq ciField (fslpI MsgTableExamName (mr MsgTableExamName) & setTooltip MsgExamNameTip) (efName <$> template)
<*> aopt htmlField (fslI MsgExamDescription) (efDescription <$> template)
<* aformSection MsgExamFormTimes
<*> aopt utcTimeField (fslpI MsgExamStart (mr MsgDate) & setTooltip MsgExamTimeTip) (efStart <$> template)

View File

@ -31,12 +31,12 @@ mkExamTable (Entity cid Course{..}) = do
dbtRowKey = (E.^. ExamId)
dbtProj = return
dbtColonnade = dbColonnade . mconcat $ catMaybes
[ Just . sortable (Just "name") (i18nCell MsgExamName) $ \DBRow{ dbrOutput = Entity _ Exam{..} } -> indicatorCell <> anchorCell (CExamR tid ssh csh examName EShowR) examName
[ Just . sortable (Just "name") (i18nCell MsgTableExamName) $ \DBRow{ dbrOutput = Entity _ Exam{..} } -> indicatorCell <> anchorCell (CExamR tid ssh csh examName EShowR) examName
, (<$ guard mayCreate) . sortable (Just "visible") (i18nCell MsgExamVisibleFrom) $ \DBRow { dbrOutput = Entity _ Exam{..} } -> maybe mempty (dateTimeCellVisible now) examVisibleFrom
, Just . sortable (Just "register-from") (i18nCell MsgExamRegisterFrom) $ \DBRow { dbrOutput = Entity _ Exam{..} } -> maybe mempty dateTimeCell examRegisterFrom
, Just . sortable (Just "register-to") (i18nCell MsgExamRegisterTo) $ \DBRow { dbrOutput = Entity _ Exam{..} } -> maybe mempty dateTimeCell examRegisterTo
, Just . sortable (Just "time") (i18nCell MsgExamTime) $ \DBRow{ dbrOutput = Entity _ Exam{..} } -> maybe mempty (cell . flip (formatTimeRangeW SelFormatDateTime) examEnd) examStart
, Just . sortable (Just "registered") (i18nCell MsgExamRegistration ) $ \DBRow{ dbrOutput = Entity eId Exam{..} } -> sqlCell $ do
, Just . sortable (Just "time") (i18nCell MsgTableExamTime) $ \DBRow{ dbrOutput = Entity _ Exam{..} } -> maybe mempty (cell . flip (formatTimeRangeW SelFormatDateTime) examEnd) examStart
, Just . sortable (Just "registered") (i18nCell MsgTableExamRegistration ) $ \DBRow{ dbrOutput = Entity eId Exam{..} } -> sqlCell $ do
mayRegister <- (== Authorized) <$> evalAccessDB (CExamR tid ssh csh examName ERegisterR) True
isRegistered <- case mbAid of
Nothing -> return False

View File

@ -92,7 +92,7 @@ examRegistrationInvitationConfig = InvitationConfig{..}
now <- liftIO getCurrentTime
case (isRegistered, invDBExamRegistrationCourseRegister) of
(False, False) -> permissionDeniedI MsgUnauthorizedParticipant
(False, False) -> permissionDeniedI MsgExamUnauthorizedParticipant
(False, True ) -> return $ pure (JunctionExamRegistration invDBExamRegistrationOccurrence now, True)
(True , _ ) -> return $ pure (JunctionExamRegistration invDBExamRegistrationOccurrence now, False)
invitationInsertHook _ (Entity eid Exam{..}) _ ExamRegistration{..} doReg act = do

View File

@ -477,7 +477,7 @@ postEUsersR tid ssh csh examn = do
, pure $ colUserNameLink (CourseR tid ssh csh . CUserR)
, pure colUserMatriclenr
, pure $ colStudyFeatures resultStudyFeatures
, pure $ sortable (Just "occurrence") (i18nCell MsgExamOccurrence) $ maybe mempty (anchorCell' (\n -> CExamR tid ssh csh examn EShowR :#: [st|exam-occurrence__#{n}|]) id . examOccurrenceName . entityVal) . view _userTableOccurrence
, pure $ sortable (Just "occurrence") (i18nCell MsgTableExamOccurrence) $ maybe mempty (anchorCell' (\n -> CExamR tid ssh csh examn EShowR :#: [st|exam-occurrence__#{n}|]) id . examOccurrenceName . entityVal) . view _userTableOccurrence
, guardOn showPasses $ sortable Nothing (i18nCell MsgAchievedPasses) $ \(view $ resultUser . _entityKey -> uid) ->
let SheetGradeSummary{achievedPasses} = examBonusAchieved uid bonus
SheetGradeSummary{numSheetsPasses} = examBonusPossible uid bonus
@ -491,8 +491,8 @@ postEUsersR tid ssh csh examn = do
[ sortable (Just $ fromText [st|part-#{toPathPiece examPartNumber}|]) (i18nCell $ MsgExamPartNumbered examPartNumber) . automaticCell $ resultExamPartResult epId . _Just . _entityVal . _examPartResultResult . to Right <> resultAutomaticExamPartResult epEnt bonus . to Left
| epEnt@(Entity epId ExamPart{..}) <- sortOn (examPartNumber . entityVal) examParts
]
, pure $ sortable (Just "exam-result") (i18nCell MsgExamResult) . automaticCell $ (resultExamResult . _entityVal . _examResultResult . to Right <> resultAutomaticExamResult' . to Left)
, pure . sortable (Just "note") (i18nCell MsgCourseUserNote) $ \((,) <$> view (resultUser . _entityKey) <*> has resultCourseNote -> (uid, hasNote))
, pure $ sortable (Just "exam-result") (i18nCell MsgTableExamResult) . automaticCell $ (resultExamResult . _entityVal . _examResultResult . to Right <> resultAutomaticExamResult' . to Left)
, pure . sortable (Just "note") (i18nCell MsgExamCourseUserNote) $ \((,) <$> view (resultUser . _entityKey) <*> has resultCourseNote -> (uid, hasNote))
-> bool mempty (anchorCellM (CourseR tid ssh csh . CUserR <$> encrypt uid) $ hasComment True) hasNote
]
dbtSorting = mconcat
@ -531,7 +531,7 @@ postEUsersR tid ssh csh examn = do
dbtFilterUI mPrev = mconcat $ catMaybes
[ Just $ fltrUserNameEmailUI mPrev
, Just $ fltrUserMatriclenrUI mPrev
, Just $ prismAForm (singletonFilter "occurrence") mPrev $ aopt (selectField' (Just $ SomeMessage MsgNoFilter) $ optionsF [CI.original examOccurrenceName | Entity _ ExamOccurrence{..} <- occurrences]) (fslI MsgExamOccurrence)
, Just $ prismAForm (singletonFilter "occurrence") mPrev $ aopt (selectField' (Just $ SomeMessage MsgExamNoFilter) $ optionsF [CI.original examOccurrenceName | Entity _ ExamOccurrence{..} <- occurrences]) (fslI MsgTableExamOccurrence)
, Just $ fltrExamResultPointsUI mPrev
, Just $ fltrRelevantStudyFeaturesTermsUI mPrev
, Just $ fltrRelevantStudyFeaturesDegreeUI mPrev
@ -551,7 +551,7 @@ postEUsersR tid ssh csh examn = do
pure ExamUserDeregisterData
, singletonMap ExamUserAssignOccurrence $
ExamUserAssignOccurrenceData
<$> aopt (examOccurrenceField eid) (fslI MsgExamOccurrence) (Just Nothing)
<$> aopt (examOccurrenceField eid) (fslI MsgTableExamOccurrence) (Just Nothing)
, singletonMap ExamUserAcceptComputedResult $
pure ExamUserAcceptComputedResultData
, singletonMap ExamUserResetToComputedResult $
@ -561,13 +561,13 @@ postEUsersR tid ssh csh examn = do
, singletonMap ExamUserSetPartResult $
ExamUserSetPartResultData
<$> areq (selectField $ optionsPairs (map ((MsgExamPartNumbered &&& id) . examPartNumber . entityVal) examParts)) (fslI MsgExamPart) Nothing
<*> (fmap ExamAttended <$> aopt pointsField (fslI MsgPoints) Nothing)
<*> (fmap ExamAttended <$> aopt pointsField (fslI MsgExamPoints) Nothing)
, singletonMap ExamUserSetBonus $
ExamUserSetBonusData
<$> aopt pointsField (fslI MsgPoints) Nothing
<$> aopt pointsField (fslI MsgExamPoints) Nothing
, singletonMap ExamUserSetResult $
ExamUserSetResultData
<$> aopt (examResultModeField (Just $ SomeMessage MsgExamResultNone) examGradingMode) (fslI MsgExamResult) Nothing
<$> aopt (examResultModeField (Just $ SomeMessage MsgExamResultNone) examGradingMode) (fslI MsgTableExamResult) Nothing
]
actionOpts :: Handler (OptionList ExamUserAction)
@ -581,7 +581,7 @@ postEUsersR tid ssh csh examn = do
tell =<< optionsF [ ExamUserSetBonus ]
tell =<< optionsF [ ExamUserSetResult ]
(res, formWgt) <- multiActionMOpts actionMap actionOpts (fslI MsgAction) Nothing csrf
(res, formWgt) <- multiActionMOpts actionMap actionOpts (fslI MsgExamAction) Nothing csrf
let formRes = (, mempty) . First . Just <$> res
return (formRes, formWgt)
, dbParamsFormEvaluate = liftHandler . runFormPost

View File

@ -156,13 +156,13 @@ instance DefaultOrdered ExamUserTableCsv where
instance CsvColumnsExplained ExamUserTableCsv where
csvColumnsExplanations = genericCsvColumnsExplanations examUserTableCsvOptions $ Map.fromList
[ ('csvEUserSurname , MsgCsvColumnExamUserSurname )
, ('csvEUserFirstName , MsgCsvColumnExamUserFirstName )
, ('csvEUserName , MsgCsvColumnExamUserName )
, ('csvEUserMatriculation , MsgCsvColumnExamUserMatriculation )
, ('csvEUserStudyFeatures , MsgCsvColumnUserStudyFeatures )
, ('csvEUserOccurrenceStart , MsgCsvColumnExamOfficeExamUserOccurrenceStart )
, ('csvEUserExamResult , MsgCsvColumnExamUserResult )
[ ('csvEUserSurname , MsgCsvColumnExamUserSurnameExamOffice )
, ('csvEUserFirstName , MsgCsvColumnExamUserFirstNameExamOffice )
, ('csvEUserName , MsgCsvColumnExamUserNameExamOffice )
, ('csvEUserMatriculation , MsgCsvColumnExamUserMatriculationExamOffice )
, ('csvEUserStudyFeatures , MsgCsvColumnUserStudyFeaturesExamOffice )
, ('csvEUserOccurrenceStart , MsgCsvColumnExamOfficeExamUserOccurrenceStartExamOffice )
, ('csvEUserExamResult , MsgCsvColumnExamUserResultExamOffice )
]
data ExamUserAction = ExamUserMarkSynchronised
@ -190,7 +190,7 @@ postEGradesR tid ssh csh examn = do
exam@(Entity eid Exam{..}) <- fetchExam tid ssh csh examn
Course{..} <- getJust examCourse
csvName <- getMessageRender <*> pure (MsgExamUserCsvName tid ssh csh examn)
csvName <- getMessageRender <*> pure (MsgExamUserCsvNameExamOffice tid ssh csh examn)
isLecturer <- hasReadAccessTo $ CExamR tid ssh csh examn EUsersR
userFunctions <- selectList [ UserFunctionUser ==. uid, UserFunctionFunction ==. SchoolExamOffice ] []
@ -322,7 +322,7 @@ postEGradesR tid ssh csh examn = do
, imapColonnade participantAnchor . anchorColonnadeM (views (resultUser . _entityKey) participantLink) $ colUserDisplayName (resultUser . _entityVal . $(multifocusL 2) _userDisplayName _userSurname)
, colUserMatriculation (resultUser . _entityVal . _userMatrikelnummer)
, colStudyFeatures resultStudyFeatures
, Colonnade.singleton (fromSortable . Sortable (Just "occurrence-start") $ i18nCell MsgExamTime) $ \x -> cell . flip runReaderT x $ do
, Colonnade.singleton (fromSortable . Sortable (Just "occurrence-start") $ i18nCell MsgTableExamTime) $ \x -> cell . flip runReaderT x $ do
start <- preview $ resultExamOccurrence . _entityVal . _examOccurrenceStart <> like examStart . _Just
end <- preview $ resultExamOccurrence . _entityVal . _examOccurrenceEnd . _Just <> like examEnd . _Just
lift $ maybe mempty (flip (formatTimeRangeW SelFormatDateTime) end) start
@ -388,7 +388,7 @@ postEGradesR tid ssh csh examn = do
dbtIdent = "exam-results"
dbtCsvEncode = Just DBTCsvEncode
{ dbtCsvExportForm = ExamUserCsvExportData
<$> apopt checkBoxField (fslI MsgExamUserMarkSynchronisedCsv & setTooltip MsgExamUserMarkSynchronisedCsvTip) (Just False)
<$> apopt checkBoxField (fslI MsgExamOfficeExamUserMarkSynchronisedCsv & setTooltip MsgExamOfficeExamUserMarkSynchronisedCsvTip) (Just False)
, dbtCsvDoEncode = \ExamUserCsvExportData{..} -> C.mapM $ \(E.Value k, row) -> do
when csvEUserMarkSynchronised $ markSynced k
return $ ExamUserTableCsv

View File

@ -70,7 +70,7 @@ postEECorrectR tid ssh coursen examn = do
euid <- traverse decrypt ciqUser
guardMExceptT (maybe True ((>= minNeedleLength) . length) $ euid ^? _Left) $
CorrectInterfaceResponseFailure Nothing <$> (getMessageRender <*> pure MsgExamCorrectErrorNeedleTooShort)
CorrectInterfaceResponseFailure Nothing <$> (getMessageRender <*> pure MsgExternalExamCorrectErrorNeedleTooShort)
matches <- case euid of
Right uid -> lift . E.select . E.from $ \user -> E.where_ (user E.^. UserId E.==. E.val uid) >> return user
@ -94,7 +94,7 @@ postEECorrectR tid ssh coursen examn = do
now <- liftIO getCurrentTime
newExamResult <- for ciqGrade $ \ciqGrade' -> lift $ do
unless mayEditResults $
permissionDeniedI MsgUnauthorizedExamCorrectorGrade
permissionDeniedI MsgUnauthorizedExternalExamCorrectorGrade
mOldResult <- getBy $ UniqueExternalExamResult eeId uid
if
| Just (Entity oldId _) <- mOldResult, is _Nothing ciqGrade' -> do

View File

@ -57,7 +57,7 @@ externalExamForm template = validateForm validateExternalExam $ \html -> do
<*> areq (textField & cfStrip & cfCI) (fslI MsgExternalExamCourseName & setTooltip MsgExternalExamCourseNameTip & addPlaceholder (mr MsgExternalExamCourseNamePlaceholder)) (eefCourseName <$> template)
<*> areq (textField & cfStrip & cfCI) (fslI MsgExternalExamExamName & setTooltip MsgExternalExamExamNameTip & addPlaceholder (mr MsgExternalExamExamNamePlaceholder)) (eefExamName <$> template)
<*> aopt utcTimeField (fslI MsgExternalExamDefaultTime & setTooltip MsgExternalExamDefaultTimeTip & addPlaceholder (mr MsgExternalExamDefaultTimePlaceholder)) (eefDefaultTime <$> template)
<*> apopt (selectField optionsFinite) (fslI MsgExamGradingMode & setTooltip MsgExamGradingModeTip) (eefGradingMode <$> template <|> Just ExamGradingMixed)
<*> apopt (selectField optionsFinite) (fslI MsgExternalExamGradingMode & setTooltip MsgExternalExamGradingModeTip) (eefGradingMode <$> template <|> Just ExamGradingMixed)
<*> (Set.fromList <$> officeSchoolForm cRoute (Set.toList . eefOfficeSchools <$> template <|> Just (filter ((/= templateSchool) . Just) allSchoolIds)))
<*> (Set.fromList <$> staffForm cRoute ((Set.toList . eefStaff <$> template) <|> pure (pure $ Right uid)))
where

View File

@ -49,9 +49,9 @@ getEExamListR = do
dbtProj = return
dbtColonnade = widgetColonnade $ mconcat
[ sortable (Just "term") (i18nCell MsgTableTerm) $ \(view resultEExam -> Entity _ ExternalExam{..}) -> i18nCell . ShortTermIdentifier $ unTermKey externalExamTerm
, sortable (Just "school") (i18nCell MsgSchool) $ \(view resultSchool -> Entity _ School{..}) -> i18nCell schoolName
, sortable (Just "course") (i18nCell MsgCourse) $ \(view resultEExam -> Entity _ ExternalExam{..}) -> i18nCell externalExamCourseName
, sortable (Just "name") (i18nCell MsgExamName) $ \(view resultEExam -> Entity _ ExternalExam{..}) -> anchorCell (EExamR externalExamTerm externalExamSchool externalExamCourseName externalExamExamName EEShowR) externalExamExamName
, sortable (Just "school") (i18nCell MsgTableSchool) $ \(view resultSchool -> Entity _ School{..}) -> i18nCell schoolName
, sortable (Just "course") (i18nCell MsgTableCourse) $ \(view resultEExam -> Entity _ ExternalExam{..}) -> i18nCell externalExamCourseName
, sortable (Just "name") (i18nCell MsgTableExamName) $ \(view resultEExam -> Entity _ ExternalExam{..}) -> anchorCell (EExamR externalExamTerm externalExamSchool externalExamCourseName externalExamExamName EEShowR) externalExamExamName
]
dbtSorting = Map.fromList
[ ("term", SortColumn $ queryEExam >>> (E.^. ExternalExamTerm))

View File

@ -140,7 +140,7 @@ newsUpcomingSheets uid = do
textCell $ toMessage tid
, sortable (Just "school") (i18nCell MsgTableCourseSchool) $ \DBRow{ dbrOutput=(_,E.Value ssh,_,_,_,_) } ->
textCell $ toMessage ssh
, sortable (Just "course") (i18nCell MsgCourse) $ \DBRow{ dbrOutput=(E.Value tid, E.Value ssh, E.Value csh, _, _, _) } ->
, sortable (Just "course") (i18nCell MsgTableCourse) $ \DBRow{ dbrOutput=(E.Value tid, E.Value ssh, E.Value csh, _, _, _) } ->
anchorCell (CourseR tid ssh csh CShowR) csh
, sortable (Just "sheet") (i18nCell MsgSheet) $ \DBRow{ dbrOutput=(E.Value tid, E.Value ssh, E.Value csh, E.Value shn, _, _) } ->
anchorCell (CSheetR tid ssh csh shn SShowR) shn
@ -258,16 +258,16 @@ newsUpcomingExams uid = do
msgCell courseTerm
, sortable (Just "school") (i18nCell MsgTableCourseSchool) $ \DBRow{ dbrOutput = view lensCourse -> Entity _ Course{..} } ->
msgCell courseSchool
, sortable (Just "course") (i18nCell MsgCourse) $ \DBRow{ dbrOutput = view lensCourse -> Entity _ Course{..} } ->
, sortable (Just "course") (i18nCell MsgTableCourse) $ \DBRow{ dbrOutput = view lensCourse -> Entity _ Course{..} } ->
anchorCell (CourseR courseTerm courseSchool courseShorthand CShowR) (toWgt courseShorthand)
-- continue here
, sortable (Just "name") (i18nCell MsgExamName) $ \DBRow{ dbrOutput } -> do
, sortable (Just "name") (i18nCell MsgTableExamName) $ \DBRow{ dbrOutput } -> do
let Entity _ Exam{..} = view lensExam dbrOutput
Entity _ Course{..} = view lensCourse dbrOutput
indicatorCell <> anchorCell (CExamR courseTerm courseSchool courseShorthand examName EShowR) examName
, sortable (Just "register-from") (i18nCell MsgExamRegisterFrom) $ \DBRow { dbrOutput = view lensExam -> Entity _ Exam{..} } -> maybe mempty dateTimeCell examRegisterFrom
, sortable (Just "register-to") (i18nCell MsgExamRegisterTo) $ \DBRow { dbrOutput = view lensExam -> Entity _ Exam{..} } -> maybe mempty dateTimeCell examRegisterTo
, sortable (Just "time") (i18nCell MsgExamTime) $ \DBRow{ dbrOutput } ->
, sortable (Just "time") (i18nCell MsgTableExamTime) $ \DBRow{ dbrOutput } ->
if | Just (Entity _ ExamOccurrence{..}) <- preview lensOccurrence dbrOutput
-> cell $ formatTimeRangeW SelFormatDateTime examOccurrenceStart examOccurrenceEnd
| Entity _ Exam{..} <- view lensExam dbrOutput
@ -288,22 +288,22 @@ newsUpcomingExams uid = do
, formEncoding = examRegisterEnctype
, formSubmit = FormNoSubmit
}
| isRegistered -> return [whamlet|_{MsgExamRegistered}|]
| isRegistered -> return [whamlet|_{MsgNewsExamRegistered}|]
| otherwise -> return mempty
-}
, sortable (Just "registered") (i18nCell MsgExamRegistration ) $ \DBRow{ dbrOutput } -> sqlCell $ do
, sortable (Just "registered") (i18nCell MsgTableExamRegistration ) $ \DBRow{ dbrOutput } -> sqlCell $ do
let Entity _ Exam{..} = view lensExam dbrOutput
Entity _ Course{..} = view lensCourse dbrOutput
mayRegister <- (== Authorized) <$> evalAccessDB (CExamR courseTerm courseSchool courseShorthand examName ERegisterR) True
let isRegistered = has lensRegister dbrOutput
label = bool MsgExamNotRegistered MsgExamRegistered isRegistered
label = bool MsgNewsExamNotRegistered MsgNewsExamRegistered isRegistered
examUrl = CExamR courseTerm courseSchool courseShorthand examName EShowR
if | mayRegister -> return $ simpleLinkI (SomeMessage label) examUrl
| otherwise -> return [whamlet|_{label}|]
, sortable (toNothingS "occurrence") (i18nCell MsgExamOccurrence) $ \DBRow{ dbrOutput } ->
, sortable (toNothingS "occurrence") (i18nCell MsgTableExamOccurrence) $ \DBRow{ dbrOutput } ->
if | Just (Entity _ ExamOccurrence{..}) <- preview lensOccurrence dbrOutput
-> if | view lensShowRoom dbrOutput -> maybe (i18nCell MsgExamOccurrenceRoomIsUnset) roomReferenceCell examOccurrenceRoom
| otherwise -> i18nCell MsgExamOccurrenceRoomIsHidden & addCellClass ("explanation" :: Text)
-> if | view lensShowRoom dbrOutput -> maybe (i18nCell MsgNewsExamOccurrenceRoomIsUnset) roomReferenceCell examOccurrenceRoom
| otherwise -> i18nCell MsgNewsExamOccurrenceRoomIsHidden & addCellClass ("explanation" :: Text)
| otherwise -> mempty
]
dbtSorting = Map.fromList

View File

@ -514,7 +514,7 @@ mkOwnedCoursesTable =
, sortable (Just "school") (i18nCell MsgTableCourseSchool) $
schoolCell <$> view (_dbrOutput . _1)
<*> view (_dbrOutput . _2 )
, sortable (Just "course") (i18nCell MsgCourse) $
, sortable (Just "course") (i18nCell MsgTableCourse) $
courseCellCL <$> view _dbrOutput
]
@ -563,7 +563,7 @@ mkEnrolledCoursesTable =
, sortable (Just "school") (i18nCell MsgTableCourseSchool) . magnify (_dbrOutput . _1 . _entityVal) $
schoolCell <$> view _courseTerm
<*> view _courseSchool
, sortable (Just "course") (i18nCell MsgCourse) $
, sortable (Just "course") (i18nCell MsgTableCourse) $
courseCell <$> view (_dbrOutput . _1 . _entityVal)
, sortable (Just "time") (i18nCell MsgRegistered) $ do
regTime <- view $ _dbrOutput . _2
@ -631,7 +631,7 @@ mkSubmissionTable =
, sortable (Just "school") (i18nCell MsgTableCourseSchool) . magnify (_dbrOutput . _1 ) $
schoolCell <$> view _1
<*> view _2
, sortable (Just "course") (i18nCell MsgCourse) $
, sortable (Just "course") (i18nCell MsgTableCourse) $
courseCellCL <$> view (_dbrOutput . _1)
, sortable (Just "sheet") (i18nCell MsgSheet) . magnify _dbrOutput $
sheetCell <$> view _1
@ -706,7 +706,7 @@ mkSubmissionGroupTable =
, sortable (Just "school") (i18nCell MsgTableCourseSchool) . magnify (_dbrOutput . _1 ) $
schoolCell <$> view _1
<*> view _2
, sortable (Just "course") (i18nCell MsgCourse) $
, sortable (Just "course") (i18nCell MsgTableCourse) $
courseCellCL <$> view (_dbrOutput . _1)
, sortable (Just "submissiongroup") (i18nCell MsgSubmissionGroupName) . magnify (_dbrOutput . _2 . _entityVal) $
cell . views _submissionGroupName toWidget
@ -773,7 +773,7 @@ mkCorrectionsTable =
termCellCL <$> view (_dbrOutput . _1)
, sortable (Just "school") (i18nCell MsgTableCourseSchool) $
schoolCellCL <$> view (_dbrOutput . _1)
, sortable (Just "course") (i18nCell MsgCourse) $
, sortable (Just "course") (i18nCell MsgTableCourse) $
courseCellCL <$> view (_dbrOutput . _1)
, sortable (Just "sheet") (i18nCell MsgSheet) . magnify _dbrOutput $
sheetCell <$> view _1 <*> view _2

View File

@ -38,7 +38,7 @@ postCorrectionsGradeR = do
, colCommentField
] -- Continue here
filterUI = Just $ \mPrev -> mconcat
[ prismAForm (singletonFilter "course" ) mPrev $ aopt (lift `hoistField` selectField courseOptions) (fslI MsgCourse)
[ prismAForm (singletonFilter "course" ) mPrev $ aopt (lift `hoistField` selectField courseOptions) (fslI MsgTableCourse)
, prismAForm (singletonFilter "term" ) mPrev $ aopt (lift `hoistField` selectField termOptions) (fslI MsgTableTerm)
, prismAForm (singletonFilter "school" ) mPrev $ aopt (lift `hoistField` selectField schoolOptions) (fslI MsgTableCourseSchool)
, Map.singleton "sheet-search" . maybeToList <$> aopt (lift `hoistField` textField) (fslI MsgSheet) (Just <$> listToMaybe =<< ((Map.lookup "sheet-search" =<< mPrev) <|> (Map.lookup "sheet" =<< mPrev)))

View File

@ -91,7 +91,7 @@ colSchool = sortable (Just "school") (i18nCell MsgTableCourseSchool)
anchorCell (TermSchoolCourseListR (course ^. _3) (course ^. _4)) [whamlet|#{unSchoolKey (course ^. _4)}|]
colCourse :: IsDBTable m a => Colonnade Sortable CorrectionTableData (DBCell m a)
colCourse = sortable (Just "course") (i18nCell MsgCourse)
colCourse = sortable (Just "course") (i18nCell MsgTableCourse)
$ \DBRow{ dbrOutput=(_, _, (_,csh,tid,sid),_ , _, _, _, _) } -> courseCellCL (tid,sid,csh)
colSheet :: IsDBTable m a => Colonnade Sortable CorrectionTableData (DBCell m a)
@ -651,7 +651,7 @@ postCorrectionsR = do
, colRated
] -- Continue here
filterUI = Just $ \mPrev -> mconcat
[ prismAForm (singletonFilter "course" ) mPrev $ aopt (lift `hoistField` selectField courseOptions) (fslI MsgCourse)
[ prismAForm (singletonFilter "course" ) mPrev $ aopt (lift `hoistField` selectField courseOptions) (fslI MsgTableCourse)
, prismAForm (singletonFilter "term" ) mPrev $ aopt (lift `hoistField` selectField termOptions) (fslI MsgTableTerm)
, prismAForm (singletonFilter "school" ) mPrev $ aopt (lift `hoistField` selectField schoolOptions) (fslI MsgTableCourseSchool)
, Map.singleton "sheet-search" . maybeToList <$> aopt (lift `hoistField` textField) (fslI MsgSheet) (Just <$> listToMaybe =<< ((Map.lookup "sheet-search" =<< mPrev) <|> (Map.lookup "sheet" =<< mPrev)))
@ -696,7 +696,7 @@ postCCorrectionsR tid ssh csh = do
, colAssigned
] -- Continue here
filterUI = Just $ \mPrev -> mconcat
[ prismAForm (singletonFilter "user-name-email") mPrev $ aopt textField (fslI MsgCourseMembers)
[ prismAForm (singletonFilter "user-name-email") mPrev $ aopt textField (fslI MsgTableCourseMembers)
, prismAForm (singletonFilter "user-matriclenumber") mPrev $ aopt textField (fslI MsgTableMatrikelNr)
-- "pseudonym" TODO DB only stores Word24
, Map.singleton "sheet-search" . maybeToList <$> aopt textField (fslI MsgSheet) (Just <$> listToMaybe =<< ((Map.lookup "sheet-search" =<< mPrev) <|> (Map.lookup "sheet" =<< mPrev)))
@ -730,7 +730,7 @@ postSSubsR tid ssh csh shn = do
, colAssigned
]
filterUI = Just $ \mPrev -> mconcat
[ prismAForm (singletonFilter "user-name-email") mPrev $ aopt textField (fslI MsgCourseMembers)
[ prismAForm (singletonFilter "user-name-email") mPrev $ aopt textField (fslI MsgTableCourseMembers)
, prismAForm (singletonFilter "user-matriclenumber") mPrev $ aopt textField (fslI MsgTableMatrikelNr)
, prismAForm (singletonFilter "corrector-name-email") mPrev $ aopt textField (fslI MsgCorrector)
, prismAForm (singletonFilter "isassigned" . maybePrism _PathPiece) mPrev $ aopt (boolField . Just $ SomeMessage MsgBoolIrrelevant) (fslI MsgHasCorrector)

View File

@ -109,13 +109,13 @@ instance FromNamedRecord ExternalExamUserTableCsv where
instance CsvColumnsExplained ExternalExamUserTableCsv where
csvColumnsExplanations = genericCsvColumnsExplanations externalExamUserTableCsvOptions $ Map.fromList
[ ('csvEUserSurname , MsgCsvColumnExamUserSurname )
, ('csvEUserFirstName , MsgCsvColumnExamUserFirstName )
, ('csvEUserName , MsgCsvColumnExamUserName )
, ('csvEUserMatriculation , MsgCsvColumnExamUserMatriculation )
, ('csvEUserStudyFeatures , MsgCsvColumnUserStudyFeatures )
, ('csvEUserOccurrenceStart , MsgCsvColumnExamOfficeExamUserOccurrenceStart )
, ('csvEUserExamResult , MsgCsvColumnExamUserResult )
[ ('csvEUserSurname , MsgCsvColumnExternalExamUserSurname )
, ('csvEUserFirstName , MsgCsvColumnExternalExamUserFirstName )
, ('csvEUserName , MsgCsvColumnExternalExamUserName )
, ('csvEUserMatriculation , MsgCsvColumnExternalExamUserMatriculation )
, ('csvEUserStudyFeatures , MsgCsvColumnUserStudyFeaturesExternal )
, ('csvEUserOccurrenceStart , MsgCsvColumnExamOfficeExamUserOccurrenceStartExternal )
, ('csvEUserExamResult , MsgCsvColumnExternalExamUserResult )
]
data ExternalExamUserAction
@ -276,7 +276,7 @@ makeExternalExamUsersTable mode (Entity eeId ExternalExam{..}) = do
, colUserDisplayName (resultUser . _entityVal . $(multifocusL 2) _userDisplayName _userSurname)
, colUserMatriculation (resultUser . _entityVal . _userMatrikelnummer)
, colStudyFeatures resultStudyFeatures
, Colonnade.singleton (fromSortable . Sortable (Just "occurrence-start") $ i18nCell MsgExamTime) $ \x -> cell . flip runReaderT x $ do
, Colonnade.singleton (fromSortable . Sortable (Just "occurrence-start") $ i18nCell MsgTableExamTime) $ \x -> cell . flip runReaderT x $ do
t <- view $ resultResult . _entityVal . _externalExamResultTime
lift $ formatTimeW SelFormatDateTime t
, colExamResult (resultResult . _entityVal . _externalExamResultResult)
@ -343,10 +343,10 @@ makeExternalExamUsersTable mode (Entity eeId ExternalExam{..}) = do
actionMap = mconcat
[ singletonMap ExternalExamUserEditOccurrence $
ExternalExamUserEditOccurrenceData
<$> apopt utcTimeField (fslI MsgExamTime) externalExamDefaultTime
<$> apopt utcTimeField (fslI MsgTableExamTime) externalExamDefaultTime
, singletonMap ExternalExamUserEditResult $
ExternalExamUserEditResultData
<$> apopt (examResultPassedGradeField Nothing) (fslI MsgExamResult) Nothing
<$> apopt (examResultPassedGradeField Nothing) (fslI MsgExternalExamResult) Nothing
, singletonMap ExternalExamUserDelete $
pure ExternalExamUserDeleteData
]
@ -361,7 +361,7 @@ makeExternalExamUsersTable mode (Entity eeId ExternalExam{..}) = do
dbtCsvEncode = case mode of
EEUMGrades -> Just DBTCsvEncode
{ dbtCsvExportForm = ExternalExamUserCsvExportDataGrades
<$> apopt checkBoxField (fslI MsgExamUserMarkSynchronisedCsv & setTooltip MsgExamUserMarkSynchronisedCsvTip) (Just False)
<$> apopt checkBoxField (fslI MsgExternalExamUserMarkSynchronisedCsv & setTooltip MsgExternalExamUserMarkSynchronisedCsvTip) (Just False)
, dbtCsvDoEncode = \ExternalExamUserCsvExportDataGrades{..} -> C.mapM $ \(E.Value k, row) -> do
when csvEEUserMarkSynchronised $ externalExamResultMarkSynchronised k
return $ encodeCsv' row

View File

@ -712,7 +712,7 @@ classifyBonusRule = \case
ExamBonusPoints{} -> ExamBonusPoints'
examBonusRuleForm :: Maybe ExamBonusRule -> AForm Handler ExamBonusRule
examBonusRuleForm prev = multiActionA actions (fslI MsgExamBonusRule) $ classifyBonusRule <$> prev
examBonusRuleForm prev = multiActionA actions (fslI MsgUtilExamBonusRule) $ classifyBonusRule <$> prev
where
actions :: Map ExamBonusRule' (AForm Handler ExamBonusRule)
actions = Map.fromList
@ -771,7 +771,7 @@ classifyExamGradingRule = \case
ExamGradingKey{} -> ExamGradingKey'
examGradingRuleForm :: Maybe ExamGradingRule -> AForm Handler ExamGradingRule
examGradingRuleForm prev = multiActionA actions (fslI MsgExamGradingRule) $ classifyExamGradingRule <$> prev
examGradingRuleForm prev = multiActionA actions (fslI MsgUtilExamGradingRule) $ classifyExamGradingRule <$> prev
where
actions :: Map ExamGradingRule' (AForm Handler ExamGradingRule)
actions = Map.fromList
@ -1800,9 +1800,9 @@ examResultField optMsg mkOl = Field
<option value=#{optionExternalValue} :matchesPred opt:selected>
#{optionDisplay}
<option value=#{toPathPiece noShowVal} :is (_Right . _ExamNoShow) val:selected>
_{MsgExamResultNoShow}
_{MsgUtilExamResultNoShow}
<option value=#{toPathPiece voidedVal} :is (_Right . _ExamVoided) val:selected>
_{MsgExamResultVoided}
_{MsgUtilExamResultVoided}
$forall Option{..} <- olOptions
<fieldset uw-interactive-fieldset .interactive-fieldset__target data-conditional-input=#{theId} data-conditional-value=#{optionExternalValue} style="display: inline-block">
<legend>
@ -1830,7 +1830,7 @@ examResultGradeField = flip examResultField $ do
MsgRenderer mr <- getMsgRenderer
return $ mkOptionList
[ Option
{ optionDisplay = mr MsgExamResultGrade
{ optionDisplay = mr MsgUtilExamResultGrade
, optionExternalValue = "grade"
, optionInternalValue =
( const True
@ -1848,7 +1848,7 @@ examResultPassedField = flip examResultField $ do
MsgRenderer mr <- getMsgRenderer
return $ mkOptionList
[ Option
{ optionDisplay = mr MsgExamResultPass
{ optionDisplay = mr MsgUtilExamResultPass
, optionExternalValue = "pass"
, optionInternalValue =
( const True
@ -1866,7 +1866,7 @@ examResultPassedGradeField = flip examResultField $ do
MsgRenderer mr <- getMsgRenderer
return $ mkOptionList
[ Option
{ optionDisplay = mr MsgExamResultGrade
{ optionDisplay = mr MsgUtilExamResultGrade
, optionExternalValue = "grade"
, optionInternalValue =
( either (`elem` map toPathPiece grades) (is _Right)
@ -1874,7 +1874,7 @@ examResultPassedGradeField = flip examResultField $ do
)
}
, Option
{ optionDisplay = mr MsgExamResultPass
{ optionDisplay = mr MsgUtilExamResultPass
, optionExternalValue = "pass"
, optionInternalValue =
( either (`elem` map toPathPiece passResults) (is _Left)
@ -2055,7 +2055,7 @@ courseSelectForm query coursePred miButtonAction' miIdent' fSettings fRequired m
miAdd' nudge btn csrf = do
let courseOptions = optionsCryptoIdE query' (\Course{..} -> MsgCourseOption courseTerm courseSchool courseName) >>= fmap (fmap entityKey . mkOptionList) . filterM (coursePred . optionInternalValue) . olOptions
(courseRes, addView) <- mpopt (hoistField liftHandler $ selectField courseOptions) (fslI MsgCourse & addName (nudge "course")) Nothing
(courseRes, addView) <- mpopt (hoistField liftHandler $ selectField courseOptions) (fslI MsgTableCourse & addName (nudge "course")) Nothing
let res = courseRes <&> \newCourse oldCourses -> pure (Set.toList $ Set.singleton newCourse `Set.difference` Set.fromList oldCourses)
return (res, $(widgetFile "widgets/massinput/courses/add"))
miCell' cid = do

View File

@ -191,8 +191,8 @@ numCell = textCell . toMessage
propCell :: (IsDBTable m a, Real b, ToMessage b) => b -> b -> DBCell m a
propCell curr max'
| max' /= 0 = i18nCell $ MsgProportion (toMessage curr) (toMessage max') (toRational curr / toRational max')
| otherwise = i18nCell $ MsgProportionNoRatio (toMessage curr) (toMessage max')
| max' /= 0 = i18nCell $ MsgTableProportion (toMessage curr) (toMessage max') (toRational curr / toRational max')
| otherwise = i18nCell $ MsgTableProportionNoRatio (toMessage curr) (toMessage max')
int64Cell :: IsDBTable m a => Int64-> DBCell m a
int64Cell = numCell

View File

@ -107,7 +107,7 @@ fltrTermUI mPrev = prismAForm (singletonFilter "term" . maybePrism _PathPiece) m
colSchool :: OpticColonnade SchoolId
colSchool resultSsh = Colonnade.singleton (fromSortable header) body
where
header = Sortable (Just "school") (i18nCell MsgSchool)
header = Sortable (Just "school") (i18nCell MsgTableSchool)
body = i18nCell . unSchoolKey . view resultSsh
sortSchool :: OpticSortColumn SchoolId
@ -135,7 +135,7 @@ fltrSchool :: OpticFilterColumn t SchoolId
fltrSchool querySsh = singletonMap "school" . FilterColumn $ mkExactFilter (view querySsh)
fltrSchoolUI :: DBFilterUI
fltrSchoolUI mPrev = prismAForm (singletonFilter "school" . maybePrism _PathPiece) mPrev $ aopt (hoistField lift schoolField) (fslI MsgSchool)
fltrSchoolUI mPrev = prismAForm (singletonFilter "school" . maybePrism _PathPiece) mPrev $ aopt (hoistField lift schoolField) (fslI MsgTableSchool)
-----------------
-- Allocations --
@ -208,7 +208,7 @@ fltrAllocationActiveUI mPrev = prismAForm (singletonFilter "active" . maybePrism
colExamName :: OpticColonnade ExamName
colExamName resultName = Colonnade.singleton (fromSortable header) body
where
header = Sortable (Just "exam-name") (i18nCell MsgExamName)
header = Sortable (Just "exam-name") (i18nCell MsgTableExamName)
body = views resultName i18nCell
sortExamName :: OpticSortColumn ExamName
@ -217,7 +217,7 @@ sortExamName queryName = singletonMap "exam-name" . SortColumn $ view queryName
colExamTime :: OpticColonnade (Maybe UTCTime, Maybe UTCTime)
colExamTime resultTimes = Colonnade.singleton (fromSortable header) body
where
header = Sortable (Just "exam-time") (i18nCell MsgExamTime)
header = Sortable (Just "exam-time") (i18nCell MsgTableExamTime)
body = views resultTimes $ \(eStart, eEnd)
-> maybe mempty (cell . flip (formatTimeRangeW SelFormatDateTime) eEnd) eStart
@ -227,7 +227,7 @@ sortExamTime queryTimes = singletonMap "exam-time" . SortColumns . toListOf $ qu
colExamClosed :: OpticColonnade (Maybe UTCTime)
colExamClosed resultClosed = Colonnade.singleton (fromSortable header) body
where
header = Sortable (Just "exam-closed") (i18nCell MsgExamClosed)
header = Sortable (Just "exam-closed") (i18nCell MsgUtilExamClosed)
body = views resultClosed $ maybe mempty (cell . formatTimeW SelFormatDateTime)
sortExamClosed :: OpticSortColumn (Maybe UTCTime)
@ -268,7 +268,7 @@ sortOccurrenceStart queryStart = singletonMap "occurrence-start" . SortColumn $
colExamResult :: OpticColonnade ExamResultPassedGrade
colExamResult resultResult = Colonnade.singleton (fromSortable header) body
where
header = Sortable (Just "exam-result") (i18nCell MsgExamResult)
header = Sortable (Just "exam-result") (i18nCell MsgTableExamResult)
body = views resultResult i18nCell
sortExamResult :: OpticSortColumn (Maybe ExamResultPassedGrade)
@ -281,7 +281,7 @@ fltrExamResultPoints queryExamResult = singletonMap "exam-result" . FilterColumn
fltrExamResultPointsUI :: DBFilterUI
fltrExamResultPointsUI mPrev = prismAForm (singletonFilter "exam-result" . maybePrism _PathPiece) mPrev $ aopt (examResultPassedGradeField . Just $ SomeMessage MsgNoFilter) (fslI MsgExamResult)
fltrExamResultPointsUI mPrev = prismAForm (singletonFilter "exam-result" . maybePrism _PathPiece) mPrev $ aopt (examResultPassedGradeField . Just $ SomeMessage MsgNoFilter) (fslI MsgTableExamResult)
-------------
-- Courses --
@ -290,7 +290,7 @@ fltrExamResultPointsUI mPrev = prismAForm (singletonFilter "exam-result" . maybe
colCourseName :: OpticColonnade CourseName
colCourseName resultName = Colonnade.singleton (fromSortable header) body
where
header = Sortable (Just "course-name") (i18nCell MsgCourse)
header = Sortable (Just "course-name") (i18nCell MsgTableCourse)
body = views resultName i18nCell
sortCourseName :: OpticSortColumn CourseName
@ -471,10 +471,10 @@ fltrUserSexUI mPrev = prismAForm (singletonFilter "user-sex" . maybePrism _PathP
colUserName :: (IsDBTable m c, HasUser a) => Colonnade Sortable a (DBCell m c)
colUserName = sortable (Just "user-name") (i18nCell MsgCourseMembers) cellHasUser
colUserName = sortable (Just "user-name") (i18nCell MsgTableCourseMembers) cellHasUser
colUserNameLink :: (IsDBTable m c, HasEntity a User) => (CryptoUUIDUser -> Route UniWorX) -> Colonnade Sortable a (DBCell m c)
colUserNameLink userLink = sortable (Just "user-name") (i18nCell MsgCourseMembers) (cellHasUserLink userLink)
colUserNameLink userLink = sortable (Just "user-name") (i18nCell MsgTableCourseMembers) (cellHasUserLink userLink)
-- | Intended to work with @nameWidget@, showing highlighter Surname within Displayname
sortUserName :: IsString a => (t -> E.SqlExpr (Entity User)) -> (a, SortColumn t r')
@ -543,11 +543,11 @@ fltrUserNameLinkUI = fltrUserNameUI
fltrUserNameUI :: Maybe (Map FilterKey [Text]) -> AForm (YesodDB UniWorX) (Map FilterKey [Text])
fltrUserNameUI mPrev =
prismAForm (singletonFilter "user-name") mPrev $ aopt textField (fslI MsgCourseMembers)
prismAForm (singletonFilter "user-name") mPrev $ aopt textField (fslI MsgTableCourseMembers)
fltrUserNameEmailUI :: Maybe (Map FilterKey [Text]) -> AForm (YesodDB UniWorX) (Map FilterKey [Text])
fltrUserNameEmailUI mPrev =
prismAForm (singletonFilter "user-name-email") mPrev $ aopt textField (fslI MsgCourseMembers)
prismAForm (singletonFilter "user-name-email") mPrev $ aopt textField (fslI MsgTableCourseMembers)
-------------------
-- Matriculation --

View File

@ -29,14 +29,14 @@ workflowInstanceScopeForm scopeRestr fs mPrev = multiActionA scopeOptions' fs $
, WSTerm <$> apopt termField (fslI MsgTerm) (mPrev ^? _Just . _wisTerm)
)
, ( WSSchool'
, WSSchool <$> apopt schoolField (fslI MsgSchool) (mPrev ^? _Just . _wisSchool)
, WSSchool <$> apopt schoolField (fslI MsgTableSchool) (mPrev ^? _Just . _wisSchool)
)
, ( WSTermSchool'
, WSTermSchool <$> apopt termField (fslI MsgTerm) (mPrev ^? _Just . _wisTerm)
<*> apopt schoolField (fslI MsgSchool) (mPrev ^? _Just . _wisSchool)
<*> apopt schoolField (fslI MsgTableSchool) (mPrev ^? _Just . _wisSchool)
)
, ( WSCourse'
, WSCourse <$> apopt (selectField' Nothing courseOptions) (fslI MsgCourse) (mPrev ^? _Just . _wisCourse)
, WSCourse <$> apopt (selectField' Nothing courseOptions) (fslI MsgTableCourse) (mPrev ^? _Just . _wisCourse)
)
]
where courseOptions = fmap (fmap entityKey) . optionsPersistCryptoId [] [ Desc CourseTerm, Asc CourseSchool, Asc CourseName ] $ \Course{..} -> MsgCourseOption courseTerm courseSchool courseName

View File

@ -44,9 +44,9 @@ $newline never
_{MsgTableTerm}
$if showSchools
<th .table__th>
_{MsgSchool}
_{MsgTableSchool}
<th .table__th>
_{MsgCourse}
_{MsgTableCourse}
$if eligibleCourses /= allocCourses
<th .table__th>
_{MsgAllocationCourseEligible}
@ -55,7 +55,7 @@ $newline never
<th .table__th>
_{MsgCourseAllocationMinCapacity}
<th .table__th>
_{MsgCourseMembers}
_{MsgTableCourseMembers}
<th .table__th>
_{MsgAllocationMatchedUsers}
<tbody>

View File

@ -16,7 +16,7 @@ $newline never
_{MsgExamCorrectHeadPart examPartNumber}
$if mayEditResults
<th .table__th .uw-exam-correct--result-cell uw-exam-correct-header="result" uw-hide-column-header="result" colspan=2>
_{MsgExamResult}
_{MsgTableExamResult}
<th .table__th uw-exam-correct-header="status" uw-hide-column-header="status">
_{MsgExamCorrectHeadStatus}
<tbody>

View File

@ -3,7 +3,7 @@ $maybe Entity _ ExamResult{examResultResult} <- result
$if gradingShown
<section>
<h2>
_{MsgExamResult}
_{MsgTableExamResult}
$if gradingShown && not gradingVisible
\ ^{isVisible False}
<p .result>
@ -30,7 +30,7 @@ $maybe desc <- examDescription
$maybe from <- examVisibleFrom
^{formatTimeW SelFormatDateTime from}
$nothing
_{MsgNever}
_{MsgExamNever}
\ ^{isVisible False}
$maybe regFrom <- examRegisterFrom
<dt .deflist__dt>_{MsgExamRegisterFrom}
@ -83,7 +83,7 @@ $maybe desc <- examDescription
<dt .deflist__dt>_{MsgExamRoom}
<dd .deflist__dd>^{roomReferenceWidget room}
$if examTimes
<dt .deflist__dt>_{MsgExamTime}
<dt .deflist__dt>_{MsgTableExamTime}
<dd .deflist__dd>
$maybe start <- examStart
^{formatTimeRangeW SelFormatDateTime start examEnd}
@ -134,7 +134,7 @@ $maybe desc <- examDescription
<dd .deflist__dd>#{registeredCount}
$maybe registerWdgt <- registerWidget Nothing
<dt .deflist__dt>
_{MsgExamRegistration}
_{MsgTableExamRegistration}
<dd .deflist__dd>
^{registerWdgt}
$if is _Nothing (examRequiredEquipment examExamMode)

View File

@ -2,16 +2,16 @@ $newline never
$maybe ExternalExamResult{externalExamResultResult} <- mResult
<section>
<h2>
_{MsgExamResult}
_{MsgExternalExamResult}
<p .result>
$case externalExamResultResult
$of ExamAttended grade
_{grade}
$of ExamNoShow
_{MsgExamNoShow}
_{MsgExternalExamNoShow}
$of ExamVoided
_{MsgExamVoided}
_{MsgExternalExamVoided}
<section>
<dl .deflist>
@ -21,15 +21,15 @@ $maybe ExternalExamResult{externalExamResultResult} <- mResult
<dt .deflist__dt>_{MsgTableCourseSchool}
<dd .deflist__dd>
#{schoolName}
<dt .deflist__dt>_{MsgCourseName}
<dt .deflist__dt>_{MsgExternalExamCourseName}
<dd .deflist__dd>
#{externalExamCourseName}
<dt .deflist__dt>_{MsgExamName}
<dt .deflist__dt>_{MsgTableExamName}
<dd .deflist__dd>
#{externalExamExamName}
$maybe examTime <- fmap externalExamResultTime mResult <|> externalExamDefaultTime
<dt .deflist__dt>
_{MsgExamTime}
_{MsgTableExamTime}
<dd .deflist__dd>
^{formatTimeW SelFormatDateTime examTime}
$if not (null addSchools)

View File

@ -12,6 +12,6 @@ $newline never
$maybe tResetTime' <- tResetTime
\ #{tResetTime'}
$nothing
\ _{MsgNever}
\ _{MsgProfileNever}
<br />
^{tokenForm}