refactor(messages): beginning utils-folder

This commit is contained in:
Winnie Ros 2021-04-07 10:58:35 +02:00
parent 8a9660c2d4
commit 2e57c81a75
62 changed files with 250 additions and 263 deletions

View File

@ -1,51 +1,5 @@
Logo: Uni2work
BtnSubmit: Senden
BtnAbort: Abbrechen
BtnDelete: Löschen
BtnRegister: Anmelden
BtnDeregister: Abmelden
BtnCourseRegister: Zum Kurs anmelden
BtnCourseDeregister: Vom Kurs abmelden
BtnCourseApply: Zum Kurs bewerben
BtnCourseRetractApplication: Bewerbung zum Kurs zurückziehen
BtnExamRegister: Anmelden zur Prüfung
BtnExamRegisterOccurrence: Anmelden zum Prüfungstermin/-raum
BtnExamSwitchOccurrence: Zu Prüfungstermin/-raum wechseln
BtnExamDeregister: Von der Prüfung abmelden
BtnHijack: Sitzung übernehmen
BtnSave: Speichern
PressSaveToSave: Änderungen werden erst durch Drücken des Knopfes „_{MsgBtnSave}“ gespeichert.
BtnHandIn: Abgeben
BtnNameCandidatesInfer: Studienfach-Namens-Zuordnung automatisch lernen
BtnNameCandidatesDeleteConflicts: Namenskonflikte löschen
BtnNameCandidatesDeleteAll: Alle Namens-Beobachtungen löschen
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
BtnCorrInvDecline: Ablehnen
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
BtnAcceptApplicationsTip: Mit dem untigen Knopf können Sie den Kurs (höchstens bis zur angegeben Maximalkapazität, falls eingestellt) mit Bewerbern auffüllen. Die Bewertungen der Bewerbungen werden dabei berücksichtigt (Unbewertet wird behandelt wie eine Note zwischen 2.3 und 2.7). Bewerber mit Veto oder 5.0 werden nicht angemeldet.
AcceptApplicationsDirect: Direkt anmelden
AcceptApplicationsInvite: Einladungen verschicken
AcceptApplicationsSecondaryRandom: Zufällig
@ -101,6 +55,7 @@ TableTutorialRoomIsHidden: Raum wird nur Teilnehmern angezeigt
TableTutorialTime: Zeit
TableTutorialDeregisterUntil: Abmeldungen bis
TableActionsHead: Aktionen
TableNoFilter: Keine Einschränkung
#headings
HeadingLegal: Rechtliche Informationen
@ -518,7 +473,6 @@ UserSystemFunctions: Systemweite Rollen
UserSystemFunctionsSaved: Systemweite Rollen gespeichert
UserSystemFunctionsNotChanged: Es wurden keine systemweiten Rollen angepasst
UserAssimilateUser: Benutzer
BtnUserAssimilate: Assimilieren
AssimilateUserNotFound: E-Mail Adresse konnte keinem Benutzer zugeordnet werden
AssimilateUserHaveError: Beim Assimilieren ist ein Fehler aufgetreten
AssimilateUserHaveWarnings: Beim Assimilieren wurden Warnungen ausgegeben
@ -536,11 +490,6 @@ AllocNotifyNewCourseDefault: Systemweite Einstellung
AllocNotifyNewCourseForceOff: Nein
AllocNotifyNewCourseForceOn: Ja
BtnNotifyNewCourseForceOn: Benachrichtigen
BtnNotifyNewCourseForceOff: Nicht benachrichtigen
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
IllDefinedUTCTime: Der angegebene Zeitpunkt lässt sich nicht zu UTC konvertieren
@ -882,9 +831,6 @@ DeleteConfirmationWrong: Bestätigung muss genau dem angezeigten Text entspreche
DBTIRowsMissing n@Int: #{pluralDE n "Eine Zeile ist" "Einige Zeilen sind"} aus der Datenbank verschwunden, seit das Formular für Sie generiert wurde
MassInputAddDimension: +
MassInputDeleteCell: -
NavigationFavourites: Favoriten
CommSubject: Betreff
@ -936,31 +882,8 @@ InvitationActionTip: Abgelehnte Einladungen können nicht mehr angenommen werden
InvitationMissingRestrictions: Authorisierungs-Token fehlen benötigte Daten
InvitationCollision: Einladung konnte nicht angenommen werden da ein derartiger Eintrag bereits existiert
InvitationDeclined: Einladung wurde abgelehnt
BtnInviteAccept: Einladung annehmen
BtnInviteDecline: Einladung ablehnen
ScheduleKindWeekly: Wöchentlich
ScheduleRegular: Planmäßiger Termin
ScheduleRegularKind: Plan
WeekDay: Wochentag
Day: Tag
OccurrenceStart: Beginn
OccurrenceEnd: Ende
OccurrenceNever: Nie
ScheduleExists: Dieser Plan existiert bereits
ScheduleExceptions: Termin-Ausnahmen
ScheduleExceptionsTip: Ausfälle überschreiben planmäßiges Stattfinden. Außerplanmäßiges Stattfinden überschreibt Ausfall.
ExceptionKind: Termin ...
ExceptionKindOccur: Findet statt
ExceptionKindNoOccur: Findet nicht statt
ExceptionExists: Diese Ausnahme existiert bereits
ExceptionNoOccurAt: Termin
OccurrenceNoneScheduled: (Noch) keine planmäßigen Termine
OccurrenceNoneExceptions: (Noch) keine Termin-Ausnahmen
MassInputTip: Es können mehrere Werte angegeben werden. Werte müssen mit + zur Liste hinzugefügt werden und können mit - wieder entfernt werden. Alle Änderungen müssen noch durch Drücken des Formular-Knopfes bestätigt werden.
@ -1069,10 +992,6 @@ CsvExport: CSV-Export
CsvModifyExisting: Existierende Einträge angleichen
CsvAddNew: Neue Einträge einfügen
CsvDeleteMissing: Fehlende Einträge entfernen
BtnCsvExport: CSV-Datei exportieren
BtnCsvImport: CSV-Datei importieren
BtnCsvImportConfirm: CSV-Import abschließen
BtnCsvImportAbort: Abbrechen
CsvImportNotConfigured: CSV-Import nicht vorgesehen
CsvImportConfirmationHeading: CSV-Import Vorschau (noch keine Änderungen importiert)
@ -1087,7 +1006,6 @@ CsvExportExample: Beispiel-CSV exportieren
TableProportion c@Text of'@Text prop@Rational: #{c}/#{of'} (#{rationalToFixed2 (100 * prop)}%)
TableProportionNoRatio c@Text of'@Text: #{c}/#{of'}
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
@ -1137,10 +1055,6 @@ UtilExamResultPass: Bestanden/Nicht Bestanden
UtilExamResultNoShow: Nicht erschienen
UtilExamResultVoided: Entwertet
BtnAuthLDAP: Auf Campus-Kennung umstellen
BtnAuthPWHash: Auf Uni2work-Kennung umstellen
BtnPasswordReset: Passwort zurücksetzen
AuthLDAPLookupFailed: Nutzer konnte aufgrund eines LDAP-Fehlers nicht nachgeschlagen werden
AuthLDAPInvalidLookup: Bestehender Nutzer konnte nicht eindeutig einem LDAP-Eintrag zugeordnet werden
AuthLDAPAlreadyConfigured: Nutzer meldet sich bereits per Campus-Kennung in Uni2work an
@ -1272,7 +1186,6 @@ LdapIdentificationOrEmail: Campus-Kennung / E-Mail-Adresse
AuthKindLDAP: Campus-Kennung
AuthKindPWHash: Uni2work-Kennung
BtnSetDisplayEmail: E-Mail-Adresse setzen
UserDisplayEmailChanged: Öffentliche E-Mail-Adresse erfolgreich gesetzt
TitleChangeUserDisplayEmail: Öffentliche E-Mail-Adresse setzen
@ -1280,8 +1193,6 @@ 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
BtnCloseExam: Prüfung abschließen
LecturerInfoTooltipNew: Neues Feature
LecturerInfoTooltipProblem: Feature mit bekannten Problemen
LecturerInfoTooltipPlanned: Geplantes Feature
@ -1369,12 +1280,6 @@ MetricName: Name
MetricValue: Wert
TitleExamAutoOccurrence tid@TermId ssh@SchoolId csh@CourseShorthand examn@ExamName: #{tid} - #{ssh} - #{csh} #{examn}: Automatische Raum-/Terminverteilung
BtnExamAutoOccurrenceCalculate: Verteilungstabelle berechnen
BtnExamAutoOccurrenceAccept: Verteilung akzeptieren
BtnExamAutoOccurrenceNudgeUp: +
BtnExamAutoOccurrenceNudgeDown: -
NoFilter: Keine Einschränkung
ExamGradingPass: Bestanden/Nicht Bestanden
ExamGradingGrades: Numerische Noten
@ -1409,16 +1314,6 @@ AllocationPriorityOrdinal:
AllocationPrioritiesNumeric:
AllocationPrioritiesOrdinal:
ExampleUser1FirstName: Max ZweiterName
ExampleUser1Surname: Mustermann
ExampleUser1DisplayName: Max Mustermann
ExampleUser2FirstName: Martha
ExampleUser2Surname: Musterstudent
ExampleUser2DisplayName: Musterstudent Martha
ExampleUser3FirstName: Maria
ExampleUser3Surname: Beispiel
ExampleUser3DisplayName: Beispiel
CourseOption tid@TermId ssh@SchoolId coursen@CourseName: #{tid} - #{ssh} - #{coursen}
@ -1439,14 +1334,6 @@ ValueRequiredLabeledMultiWord fieldLabel@Text: „#{fieldLabel}“ wird benötig
RatingFileTitle subId@CryptoFileNameSubmission: bewertung_#{toPathPiece subId}.txt
RatingYAMLMetaComment: Meta-Informationen zur Korrektur (werden beim Hochladen ignoriert)
RatingYAMLRatingComment: Bewertung
RatingYAMLChangePointsComment: TODO: Hier die Punktezahl statt null eintragen (bis zu zwei Nachkommastellen, Punkt als Dezimalseparator; z.B. 17.03)
RatingYAMLChangePassedComment: TODO: Hier true oder false statt null eintragen (true entspricht Bestanden)
RatingYAMLChangeDoneComment: TODO: Von false auf true setzen, sobald Bewertung abgeschlossen; sonst Korrektur für die Studierenden nicht sichtbar und keine Anrechnung auf Prüfungsbonus
RatingYAMLChangeCommentComment: TODO: Korrektur-Kommentar für die Studierenden unterhalb der Abtrennung (...) eintragen
RatingYAMLSubmissionIdComment: Abgabenummer; wird beim Hochladen mit dem Dateinamen abgeglichen
SubmissionDoneNever: Nie
SubmissionDoneByFile: Je nach Bewertungsdatei
SubmissionDoneAlways: Immer
@ -1494,7 +1381,5 @@ UrlFieldCouldNotParseAbsolute: Konnte nicht als absolute URL interpretiert werde
WGFTextInput: Textfeld
WGFFileUpload: Dateifeld
WorkflowGraphFormUploadIsDirectory: Upload ist Verzeichnis
WorkflowGraphFormInvalidNumberOfFiles: Es muss genau eine Datei hochgeladen werden
CourseSortingOnlyLoggedIn: Das Benutzerinterface zur Sortierung dieser Tabelle ist nur für eingeloggte Benutzer aktiv

