diff --git a/messages.tar.bz2 b/messages.tar.bz2 new file mode 100644 index 000000000..93cf1a0b8 Binary files /dev/null and b/messages.tar.bz2 differ diff --git a/messages/uniworx/misc/de-de-formal.msg b/messages/uniworx/misc/de-de-formal.msg index 3be85654d..e897676b6 100644 --- a/messages/uniworx/misc/de-de-formal.msg +++ b/messages/uniworx/misc/de-de-formal.msg @@ -24,7 +24,7 @@ BtnParentCandidatesInfer: Unterstudiengangs-Zuordnung automatisch lernen BtnParentCandidatesDeleteAll: Alle Unterstudiengangs-Beobachtungen löschen BtnStandaloneCandidatesDeleteAll: Alle Einzelstudiengangs-Beobachtungen löschen BtnStandaloneCandidatesDeleteRedundant: Redundante Einzelstudiengangs-Beobachtungen löschen -BtnResetTokens: Authorisierungs-Tokens invalidieren + BtnLecInvAccept: Annehmen BtnLecInvDecline: Ablehnen BtnCorrInvAccept: Annehmen @@ -39,6 +39,15 @@ BtnSystemMessageUnhide: Nicht mehr verstecken BtnCommunicationSend: Senden BtnCommunicationTest: Test-Nachricht verschicken +EmailTable: Email +StudyTermTable: Studiengang +StudyFeatureAgeTable: Fachsemester +StudyFeatureDegreeTable: Abschluss +StudyFeatureTypeTable: +StudyFeatureValidTable: Aktiv +StudyFeatureUpdateTable: Abgeglichen + +CsvOptionsBreadCrum: CSV-Optionen Aborted: Abgebrochen Remarks: Hinweise @@ -590,8 +599,8 @@ NewsHeading: Aktuelles LoginHeading: Authentifizierung LoginTitle: Authentifizierung ProfileHeading: Benutzereinstellungen -ProfileFor: Benutzereinstellungen für -ProfileDataHeading: Gespeicherte Benutzerdaten + + InfoHeading: Informationen VersionHeading: Versionsgeschichte LegalHeading: Rechtliche Informationen @@ -619,13 +628,10 @@ Title: Titel LdapSynced: LDAP-Synchronisiert LdapSyncedBefore: Letzte LDAP-Synchronisation vor NoMatrikelKnown: Keine Matrikelnummer -Theme: Oberflächen Design -Favourites: Anzahl gespeicherter Favoriten -FavouritesTip: Betrifft nur automatisch angelegte Favoriten („Kürzlich besucht“) -FavouriteSemesters: Maximale Anzahl an Semestern in Seitenleiste + Plugin: Plugin -Ident: Identifikation -LastLogin: Letzter Login + + Settings: Individuelle Benutzereinstellungen SettingsUpdate: Einstellungen erfolgreich gespeichert NotificationSettingsUpdate: Benachrichtigungs-Einstellungen erfolgreich gespeichert @@ -813,20 +819,10 @@ AssimilateUserSuccess: Benutzer erfolgreich assimiliert LecturersForN n@Int: #{pluralDE n "Dozent" "Dozenten"} Date: Datum -DateTimeFormat: Datums- und Uhrzeitformat -DateFormat: Datumsformat -TimeFormat: Uhrzeitformat -DownloadFiles: Dateien automatisch herunterladen -DownloadFilesTip: Wenn gesetzt werden Dateien automatisch als Download behandelt, ansonsten ist das Verhalten browserabhängig (es können z.B. PDFs im Browser geöffnet werden). -WarningDays: Fristen-Vorschau -WarningDaysTip: Wie viele Tage im Voraus sollen Fristen von Prüfungen etc. auf Ihrer Startseite angezeigt werden? -NotificationSettings: Erwünschte Benachrichtigungen -UserSchools: Relevante Institute -UserSchoolsTip: Sie erhalten nur institutweite Benachrichtigungen für Institute, die hier ausgewählt sind. -FormNotifications: Benachrichtigungen -FormBehaviour: Verhalten -FormCosmetics: Oberfläche -FormPersonalAppearance: Öffentliche Daten + + + + FormFieldRequiredTip: Gekennzeichnete Pflichtfelder sind immer auszufüllen FormAllocationNotifications: Benachrichtigungen für neue Zentralanmeldungskurse FormAllocationNotificationsTip: Wollen Sie eine Benachrichtigung per E-Mail erhalten wenn ein neuer Kurs zur Zentralanmeldung eingetragen wird? „Ja“ und „Nein“ überschreiben die entsprechende systemweite Einstellung unter "Benachrichtigungen" @@ -838,13 +834,7 @@ AllocNotifyNewCourseForceOn: Ja BtnNotifyNewCourseForceOn: Benachrichtigen BtnNotifyNewCourseForceOff: Nicht benachrichtigen -PersonalInfoExamAchievementsWip: Die Anzeige von Prüfungsergebnissen wird momentan an dieser Stelle leider noch nicht unterstützt. -PersonalInfoOwnTutorialsWip: Die Anzeige von Tutorien, zu denen Sie als Tutor eingetragen sind wird momentan an dieser Stelle leider noch nicht unterstützt. -PersonalInfoTutorialsWip: Die Anzeige von Tutorien, zu denen Sie angemeldet sind wird momentan an dieser Stelle leider noch nicht unterstützt. -ActiveAuthTagsSaveCookie: In Cookie speichern? -ActiveAuthTagsSaveCookieTip: Falls gesetzt werden die aktivierten Authorisierungsprädikate zusätzlich zur aktiven Session auch in einem persistenten Cookie gespeichert. Dies kann vor Allem in Kombination mit Tab-Containern nützlich sein. -ActiveAuthTags: Aktivierte Authorisierungsprädikate InvalidDateTimeFormat: Ungültiges Datums- und Zeitformat, JJJJ-MM-TTTHH:MM[:SS] Format erwartet AmbiguousUTCTime: Der angegebene Zeitpunkt lässt sich nicht eindeutig zu UTC konvertieren @@ -941,7 +931,7 @@ ColumnStudyFeatures: Studiendaten AdminFeaturesHeading: Studiengänge StudyTerms: Studiengänge -StudyTerm: Studiengang + NoStudyTermsKnown: Keine Studiengänge bekannt StudyFeaturesDegrees: Abschlüsse StudyFeaturesTerms: Studiengänge @@ -952,17 +942,16 @@ StudyFeatureNameInference: Studiengangschlüssel-Inferenz StudyFeatureParentInference: Unterstudiengang-Inferenz StudyFeatureInferenceNoNameConflicts: Keine Konflikte beobachtet StudyFeatureInferenceNameConflictsHeading: Studiengangseinträge mit beobachteten Konflikten -StudyFeatureAge: Fachsemester -StudyFeatureDegree: Abschluss + FieldPrimary: Hauptfach FieldSecondary: Nebenfach ShortFieldPrimary: HF ShortFieldSecondary: NF NoStudyField: Kein Studienfach -StudyFeatureType: -StudyFeatureValid: Aktiv -StudyFeatureUpdate: Abgeglichen -StudyTermsParentMissing: Elter wird benötigt + +StudyTermsParentMissing: Elternteil wird benötigt + + DegreeKey: Abschlussschlüssel DegreeName: Abschluss @@ -1164,49 +1153,9 @@ SheetFileTypeHeader: Zugehörigkeit SheetArchiveName tid@TermId ssh@SchoolId csh@CourseShorthand shn@SheetName: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase csh}-#{foldedCase shn} SheetTypeArchiveName tid@TermId ssh@SchoolId csh@CourseShorthand shn@SheetName renderedSft@Text: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase csh}-#{foldedCase shn}-#{foldCase renderedSft} -NotificationTriggerSubmissionRatedGraded: Meine Abgabe in einem gewerteten Übungsblatt wurde korrigiert -NotificationTriggerSubmissionRated: Meine Abgabe wurde korrigiert -NotificationTriggerSheetActive: Ich kann ein neues Übungsblatt herunterladen -NotificationTriggerSheetHint: Ich kann die Hinweise für ein Übungsblatt herunterladen -NotificationTriggerSheetSolution: Ich kann die Lösung für ein Übungsblatt herunterladen -NotificationTriggerSheetSoonInactive: Ich kann ein Übungsblatt bald nicht mehr abgeben -NotificationTriggerSheetInactive: Abgabezeitraum eines meiner Übungsblätter ist abgelaufen -NotificationTriggerCorrectionsAssigned: Mir wurden Abgaben zur Korrektur zugeteilt -NotificationTriggerCorrectionsNotDistributed: Nicht alle Abgaben eines meiner Übungsblätter konnten einem Korrektor zugeteilt werden -NotificationTriggerUserRightsUpdate: Meine Berechtigungen wurden geändert -NotificationTriggerUserAuthModeUpdate: Mein Anmelde-Modus wurde geändert -NotificationTriggerExamRegistrationActive: Ich kann mich für eine Prüfung anmelden -NotificationTriggerExamRegistrationSoonInactive: Ich kann mich bald nicht mehr für eine Prüfung anmelden -NotificationTriggerExamDeregistrationSoonInactive: Ich kann mich bald nicht mehr von einer Prüfung abmelden -NotificationTriggerExamResult: Ich kann ein neues Prüfungsergebnis einsehen -NotificationTriggerAllocationStaffRegister: Ich kann Kurse bei einer neuen Zentralanmeldung eintragen -NotificationTriggerAllocationAllocation: Ich kann Zentralanmeldungs-Bewerbungen für einen meiner Kurse bewerten -NotificationTriggerAllocationRegister: Ich kann mich bei einer neuen Zentralanmeldung bewerben -NotificationTriggerAllocationOutdatedRatings: Zentralanmeldungs-Bewerbungen für einen meiner Kurse wurden verändert, nachdem sie bewertet wurden -NotificationTriggerAllocationUnratedApplications: Bewertungen zu Zentralanmeldungs-Bewerbungen für einen meiner Kurse stehen aus -NotificationTriggerAllocationResults: Plätze wurden für eine meiner Zentralanmeldungen verteilt -NotificationTriggerExamOfficeExamResults: Ich kann neue Prüfungsergebnisse einsehen -NotificationTriggerExamOfficeExamResultsChanged: Prüfungsergebnisse wurden verändert -NotificationTriggerCourseRegistered: Ein Kursverwalter hat mich zu einem Kurs angemeldet -NotificationTriggerSubmissionUserCreated: Ich wurde als Mitabgebender zu einer Übungsblatt-Abgabe hinzugefügt -NotificationTriggerSubmissionEdited: Eine meiner Übungsblatt-Abgaben wurde verändert -NotificationTriggerSubmissionUserDeleted: Ich wurde als Mitabgebender von einer Übungsblatt-Abgabe entfernt -NotificationTriggerAllocationNewCourse: Es wurde ein neuer Kurs eingetragen zu einer Zentralanmeldungen, zu der ich meine Teilnahme registriert habe -NotificationTriggerAllocationNewCourseTip: Kann pro Zentralanmeldung überschrieben werden -NotificationTriggerKindAll: Für alle Benutzer -NotificationTriggerKindCourseParticipant: Für Kursteilnehmer -NotificationTriggerKindExamParticipant: Für Prüfungsteilnehmer -NotificationTriggerKindCorrector: Für Korrektoren -NotificationTriggerKindLecturer: Für Dozenten -NotificationTriggerKindCourseLecturer: Für Kursverwalter -NotificationTriggerKindAdmin: Für Administratoren -NotificationTriggerKindExamOffice: Für Prüfungsverwalter -NotificationTriggerKindEvaluation: Für Vorlesungsumfragen -NotificationTriggerKindAllocationStaff: Für Zentralanmeldungen (Dozenten) -NotificationTriggerKindAllocationParticipant: Für Zentralanmeldungen -NotificationTriggerKindSubmissionUser: Für Mitabgebende einer Übungsblatt-Abgabe -NotificationTriggerKindAllocationAdmin: Für Administratoren von Zentralanmeldungen + + CorrCreate: Abgaben registrieren UnknownPseudonymWord pseudonymWord@Text: Unbekanntes Pseudonym-Wort "#{pseudonymWord}" @@ -1557,55 +1506,8 @@ ExternalExamUsers coursen@CourseName examn@ExamName: Teilnehmer: #{coursen}, #{e TitleMetrics: Metriken -AuthPredsInfo: Um eigene Veranstaltungen aus Sicht der Teilnehmer anzusehen, können Veranstalter und Korrektoren hier die Prüfung ihrer erweiterten Berechtigungen temporär deaktivieren. Abgewählte Prädikate schlagen immer fehl. Abgewählte Prädikate werden also nicht geprüft um Zugriffe zu gewähren, welche andernfalls nicht erlaubt wären. -AuthPredsActive: Aktive Authorisierungsprädikate -AuthPredsActiveChanged: Authorisierungseinstellungen gespeichert -AuthTagFree: Seite ist universell zugänglich -AuthTagAdmin: Nutzer ist Administrator -AuthTagExamOffice: Nutzer ist mit Prüfungsverwaltung beauftragt -AuthTagSystemExamOffice: Nutzer ist mit systemweiter Prüfungsverwaltung beauftragt -AuthTagEvaluation: Nutzer ist mit Kursumfragenverwaltung beauftragt -AuthTagAllocationAdmin: Nutzer ist mit der Administration von Zentralanmeldungen beauftragt -AuthTagToken: Nutzer präsentiert Authorisierungs-Token -AuthTagNoEscalation: Nutzer-Rechte werden nicht auf fremde Institute ausgeweitet -AuthTagDeprecated: Seite ist nicht überholt -AuthTagDevelopment: Seite ist nicht in Entwicklung -AuthTagLecturer: Nutzer ist Dozent -AuthTagCorrector: Nutzer ist Korrektor -AuthTagExamCorrector: Nutzer ist Prüfungskorrektor -AuthTagTutor: Nutzer ist Tutor -AuthTagTutorControl: Tutoren haben Kontrolle über ihre Tutorium -AuthTagTime: Zeitliche Einschränkungen sind erfüllt -AuthTagStaffTime: Zeitliche Einschränkungen für Lehrbeteiligte sind erfüllt -AuthTagAllocationTime: Zeitliche Einschränkungen durch Zentralanmeldung sind erfüllt -AuthTagCourseTime: Zeitliche Einschränkungen für Kurssichtbarkeit sind erfüllt -AuthTagCourseRegistered: Nutzer ist Kursteilnehmer -AuthTagAllocationRegistered: Nutzer nimmt an der Zentralanmeldung teil -AuthTagTutorialRegistered: Nutzer ist Tutoriumsteilnehmer -AuthTagExamRegistered: Nutzer ist Prüfungsteilnehmer -AuthTagExamResult: Nutzer hat Prüfungsergebnisse -AuthTagExamOccurrenceRegistered: Nutzer ist für Prüfungsraum/-termin angemeldet -AuthTagExamOccurrenceRegistration: Anmeldung zur Prüfung erfolgt inkl. Raum/Termin -AuthTagParticipant: Nutzer ist mit Kurs assoziiert -AuthTagApplicant: Nutzer ist mit Bewerber zum Kurs -AuthTagRegisterGroup: Nutzer ist nicht Mitglied eines anderen Tutoriums mit der selben Registrierungs-Gruppe -AuthTagCapacity: Kapazität ist ausreichend -AuthTagEmpty: Ressource ist „leer“ -AuthTagMaterials: Kursmaterialien sind freigegeben -AuthTagOwner: Nutzer ist Besitzer -AuthTagPersonalisedSheetFiles: Nutzer verfügt über personalisierte Übungsblatt-Dateien -AuthTagRated: Korrektur ist bewertet -AuthTagUserSubmissions: Abgaben erfolgen durch Kursteilnehmer -AuthTagCorrectorSubmissions: Abgaben erfolgen durch Korrektoren -AuthTagSelf: Nutzer greift nur auf eigene Daten zu -AuthTagIsLDAP: Nutzer meldet sich mit Campus-Kennung an -AuthTagIsPWHash: Nutzer meldet sich mit Uni2work-Kennung an -AuthTagAuthentication: Nutzer ist angemeldet, falls erforderlich -AuthTagRead: Zugriff ist nur lesend -AuthTagWrite: Zugriff ist i.A. schreibend -AuthTagSubmissionGroup: Nutzer ist Mitglied in registrierter Abgabegruppe -AuthTagWorkflow: Nutzer hat passende Workflow-Rolle -AuthTagStudent: Nutzer ist Student + + 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. @@ -2282,7 +2184,6 @@ AuthPWHashConfigured: Nutzer meldet sich nun per Uni2work-Kennung an PasswordResetQueued: Link zum Passwort-Zurücksetzen versandt ResetPassword: Uni2work-Passwort ändern bzw. setzen -AuthMode: Authentifizierung AuthLDAP: Campus AuthPWHash pwHash@Text: Uni2work CurrentPassword: Aktuelles Passwort @@ -2395,17 +2296,12 @@ CourseApplicationNoVeto: Kein Veto CourseApplicationNoRatingPoints: Keine Bewertung CourseApplicationNoRatingComment: Kein Kommentar -UserDisplayName: Angezeigter Name -UserDisplayNameInvalid: Angezeigter Name erfüllt nicht die Vorgaben -UserDisplayNameRules: Vorgaben für den angezeigten Namen -UserDisplayNameRulesBelow: Vorgaben für den angezeigten Namen finden sich weiter unten auf der Seite + UserMatriculation: Matrikelnummer -UserDisplayEmail: Angezeigte E-Mail-Adresse -UserDisplayEmailTip: Diese Adresse wird in öffentlich zugänglichen Teilen des Systems im Zusammenhang mit Ihrem Namen angezeigt. Benachrichtigungen und andere Kommunikation von Uni2work und Nutzern mit erweiterten Rechten erhalten sie stets, unabhängig von dieser Einstellung, an die in Ihren Persönlichen Daten hinterlegte primäre Adresse. -UserDisplayEmailChangeSent displayEmail@UserEmail: Anweisungen zum Ändern der angezeigten E-Mail-Adresse wurden an „#{displayEmail}” versandt -UserCreated: Account erstellt + + SchoolShort: Kürzel SchoolName: Name @@ -2561,37 +2457,6 @@ AcceptApplicationsSecondaryTip: Wenn es im Laufe des Verfahrens mehrere Bewerber AcceptApplicationsSecondaryRandom: Zufällig AcceptApplicationsSecondaryTime: Nach Zeitpunkt der Bewerbung -CsvOptions: CSV-Optionen -CsvOptionsTip: Diese Einstellungen betreffen primär den CSV-Export; beim Import werden die meisten Einstellungen automatisch ermittelt. Als Zeichenkodierung wird beim Import die selbe Kodierung wie beim Export erwartet. -CsvFormatOptions: Dateiformat -CsvTimestamp: Zeitstempel -CsvTimestampTip: Soll an den Namen jeder exportierten CSV-Datei ein Zeitstempel vorne angehängt werden? -CsvPresetRFC: Standard-Konform (RFC 4180) -CsvPresetExcel: Excel-Kompatibel -CsvCustom: Benutzerdefiniert -CsvDelimiter: Trennzeichen -CsvUseCrLf: Zeilenumbrüche -CsvQuoting: Quoting -CsvQuotingTip: Wann sollen Anführungszeichen (") um Felder platziert werden, um Interpretation von im Feld enthaltenen Zeichen als Trennzeichen zu verhindern? -CsvEncoding: Encoding -CsvEncodingTip: CSV-Dateien können in einer anderen Zeichenkodierung als dem vom System standardmäßig verwendeten UTF-8 exportiert werden. Beachten Sie dass es bei nicht-UTF-8 Zeichenkodierungen wmgl. zu Darstellungsproblemen mit Sonderzeichen kommt. -CsvUTF8: UTF-8 (Unicode) -CsvCP1252: Windows CP-1252 ("ANSI") -CsvDelimiterNull: Null-Byte -CsvDelimiterTab: Tabulator -CsvDelimiterComma: Komma -CsvDelimiterColon: Doppelpunkt -CsvDelimiterSemicolon: Strichpunkt -CsvDelimiterBar: Senkrechter Strich -CsvDelimiterSpace: Leerzeichen -CsvDelimiterUnitSep: Teilgruppentrennzeichen -CsvCrLf: DOS (CRLF) -CsvLf: Unix (LF) -CsvQuoteNone: Nie -CsvQuoteMinimal: Nur wenn nötig -CsvQuoteAll: Immer -CsvOptionsUpdated: CSV-Optionen erfolgreich angepasst -CsvChangeOptionsLabel: Export-Optionen CourseNews: Aktuelles CourseNewsArchiveName tid@TermId ssh@SchoolId csh@CourseShorthand newsTitle@Text: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase csh}-#{foldCase newsTitle} @@ -2690,8 +2555,7 @@ ShortSexMale: m ShortSexFemale: w ShortSexNotApplicable: k.A. -ShowSex: Geschlechter anderer Nutzer anzeigen -ShowSexTip: Sollen in Kursteilnehmer-Tabellen u.Ä. die Geschlechter der Nutzer angezeigt werden? + StudySubTermsChildKey: Kind StudySubTermsChildName: Kindname @@ -2706,18 +2570,8 @@ LanguageChanged: Sprache erfolgreich geändert ProfileLastLdapSynchronisation: Letzte LDAP-Synchronisation ProfileLdapPrimaryKey: LDAP-Primärschlüssel -ProfileCorrector: Korrektor -ProfileCourses: Eigene Kurse -ProfileCourseParticipations: Kursanmeldungen -ProfileCourseExamResults: Prüfungsleistungen -ProfileTutorials: Eigene Tutorien -ProfileTutorialParticipations: Tutorien -ProfileSubmissionGroups: Abgabegruppen -ProfileSubmissions: Abgaben -ProfileRemark: Hinweis -ProfileGroupSubmissionDates: Bei Gruppenabgaben wird kein Datum angezeigt, wenn Sie die Gruppenabgabe nie selbst hochgeladen haben. -ProfileCorrectorRemark: Die oberhalb angezeigte Tabelle zeigt nur prinzipielle Einteilungen als Korrektor zu einem Übungsblatt. Auch ohne Einteilung können Korrekturen einzeln zugewiesen werden, welche hier dann nicht aufgeführt werden. -ProfileCorrections: Auflistung aller zugewiesenen Korrekturen + + GroupSizeNotNatural: „Gruppengröße“ muss eine natürliche Zahl sein AmbiguousEmail: E-Mail-Adresse nicht eindeutig diff --git a/messages/uniworx/misc/en-eu.msg b/messages/uniworx/misc/en-eu.msg index 3f425b064..0f7b4b07e 100644 --- a/messages/uniworx/misc/en-eu.msg +++ b/messages/uniworx/misc/en-eu.msg @@ -24,7 +24,7 @@ BtnParentCandidatesInfer: Infer parent-relation BtnParentCandidatesDeleteAll: Delete all parent-observations BtnStandaloneCandidatesDeleteAll: Delete all standalone-observations BtnStandaloneCandidatesDeleteRedundant: Delete redundant standalone-observations -BtnResetTokens: Invalidate tokens + BtnLecInvAccept: Accept BtnLecInvDecline: Decline BtnCorrInvAccept: Accept @@ -39,6 +39,15 @@ BtnSystemMessageUnhide: Unhide BtnCommunicationSend: Send BtnCommunicationTest: Send test message +EmailTable: Email +StudyFeatureTypeTable: +StudyFeatureValidTable: Valid +StudyFeatureUpdateTable: Updated +StudyFeatureAgeTable: Semester +StudyFeatureDegreeTable: Degree +StudyTermTable: Field of study + +CsvOptionsBreadCrum: csv-options Aborted: Aborted Remarks: Remarks @@ -587,8 +596,8 @@ NewsHeading: News LoginHeading: Authentication LoginTitle: Authentication ProfileHeading: Settings -ProfileFor: Settings for -ProfileDataHeading: Personal information + + InfoHeading: Information VersionHeading: Version history LegalHeading: Legal @@ -616,13 +625,10 @@ Title: Title LdapSynced: LDAP-synchronised LdapSyncedBefore: Last LDAP-synchronisation before NoMatrikelKnown: No matriculation -Theme: Theme -Favourites: Number of saved favourites -FavouritesTip: Only relevant for automatically generated favourites (“visited recently”) -FavouriteSemesters: Maximum number of semesters in favourites bar + Plugin: Plugin -Ident: Identification -LastLogin: Last login + + Settings: Settings SettingsUpdate: Successfully updated settings NotificationSettingsUpdate: Successfully updated notification settings @@ -809,20 +815,10 @@ AssimilateUserSuccess: Successfully assimilated user LecturersForN n: #{pluralEN n "Lecturer" "Lecturers"} Date: Date -DateTimeFormat: Date and time format -DateFormat: Date format -TimeFormat: Time format -DownloadFiles: Automatically download files -DownloadFilesTip: When set, files are automatically treated as downloads. Otherwise behaviour is browser dependent (PDFs might, for example, be opened within the browser) -WarningDays: Deadline-preview -WarningDaysTip: How many days ahead should deadlines regarding exams etc. be displayed on the homepage? -NotificationSettings: Desired notifications -UserSchools: Relevant departments -UserSchoolsTip: You will only receive department-wide notifications for the selected departments. -FormNotifications: Notifications -FormBehaviour: Behaviour -FormCosmetics: Interface -FormPersonalAppearance: Public data + + + + FormFieldRequiredTip: Required fields FormAllocationNotifications: Notifications for new central allocation courses FormAllocationNotificationsTip: Do you want to receive a notification if a new course is added to the central allocation? “Yes” and “No” override the system wide setting under “Notifications” @@ -834,14 +830,9 @@ AllocNotifyNewCourseForceOn: Yes BtnNotifyNewCourseForceOn: Notify me BtnNotifyNewCourseForceOff: Do not notify me -PersonalInfoExamAchievementsWip: The feature to display your exam achievements has not yet been implemented. -PersonalInfoOwnTutorialsWip: The feature to display tutorials you have been assigned to as tutor has not yet been implemented. -PersonalInfoTutorialsWip: The feature to display tutorials you have registered for has not yet been implemented. -ActiveAuthTagsSaveCookie: Save in cookie? -ActiveAuthTagsSaveCookieTip: Should the configuration of active authorisation predicates be additionally saved in a persistent cookie? This may be especially useful if using container tabs. -ActiveAuthTags: Active authorisation predicates + InvalidDateTimeFormat: Invalid date and time format. YYYY-MM-DDTHH:MM[:SS] expected AmbiguousUTCTime: The given timestamp cannot be converted to UTC unambiguously @@ -938,7 +929,7 @@ ColumnStudyFeatures: Features of study AdminFeaturesHeading: Features of study StudyTerms: Fields of study -StudyTerm: Field of study + NoStudyTermsKnown: No known features of study StudyFeaturesDegrees: Degrees StudyFeaturesTerms: Terms of Study @@ -949,16 +940,12 @@ StudyFeatureNameInference: Infer field of study mapping StudyFeatureParentInference: Infer field of study parent relation StudyFeatureInferenceNoNameConflicts: No observed conflicts StudyFeatureInferenceNameConflictsHeading: Fields of study with observed conflicts -StudyFeatureAge: Semester -StudyFeatureDegree: Degree FieldPrimary: Major FieldSecondary: Minor ShortFieldPrimary: Mj ShortFieldSecondary: Mn NoStudyField: No field of study -StudyFeatureType: -StudyFeatureValid: Valid -StudyFeatureUpdate: Updated + StudyTermsParentMissing: Parent is required DegreeKey: Degree key @@ -1165,49 +1152,9 @@ SheetFileTypeHeader: Belongs to SheetArchiveName tid ssh csh shn: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase csh}-#{foldedCase shn} SheetTypeArchiveName tid ssh csh shn renderedSft: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase csh}-#{foldedCase shn}-#{foldCase renderedSft} -NotificationTriggerSubmissionRatedGraded: My submission for an exercise sheet was marked (not purely informational) -NotificationTriggerSubmissionRated: My submission for an exercise sheet was marked -NotificationTriggerSheetActive: I can now download a new exercise sheet -NotificationTriggerSheetHint: I can now download the hints for an exercise sheet -NotificationTriggerSheetSolution: I can now download the solutions for an exercise sheet -NotificationTriggerSheetSoonInactive: I will soon no longer be able to submit for an exercise sheet -NotificationTriggerSheetInactive: The submission period for one of my exercise sheets is over -NotificationTriggerCorrectionsAssigned: I was assigned corrections -NotificationTriggerCorrectionsNotDistributed: Not all submissions for one of my exercise sheets could be assigned a corrector -NotificationTriggerUserRightsUpdate: My permissions changed -NotificationTriggerUserAuthModeUpdate: My login mode changed -NotificationTriggerExamRegistrationActive: I can now register for an exam -NotificationTriggerExamRegistrationSoonInactive: I will soon no longer be able to register for an exam -NotificationTriggerExamDeregistrationSoonInactive: I will soon no longer be able to deregister from an exam -NotificationTriggerExamResult: An exam result is available -NotificationTriggerAllocationStaffRegister: I can now register a course for central allocation -NotificationTriggerAllocationAllocation: I can now grade applications to a central alloction for one of my courses -NotificationTriggerAllocationRegister: I can now apply to a new central allocation -NotificationTriggerAllocationOutdatedRatings: Applications to a central allocation for one of my courses have changed since they were graded -NotificationTriggerAllocationUnratedApplications: Grades are pending for applications to a central allocation for one of my courses -NotificationTriggerAllocationResults: Participants have been placed by one of my central allocations -NotificationTriggerExamOfficeExamResults: New exam results are available -NotificationTriggerExamOfficeExamResultsChanged: Exam results have changed -NotificationTriggerCourseRegistered: A course administrator has enrolled me in a course -NotificationTriggerSubmissionUserCreated: I was added to an exercise sheet submission -NotificationTriggerSubmissionEdited: One of my exercise sheet submissions was changed -NotificationTriggerSubmissionUserDeleted: I was removed from one of my exercise sheet submissions -NotificationTriggerAllocationNewCourse: A new course was added to a central allocation for which I have registered my participation -NotificationTriggerAllocationNewCourseTip: Can be overridden per central allocation -NotificationTriggerKindAll: For all users -NotificationTriggerKindCourseParticipant: For course participants -NotificationTriggerKindExamParticipant: For exam participants -NotificationTriggerKindCorrector: For correctors -NotificationTriggerKindLecturer: For lecturers -NotificationTriggerKindCourseLecturer: For course administrators -NotificationTriggerKindAdmin: For administrators -NotificationTriggerKindExamOffice: For the exam office -NotificationTriggerKindEvaluation: For course evaluations -NotificationTriggerKindAllocationStaff: For central allocations (lecturers) -NotificationTriggerKindAllocationParticipant: For central allocations -NotificationTriggerKindSubmissionUser: For participants in an exercise sheet submission -NotificationTriggerKindAllocationAdmin: For administrators of central allocations + + CorrCreate: Register submissions UnknownPseudonymWord pseudonymWord: Invalid pseudonym-word “#{pseudonymWord}” @@ -1557,55 +1504,7 @@ ExternalExamUsers coursen examn: Exam participants: #{coursen}, #{examn} TitleMetrics: Metrics -AuthPredsInfo: To view their own courses like a participant would, administrators and correctors can deactivate the checking of their credentials temporarily. Disabled authorisation predicates always fail. This means that deactivated predicates are not checked to grant access where it would otherwise not be permitted. -AuthPredsActive: Active authorisation predicates -AuthPredsActiveChanged: Successfully saved authorisation settings -AuthTagFree: Page is freely accessable -AuthTagAdmin: User is administrator -AuthTagExamOffice: User is part of an exam office -AuthTagSystemExamOffice: User is charged with system wide exam administration -AuthTagEvaluation: User is charged with course evaluation -AuthTagAllocationAdmin: User is charged with administration of central allocations -AuthTagToken: User is presenting an authorisation-token -AuthTagNoEscalation: User permissions are not being expanded to other departments -AuthTagDeprecated: Page is not deprecated -AuthTagDevelopment: Page is not in development -AuthTagLecturer: User is lecturer -AuthTagCorrector: User is corrector -AuthTagExamCorrector: User is exam corrector -AuthTagTutor: User is tutor -AuthTagTutorControl: Tutors have control over their tutorial -AuthTagTime: Time restrictions are fulfilled -AuthTagStaffTime: Time restrictions wrt. staff are fulfilled -AuthTagAllocationTime: Time restrictions due to a central allocation are fulfilled -AuthTagCourseTime: Time restrictions wrt. course visibility are fulfilled -AuthTagCourseRegistered: User is enrolled in course -AuthTagAllocationRegistered: User participates in central allocation -AuthTagTutorialRegistered: User is tutorial participant -AuthTagExamRegistered: User is exam participant -AuthTagExamResult: User has an exam result -AuthTagExamOccurrenceRegistered: User is registered for exam occurrence/room -AuthTagExamOccurrenceRegistration: Registration for exam is done including occurrence/room -AuthTagParticipant: User participates in course -AuthTagApplicant: User is applicant for course -AuthTagRegisterGroup: User is not participant in any tutorial of the same registration group -AuthTagCapacity: Capacity is sufficient -AuthTagEmpty: Resource is “empty” -AuthTagMaterials: Course material is publicly accessable -AuthTagOwner: User is owner -AuthTagPersonalisedSheetFiles: User has been assigned personalised sheet files -AuthTagRated: Submission is marked -AuthTagUserSubmissions: Submissions are made by course participants -AuthTagCorrectorSubmissions: Submissions are registered by correctors -AuthTagSelf: User is only accessing their only data -AuthTagIsLDAP: User logs in using their campus account -AuthTagIsPWHash: User logs in using their Uni2work-internal account -AuthTagAuthentication: User is authenticated -AuthTagRead: Access is read only -AuthTagWrite: Access might write -AuthTagSubmissionGroup: User is part of a submission group -AuthTagWorkflow: User has matching workflow role -AuthTagStudent: User is a student + 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. @@ -2281,7 +2180,6 @@ AuthPWHashConfigured: User now logs in using their Uni2work account PasswordResetQueued: Sent link to reset password ResetPassword: Reselt Uni2work password -AuthMode: Authentication AuthLDAP: Campus AuthPWHash pwHash: Uni2work CurrentPassword: Current password @@ -2395,17 +2293,12 @@ CourseApplicationNoVeto: No veto CourseApplicationNoRatingPoints: No grading CourseApplicationNoRatingComment: No comment -UserDisplayName: Display name -UserDisplayNameInvalid: Display name does not comply with specification -UserDisplayNameRules: Specification for display names -UserDisplayNameRulesBelow: Specifications of what can be a display name can be found below + UserMatriculation: Matriculation -UserDisplayEmail: Display email -UserDisplayEmailTip: This email address may be displayed publicly alongside your display name. Notifications and other communication from Uni2work or users with elevated permissions are always sent to your primary email address as specified under "personal information". -UserDisplayEmailChangeSent displayEmail: Instructions to change your display email have been sent to “#{displayEmail}”. -UserCreated: Account created + + SchoolShort: Shorthand SchoolName: Name @@ -2561,37 +2454,7 @@ AcceptApplicationsSecondaryTip: If a tie occurs during the acceptance process, h AcceptApplicationsSecondaryRandom: Randomly AcceptApplicationsSecondaryTime: By time of application -CsvOptions: CSV options -CsvOptionsTip: These settings primarily affect CSV export. During import most settings can be determined automatically. CSV import expects the same character encoding as used for export. -CsvFormatOptions: File format -CsvTimestamp: Timestamp -CsvTimestampTip: Should the name of every exported csv file contain a timestamp? -CsvPresetRFC: Standards-compliant (RFC 4180) -CsvPresetExcel: Excel compatible -CsvCustom: User defined -CsvDelimiter: Separator character -CsvUseCrLf: Linebreaks -CsvQuoting: Quoting -CsvQuotingTip: When should quotation characters (") be placed around fields so characters contained within will not be interpreted as field separators? -CsvEncoding: Encoding -CsvEncodingTip: CSV files can be exported in a different character encoding than the UTF-8 used by default. Please consider that non-UTF-8 character encodings might lead to encoding problems with special characters. -CsvUTF8: UTF-8 (Unicode) -CsvCP1252: Windows CP-1252 ("ANSI") -CsvDelimiterNull: Null byte -CsvDelimiterTab: Tab -CsvDelimiterComma: Comma -CsvDelimiterColon: Colon -CsvDelimiterSemicolon: Semicolon -CsvDelimiterBar: Vertical bar -CsvDelimiterSpace: Space -CsvDelimiterUnitSep: Unit separator character -CsvCrLf: DOS (CRLF) -CsvLf: Unix (LF) -CsvQuoteNone: Never -CsvQuoteMinimal: Only when necessary -CsvQuoteAll: Always -CsvOptionsUpdated: Successfully changed CSV options -CsvChangeOptionsLabel: Export options + CourseNews: News CourseNewsArchiveName tid ssh csh newsTitle: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase csh}-#{foldCase newsTitle} @@ -2690,8 +2553,7 @@ ShortSexMale: m ShortSexFemale: f ShortSexNotApplicable: N/A -ShowSex: Show sex of other users -ShowSexTip: Should users' sex be displayed in (among others) lists of course participants? + StudySubTermsChildKey: Child StudySubTermsChildName: Child-Name @@ -2706,18 +2568,8 @@ LanguageChanged: Language changed successfully ProfileLastLdapSynchronisation: Last LDAP synchronisation ProfileLdapPrimaryKey: LDAP primary key -ProfileCorrector: Corrector -ProfileCourses: Own courses -ProfileCourseParticipations: Course registrations -ProfileCourseExamResults: Exam achievements -ProfileTutorials: Own tutorials -ProfileTutorialParticipations: Tutorials -ProfileSubmissionGroups: Submission groups -ProfileSubmissions: Submissions -ProfileRemark: Remarks -ProfileGroupSubmissionDates: No date is shown for group submissions if you have never uploaded the submission yourself. -ProfileCorrectorRemark: The table above only shows registration as a corrector in principle. Even without registration corrections can be assigned individually and are not listed. -ProfileCorrections: List of all assigned corrections + + GroupSizeNotNatural: “Maximum group size” needs to be a natural number AmbiguousEmail: Email address is ambiguous diff --git a/messages/uniworx/uniworx_new/settings/auth_settings/de-de-formal.msg b/messages/uniworx/uniworx_new/settings/auth_settings/de-de-formal.msg new file mode 100644 index 000000000..1a01b142f --- /dev/null +++ b/messages/uniworx/uniworx_new/settings/auth_settings/de-de-formal.msg @@ -0,0 +1,53 @@ +AuthPredsActive: Aktive Authorisierungsprädikate +AuthPredsActiveChanged: Authorisierungseinstellungen gespeichert +AuthPredsInfo: Um eigene Veranstaltungen aus Sicht der Teilnehmer anzusehen, können Veranstalter und Korrektoren hier die Prüfung ihrer erweiterten Berechtigungen temporär deaktivieren. Abgewählte Prädikate schlagen immer fehl. Abgewählte Prädikate werden also nicht geprüft um Zugriffe zu gewähren, welche andernfalls nicht erlaubt wären. +ActiveAuthTagsSaveCookie: In Cookie speichern? +ActiveAuthTagsSaveCookieTip: Falls gesetzt werden die aktivierten Authorisierungsprädikate zusätzlich zur aktiven Session auch in einem persistenten Cookie gespeichert. Dies kann vor Allem in Kombination mit Tab-Containern nützlich sein. +ActiveAuthTags: Aktivierte Authorisierungsprädikate + +AuthTagFree: Seite ist universell zugänglich +AuthTagAdmin: Nutzer:in ist Administrator:in +AuthTagExamOffice: Nutzer:in ist mit Prüfungsverwaltung beauftragt +AuthTagSystemExamOffice: Nutzer:in ist mit systemweiter Prüfungsverwaltung beauftragt +AuthTagEvaluation: Nutzer:in ist mit Kursumfragenverwaltung beauftragt +AuthTagAllocationAdmin: Nutzer:in ist mit der Administration von Zentralanmeldungen beauftragt +AuthTagToken: Nutzer:in präsentiert Authorisierungs-Token +AuthTagNoEscalation: Nutzer-Rechte werden nicht auf fremde Institute ausgeweitet +AuthTagDeprecated: Seite ist nicht überholt +AuthTagDevelopment: Seite ist nicht in Entwicklung +AuthTagLecturer: Nutzer:in ist Dozent:in +AuthTagCorrector: Nutzer:in ist Korrektor:in +AuthTagExamCorrector: Nutzer:in ist Prüfungskorrektor:in +AuthTagTutor: Nutzer:in ist Tutor:in +AuthTagTutorControl: Tutorierende haben Kontrolle über ihre Tutorium +AuthTagTime: Zeitliche Einschränkungen sind erfüllt +AuthTagStaffTime: Zeitliche Einschränkungen für Lehrbeteiligte sind erfüllt +AuthTagAllocationTime: Zeitliche Einschränkungen durch Zentralanmeldung sind erfüllt +AuthTagCourseTime: Zeitliche Einschränkungen für Kurssichtbarkeit sind erfüllt +AuthTagCourseRegistered: Nutzer:in ist Kursteilnehmer:in +AuthTagAllocationRegistered: Nutzer:in nimmt an der Zentralanmeldung teil +AuthTagTutorialRegistered: Nutzer:in ist Tutoriumsteilnehmer:in +AuthTagExamRegistered: Nutzer:in ist Prüfungsteilnehmer:in +AuthTagExamResult: Nutzer:in hat Prüfungsergebnisse +AuthTagExamOccurrenceRegistered: Nutzer:in ist für Prüfungsraum/-termin angemeldet +AuthTagExamOccurrenceRegistration: Anmeldung zur Prüfung erfolgt inkl. Raum/Termin +AuthTagParticipant: Nutzer:in ist mit Kurs assoziiert +AuthTagApplicant: Nutzer:in ist mit Bewerber zum Kurs +AuthTagRegisterGroup: Nutzer:in ist nicht Mitglied eines anderen Tutoriums mit der selben Registrierungs-Gruppe +AuthTagCapacity: Kapazität ist ausreichend +AuthTagEmpty: Ressource ist „leer“ +AuthTagMaterials: Kursmaterialien sind freigegeben +AuthTagOwner: Nutzer:in ist Besitzer:in +AuthTagPersonalisedSheetFiles: Nutzer:in verfügt über personalisierte Übungsblatt-Dateien +AuthTagRated: Korrektur ist bewertet +AuthTagUserSubmissions: Abgaben erfolgen durch Kursteilnehmer:innen +AuthTagCorrectorSubmissions: Abgaben erfolgen durch Korrektor:innen +AuthTagSelf: Nutzer:in greift nur auf eigene Daten zu +AuthTagIsLDAP: Nutzer:in meldet sich mit Campus-Kennung an +AuthTagIsPWHash: Nutzer:in meldet sich mit Uni2work-Kennung an +AuthTagAuthentication: Nutzer:in ist angemeldet, falls erforderlich +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 \ No newline at end of file diff --git a/messages/uniworx/uniworx_new/settings/auth_settings/en-eu.msg b/messages/uniworx/uniworx_new/settings/auth_settings/en-eu.msg new file mode 100644 index 000000000..d60629207 --- /dev/null +++ b/messages/uniworx/uniworx_new/settings/auth_settings/en-eu.msg @@ -0,0 +1,53 @@ +AuthPredsActive: Active authorisation predicates +AuthPredsActiveChanged: Successfully saved authorisation settings +AuthPredsInfo: To view their own courses like a participant would, administrators and correctors can deactivate the checking of their credentials temporarily. Disabled authorisation predicates always fail. This means that deactivated predicates are not checked to grant access where it would otherwise not be permitted. +ActiveAuthTagsSaveCookie: Save in cookie? +ActiveAuthTagsSaveCookieTip: Should the configuration of active authorisation predicates be additionally saved in a persistent cookie? This may be especially useful if using container tabs. +ActiveAuthTags: Active authorisation predicates + +AuthTagFree: Page is freely accessable +AuthTagAdmin: User is administrator +AuthTagExamOffice: User is part of an exam office +AuthTagSystemExamOffice: User is charged with system wide exam administration +AuthTagEvaluation: User is charged with course evaluation +AuthTagAllocationAdmin: User is charged with administration of central allocations +AuthTagToken: User is presenting an authorisation-token +AuthTagNoEscalation: User permissions are not being expanded to other departments +AuthTagDeprecated: Page is not deprecated +AuthTagDevelopment: Page is not in development +AuthTagLecturer: User is lecturer +AuthTagCorrector: User is corrector +AuthTagExamCorrector: User is exam corrector +AuthTagTutor: User is tutor +AuthTagTutorControl: Tutors have control over their tutorial +AuthTagTime: Time restrictions are fulfilled +AuthTagStaffTime: Time restrictions wrt. staff are fulfilled +AuthTagAllocationTime: Time restrictions due to a central allocation are fulfilled +AuthTagCourseTime: Time restrictions wrt. course visibility are fulfilled +AuthTagCourseRegistered: User is enrolled in course +AuthTagAllocationRegistered: User participates in central allocation +AuthTagTutorialRegistered: User is tutorial participant +AuthTagExamRegistered: User is exam participant +AuthTagExamResult: User has an exam result +AuthTagExamOccurrenceRegistered: User is registered for exam occurrence/room +AuthTagExamOccurrenceRegistration: Registration for exam is done including occurrence/room +AuthTagParticipant: User participates in course +AuthTagApplicant: User is applicant for course +AuthTagRegisterGroup: User is not participant in any tutorial of the same registration group +AuthTagCapacity: Capacity is sufficient +AuthTagEmpty: Resource is “empty” +AuthTagMaterials: Course material is publicly accessable +AuthTagOwner: User is owner +AuthTagPersonalisedSheetFiles: User has been assigned personalised sheet files +AuthTagRated: Submission is marked +AuthTagUserSubmissions: Submissions are made by course participants +AuthTagCorrectorSubmissions: Submissions are registered by correctors +AuthTagSelf: User is only accessing their only data +AuthTagIsLDAP: User logs in using their campus account +AuthTagIsPWHash: User logs in using their Uni2work-internal account +AuthTagAuthentication: User is authenticated +AuthTagRead: Access is read only +AuthTagWrite: Access might write +AuthTagSubmissionGroup: User is part of a submission group +AuthTagWorkflow: User has matching workflow role +AuthTagStudent: User is a student diff --git a/messages/uniworx/uniworx_new/settings/csv_options/de-de-formal.msg b/messages/uniworx/uniworx_new/settings/csv_options/de-de-formal.msg new file mode 100644 index 000000000..d2da94079 --- /dev/null +++ b/messages/uniworx/uniworx_new/settings/csv_options/de-de-formal.msg @@ -0,0 +1,31 @@ +CsvOptions: CSV-Optionen +CsvOptionsTip: Diese Einstellungen betreffen primär den CSV-Export; beim Import werden die meisten Einstellungen automatisch ermittelt. Als Zeichenkodierung wird beim Import die selbe Kodierung wie beim Export erwartet. +CsvFormatOptions: Dateiformat +CsvTimestamp: Zeitstempel +CsvTimestampTip: Soll an den Namen jeder exportierten CSV-Datei ein Zeitstempel vorne angehängt werden? +CsvPresetRFC: Standard-Konform (RFC 4180) +CsvPresetExcel: Excel-Kompatibel +CsvCustom: Benutzerdefiniert +CsvDelimiter: Trennzeichen +CsvUseCrLf: Zeilenumbrüche +CsvQuoting: Quoting +CsvQuotingTip: Wann sollen Anführungszeichen (") um Felder platziert werden, um Interpretation von im Feld enthaltenen Zeichen als Trennzeichen zu verhindern? +CsvEncoding: Encoding +CsvEncodingTip: CSV-Dateien können in einer anderen Zeichenkodierung als dem vom System standardmäßig verwendeten UTF-8 exportiert werden. Beachten Sie dass es bei nicht-UTF-8 Zeichenkodierungen wmgl. zu Darstellungsproblemen mit Sonderzeichen kommt. +CsvUTF8: UTF-8 (Unicode) +CsvCP1252: Windows CP-1252 ("ANSI") +CsvDelimiterNull: Null-Byte +CsvDelimiterTab: Tabulator +CsvDelimiterComma: Komma +CsvDelimiterColon: Doppelpunkt +CsvDelimiterSemicolon: Strichpunkt +CsvDelimiterBar: Senkrechter Strich +CsvDelimiterSpace: Leerzeichen +CsvDelimiterUnitSep: Teilgruppentrennzeichen +CsvCrLf: DOS (CRLF) +CsvLf: Unix (LF) +CsvQuoteNone: Nie +CsvQuoteMinimal: Nur wenn nötig +CsvQuoteAll: Immer +CsvOptionsUpdated: CSV-Optionen erfolgreich angepasst +CsvChangeOptionsLabel: Export-Optionen diff --git a/messages/uniworx/uniworx_new/settings/csv_options/en-eu.msg b/messages/uniworx/uniworx_new/settings/csv_options/en-eu.msg new file mode 100644 index 000000000..bba053133 --- /dev/null +++ b/messages/uniworx/uniworx_new/settings/csv_options/en-eu.msg @@ -0,0 +1,31 @@ +CsvOptions: CSV options +CsvOptionsTip: These settings primarily affect CSV export. During import most settings can be determined automatically. CSV import expects the same character encoding as used for export. +CsvFormatOptions: File format +CsvTimestamp: Timestamp +CsvTimestampTip: Should the name of every exported csv file contain a timestamp? +CsvPresetRFC: Standards-compliant (RFC 4180) +CsvPresetExcel: Excel compatible +CsvCustom: User defined +CsvDelimiter: Separator character +CsvUseCrLf: Linebreaks +CsvQuoting: Quoting +CsvQuotingTip: When should quotation characters (") be placed around fields so characters contained within will not be interpreted as field separators? +CsvEncoding: Encoding +CsvEncodingTip: CSV files can be exported in a different character encoding than the UTF-8 used by default. Please consider that non-UTF-8 character encodings might lead to encoding problems with special characters. +CsvUTF8: UTF-8 (Unicode) +CsvCP1252: Windows CP-1252 ("ANSI") +CsvDelimiterNull: Null byte +CsvDelimiterTab: Tab +CsvDelimiterComma: Comma +CsvDelimiterColon: Colon +CsvDelimiterSemicolon: Semicolon +CsvDelimiterBar: Vertical bar +CsvDelimiterSpace: Space +CsvDelimiterUnitSep: Unit separator character +CsvCrLf: DOS (CRLF) +CsvLf: Unix (LF) +CsvQuoteNone: Never +CsvQuoteMinimal: Only when necessary +CsvQuoteAll: Always +CsvOptionsUpdated: Successfully changed CSV options +CsvChangeOptionsLabel: Export options \ No newline at end of file diff --git a/messages/uniworx/uniworx_new/settings/de-de-formal.msg b/messages/uniworx/uniworx_new/settings/de-de-formal.msg new file mode 100644 index 000000000..915c8b94e --- /dev/null +++ b/messages/uniworx/uniworx_new/settings/de-de-formal.msg @@ -0,0 +1,82 @@ +ProfileFor: Benutzereinstellungen für +FormPersonalAppearance: Öffentliche Daten + +UserDisplayName: Angezeigter Name +UserDisplayNameInvalid: Angezeigter Name erfüllt nicht die Vorgaben +UserDisplayNameRulesBelow: Vorgaben für den angezeigten Namen finden sich weiter unten auf der Seite +UserDisplayEmail: Angezeigte E-Mail-Adresse +UserDisplayEmailTip: Diese Adresse wird in öffentlich zugänglichen Teilen des Systems im Zusammenhang mit Ihrem Namen angezeigt. Benachrichtigungen und andere Kommunikation von Uni2work und Nutzer:innen mit erweiterten Rechten erhalten sie stets, unabhängig von dieser Einstellung, an die in Ihren Persönlichen Daten hinterlegte primäre Adresse. +UserDisplayEmailChangeSent displayEmail@UserEmail: Anweisungen zum Ändern der angezeigten E-Mail-Adresse wurden an „#{displayEmail}” versandt + +FormCosmetics: Oberfläche + +Theme: Oberflächen Design +Favourites: Anzahl gespeicherter Favoriten +FavouritesTip: Betrifft nur automatisch angelegte Favoriten („Kürzlich besucht“) +FavouriteSemesters: Maximale Anzahl an Semestern in Seitenleiste +DateTimeFormat: Datums- und Uhrzeitformat +DateFormat: Datumsformat +TimeFormat: Uhrzeitformat + +FormBehaviour: Verhalten + +DownloadFiles: Dateien automatisch herunterladen +DownloadFilesTip: Wenn gesetzt werden Dateien automatisch als Download behandelt, ansonsten ist das Verhalten browserabhängig (es können z.B. PDFs im Browser geöffnet werden). +WarningDays: Fristen-Vorschau +WarningDaysTip: Wie viele Tage im Voraus sollen Fristen von Prüfungen etc. auf Ihrer Startseite angezeigt werden? +ShowSex: Geschlechter anderer Nutzer:innen anzeigen +ShowSexTip: Sollen in Kursteilnehmer:innen-Tabellen u.Ä. die Geschlechter der Nutzer:innen angezeigt werden? + +FormNotifications: Benachrichtigungen + +UserSchools: Relevante Institute +UserSchoolsTip: Sie erhalten nur institutweite Benachrichtigungen für Institute, die hier ausgewählt sind. +NotificationSettings: Erwünschte Benachrichtigungen + +NotificationTriggerKindAll: Für alle Benutzer:innen +NotificationTriggerKindCourseParticipant: Für Kursteilnehmer:innen +NotificationTriggerKindExamParticipant: Für Prüfungsteilnehmer:innen +NotificationTriggerKindCorrector: Für Korrektor:innen +NotificationTriggerKindLecturer: Für Dozierende +NotificationTriggerKindCourseLecturer: Für Kursverwalter:innen +NotificationTriggerKindAdmin: Für Administrator:innen +NotificationTriggerKindExamOffice: Für Prüfungsverwalter:innen +NotificationTriggerKindEvaluation: Für Vorlesungsumfragen +NotificationTriggerKindAllocationStaff: Für Zentralanmeldungen (Dozierende) +NotificationTriggerKindAllocationParticipant: Für Zentralanmeldungen +NotificationTriggerKindSubmissionUser: Für Mitabgebende einer Übungsblatt-Abgabe +NotificationTriggerKindAllocationAdmin: Für Administrator:innen von Zentralanmeldungen + +NotificationTriggerSubmissionRatedGraded: Meine Abgabe in einem gewerteten Übungsblatt wurde korrigiert +NotificationTriggerSubmissionRated: Meine Abgabe wurde korrigiert +NotificationTriggerSheetActive: Ich kann ein neues Übungsblatt herunterladen +NotificationTriggerSheetHint: Ich kann die Hinweise für ein Übungsblatt herunterladen +NotificationTriggerSheetSolution: Ich kann die Lösung für ein Übungsblatt herunterladen +NotificationTriggerSheetSoonInactive: Ich kann ein Übungsblatt bald nicht mehr abgeben +NotificationTriggerSheetInactive: Abgabezeitraum eines meiner Übungsblätter ist abgelaufen +NotificationTriggerCorrectionsAssigned: Mir wurden Abgaben zur Korrektur zugeteilt +NotificationTriggerCorrectionsNotDistributed: Nicht alle Abgaben eines meiner Übungsblätter konnten einem:einer Korrektor:in zugeteilt werden +NotificationTriggerUserRightsUpdate: Meine Berechtigungen wurden geändert +NotificationTriggerUserAuthModeUpdate: Mein Anmelde-Modus wurde geändert +NotificationTriggerExamRegistrationActive: Ich kann mich für eine Prüfung anmelden +NotificationTriggerExamRegistrationSoonInactive: Ich kann mich bald nicht mehr für eine Prüfung anmelden +NotificationTriggerExamDeregistrationSoonInactive: Ich kann mich bald nicht mehr von einer Prüfung abmelden +NotificationTriggerExamResult: Ich kann ein neues Prüfungsergebnis einsehen +NotificationTriggerAllocationStaffRegister: Ich kann Kurse bei einer neuen Zentralanmeldung eintragen +NotificationTriggerAllocationAllocation: Ich kann Zentralanmeldungs-Bewerbungen für einen meiner Kurse bewerten +NotificationTriggerAllocationRegister: Ich kann mich bei einer neuen Zentralanmeldung bewerben +NotificationTriggerAllocationOutdatedRatings: Zentralanmeldungs-Bewerbungen für einen meiner Kurse wurden verändert, nachdem sie bewertet wurden +NotificationTriggerAllocationUnratedApplications: Bewertungen zu Zentralanmeldungs-Bewerbungen für einen meiner Kurse stehen aus +NotificationTriggerAllocationResults: Plätze wurden für eine meiner Zentralanmeldungen verteilt +NotificationTriggerExamOfficeExamResults: Ich kann neue Prüfungsergebnisse einsehen +NotificationTriggerExamOfficeExamResultsChanged: Prüfungsergebnisse wurden verändert +NotificationTriggerCourseRegistered: Ein:e Kursverwalter:in hat mich zu einem Kurs angemeldet +NotificationTriggerSubmissionUserCreated: Ich wurde als Mitabgebender zu einer Übungsblatt-Abgabe hinzugefügt +NotificationTriggerSubmissionEdited: Eine meiner Übungsblatt-Abgaben wurde verändert +NotificationTriggerSubmissionUserDeleted: Ich wurde als Mitabgebender von einer Übungsblatt-Abgabe entfernt +NotificationTriggerAllocationNewCourse: Es wurde ein neuer Kurs eingetragen zu einer Zentralanmeldungen, zu der ich meine Teilnahme registriert habe +NotificationTriggerAllocationNewCourseTip: Kann pro Zentralanmeldung überschrieben werden + +UserDisplayNameRules: Vorgaben für den angezeigten Namen + +BtnResetTokens: Authorisierungs-Tokens invalidieren \ No newline at end of file diff --git a/messages/uniworx/uniworx_new/settings/en-eu.msg b/messages/uniworx/uniworx_new/settings/en-eu.msg new file mode 100644 index 000000000..3051b877c --- /dev/null +++ b/messages/uniworx/uniworx_new/settings/en-eu.msg @@ -0,0 +1,82 @@ +ProfileFor: Settings for +FormPersonalAppearance: Public data + +UserDisplayName: Display name +UserDisplayNameInvalid: Display name does not comply with specification +UserDisplayNameRulesBelow: Specifications of what can be a display name can be found below +UserDisplayEmail: Display email +UserDisplayEmailTip: This email address may be displayed publicly alongside your display name. Notifications and other communication from Uni2work or users with elevated permissions are always sent to your primary email address as specified under "personal information". +UserDisplayEmailChangeSent displayEmail: Instructions to change your display email have been sent to “#{displayEmail}”. + +FormCosmetics: Interface + +Theme: Theme +Favourites: Number of saved favourites +FavouritesTip: Only relevant for automatically generated favourites (“visited recently”) +FavouriteSemesters: Maximum number of semesters in favourites bar +DateTimeFormat: Date and time format +DateFormat: Date format +TimeFormat: Time format + +FormBehaviour: Behaviour + +DownloadFiles: Automatically download files +DownloadFilesTip: When set, files are automatically treated as downloads. Otherwise behaviour is browser dependent (PDFs might, for example, be opened within the browser) +WarningDays: Deadline-preview +WarningDaysTip: How many days ahead should deadlines regarding exams etc. be displayed on the homepage? +ShowSex: Show sex of other users +ShowSexTip: Should users' sex be displayed in (among others) lists of course participants? + +FormNotifications: Notifications + +UserSchools: Relevant departments +UserSchoolsTip: You will only receive department-wide notifications for the selected departments. +NotificationSettings: Desired notifications + +NotificationTriggerKindAll: For all users +NotificationTriggerKindCourseParticipant: For course participants +NotificationTriggerKindExamParticipant: For exam participants +NotificationTriggerKindCorrector: For correctors +NotificationTriggerKindLecturer: For lecturers +NotificationTriggerKindCourseLecturer: For course administrators +NotificationTriggerKindAdmin: For administrators +NotificationTriggerKindExamOffice: For the exam office +NotificationTriggerKindEvaluation: For course evaluations +NotificationTriggerKindAllocationStaff: For central allocations (lecturers) +NotificationTriggerKindAllocationParticipant: For central allocations +NotificationTriggerKindSubmissionUser: For participants in an exercise sheet submission +NotificationTriggerKindAllocationAdmin: For administrators of central allocations + +NotificationTriggerSubmissionRatedGraded: My submission for an exercise sheet was marked (not purely informational) +NotificationTriggerSubmissionRated: My submission for an exercise sheet was marked +NotificationTriggerSheetActive: I can now download a new exercise sheet +NotificationTriggerSheetHint: I can now download the hints for an exercise sheet +NotificationTriggerSheetSolution: I can now download the solutions for an exercise sheet +NotificationTriggerSheetSoonInactive: I will soon no longer be able to submit for an exercise sheet +NotificationTriggerSheetInactive: The submission period for one of my exercise sheets is over +NotificationTriggerCorrectionsAssigned: I was assigned corrections +NotificationTriggerCorrectionsNotDistributed: Not all submissions for one of my exercise sheets could be assigned a corrector +NotificationTriggerUserRightsUpdate: My permissions changed +NotificationTriggerUserAuthModeUpdate: My login mode changed +NotificationTriggerExamRegistrationActive: I can now register for an exam +NotificationTriggerExamRegistrationSoonInactive: I will soon no longer be able to register for an exam +NotificationTriggerExamDeregistrationSoonInactive: I will soon no longer be able to deregister from an exam +NotificationTriggerExamResult: An exam result is available +NotificationTriggerAllocationStaffRegister: I can now register a course for central allocation +NotificationTriggerAllocationAllocation: I can now grade applications to a central alloction for one of my courses +NotificationTriggerAllocationRegister: I can now apply to a new central allocation +NotificationTriggerAllocationOutdatedRatings: Applications to a central allocation for one of my courses have changed since they were graded +NotificationTriggerAllocationUnratedApplications: Grades are pending for applications to a central allocation for one of my courses +NotificationTriggerAllocationResults: Participants have been placed by one of my central allocations +NotificationTriggerExamOfficeExamResults: New exam results are available +NotificationTriggerExamOfficeExamResultsChanged: Exam results have changed +NotificationTriggerCourseRegistered: A course administrator has enrolled me in a course +NotificationTriggerSubmissionUserCreated: I was added to an exercise sheet submission +NotificationTriggerSubmissionEdited: One of my exercise sheet submissions was changed +NotificationTriggerSubmissionUserDeleted: I was removed from one of my exercise sheet submissions +NotificationTriggerAllocationNewCourse: A new course was added to a central allocation for which I have registered my participation +NotificationTriggerAllocationNewCourseTip: Can be overridden per central allocation + +UserDisplayNameRules: Specification for display names + +BtnResetTokens: Invalidate tokens \ No newline at end of file diff --git a/messages/uniworx/uniworx_new/settings/personal_settings/de-de-formal.msg b/messages/uniworx/uniworx_new/settings/personal_settings/de-de-formal.msg new file mode 100644 index 000000000..f1ca388d9 --- /dev/null +++ b/messages/uniworx/uniworx_new/settings/personal_settings/de-de-formal.msg @@ -0,0 +1,23 @@ +ProfileDataHeading: Gespeicherte Benutzerdaten +Ident: Identifikation +AuthModeSet: Authentifizierung +NameSet: Name +UserCreated: Account erstellt +LastLogin: Letzter Login + +NeverSet: Nie +ProfileCorrector: Korrektor:in +ProfileCourses: Eigene Kurse +ProfileCourseParticipations: Kursanmeldungen +ProfileCourseExamResults: Prüfungsleistungen +ProfileTutorials: Eigene Tutorien +ProfileTutorialParticipations: Tutorien +ProfileSubmissionGroups: Abgabegruppen +ProfileSubmissions: Abgaben +ProfileRemark: Hinweis +PersonalInfoExamAchievementsWip: Die Anzeige von Prüfungsergebnissen wird momentan an dieser Stelle leider noch nicht unterstützt. +PersonalInfoOwnTutorialsWip: Die Anzeige von Tutorien, zu denen Sie als Tutor eingetragen sind wird momentan an dieser Stelle leider noch nicht unterstützt. +PersonalInfoTutorialsWip: Die Anzeige von Tutorien, zu denen Sie angemeldet sind wird momentan an dieser Stelle leider noch nicht unterstützt. +ProfileGroupSubmissionDates: Bei Gruppenabgaben wird kein Datum angezeigt, wenn Sie die Gruppenabgabe nie selbst hochgeladen haben. +ProfileCorrectorRemark: Die oberhalb angezeigte Tabelle zeigt nur prinzipielle Einteilungen als Korrektor zu einem Übungsblatt. Auch ohne Einteilung können Korrekturen einzeln zugewiesen werden, welche hier dann nicht aufgeführt werden. +ProfileCorrections: Auflistung aller zugewiesenen Korrekturen \ No newline at end of file diff --git a/messages/uniworx/uniworx_new/settings/personal_settings/en-eu.msg b/messages/uniworx/uniworx_new/settings/personal_settings/en-eu.msg new file mode 100644 index 000000000..f3f619fe3 --- /dev/null +++ b/messages/uniworx/uniworx_new/settings/personal_settings/en-eu.msg @@ -0,0 +1,23 @@ +ProfileDataHeading: Personal information +Ident: Identification +AuthModeSet: Authentication +NameSet: Name +UserCreated: Account created +LastLogin: Last login + +NeverSet: Never +ProfileCorrector: Corrector +ProfileCourses: Own courses +ProfileCourseParticipations: Course registrations +ProfileCourseExamResults: Exam achievements +ProfileTutorials: Own tutorials +ProfileTutorialParticipations: Tutorials +ProfileSubmissionGroups: Submission groups +ProfileSubmissions: Submissions +ProfileRemark: Remarks +PersonalInfoExamAchievementsWip: The feature to display your exam achievements has not yet been implemented. +PersonalInfoOwnTutorialsWip: The feature to display tutorials you have been assigned to as tutor has not yet been implemented. +PersonalInfoTutorialsWip: The feature to display tutorials you have registered for has not yet been implemented. +ProfileGroupSubmissionDates: No date is shown for group submissions if you have never uploaded the submission yourself. +ProfileCorrectorRemark: The table above only shows registration as a corrector in principle. Even without registration corrections can be assigned individually and are not listed. +ProfileCorrections: List of all assigned corrections \ No newline at end of file diff --git a/src/Foundation/I18n.hs b/src/Foundation/I18n.hs index c0063c387..21b433328 100644 --- a/src/Foundation/I18n.hs +++ b/src/Foundation/I18n.hs @@ -3,7 +3,7 @@ module Foundation.I18n ( appLanguages, appLanguagesOpts - , UniWorXMessage(..), UniWorXTestMessage(..) + , UniWorXMessage(..), UniWorXTestMessage(..), UniWorXSettingsMessage(..) , ShortTermIdentifier(..) , MsgLanguage(..) , ShortSex(..) @@ -133,6 +133,7 @@ maybeToMessage before (Just x) after = before <> toMessage x <> after -- Messages creates type UniWorXMessage and RenderMessage UniWorX instance mkMessage ''UniWorX "messages/uniworx/misc" "de-de-formal" mkMessageAddition ''UniWorX "Test" "messages/uniworx/test" "de-de-formal" +mkMessageAddition ''UniWorX "Settings" "messages/uniworx/uniworx_new/settings" "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" diff --git a/src/Foundation/Navigation.hs b/src/Foundation/Navigation.hs index 506f7d413..9d2cd9999 100644 --- a/src/Foundation/Navigation.hs +++ b/src/Foundation/Navigation.hs @@ -158,7 +158,7 @@ instance BearerAuthSite UniWorX => YesodBreadcrumbs UniWorX where breadcrumb SetDisplayEmailR = i18nCrumb MsgUserDisplayEmail $ Just ProfileR breadcrumb ProfileDataR = i18nCrumb MsgMenuProfileData $ Just ProfileR breadcrumb AuthPredsR = i18nCrumb MsgMenuAuthPreds $ Just ProfileR - breadcrumb CsvOptionsR = i18nCrumb MsgCsvOptions $ Just ProfileR + breadcrumb CsvOptionsR = i18nCrumb MsgCsvOptionsBreadCrum $ Just ProfileR breadcrumb LangR = i18nCrumb MsgMenuLanguage $ Just ProfileR breadcrumb StorageKeyR = i18nCrumb MsgBreadcrumbStorageKey Nothing @@ -1371,7 +1371,7 @@ pageActions ProfileR = return } , NavPageActionPrimary { navLink = NavLink - { navLabel = MsgCsvOptions + { navLabel = MsgCsvOptionsBreadCrum , navRoute = CsvOptionsR , navAccess' = return True , navType = NavTypeLink { navModal = True } @@ -2393,7 +2393,7 @@ pageActions (EExamR tid ssh coursen examn EEUsersR) = return pageActions ParticipantsListR = return [ NavPageActionPrimary { navLink = NavLink - { navLabel = MsgCsvOptions + { navLabel = MsgCsvOptionsBreadCrum , navRoute = CsvOptionsR , navAccess' = return True , navType = NavTypeLink { navModal = True } diff --git a/src/Handler/Users.hs b/src/Handler/Users.hs index 97dc383ac..51fc7e967 100644 --- a/src/Handler/Users.hs +++ b/src/Handler/Users.hs @@ -84,7 +84,7 @@ postUsersR = do -- , sortable (Just "last-name") (i18nCell MsgName) $ \DBRow{ dbrOutput = Entity uid User{..} } -> anchorCellM -- (AdminUserR <$> encrypt uid) -- (toWidget . display $ last $ impureNonNull $ words $ userDisplayName) - , sortable (Just "auth-ldap") (i18nCell MsgAuthMode) $ \DBRow{ dbrOutput = Entity _ User{..} } -> i18nCell userAuthentication + , sortable (Just "auth-ldap") (i18nCell MsgAuthModeSet) $ \DBRow{ dbrOutput = Entity _ User{..} } -> i18nCell userAuthentication , sortable (Just "ldap-sync") (i18nCell MsgLdapSynced) $ \DBRow{ dbrOutput = Entity _ User{..} } -> maybe mempty dateTimeCell userLastLdapSynchronisation , flip foldMap universeF $ \function -> sortable Nothing (i18nCell function) $ \DBRow{ dbrOutput = Entity uid _ } -> flip (set' cellContents) mempty $ do @@ -194,7 +194,7 @@ postUsersR = do [ prismAForm (singletonFilter "user-search") mPrev $ aopt textField (fslI MsgName) -- , prismAForm (singletonFilter "matriculation" ) mPrev $ aopt textField (fslI MsgMatrikelNr) , prismAForm (singletonFilter "matriculation") mPrev $ aopt matriculationField (fslI MsgMatrikelNr) - , prismAForm (singletonFilter "auth-ldap" . maybePrism _PathPiece) mPrev $ aopt (lift `hoistField` selectFieldList [(MsgAuthPWHash "", False), (MsgAuthLDAP, True)]) (fslI MsgAuthMode) + , prismAForm (singletonFilter "auth-ldap" . maybePrism _PathPiece) mPrev $ aopt (lift `hoistField` selectFieldList [(MsgAuthPWHash "", False), (MsgAuthLDAP, True)]) (fslI MsgAuthModeSet) , prismAForm (singletonFilter "school") mPrev $ aopt (lift `hoistField` selectFieldList schoolOptions) (fslI MsgCourseSchool) , prismAForm (singletonFilter "ldap-sync" . maybePrism _PathPiece) mPrev $ aopt utcTimeField (fslI MsgLdapSyncedBefore) ] diff --git a/src/Handler/Utils.hs b/src/Handler/Utils.hs index 31ed5dccd..d80ed079d 100644 --- a/src/Handler/Utils.hs +++ b/src/Handler/Utils.hs @@ -89,7 +89,7 @@ studyFeaturesWidget featId = do (StudyFeatures{studyFeaturesSemester}, (degree, terms)) <- liftHandler . runDB . ($ featId) . runKleisli $ Kleisli getJust >>> Kleisli return &&& Kleisli (getJust . studyFeaturesDegree) &&& Kleisli (getJust . studyFeaturesField) [whamlet| $newline never - _{StudyDegreeTerm degree terms}, _{MsgStudyFeatureAge} #{studyFeaturesSemester} + _{StudyDegreeTerm degree terms}, _{MsgStudyFeatureAgeTable} #{studyFeaturesSemester} |] diff --git a/src/Handler/Utils/Table/Columns.hs b/src/Handler/Utils/Table/Columns.hs index fdf602f60..8182899a1 100644 --- a/src/Handler/Utils/Table/Columns.hs +++ b/src/Handler/Utils/Table/Columns.hs @@ -590,7 +590,7 @@ fltrUserMatriclenrUI mPrev = ---------------- -- User E-Mail colUserEmail :: (IsDBTable m c, HasUser a) => Colonnade Sortable a (DBCell m c) -colUserEmail = sortable (Just "user-email") (i18nCell MsgEMail) cellHasEMail +colUserEmail = sortable (Just "user-email") (i18nCell MsgEmailTable) cellHasEMail sortUserEmail :: IsString d => (t -> E.SqlExpr (Entity User)) -> (d, SortColumn t r') sortUserEmail queryUser = ( "user-email", SortColumn $ queryUser >>> (E.^. UserEmail)) @@ -604,7 +604,7 @@ fltrUserEmail queryUser = ("user-email", FilterColumn . mkContainsFilter $ query fltrUserEmailUI :: Maybe (Map FilterKey [Text]) -> AForm (YesodDB UniWorX) (Map FilterKey [Text]) fltrUserEmailUI mPrev = - prismAForm (singletonFilter "user-email") mPrev $ aopt textField (fslI MsgEMail) + prismAForm (singletonFilter "user-email") mPrev $ aopt textField (fslI MsgEmailTable) -------------------- @@ -614,7 +614,7 @@ fltrUserEmailUI mPrev = colStudyDegree :: OpticColonnade StudyDegree colStudyDegree resultDegree = Colonnade.singleton (fromSortable header) body where - header = Sortable (Just "features-degree") (i18nCell MsgStudyFeatureDegree) + header = Sortable (Just "features-degree") (i18nCell MsgStudyFeatureDegreeTable) body = views resultDegree $ \StudyDegree{..} -> cell . maybe (toWidget $ toMarkup studyDegreeKey) toWidget $ studyDegreeShorthand <|> studyDegreeName @@ -648,13 +648,13 @@ fltrStudyDegree queryDegree = singletonMap "features-degree" . FilterColumn $ an unSqlProject' = E.unSqlProject (Proxy @StudyDegree) (Proxy @studyDegree) fltrStudyDegreeUI :: DBFilterUI -fltrStudyDegreeUI mPrev = prismAForm (singletonFilter "features-degree") mPrev $ aopt textField (fslI MsgStudyFeatureDegree) +fltrStudyDegreeUI mPrev = prismAForm (singletonFilter "features-degree") mPrev $ aopt textField (fslI MsgStudyFeatureDegreeTable) colStudyTerms :: OpticColonnade StudyTerms colStudyTerms resultTerms = Colonnade.singleton (fromSortable header) body where - header = Sortable (Just "features-terms") (i18nCell MsgStudyTerm) + header = Sortable (Just "features-terms") (i18nCell MsgStudyTermTable) body = views resultTerms $ \StudyTerms{..} -> cell . maybe (toWidget $ toMarkup studyTermsKey) toWidget $ studyTermsShorthand <|> studyTermsName @@ -688,13 +688,13 @@ fltrStudyTerms queryTerms = singletonMap "features-terms" . FilterColumn $ anyFi unSqlProject' = E.unSqlProject (Proxy @StudyTerms) (Proxy @studyTerms) fltrStudyTermsUI :: DBFilterUI -fltrStudyTermsUI mPrev = prismAForm (singletonFilter "features-terms") mPrev $ aopt textField (fslI MsgStudyTerm) +fltrStudyTermsUI mPrev = prismAForm (singletonFilter "features-terms") mPrev $ aopt textField (fslI MsgStudyTermTable) colStudyFeaturesSemester :: OpticColonnade Int colStudyFeaturesSemester resultSemester = Colonnade.singleton (fromSortable header) body where - header = Sortable (Just "features-semester") (i18nCell MsgStudyFeatureAge) + header = Sortable (Just "features-semester") (i18nCell MsgStudyFeatureAgeTable) body = views resultSemester $ cell . toWidget . toMarkup sortStudyFeaturesSemester :: forall semester. PersistField semester => OpticSortColumn semester @@ -711,11 +711,11 @@ fltrStudyFeaturesSemester querySemester = singletonMap "features-semester" . Fil unSqlProject' = E.unSqlProject (Proxy @StudyFeatures) (Proxy @studyFeatures) fltrStudyFeaturesSemesterUI :: DBFilterUI -fltrStudyFeaturesSemesterUI mPrev = prismAForm (singletonFilter "features-semester" . maybePrism _PathPiece) mPrev $ aopt (intField :: Field _ Int) (fslI MsgStudyFeatureAge) +fltrStudyFeaturesSemesterUI mPrev = prismAForm (singletonFilter "features-semester" . maybePrism _PathPiece) mPrev $ aopt (intField :: Field _ Int) (fslI MsgStudyFeatureAgeTable) colFeaturesSemester :: (IsDBTable m c, HasStudyFeatures x) => Getting (Leftmost x) a x -> Colonnade Sortable a (DBCell m c) -colFeaturesSemester feature = sortable (Just "features-semester") (i18nCell MsgStudyFeatureAge) $ maybe mempty cellHasSemester . firstOf feature +colFeaturesSemester feature = sortable (Just "features-semester") (i18nCell MsgStudyFeatureAgeTable) $ maybe mempty cellHasSemester . firstOf feature sortFeaturesSemester :: IsString d => (t -> E.SqlExpr (Maybe (Entity StudyFeatures))) -> (d, SortColumn t r') sortFeaturesSemester queryFeatures = ("features-semester", SortColumn $ queryFeatures >>> (E.?. StudyFeaturesSemester)) @@ -729,11 +729,11 @@ fltrFeaturesSemester queryFeatures = ("features-semester", FilterColumn . mkExac fltrFeaturesSemesterUI :: Maybe (Map FilterKey [Text]) -> AForm (YesodDB UniWorX) (Map FilterKey [Text]) fltrFeaturesSemesterUI mPrev = - prismAForm (singletonFilter "features-semester" . maybePrism _PathPiece) mPrev $ aopt (intField :: Field (YesodDB UniWorX) Int) (fslI MsgStudyFeatureAge) + prismAForm (singletonFilter "features-semester" . maybePrism _PathPiece) mPrev $ aopt (intField :: Field (YesodDB UniWorX) Int) (fslI MsgStudyFeatureAgeTable) colField :: (IsDBTable m c, HasStudyTerms x) => Getting (Leftmost x) a x -> Colonnade Sortable a (DBCell m c) -colField terms = sortable (Just "terms") (i18nCell MsgStudyTerm) $ maybe mempty cellHasField . firstOf terms +colField terms = sortable (Just "terms") (i18nCell MsgStudyTermTable) $ maybe mempty cellHasField . firstOf terms sortField :: IsString d => (t -> E.SqlExpr (Maybe (Entity StudyTerms))) -> (d, SortColumn t r') sortField queryTerms = ("terms", SortColumn $ queryTerms >>> (E.?. StudyTermsName)) @@ -753,7 +753,7 @@ fltrField queryFeatures = ( "terms" fltrFieldUI :: Maybe (Map FilterKey [Text]) -> AForm (YesodDB UniWorX) (Map FilterKey [Text]) fltrFieldUI mPrev = - prismAForm (singletonFilter "terms") mPrev $ aopt textField (fslI MsgStudyTerm) + prismAForm (singletonFilter "terms") mPrev $ aopt textField (fslI MsgStudyTermTable) colDegreeShort :: (IsDBTable m c, HasStudyDegree x) => Getting (Leftmost x) a x -> Colonnade Sortable a (DBCell m c) diff --git a/templates/course/user/profile.hamlet b/templates/course/user/profile.hamlet index 7fb7dee81..f81c4f92a 100644 --- a/templates/course/user/profile.hamlet +++ b/templates/course/user/profile.hamlet @@ -18,7 +18,7 @@ $newline never $maybe sex <- guardOn showSex =<< userSex
_{MsgSex}
_{sex} -
_{MsgEMail} +
_{MsgEmailTable}
#{mailtoHtml userEmail} $maybe date <- mRegAt
_{MsgRegisteredSince} @@ -38,12 +38,12 @@ $newline never
-
_{MsgStudyTerm} - _{MsgStudyFeatureDegree} - _{MsgStudyFeatureType} - _{MsgStudyFeatureAge} - _{MsgStudyFeatureValid} - _{MsgStudyFeatureUpdate} + _{MsgStudyTermTable} + _{MsgStudyFeatureDegreeTable} + _{MsgStudyFeatureTypeTable} + _{MsgStudyFeatureAgeTable} + _{MsgStudyFeatureValidTable} + _{MsgStudyFeatureUpdateTable} $forall ((Entity _ StudyFeatures{studyFeaturesType, studyFeaturesSemester, studyFeaturesValid, studyFeaturesFirstObserved, studyFeaturesLastObserved}), (Entity _ degree), (Entity _ field)) <- studies
_{field} diff --git a/templates/profileData.hamlet b/templates/profileData.hamlet index d7cb247e9..9b4beac6d 100644 --- a/templates/profileData.hamlet +++ b/templates/profileData.hamlet @@ -6,11 +6,11 @@ $newline never
#{userIdent}
- _{MsgAuthMode} + _{MsgAuthModeSet}
_{userAuthentication}
- _{MsgName} + _{MsgNameSet}
^{nameWidget userDisplayName userSurname} $maybe matnr <- userMatrikelnummer @@ -19,7 +19,7 @@ $newline never
#{matnr}
- _{MsgEMail} + _{MsgEmailTable}
#{mailtoHtml userEmail} $if userEmail /= userDisplayEmail @@ -38,14 +38,14 @@ $newline never $maybe llogin <- userLastAuthentication ^{formatTimeW SelFormatDateTime llogin} $nothing - _{MsgNever} + _{MsgNeverSet}
_{MsgProfileLastLdapSynchronisation}
$maybe lsync <- userLastLdapSynchronisation ^{formatTimeW SelFormatDateTime lsync} $nothing - _{MsgNever} + _{MsgNeverSet} $maybe pKey <- userLdapPrimaryKey
_{MsgProfileLdapPrimaryKey} @@ -57,7 +57,7 @@ $newline never $maybe lastInvalidated <- userTokensIssuedAfter ^{formatTimeW SelFormatDateTime lastInvalidated} $nothing - _{MsgNever} + _{MsgNeverSet} $forall (function, schools) <- Map.toList functions
_{function}
@@ -78,12 +78,12 @@ $newline never
-
_{MsgStudyTerm} - _{MsgStudyFeatureDegree} - _{MsgStudyFeatureType} - _{MsgStudyFeatureAge} - _{MsgStudyFeatureValid} - _{MsgStudyFeatureUpdate} + _{MsgStudyTermTable} + _{MsgStudyFeatureDegreeTable} + _{MsgStudyFeatureTypeTable} + _{MsgStudyFeatureAgeTable} + _{MsgStudyFeatureValidTable} + _{MsgStudyFeatureUpdateTable} $forall ((Entity _ StudyFeatures{studyFeaturesType, studyFeaturesSemester, studyFeaturesValid, studyFeaturesFirstObserved, studyFeaturesLastObserved}), (Entity _ degree), (Entity _ field)) <- studies