Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision
  • 520-akowner
  • 520-fix-event-wizard-datepicker
  • 520-fix-scheduling
  • 520-improve-scheduling
  • 520-improve-scheduling-2
  • 520-improve-submission
  • 520-improve-trackmanager
  • 520-improve-wall
  • 520-message-resolved
  • 520-status
  • 520-upgrades
  • add_express_interest_to_ak_overview
  • admin-production-color
  • bugfixes
  • csp
  • featire-ical-export
  • feature-ak-requirement-lists
  • feature-akslide-export-better-filename
  • feature-akslides
  • feature-better-admin
  • feature-better-cv-list
  • feature-colors
  • feature-constraint-checking
  • feature-constraint-checking-wip
  • feature-dashboard-history-button
  • feature-event-status
  • feature-event-wizard
  • feature-export-flag
  • feature-improve-admin
  • feature-improve-filters
  • feature-improved-user-creation-workflow
  • feature-interest-view
  • feature-mails
  • feature-modular-status
  • feature-plan-autoreload
  • feature-present-default
  • feature-register-link
  • feature-remaining-constraint-validation
  • feature-room-import
  • feature-scheduler-improve
  • feature-scheduling-2.0
  • feature-special-attention
  • feature-time-input
  • feature-tracker
  • feature-wiki-wishes
  • feature-wish-slots
  • feature-wizard-buttons
  • features-availabilities
  • fix-ak-times-above-folg
  • fix-api
  • fix-constraint-violation-string
  • fix-cv-checking
  • fix-default-slot-length
  • fix-default-slot-localization
  • fix-doc-minor
  • fix-duration-display
  • fix-event-tz-pytz-update
  • fix-history-interest
  • fix-interest-view
  • fix-js
  • fix-pipeline
  • fix-plan-timezone-now
  • fix-room-add
  • fix-scheduling-drag
  • fix-slot-defaultlength
  • fix-timezone
  • fix-translation-scheduling
  • fix-virtual-room-admin
  • fix-wizard-csp
  • font-locally
  • improve-admin
  • improve-online
  • improve-slides
  • improve-submission-coupling
  • interest_restriction
  • main
  • master
  • meta-debug-toolbar
  • meta-export
  • meta-makemessages
  • meta-performance
  • meta-tests
  • meta-tests-gitlab-test
  • meta-upgrades
  • mollux-master-patch-02906
  • port-availabilites-fullcalendar
  • qs
  • remove-tags
  • renovate/configure
  • renovate/django-4.x
  • renovate/django-5.x
  • renovate/django-bootstrap-datepicker-plus-5.x
  • renovate/django-bootstrap5-23.x
  • renovate/django-bootstrap5-24.x
  • renovate/django-compressor-4.x
  • renovate/django-debug-toolbar-4.x
  • renovate/django-registration-redux-2.x
  • renovate/django-simple-history-3.x
  • renovate/django-split-settings-1.x
  • renovate/django-timezone-field-5.x
100 results

Target

Select target project
  • konstantin/akplanning
  • matedealer/akplanning
  • kif/akplanning
  • mirco/akplanning
  • lordofthevoid/akplanning
  • voidptr/akplanning
  • xayomer/akplanning-fork
  • mollux/akplanning
  • neumantm/akplanning
  • mmarx/akplanning
  • nerf/akplanning
  • felix_bonn/akplanning
  • sebastian.uschmann/akplanning
13 results
Select Git revision
  • komasolver
  • main
  • renovate/django_csp-4.x