View File

@ -1,50 +1,5 @@
Logo: Uni2work
BtnSubmit: Submit
BtnAbort: Abort
BtnDelete: Delete
BtnRegister: Register
BtnDeregister: Deregister
BtnCourseRegister: Enrol for course
BtnCourseDeregister: Leave course
BtnCourseApply: Apply for course
BtnCourseRetractApplication: Retract application
BtnExamRegister: Enrol for exam
BtnExamRegisterOccurrence: Enrol for exam occurrence/room
BtnExamSwitchOccurrence: Switch to exam occurrence/room
BtnExamDeregister: Leave exam
BtnHijack: Hijack session
BtnSave: Save
PressSaveToSave: Changes will only be saved after clicking "Save".
BtnHandIn: Hand in submission
BtnNameCandidatesInfer: Infer name-mapping
BtnNameCandidatesDeleteConflicts: Delete name-conflicts
BtnNameCandidatesDeleteAll: Delete all name-observations
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
BtnCorrInvDecline: Decline
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
@ -100,6 +55,7 @@ TableTutorialRoomIsHidden: Room is only displayed to participants
TableTutorialDeregisterUntil: Deregister until
TableActionsHead: Actions
TableTutorialTime: Time
TableNoFilter: No restriction
#headings
HeadingLegal: Legal
@ -518,7 +474,6 @@ UserSystemFunctions: System wide roles
UserSystemFunctionsSaved: Successfully saved system wide roles
UserSystemFunctionsNotChanged: No system wide roles were changed
UserAssimilateUser: User
BtnUserAssimilate: Assimilate
AssimilateUserNotFound: Email could not be resolved to an user
AssimilateUserHaveError: An error occurred during assimilation
AssimilateUserHaveWarnings: Warnings were ermitted during assimilation
@ -536,13 +491,6 @@ AllocNotifyNewCourseDefault: System wide setting
AllocNotifyNewCourseForceOff: No
AllocNotifyNewCourseForceOn: Yes
BtnNotifyNewCourseForceOn: Notify me
BtnNotifyNewCourseForceOff: Do not notify me
InvalidDateTimeFormat: Invalid date and time format. YYYY-MM-DDTHH:MM[:SS] expected
AmbiguousUTCTime: The given timestamp cannot be converted to UTC unambiguously
IllDefinedUTCTime: The given timestamp cannot be converted to UTC
@ -888,9 +836,6 @@ DeleteConfirmationWrong: Confirmation text must match the shown text exactly.
DBTIRowsMissing n: #{pluralDE n "A line" "A number of lines"} vanished from the database since the form you submitted was generated for you
MassInputAddDimension: +
MassInputDeleteCell: -
NavigationFavourites: Favourites
CommSubject: Subject
@ -941,31 +886,8 @@ InvitationActionTip: Declined invitations cannot be accepted later
InvitationMissingRestrictions: Your authorisation-token is missing required data
InvitationCollision: Invitation could not be accepted since an entry of this type already exists
InvitationDeclined: Invitation declined
BtnInviteAccept: Accept invitation
BtnInviteDecline: Decline invitation
ScheduleKindWeekly: Weekly
ScheduleRegular: Regular occurrence
ScheduleRegularKind: Schedule
WeekDay: Day of the week
Day: Day
OccurrenceStart: Start
OccurrenceEnd: End
OccurrenceNever: Never
ScheduleExists: This schedule already exists
ScheduleExceptions: Exceptions
ScheduleExceptionsTip: “Does not occur” overrides the regular schedule. “Does occur” overides “does not occur”.
ExceptionKind: Event ...
ExceptionKindOccur: Does occur
ExceptionKindNoOccur: Does not occur
ExceptionExists: This exception already exists
ExceptionNoOccurAt: Event
OccurrenceNoneScheduled: No regular occurrences (yet)
OccurrenceNoneExceptions: No exceptions (yet)
MassInputTip: You may specify multiple values. Values must be added to the list by clicking + and can be removed again by clicking -. All changes must be confirmed by clicking the form submit button.
@ -1072,10 +994,6 @@ CsvExport: CSV export
CsvModifyExisting: Modify existing entries
CsvAddNew: Add new entries
CsvDeleteMissing: Delete missing entries
BtnCsvExport: Export CSV file
BtnCsvImport: Import CSV file
BtnCsvImportConfirm: Finalise CSV import
BtnCsvImportAbort: Abort
CsvImportNotConfigured: CSV import not configured
CsvImportConfirmationHeading: CSV import preview (no changes have been made yet)
@ -1090,7 +1008,6 @@ CsvExportExample: Export example CSV
TableProportion c of' prop: #{c}/#{of'} (#{rationalToFixed2 (100 * prop)}%)
TableProportionNoRatio c of': #{c}/#{of'}
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
@ -1140,10 +1057,6 @@ UtilExamResultPass: Passed/Failed
UtilExamResultNoShow: Not present
UtilExamResultVoided: Voided
BtnAuthLDAP: Change to campus account
BtnAuthPWHash: Change to Uni2work accont
BtnPasswordReset: Reset password
AuthLDAPLookupFailed: User could not be looked up due to a LDAP error
AuthLDAPInvalidLookup: Existing user could not be uniquely matched with a LDAP entry
AuthLDAPAlreadyConfigured: User already logs in using their campus account
@ -1275,7 +1188,6 @@ LdapIdentificationOrEmail: Campus account/email address
AuthKindLDAP: Campus account
AuthKindPWHash: Uni2work account
BtnSetDisplayEmail: Set email address
UserDisplayEmailChanged: Successfully set display email
TitleChangeUserDisplayEmail: Set display email
@ -1283,8 +1195,6 @@ 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
BtnCloseExam: Close exam
LecturerInfoTooltipNew: New feature
LecturerInfoTooltipProblem: Feature with known issues
LecturerInfoTooltipPlanned: Planned feature
@ -1372,12 +1282,6 @@ MetricName: Name
MetricValue: Value
TitleExamAutoOccurrence tid ssh csh examn: #{tid} - #{ssh} - #{csh} #{examn}: Automatic occurrence/room distribution
BtnExamAutoOccurrenceCalculate: Calculate assignment rules
BtnExamAutoOccurrenceAccept: Accept assignments
BtnExamAutoOccurrenceNudgeUp: +
BtnExamAutoOccurrenceNudgeDown: -
NoFilter: No restriction
ExamGradingPass: Passed/Failed
ExamGradingGrades: Numeric grades
@ -1412,16 +1316,6 @@ AllocationPriorityOrdinal:
AllocationPrioritiesNumeric:
AllocationPrioritiesOrdinal:
ExampleUser1FirstName: Max SecondName
ExampleUser1Surname: Mustermann
ExampleUser1DisplayName: Max Mustermann
ExampleUser2FirstName: Martha
ExampleUser2Surname: Musterstudent
ExampleUser2DisplayName: Musterstudent Martha
ExampleUser3FirstName: Maria
ExampleUser3Surname: Example
ExampleUser3DisplayName: Example
CourseOption tid ssh coursen: #{tid} - #{ssh} - #{coursen}
FaqTitle: Frequently asked questions
@ -1442,14 +1336,6 @@ ValueRequiredLabeledMultiWord fieldLabel: “#{fieldLabel}” is required
RatingFileTitle subId: rating_#{toPathPiece subId}.txt
RatingYAMLMetaComment: Metadata about correction (ignored during upload)
RatingYAMLRatingComment: Rating
RatingYAMLChangePointsComment: TODO: Insert number of points instead of null (up to two decimal places, use period as a decimal separator; e.g. 17.03)
RatingYAMLChangePassedComment: TODO: Set true or false instead of null (true means passed)
RatingYAMLChangeDoneComment: TODO: Set to true instead of false, when correction is finished; otherwise correction will not be visible to students and won't be counted for exam bonus
RatingYAMLChangeCommentComment: TODO: Enter correction comment after the separator below (...)
RatingYAMLSubmissionIdComment: Submission id; will be compared to the filename during upload
SubmissionDoneNever: Never
SubmissionDoneByFile: According to correction file
SubmissionDoneAlways: Always
@ -1497,7 +1383,5 @@ UrlFieldCouldNotParseAbsolute: Could not parse as an absolute URL
WGFTextInput: Text field
WGFFileUpload: File field
WorkflowGraphFormUploadIsDirectory: Upload is a directory
WorkflowGraphFormInvalidNumberOfFiles: You need to upload exactly one file
CourseSortingOnlyLoggedIn: The user interface for sorting this table is only active for logged in users

