diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 4cde1bfb74cba5daf1c6a4b734edce8ad68a5cd6..4c1494337d0f1e149260dbe3f3832bd7600a2db0 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -37,7 +37,7 @@ test: script: - source venv/bin/activate - echo "GRANT ALL on *.* to '${MYSQL_USER}';"| mysql -u root --password="${MYSQL_ROOT_PASSWORD}" -h mysql - - pip install pytest-cov unittest-xml-reporting beautifulsoup4 + - pip install pytest-cov unittest-xml-reporting - coverage run --source='.' manage.py test --settings AKPlanning.settings_ci after_script: - source venv/bin/activate @@ -56,7 +56,6 @@ lint: stage: test script: - source venv/bin/activate - - pip install beautifulsoup4 - pylint --load-plugins pylint_django --django-settings-module=AKPlanning.settings_ci --rcfile pylintrc --exit-zero --output-format=text AK* | tee /tmp/pylint.txt - sed -n 's/^Your code has been rated at \([-0-9.]*\)\/.*/\1/p' /tmp/pylint.txt > public/badges/$CI_JOB_NAME.score - pylint --load-plugins pylint_django --django-settings-module=AKPlanning.settings_ci --rcfile pylintrc --exit-zero --output-format=pylint_gitlab.GitlabCodeClimateReporter AK* > codeclimate.json diff --git a/AKModel/locale/de_DE/LC_MESSAGES/django.po b/AKModel/locale/de_DE/LC_MESSAGES/django.po index b4b2458423ec29bbb265880c8a616d77a3bd781a..7c8251c46fc373b7cc153c9251faea0377de2485 100644 --- a/AKModel/locale/de_DE/LC_MESSAGES/django.po +++ b/AKModel/locale/de_DE/LC_MESSAGES/django.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-26 16:35+0100\n" +"POT-Creation-Date: 2025-03-04 10:05+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -25,18 +25,18 @@ msgstr "Status" msgid "Toggle plan visibility" msgstr "Plansichtbarkeit ändern" -#: AKModel/admin.py:112 AKModel/admin.py:123 AKModel/views/manage.py:138 +#: AKModel/admin.py:112 AKModel/admin.py:123 AKModel/views/manage.py:140 msgid "Publish plan" msgstr "Plan veröffentlichen" -#: AKModel/admin.py:115 AKModel/admin.py:131 AKModel/views/manage.py:151 +#: AKModel/admin.py:115 AKModel/admin.py:131 AKModel/views/manage.py:153 msgid "Unpublish plan" msgstr "Plan verbergen" -#: AKModel/admin.py:170 AKModel/models.py:381 AKModel/models.py:707 +#: AKModel/admin.py:170 AKModel/models.py:892 AKModel/models.py:1349 #: AKModel/templates/admin/AKModel/aks_by_user.html:12 #: AKModel/templates/admin/AKModel/status/event_aks.html:10 -#: AKModel/views/manage.py:73 AKModel/views/status.py:102 +#: AKModel/views/manage.py:75 AKModel/views/status.py:102 msgid "AKs" msgstr "AKs" @@ -60,11 +60,11 @@ msgstr "In Wiki-Syntax exportieren" msgid "Cannot export AKs from more than one event at the same time." msgstr "Kann nicht AKs von mehreren Events zur selben Zeit exportieren." -#: AKModel/admin.py:335 AKModel/views/ak.py:99 +#: AKModel/admin.py:335 AKModel/views/ak.py:123 msgid "Reset interest in AKs" msgstr "Interesse an AKs zurücksetzen" -#: AKModel/admin.py:345 AKModel/views/ak.py:114 +#: AKModel/admin.py:345 AKModel/views/ak.py:138 msgid "Reset AKs' interest counters" msgstr "Interessenszähler der AKs zurücksetzen" @@ -72,35 +72,35 @@ msgstr "Interessenszähler der AKs zurücksetzen" msgid "AK Details" msgstr "AK-Details" -#: AKModel/admin.py:520 AKModel/views/manage.py:99 +#: AKModel/admin.py:520 AKModel/views/manage.py:101 msgid "Mark Constraint Violations as manually resolved" msgstr "Markiere Constraintverletzungen als manuell behoben" -#: AKModel/admin.py:529 AKModel/views/manage.py:112 +#: AKModel/admin.py:529 AKModel/views/manage.py:114 msgid "Set Constraint Violations to level \"violation\"" msgstr "Constraintverletzungen auf Level \"Violation\" setzen" -#: AKModel/admin.py:538 AKModel/views/manage.py:125 +#: AKModel/admin.py:538 AKModel/views/manage.py:127 msgid "Set Constraint Violations to level \"warning\"" msgstr "Constraintverletzungen auf Level \"Warning\" setzen" -#: AKModel/admin.py:580 +#: AKModel/admin.py:585 msgid "Activate selected users" msgstr "Ausgewählte Benutzer*innen aktivieren" -#: AKModel/admin.py:583 +#: AKModel/admin.py:594 msgid "The selected users have been activated." msgstr "Benutzer*innen aktiviert" -#: AKModel/admin.py:585 +#: AKModel/admin.py:596 msgid "Deactivate selected users" msgstr "Ausgewählte Benutzer*innen deaktivieren" -#: AKModel/admin.py:588 +#: AKModel/admin.py:605 msgid "The selected users have been deactivated." msgstr "Benutzer*innen deaktiviert" -#: AKModel/availability/forms.py:25 AKModel/availability/models.py:271 +#: AKModel/availability/forms.py:25 AKModel/availability/models.py:308 msgid "Availability" msgstr "Verfügbarkeit" @@ -125,19 +125,19 @@ msgstr "Die eingegebene Verfügbarkeit enthält ein ungültiges Datum." msgid "Please fill in your availabilities!" msgstr "Bitte Verfügbarkeiten eintragen!" -#: AKModel/availability/models.py:43 AKModel/models.py:60 AKModel/models.py:174 -#: AKModel/models.py:251 AKModel/models.py:270 AKModel/models.py:296 -#: AKModel/models.py:315 AKModel/models.py:371 AKModel/models.py:517 -#: AKModel/models.py:556 AKModel/models.py:646 AKModel/models.py:703 -#: AKModel/models.py:894 +#: AKModel/availability/models.py:43 AKModel/models.py:179 +#: AKModel/models.py:669 AKModel/models.py:746 AKModel/models.py:779 +#: AKModel/models.py:805 AKModel/models.py:824 AKModel/models.py:882 +#: AKModel/models.py:1041 AKModel/models.py:1118 AKModel/models.py:1287 +#: AKModel/models.py:1345 AKModel/models.py:1537 msgid "Event" msgstr "Event" -#: AKModel/availability/models.py:44 AKModel/models.py:175 -#: AKModel/models.py:252 AKModel/models.py:271 AKModel/models.py:297 -#: AKModel/models.py:316 AKModel/models.py:372 AKModel/models.py:518 -#: AKModel/models.py:557 AKModel/models.py:647 AKModel/models.py:704 -#: AKModel/models.py:895 +#: AKModel/availability/models.py:44 AKModel/models.py:670 +#: AKModel/models.py:747 AKModel/models.py:780 AKModel/models.py:806 +#: AKModel/models.py:825 AKModel/models.py:883 AKModel/models.py:1042 +#: AKModel/models.py:1119 AKModel/models.py:1288 AKModel/models.py:1346 +#: AKModel/models.py:1538 msgid "Associated event" msgstr "Zugehöriges Event" @@ -149,8 +149,8 @@ msgstr "Person" msgid "Person whose availability this is" msgstr "Person deren Verfügbarkeit hier abgebildet wird" -#: AKModel/availability/models.py:61 AKModel/models.py:521 -#: AKModel/models.py:546 AKModel/models.py:713 +#: AKModel/availability/models.py:61 AKModel/models.py:1045 +#: AKModel/models.py:1108 AKModel/models.py:1355 msgid "Room" msgstr "Raum" @@ -158,8 +158,8 @@ msgstr "Raum" msgid "Room whose availability this is" msgstr "Raum dessen Verfügbarkeit hier abgebildet wird" -#: AKModel/availability/models.py:70 AKModel/models.py:380 -#: AKModel/models.py:545 AKModel/models.py:641 +#: AKModel/availability/models.py:70 AKModel/models.py:891 +#: AKModel/models.py:1107 AKModel/models.py:1282 msgid "AK" msgstr "AK" @@ -167,8 +167,8 @@ msgstr "AK" msgid "AK whose availability this is" msgstr "Verfügbarkeiten" -#: AKModel/availability/models.py:79 AKModel/models.py:255 -#: AKModel/models.py:719 +#: AKModel/availability/models.py:79 AKModel/models.py:750 +#: AKModel/models.py:1361 msgid "AK Category" msgstr "AK-Kategorie" @@ -176,7 +176,7 @@ msgstr "AK-Kategorie" msgid "AK Category whose availability this is" msgstr "AK-Kategorie, deren Verfügbarkeit hier abgebildet wird" -#: AKModel/availability/models.py:272 +#: AKModel/availability/models.py:309 msgid "Availabilities" msgstr "Verfügbarkeiten" @@ -242,7 +242,7 @@ msgstr "" "fürWünsche markieren, z.B. um während der Präsentation auf einem Touchscreen " "ausgefüllt zu werden?" -#: AKModel/forms.py:198 AKModel/models.py:888 +#: AKModel/forms.py:198 AKModel/models.py:1531 msgid "Default Slots" msgstr "Standardslots" @@ -289,7 +289,7 @@ msgstr "JSON-Daten" msgid "JSON data from the scheduling solver" msgstr "JSON-Daten, die der scheduling-solver produziert hat" -#: AKModel/metaviews/admin.py:156 AKModel/models.py:129 +#: AKModel/metaviews/admin.py:156 AKModel/models.py:141 msgid "Start" msgstr "Start" @@ -314,75 +314,75 @@ msgstr "Aktivieren?" msgid "Finish" msgstr "Abschluss" -#: AKModel/models.py:21 +#: AKModel/models.py:26 msgid "May not contain quotation marks" msgstr "Darf keine Anführungszeichen enthalten" -#: AKModel/models.py:24 +#: AKModel/models.py:29 msgid "Must contain at least one letter or digit" msgstr "Muss mindestens einen Buchstaben oder eine Ziffer enthalten" -#: AKModel/models.py:31 AKModel/models.py:256 AKModel/models.py:280 -#: AKModel/models.py:307 AKModel/models.py:326 AKModel/models.py:344 -#: AKModel/models.py:536 +#: AKModel/models.py:132 AKModel/models.py:738 AKModel/models.py:776 +#: AKModel/models.py:803 AKModel/models.py:822 AKModel/models.py:840 +#: AKModel/models.py:1033 msgid "Name" msgstr "Name" -#: AKModel/models.py:21 +#: AKModel/models.py:133 msgid "Name or iteration of the event" msgstr "Name oder Iteration des Events" -#: AKModel/models.py:22 +#: AKModel/models.py:134 msgid "Short Form" msgstr "Kurzer Name" -#: AKModel/models.py:23 +#: AKModel/models.py:135 msgid "Short name of letters/numbers/dots/dashes/underscores used in URLs." msgstr "" "Kurzname bestehend aus Buchstaben, Nummern, Punkten und Unterstrichen zur " "Nutzung in URLs" -#: AKModel/models.py:25 +#: AKModel/models.py:137 msgid "Place" msgstr "Ort" -#: AKModel/models.py:26 +#: AKModel/models.py:138 msgid "City etc. the event takes place in" msgstr "Stadt o.ä. in der das Event stattfindet" -#: AKModel/models.py:28 +#: AKModel/models.py:140 msgid "Time Zone" msgstr "Zeitzone" -#: AKModel/models.py:28 +#: AKModel/models.py:140 msgid "Time Zone where this event takes place in" msgstr "Zeitzone in der das Event stattfindet" -#: AKModel/models.py:29 +#: AKModel/models.py:141 msgid "Time the event begins" msgstr "Zeit zu der das Event beginnt" -#: AKModel/models.py:30 +#: AKModel/models.py:142 msgid "End" msgstr "Ende" -#: AKModel/models.py:30 +#: AKModel/models.py:142 msgid "Time the event ends" msgstr "Zeit zu der das Event endet" -#: AKModel/models.py:31 +#: AKModel/models.py:143 msgid "Resolution Deadline" msgstr "Resolutionsdeadline" -#: AKModel/models.py:32 +#: AKModel/models.py:144 msgid "When should AKs with intention to submit a resolution be done?" msgstr "Wann sollen AKs mit Resolutionsabsicht stattgefunden haben?" -#: AKModel/models.py:34 +#: AKModel/models.py:146 msgid "Interest Window Start" msgstr "Beginn Interessensbekundung" -#: AKModel/models.py:36 +#: AKModel/models.py:148 msgid "" "Opening time for expression of interest. When left blank, no interest " "indication will be possible." @@ -390,71 +390,71 @@ msgstr "" "Öffnungszeitpunkt für die Angabe von Interesse an AKs.Wenn das Feld leer " "bleibt, wird keine Abgabe von Interesse möglich sein." -#: AKModel/models.py:38 +#: AKModel/models.py:151 msgid "Interest Window End" msgstr "Ende Interessensbekundung" -#: AKModel/models.py:39 +#: AKModel/models.py:152 msgid "Closing time for expression of interest." msgstr "Öffnungszeitpunkt für die Angabe von Interesse an AKs." -#: AKModel/models.py:41 +#: AKModel/models.py:154 msgid "Public event" msgstr "Öffentliches Event" -#: AKModel/models.py:42 +#: AKModel/models.py:155 msgid "Show this event on overview page." msgstr "Zeige dieses Event auf der Übersichtseite an" -#: AKModel/models.py:44 +#: AKModel/models.py:157 msgid "Active State" msgstr "Aktiver Status" -#: AKModel/models.py:44 +#: AKModel/models.py:157 msgid "Marks currently active events" msgstr "Markiert aktuell aktive Events" -#: AKModel/models.py:45 +#: AKModel/models.py:158 msgid "Plan Hidden" msgstr "Plan verborgen" -#: AKModel/models.py:45 +#: AKModel/models.py:158 msgid "Hides plan for non-staff users" msgstr "Verbirgt den Plan für Nutzer*innen ohne erweiterte Rechte" -#: AKModel/models.py:47 +#: AKModel/models.py:160 msgid "Plan published at" msgstr "Plan veröffentlicht am/um" -#: AKModel/models.py:48 +#: AKModel/models.py:161 msgid "Timestamp at which the plan was published" msgstr "Zeitpunkt, zu dem der Plan veröffentlicht wurde" -#: AKModel/models.py:50 +#: AKModel/models.py:163 msgid "Base URL" msgstr "URL-Prefix" -#: AKModel/models.py:50 +#: AKModel/models.py:163 msgid "Prefix for wiki link construction" msgstr "Prefix für die automatische Generierung von Wiki-Links" -#: AKModel/models.py:51 +#: AKModel/models.py:164 msgid "Wiki Export Template Name" msgstr "Wiki-Export Templatename" -#: AKModel/models.py:52 +#: AKModel/models.py:165 msgid "Default Slot Length" msgstr "Standardslotlänge" -#: AKModel/models.py:53 +#: AKModel/models.py:166 msgid "Default length in hours that is assumed for AKs in this event." msgstr "Standardlänge von Slots (in Stunden) für dieses Event" -#: AKModel/models.py:154 +#: AKModel/models.py:167 msgid "Export Slot Length" msgstr "Export-Slotlänge" -#: AKModel/models.py:156 +#: AKModel/models.py:169 msgid "" "Slot duration in hours that is used in the timeslot discretization, when " "this event is exported for the solver." @@ -462,11 +462,11 @@ msgstr "" "Länge von Slots (in Stunden) in der Zeitslot-Diskretisierung beim JSON-" "Export dieses Events." -#: AKModel/models.py:161 +#: AKModel/models.py:174 msgid "Contact email address" msgstr "E-Mail Kontaktadresse" -#: AKModel/models.py:56 +#: AKModel/models.py:175 msgid "" "An email address that is displayed on every page and can be used for all " "kinds of questions" @@ -474,16 +474,16 @@ msgstr "" "Eine Mailadresse die auf jeder Seite angezeigt wird und für alle Arten von " "Fragen genutzt werden kann" -#: AKModel/models.py:61 +#: AKModel/models.py:180 msgid "Events" msgstr "Events" -#: AKModel/models.py:444 +#: AKModel/models.py:457 #, python-brace-format msgid "AK {ak_name} is not assigned any timeslot by the solver" msgstr "Dem AK {ak_name} wurde vom Solver kein Zeitslot zugewiesen" -#: AKModel/models.py:454 +#: AKModel/models.py:467 #, python-brace-format msgid "" "Duration of AK {ak_name} assigned by solver ({solver_duration} hours) is " @@ -493,7 +493,7 @@ msgstr "" "Stunden) ist kürzer als die aktuell vorgesehene Dauer des Slots " "({slot_duration} Stunden)" -#: AKModel/models.py:468 +#: AKModel/models.py:481 #, python-brace-format msgid "" "Fixed AK {ak_name} assigned by solver to room {solver_room} is fixed to room " @@ -502,7 +502,7 @@ msgstr "" "Dem fix geplanten AK {ak_name} wurde vom Solver Raum {solver_room} " "zugewiesen, dabei ist der AK bereits fix in Raum {slot_room} eingeplant." -#: AKModel/models.py:479 +#: AKModel/models.py:492 #, python-brace-format msgid "" "Fixed AK {ak_name} assigned by solver to start at {solver_start} is fixed to " @@ -511,71 +511,71 @@ msgstr "" "Dem fix geplanten AK {ak_name} wurde vom Solver die Startzeit {solver_start} " "zugewiesen, dabei ist der AK bereits für {slot_start} eingeplant." -#: AKModel/models.py:649 +#: AKModel/models.py:662 msgid "Nickname" msgstr "Spitzname" -#: AKModel/models.py:169 +#: AKModel/models.py:664 msgid "Name to identify an AK owner by" msgstr "Name, durch den eine AK-Leitung identifiziert wird" -#: AKModel/models.py:170 +#: AKModel/models.py:665 msgid "Slug" msgstr "Slug" -#: AKModel/models.py:170 +#: AKModel/models.py:665 msgid "Slug for URL generation" msgstr "Slug für URL-Generierung" -#: AKModel/models.py:171 +#: AKModel/models.py:666 msgid "Institution" msgstr "Instutution" -#: AKModel/models.py:171 +#: AKModel/models.py:666 msgid "Uni etc." msgstr "Universität o.ä." -#: AKModel/models.py:172 AKModel/models.py:340 +#: AKModel/models.py:667 AKModel/models.py:851 msgid "Web Link" msgstr "Internet Link" -#: AKModel/models.py:172 +#: AKModel/models.py:667 msgid "Link to Homepage" msgstr "Link zu Homepage oder Webseite" -#: AKModel/models.py:178 AKModel/models.py:712 +#: AKModel/models.py:673 AKModel/models.py:1354 msgid "AK Owner" msgstr "AK-Leitung" -#: AKModel/models.py:179 +#: AKModel/models.py:674 msgid "AK Owners" msgstr "AK-Leitungen" -#: AKModel/models.py:243 +#: AKModel/models.py:738 msgid "Name of the AK Category" msgstr "Name der AK-Kategorie" -#: AKModel/models.py:244 AKModel/models.py:268 +#: AKModel/models.py:739 AKModel/models.py:777 msgid "Color" msgstr "Farbe" -#: AKModel/models.py:244 AKModel/models.py:268 +#: AKModel/models.py:739 AKModel/models.py:777 msgid "Color for displaying" msgstr "Farbe für die Anzeige" -#: AKModel/models.py:245 AKModel/models.py:334 +#: AKModel/models.py:740 AKModel/models.py:845 msgid "Description" msgstr "Beschreibung" -#: AKModel/models.py:246 +#: AKModel/models.py:741 msgid "Short description of this AK Category" msgstr "Beschreibung der AK-Kategorie" -#: AKModel/models.py:247 +#: AKModel/models.py:742 msgid "Present by default" msgstr "Defaultmäßig präsentieren" -#: AKModel/models.py:248 +#: AKModel/models.py:743 msgid "" "Present AKs of this category by default if AK owner did not specify whether " "this AK should be presented?" @@ -583,152 +583,152 @@ msgstr "" "AKs dieser Kategorie standardmäßig vorstellen, wenn die Leitungen das für " "ihren AK nicht explizit spezifiziert haben?" -#: AKModel/models.py:256 +#: AKModel/models.py:751 msgid "AK Categories" msgstr "AK-Kategorien" -#: AKModel/models.py:267 +#: AKModel/models.py:776 msgid "Name of the AK Track" msgstr "Name des AK-Tracks" -#: AKModel/models.py:274 +#: AKModel/models.py:783 msgid "AK Track" msgstr "AK-Track" -#: AKModel/models.py:275 +#: AKModel/models.py:784 msgid "AK Tracks" msgstr "AK-Tracks" -#: AKModel/models.py:294 +#: AKModel/models.py:803 msgid "Name of the Requirement" msgstr "Name der Anforderung" -#: AKModel/models.py:300 AKModel/models.py:716 +#: AKModel/models.py:809 AKModel/models.py:1358 msgid "AK Requirement" msgstr "AK-Anforderung" -#: AKModel/models.py:301 +#: AKModel/models.py:810 msgid "AK Requirements" msgstr "AK-Anforderungen" -#: AKModel/models.py:313 +#: AKModel/models.py:822 msgid "Name describing the type" msgstr "Name, der den Typ beschreibt" -#: AKModel/models.py:319 +#: AKModel/models.py:828 msgid "AK Type" msgstr "AK Typ" -#: AKModel/models.py:320 +#: AKModel/models.py:829 msgid "AK Types" msgstr "AK-Typen" -#: AKModel/models.py:331 +#: AKModel/models.py:840 msgid "Name of the AK" msgstr "Name des AKs" -#: AKModel/models.py:332 +#: AKModel/models.py:842 msgid "Short Name" msgstr "Kurzer Name" -#: AKModel/models.py:333 +#: AKModel/models.py:844 msgid "Name displayed in the schedule" msgstr "Name zur Anzeige im AK-Plan" -#: AKModel/models.py:334 +#: AKModel/models.py:845 msgid "Description of the AK" msgstr "Beschreibung des AKs" -#: AKModel/models.py:336 +#: AKModel/models.py:847 msgid "Owners" msgstr "Leitungen" -#: AKModel/models.py:337 +#: AKModel/models.py:848 msgid "Those organizing the AK" msgstr "Menschen, die den AK organisieren und halten" -#: AKModel/models.py:340 +#: AKModel/models.py:851 msgid "Link to wiki page" msgstr "Link zur Wiki Seite" -#: AKModel/models.py:341 +#: AKModel/models.py:852 msgid "Protocol Link" msgstr "Protokolllink" -#: AKModel/models.py:341 +#: AKModel/models.py:852 msgid "Link to protocol" msgstr "Link zum Protokoll" -#: AKModel/models.py:343 +#: AKModel/models.py:854 msgid "Category" msgstr "Kategorie" -#: AKModel/models.py:344 +#: AKModel/models.py:855 msgid "Category of the AK" msgstr "Kategorie des AKs" -#: AKModel/models.py:345 +#: AKModel/models.py:856 msgid "Types" msgstr "Typen" -#: AKModel/models.py:346 +#: AKModel/models.py:857 msgid "This AK is" msgstr "Dieser AK ist" -#: AKModel/models.py:347 +#: AKModel/models.py:858 msgid "Track" msgstr "Track" -#: AKModel/models.py:348 +#: AKModel/models.py:859 msgid "Track the AK belongs to" msgstr "Track zu dem der AK gehört" -#: AKModel/models.py:350 +#: AKModel/models.py:861 msgid "Resolution Intention" msgstr "Resolutionsabsicht" -#: AKModel/models.py:351 +#: AKModel/models.py:862 msgid "Intends to submit a resolution" msgstr "Beabsichtigt eine Resolution einzureichen" -#: AKModel/models.py:352 +#: AKModel/models.py:863 msgid "Present this AK" msgstr "AK präsentieren" -#: AKModel/models.py:353 +#: AKModel/models.py:864 msgid "Present results of this AK" msgstr "Die Ergebnisse dieses AKs vorstellen" -#: AKModel/models.py:355 AKModel/views/status.py:167 +#: AKModel/models.py:866 AKModel/views/status.py:175 msgid "Requirements" msgstr "Anforderungen" -#: AKModel/models.py:356 +#: AKModel/models.py:867 msgid "AK's Requirements" msgstr "Anforderungen des AKs" -#: AKModel/models.py:358 +#: AKModel/models.py:869 msgid "Conflicting AKs" msgstr "AK-Konflikte" -#: AKModel/models.py:359 +#: AKModel/models.py:870 msgid "AKs that conflict and thus must not take place at the same time" msgstr "" "AKs, die Konflikte haben und deshalb nicht gleichzeitig stattfinden dürfen" -#: AKModel/models.py:360 +#: AKModel/models.py:871 msgid "Prerequisite AKs" msgstr "Vorausgesetzte AKs" -#: AKModel/models.py:361 +#: AKModel/models.py:872 msgid "AKs that should precede this AK in the schedule" msgstr "AKs die im AK-Plan vor diesem AK stattfinden müssen" -#: AKModel/models.py:363 +#: AKModel/models.py:874 msgid "Organizational Notes" msgstr "Notizen zur Organisation" -#: AKModel/models.py:364 +#: AKModel/models.py:875 msgid "" "Notes to organizers. These are public. For private notes, please use the " "button for private messages on the detail page of this AK (after creation/" @@ -738,299 +738,291 @@ msgstr "" "Anmerkungen bitte den Button für Direktnachrichten verwenden (nach dem " "Anlegen/Bearbeiten)." -#: AKModel/models.py:367 +#: AKModel/models.py:878 msgid "Interest" msgstr "Interesse" -#: AKModel/models.py:367 +#: AKModel/models.py:878 msgid "Expected number of people" msgstr "Erwartete Personenzahl" -#: AKModel/models.py:368 +#: AKModel/models.py:879 msgid "Interest Counter" msgstr "Interessenszähler" -#: AKModel/models.py:369 +#: AKModel/models.py:880 msgid "People who have indicated interest online" msgstr "Anzahl Personen, die online Interesse bekundet haben" -#: AKModel/models.py:374 +#: AKModel/models.py:885 msgid "Export?" msgstr "Export?" -#: AKModel/models.py:375 +#: AKModel/models.py:886 msgid "Include AK in wiki export?" msgstr "AK bei Wiki-Export berücksichtigen?" -#: AKModel/models.py:919 -msgid "Conflicts" -msgstr "Konflikte" - -#: AKModel/models.py:922 -msgid "Prerequisites" -msgstr "Voraussetzungen" - -#: AKModel/models.py:1015 +#: AKModel/models.py:1033 msgid "Name or number of the room" msgstr "Name oder Nummer des Raums" -#: AKModel/models.py:508 +#: AKModel/models.py:1034 msgid "Location" msgstr "Ort" -#: AKModel/models.py:509 +#: AKModel/models.py:1035 msgid "Name or number of the location" msgstr "Name oder Nummer des Ortes" -#: AKModel/models.py:510 +#: AKModel/models.py:1036 msgid "Capacity" msgstr "Kapazität" -#: AKModel/models.py:511 +#: AKModel/models.py:1037 msgid "Maximum number of people (-1 for unlimited)." msgstr "Maximale Personenzahl (-1 wenn unbeschränkt)." -#: AKModel/models.py:512 +#: AKModel/models.py:1038 msgid "Properties" msgstr "Eigenschaften" -#: AKModel/models.py:513 +#: AKModel/models.py:1039 msgid "AK requirements fulfilled by the room" msgstr "AK-Anforderungen, die dieser Raum erfüllt" -#: AKModel/models.py:522 AKModel/views/status.py:59 +#: AKModel/models.py:1046 AKModel/views/status.py:59 msgid "Rooms" msgstr "Räume" -#: AKModel/models.py:545 +#: AKModel/models.py:1107 msgid "AK being mapped" msgstr "AK, der zugeordnet wird" -#: AKModel/models.py:547 +#: AKModel/models.py:1109 msgid "Room the AK will take place in" msgstr "Raum in dem der AK stattfindet" -#: AKModel/models.py:548 AKModel/models.py:891 +#: AKModel/models.py:1110 AKModel/models.py:1534 msgid "Slot Begin" msgstr "Beginn des Slots" -#: AKModel/models.py:548 AKModel/models.py:891 +#: AKModel/models.py:1110 AKModel/models.py:1534 msgid "Time and date the slot begins" msgstr "Zeit und Datum zu der der AK beginnt" -#: AKModel/models.py:550 +#: AKModel/models.py:1112 msgid "Duration" msgstr "Dauer" -#: AKModel/models.py:551 +#: AKModel/models.py:1113 msgid "Length in hours" msgstr "Länge in Stunden" -#: AKModel/models.py:553 +#: AKModel/models.py:1115 msgid "Scheduling fixed" msgstr "Planung fix" -#: AKModel/models.py:554 +#: AKModel/models.py:1116 msgid "Length and time of this AK should not be changed" msgstr "Dauer und Zeit dieses AKs sollten nicht verändert werden" -#: AKModel/models.py:559 +#: AKModel/models.py:1121 msgid "Last update" msgstr "Letzte Aktualisierung" -#: AKModel/models.py:562 +#: AKModel/models.py:1124 msgid "AK Slot" msgstr "AK-Slot" -#: AKModel/models.py:563 AKModel/models.py:709 +#: AKModel/models.py:1125 AKModel/models.py:1351 msgid "AK Slots" msgstr "AK-Slot" -#: AKModel/models.py:585 AKModel/models.py:594 +#: AKModel/models.py:1147 AKModel/models.py:1156 msgid "Not scheduled yet" msgstr "Noch nicht geplant" -#: AKModel/models.py:642 +#: AKModel/models.py:1283 msgid "AK this message belongs to" msgstr "AK zu dem die Nachricht gehört" -#: AKModel/models.py:643 +#: AKModel/models.py:1284 msgid "Message text" msgstr "Nachrichtentext" -#: AKModel/models.py:644 +#: AKModel/models.py:1285 msgid "Message to the organizers. This is not publicly visible." msgstr "" "Nachricht an die Organisator*innen. Diese ist nicht öffentlich sichtbar." -#: AKModel/models.py:648 +#: AKModel/models.py:1289 msgid "Resolved" msgstr "Erledigt" -#: AKModel/models.py:649 +#: AKModel/models.py:1290 msgid "This message has been resolved (no further action needed)" msgstr "" "Diese Nachricht wurde vollständig bearbeitet (keine weiteren Aktionen " "notwendig)" -#: AKModel/models.py:652 +#: AKModel/models.py:1293 msgid "AK Orga Message" msgstr "AK-Organachricht" -#: AKModel/models.py:653 +#: AKModel/models.py:1294 msgid "AK Orga Messages" msgstr "AK-Organachrichten" -#: AKModel/models.py:670 +#: AKModel/models.py:1312 msgid "Constraint Violation" msgstr "Constraintverletzung" -#: AKModel/models.py:671 +#: AKModel/models.py:1313 msgid "Constraint Violations" msgstr "Constraintverletzungen" -#: AKModel/models.py:678 +#: AKModel/models.py:1320 msgid "Owner has two parallel slots" msgstr "Leitung hat zwei Slots parallel" -#: AKModel/models.py:679 +#: AKModel/models.py:1321 msgid "AK Slot was scheduled outside the AK's availabilities" msgstr "AK Slot wurde außerhalb der Verfügbarkeit des AKs platziert" -#: AKModel/models.py:680 +#: AKModel/models.py:1322 msgid "Room has two AK slots scheduled at the same time" msgstr "Raum hat zwei AK Slots gleichzeitig" -#: AKModel/models.py:681 +#: AKModel/models.py:1323 msgid "Room does not satisfy the requirement of the scheduled AK" msgstr "Room erfüllt die Anforderungen des platzierten AKs nicht" -#: AKModel/models.py:682 +#: AKModel/models.py:1324 msgid "AK Slot is scheduled at the same time as an AK listed as a conflict" msgstr "" "AK Slot wurde wurde zur gleichen Zeit wie ein Konflikt des AKs platziert" -#: AKModel/models.py:683 +#: AKModel/models.py:1325 msgid "AK Slot is scheduled before an AK listed as a prerequisite" msgstr "AK Slot wurde vor einem als Voraussetzung gelisteten AK platziert" -#: AKModel/models.py:685 +#: AKModel/models.py:1327 msgid "" "AK Slot for AK with intention to submit a resolution is scheduled after " "resolution deadline" msgstr "" "AK Slot eines AKs mit Resoabsicht wurde nach der Resodeadline platziert" -#: AKModel/models.py:686 +#: AKModel/models.py:1328 msgid "AK Slot in a category is outside that categories availabilities" msgstr "AK Slot wurde außerhalb der Verfügbarkeiten seiner Kategorie" -#: AKModel/models.py:687 +#: AKModel/models.py:1329 msgid "Two AK Slots for the same AK scheduled at the same time" msgstr "Zwei AK Slots eines AKs wurden zur selben Zeit platziert" -#: AKModel/models.py:688 +#: AKModel/models.py:1330 msgid "Room does not have enough space for interest in scheduled AK Slot" msgstr "Room hat nicht genug Platz für das Interesse am geplanten AK-Slot" -#: AKModel/models.py:689 +#: AKModel/models.py:1331 msgid "AK Slot is scheduled outside the event's availabilities" msgstr "AK Slot wurde außerhalb der Verfügbarkeit des Events platziert" -#: AKModel/models.py:695 +#: AKModel/models.py:1337 msgid "Warning" msgstr "Warnung" -#: AKModel/models.py:696 +#: AKModel/models.py:1338 msgid "Violation" msgstr "Verletzung" -#: AKModel/models.py:698 +#: AKModel/models.py:1340 msgid "Type" msgstr "Art" -#: AKModel/models.py:699 +#: AKModel/models.py:1341 msgid "Type of violation, i.e. what kind of constraint was violated" msgstr "Art der Verletzung, gibt an welche Art Constraint verletzt wurde" -#: AKModel/models.py:700 +#: AKModel/models.py:1342 msgid "Level" msgstr "Level" -#: AKModel/models.py:701 +#: AKModel/models.py:1343 msgid "Severity level of the violation" msgstr "Schweregrad der Verletzung" -#: AKModel/models.py:708 +#: AKModel/models.py:1350 msgid "AK(s) belonging to this constraint" msgstr "AK(s), die zu diesem Constraint gehören" -#: AKModel/models.py:710 +#: AKModel/models.py:1352 msgid "AK Slot(s) belonging to this constraint" msgstr "AK Slot(s), die zu diesem Constraint gehören" -#: AKModel/models.py:712 +#: AKModel/models.py:1354 msgid "AK Owner belonging to this constraint" msgstr "AK Leitung(en), die zu diesem Constraint gehören" -#: AKModel/models.py:714 +#: AKModel/models.py:1356 msgid "Room belonging to this constraint" msgstr "Raum, der zu diesem Constraint gehört" -#: AKModel/models.py:717 +#: AKModel/models.py:1359 msgid "AK Requirement belonging to this constraint" msgstr "AK Anforderung, die zu diesem Constraint gehört" -#: AKModel/models.py:719 +#: AKModel/models.py:1361 msgid "AK Category belonging to this constraint" msgstr "AK Kategorie, di zu diesem Constraint gehört" -#: AKModel/models.py:721 +#: AKModel/models.py:1363 msgid "Comment" msgstr "Kommentar" -#: AKModel/models.py:721 +#: AKModel/models.py:1363 msgid "Comment or further details for this violation" msgstr "Kommentar oder weitere Details zu dieser Vereletzung" -#: AKModel/models.py:724 +#: AKModel/models.py:1366 msgid "Timestamp" msgstr "Timestamp" -#: AKModel/models.py:724 +#: AKModel/models.py:1366 msgid "Time of creation" msgstr "Zeitpunkt der ERstellung" -#: AKModel/models.py:725 +#: AKModel/models.py:1367 msgid "Manually Resolved" msgstr "Manuell behoben" -#: AKModel/models.py:726 +#: AKModel/models.py:1368 msgid "Mark this violation manually as resolved" msgstr "Markiere diese Verletzung manuell als behoben" -#: AKModel/models.py:753 AKModel/templates/admin/AKModel/aks_by_user.html:22 +#: AKModel/models.py:1395 AKModel/templates/admin/AKModel/aks_by_user.html:22 #: AKModel/templates/admin/AKModel/requirements_overview.html:27 msgid "Details" msgstr "Details" -#: AKModel/models.py:887 +#: AKModel/models.py:1530 msgid "Default Slot" msgstr "Standardslot" -#: AKModel/models.py:892 +#: AKModel/models.py:1535 msgid "Slot End" msgstr "Ende des Slots" -#: AKModel/models.py:892 +#: AKModel/models.py:1535 msgid "Time and date the slot ends" msgstr "Zeit und Datum zu der der Slot endet" -#: AKModel/models.py:897 +#: AKModel/models.py:1540 msgid "Primary categories" msgstr "Primäre Kategorien" -#: AKModel/models.py:898 +#: AKModel/models.py:1542 msgid "Categories that should be assigned to this slot primarily" msgstr "Kategorieren, die diesem Slot primär zugewiesen werden sollen" @@ -1151,7 +1143,7 @@ msgid "No AKs with this requirement" msgstr "Kein AK mit dieser Anforderung" #: AKModel/templates/admin/AKModel/requirements_overview.html:45 -#: AKModel/views/status.py:183 +#: AKModel/views/status.py:191 msgid "Add Requirement" msgstr "Anforderung hinzufügen" @@ -1237,11 +1229,11 @@ msgstr "Login" msgid "Register" msgstr "Registrieren" -#: AKModel/views/ak.py:17 +#: AKModel/views/ak.py:19 msgid "Requirements for Event" msgstr "Anforderungen für das Event" -#: AKModel/views/ak.py:34 +#: AKModel/views/ak.py:36 msgid "AK CSV Export" msgstr "AK-CSV-Export" @@ -1253,31 +1245,31 @@ msgstr "AK-JSON-Export" msgid "AK Wiki Export" msgstr "AK-Wiki-Export" -#: AKModel/views/ak.py:59 AKModel/views/manage.py:53 +#: AKModel/views/ak.py:83 AKModel/views/manage.py:55 msgid "Wishes" msgstr "Wünsche" -#: AKModel/views/ak.py:71 +#: AKModel/views/ak.py:95 msgid "Delete AK Orga Messages" msgstr "AK-Organachrichten löschen" -#: AKModel/views/ak.py:89 +#: AKModel/views/ak.py:113 msgid "AK Orga Messages successfully deleted" msgstr "AK-Organachrichten erfolgreich gelöscht" -#: AKModel/views/ak.py:101 +#: AKModel/views/ak.py:125 msgid "Interest of the following AKs will be set to not filled (-1):" msgstr "Interesse an den folgenden AKs wird auf nicht ausgefüllt (-1) gesetzt:" -#: AKModel/views/ak.py:102 +#: AKModel/views/ak.py:126 msgid "Reset of interest in AKs successful." msgstr "Interesse an AKs erfolgreich zurückgesetzt." -#: AKModel/views/ak.py:116 +#: AKModel/views/ak.py:140 msgid "Interest counter of the following AKs will be set to 0:" msgstr "Interessensbekundungszähler der folgenden AKs wird auf 0 gesetzt:" -#: AKModel/views/ak.py:117 +#: AKModel/views/ak.py:141 msgid "AKs' interest counters set back to 0." msgstr "Interessenszähler der AKs zurückgesetzt" @@ -1291,85 +1283,85 @@ msgstr "'%(obj)s' kopiert" msgid "Could not copy '%(obj)s' (%(error)s)" msgstr "'%(obj)s' konnte nicht kopiert werden (%(error)s)" -#: AKModel/views/manage.py:35 AKModel/views/status.py:150 +#: AKModel/views/manage.py:37 AKModel/views/status.py:158 msgid "Export AK Slides" msgstr "AK-Folien exportieren" -#: AKModel/views/manage.py:48 +#: AKModel/views/manage.py:50 msgid "Symbols" msgstr "Symbole" -#: AKModel/views/manage.py:49 +#: AKModel/views/manage.py:51 msgid "Who?" msgstr "Wer?" -#: AKModel/views/manage.py:50 +#: AKModel/views/manage.py:52 msgid "Duration(s)" msgstr "Dauer(n)" -#: AKModel/views/manage.py:51 +#: AKModel/views/manage.py:53 msgid "Reso intention?" msgstr "Resolutionsabsicht?" -#: AKModel/views/manage.py:52 +#: AKModel/views/manage.py:54 msgid "Category (for Wishes)" msgstr "Kategorie (für Wünsche)" -#: AKModel/views/manage.py:101 +#: AKModel/views/manage.py:103 msgid "The following Constraint Violations will be marked as manually resolved" msgstr "" "Die folgenden Constraintverletzungen werden als manuell behoben markiert." -#: AKModel/views/manage.py:102 +#: AKModel/views/manage.py:104 msgid "Constraint Violations marked as resolved" msgstr "Constraintverletzungen als manuell behoben markiert" -#: AKModel/views/manage.py:114 +#: AKModel/views/manage.py:116 msgid "The following Constraint Violations will be set to level 'violation'" msgstr "" "Die folgenden Constraintverletzungen werden auf das Level \"Violation\" " "gesetzt." -#: AKModel/views/manage.py:115 +#: AKModel/views/manage.py:117 msgid "Constraint Violations set to level 'violation'" msgstr "Constraintverletzungen auf Level \"Violation\" gesetzt" -#: AKModel/views/manage.py:127 +#: AKModel/views/manage.py:129 msgid "The following Constraint Violations will be set to level 'warning'" msgstr "" "Die folgenden Constraintverletzungen werden auf das Level 'warning' gesetzt." -#: AKModel/views/manage.py:128 +#: AKModel/views/manage.py:130 msgid "Constraint Violations set to level 'warning'" msgstr "Constraintverletzungen auf Level \"Warning\" gesetzt" -#: AKModel/views/manage.py:140 +#: AKModel/views/manage.py:142 msgid "Publish the plan(s) of:" msgstr "Den Plan/die Pläne veröffentlichen von:" -#: AKModel/views/manage.py:141 +#: AKModel/views/manage.py:143 msgid "Plan published" msgstr "Plan veröffentlicht" -#: AKModel/views/manage.py:153 +#: AKModel/views/manage.py:155 msgid "Unpublish the plan(s) of:" msgstr "Den Plan/die Pläne verbergen von:" -#: AKModel/views/manage.py:154 +#: AKModel/views/manage.py:156 msgid "Plan unpublished" msgstr "Plan verborgen" -#: AKModel/views/manage.py:166 AKModel/views/status.py:134 +#: AKModel/views/manage.py:168 AKModel/views/status.py:134 msgid "Edit Default Slots" msgstr "Standardslots bearbeiten" -#: AKModel/views/manage.py:204 +#: AKModel/views/manage.py:206 #, python-brace-format msgid "Could not update slot {id} since it does not belong to {event}" msgstr "" "Konnte Slot {id} nicht bearbeiten, da er nicht zum Event {event} gehört" -#: AKModel/views/manage.py:235 +#: AKModel/views/manage.py:237 #, python-brace-format msgid "Updated {u} slot(s). created {c} new slot(s) and deleted {d} slot(s)" msgstr "" @@ -1455,14 +1447,20 @@ msgstr "AKs als JSON exportieren" msgid "Export AKs for Wiki" msgstr "AKs im Wiki-Format exportieren" -#: AKModel/views/status.py:179 +#: AKModel/views/status.py:187 msgid "Show AKs for requirements" msgstr "Zu Anforderungen gehörige AKs anzeigen" -#: AKModel/views/status.py:193 +#: AKModel/views/status.py:201 msgid "Event Status" msgstr "Eventstatus" +#~ msgid "Conflicts" +#~ msgstr "Konflikte" + +#~ msgid "Prerequisites" +#~ msgstr "Voraussetzungen" + #~ msgid "Opening time for expression of interest." #~ msgstr "Öffnungszeitpunkt für die Angabe von Interesse an AKs." diff --git a/AKModel/migrations/0064_merge_20250304_0924.py b/AKModel/migrations/0064_merge_20250304_0924.py new file mode 100644 index 0000000000000000000000000000000000000000..2a5eaa2bc3c93c2173347dca0a938537a7c296a6 --- /dev/null +++ b/AKModel/migrations/0064_merge_20250304_0924.py @@ -0,0 +1,13 @@ +# Generated by Django 5.1.6 on 2025-03-04 09:24 + +from django.db import migrations + + +class Migration(migrations.Migration): + dependencies = [ + ('AKModel', '0063_field_validators'), + ('AKModel', '0063_merge_0061_event_export_slot_0062_interest_no_history'), + ] + + operations = [ + ] diff --git a/AKScheduling/locale/de_DE/LC_MESSAGES/django.po b/AKScheduling/locale/de_DE/LC_MESSAGES/django.po index a2fb73ef747f3bc8e7aef7e38ddaef1d28275acd..ab74e8e365ba458be43e7d44b273acacbe4100f0 100644 --- a/AKScheduling/locale/de_DE/LC_MESSAGES/django.po +++ b/AKScheduling/locale/de_DE/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-27 15:13+0000\n" +"POT-Creation-Date: 2025-03-04 10:05+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -107,7 +107,6 @@ msgid "Event Status" msgstr "Event-Status" #: AKScheduling/templates/admin/AKScheduling/constraint_violations.html:113 -#: AKScheduling/views.py:50 msgid "Scheduling" msgstr "Scheduling" @@ -240,7 +239,6 @@ msgstr[1] "" " " #: AKScheduling/templates/admin/AKScheduling/unscheduled.html:7 -#: AKScheduling/views.py:25 msgid "Unscheduled AK Slots" msgstr "Noch nicht geschedulte AK-Slots" @@ -248,22 +246,10 @@ msgstr "Noch nicht geschedulte AK-Slots" msgid "Count" msgstr "Anzahl" -#: AKScheduling/views.py:91 -msgid "Constraint violations for" -msgstr "Constraintverletzungen für" - -#: AKScheduling/views.py:106 -msgid "AKs requiring special attention for" -msgstr "AKs die besondere Aufmerksamkeit erfordern für" - #: AKScheduling/views.py:152 msgid "Interest updated" msgstr "Interesse aktualisiert" -#: AKScheduling/views.py:166 -msgid "Enter interest" -msgstr "Interesse eingeben" - #: AKScheduling/views.py:210 msgid "Wishes" msgstr "Wünsche" @@ -319,6 +305,15 @@ msgstr "Standardverfügbarkeiten für {count} AKs angelegt" msgid "Constraint Violations" msgstr "Constraintverletzungen" +#~ msgid "Constraint violations for" +#~ msgstr "Constraintverletzungen für" + +#~ msgid "AKs requiring special attention for" +#~ msgstr "AKs die besondere Aufmerksamkeit erfordern für" + +#~ msgid "Enter interest" +#~ msgstr "Interesse eingeben" + #~ msgid "Bitte AK auswählen" #~ msgstr "Please sel" diff --git a/AKSubmission/locale/de_DE/LC_MESSAGES/django.po b/AKSubmission/locale/de_DE/LC_MESSAGES/django.po index f47345a6b052651a9a8e049f95a41be97b463f07..5e4dba47e21abf56812f5c476b7d5d8ef2da2457 100644 --- a/AKSubmission/locale/de_DE/LC_MESSAGES/django.po +++ b/AKSubmission/locale/de_DE/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-27 15:13+0000\n" +"POT-Creation-Date: 2025-03-04 10:05+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -109,21 +109,25 @@ msgstr "AK-Wunsch" #: AKSubmission/templates/AKSubmission/ak_detail.html:186 #, python-format msgid "" -"This AK currently takes place for another <span v-html=\"timeUntilEnd\">" -"%(featured_slot_remaining)s</span> minute(s) in %(room)s. " +"This AK currently takes place for another <span v-" +"html=\"timeUntilEnd\">%(featured_slot_remaining)s</span> minute(s) in " +"%(room)s. " msgstr "" -"Dieser AK findet noch <span v-html=\"timeUntilEnd\">" -"%(featured_slot_remaining)s</span> Minute(n) in %(room)s statt. \n" +"Dieser AK findet noch <span v-" +"html=\"timeUntilEnd\">%(featured_slot_remaining)s</span> Minute(n) in " +"%(room)s statt. \n" " " #: AKSubmission/templates/AKSubmission/ak_detail.html:189 #, python-format msgid "" -"This AK starts in <span v-html=\"timeUntilStart\">" -"%(featured_slot_remaining)s</span> minute(s) in %(room)s. " +"This AK starts in <span v-" +"html=\"timeUntilStart\">%(featured_slot_remaining)s</span> minute(s) in " +"%(room)s. " msgstr "" -"Dieser AK beginnt in <span v-html=\"timeUntilStart\">" -"%(featured_slot_remaining)s</span> Minute(n) in %(room)s. \n" +"Dieser AK beginnt in <span v-" +"html=\"timeUntilStart\">%(featured_slot_remaining)s</span> Minute(n) in " +"%(room)s. \n" " " #: AKSubmission/templates/AKSubmission/ak_detail.html:194 @@ -274,7 +278,7 @@ msgstr "Die Ergebnisse dieses AKs vorstellen" msgid "Intends to submit a resolution" msgstr "Beabsichtigt eine Resolution einzureichen" -#: AKSubmission/templates/AKSubmission/ak_list.html:6 AKSubmission/views.py:84 +#: AKSubmission/templates/AKSubmission/ak_list.html:6 AKSubmission/views.py:82 msgid "All AKs" msgstr "Alle AKs" @@ -400,81 +404,80 @@ msgstr "" msgid "Submit" msgstr "Eintragen" -#: AKSubmission/views.py:127 +#: AKSubmission/views.py:125 msgid "Wishes" msgstr "Wünsche" -#: AKSubmission/views.py:127 +#: AKSubmission/views.py:125 msgid "AKs one would like to have" msgstr "" "AKs die sich gewünscht wurden, aber bei denen noch nicht klar ist, wer sie " "macht. Falls du dir das vorstellen kannst, trag dich einfach ein" -#: AKSubmission/views.py:169 +#: AKSubmission/views.py:167 msgid "Currently planned AKs" msgstr "Aktuell geplante AKs" -#: AKSubmission/views.py:233 -msgid "AKs with Track" -msgstr "AK mit Track" - -#: AKSubmission/views.py:302 +#: AKSubmission/views.py:305 msgid "Event inactive. Cannot create or update." msgstr "Event inaktiv. Hinzufügen/Bearbeiten nicht möglich." -#: AKSubmission/views.py:327 +#: AKSubmission/views.py:330 msgid "AK successfully created" msgstr "AK erfolgreich angelegt" -#: AKSubmission/views.py:400 +#: AKSubmission/views.py:404 msgid "AK successfully updated" msgstr "AK erfolgreich aktualisiert" -#: AKSubmission/views.py:451 +#: AKSubmission/views.py:455 #, python-brace-format msgid "Added '{owner}' as new owner of '{ak.name}'" msgstr "'{owner}' als neue Leitung von '{ak.name}' hinzugefügt" -#: AKSubmission/views.py:555 +#: AKSubmission/views.py:558 msgid "No user selected" msgstr "Keine Person ausgewählt" -#: AKSubmission/views.py:571 +#: AKSubmission/views.py:574 msgid "Person Info successfully updated" msgstr "Personen-Info erfolgreich aktualisiert" -#: AKSubmission/views.py:607 +#: AKSubmission/views.py:610 msgid "AK Slot successfully added" msgstr "AK-Slot erfolgreich angelegt" -#: AKSubmission/views.py:626 +#: AKSubmission/views.py:629 msgid "You cannot edit a slot that has already been scheduled" msgstr "Bereits geplante AK-Slots können nicht mehr bearbeitet werden" -#: AKSubmission/views.py:636 +#: AKSubmission/views.py:639 msgid "AK Slot successfully updated" msgstr "AK-Slot erfolgreich aktualisiert" -#: AKSubmission/views.py:654 +#: AKSubmission/views.py:657 msgid "You cannot delete a slot that has already been scheduled" msgstr "Bereits geplante AK-Slots können nicht mehr gelöscht werden" -#: AKSubmission/views.py:664 +#: AKSubmission/views.py:667 msgid "AK Slot successfully deleted" msgstr "AK-Slot erfolgreich angelegt" -#: AKSubmission/views.py:676 +#: AKSubmission/views.py:679 msgid "Messages" msgstr "Nachrichten" -#: AKSubmission/views.py:686 +#: AKSubmission/views.py:689 msgid "Delete all messages" msgstr "Alle Nachrichten löschen" -#: AKSubmission/views.py:713 +#: AKSubmission/views.py:716 msgid "Message to organizers successfully saved" msgstr "Nachricht an die Organisator*innen erfolgreich gespeichert" +#~ msgid "AKs with Track" +#~ msgstr "AK mit Track" + #~ msgid "" #~ "Due to technical reasons, the link you entered was truncated to a length " #~ "of 200 characters" diff --git a/requirements.txt b/requirements.txt index 9b0938d4a76aff97222757ebd6ac30ac3efef24a..245a09185020520b062f731c6ae2e6cf0f089cf6 100644 --- a/requirements.txt +++ b/requirements.txt @@ -18,6 +18,10 @@ fontawesomefree==6.6.0 # Makes static files (css, fonts) available locally mysqlclient==2.2.7 # for production deployment tzdata==2025.1 +# Testing +beautifulsoup4==4.13.3 +lxml==5.3.1 + # Documentation Sphinx==8.2.3 sphinx-rtd-theme==3.0.2