3 results
Show changes
Commits on Source (3)
Showing
with 278 additions and 189 deletions
...@@ -8,7 +8,7 @@ msgid "" ...@@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-29 13:36+0000\n" "POT-Creation-Date: 2022-12-27 01:09+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
...@@ -101,6 +101,10 @@ msgstr "AK-Plan" ...@@ -101,6 +101,10 @@ msgstr "AK-Plan"
msgid "AK Submission" msgid "AK Submission"
msgstr "AK-Einreichung" msgstr "AK-Einreichung"
#: AKDashboard/templates/AKDashboard/dashboard_row.html:57
msgid "AK History"
msgstr "AK-Verlauf"
#: AKDashboard/views.py:42 #: AKDashboard/views.py:42
#, python-format #, python-format
msgid "New AK: %(ak)s." msgid "New AK: %(ak)s."
......
...@@ -24,7 +24,7 @@ ...@@ -24,7 +24,7 @@
{% include "AKDashboard/dashboard_row.html" %} {% include "AKDashboard/dashboard_row.html" %}
{% if recent_changes|length > 0 %} {% if recent_changes|length > 0 %}
<h3 class="mt-1">{% trans "Recent" %}:</h3> <h3 class="mt-1" id="history">{% trans "Recent" %}:</h3>
<ul id="recent-changes-list"> <ul id="recent-changes-list">
{% for recent in recent_changes %} {% for recent in recent_changes %}
<li><a href="{{ recent.link }}">{% fa5_icon recent.icon.0 recent.icon.1 %} {{ recent.text }}</a> <span style="color: #999999;">{{ recent.timestamp | timezone:event.timezone | date:"d.m. H:i" }}</span></li> <li><a href="{{ recent.link }}">{% fa5_icon recent.icon.0 recent.icon.1 %} {{ recent.text }}</a> <span style="color: #999999;">{{ recent.timestamp | timezone:event.timezone | date:"d.m. H:i" }}</span></li>
......
...@@ -50,6 +50,13 @@ ...@@ -50,6 +50,13 @@
</div> </div>
</a> </a>
{% endif %} {% endif %}
<a class="dashboard-box btn btn-primary"
href="{% url 'dashboard:dashboard_event' slug=event.slug %}#history">
<div class="col-sm-12 col-md-3 col-lg-2 dashboard-button">
<span class="fa fa-history"></span>
<span class='text'>{% trans 'AK History' %}</span>
</div>
</a>
{% for button in event.dashboardbutton_set.all %} {% for button in event.dashboardbutton_set.all %}
<a class="dashboard-box btn btn-{{ button.get_color_display }}" <a class="dashboard-box btn btn-{{ button.get_color_display }}"
href="{{ button.url }}"> href="{{ button.url }}">
......
...@@ -377,6 +377,7 @@ ...@@ -377,6 +377,7 @@
"notes": "", "notes": "",
"interest": -1, "interest": -1,
"interest_counter": 0, "interest_counter": 0,
"include_in_export": false,
"event": 2, "event": 2,
"owners": [ "owners": [
1 1
......
...@@ -2,7 +2,7 @@ msgid "" ...@@ -2,7 +2,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-11-30 01:57+0100\n" "POT-Creation-Date: 2022-12-27 00:33+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
...@@ -25,11 +25,11 @@ msgstr "Status" ...@@ -25,11 +25,11 @@ msgstr "Status"
msgid "Toggle plan visibility" msgid "Toggle plan visibility"
msgstr "Plansichtbarkeit ändern" msgstr "Plansichtbarkeit ändern"
#: AKModel/admin.py:73 AKModel/admin.py:84 AKModel/views.py:485 #: AKModel/admin.py:73 AKModel/admin.py:84 AKModel/views.py:491
msgid "Publish plan" msgid "Publish plan"
msgstr "Plan veröffentlichen" msgstr "Plan veröffentlichen"
#: AKModel/admin.py:76 AKModel/admin.py:89 AKModel/views.py:495 #: AKModel/admin.py:76 AKModel/admin.py:89 AKModel/views.py:501
msgid "Unpublish plan" msgid "Unpublish plan"
msgstr "Plan verbergen" msgstr "Plan verbergen"
...@@ -53,11 +53,11 @@ msgstr "In Wiki-Syntax exportieren" ...@@ -53,11 +53,11 @@ msgstr "In Wiki-Syntax exportieren"
msgid "Cannot export AKs from more than one event at the same time." msgid "Cannot export AKs from more than one event at the same time."
msgstr "Kann nicht AKs von mehreren Events zur selben Zeit exportieren." msgstr "Kann nicht AKs von mehreren Events zur selben Zeit exportieren."
#: AKModel/admin.py:236 AKModel/views.py:465 #: AKModel/admin.py:236 AKModel/views.py:471
msgid "Reset interest in AKs" msgid "Reset interest in AKs"
msgstr "Interesse an AKs zurücksetzen" msgstr "Interesse an AKs zurücksetzen"
#: AKModel/admin.py:241 AKModel/views.py:475 #: AKModel/admin.py:241 AKModel/views.py:481
msgid "Reset AKs' interest counters" msgid "Reset AKs' interest counters"
msgstr "Interessenszähler der AKs zurücksetzen" msgstr "Interessenszähler der AKs zurücksetzen"
...@@ -65,15 +65,15 @@ msgstr "Interessenszähler der AKs zurücksetzen" ...@@ -65,15 +65,15 @@ msgstr "Interessenszähler der AKs zurücksetzen"
msgid "AK Details" msgid "AK Details"
msgstr "AK-Details" msgstr "AK-Details"
#: AKModel/admin.py:384 AKModel/views.py:435 #: AKModel/admin.py:384 AKModel/views.py:441
msgid "Mark Constraint Violations as manually resolved" msgid "Mark Constraint Violations as manually resolved"
msgstr "Markiere Constraintverletzungen als manuell behoben" msgstr "Markiere Constraintverletzungen als manuell behoben"
#: AKModel/admin.py:389 AKModel/views.py:445 #: AKModel/admin.py:389 AKModel/views.py:451
msgid "Set Constraint Violations to level \"violation\"" msgid "Set Constraint Violations to level \"violation\""
msgstr "Constraintverletzungen auf Level \"Violation\" setzen" msgstr "Constraintverletzungen auf Level \"Violation\" setzen"
#: AKModel/admin.py:394 AKModel/views.py:455 #: AKModel/admin.py:394 AKModel/views.py:461
msgid "Set Constraint Violations to level \"warning\"" msgid "Set Constraint Violations to level \"warning\""
msgstr "Constraintverletzungen auf Level \"Warning\" setzen" msgstr "Constraintverletzungen auf Level \"Warning\" setzen"
...@@ -103,15 +103,15 @@ msgstr "Bitte Verfügbarkeiten eintragen!" ...@@ -103,15 +103,15 @@ msgstr "Bitte Verfügbarkeiten eintragen!"
#: AKModel/availability/models.py:38 AKModel/models.py:56 AKModel/models.py:128 #: AKModel/availability/models.py:38 AKModel/models.py:56 AKModel/models.py:128
#: AKModel/models.py:183 AKModel/models.py:202 AKModel/models.py:234 #: AKModel/models.py:183 AKModel/models.py:202 AKModel/models.py:234
#: AKModel/models.py:288 AKModel/models.py:354 AKModel/models.py:387 #: AKModel/models.py:288 AKModel/models.py:357 AKModel/models.py:390
#: AKModel/models.py:458 AKModel/models.py:499 AKModel/models.py:664 #: AKModel/models.py:461 AKModel/models.py:502 AKModel/models.py:667
msgid "Event" msgid "Event"
msgstr "Event" msgstr "Event"
#: AKModel/availability/models.py:39 AKModel/models.py:129 #: AKModel/availability/models.py:39 AKModel/models.py:129
#: AKModel/models.py:184 AKModel/models.py:203 AKModel/models.py:235 #: AKModel/models.py:184 AKModel/models.py:203 AKModel/models.py:235
#: AKModel/models.py:289 AKModel/models.py:355 AKModel/models.py:388 #: AKModel/models.py:289 AKModel/models.py:358 AKModel/models.py:391
#: AKModel/models.py:459 AKModel/models.py:500 AKModel/models.py:665 #: AKModel/models.py:462 AKModel/models.py:503 AKModel/models.py:668
msgid "Associated event" msgid "Associated event"
msgstr "Zugehöriges Event" msgstr "Zugehöriges Event"
...@@ -123,8 +123,8 @@ msgstr "Person" ...@@ -123,8 +123,8 @@ msgstr "Person"
msgid "Person whose availability this is" msgid "Person whose availability this is"
msgstr "Person deren Verfügbarkeit hier abgebildet wird" msgstr "Person deren Verfügbarkeit hier abgebildet wird"
#: AKModel/availability/models.py:56 AKModel/models.py:358 #: AKModel/availability/models.py:56 AKModel/models.py:361
#: AKModel/models.py:377 AKModel/models.py:508 #: AKModel/models.py:380 AKModel/models.py:511
msgid "Room" msgid "Room"
msgstr "Raum" msgstr "Raum"
...@@ -132,8 +132,8 @@ msgstr "Raum" ...@@ -132,8 +132,8 @@ msgstr "Raum"
msgid "Room whose availability this is" msgid "Room whose availability this is"
msgstr "Raum dessen Verfügbarkeit hier abgebildet wird" msgstr "Raum dessen Verfügbarkeit hier abgebildet wird"
#: AKModel/availability/models.py:65 AKModel/models.py:294 #: AKModel/availability/models.py:65 AKModel/models.py:297
#: AKModel/models.py:376 AKModel/models.py:453 #: AKModel/models.py:379 AKModel/models.py:456
msgid "AK" msgid "AK"
msgstr "AK" msgstr "AK"
...@@ -142,7 +142,7 @@ msgid "AK whose availability this is" ...@@ -142,7 +142,7 @@ msgid "AK whose availability this is"
msgstr "Verfügbarkeiten" msgstr "Verfügbarkeiten"
#: AKModel/availability/models.py:74 AKModel/models.py:187 #: AKModel/availability/models.py:74 AKModel/models.py:187
#: AKModel/models.py:514 #: AKModel/models.py:517
msgid "AK Category" msgid "AK Category"
msgstr "AK-Kategorie" msgstr "AK-Kategorie"
...@@ -208,7 +208,7 @@ msgstr "" ...@@ -208,7 +208,7 @@ msgstr ""
"fürWünsche markieren, z.B. um während der Präsentation auf einem Touchscreen " "fürWünsche markieren, z.B. um während der Präsentation auf einem Touchscreen "
"ausgefüllt zu werden?" "ausgefüllt zu werden?"
#: AKModel/forms.py:113 AKModel/models.py:658 #: AKModel/forms.py:113 AKModel/models.py:661
msgid "Default Slots" msgid "Default Slots"
msgstr "Standardslots" msgstr "Standardslots"
...@@ -223,8 +223,8 @@ msgid "" ...@@ -223,8 +223,8 @@ msgid ""
"Delimiter: Semicolon" "Delimiter: Semicolon"
msgstr "" msgstr ""
"Raumdetails im CSV-Format eingeben. Benötigte Spalte ist \"name\", optionale " "Raumdetails im CSV-Format eingeben. Benötigte Spalte ist \"name\", optionale "
"Spalten sind \"location\", \"capacity\", und \"url\" for Online-/Hybridräume" "Spalten sind \"location\", \"capacity\", und \"url\" for Online-/"
"Trennzeichen: Semikolon" "HybridräumeTrennzeichen: Semikolon"
#: AKModel/forms.py:136 #: AKModel/forms.py:136
msgid "CSV must contain a name column" msgid "CSV must contain a name column"
...@@ -232,7 +232,7 @@ msgstr "CSV muss eine name-Spalte enthalten" ...@@ -232,7 +232,7 @@ msgstr "CSV muss eine name-Spalte enthalten"
#: AKModel/models.py:18 AKModel/models.py:175 AKModel/models.py:199 #: AKModel/models.py:18 AKModel/models.py:175 AKModel/models.py:199
#: AKModel/models.py:218 AKModel/models.py:232 AKModel/models.py:250 #: AKModel/models.py:218 AKModel/models.py:232 AKModel/models.py:250
#: AKModel/models.py:346 #: AKModel/models.py:349
msgid "Name" msgid "Name"
msgstr "Name" msgstr "Name"
...@@ -266,7 +266,7 @@ msgstr "Zeitzone" ...@@ -266,7 +266,7 @@ msgstr "Zeitzone"
msgid "Time Zone where this event takes place in" msgid "Time Zone where this event takes place in"
msgstr "Zeitzone in der das Event stattfindet" msgstr "Zeitzone in der das Event stattfindet"
#: AKModel/models.py:27 AKModel/views.py:246 #: AKModel/models.py:27 AKModel/views.py:251
msgid "Start" msgid "Start"
msgstr "Start" msgstr "Start"
...@@ -406,7 +406,7 @@ msgstr "Internet Link" ...@@ -406,7 +406,7 @@ msgstr "Internet Link"
msgid "Link to Homepage" msgid "Link to Homepage"
msgstr "Link zu Homepage oder Webseite" msgstr "Link zu Homepage oder Webseite"
#: AKModel/models.py:132 AKModel/models.py:507 #: AKModel/models.py:132 AKModel/models.py:510
msgid "AK Owner" msgid "AK Owner"
msgstr "AK-Leitung" msgstr "AK-Leitung"
...@@ -478,7 +478,7 @@ msgstr "AK-Tags" ...@@ -478,7 +478,7 @@ msgstr "AK-Tags"
msgid "Name of the Requirement" msgid "Name of the Requirement"
msgstr "Name der Anforderung" msgstr "Name der Anforderung"
#: AKModel/models.py:238 AKModel/models.py:511 #: AKModel/models.py:238 AKModel/models.py:514
msgid "AK Requirement" msgid "AK Requirement"
msgstr "AK-Anforderung" msgstr "AK-Anforderung"
...@@ -617,263 +617,271 @@ msgstr "Interessenszähler" ...@@ -617,263 +617,271 @@ msgstr "Interessenszähler"
msgid "People who have indicated interest online" msgid "People who have indicated interest online"
msgstr "Anzahl Personen, die online Interesse bekundet haben" msgstr "Anzahl Personen, die online Interesse bekundet haben"
#: AKModel/models.py:295 AKModel/models.py:502 #: AKModel/models.py:291
msgid "Export?"
msgstr "Export?"
#: AKModel/models.py:292
msgid "Include AK in wiki export?"
msgstr "AK bei Wiki-Export berücksichtigen?"
#: AKModel/models.py:298 AKModel/models.py:505
#: AKModel/templates/admin/AKModel/status.html:57 #: AKModel/templates/admin/AKModel/status.html:57
#: AKModel/templates/admin/AKModel/status.html:64 AKModel/views.py:364 #: AKModel/templates/admin/AKModel/status.html:64 AKModel/views.py:369
msgid "AKs" msgid "AKs"
msgstr "AKs" msgstr "AKs"
#: AKModel/models.py:346 #: AKModel/models.py:349
msgid "Name or number of the room" msgid "Name or number of the room"
msgstr "Name oder Nummer des Raums" msgstr "Name oder Nummer des Raums"
#: AKModel/models.py:347 #: AKModel/models.py:350
msgid "Location" msgid "Location"
msgstr "Ort" msgstr "Ort"
#: AKModel/models.py:348 #: AKModel/models.py:351
msgid "Name or number of the location" msgid "Name or number of the location"
msgstr "Name oder Nummer des Ortes" msgstr "Name oder Nummer des Ortes"
#: AKModel/models.py:349 #: AKModel/models.py:352
msgid "Capacity" msgid "Capacity"
msgstr "Kapazität" msgstr "Kapazität"
#: AKModel/models.py:350 #: AKModel/models.py:353
msgid "Maximum number of people (-1 for unlimited)." msgid "Maximum number of people (-1 for unlimited)."
msgstr "Maximale Personenzahl (-1 wenn unbeschränkt)." msgstr "Maximale Personenzahl (-1 wenn unbeschränkt)."
#: AKModel/models.py:351 #: AKModel/models.py:354
msgid "Properties" msgid "Properties"
msgstr "Eigenschaften" msgstr "Eigenschaften"
#: AKModel/models.py:352 #: AKModel/models.py:355
msgid "AK requirements fulfilled by the room" msgid "AK requirements fulfilled by the room"
msgstr "AK-Anforderungen, die dieser Raum erfüllt" msgstr "AK-Anforderungen, die dieser Raum erfüllt"
#: AKModel/models.py:359 AKModel/templates/admin/AKModel/status.html:40 #: AKModel/models.py:362 AKModel/templates/admin/AKModel/status.html:40
msgid "Rooms" msgid "Rooms"
msgstr "Räume" msgstr "Räume"
#: AKModel/models.py:376 #: AKModel/models.py:379
msgid "AK being mapped" msgid "AK being mapped"
msgstr "AK, der zugeordnet wird" msgstr "AK, der zugeordnet wird"
#: AKModel/models.py:378 #: AKModel/models.py:381
msgid "Room the AK will take place in" msgid "Room the AK will take place in"
msgstr "Raum in dem der AK stattfindet" msgstr "Raum in dem der AK stattfindet"
#: AKModel/models.py:379 AKModel/models.py:661 #: AKModel/models.py:382 AKModel/models.py:664
msgid "Slot Begin" msgid "Slot Begin"
msgstr "Beginn des Slots" msgstr "Beginn des Slots"
#: AKModel/models.py:379 AKModel/models.py:661 #: AKModel/models.py:382 AKModel/models.py:664
msgid "Time and date the slot begins" msgid "Time and date the slot begins"
msgstr "Zeit und Datum zu der der AK beginnt" msgstr "Zeit und Datum zu der der AK beginnt"
#: AKModel/models.py:381 #: AKModel/models.py:384
msgid "Duration" msgid "Duration"
msgstr "Dauer" msgstr "Dauer"
#: AKModel/models.py:382 #: AKModel/models.py:385
msgid "Length in hours" msgid "Length in hours"
msgstr "Länge in Stunden" msgstr "Länge in Stunden"
#: AKModel/models.py:384 #: AKModel/models.py:387
msgid "Scheduling fixed" msgid "Scheduling fixed"
msgstr "Planung fix" msgstr "Planung fix"
#: AKModel/models.py:385 #: AKModel/models.py:388
msgid "Length and time of this AK should not be changed" msgid "Length and time of this AK should not be changed"
msgstr "Dauer und Zeit dieses AKs sollten nicht verändert werden" msgstr "Dauer und Zeit dieses AKs sollten nicht verändert werden"
#: AKModel/models.py:390 #: AKModel/models.py:393
msgid "Last update" msgid "Last update"
msgstr "Letzte Aktualisierung" msgstr "Letzte Aktualisierung"
#: AKModel/models.py:393 #: AKModel/models.py:396
msgid "AK Slot" msgid "AK Slot"
msgstr "AK-Slot" msgstr "AK-Slot"
#: AKModel/models.py:394 AKModel/models.py:504 #: AKModel/models.py:397 AKModel/models.py:507
msgid "AK Slots" msgid "AK Slots"
msgstr "AK-Slot" msgstr "AK-Slot"
#: AKModel/models.py:416 AKModel/models.py:425 #: AKModel/models.py:419 AKModel/models.py:428
msgid "Not scheduled yet" msgid "Not scheduled yet"
msgstr "Noch nicht geplant" msgstr "Noch nicht geplant"
#: AKModel/models.py:454 #: AKModel/models.py:457
msgid "AK this message belongs to" msgid "AK this message belongs to"
msgstr "AK zu dem die Nachricht gehört" msgstr "AK zu dem die Nachricht gehört"
#: AKModel/models.py:455 #: AKModel/models.py:458
msgid "Message text" msgid "Message text"
msgstr "Nachrichtentext" msgstr "Nachrichtentext"
#: AKModel/models.py:456 #: AKModel/models.py:459
msgid "Message to the organizers. This is not publicly visible." msgid "Message to the organizers. This is not publicly visible."
msgstr "" msgstr ""
"Nachricht an die Organisator*innen. Diese ist nicht öffentlich sichtbar." "Nachricht an die Organisator*innen. Diese ist nicht öffentlich sichtbar."
#: AKModel/models.py:462 #: AKModel/models.py:465
msgid "AK Orga Message" msgid "AK Orga Message"
msgstr "AK-Organachricht" msgstr "AK-Organachricht"
#: AKModel/models.py:463 #: AKModel/models.py:466
msgid "AK Orga Messages" msgid "AK Orga Messages"
msgstr "AK-Organachrichten" msgstr "AK-Organachrichten"
#: AKModel/models.py:472 #: AKModel/models.py:475
msgid "Constraint Violation" msgid "Constraint Violation"
msgstr "Constraintverletzung" msgstr "Constraintverletzung"
#: AKModel/models.py:473 AKModel/templates/admin/AKModel/status.html:87 #: AKModel/models.py:476 AKModel/templates/admin/AKModel/status.html:87
msgid "Constraint Violations" msgid "Constraint Violations"
msgstr "Constraintverletzungen" msgstr "Constraintverletzungen"
#: AKModel/models.py:477 #: AKModel/models.py:480
msgid "Owner has two parallel slots" msgid "Owner has two parallel slots"
msgstr "Leitung hat zwei Slots parallel" msgstr "Leitung hat zwei Slots parallel"
#: AKModel/models.py:478 #: AKModel/models.py:481
msgid "AK Slot was scheduled outside the AK's availabilities" msgid "AK Slot was scheduled outside the AK's availabilities"
msgstr "AK Slot wurde außerhalb der Verfügbarkeit des AKs platziert" msgstr "AK Slot wurde außerhalb der Verfügbarkeit des AKs platziert"
#: AKModel/models.py:479 #: AKModel/models.py:482
msgid "Room has two AK slots scheduled at the same time" msgid "Room has two AK slots scheduled at the same time"
msgstr "Raum hat zwei AK Slots gleichzeitig" msgstr "Raum hat zwei AK Slots gleichzeitig"
#: AKModel/models.py:480 #: AKModel/models.py:483
msgid "Room does not satisfy the requirement of the scheduled AK" msgid "Room does not satisfy the requirement of the scheduled AK"
msgstr "Room erfüllt die Anforderungen des platzierten AKs nicht" msgstr "Room erfüllt die Anforderungen des platzierten AKs nicht"
#: AKModel/models.py:481 #: AKModel/models.py:484
msgid "AK Slot is scheduled at the same time as an AK listed as a conflict" msgid "AK Slot is scheduled at the same time as an AK listed as a conflict"
msgstr "" msgstr ""
"AK Slot wurde wurde zur gleichen Zeit wie ein Konflikt des AKs platziert" "AK Slot wurde wurde zur gleichen Zeit wie ein Konflikt des AKs platziert"
#: AKModel/models.py:482 #: AKModel/models.py:485
msgid "AK Slot is scheduled before an AK listed as a prerequisite" msgid "AK Slot is scheduled before an AK listed as a prerequisite"
msgstr "AK Slot wurde vor einem als Voraussetzung gelisteten AK platziert" msgstr "AK Slot wurde vor einem als Voraussetzung gelisteten AK platziert"
#: AKModel/models.py:484 #: AKModel/models.py:487
msgid "" msgid ""
"AK Slot for AK with intention to submit a resolution is scheduled after " "AK Slot for AK with intention to submit a resolution is scheduled after "
"resolution deadline" "resolution deadline"
msgstr "" msgstr ""
"AK Slot eines AKs mit Resoabsicht wurde nach der Resodeadline platziert" "AK Slot eines AKs mit Resoabsicht wurde nach der Resodeadline platziert"
#: AKModel/models.py:485 #: AKModel/models.py:488
msgid "AK Slot in a category is outside that categories availabilities" msgid "AK Slot in a category is outside that categories availabilities"
msgstr "AK Slot wurde außerhalb der Verfügbarkeiten seiner Kategorie" msgstr "AK Slot wurde außerhalb der Verfügbarkeiten seiner Kategorie"
#: AKModel/models.py:486 #: AKModel/models.py:489
msgid "Two AK Slots for the same AK scheduled at the same time" msgid "Two AK Slots for the same AK scheduled at the same time"
msgstr "Zwei AK Slots eines AKs wurden zur selben Zeit platziert" msgstr "Zwei AK Slots eines AKs wurden zur selben Zeit platziert"
#: AKModel/models.py:487 #: AKModel/models.py:490
msgid "Room does not have enough space for interest in scheduled AK Slot" 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" msgstr "Room hat nicht genug Platz für das Interesse am geplanten AK-Slot"
#: AKModel/models.py:488 #: AKModel/models.py:491
msgid "AK Slot is scheduled outside the event's availabilities" msgid "AK Slot is scheduled outside the event's availabilities"
msgstr "AK Slot wurde außerhalb der Verfügbarkeit des Events platziert" msgstr "AK Slot wurde außerhalb der Verfügbarkeit des Events platziert"
#: AKModel/models.py:491 #: AKModel/models.py:494
msgid "Warning" msgid "Warning"
msgstr "Warnung" msgstr "Warnung"
#: AKModel/models.py:492 #: AKModel/models.py:495
msgid "Violation" msgid "Violation"
msgstr "Verletzung" msgstr "Verletzung"
#: AKModel/models.py:494 #: AKModel/models.py:497
msgid "Type" msgid "Type"
msgstr "Art" msgstr "Art"
#: AKModel/models.py:495 #: AKModel/models.py:498
msgid "Type of violation, i.e. what kind of constraint was violated" msgid "Type of violation, i.e. what kind of constraint was violated"
msgstr "Art der Verletzung, gibt an welche Art Constraint verletzt wurde" msgstr "Art der Verletzung, gibt an welche Art Constraint verletzt wurde"
#: AKModel/models.py:496 #: AKModel/models.py:499
msgid "Level" msgid "Level"
msgstr "Level" msgstr "Level"
#: AKModel/models.py:497 #: AKModel/models.py:500
msgid "Severity level of the violation" msgid "Severity level of the violation"
msgstr "Schweregrad der Verletzung" msgstr "Schweregrad der Verletzung"
#: AKModel/models.py:503 #: AKModel/models.py:506
msgid "AK(s) belonging to this constraint" msgid "AK(s) belonging to this constraint"
msgstr "AK(s), die zu diesem Constraint gehören" msgstr "AK(s), die zu diesem Constraint gehören"
#: AKModel/models.py:505 #: AKModel/models.py:508
msgid "AK Slot(s) belonging to this constraint" msgid "AK Slot(s) belonging to this constraint"
msgstr "AK Slot(s), die zu diesem Constraint gehören" msgstr "AK Slot(s), die zu diesem Constraint gehören"
#: AKModel/models.py:507 #: AKModel/models.py:510
msgid "AK Owner belonging to this constraint" msgid "AK Owner belonging to this constraint"
msgstr "AK Leitung(en), die zu diesem Constraint gehören" msgstr "AK Leitung(en), die zu diesem Constraint gehören"
#: AKModel/models.py:509 #: AKModel/models.py:512
msgid "Room belonging to this constraint" msgid "Room belonging to this constraint"
msgstr "Raum, der zu diesem Constraint gehört" msgstr "Raum, der zu diesem Constraint gehört"
#: AKModel/models.py:512 #: AKModel/models.py:515
msgid "AK Requirement belonging to this constraint" msgid "AK Requirement belonging to this constraint"
msgstr "AK Anforderung, die zu diesem Constraint gehört" msgstr "AK Anforderung, die zu diesem Constraint gehört"
#: AKModel/models.py:514 #: AKModel/models.py:517
msgid "AK Category belonging to this constraint" msgid "AK Category belonging to this constraint"
msgstr "AK Kategorie, di zu diesem Constraint gehört" msgstr "AK Kategorie, di zu diesem Constraint gehört"
#: AKModel/models.py:516 #: AKModel/models.py:519
msgid "Comment" msgid "Comment"
msgstr "Kommentar" msgstr "Kommentar"
#: AKModel/models.py:516 #: AKModel/models.py:519
msgid "Comment or further details for this violation" msgid "Comment or further details for this violation"
msgstr "Kommentar oder weitere Details zu dieser Vereletzung" msgstr "Kommentar oder weitere Details zu dieser Vereletzung"
#: AKModel/models.py:519 #: AKModel/models.py:522
msgid "Timestamp" msgid "Timestamp"
msgstr "Timestamp" msgstr "Timestamp"
#: AKModel/models.py:519 #: AKModel/models.py:522
msgid "Time of creation" msgid "Time of creation"
msgstr "Zeitpunkt der ERstellung" msgstr "Zeitpunkt der ERstellung"
#: AKModel/models.py:520 #: AKModel/models.py:523
msgid "Manually Resolved" msgid "Manually Resolved"
msgstr "Manuell behoben" msgstr "Manuell behoben"
#: AKModel/models.py:521 #: AKModel/models.py:524
msgid "Mark this violation manually as resolved" msgid "Mark this violation manually as resolved"
msgstr "Markiere diese Verletzung manuell als behoben" msgstr "Markiere diese Verletzung manuell als behoben"
#: AKModel/models.py:548 #: AKModel/models.py:551
#: AKModel/templates/admin/AKModel/requirements_overview.html:27 #: AKModel/templates/admin/AKModel/requirements_overview.html:27
msgid "Details" msgid "Details"
msgstr "Details" msgstr "Details"
#: AKModel/models.py:657 #: AKModel/models.py:660
msgid "Default Slot" msgid "Default Slot"
msgstr "Standardslot" msgstr "Standardslot"
#: AKModel/models.py:662 #: AKModel/models.py:665
msgid "Slot End" msgid "Slot End"
msgstr "Ende des Slots" msgstr "Ende des Slots"
#: AKModel/models.py:662 #: AKModel/models.py:665
msgid "Time and date the slot ends" msgid "Time and date the slot ends"
msgstr "Zeit und Datum zu der der Slot endet" msgstr "Zeit und Datum zu der der Slot endet"
#: AKModel/models.py:667 #: AKModel/models.py:670
msgid "Primary categories" msgid "Primary categories"
msgstr "Primäre Kategorien" msgstr "Primäre Kategorien"
#: AKModel/models.py:668 #: AKModel/models.py:671
msgid "Categories that should be assigned to this slot primarily" msgid "Categories that should be assigned to this slot primarily"
msgstr "Kategorieren, die diesem Slot primär zugewiesen werden sollen" msgstr "Kategorieren, die diesem Slot primär zugewiesen werden sollen"
...@@ -924,7 +932,7 @@ msgid "Successfully imported.<br><br>Do you want to activate your event now?" ...@@ -924,7 +932,7 @@ msgid "Successfully imported.<br><br>Do you want to activate your event now?"
msgstr "Erfolgreich importiert.<br><br>Soll das Event jetzt aktiviert werden?" msgstr "Erfolgreich importiert.<br><br>Soll das Event jetzt aktiviert werden?"
#: AKModel/templates/admin/AKModel/event_wizard/activate.html:27 #: AKModel/templates/admin/AKModel/event_wizard/activate.html:27
#: AKModel/views.py:251 #: AKModel/views.py:256
msgid "Finish" msgid "Finish"
msgstr "Abschluss" msgstr "Abschluss"
...@@ -1017,7 +1025,7 @@ msgstr "Bisher keine Räume" ...@@ -1017,7 +1025,7 @@ msgstr "Bisher keine Räume"
msgid "Add Room" msgid "Add Room"
msgstr "Raum hinzufügen" msgstr "Raum hinzufügen"
#: AKModel/templates/admin/AKModel/status.html:55 AKModel/views.py:582 #: AKModel/templates/admin/AKModel/status.html:55 AKModel/views.py:588
msgid "Import Rooms from CSV" msgid "Import Rooms from CSV"
msgstr "Räume aus CSV importieren" msgstr "Räume aus CSV importieren"
...@@ -1046,7 +1054,7 @@ msgstr "AKs, die besondere Aufmerksamkeit benötigen" ...@@ -1046,7 +1054,7 @@ msgstr "AKs, die besondere Aufmerksamkeit benötigen"
msgid "Enter Interest" msgid "Enter Interest"
msgstr "Interesse erfassen" msgstr "Interesse erfassen"
#: AKModel/templates/admin/AKModel/status.html:94 AKModel/views.py:507 #: AKModel/templates/admin/AKModel/status.html:94 AKModel/views.py:513
msgid "Edit Default Slots" msgid "Edit Default Slots"
msgstr "Standardslots bearbeiten" msgstr "Standardslots bearbeiten"
...@@ -1062,7 +1070,7 @@ msgstr "AKs als CSV exportieren" ...@@ -1062,7 +1070,7 @@ msgstr "AKs als CSV exportieren"
msgid "Export AKs for Wiki" msgid "Export AKs for Wiki"
msgstr "AKs im Wiki-Format exportieren" msgstr "AKs im Wiki-Format exportieren"
#: AKModel/templates/admin/AKModel/status.html:102 AKModel/views.py:334 #: AKModel/templates/admin/AKModel/status.html:102 AKModel/views.py:339
msgid "Export AK Slides" msgid "Export AK Slides"
msgstr "AK-Folien exportieren" msgstr "AK-Folien exportieren"
...@@ -1115,162 +1123,162 @@ msgstr "Login" ...@@ -1115,162 +1123,162 @@ msgstr "Login"
msgid "Register" msgid "Register"
msgstr "Registrieren" msgstr "Registrieren"
#: AKModel/views.py:152 #: AKModel/views.py:154
msgid "Event Status" msgid "Event Status"
msgstr "Eventstatus" msgstr "Eventstatus"
#: AKModel/views.py:165 #: AKModel/views.py:167
msgid "Requirements for Event" msgid "Requirements for Event"
msgstr "Anforderungen für das Event" msgstr "Anforderungen für das Event"
#: AKModel/views.py:179 #: AKModel/views.py:181
msgid "AK CSV Export" msgid "AK CSV Export"
msgstr "AK-CSV-Export" msgstr "AK-CSV-Export"
#: AKModel/views.py:193 #: AKModel/views.py:195
msgid "AK Wiki Export" msgid "AK Wiki Export"
msgstr "AK-Wiki-Export" msgstr "AK-Wiki-Export"
#: AKModel/views.py:201 AKModel/views.py:350 #: AKModel/views.py:206 AKModel/views.py:355
msgid "Wishes" msgid "Wishes"
msgstr "Wünsche" msgstr "Wünsche"
#: AKModel/views.py:222 #: AKModel/views.py:227
msgid "Delete AK Orga Messages" msgid "Delete AK Orga Messages"
msgstr "AK-Organachrichten löschen" msgstr "AK-Organachrichten löschen"
#: AKModel/views.py:237 #: AKModel/views.py:242
msgid "AK Orga Messages successfully deleted" msgid "AK Orga Messages successfully deleted"
msgstr "AK-Organachrichten erfolgreich gelöscht" msgstr "AK-Organachrichten erfolgreich gelöscht"
#: AKModel/views.py:247 #: AKModel/views.py:252
msgid "Settings" msgid "Settings"
msgstr "Einstellungen" msgstr "Einstellungen"
#: AKModel/views.py:248 #: AKModel/views.py:253
msgid "Event created, Prepare Import" msgid "Event created, Prepare Import"
msgstr "Event angelegt, Import vorbereiten" msgstr "Event angelegt, Import vorbereiten"
#: AKModel/views.py:249 #: AKModel/views.py:254
msgid "Import categories & requirements" msgid "Import categories & requirements"
msgstr "Kategorien & Anforderungen kopieren" msgstr "Kategorien & Anforderungen kopieren"
#: AKModel/views.py:250 #: AKModel/views.py:255
msgid "Activate?" msgid "Activate?"
msgstr "Aktivieren?" msgstr "Aktivieren?"
#: AKModel/views.py:309 #: AKModel/views.py:314
#, python-format #, python-format
msgid "Copied '%(obj)s'" msgid "Copied '%(obj)s'"
msgstr "'%(obj)s' kopiert" msgstr "'%(obj)s' kopiert"
#: AKModel/views.py:312 #: AKModel/views.py:317
#, python-format #, python-format
msgid "Could not copy '%(obj)s' (%(error)s)" msgid "Could not copy '%(obj)s' (%(error)s)"
msgstr "'%(obj)s' konnte nicht kopiert werden (%(error)s)" msgstr "'%(obj)s' konnte nicht kopiert werden (%(error)s)"
#: AKModel/views.py:345 #: AKModel/views.py:350
msgid "Symbols" msgid "Symbols"
msgstr "Symbole" msgstr "Symbole"
#: AKModel/views.py:346 #: AKModel/views.py:351
msgid "Who?" msgid "Who?"
msgstr "Wer?" msgstr "Wer?"
#: AKModel/views.py:347 #: AKModel/views.py:352
msgid "Duration(s)" msgid "Duration(s)"
msgstr "Dauer(n)" msgstr "Dauer(n)"
#: AKModel/views.py:348 #: AKModel/views.py:353
msgid "Reso intention?" msgid "Reso intention?"
msgstr "Resolutionsabsicht?" msgstr "Resolutionsabsicht?"
#: AKModel/views.py:349 #: AKModel/views.py:354
msgid "Category (for Wishes)" msgid "Category (for Wishes)"
msgstr "Kategorie (für Wünsche)" msgstr "Kategorie (für Wünsche)"
#: AKModel/views.py:437 #: AKModel/views.py:443
msgid "The following Constraint Violations will be marked as manually resolved" msgid "The following Constraint Violations will be marked as manually resolved"
msgstr "" msgstr ""
"Die folgenden Constraintverletzungen werden als manuell behoben markiert." "Die folgenden Constraintverletzungen werden als manuell behoben markiert."
#: AKModel/views.py:438 #: AKModel/views.py:444
msgid "Constraint Violations marked as resolved" msgid "Constraint Violations marked as resolved"
msgstr "Constraintverletzungen als manuell behoben markiert" msgstr "Constraintverletzungen als manuell behoben markiert"
#: AKModel/views.py:447 #: AKModel/views.py:453
msgid "The following Constraint Violations will be set to level 'violation'" msgid "The following Constraint Violations will be set to level 'violation'"
msgstr "" msgstr ""
"Die folgenden Constraintverletzungen werden auf das Level \"Violation\" " "Die folgenden Constraintverletzungen werden auf das Level \"Violation\" "
"gesetzt." "gesetzt."
#: AKModel/views.py:448 #: AKModel/views.py:454
msgid "Constraint Violations set to level 'violation'" msgid "Constraint Violations set to level 'violation'"
msgstr "Constraintverletzungen auf Level \"Violation\" gesetzt" msgstr "Constraintverletzungen auf Level \"Violation\" gesetzt"
#: AKModel/views.py:457 #: AKModel/views.py:463
msgid "The following Constraint Violations will be set to level 'warning'" msgid "The following Constraint Violations will be set to level 'warning'"
msgstr "" msgstr ""
"Die folgenden Constraintverletzungen werden auf das Level 'warning' gesetzt." "Die folgenden Constraintverletzungen werden auf das Level 'warning' gesetzt."
#: AKModel/views.py:458 #: AKModel/views.py:464
msgid "Constraint Violations set to level 'warning'" msgid "Constraint Violations set to level 'warning'"
msgstr "Constraintverletzungen auf Level \"Warning\" gesetzt" msgstr "Constraintverletzungen auf Level \"Warning\" gesetzt"
#: AKModel/views.py:467 #: AKModel/views.py:473
msgid "Interest of the following AKs will be set to not filled (-1):" 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:" msgstr "Interesse an den folgenden AKs wird auf nicht ausgefüllt (-1) gesetzt:"
#: AKModel/views.py:468 #: AKModel/views.py:474
msgid "Reset of interest in AKs successful." msgid "Reset of interest in AKs successful."
msgstr "Interesse an AKs erfolgreich zurückgesetzt." msgstr "Interesse an AKs erfolgreich zurückgesetzt."
#: AKModel/views.py:477 #: AKModel/views.py:483
msgid "Interest counter of the following AKs will be set to 0:" msgid "Interest counter of the following AKs will be set to 0:"
msgstr "Interessensbekundungszähler der folgenden AKs wird auf 0 gesetzt:" msgstr "Interessensbekundungszähler der folgenden AKs wird auf 0 gesetzt:"
#: AKModel/views.py:478 #: AKModel/views.py:484
msgid "AKs' interest counters set back to 0." msgid "AKs' interest counters set back to 0."
msgstr "Interessenszähler der AKs zurückgesetzt" msgstr "Interessenszähler der AKs zurückgesetzt"
#: AKModel/views.py:487 #: AKModel/views.py:493
msgid "Publish the plan(s) of:" msgid "Publish the plan(s) of:"
msgstr "Den Plan/die Pläne veröffentlichen von:" msgstr "Den Plan/die Pläne veröffentlichen von:"
#: AKModel/views.py:488 #: AKModel/views.py:494
msgid "Plan published" msgid "Plan published"
msgstr "Plan veröffentlicht" msgstr "Plan veröffentlicht"
#: AKModel/views.py:497 #: AKModel/views.py:503
msgid "Unpublish the plan(s) of:" msgid "Unpublish the plan(s) of:"
msgstr "Den Plan/die Pläne verbergen von:" msgstr "Den Plan/die Pläne verbergen von:"
#: AKModel/views.py:498 #: AKModel/views.py:504
msgid "Plan unpublished" msgid "Plan unpublished"
msgstr "Plan verborgen" msgstr "Plan verborgen"
#: AKModel/views.py:544 #: AKModel/views.py:550
#, python-brace-format #, python-brace-format
msgid "Could not update slot {id} since it does not belong to {event}" msgid "Could not update slot {id} since it does not belong to {event}"
msgstr "" msgstr ""
"Konnte Slot {id} nicht bearbeiten, da er nicht zum Event {event} gehört" "Konnte Slot {id} nicht bearbeiten, da er nicht zum Event {event} gehört"
#: AKModel/views.py:574 #: AKModel/views.py:580
#, python-brace-format #, python-brace-format
msgid "Updated {u} slot(s). created {c} new slot(s) and deleted {d} slot(s)" msgid "Updated {u} slot(s). created {c} new slot(s) and deleted {d} slot(s)"
msgstr "" msgstr ""
"{u} Slot(s) aktualisiert, {c} Slot(s) hinzugefügt und {d} Slot(s) gelöscht" "{u} Slot(s) aktualisiert, {c} Slot(s) hinzugefügt und {d} Slot(s) gelöscht"
#: AKModel/views.py:611 #: AKModel/views.py:624
#, python-brace-format #, python-brace-format
msgid "Could not import room {name}: {e}" msgid "Could not import room {name}: {e}"
msgstr "Konnte Raum {name} nicht importieren: {e}" msgstr "Konnte Raum {name} nicht importieren: {e}"
#: AKModel/views.py:615 #: AKModel/views.py:628
#, python-brace-format #, python-brace-format
msgid "Imported {count} room(s)" msgid "Imported {count} room(s)"
msgstr "{count} Raum/Räume importiert" msgstr "{count} Raum/Räume importiert"
#: AKModel/views.py:617 #: AKModel/views.py:630
msgid "No rooms imported" msgid "No rooms imported"
msgstr "Keine Räume importiert" msgstr "Keine Räume importiert"
# Generated by Django 3.2.16 on 2022-12-26 22:38
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('AKModel', '0054_default_slots'),
]
operations = [
migrations.AddField(
model_name='ak',
name='include_in_export',
field=models.BooleanField(default=True, help_text='Include AK in wiki export?', verbose_name='Export?'),
),
]
...@@ -92,10 +92,10 @@ class Event(models.Model): ...@@ -92,10 +92,10 @@ class Event(models.Model):
for category in categories: for category in categories:
ak_list = [] ak_list = []
for ak in category.ak_set.all(): for ak in category.ak_set.all():
if ak.wish: if filter(ak):
ak_wishes.append(ak) if ak.wish:
else: ak_wishes.append(ak)
if filter(ak): else:
ak_list.append(ak) ak_list.append(ak)
if not hide_empty_categories or len(ak_list) > 0: if not hide_empty_categories or len(ak_list) > 0:
categories_with_aks.append((category, ak_list)) categories_with_aks.append((category, ak_list))
...@@ -288,7 +288,10 @@ class AK(models.Model): ...@@ -288,7 +288,10 @@ class AK(models.Model):
event = models.ForeignKey(to=Event, on_delete=models.CASCADE, verbose_name=_('Event'), event = models.ForeignKey(to=Event, on_delete=models.CASCADE, verbose_name=_('Event'),
help_text=_('Associated event')) help_text=_('Associated event'))
history = HistoricalRecords(excluded_fields=['interest_counter']) include_in_export = models.BooleanField(default=True, verbose_name=_('Export?'),
help_text=_("Include AK in wiki export?"))
history = HistoricalRecords(excluded_fields=['interest_counter', 'include_in_export'])
class Meta: class Meta:
verbose_name = _('AK') verbose_name = _('AK')
......
...@@ -110,3 +110,20 @@ class ModelViewTests(BasicViewTests, TestCase): ...@@ -110,3 +110,20 @@ class ModelViewTests(BasicViewTests, TestCase):
view_name_with_prefix, url = self._name_and_url((f'admin:AKModel_{model[1]}_change', {'object_id': m.pk})) view_name_with_prefix, url = self._name_and_url((f'admin:AKModel_{model[1]}_change', {'object_id': m.pk}))
response = self.client.get(url) response = self.client.get(url)
self.assertEqual(response.status_code, 200, msg=f"Edit form for model {model[1]} ({url}) broken") self.assertEqual(response.status_code, 200, msg=f"Edit form for model {model[1]} ({url}) broken")
def test_wiki_export(self):
self.client.force_login(self.admin_user)
export_url = reverse_lazy(f"admin:ak_wiki_export", kwargs={'slug': 'kif42'})
response = self.client.get(export_url)
self.assertEqual(response.status_code, 200, "Export not working at all")
export_count = 0
for category, aks in response.context["categories_with_aks"]:
for ak in aks:
self.assertEqual(ak.include_in_export, True, f"AK with export flag set to False (pk={ak.pk}) included in export")
self.assertNotEqual(ak.pk, 1, "AK known to be excluded from export (PK 1) included in export")
export_count += 1
self.assertEqual(export_count, AK.objects.filter(event_id=2, include_in_export=True).count(),
"Wiki export contained the wrong number of AKs")
...@@ -197,7 +197,10 @@ class AKWikiExportView(AdminViewMixin, DetailView): ...@@ -197,7 +197,10 @@ class AKWikiExportView(AdminViewMixin, DetailView):
def get_context_data(self, **kwargs): def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs) context = super().get_context_data(**kwargs)
categories_with_aks, ak_wishes = context["event"].get_categories_with_aks(wishes_seperately=True) categories_with_aks, ak_wishes = context["event"].get_categories_with_aks(
wishes_seperately=True,
filter=lambda ak: ak.include_in_export
)
context["categories_with_aks"] = [(category.name, ak_list) for category, ak_list in categories_with_aks] context["categories_with_aks"] = [(category.name, ak_list) for category, ak_list in categories_with_aks]
context["categories_with_aks"].append((_("Wishes"), ak_wishes)) context["categories_with_aks"].append((_("Wishes"), ak_wishes))
......
...@@ -8,7 +8,7 @@ msgid "" ...@@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-22 08:02+0000\n" "POT-Creation-Date: 2022-12-27 00:42+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
...@@ -38,7 +38,7 @@ msgstr "Veranstaltung" ...@@ -38,7 +38,7 @@ msgstr "Veranstaltung"
#: AKPlan/templates/AKPlan/plan_index.html:55 #: AKPlan/templates/AKPlan/plan_index.html:55
#: AKPlan/templates/AKPlan/plan_room.html:13 #: AKPlan/templates/AKPlan/plan_room.html:13
#: AKPlan/templates/AKPlan/plan_room.html:59 #: AKPlan/templates/AKPlan/plan_room.html:59
#: AKPlan/templates/AKPlan/plan_wall.html:52 #: AKPlan/templates/AKPlan/plan_wall.html:54
msgid "Room" msgid "Room"
msgstr "Raum" msgstr "Raum"
...@@ -63,12 +63,12 @@ msgid "AK Wall" ...@@ -63,12 +63,12 @@ msgid "AK Wall"
msgstr "AK-Wall" msgstr "AK-Wall"
#: AKPlan/templates/AKPlan/plan_index.html:126 #: AKPlan/templates/AKPlan/plan_index.html:126
#: AKPlan/templates/AKPlan/plan_wall.html:116 #: AKPlan/templates/AKPlan/plan_wall.html:119
msgid "Current AKs" msgid "Current AKs"
msgstr "Aktuelle AKs" msgstr "Aktuelle AKs"
#: AKPlan/templates/AKPlan/plan_index.html:133 #: AKPlan/templates/AKPlan/plan_index.html:133
#: AKPlan/templates/AKPlan/plan_wall.html:121 #: AKPlan/templates/AKPlan/plan_wall.html:124
msgid "Next AKs" msgid "Next AKs"
msgstr "Nächste AKs" msgstr "Nächste AKs"
...@@ -99,7 +99,7 @@ msgstr "Eigenschaften" ...@@ -99,7 +99,7 @@ msgstr "Eigenschaften"
msgid "Track" msgid "Track"
msgstr "Track" msgstr "Track"
#: AKPlan/templates/AKPlan/plan_wall.html:131 #: AKPlan/templates/AKPlan/plan_wall.html:134
msgid "Reload page automatically?" msgid "Reload page automatically?"
msgstr "Seite automatisch neu laden?" msgstr "Seite automatisch neu laden?"
......
...@@ -8,7 +8,7 @@ msgid "" ...@@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-29 13:36+0000\n" "POT-Creation-Date: 2022-12-27 00:42+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
...@@ -17,10 +17,10 @@ msgstr "" ...@@ -17,10 +17,10 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
#: AKPlanning/settings.py:144 #: AKPlanning/settings.py:146
msgid "German" msgid "German"
msgstr "Deutsch" msgstr "Deutsch"
#: AKPlanning/settings.py:145 #: AKPlanning/settings.py:147
msgid "English" msgid "English"
msgstr "Englisch" msgstr "Englisch"
...@@ -8,7 +8,7 @@ msgid "" ...@@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-11-29 00:13+0100\n" "POT-Creation-Date: 2022-12-27 00:42+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
...@@ -41,13 +41,13 @@ msgstr "" ...@@ -41,13 +41,13 @@ msgstr ""
#: AKScheduling/templates/admin/AKScheduling/constraint_violations.html:44 #: AKScheduling/templates/admin/AKScheduling/constraint_violations.html:44
#: AKScheduling/templates/admin/AKScheduling/constraint_violations.html:100 #: AKScheduling/templates/admin/AKScheduling/constraint_violations.html:100
#: AKScheduling/templates/admin/AKScheduling/scheduling.html:214 #: AKScheduling/templates/admin/AKScheduling/scheduling.html:222
#: AKScheduling/templates/admin/AKScheduling/scheduling.html:293 #: AKScheduling/templates/admin/AKScheduling/scheduling.html:360
msgid "No violations" msgid "No violations"
msgstr "Keine Verletzungen" msgstr "Keine Verletzungen"
#: AKScheduling/templates/admin/AKScheduling/constraint_violations.html:77 #: AKScheduling/templates/admin/AKScheduling/constraint_violations.html:77
#: AKScheduling/templates/admin/AKScheduling/scheduling.html:264 #: AKScheduling/templates/admin/AKScheduling/scheduling.html:331
msgid "Violation(s)" msgid "Violation(s)"
msgstr "Verletzung(en)" msgstr "Verletzung(en)"
...@@ -60,12 +60,12 @@ msgid "Reload now" ...@@ -60,12 +60,12 @@ msgid "Reload now"
msgstr "Jetzt neu laden" msgstr "Jetzt neu laden"
#: AKScheduling/templates/admin/AKScheduling/constraint_violations.html:90 #: AKScheduling/templates/admin/AKScheduling/constraint_violations.html:90
#: AKScheduling/templates/admin/AKScheduling/scheduling.html:200 #: AKScheduling/templates/admin/AKScheduling/scheduling.html:211
msgid "Violation" msgid "Violation"
msgstr "Verletzung" msgstr "Verletzung"
#: AKScheduling/templates/admin/AKScheduling/constraint_violations.html:91 #: AKScheduling/templates/admin/AKScheduling/constraint_violations.html:91
#: AKScheduling/templates/admin/AKScheduling/scheduling.html:287 #: AKScheduling/templates/admin/AKScheduling/scheduling.html:354
msgid "Problem" msgid "Problem"
msgstr "Problem" msgstr "Problem"
...@@ -79,7 +79,7 @@ msgstr "Seit" ...@@ -79,7 +79,7 @@ msgstr "Seit"
#: AKScheduling/templates/admin/AKScheduling/constraint_violations.html:106 #: AKScheduling/templates/admin/AKScheduling/constraint_violations.html:106
#: AKScheduling/templates/admin/AKScheduling/manage_tracks.html:243 #: AKScheduling/templates/admin/AKScheduling/manage_tracks.html:243
#: AKScheduling/templates/admin/AKScheduling/scheduling.html:250 #: AKScheduling/templates/admin/AKScheduling/scheduling.html:317
#: AKScheduling/templates/admin/AKScheduling/special_attention.html:48 #: AKScheduling/templates/admin/AKScheduling/special_attention.html:48
#: AKScheduling/templates/admin/AKScheduling/unscheduled.html:34 #: AKScheduling/templates/admin/AKScheduling/unscheduled.html:34
msgid "Event Status" msgid "Event Status"
...@@ -95,7 +95,7 @@ msgstr "Abschicken" ...@@ -95,7 +95,7 @@ msgstr "Abschicken"
#: AKScheduling/templates/admin/AKScheduling/manage_tracks.html:11 #: AKScheduling/templates/admin/AKScheduling/manage_tracks.html:11
#: AKScheduling/templates/admin/AKScheduling/scheduling.html:19 #: AKScheduling/templates/admin/AKScheduling/scheduling.html:19
#: AKScheduling/templates/admin/AKScheduling/scheduling.html:247 #: AKScheduling/templates/admin/AKScheduling/scheduling.html:314
msgid "Scheduling for" msgid "Scheduling for"
msgstr "Scheduling für" msgstr "Scheduling für"
...@@ -147,15 +147,35 @@ msgstr "Event (horizontal)" ...@@ -147,15 +147,35 @@ msgstr "Event (horizontal)"
msgid "Event (Vertical)" msgid "Event (Vertical)"
msgstr "Event (vertikal)" msgstr "Event (vertikal)"
#: AKScheduling/templates/admin/AKScheduling/scheduling.html:147 #: AKScheduling/templates/admin/AKScheduling/scheduling.html:157
msgid "Room" msgid "Room"
msgstr "Raum" msgstr "Raum"
#: AKScheduling/templates/admin/AKScheduling/scheduling.html:261 #: AKScheduling/templates/admin/AKScheduling/scheduling.html:253
msgid "Please choose AK"
msgstr "Bitte AK auswählen"
#: AKScheduling/templates/admin/AKScheduling/scheduling.html:273
msgid "Could not create slot"
msgstr "Konnte Slot nicht anlegen"
#: AKScheduling/templates/admin/AKScheduling/scheduling.html:289
msgid "Add slot"
msgstr "Slot hinzufügen"
#: AKScheduling/templates/admin/AKScheduling/scheduling.html:300
msgid "Add"
msgstr "Hinzufügen"
#: AKScheduling/templates/admin/AKScheduling/scheduling.html:301
msgid "Cancel"
msgstr "Abbrechen"
#: AKScheduling/templates/admin/AKScheduling/scheduling.html:328
msgid "Unscheduled" msgid "Unscheduled"
msgstr "Nicht gescheduled" msgstr "Nicht gescheduled"
#: AKScheduling/templates/admin/AKScheduling/scheduling.html:286 #: AKScheduling/templates/admin/AKScheduling/scheduling.html:353
msgid "Level" msgid "Level"
msgstr "Level" msgstr "Level"
...@@ -191,19 +211,19 @@ msgstr "Noch nicht geschedulte AK-Slots" ...@@ -191,19 +211,19 @@ msgstr "Noch nicht geschedulte AK-Slots"
msgid "Count" msgid "Count"
msgstr "Anzahl" msgstr "Anzahl"
#: AKScheduling/views.py:109 #: AKScheduling/views.py:112
msgid "Interest updated" msgid "Interest updated"
msgstr "Interesse aktualisiert" msgstr "Interesse aktualisiert"
#: AKScheduling/views.py:154 #: AKScheduling/views.py:157
msgid "Wishes" msgid "Wishes"
msgstr "Wünsche" msgstr "Wünsche"
#: AKScheduling/views.py:162 #: AKScheduling/views.py:165
msgid "Cleanup: Delete unscheduled slots for wishes" msgid "Cleanup: Delete unscheduled slots for wishes"
msgstr "Aufräumen: Noch nicht geplante Slots für Wünsche löschen" msgstr "Aufräumen: Noch nicht geplante Slots für Wünsche löschen"
#: AKScheduling/views.py:169 #: AKScheduling/views.py:172
#, python-brace-format #, python-brace-format
msgid "" msgid ""
"The following {count} unscheduled slots of wishes will be deleted:\n" "The following {count} unscheduled slots of wishes will be deleted:\n"
...@@ -215,15 +235,15 @@ msgstr "" ...@@ -215,15 +235,15 @@ msgstr ""
"\n" "\n"
" {slots}" " {slots}"
#: AKScheduling/views.py:176 #: AKScheduling/views.py:179
msgid "Unscheduled slots for wishes successfully deleted" msgid "Unscheduled slots for wishes successfully deleted"
msgstr "Noch nicht geplante Slots für Wünsche erfolgreich gelöscht" msgstr "Noch nicht geplante Slots für Wünsche erfolgreich gelöscht"
#: AKScheduling/views.py:181 #: AKScheduling/views.py:184
msgid "Create default availabilities for AKs" msgid "Create default availabilities for AKs"
msgstr "Standardverfügbarkeiten für AKs anlegen" msgstr "Standardverfügbarkeiten für AKs anlegen"
#: AKScheduling/views.py:188 #: AKScheduling/views.py:191
#, python-brace-format #, python-brace-format
msgid "" msgid ""
"The following {count} AKs don't have any availability information. Create " "The following {count} AKs don't have any availability information. Create "
...@@ -236,15 +256,18 @@ msgstr "" ...@@ -236,15 +256,18 @@ msgstr ""
"\n" "\n"
" {aks}" " {aks}"
#: AKScheduling/views.py:206 #: AKScheduling/views.py:209
#, python-brace-format #, python-brace-format
msgid "Could not create default availabilities for AK: {ak}" msgid "Could not create default availabilities for AK: {ak}"
msgstr "Konnte keine Verfügbarkeit anlegen für AK: {ak}" msgstr "Konnte keine Verfügbarkeit anlegen für AK: {ak}"
#: AKScheduling/views.py:211 #: AKScheduling/views.py:214
#, python-brace-format #, python-brace-format
msgid "Created default availabilities for {count} AKs" msgid "Created default availabilities for {count} AKs"
msgstr "Standardverfügbarkeiten für {count} AKs angelegt" msgstr "Standardverfügbarkeiten für {count} AKs angelegt"
#~ msgid "Bitte AK auswählen"
#~ msgstr "Please sel"
#~ msgid "Cannot load current violations from server" #~ msgid "Cannot load current violations from server"
#~ msgstr "Kann die aktuellen Verletzungen nicht vom Server laden" #~ msgstr "Kann die aktuellen Verletzungen nicht vom Server laden"
...@@ -250,7 +250,7 @@ ...@@ -250,7 +250,7 @@
function addSlot() { function addSlot() {
let ak = $('#id_ak').val(); let ak = $('#id_ak').val();
if(ak === "") { if(ak === "") {
alert("{% trans "Bitte AK auswählen" %}"); alert("{% trans "Please choose AK" %}");
} }
else { else {
$.ajax({ $.ajax({
......
...@@ -8,7 +8,7 @@ msgid "" ...@@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-11-26 23:16+0100\n" "POT-Creation-Date: 2022-12-27 00:42+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
...@@ -38,6 +38,33 @@ msgstr "" ...@@ -38,6 +38,33 @@ msgstr ""
"Mindestens eine geplante Dauer (in Stunden) angeben. Wenn der AK mehrere " "Mindestens eine geplante Dauer (in Stunden) angeben. Wenn der AK mehrere "
"Slots haben soll, mehrere Zeilen verwenden" "Slots haben soll, mehrere Zeilen verwenden"
#: AKSubmission/forms.py:192
#: AKSubmission/templates/AKSubmission/ak_detail.html:315
msgid "Start"
msgstr "Start"
#: AKSubmission/forms.py:193
#: AKSubmission/templates/AKSubmission/ak_detail.html:316
msgid "End"
msgstr "Ende"
#: AKSubmission/forms.py:194
#: AKSubmission/templates/AKSubmission/ak_detail.html:245
#: AKSubmission/templates/AKSubmission/akslot_delete.html:35
msgid "Duration"
msgstr "Dauer"
#: AKSubmission/forms.py:195
#: AKSubmission/templates/AKSubmission/ak_detail.html:247
msgid "Room"
msgstr "Raum"
#: AKSubmission/forms.py:199
#: AKSubmission/templates/AKSubmission/ak_history.html:11
#: AKSubmission/templates/AKSubmission/akslot_delete.html:31
msgid "AK"
msgstr "AK"
#: AKSubmission/templates/AKSubmission/ak_detail.html:22 #: AKSubmission/templates/AKSubmission/ak_detail.html:22
#: AKSubmission/templates/AKSubmission/ak_edit.html:13 #: AKSubmission/templates/AKSubmission/ak_edit.html:13
#: AKSubmission/templates/AKSubmission/ak_history.html:16 #: AKSubmission/templates/AKSubmission/ak_history.html:16
...@@ -197,15 +224,6 @@ msgstr "Notizen" ...@@ -197,15 +224,6 @@ msgstr "Notizen"
msgid "When?" msgid "When?"
msgstr "Wann?" msgstr "Wann?"
#: AKSubmission/templates/AKSubmission/ak_detail.html:245
#: AKSubmission/templates/AKSubmission/akslot_delete.html:35
msgid "Duration"
msgstr "Dauer"
#: AKSubmission/templates/AKSubmission/ak_detail.html:247
msgid "Room"
msgstr "Raum"
#: AKSubmission/templates/AKSubmission/ak_detail.html:278 #: AKSubmission/templates/AKSubmission/ak_detail.html:278
msgid "Delete" msgid "Delete"
msgstr "Löschen" msgstr "Löschen"
...@@ -222,14 +240,6 @@ msgstr "Einen neuen AK-Slot hinzufügen" ...@@ -222,14 +240,6 @@ msgstr "Einen neuen AK-Slot hinzufügen"
msgid "Possible Times" msgid "Possible Times"
msgstr "Mögliche Zeiten" msgstr "Mögliche Zeiten"
#: AKSubmission/templates/AKSubmission/ak_detail.html:315
msgid "Start"
msgstr "Start"
#: AKSubmission/templates/AKSubmission/ak_detail.html:316
msgid "End"
msgstr "Ende"
#: AKSubmission/templates/AKSubmission/ak_edit.html:8 #: AKSubmission/templates/AKSubmission/ak_edit.html:8
#: AKSubmission/templates/AKSubmission/ak_history.html:11 #: AKSubmission/templates/AKSubmission/ak_history.html:11
#: AKSubmission/templates/AKSubmission/ak_overview.html:8 #: AKSubmission/templates/AKSubmission/ak_overview.html:8
...@@ -252,11 +262,6 @@ msgstr "AKs" ...@@ -252,11 +262,6 @@ msgstr "AKs"
msgid "Edit AK" msgid "Edit AK"
msgstr "AK bearbeiten" msgstr "AK bearbeiten"
#: AKSubmission/templates/AKSubmission/ak_history.html:11
#: AKSubmission/templates/AKSubmission/akslot_delete.html:31
msgid "AK"
msgstr "AK"
#: AKSubmission/templates/AKSubmission/ak_history.html:27 #: AKSubmission/templates/AKSubmission/ak_history.html:27
msgid "Back" msgid "Back"
msgstr "Zurück" msgstr "Zurück"
......