View File

@ -50,3 +50,17 @@ 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.
#utils
ExternalExamUserCsvName tid@TermId ssh@SchoolId coursen@CourseName examn@ExamName: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase coursen}-#{foldedCase examn}-teilnehmer
ExternalExamUserSynchronised: Synchronisiert
ExternalExamAction: Aktion
ExampleUser1FirstName: Max ZweiterName
ExampleUser1Surname: Mustermann
ExampleUser1DisplayName: Max Mustermann
ExampleUser2FirstName: Martha
ExampleUser2Surname: Musterstudent
ExampleUser2DisplayName: Musterstudent Martha
ExampleUser3FirstName: Maria
ExampleUser3Surname: Beispiel
ExampleUser3DisplayName: Beispiel

View File

@ -50,3 +50,17 @@ 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.
#utils
ExternalExamUserCsvName tid@TermId ssh@SchoolId coursen@CourseName examn@ExamName: #{foldCase (termToText (unTermKey tid))}-#{foldedCase (unSchoolKey ssh)}-#{foldedCase coursen}-#{foldedCase examn}-participants
ExternalExamUserSynchronised: Synchronised
ExternalExamAction: Action
ExampleUser1FirstName: Max SecondName
ExampleUser1Surname: Mustermann
ExampleUser1DisplayName: Max Mustermann
ExampleUser2FirstName: Martha
ExampleUser2Surname: Musterstudent
ExampleUser2DisplayName: Musterstudent Martha
ExampleUser3FirstName: Maria
ExampleUser3Surname: Example
ExampleUser3DisplayName: Example

View File

@ -132,3 +132,7 @@ WorkflowWorkflowListCurrentState: Aktueller Zustand
WorkflowWorkflowListLastActionTime: Zeitpunkt, letzte Aktion
WorkflowWorkflowListLastActionUser: Benutzer:in, letzte Aktion
WorkflowWorkflowListIsFinal: Abgeschlossen?
WorkflowGraphFormUploadIsDirectory: Upload ist Verzeichnis
WorkflowGraphFormInvalidNumberOfFiles: Es muss genau eine Datei hochgeladen werden
WorkflowCourseOption tid@TermId ssh@SchoolId coursen@CourseName: #{tid} - #{ssh} - #{coursen}

View File

@ -131,4 +131,8 @@ WorkflowInstanceCreated: Instance created
WorkflowInstanceDescriptionTitle: Instance title
WorkflowInstanceWorkflowCount: Workflows
WorkflowInstanceInitiateSuccess: Successfully initiated workflow
WorkflowInstanceInitiateSuccess: Successfully initiated workflow
WorkflowGraphFormUploadIsDirectory: Upload is a directory
WorkflowGraphFormInvalidNumberOfFiles: You need to upload exactly one file
WorkflowCourseOption tid ssh coursen: #{tid} - #{ssh} - #{coursen}

View File

@ -0,0 +1,62 @@
BtnSubmit: Senden
BtnAbort: Abbrechen
BtnDelete: Löschen
BtnRegister: Anmelden
BtnDeregister: Abmelden
BtnCourseRegister: Zum Kurs anmelden
BtnCourseDeregister: Vom Kurs abmelden
BtnCourseApply: Zum Kurs bewerben
BtnCourseRetractApplication: Bewerbung zum Kurs zurückziehen
BtnExamRegister: Anmelden zur Prüfung
BtnExamRegisterOccurrence: Anmelden zum Prüfungstermin/-raum
BtnExamSwitchOccurrence: Zu Prüfungstermin/-raum wechseln
BtnExamDeregister: Von der Prüfung abmelden
BtnHijack: Sitzung übernehmen
BtnSave: Speichern
PressSaveToSave: Änderungen werden erst durch Drücken des Knopfes „_{MsgBtnSave}“ gespeichert.
BtnHandIn: Abgeben
BtnNameCandidatesInfer: Studienfach-Namens-Zuordnung automatisch lernen
BtnNameCandidatesDeleteConflicts: Namenskonflikte löschen
BtnNameCandidatesDeleteAll: Alle Namens-Beobachtungen löschen
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
BtnCorrInvDecline: Ablehnen
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
BtnAcceptApplicationsTip: Mit dem untigen Knopf können Sie den Kurs (höchstens bis zur angegeben Maximalkapazität, falls eingestellt) mit Bewerbern auffüllen. Die Bewertungen der Bewerbungen werden dabei berücksichtigt (Unbewertet wird behandelt wie eine Note zwischen 2.3 und 2.7). Bewerber mit Veto oder 5.0 werden nicht angemeldet.
BtnExamAutoOccurrenceCalculate: Verteilungstabelle berechnen
BtnExamAutoOccurrenceAccept: Verteilung akzeptieren
BtnExamAutoOccurrenceNudgeUp: +
BtnExamAutoOccurrenceNudgeDown: -
BtnSetDisplayEmail: E-Mail-Adresse setzen
BtnAuthLDAP: Auf Campus-Kennung umstellen
BtnAuthPWHash: Auf Uni2work-Kennung umstellen
BtnPasswordReset: Passwort zurücksetzen
BtnCsvExport: CSV-Datei exportieren
BtnCsvImport: CSV-Datei importieren
BtnCsvImportConfirm: CSV-Import abschließen
BtnCsvImportAbort: Abbrechen
BtnInviteAccept: Einladung annehmen
BtnInviteDecline: Einladung ablehnen
BtnNotifyNewCourseForceOn: Benachrichtigen
BtnNotifyNewCourseForceOff: Nicht benachrichtigen
BtnUserAssimilate: Assimilieren
BtnCloseExam: Prüfung abschließen

View File

@ -0,0 +1,62 @@
BtnSubmit: Submit
BtnAbort: Abort
BtnDelete: Delete
BtnRegister: Register
BtnDeregister: Deregister
BtnCourseRegister: Enrol for course
BtnCourseDeregister: Leave course
BtnCourseApply: Apply for course
BtnCourseRetractApplication: Retract application
BtnExamRegister: Enrol for exam
BtnExamRegisterOccurrence: Enrol for exam occurrence/room
BtnExamSwitchOccurrence: Switch to exam occurrence/room
BtnExamDeregister: Leave exam
BtnHijack: Hijack session
BtnSave: Save
PressSaveToSave: Changes will only be saved after clicking "Save".
BtnHandIn: Hand in submission
BtnNameCandidatesInfer: Infer name-mapping
BtnNameCandidatesDeleteConflicts: Delete name-conflicts
BtnNameCandidatesDeleteAll: Delete all name-observations
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
BtnCorrInvDecline: Decline
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.
BtnInviteAccept: Accept invitation
BtnInviteDecline: Decline invitation
BtnExamAutoOccurrenceCalculate: Calculate assignment rules
BtnExamAutoOccurrenceAccept: Accept assignments
BtnExamAutoOccurrenceNudgeUp: +
BtnExamAutoOccurrenceNudgeDown: -
BtnSetDisplayEmail: Set email address
BtnAuthLDAP: Change to campus account
BtnAuthPWHash: Change to Uni2work accont
BtnPasswordReset: Reset password
BtnCsvExport: Export CSV file
BtnCsvImport: Import CSV file
BtnCsvImportConfirm: Finalise CSV import
BtnCsvImportAbort: Abort
BtnNotifyNewCourseForceOn: Notify me
BtnNotifyNewCourseForceOff: Do not notify me
BtnUserAssimilate: Assimilate
BtnCloseExam: Close exam

View File

@ -0,0 +1,2 @@
MassInputAddDimension: +
MassInputDeleteCell: -

View File

@ -0,0 +1,2 @@
MassInputAddDimension: +
MassInputDeleteCell: -

View File

@ -0,0 +1,18 @@
ScheduleKindWeekly: Wöchentlich
ScheduleRegular: Planmäßiger Termin
ScheduleRegularKind: Plan
OccurrenceWeekDay: Wochentag
OccurrenceStart: Beginn
OccurrenceEnd: Ende
OccurrenceNever: Nie
OccurrenceNoneScheduled: (Noch) keine planmäßigen Termine
OccurrenceNoneExceptions: (Noch) keine Termin-Ausnahmen
ScheduleExists: Dieser Plan existiert bereits
ScheduleExceptions: Termin-Ausnahmen
ScheduleExceptionsTip: Ausfälle überschreiben planmäßiges Stattfinden. Außerplanmäßiges Stattfinden überschreibt Ausfall.
Day: Tag
ExceptionExists: Diese Ausnahme existiert bereits
ExceptionNoOccurAt: Termin
ExceptionKind: Termin ...
ExceptionKindOccur: Findet statt
ExceptionKindNoOccur: Findet nicht statt

View File

@ -0,0 +1,18 @@
ScheduleKindWeekly: Weekly
ScheduleRegular: Regular occurrence
ScheduleRegularKind: Schedule
OccurrenceWeekDay: Day of the week
OccurrenceStart: Start
OccurrenceEnd: End
OccurrenceNever: Never
OccurrenceNoneScheduled: No regular occurrences (yet)
OccurrenceNoneExceptions: No exceptions (yet)
ScheduleExists: This schedule already exists
ScheduleExceptions: Exceptions
ScheduleExceptionsTip: “Does not occur” overrides the regular schedule. “Does occur” overides “does not occur”.
Day: Day
ExceptionExists: This exception already exists
ExceptionNoOccurAt: Event
ExceptionKind: Event ...
ExceptionKindOccur: Does occur
ExceptionKindNoOccur: Does not occur

View File

@ -0,0 +1,7 @@
RatingYAMLMetaComment: Meta-Informationen zur Korrektur (werden beim Hochladen ignoriert)
RatingYAMLRatingComment: Bewertung
RatingYAMLChangePointsComment: TODO: Hier die Punktezahl statt null eintragen (bis zu zwei Nachkommastellen, Punkt als Dezimalseparator; z.B. 17.03)
RatingYAMLChangePassedComment: TODO: Hier true oder false statt null eintragen (true entspricht Bestanden)
RatingYAMLChangeDoneComment: TODO: Von false auf true setzen, sobald Bewertung abgeschlossen; sonst Korrektur für die Studierenden nicht sichtbar und keine Anrechnung auf Prüfungsbonus
RatingYAMLChangeCommentComment: TODO: Korrektur-Kommentar für die Studierenden unterhalb der Abtrennung (...) eintragen
RatingYAMLSubmissionIdComment: Abgabenummer; wird beim Hochladen mit dem Dateinamen abgeglichen

View File

@ -0,0 +1,7 @@
RatingYAMLMetaComment: Metadata about correction (ignored during upload)
RatingYAMLRatingComment: Rating
RatingYAMLChangePointsComment: TODO: Insert number of points instead of null (up to two decimal places, use period as a decimal separator; e.g. 17.03)
RatingYAMLChangePassedComment: TODO: Set true or false instead of null (true means passed)
RatingYAMLChangeDoneComment: TODO: Set to true instead of false, when correction is finished; otherwise correction will not be visible to students and won't be counted for exam bonus
RatingYAMLChangeCommentComment: TODO: Enter correction comment after the separator below (...)
RatingYAMLSubmissionIdComment: Submission id; will be compared to the filename during upload

View File

@ -7,7 +7,8 @@ module Foundation.I18n
, UniWorXHelpMessage(..), UniWorXNavigationMessage(..), UniWorXWorkflowMessage(..)
, UniWorXCourseMessage(..), UniWorXAllocationMessage(..), UniWorXExamMessage(..)
, UniWorXSheetMessage(..), UniWorXAdminMessage(..), UniWorXSubmissionMessage(..)
, UniWorXTutorialMessage(..), UniWorXUserMessage(..)
, UniWorXTutorialMessage(..), UniWorXUserMessage(..), UniWorXButtonMessage(..)
, UniWorXFormMessage(..), UniWorXRatingMessage(..)
, ShortTermIdentifier(..)
, MsgLanguage(..)
, ShortSex(..)
@ -137,18 +138,21 @@ 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"
mkMessageAddition ''UniWorX "Help" "messages/uniworx/uniworx_new/help" "de-de-formal"
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"
mkMessageAddition ''UniWorX "Sheet" "messages/uniworx/uniworx_new/sheet" "de-de-formal"
mkMessageAddition ''UniWorX "Admin" "messages/uniworx/uniworx_new/admin" "de-de-formal"
mkMessageAddition ''UniWorX "Submission" "messages/uniworx/uniworx_new/submission" "de-de-formal"
mkMessageAddition ''UniWorX "Tutorial" "messages/uniworx/uniworx_new/tutorial" "de-de-formal"
mkMessageAddition ''UniWorX "User" "messages/uniworx/uniworx_new/user" "de-de-formal"
mkMessageAddition ''UniWorX "Settings" "messages/uniworx/uniworx_new/categories/settings" "de-de-formal"
mkMessageAddition ''UniWorX "Help" "messages/uniworx/uniworx_new/categories/help" "de-de-formal"
mkMessageAddition ''UniWorX "Navigation" "messages/uniworx/uniworx_new/utils/navigation" "de-de-formal"
mkMessageAddition ''UniWorX "Workflow" "messages/uniworx/uniworx_new/categories/workflows" "de-de-formal"
mkMessageAddition ''UniWorX "Course" "messages/uniworx/uniworx_new/categories/courses" "de-de-formal"
mkMessageAddition ''UniWorX "Allocation" "messages/uniworx/uniworx_new/categories/allocation" "de-de-formal"
mkMessageAddition ''UniWorX "Exam" "messages/uniworx/uniworx_new/categories/exam" "de-de-formal"
mkMessageAddition ''UniWorX "Sheet" "messages/uniworx/uniworx_new/categories/sheet" "de-de-formal"
mkMessageAddition ''UniWorX "Admin" "messages/uniworx/uniworx_new/categories/admin" "de-de-formal"
mkMessageAddition ''UniWorX "Submission" "messages/uniworx/uniworx_new/categories/submission" "de-de-formal"
mkMessageAddition ''UniWorX "Tutorial" "messages/uniworx/uniworx_new/categories/tutorial" "de-de-formal"
mkMessageAddition ''UniWorX "User" "messages/uniworx/uniworx_new/categories/user" "de-de-formal"
mkMessageAddition ''UniWorX "Button" "messages/uniworx/uniworx_new/utils/buttons" "de-de-formal"
mkMessageAddition ''UniWorX "Form" "messages/uniworx/uniworx_new/utils/form" "de-de-formal"
mkMessageAddition ''UniWorX "Rating" "messages/uniworx/uniworx_new/utils/rating" "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

@ -424,7 +424,7 @@ makeCourseUserTable cid acts restrict colChoices psValidator csvColumns = do
]
where single = uncurry Map.singleton
dbtFilterUI mPrev = mconcat $
[ prismAForm (singletonFilter "active" . maybePrism _PathPiece) mPrev $ aopt (courseParticipantStateIsActiveField . Just $ SomeMessage MsgNoFilter) (fslI MsgCourseParticipantStateIsActiveFilter)
[ prismAForm (singletonFilter "active" . maybePrism _PathPiece) mPrev $ aopt (courseParticipantStateIsActiveField . Just $ SomeMessage MsgTableNoFilter) (fslI MsgCourseParticipantStateIsActiveFilter)
, fltrUserNameEmailUI mPrev
, fltrUserMatriclenrUI mPrev
] ++
@ -436,7 +436,7 @@ makeCourseUserTable cid acts restrict colChoices psValidator csvColumns = do
, fltrRelevantStudyFeaturesTermsUI mPrev
, fltrRelevantStudyFeaturesSemesterUI mPrev
] ++
[ prismAForm (singletonFilter "has-personalised-sheet-files". maybePrism _PathPiece) mPrev $ aopt (selectField' (Just $ SomeMessage MsgNoFilter) . optionsF $ map E.unValue personalisedSheets) (fslI MsgCourseUserHasPersonalisedSheetFilesFilter)
[ prismAForm (singletonFilter "has-personalised-sheet-files". maybePrism _PathPiece) mPrev $ aopt (selectField' (Just $ SomeMessage MsgTableNoFilter) . optionsF $ map E.unValue personalisedSheets) (fslI MsgCourseUserHasPersonalisedSheetFilesFilter)
| not $ null personalisedSheets
]
dbtParams = DBParamsForm

View File

@ -243,7 +243,7 @@ makeExternalExamUsersTable mode (Entity eeId ExternalExam{..}) = do
]
return $ Map.elems syncs'
colSynced = Colonnade.singleton (fromSortable . Sortable (Just "is-synced") $ i18nCell MsgExamUserSynchronised) $ \x -> cell . flip runReaderT x $ do
colSynced = Colonnade.singleton (fromSortable . Sortable (Just "is-synced") $ i18nCell MsgExternalExamUserSynchronised) $ \x -> cell . flip runReaderT x $ do
syncs <- asks $ sortOn (Down . view _3) . toListOf resultSynchronised
lastChange <- view $ resultResult . _entityVal . _externalExamResultLastChanged
user <- view $ resultUser . _entityVal
@ -313,7 +313,7 @@ makeExternalExamUsersTable mode (Entity eeId ExternalExam{..}) = do
, fltrExamResultPointsUI
, case mode of
EEUMGrades ->
\mPrev -> prismAForm (singletonFilter "is-synced" . maybePrism _PathPiece) mPrev $ aopt (boolField . Just $ SomeMessage MsgBoolIrrelevant) (fslI MsgExamUserSynchronised)
\mPrev -> prismAForm (singletonFilter "is-synced" . maybePrism _PathPiece) mPrev $ aopt (boolField . Just $ SomeMessage MsgBoolIrrelevant) (fslI MsgExternalExamUserSynchronised)
_other -> mempty
, fltrRelevantStudyFeaturesTermsUI
, fltrRelevantStudyFeaturesDegreeUI
@ -334,7 +334,7 @@ makeExternalExamUsersTable mode (Entity eeId ExternalExam{..}) = do
, pure ExternalExamUserMarkSynchronisedData
)
]
(res, formWgt) <- multiActionM actionMap (fslI MsgAction) Nothing csrf
(res, formWgt) <- multiActionM actionMap (fslI MsgExternalExamAction) Nothing csrf
let formRes = (, mempty) . First . Just <$> res
return (formRes, formWgt)
EEUMUsers -> \csrf -> do
@ -350,7 +350,7 @@ makeExternalExamUsersTable mode (Entity eeId ExternalExam{..}) = do
, singletonMap ExternalExamUserDelete $
pure ExternalExamUserDeleteData
]
(res, formWgt) <- multiActionM actionMap (fslI MsgAction) Nothing csrf
(res, formWgt) <- multiActionM actionMap (fslI MsgExternalExamAction) Nothing csrf
let formRes = (, mempty) . First . Just <$> res
return (formRes, formWgt)
, dbParamsFormEvaluate = liftHandler . runFormPost

View File

@ -53,7 +53,7 @@ occurrencesAForm (toPathPiece -> miIdent') mPrev = wFormToAForm $ do
newSched <- multiActionW
(Map.fromList [ ( ScheduleKindWeekly
, ScheduleWeekly
<$> apreq (selectField' Nothing optionsFinite) (fslI MsgWeekDay & addName (nudge "occur-week-day")) Nothing
<$> apreq (selectField' Nothing optionsFinite) (fslI MsgOccurrenceWeekDay & addName (nudge "occur-week-day")) Nothing
<*> apreq timeFieldTypeTime (fslI MsgOccurrenceStart & addName (nudge "occur-start")) Nothing
<*> apreq timeFieldTypeTime (fslI MsgOccurrenceEnd & addName (nudge "occur-end")) Nothing
)

View File

@ -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 MsgTableExamResult)
fltrExamResultPointsUI mPrev = prismAForm (singletonFilter "exam-result" . maybePrism _PathPiece) mPrev $ aopt (examResultPassedGradeField . Just $ SomeMessage MsgTableNoFilter) (fslI MsgTableExamResult)
-------------
-- Courses --

View File

@ -121,7 +121,7 @@ getAdminWorkflowDefinitionListR = do
]
dbtFilterUI mPrev = mconcat
[ prismAForm (singletonFilter "name") mPrev $ aopt textField (fslI MsgWorkflowDefinitionName)
, prismAForm (singletonFilter "scope" . maybePrism _PathPiece) mPrev $ aopt (selectField' (Just $ SomeMessage MsgNoFilter) optionsFinite :: Field _ WorkflowScope') (fslI MsgWorkflowDefinitionScope)
, prismAForm (singletonFilter "scope" . maybePrism _PathPiece) mPrev $ aopt (selectField' (Just $ SomeMessage MsgTableNoFilter) optionsFinite :: Field _ WorkflowScope') (fslI MsgWorkflowDefinitionScope)
, prismAForm (singletonFilter "title") mPrev $ aopt textField (fslI MsgWorkflowDescriptionTitle)
, prismAForm (singletonFilter "instance-title") mPrev $ aopt textField (fslI MsgWorkflowInstanceDescriptionTitle)
]

View File

@ -32,14 +32,14 @@ workflowInstanceScopeForm scopeRestr fs mPrev = multiActionA scopeOptions' fs $
, WSSchool <$> apopt schoolField (fslI MsgTableSchool) (mPrev ^? _Just . _wisSchool)
)
, ( WSTermSchool'
, WSTermSchool <$> apopt termField (fslI MsgTerm) (mPrev ^? _Just . _wisTerm)
, WSTermSchool <$> apopt termField (fslI MsgTableTerm) (mPrev ^? _Just . _wisTerm)
<*> apopt schoolField (fslI MsgTableSchool) (mPrev ^? _Just . _wisSchool)
)
, ( WSCourse'
, 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
where courseOptions = fmap (fmap entityKey) . optionsPersistCryptoId [] [ Desc CourseTerm, Asc CourseSchool, Asc CourseName ] $ \Course{..} -> MsgWorkflowCourseOption courseTerm courseSchool courseName
data WorkflowInstanceForm = WorkflowInstanceForm

View File

@ -109,7 +109,7 @@ getAdminWorkflowInstanceListR = do
]
dbtFilterUI mPrev = mconcat
[ prismAForm (singletonFilter "name") mPrev $ aopt textField (fslI MsgWorkflowInstanceName)
, prismAForm (singletonFilter "scope" . maybePrism _PathPiece) mPrev $ aopt (selectField' (Just $ SomeMessage MsgNoFilter) $ return scopeOptions) (fslI MsgWorkflowScope)
, prismAForm (singletonFilter "scope" . maybePrism _PathPiece) mPrev $ aopt (selectField' (Just $ SomeMessage MsgTableNoFilter) $ return scopeOptions) (fslI MsgWorkflowScope)
, prismAForm (singletonFilter "title") mPrev $ aopt textField (fslI MsgWorkflowInstanceDescriptionTitle)
]
dbtStyle = def { dbsFilterLayout = defaultDBSFilterLayout }

View File

@ -26,4 +26,4 @@ dispatchJobChangeUserDisplayEmail jUser jDisplayEmail = JobHandlerException $ do
_mailTo .= pure (userAddress user & _addressEmail .~ CI.original jDisplayEmail)
replaceMailHeader "Auto-Submitted" $ Just "auto-generated"
setSubjectI MsgMailSubjectChangeUserDisplayEmail
addHtmlMarkdownAlternatives ($(ihamletFile "templates/mail/changeUserDisplayEmail.hamlet") :: HtmlUrlI18n UniWorXMessage (Route UniWorX))
addHtmlMarkdownAlternatives ($(ihamletFile "templates/mail/changeUserDisplayEmail.hamlet") :: HtmlUrlI18n (SomeMessage UniWorX) (Route UniWorX))

View File

@ -11,9 +11,9 @@ $newline never
}
<body>
<h1>
_{MsgMailTitleChangeUserDisplayEmail userDisplayName}
_{SomeMessage (MsgMailTitleChangeUserDisplayEmail userDisplayName)}
<p>
_{MsgMailIntroChangeUserDisplayEmail jDisplayEmail}
_{SomeMessage (MsgMailIntroChangeUserDisplayEmail jDisplayEmail)}
<p>
<a href=#{setDisplayEmailUrl'}>
_{MsgBtnSetDisplayEmail}
_{SomeMessage MsgBtnSetDisplayEmail}