diff --git a/initial_data.json b/initial_data.json index 5f7c8e30c..a0d786baf 100644 --- a/initial_data.json +++ b/initial_data.json @@ -11,14 +11,14 @@ "item" ], [ - "can_create_application", - "application", - "application" + "can_create_motion", + "motion", + "motion" ], [ - "can_see_application", - "application", - "application" + "can_see_motion", + "motion", + "motion" ], [ "can_nominate_other", @@ -44,6 +44,11 @@ "can_see_projector", "projector", "projectorslide" + ], + [ + "can_see_dashboard", + "projector", + "projectorslide" ] ] } @@ -60,19 +65,19 @@ "item" ], [ - "can_create_application", - "application", - "application" + "can_create_motion", + "motion", + "motion" ], [ - "can_see_application", - "application", - "application" + "can_see_motion", + "motion", + "motion" ], [ - "can_support_application", - "application", - "application" + "can_support_motion", + "motion", + "motion" ], [ "can_nominate_other", @@ -98,6 +103,11 @@ "can_see_projector", "projector", "projectorslide" + ], + [ + "can_see_dashboard", + "projector", + "projectorslide" ] ] } @@ -119,19 +129,19 @@ "item" ], [ - "can_create_application", - "application", - "application" + "can_create_motion", + "motion", + "motion" ], [ - "can_manage_application", - "application", - "application" + "can_manage_motion", + "motion", + "motion" ], [ - "can_see_application", - "application", - "application" + "can_see_motion", + "motion", + "motion" ], [ "can_manage_assignment", @@ -177,6 +187,11 @@ "can_see_projector", "projector", "projectorslide" + ], + [ + "can_see_dashboard", + "projector", + "projectorslide" ] ] } @@ -206,6 +221,11 @@ "can_see_projector", "projector", "projectorslide" + ], + [ + "can_see_dashboard", + "projector", + "projectorslide" ] ] } diff --git a/openslides/assignment/templates/assignment/view.html b/openslides/assignment/templates/assignment/view.html index d3414f2a0..7616f6a63 100644 --- a/openslides/assignment/templates/assignment/view.html +++ b/openslides/assignment/templates/assignment/view.html @@ -31,7 +31,7 @@

{{ assignment }}

-

{{ assignment.description }}

+

{{ assignment.description|linebreaks }}

{% trans "Candidates" %}

    diff --git a/openslides/assignment/views.py b/openslides/assignment/views.py index 68f561c87..0c1e1f969 100644 --- a/openslides/assignment/views.py +++ b/openslides/assignment/views.py @@ -430,11 +430,11 @@ class AssignmentPDF(PDFView): for candidate, poll_list in vote_results.iteritems(): row = [] - candidate_string = candidate.user.get_full_name() + candidate_string = candidate.clean_name if candidate in elected_candidates: candidate_string = "* " + candidate_string - if candidate.category: - candidate_string += "\n(%s)" % candidate.category + if candidate.name_suffix: + candidate_string += "\n(%s)" % candidate.name_suffix row.append(candidate_string) for vote in poll_list: if vote == None: @@ -565,7 +565,7 @@ class AssignmentPollPDF(PDFView): if self.poll.yesnoabstain: for option in options: candidate = option.candidate - cell.append(Paragraph(candidate.user.get_full_name(), + cell.append(Paragraph(candidate.clean_name, stylesheet['Ballot_option_name'])) if candidate.name_suffix: cell.append(Paragraph("(%s)" % candidate.name_suffix, @@ -591,10 +591,10 @@ class AssignmentPollPDF(PDFView): else: for option in options: candidate = option.candidate - cell.append(Paragraph(circle + candidate.user.get_full_name(), + cell.append(Paragraph(circle + candidate.clean_name, stylesheet['Ballot_option_name'])) - if candidate.category: - cell.append(Paragraph("(%s)" % candidate.category, + if candidate.name_suffix: + cell.append(Paragraph("(%s)" % candidate.name_suffix, stylesheet['Ballot_option_group_right'])) else: cell.append(Paragraph(" ", diff --git a/openslides/config/views.py b/openslides/config/views.py index 19b7b9953..908ac7db6 100644 --- a/openslides/config/views.py +++ b/openslides/config/views.py @@ -66,8 +66,9 @@ class GeneralConfig(FormView): try: anonymous = Group.objects.get(name='Anonymous') except Group.DoesNotExist: - default_perms = [u'can_see_agenda', u'can_see_projector', - u'can_see_motion', u'can_see_assignment'] + default_perms = ['can_see_agenda', 'can_see_projector', + 'can_see_motion', 'can_see_assignment', + 'can_see_dashboard'] anonymous = Group() anonymous.name = 'Anonymous' anonymous.save() diff --git a/openslides/locale/de/LC_MESSAGES/django.mo b/openslides/locale/de/LC_MESSAGES/django.mo index 454decced..e19b0ca62 100644 Binary files a/openslides/locale/de/LC_MESSAGES/django.mo and b/openslides/locale/de/LC_MESSAGES/django.mo differ diff --git a/openslides/locale/de/LC_MESSAGES/django.po b/openslides/locale/de/LC_MESSAGES/django.po index d863961d5..10d30e59c 100644 --- a/openslides/locale/de/LC_MESSAGES/django.po +++ b/openslides/locale/de/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: OpenSlides 1.x\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-09-18 22:27+0200\n" +"POT-Creation-Date: 2012-10-24 12:51+0200\n" "PO-Revision-Date: 2012-07-28 11:07+0200\n" "Last-Translator: Oskar Hahn \n" "Language-Team: Deutsch \n" @@ -29,14 +29,14 @@ msgstr "Englisch" msgid "Parent item" msgstr "Elternelement" -#: agenda/models.py:42 application/forms.py:22 application/models.py:541 -#: application/templates/application/view.html:246 config/forms.py:61 +#: agenda/models.py:42 config/forms.py:61 motion/forms.py:22 +#: motion/models.py:544 motion/templates/motion/view.html:246 #: projector/models.py:32 msgid "Title" msgstr "Titel" -#: agenda/models.py:43 application/forms.py:23 application/models.py:542 -#: application/templates/application/view.html:247 projector/models.py:33 +#: agenda/models.py:43 motion/forms.py:23 motion/models.py:545 +#: motion/templates/motion/view.html:247 projector/models.py:33 msgid "Text" msgstr "Text" @@ -143,13 +143,12 @@ msgid "Agenda settings" msgstr "Tagesordnungs-Einstellungen" #: agenda/templates/agenda/config.html:13 agenda/templates/agenda/edit.html:24 -#: application/templates/application/config.html:13 -#: application/templates/application/edit.html:26 -#: application/templates/application/poll_view.html:52 #: assignment/templates/assignment/config.html:13 #: assignment/templates/assignment/edit.html:26 #: assignment/templates/assignment/poll_view.html:66 #: config/templates/config/general.html:56 +#: motion/templates/motion/config.html:13 motion/templates/motion/edit.html:26 +#: motion/templates/motion/poll_view.html:52 #: participant/templates/participant/config.html:13 #: participant/templates/participant/edit.html:31 #: participant/templates/participant/group_edit.html:25 @@ -161,14 +160,13 @@ msgid "Save" msgstr "Speichern" #: agenda/templates/agenda/config.html:17 agenda/templates/agenda/edit.html:31 -#: application/templates/application/config.html:17 -#: application/templates/application/edit.html:33 -#: application/templates/application/import.html:27 -#: application/templates/application/poll_view.html:59 #: assignment/templates/assignment/config.html:17 #: assignment/templates/assignment/edit.html:33 #: assignment/templates/assignment/poll_view.html:73 #: config/templates/config/general.html:60 +#: motion/templates/motion/config.html:17 motion/templates/motion/edit.html:33 +#: motion/templates/motion/import.html:27 +#: motion/templates/motion/poll_view.html:59 #: participant/templates/participant/config.html:17 #: participant/templates/participant/edit.html:38 #: participant/templates/participant/group_edit.html:32 @@ -180,11 +178,11 @@ msgid "Cancel" msgstr "Abbrechen" #: agenda/templates/agenda/edit.html:27 -#: application/templates/application/edit.html:29 -#: application/templates/application/poll_view.html:55 #: assignment/templates/assignment/edit.html:29 #: assignment/templates/assignment/poll_view.html:69 #: assignment/templates/assignment/view.html:83 +#: motion/templates/motion/edit.html:29 +#: motion/templates/motion/poll_view.html:55 #: participant/templates/participant/edit.html:34 #: participant/templates/participant/group_edit.html:28 #: projector/templates/projector/control_overlay_message.html:8 @@ -193,9 +191,8 @@ msgid "Apply" msgstr "Übernehmen" #: agenda/templates/agenda/edit.html:35 -#: application/templates/application/edit.html:37 -#: application/templates/application/import.html:31 #: assignment/templates/assignment/edit.html:37 +#: motion/templates/motion/edit.html:37 motion/templates/motion/import.html:31 #: participant/templates/participant/edit.html:42 #: participant/templates/participant/group_edit.html:36 #: participant/templates/participant/import.html:31 @@ -224,33 +221,31 @@ msgstr "Zusammenfassung für diesen Eintrag projizieren" msgid "Do you want to save the changed order of agenda items?" msgstr "Möchten Sie die geänderte Reihenfolge der Einträge speichern?" -#: agenda/templates/agenda/overview.html:46 application/models.py:575 -#: application/views.py:775 application/views.py:826 -#: application/templates/application/view.html:79 -#: application/templates/projector/Application.html:37 -#: assignment/models.py:297 assignment/views.py:576 -#: assignment/templates/assignment/view.html:166 +#: agenda/templates/agenda/overview.html:46 assignment/models.py:300 +#: assignment/views.py:576 assignment/templates/assignment/view.html:166 #: assignment/templates/assignment/view.html:170 #: assignment/templates/projector/Assignment.html:78 -#: assignment/templates/projector/Assignment.html:82 utils/utils.py:53 +#: assignment/templates/projector/Assignment.html:82 motion/models.py:578 +#: motion/views.py:778 motion/views.py:829 +#: motion/templates/motion/view.html:79 +#: motion/templates/projector/Motion.html:37 utils/utils.py:53 #: utils/views.py:111 msgid "Yes" msgstr "Ja" -#: agenda/templates/agenda/overview.html:47 application/models.py:575 -#: application/views.py:775 application/views.py:827 -#: application/templates/application/view.html:80 -#: application/templates/projector/Application.html:38 -#: assignment/models.py:297 assignment/views.py:577 -#: assignment/templates/assignment/view.html:167 -#: assignment/templates/projector/Assignment.html:79 utils/utils.py:53 +#: agenda/templates/agenda/overview.html:47 assignment/models.py:300 +#: assignment/views.py:577 assignment/templates/assignment/view.html:167 +#: assignment/templates/projector/Assignment.html:79 motion/models.py:578 +#: motion/views.py:778 motion/views.py:830 +#: motion/templates/motion/view.html:80 +#: motion/templates/projector/Motion.html:38 utils/utils.py:53 #: utils/views.py:111 msgid "No" msgstr "Nein" #: agenda/templates/agenda/overview.html:55 -#: application/templates/application/overview.html:12 #: assignment/templates/assignment/overview.html:12 +#: motion/templates/motion/overview.html:12 #: participant/templates/participant/overview.html:22 msgid "Filter" msgstr "Filter" @@ -274,8 +269,8 @@ msgid "Item" msgstr "Eintrag" #: agenda/templates/agenda/overview.html:68 -#: application/templates/application/overview.html:43 #: assignment/templates/assignment/overview.html:28 +#: motion/templates/motion/overview.html:43 #: participant/templates/participant/group_overview.html:13 #: participant/templates/participant/overview.html:74 msgid "Actions" @@ -289,897 +284,29 @@ msgstr "Keine Einträge vorhanden." #: agenda/templates/agenda/widget.html:10 #: agenda/templates/agenda/widget.html:29 -#: application/templates/application/widget.html:17 #: assignment/templates/assignment/widget.html:17 +#: motion/templates/motion/widget.html:17 #: projector/templates/projector/custom_slide_widget.html:11 #: projector/templates/projector/custom_slide_widget.html:30 msgid "Preview" msgstr "Vorschau" #: agenda/templates/agenda/widget.html:23 -#: application/templates/application/widget.html:11 #: assignment/templates/assignment/view.html:130 #: assignment/templates/assignment/widget.html:11 +#: motion/templates/motion/widget.html:11 #: projector/templates/projector/custom_slide_widget.html:24 msgid "Delete" msgstr "Löschen" #: agenda/templates/agenda/widget.html:26 -#: application/templates/application/widget.html:14 #: assignment/templates/assignment/view.html:129 #: assignment/templates/assignment/widget.html:14 +#: motion/templates/motion/widget.html:14 #: projector/templates/projector/custom_slide_widget.html:27 msgid "Edit" msgstr "Bearbeiten" -#: application/forms.py:25 application/models.py:543 application/views.py:794 -#: application/templates/application/view.html:229 -#: application/templates/application/view.html:249 -#: application/templates/projector/Application.html:77 -msgid "Reason" -msgstr "Begründung" - -#: application/forms.py:30 -msgid "Trivial change" -msgstr "Triviale Änderung" - -#: application/forms.py:31 -msgid "Trivial changes don't create a new version." -msgstr "Triviale Änderungen erzeugen keine neue Version." - -#: application/forms.py:44 application/views.py:733 -#: application/templates/application/view.html:22 -msgid "Supporters" -msgstr "Unterstützer/innen" - -#: application/forms.py:50 participant/forms.py:102 -msgid "CSV File" -msgstr "CSV-Datei" - -#: application/forms.py:54 -msgid "Import motions with status \"authorized\"" -msgstr "Anträge als \"Zugelassen\" importieren" - -#: application/forms.py:55 -msgid "Set the initial status for each motion to \"authorized\"" -msgstr "Setzt den initialen Status für jeden Antrag auf \"zugelassen\"" - -#: application/forms.py:63 -msgid "Number of (minimum) required supporters for a motion" -msgstr "Mindestanzahl erforderlicher Unterstützer/innen für einen Antrag" - -#: application/forms.py:67 -msgid "Choose 0 to disable the supporting system" -msgstr "Wähle 0 um das Unterstützersystem zu deaktivieren" - -#: application/forms.py:72 -msgid "Motion preamble" -msgstr "Antragseinleitung" - -#: application/forms.py:77 assignment/forms.py:47 -msgid "Number of ballot papers (selection)" -msgstr "Anzahl der Stimmzettel (Vorauswahl)" - -#: application/forms.py:79 assignment/forms.py:49 -msgid "Number of all delegates" -msgstr "Anzahl aller Delegierten" - -#: application/forms.py:80 assignment/forms.py:50 -msgid "Number of all participants" -msgstr "Anzahl aller Teilnehmer/innen" - -#: application/forms.py:81 assignment/forms.py:51 -msgid "Use the following custom number" -msgstr "Verwende die folgende benutzerdefinierte Anzahl" - -#: application/forms.py:88 assignment/forms.py:58 -msgid "Custom number of ballot papers" -msgstr "Benutzerdefinierte Anzahl von Stimmzetteln" - -#: application/forms.py:93 -msgid "Title for PDF document (all motions)" -msgstr "Titel für PDF-Dokument (alle Anträge)" - -#: application/forms.py:98 -msgid "Preamble text for PDF document (all motions)" -msgstr "Einleitungstext für PDF-Dokument (alle Wahlen) " - -#: application/forms.py:102 -msgid "Allow trivial changes" -msgstr "Triviale Änderungen erlauben" - -#: application/forms.py:103 -msgid "Warning: Trivial changes undermine the motions autorisation system." -msgstr "" -"Warnung: Triviale Änderungen unterlaufen das Zulassungssystem von Anträgen." - -#: application/models.py:45 -msgid "Published" -msgstr "Veröffentlicht" - -#: application/models.py:46 -msgid "Permitted" -msgstr "Zugelassen" - -#: application/models.py:47 application/templates/application/overview.html:24 -#: application/templates/application/view.html:167 -msgid "Accepted" -msgstr "Angenommen" - -#: application/models.py:48 application/templates/application/overview.html:25 -#: application/templates/application/view.html:172 -msgid "Rejected" -msgstr "Abgelehnt" - -#: application/models.py:49 -msgid "Withdrawed" -msgstr "Zurückgezogen" - -#: application/models.py:50 application/templates/application/view.html:180 -msgid "Adjourned" -msgstr "Vertagt" - -# please check! -#: application/models.py:51 application/templates/application/view.html:183 -msgid "Not Concerned" -msgstr "Nicht befasst" - -# please check! -#: application/models.py:52 application/templates/application/view.html:186 -msgid "Commited a bill" -msgstr "Verwiesen (in Ausschuss)" - -#: application/models.py:53 -msgid "Rejected (not authorized)" -msgstr "Verworfen (nicht zulässig)" - -#: application/models.py:54 application/templates/application/overview.html:27 -msgid "Needs Review" -msgstr "Benötigt Review" - -#: application/models.py:66 application/views.py:713 -#: application/templates/application/overview.html:41 -#: application/templates/application/view.html:18 -#: application/templates/projector/Application.html:55 -msgid "Submitter" -msgstr "Antragsteller/in" - -#: application/models.py:103 -#, python-format -msgid "Version %d authorized" -msgstr "Version %d zugelassen" - -#: application/models.py:139 -msgid "Searching for supporters." -msgstr "Auf Unterstützersuche." - -#: application/models.py:141 -msgid "Not yet authorized." -msgstr "Noch nicht zugelassen." - -#: application/models.py:143 -msgid "Not yet authorized changes." -msgstr "Noch nicht zugelassene Änderungen." - -#: application/models.py:220 -#, python-format -msgid "" -"Trivial changes to version %(version)d; changed fields: %(changed_fields)s" -msgstr "" -"Triviale Änderung an Version %(version)d; Geänderte Felder: " -"%(changed_fields)s" - -#: application/models.py:231 -#, python-format -msgid "Version %s created" -msgstr "Version %s erstellt" - -#: application/models.py:241 -msgid "Supporters removed" -msgstr "Unterstützer/innen gelöscht" - -#: application/models.py:250 -#, python-format -msgid "Status reseted to: %s" -msgstr "Status zurückgesetzt auf: %s" - -#: application/models.py:265 -#, python-format -msgid "Supporter: +%s" -msgstr "Unterstützer/in: +%s" - -#: application/models.py:279 -#, python-format -msgid "Supporter: -%s" -msgstr "Unterstützer/in: -%s" - -#: application/models.py:296 -#, python-format -msgid "Number set: %s" -msgstr "Nummer gesetzt: %s" - -#: application/models.py:309 -#, python-format -msgid "Version %s authorized" -msgstr "Version %s zugelassen" - -#: application/models.py:323 -#, python-format -msgid "Version %s not authorized" -msgstr "Version %s nicht zugelassen" - -#: application/models.py:336 assignment/models.py:69 -#, python-format -msgid "%s is not a valid status." -msgstr "%s ist kein gültiger Status." - -#: application/models.py:339 -#, python-format -msgid "The motion status is already '%s.'" -msgstr "Der Antragsstatus ist bereits '%s'." - -#: application/models.py:347 -#, python-format -msgid "" -"The motion status is: '%(currentstatus)s'. You can not set the status to " -"'%(newstatus)s'." -msgstr "" -"Der Antragsstatus ist: '%(currentstatus)s'. Sie können den Status nicht auf " -"'%(newstatus)s' setzen." - -#: application/models.py:355 -msgid "Status modified" -msgstr "Status geändert" - -#: application/models.py:447 -msgid "by" -msgstr "von" - -#: application/models.py:455 application/templates/application/view.html:210 -#: application/templates/application/widget.html:27 -#: application/templates/projector/Application.html:65 -msgid "no number" -msgstr "ohne Nummer" - -#: application/models.py:456 -#: application/templates/application/overview.html:32 -#: application/templates/application/widget.html:23 -msgid "motion" -msgstr "antrag" - -#: application/models.py:481 -msgid "Poll created" -msgstr "Abstimmung erstellt" - -#: application/models.py:532 -msgid "Can see motions" -msgstr "Darf Anträge sehen" - -#: application/models.py:533 -msgid "Can create motions" -msgstr "Darf Anträge erstellen" - -#: application/models.py:534 -msgid "Can support motions" -msgstr "Darf Anträge unterstützen" - -#: application/models.py:535 -msgid "Can manage motions" -msgstr "Darf Anträge verwalten" - -#: application/models.py:576 assignment/models.py:298 -msgid "Abstain" -msgstr "Enthaltung" - -#: application/models.py:602 -msgid "The assembly may decide," -msgstr "Die Versammlung möge beschließen," - -#: application/models.py:605 -#: application/templates/application/base_application.html:9 -#: application/templates/application/overview.html:7 -#: application/templates/application/overview.html:10 -msgid "Motions" -msgstr "Anträge" - -#: application/views.py:179 -msgid "You have not the necessary rights to create or edit motions." -msgstr "" -"Sie haben nicht die nötigen Rechte, um Anträge zu erstellen oder zu " -"bearbeiten." - -#: application/views.py:184 -msgid "You can not edit this motion." -msgstr "Sie dürfen diesen Antrag nicht bearbeiten." - -#: application/views.py:247 -msgid "New motion was successfully created." -msgstr "Neuer Antrag wurde erfolgreich angelegt." - -#: application/views.py:249 -msgid "Motion was successfully modified." -msgstr "Antrag wurde erfolgreich geändert." - -#: application/views.py:256 application/views.py:634 assignment/views.py:138 -#: participant/views.py:512 participant/views.py:535 utils/views.py:210 -#: utils/views.py:228 utils/views.py:252 -msgid "Please check the form for errors." -msgstr "Bitte kontrollieren Sie das Formular nach Fehlern." - -#: application/views.py:263 -msgid "" -"Attention: Do you really want to edit this motion? The supporters will " -"not be removed automatically because you can manage motions. Please " -"check if the supports are valid after your changing!" -msgstr "" -"Achtung: Wollen Sie den Antrag wirklich ändern? Die Unterstützer/innen " -"werden nicht automatisch entfernt, da Sie Anträge verwalten dürfen. " -"Prüfen Sie, ob die Unterstützungen noch gültig sind." - -#: application/views.py:265 -#, python-format -msgid "" -"Attention: Do you really want to edit this motion? All %s supporters " -"will be removed! Try to convince the supporters again." -msgstr "" -"Wollen Sie den Antrag wirklich ändern? Alle %s Unterstützer/innen " -"werden dann automatisch entfernt. Versuchen Sie diese erneut zu gewinnen." - -#: application/views.py:297 -msgid "Motion number was successfully set." -msgstr "Antragsnummer wurde erfolgreich gesetzt." - -#: application/views.py:313 -msgid "Motion was successfully authorized." -msgstr "Antrag wurde erfolgreich zugelassen." - -#: application/views.py:328 -msgid "Motion was successfully rejected." -msgstr "Antrag wurde erfolgreich verworfen." - -#: application/views.py:344 -#, python-format -msgid "Motion status was set to: %s." -msgstr "Antragsstatus wurde gesetzt auf: %s." - -#: application/views.py:360 -msgid "Motion status was reset." -msgstr "Antragsstatus wurde zurückgesetzt." - -#: application/views.py:374 -msgid "You have support the motion successfully." -msgstr "Sie haben den Antrag erfolgreich unterstützt." - -#: application/views.py:388 -msgid "You have unsupport the motion successfully." -msgstr "Sie haben dem Antrag erfolgreich Ihre Unterstützung entzogen." - -#: application/views.py:402 -msgid "New vote was successfully created." -msgstr "Neue Abstimmung erfolgreich angelegt." - -#: application/views.py:418 -msgid "Poll deleted" -msgstr "Abstimmung gelöscht" - -#: application/views.py:419 -msgid "Poll was successfully deleted." -msgstr "Abstimmung wurde erfolgreich gelöscht." - -#: application/views.py:421 -#, python-format -msgid "the %s. poll" -msgstr "die %s. Abstimmung" - -#: application/views.py:459 application/views.py:468 -#, python-format -msgid "You can not delete motion %s." -msgstr "Sie können Antrag %s nicht löschen." - -#: application/views.py:464 application/views.py:472 -#, python-format -msgid "Motion %s was successfully deleted." -msgstr "Antrag %s wurde erfolgreich gelöscht." - -#: application/views.py:474 -msgid "Invalid request" -msgstr "Ungültige Anfrage" - -#: application/views.py:498 -msgid "Poll was updated" -msgstr "Abstimmung wurde aktualisiert" - -#: application/views.py:515 -#, python-format -msgid "Version %s accepted." -msgstr "Version %s akzeptiert." - -#: application/views.py:517 -#, python-format -msgid "Do you really want to authorize version %s?" -msgstr "Soll Version %s wirklich zugelassen werden?" - -#: application/views.py:527 -#, python-format -msgid "Version %s rejected." -msgstr "Version %s zurückgewiesen." - -#: application/views.py:529 -msgid "ERROR by rejecting the version." -msgstr "FEHLER beim Zurückweisen der Version." - -#: application/views.py:531 -#, python-format -msgid "Do you really want to reject version %s?" -msgstr "Soll Version %s wirklich zurückgewiesen werden?" - -#: application/views.py:561 application/views.py:565 application/views.py:571 -#: application/views.py:574 participant/api.py:76 -#, python-format -msgid "Ignoring malformed line %d in import file." -msgstr "Fehlerhafte Zeile %d der Quelldatei wurde ignoriert." - -#: application/views.py:620 -#, python-format -msgid "%d motion was successfully imported." -msgid_plural "%d motions were successfully imported." -msgstr[0] "%d Antrag wurde erfolgreich importiert." -msgstr[1] "%d Anträge wurden erfolgreich importiert." - -#: application/views.py:623 -#, python-format -msgid "%d motion was successfully modified." -msgid_plural "%d motions were successfully modified." -msgstr[0] "%d Antrag wurde erfolgreich geändert." -msgstr[1] "%d Anträge wurden erfolgreich geändert." - -#: application/views.py:626 -#, python-format -msgid "%d new user was added." -msgid_plural "%d new users were added." -msgstr[0] "%d neuer Nutzer wurde erstellt." -msgstr[1] "%d neue Nutzer wurden erstellt." - -#: application/views.py:630 participant/api.py:92 -msgid "Import aborted because of severe errors in the input file." -msgstr "Import auf Grund von schweren Fehlern in der Quelldatei abgebrochen." - -#: application/views.py:632 participant/api.py:94 -msgid "Import file has wrong character encoding, only UTF-8 is supported!" -msgstr "" -"Die Quelldatei benutzt eine ungültige Zeichenkodierung, es wird nur UTF-8 " -"wird unterstützt!" - -#: application/views.py:636 -msgid "" -"Attention: Existing motions will be modified if you import new motions with " -"the same number." -msgstr "" -"Achtung: Existierende Anträge werden geändert wenn Sie neue Anträge mit " -"identischer Nummer importieren." - -#: application/views.py:637 -msgid "" -"Attention: Importing an motions without a number multiple times will create " -"duplicates." -msgstr "" -"Achtung: Bei mehrfachem Import eines Antrags ohne Nummer können Duplikate " -"entstehen." - -#: application/views.py:663 application/views.py:888 -msgid "Applications" -msgstr "Anträge" - -#: application/views.py:670 application/views.py:808 -msgid "Application" -msgstr "Antrag" - -#: application/views.py:684 application/templates/application/overview.html:84 -msgid "No motions available." -msgstr "Keine Anträge vorhanden." - -#: application/views.py:689 application/views.py:691 application/views.py:706 -#: application/views.py:708 -#: application/templates/projector/Application.html:63 -msgid "Motion No." -msgstr "Antrag Nr." - -#: application/views.py:723 -msgid "Signature" -msgstr "" - -#: application/views.py:746 application/templates/application/overview.html:20 -#: application/templates/application/overview.html:40 -#: application/templates/application/view.html:34 -#: application/templates/projector/Application.html:11 -#: assignment/templates/assignment/overview.html:14 -#: assignment/templates/assignment/overview.html:27 -#: assignment/templates/assignment/view.html:11 -#: assignment/templates/projector/Assignment.html:18 -#: participant/templates/participant/overview.html:52 -msgid "Status" -msgstr "Status" - -#: application/views.py:760 application/templates/application/view.html:214 -#: application/templates/application/view.html:244 config/models.py:131 -#: config/templates/config/version.html:5 -#: config/templates/config/version.html:8 -#: config/templates/config/version.html:11 -msgid "Version" -msgstr "Version" - -#: application/views.py:768 application/templates/application/view.html:44 -#: assignment/views.py:410 -msgid "Vote results" -msgstr "Abstimmungsergebnis" - -#: application/views.py:774 -#: application/templates/application/base_application.html:55 -#: application/templates/application/poll_view.html:8 -#: application/templates/application/poll_view.html:13 -#: application/templates/application/view.html:66 -#: application/templates/application/view.html:74 -#: application/templates/projector/Application.html:33 -msgid "Vote" -msgstr "Abstimmung" - -#: application/views.py:775 application/views.py:828 -#: application/templates/application/view.html:81 -#: application/templates/projector/Application.html:39 assignment/views.py:577 -#: assignment/templates/assignment/view.html:168 -#: assignment/templates/projector/Assignment.html:80 -msgid "Abstention" -msgstr "Enthaltung" - -#: application/views.py:775 application/templates/application/view.html:82 -#: application/templates/projector/Application.html:40 -#: assignment/templates/assignment/view.html:190 -#: assignment/templates/projector/Assignment.html:101 -msgid "Invalid" -msgstr "Ungültig" - -#: application/views.py:775 -#: application/templates/application/poll_view.html:35 -#: application/templates/application/view.html:84 -#: application/templates/projector/Application.html:42 assignment/views.py:461 -#: assignment/templates/assignment/poll_view.html:45 -#: assignment/templates/assignment/view.html:202 -#: assignment/templates/assignment/view.html:207 -#: assignment/templates/projector/Assignment.html:111 -#: assignment/templates/projector/Assignment.html:117 poll/models.py:76 -msgid "Votes cast" -msgstr "Abgegebene Stimmen" - -#: application/views.py:808 -msgid "Poll" -msgstr "Abstimmung" - -#: application/views.py:822 -#, python-format -msgid "Application No. %s" -msgstr "Antrag Nr. %s" - -#: application/views.py:824 -#, python-format -msgid "%d. Vote" -msgstr "%d. Abstimmung" - -#: application/views.py:881 -msgid "Motion settings successfully saved." -msgstr "Antrags-Einstellungen wurden erfolgreich gespeichert." - -#: application/templates/application/base_application.html:11 -msgid "All motions" -msgstr "Alle Anträge" - -#: application/templates/application/base_application.html:13 -#: application/templates/application/edit.html:10 -#: application/templates/application/edit.html:18 -msgid "New motion" -msgstr "Neuer Antrag" - -#: application/templates/application/base_application.html:16 -#: application/templates/application/import.html:5 -#: application/templates/application/import.html:8 -msgid "Import motions" -msgstr "Anträge importieren" - -#: application/templates/application/base_application.html:18 -msgid "All motions as PDF" -msgstr "Alle Anträge als PDF" - -#: application/templates/application/base_application.html:24 -msgid "Application No." -msgstr "Antrag Nr." - -#: application/templates/application/base_application.html:34 -msgid "View motion" -msgstr "Antrag anzeigen" - -#: application/templates/application/base_application.html:38 -#: application/templates/application/edit.html:8 -#: application/templates/application/edit.html:16 -#: application/templates/application/overview.html:72 -msgid "Edit motion" -msgstr "Antrag bearbeiten" - -#: application/templates/application/base_application.html:42 -#: application/templates/application/overview.html:74 -msgid "Delete motion" -msgstr "Antrag löschen" - -#: application/templates/application/base_application.html:45 -#: application/templates/application/overview.html:77 -msgid "Motion as PDF" -msgstr "Antrag als PDF" - -#: application/templates/application/base_application.html:49 -msgid "Show Application" -msgstr "Antrag projizieren" - -#: application/templates/application/base_application.html:61 -#: assignment/templates/assignment/base_assignment.html:63 -msgid "New agenda item" -msgstr "Neuer Tagesordnungseintrag" - -#: application/templates/application/config.html:5 -#: application/templates/application/config.html:8 -msgid "Application settings" -msgstr "Antrags-Einstellungen" - -#: application/templates/application/import.html:9 -msgid "Select a CSV file to import motions!" -msgstr "Wählen Sie eine CSV-Datei zum Importieren von Anträgen aus!" - -#: application/templates/application/import.html:11 -msgid "" -"Required comma separated values: {number, title, text, reason, " -"first_name, last_name} (number and reason " -"are optional and may be empty)" -msgstr "" -"Erforderliche kommaseparierte Werte: {Nummer, Titel, Text, Begründung, " -"Vorname, Nachname} (Nummer und Begründung " -"sind optional und können auch leer sein)" - -#: application/templates/application/import.html:13 -#: participant/templates/participant/import.html:13 -msgid "Required CSV file encoding: UTF-8 (Unicode)." -msgstr "Erforderliches CSV-Datei-Encoding: UTF-8 (Unicode)." - -#: application/templates/application/import.html:16 -#: participant/templates/participant/import.html:16 -msgid "A CSV example file is available in OpenSlides Wiki." -msgstr "Eine CSV-Beispiel-Datei gibt es im OpenSlides Wiki." - -#: application/templates/application/import.html:23 -#: participant/templates/participant/import.html:23 -msgid "Import" -msgstr "Importieren" - -#: application/templates/application/overview.html:15 -msgid "Need supporters" -msgstr "Benötigt Unterstützer/innen" - -#: application/templates/application/overview.html:18 -msgid "Without number" -msgstr "Ohne Nummer" - -#: application/templates/application/overview.html:22 -msgid "Not yet authorized" -msgstr "Noch nicht zugelassen" - -#: application/templates/application/overview.html:23 -msgid "Authorized" -msgstr "Zugelassen" - -#: application/templates/application/overview.html:26 -msgid "Withdrawen (by submitter)" -msgstr "Zurückgezogen (durch Antragsteller/in)" - -#: application/templates/application/overview.html:35 -msgid "Number" -msgstr "Nummer" - -#: application/templates/application/overview.html:36 -msgid "Motion title" -msgstr "Antragstitel" - -#: application/templates/application/overview.html:38 -msgid "Number of supporters" -msgstr "Anzahl der Unterstützer/innen" - -#: application/templates/application/overview.html:42 -#: application/templates/application/view.html:109 -msgid "Creation Time" -msgstr "Erstellungszeit" - -#: application/templates/application/overview.html:67 -msgid "Activate motion" -msgstr "Antrag projizieren" - -#: application/templates/application/poll_view.html:7 -#: application/templates/application/poll_view.html:12 -#: application/templates/application/view.html:7 -#: application/templates/application/view.html:206 -#: application/templates/application/view.html:225 -#: application/templates/projector/Application.html:7 -#: application/templates/projector/Application.html:65 -msgid "Motion" -msgstr "Antrag" - -#: application/templates/application/poll_view.html:14 -#: assignment/templates/assignment/poll_view.html:12 -msgid "Special values" -msgstr "Spezielle Werte" - -#: application/templates/application/poll_view.html:14 -#: assignment/templates/assignment/poll_view.html:12 poll/models.py:235 -msgid "majority" -msgstr "Mehrheit" - -#: application/templates/application/poll_view.html:14 -#: assignment/templates/assignment/poll_view.html:12 poll/models.py:237 -#: poll/models.py:239 -msgid "undocumented" -msgstr "nicht erfasst" - -#: application/templates/application/poll_view.html:21 -msgid "Option" -msgstr "Wahlmöglichkeit" - -#: application/templates/application/poll_view.html:22 -#: assignment/models.py:300 -msgid "Votes" -msgstr "Stimmen" - -#: application/templates/application/poll_view.html:31 assignment/views.py:454 -#: assignment/templates/assignment/poll_view.html:35 -#: assignment/templates/assignment/view.html:185 -#: assignment/templates/projector/Assignment.html:97 -msgid "Invalid votes" -msgstr "Ungültige Stimmen" - -#: application/templates/application/poll_view.html:45 -#: assignment/templates/assignment/poll_view.html:59 -msgid "Ballot paper as PDF" -msgstr "Stimmzettel als PDF" - -#: application/templates/application/view.html:51 -#: application/templates/application/view.html:91 -msgid "New vote" -msgstr "Neue Abstimmung" - -#: application/templates/application/view.html:67 -msgid "Edit Vote" -msgstr "Abstimmung bearbeiten" - -#: application/templates/application/view.html:70 -msgid "Delete Vote" -msgstr "Abstimmung löschen" - -#: application/templates/application/view.html:99 -msgid "Enter result" -msgstr "Ergebnis eingeben" - -#: application/templates/application/view.html:116 -msgid "Withdraw" -msgstr "Zurückziehen" - -#: application/templates/application/view.html:124 -msgid "Unsupport" -msgstr "Nicht unterstützen" - -#: application/templates/application/view.html:130 -msgid "Support" -msgstr "Unterstützen" - -#: application/templates/application/view.html:136 -msgid "minimum required supporters" -msgstr "minimal erforderliche Unterstützer/innen" - -#: application/templates/application/view.html:143 -msgid "Manage motion" -msgstr "Antrag Verwalten" - -#: application/templates/application/view.html:146 -msgid "Formal validation" -msgstr "Formale Gültigkeitsprüfung" - -#: application/templates/application/view.html:148 -msgid "Publish" -msgstr "Veröffentlichen" - -#: application/templates/application/view.html:151 -msgid "Permit" -msgstr "Zulassen" - -#: application/templates/application/view.html:154 -msgid "Not permit (reject)" -msgstr "Nicht zulassen (verwerfen)" - -#: application/templates/application/view.html:157 -msgid "Set Number" -msgstr "Setze Nummer" - -#: application/templates/application/view.html:164 -msgid "Result after vote" -msgstr "Ergebnis nach der Abstimmung" - -#: application/templates/application/view.html:178 -msgid "Result after debate" -msgstr "Ergebnis nach der Debatte" - -#: application/templates/application/view.html:189 -msgid "Withdrawed by Submitter" -msgstr "Zurückgezogen durch Antragsteller/in" - -#: application/templates/application/view.html:194 -msgid "For Administration only:" -msgstr "Nur zur Administration:" - -#: application/templates/application/view.html:196 -msgid "Reset" -msgstr "Zurücksetzen" - -#: application/templates/application/view.html:219 -msgid "This is not the newest version." -msgstr "Dies ist nicht die neuste Version." - -#: application/templates/application/view.html:219 -#: application/templates/application/view.html:221 -msgid "Go to version" -msgstr "Gehe zu Version" - -#: application/templates/application/view.html:221 -msgid "This is not the authorized version." -msgstr "Dies ist nicht die zugelassene Version." - -#: application/templates/application/view.html:239 -msgid "Version History" -msgstr "Versionshistorie" - -#: application/templates/application/view.html:245 -msgid "Time" -msgstr "Zeit" - -#: application/templates/application/view.html:256 -msgid "Version authorized" -msgstr "Version %d zugelassen" - -#: application/templates/application/view.html:259 -msgid "Permit Version" -msgstr "Version zulassen" - -#: application/templates/application/view.html:262 -msgid "Reject Version" -msgstr "Version verwerfen" - -#: application/templates/application/view.html:266 -msgid "Version rejected" -msgstr "Version verworfen" - -#: application/templates/application/view.html:276 -#: application/templates/application/view.html:283 -#: application/templates/application/view.html:290 -msgid "unchanged" -msgstr "unverändert" - -#: application/templates/application/view.html:299 -msgid "Log" -msgstr "Log" - -#: application/templates/application/widget.html:31 -msgid "No motion available." -msgstr "Keine Antrag vorhanden." - -#: application/templates/projector/Application.html:29 -msgid "Poll result" -msgstr "Abstimmungsergebnis" - -#: application/templates/projector/Application.html:47 -msgid "No poll results available." -msgstr "Keine Abstimmungen vorhanden." - #: assignment/forms.py:24 assignment/models.py:57 assignment/views.py:383 #: assignment/templates/assignment/view.html:13 #: assignment/templates/projector/Assignment.html:21 @@ -1195,6 +322,26 @@ msgid "Only publish voting results for selected winners (Projector view only)" msgstr "" "Wahlergebnisse der nicht gewählten Kandidaten auf dem Projektor verbergen" +#: assignment/forms.py:47 motion/forms.py:77 +msgid "Number of ballot papers (selection)" +msgstr "Anzahl der Stimmzettel (Vorauswahl)" + +#: assignment/forms.py:49 motion/forms.py:79 +msgid "Number of all delegates" +msgstr "Anzahl aller Delegierten" + +#: assignment/forms.py:50 motion/forms.py:80 +msgid "Number of all participants" +msgstr "Anzahl aller Teilnehmer/innen" + +#: assignment/forms.py:51 motion/forms.py:81 +msgid "Use the following custom number" +msgstr "Verwende die folgende benutzerdefinierte Anzahl" + +#: assignment/forms.py:58 motion/forms.py:88 +msgid "Custom number of ballot papers" +msgstr "Benutzerdefinierte Anzahl von Stimmzetteln" + #: assignment/forms.py:63 msgid "Title for PDF document (all elections)" msgstr "Titel für PDF-Dokument (alle Wahlen)" @@ -1246,6 +393,11 @@ msgstr "Beschreibung" msgid "Comment on the ballot paper" msgstr "Kommentar für den Stimmzettel" +#: assignment/models.py:69 motion/models.py:339 +#, python-format +msgid "%s is not a valid status." +msgstr "%s ist kein gültiger Status." + #: assignment/models.py:71 #, python-format msgid "The assignment status is already %s." @@ -1270,28 +422,36 @@ msgstr "%s möchte nicht kandidieren." msgid "%s is no candidate" msgstr "%s ist kein/e Kandidat/in" -#: assignment/models.py:250 +#: assignment/models.py:253 msgid "Can see assignment" msgstr "Darf Wahlen sehen" -#: assignment/models.py:252 +#: assignment/models.py:255 msgid "Can nominate another person" msgstr "Darf andere Personen für Wahlen vorschlagen" -#: assignment/models.py:253 +#: assignment/models.py:256 msgid "Can nominate themselves" msgstr "Darf selbst für Wahlen kandidieren" -#: assignment/models.py:254 +#: assignment/models.py:257 msgid "Can manage assignment" msgstr "Darf Wahlen verwalten" -#: assignment/models.py:317 +#: assignment/models.py:301 motion/models.py:579 +msgid "Abstain" +msgstr "Enthaltung" + +#: assignment/models.py:303 motion/templates/motion/poll_view.html:22 +msgid "Votes" +msgstr "Stimmen" + +#: assignment/models.py:320 #, python-format msgid "Ballot %d" msgstr "Wahlgang %d" -#: assignment/models.py:326 assignment/views.py:340 assignment/views.py:663 +#: assignment/models.py:329 assignment/views.py:340 assignment/views.py:663 #: assignment/templates/assignment/base_assignment.html:14 #: assignment/templates/assignment/overview.html:6 #: assignment/templates/assignment/overview.html:9 @@ -1311,6 +471,12 @@ msgstr "Neue Wahl wurde erfolgreich angelegt." msgid "Election was successfully modified." msgstr "Wahl wurde erfolgreich geändert." +#: assignment/views.py:138 motion/views.py:256 motion/views.py:637 +#: participant/views.py:463 participant/views.py:486 utils/views.py:210 +#: utils/views.py:228 utils/views.py:252 +msgid "Please check the form for errors." +msgstr "Bitte kontrollieren Sie das Formular nach Fehlern." + #: assignment/views.py:157 #, python-format msgid "Election %s was successfully deleted." @@ -1329,8 +495,9 @@ msgstr "Sie haben Ihre Kandidatur erfolgreich gesetzt." msgid "" "You have withdrawn your candidature successfully. You can not be nominated " "by other participants anymore." -msgstr "Sie haben Ihre Kandidatur erfolgreich zurückgezogen. Sie können nun " -"von anderen Teilnehmer/innen nicht mehr vorgeschlagen werden." +msgstr "" +"Sie haben Ihre Kandidatur erfolgreich zurückgezogen. Sie können nun von " +"anderen Teilnehmer/innen nicht mehr vorgeschlagen werden." #: assignment/views.py:218 #, python-format @@ -1338,6 +505,7 @@ msgid "Candidate %s was withdrawn successfully." msgstr "Die Kandidatur von %s wurde erfolgreich zurückgezogen." #: assignment/views.py:220 +#, python-format msgid "%s was unblocked successfully." msgstr "%s wurde erfolgreich freigegeben." @@ -1347,6 +515,7 @@ msgid "Do you really want to withdraw %s from the election?" msgstr "Soll %s wirklich von der Wahl zurückgezogen werden?" #: assignment/views.py:226 +#, python-format msgid "Do you really want to unblock %s from the election?" msgstr "Soll %s wirklich für die Wahl freigegeben werden?" @@ -1403,6 +572,11 @@ msgstr "Wahlen: %s" msgid "Candidates" msgstr "Kandidaten/innen" +#: assignment/views.py:410 motion/views.py:771 +#: motion/templates/motion/view.html:44 +msgid "Vote results" +msgstr "Abstimmungsergebnis" + #: assignment/views.py:414 #: assignment/templates/assignment/base_assignment.html:71 #: assignment/templates/assignment/poll_view.html:5 @@ -1428,6 +602,24 @@ msgstr "" "N: %(NO)s\n" "E: %(ABSTAIN)s" +#: assignment/views.py:454 assignment/templates/assignment/poll_view.html:35 +#: assignment/templates/assignment/view.html:185 +#: assignment/templates/projector/Assignment.html:97 +#: motion/templates/motion/poll_view.html:31 +msgid "Invalid votes" +msgstr "Ungültige Stimmen" + +#: assignment/views.py:461 assignment/templates/assignment/poll_view.html:45 +#: assignment/templates/assignment/view.html:202 +#: assignment/templates/assignment/view.html:207 +#: assignment/templates/projector/Assignment.html:111 +#: assignment/templates/projector/Assignment.html:117 motion/views.py:778 +#: motion/templates/motion/poll_view.html:35 +#: motion/templates/motion/view.html:84 +#: motion/templates/projector/Motion.html:42 poll/models.py:76 +msgid "Votes cast" +msgstr "Abgegebene Stimmen" + #: assignment/views.py:520 assignment/views.py:536 #: assignment/templates/assignment/overview.html:25 #: assignment/templates/assignment/poll_view.html:5 @@ -1453,6 +645,13 @@ msgstr[1] "%d Kandidaten/innen" msgid "%d available posts" msgstr "%d verfügbare Posten" +#: assignment/views.py:577 assignment/templates/assignment/view.html:168 +#: assignment/templates/projector/Assignment.html:80 motion/views.py:778 +#: motion/views.py:831 motion/templates/motion/view.html:81 +#: motion/templates/projector/Motion.html:39 +msgid "Abstention" +msgstr "Enthaltung" + #: assignment/views.py:656 msgid "Election settings successfully saved." msgstr "Wahl-Einstellungen wurden erfolgreich gespeichert." @@ -1500,11 +699,28 @@ msgstr "Wahl als PDF" msgid "Show election" msgstr "Wahl projizieren" +#: assignment/templates/assignment/base_assignment.html:63 +#: motion/templates/motion/base_motion.html:61 +msgid "New agenda item" +msgstr "Neuer Tagesordnungseintrag" + #: assignment/templates/assignment/config.html:5 #: assignment/templates/assignment/config.html:8 msgid "Election settings" msgstr "Wahl-Einstellungen" +#: assignment/templates/assignment/overview.html:14 +#: assignment/templates/assignment/overview.html:27 +#: assignment/templates/assignment/view.html:11 +#: assignment/templates/projector/Assignment.html:18 motion/views.py:749 +#: motion/templates/motion/overview.html:20 +#: motion/templates/motion/overview.html:40 +#: motion/templates/motion/view.html:34 +#: motion/templates/projector/Motion.html:11 +#: participant/templates/participant/overview.html:52 +msgid "Status" +msgstr "Status" + #: assignment/templates/assignment/overview.html:22 msgid "election" msgid_plural "elections" @@ -1519,6 +735,27 @@ msgstr "Wahl projizieren" msgid "Short description (for ballot paper)" msgstr "Kurzbeschreibung (für Stimmzettel)" +#: assignment/templates/assignment/poll_view.html:12 +#: motion/templates/motion/poll_view.html:14 +msgid "Special values" +msgstr "Spezielle Werte" + +#: assignment/templates/assignment/poll_view.html:12 +#: motion/templates/motion/poll_view.html:14 poll/models.py:235 +msgid "majority" +msgstr "Mehrheit" + +#: assignment/templates/assignment/poll_view.html:12 +#: motion/templates/motion/poll_view.html:14 poll/models.py:237 +#: poll/models.py:239 +msgid "undocumented" +msgstr "nicht erfasst" + +#: assignment/templates/assignment/poll_view.html:59 +#: motion/templates/motion/poll_view.html:45 +msgid "Ballot paper as PDF" +msgstr "Stimmzettel als PDF" + #: assignment/templates/assignment/view.html:21 msgid "Change status" msgstr "Status ändern" @@ -1577,6 +814,13 @@ msgstr "Kandidat/in ist gewählt" msgid "was not a
    candidate" msgstr "war kein Kandidat" +#: assignment/templates/assignment/view.html:190 +#: assignment/templates/projector/Assignment.html:101 motion/views.py:778 +#: motion/templates/motion/view.html:82 +#: motion/templates/projector/Motion.html:40 +msgid "Invalid" +msgstr "Ungültig" + #: assignment/templates/assignment/view.html:221 #: assignment/templates/projector/Assignment.html:126 msgid "No ballots available." @@ -1622,7 +866,7 @@ msgstr "Präsentationssystem für Tagesordnung, Anträge und Wahlen" msgid "Welcome" msgstr "Willkommen" -#: config/models.py:90 participant/models.py:189 +#: config/models.py:90 participant/models.py:192 msgid "Welcome to OpenSlides!" msgstr "Willkommen bei OpenSlides!" @@ -1635,7 +879,14 @@ msgstr "Professionelle Unterstützung für OpenSlides gibt es unter %s." msgid "General" msgstr "Allgemein" -#: config/views.py:78 +#: config/models.py:131 config/templates/config/version.html:5 +#: config/templates/config/version.html:8 +#: config/templates/config/version.html:11 motion/views.py:763 +#: motion/templates/motion/view.html:214 motion/templates/motion/view.html:244 +msgid "Version" +msgstr "Version" + +#: config/views.py:79 msgid "" "Anonymous access enabled. Please modify the \"Anonymous\" group to fit your " "required permissions." @@ -1643,11 +894,11 @@ msgstr "" "Anonymer Zugriff aktiviert. Bitte setzen Sie die Rechte der Benutzerrolle " "\"Anonymous\" passend zum gewünschten Zugriffslevel." -#: config/views.py:84 +#: config/views.py:85 msgid "General settings successfully saved." msgstr "Allgemeine Einstellungen erfolgreich gespeichert." -#: config/views.py:119 config/templates/config/base_config.html:7 +#: config/views.py:120 config/templates/config/base_config.html:7 msgid "Configuration" msgstr "Konfiguration" @@ -1668,6 +919,729 @@ msgstr "Startseite" msgid "System" msgstr "System" +#: motion/forms.py:25 motion/models.py:546 motion/views.py:797 +#: motion/templates/motion/view.html:229 motion/templates/motion/view.html:249 +#: motion/templates/projector/Motion.html:77 +msgid "Reason" +msgstr "Begründung" + +#: motion/forms.py:30 +msgid "Trivial change" +msgstr "Triviale Änderung" + +#: motion/forms.py:31 +msgid "Trivial changes don't create a new version." +msgstr "Triviale Änderungen erzeugen keine neue Version." + +#: motion/forms.py:44 motion/views.py:736 motion/templates/motion/view.html:22 +msgid "Supporters" +msgstr "Unterstützer/innen" + +#: motion/forms.py:50 participant/forms.py:102 +msgid "CSV File" +msgstr "CSV-Datei" + +#: motion/forms.py:54 +msgid "Import motions with status \"authorized\"" +msgstr "Anträge als \"Zugelassen\" importieren" + +#: motion/forms.py:55 +msgid "Set the initial status for each motion to \"authorized\"" +msgstr "Setzt den initialen Status für jeden Antrag auf \"zugelassen\"" + +#: motion/forms.py:63 +msgid "Number of (minimum) required supporters for a motion" +msgstr "Mindestanzahl erforderlicher Unterstützer/innen für einen Antrag" + +#: motion/forms.py:67 +msgid "Choose 0 to disable the supporting system" +msgstr "Wähle 0 um das Unterstützersystem zu deaktivieren" + +#: motion/forms.py:72 +msgid "Motion preamble" +msgstr "Antragseinleitung" + +#: motion/forms.py:93 +msgid "Title for PDF document (all motions)" +msgstr "Titel für PDF-Dokument (alle Anträge)" + +#: motion/forms.py:98 +msgid "Preamble text for PDF document (all motions)" +msgstr "Einleitungstext für PDF-Dokument (alle Wahlen) " + +#: motion/forms.py:102 +msgid "Allow trivial changes" +msgstr "Triviale Änderungen erlauben" + +#: motion/forms.py:103 +msgid "Warning: Trivial changes undermine the motions autorisation system." +msgstr "" +"Warnung: Triviale Änderungen unterlaufen das Zulassungssystem von Anträgen." + +#: motion/models.py:45 +msgid "Published" +msgstr "Veröffentlicht" + +#: motion/models.py:46 +msgid "Permitted" +msgstr "Zugelassen" + +#: motion/models.py:47 motion/templates/motion/overview.html:24 +#: motion/templates/motion/view.html:167 +msgid "Accepted" +msgstr "Angenommen" + +#: motion/models.py:48 motion/templates/motion/overview.html:25 +#: motion/templates/motion/view.html:172 +msgid "Rejected" +msgstr "Abgelehnt" + +#: motion/models.py:49 +msgid "Withdrawed" +msgstr "Zurückgezogen" + +#: motion/models.py:50 motion/templates/motion/view.html:180 +msgid "Adjourned" +msgstr "Vertagt" + +# please check! +#: motion/models.py:51 motion/templates/motion/view.html:183 +msgid "Not Concerned" +msgstr "Nicht befasst" + +# please check! +#: motion/models.py:52 motion/templates/motion/view.html:186 +msgid "Commited a bill" +msgstr "Verwiesen (in Ausschuss)" + +#: motion/models.py:53 +msgid "Rejected (not authorized)" +msgstr "Verworfen (nicht zulässig)" + +#: motion/models.py:54 motion/templates/motion/overview.html:27 +msgid "Needs Review" +msgstr "Benötigt Review" + +#: motion/models.py:66 motion/views.py:716 +#: motion/templates/motion/overview.html:41 +#: motion/templates/motion/view.html:18 +#: motion/templates/projector/Motion.html:55 +msgid "Submitter" +msgstr "Antragsteller/in" + +#: motion/models.py:103 +#, python-format +msgid "Version %d authorized" +msgstr "Version %d zugelassen" + +#: motion/models.py:110 +msgctxt "Rejected means not authorized" +msgid "Version %d rejected" +msgstr "Version %d zurückgewiesen" + +#: motion/models.py:139 +msgid "Searching for supporters." +msgstr "Auf Unterstützersuche." + +#: motion/models.py:141 +msgid "Not yet authorized." +msgstr "Noch nicht zugelassen." + +#: motion/models.py:143 +msgid "Not yet authorized changes." +msgstr "Noch nicht zugelassene Änderungen." + +#: motion/models.py:223 +#, python-format +msgid "" +"Trivial changes to version %(version)d; changed fields: %(changed_fields)s" +msgstr "" +"Triviale Änderung an Version %(version)d; Geänderte Felder: " +"%(changed_fields)s" + +#: motion/models.py:234 +#, python-format +msgid "Version %s created" +msgstr "Version %s erstellt" + +#: motion/models.py:244 +msgid "Supporters removed" +msgstr "Unterstützer/innen gelöscht" + +#: motion/models.py:253 +#, python-format +msgid "Status reseted to: %s" +msgstr "Status zurückgesetzt auf: %s" + +#: motion/models.py:268 +#, python-format +msgid "Supporter: +%s" +msgstr "Unterstützer/in: +%s" + +#: motion/models.py:282 +#, python-format +msgid "Supporter: -%s" +msgstr "Unterstützer/in: -%s" + +#: motion/models.py:299 +#, python-format +msgid "Number set: %s" +msgstr "Nummer gesetzt: %s" + +#: motion/models.py:312 +#, python-format +msgid "Version %s authorized" +msgstr "Version %s zugelassen" + +#: motion/models.py:326 +#, python-format +msgid "Version %s not authorized" +msgstr "Version %s nicht zugelassen" + +#: motion/models.py:342 +#, python-format +msgid "The motion status is already '%s.'" +msgstr "Der Antragsstatus ist bereits '%s'." + +#: motion/models.py:350 +#, python-format +msgid "" +"The motion status is: '%(currentstatus)s'. You can not set the status to " +"'%(newstatus)s'." +msgstr "" +"Der Antragsstatus ist: '%(currentstatus)s'. Sie können den Status nicht auf " +"'%(newstatus)s' setzen." + +#: motion/models.py:358 +msgid "Status modified" +msgstr "Status geändert" + +#: motion/models.py:450 +msgid "by" +msgstr "von" + +#: motion/models.py:458 motion/templates/motion/view.html:210 +#: motion/templates/motion/widget.html:27 +#: motion/templates/projector/Motion.html:65 +msgid "no number" +msgstr "ohne Nummer" + +#: motion/models.py:459 motion/templates/motion/overview.html:32 +#: motion/templates/motion/widget.html:23 +msgid "motion" +msgstr "Antrag" + +#: motion/models.py:484 +msgid "Poll created" +msgstr "Abstimmung erstellt" + +#: motion/models.py:535 +msgid "Can see motions" +msgstr "Darf Anträge sehen" + +#: motion/models.py:536 +msgid "Can create motions" +msgstr "Darf Anträge erstellen" + +#: motion/models.py:537 +msgid "Can support motions" +msgstr "Darf Anträge unterstützen" + +#: motion/models.py:538 +msgid "Can manage motions" +msgstr "Darf Anträge verwalten" + +#: motion/models.py:605 +msgid "The assembly may decide," +msgstr "Die Versammlung möge beschließen," + +#: motion/models.py:608 motion/views.py:666 motion/views.py:891 +#: motion/templates/motion/base_motion.html:9 +#: motion/templates/motion/overview.html:7 +#: motion/templates/motion/overview.html:10 +msgid "Motions" +msgstr "Anträge" + +#: motion/views.py:179 +msgid "You have not the necessary rights to create or edit motions." +msgstr "" +"Sie haben nicht die nötigen Rechte, um Anträge zu erstellen oder zu " +"bearbeiten." + +#: motion/views.py:184 +msgid "You can not edit this motion." +msgstr "Sie dürfen diesen Antrag nicht bearbeiten." + +#: motion/views.py:247 +msgid "New motion was successfully created." +msgstr "Neuer Antrag wurde erfolgreich angelegt." + +#: motion/views.py:249 +msgid "Motion was successfully modified." +msgstr "Antrag wurde erfolgreich geändert." + +#: motion/views.py:263 +msgid "" +"Attention: Do you really want to edit this motion? The supporters will " +"not be removed automatically because you can manage motions. Please " +"check if the supports are valid after your changing!" +msgstr "" +"Achtung: Wollen Sie den Antrag wirklich ändern? Die Unterstützer/innen " +"werden nicht automatisch entfernt, da Sie Anträge verwalten dürfen. " +"Prüfen Sie, ob die Unterstützungen noch gültig sind." + +#: motion/views.py:265 +#, python-format +msgid "" +"Attention: Do you really want to edit this motion? All %s supporters " +"will be removed! Try to convince the supporters again." +msgstr "" +"Wollen Sie den Antrag wirklich ändern? Alle %s Unterstützer/innen " +"werden dann automatisch entfernt. Versuchen Sie diese erneut zu gewinnen." + +#: motion/views.py:297 +msgid "Motion number was successfully set." +msgstr "Antragsnummer wurde erfolgreich gesetzt." + +#: motion/views.py:313 +msgid "Motion was successfully authorized." +msgstr "Antrag wurde erfolgreich zugelassen." + +#: motion/views.py:328 +msgid "Motion was successfully rejected." +msgstr "Antrag wurde erfolgreich verworfen." + +#: motion/views.py:344 +#, python-format +msgid "Motion status was set to: %s." +msgstr "Antragsstatus wurde gesetzt auf: %s." + +#: motion/views.py:360 +msgid "Motion status was reset." +msgstr "Antragsstatus wurde zurückgesetzt." + +#: motion/views.py:374 +msgid "You have support the motion successfully." +msgstr "Sie haben den Antrag erfolgreich unterstützt." + +#: motion/views.py:388 +msgid "You have unsupport the motion successfully." +msgstr "Sie haben dem Antrag erfolgreich Ihre Unterstützung entzogen." + +#: motion/views.py:402 +msgid "New vote was successfully created." +msgstr "Neue Abstimmung erfolgreich angelegt." + +#: motion/views.py:418 +msgid "Poll deleted" +msgstr "Abstimmung gelöscht" + +#: motion/views.py:419 +msgid "Poll was successfully deleted." +msgstr "Abstimmung wurde erfolgreich gelöscht." + +#: motion/views.py:421 +#, python-format +msgid "the %s. poll" +msgstr "die %s. Abstimmung" + +#: motion/views.py:462 motion/views.py:471 +#, python-format +msgid "You can not delete motion %s." +msgstr "Sie können Antrag %s nicht löschen." + +#: motion/views.py:467 motion/views.py:475 +#, python-format +msgid "Motion %s was successfully deleted." +msgstr "Antrag %s wurde erfolgreich gelöscht." + +#: motion/views.py:477 +msgid "Invalid request" +msgstr "Ungültige Anfrage" + +#: motion/views.py:501 +msgid "Poll was updated" +msgstr "Abstimmung wurde aktualisiert" + +#: motion/views.py:518 +#, python-format +msgid "Version %s accepted." +msgstr "Version %s akzeptiert." + +#: motion/views.py:520 +#, python-format +msgid "Do you really want to authorize version %s?" +msgstr "Soll Version %s wirklich zugelassen werden?" + +#: motion/views.py:530 +#, python-format +msgid "Version %s rejected." +msgstr "Version %s zurückgewiesen." + +#: motion/views.py:532 +msgid "ERROR by rejecting the version." +msgstr "FEHLER beim Zurückweisen der Version." + +#: motion/views.py:534 +#, python-format +msgid "Do you really want to reject version %s?" +msgstr "Soll Version %s wirklich zurückgewiesen werden?" + +#: motion/views.py:564 motion/views.py:568 motion/views.py:574 +#: motion/views.py:577 participant/api.py:76 +#, python-format +msgid "Ignoring malformed line %d in import file." +msgstr "Fehlerhafte Zeile %d der Quelldatei wurde ignoriert." + +#: motion/views.py:623 +#, python-format +msgid "%d motion was successfully imported." +msgid_plural "%d motions were successfully imported." +msgstr[0] "%d Antrag wurde erfolgreich importiert." +msgstr[1] "%d Anträge wurden erfolgreich importiert." + +#: motion/views.py:626 +#, python-format +msgid "%d motion was successfully modified." +msgid_plural "%d motions were successfully modified." +msgstr[0] "%d Antrag wurde erfolgreich geändert." +msgstr[1] "%d Anträge wurden erfolgreich geändert." + +#: motion/views.py:629 +#, python-format +msgid "%d new user was added." +msgid_plural "%d new users were added." +msgstr[0] "%d neuer Nutzer wurde erstellt." +msgstr[1] "%d neue Nutzer wurden erstellt." + +#: motion/views.py:633 participant/api.py:92 +msgid "Import aborted because of severe errors in the input file." +msgstr "Import auf Grund von schweren Fehlern in der Quelldatei abgebrochen." + +#: motion/views.py:635 participant/api.py:94 +msgid "Import file has wrong character encoding, only UTF-8 is supported!" +msgstr "" +"Die Quelldatei benutzt eine ungültige Zeichenkodierung, es wird nur UTF-8 " +"wird unterstützt!" + +#: motion/views.py:639 +msgid "" +"Attention: Existing motions will be modified if you import new motions with " +"the same number." +msgstr "" +"Achtung: Existierende Anträge werden geändert wenn Sie neue Anträge mit " +"identischer Nummer importieren." + +#: motion/views.py:640 +msgid "" +"Attention: Importing an motions without a number multiple times will create " +"duplicates." +msgstr "" +"Achtung: Bei mehrfachem Import eines Antrags ohne Nummer können Duplikate " +"entstehen." + +#: motion/views.py:673 motion/views.py:811 +#: motion/templates/motion/poll_view.html:7 +#: motion/templates/motion/poll_view.html:12 +#: motion/templates/motion/view.html:7 motion/templates/motion/view.html:206 +#: motion/templates/motion/view.html:225 +#: motion/templates/projector/Motion.html:7 +#: motion/templates/projector/Motion.html:65 +msgid "Motion" +msgstr "Antrag" + +#: motion/views.py:687 motion/templates/motion/overview.html:84 +msgid "No motions available." +msgstr "Keine Anträge vorhanden." + +#: motion/views.py:692 motion/views.py:694 motion/views.py:709 +#: motion/views.py:711 motion/templates/motion/base_motion.html:24 +#: motion/templates/projector/Motion.html:63 +msgid "Motion No." +msgstr "Antrag Nr." + +#: motion/views.py:726 +msgid "Signature" +msgstr "Unterschrift" + +#: motion/views.py:777 motion/templates/motion/base_motion.html:55 +#: motion/templates/motion/poll_view.html:8 +#: motion/templates/motion/poll_view.html:13 +#: motion/templates/motion/view.html:66 motion/templates/motion/view.html:74 +#: motion/templates/projector/Motion.html:33 +msgid "Vote" +msgstr "Abstimmung" + +#: motion/views.py:811 +msgid "Poll" +msgstr "Abstimmung" + +#: motion/views.py:825 +msgid "Motion No. %s" +msgstr "Antrag Nr. %s" + +#: motion/views.py:827 +#, python-format +msgid "%d. Vote" +msgstr "%d. Abstimmung" + +#: motion/views.py:884 +msgid "Motion settings successfully saved." +msgstr "Antrags-Einstellungen wurden erfolgreich gespeichert." + +#: motion/templates/motion/base_motion.html:11 +msgid "All motions" +msgstr "Alle Anträge" + +#: motion/templates/motion/base_motion.html:13 +#: motion/templates/motion/edit.html:10 motion/templates/motion/edit.html:18 +msgid "New motion" +msgstr "Neuer Antrag" + +#: motion/templates/motion/base_motion.html:16 +#: motion/templates/motion/import.html:5 motion/templates/motion/import.html:8 +msgid "Import motions" +msgstr "Anträge importieren" + +#: motion/templates/motion/base_motion.html:18 +msgid "All motions as PDF" +msgstr "Alle Anträge als PDF" + +#: motion/templates/motion/base_motion.html:34 +msgid "View motion" +msgstr "Antrag anzeigen" + +#: motion/templates/motion/base_motion.html:38 +#: motion/templates/motion/edit.html:8 motion/templates/motion/edit.html:16 +#: motion/templates/motion/overview.html:72 +msgid "Edit motion" +msgstr "Antrag bearbeiten" + +#: motion/templates/motion/base_motion.html:42 +#: motion/templates/motion/overview.html:74 +msgid "Delete motion" +msgstr "Antrag löschen" + +#: motion/templates/motion/base_motion.html:45 +#: motion/templates/motion/overview.html:77 +msgid "Motion as PDF" +msgstr "Antrag als PDF" + +#: motion/templates/motion/base_motion.html:49 +msgid "Show Motion" +msgstr "Zeige Antrag" + +#: motion/templates/motion/config.html:5 motion/templates/motion/config.html:8 +msgid "Motion settings" +msgstr "Antrags Einstellungen" + +#: motion/templates/motion/import.html:9 +msgid "Select a CSV file to import motions!" +msgstr "Wählen Sie eine CSV-Datei zum Importieren von Anträgen aus!" + +#: motion/templates/motion/import.html:11 +msgid "" +"Required comma separated values: {number, title, text, reason, " +"first_name, last_name} (number and reason " +"are optional and may be empty)" +msgstr "" +"Erforderliche kommaseparierte Werte: {Nummer, Titel, Text, Begründung, " +"Vorname, Nachname} (Nummer und Begründung " +"sind optional und können auch leer sein)" + +#: motion/templates/motion/import.html:13 +#: participant/templates/participant/import.html:13 +msgid "Required CSV file encoding: UTF-8 (Unicode)." +msgstr "Erforderliches CSV-Datei-Encoding: UTF-8 (Unicode)." + +#: motion/templates/motion/import.html:16 +#: participant/templates/participant/import.html:16 +msgid "A CSV example file is available in OpenSlides Wiki." +msgstr "Eine CSV-Beispiel-Datei gibt es im OpenSlides Wiki." + +#: motion/templates/motion/import.html:23 +#: participant/templates/participant/import.html:23 +msgid "Import" +msgstr "Importieren" + +#: motion/templates/motion/overview.html:15 +msgid "Need supporters" +msgstr "Benötigt Unterstützer/innen" + +#: motion/templates/motion/overview.html:18 +msgid "Without number" +msgstr "Ohne Nummer" + +#: motion/templates/motion/overview.html:22 +msgid "Not yet authorized" +msgstr "Noch nicht zugelassen" + +#: motion/templates/motion/overview.html:23 +msgid "Authorized" +msgstr "Zugelassen" + +#: motion/templates/motion/overview.html:26 +msgid "Withdrawen (by submitter)" +msgstr "Zurückgezogen (durch Antragsteller/in)" + +#: motion/templates/motion/overview.html:35 +msgid "Number" +msgstr "Nummer" + +#: motion/templates/motion/overview.html:36 +msgid "Motion title" +msgstr "Antragstitel" + +#: motion/templates/motion/overview.html:38 +msgid "Number of supporters" +msgstr "Anzahl der Unterstützer/innen" + +#: motion/templates/motion/overview.html:42 +#: motion/templates/motion/view.html:109 +msgid "Creation Time" +msgstr "Erstellungszeit" + +#: motion/templates/motion/overview.html:67 +msgid "Activate motion" +msgstr "Antrag projizieren" + +#: motion/templates/motion/poll_view.html:21 +msgid "Option" +msgstr "Wahlmöglichkeit" + +#: motion/templates/motion/view.html:51 motion/templates/motion/view.html:91 +msgid "New vote" +msgstr "Neue Abstimmung" + +#: motion/templates/motion/view.html:67 +msgid "Edit Vote" +msgstr "Abstimmung bearbeiten" + +#: motion/templates/motion/view.html:70 +msgid "Delete Vote" +msgstr "Abstimmung löschen" + +#: motion/templates/motion/view.html:99 +msgid "Enter result" +msgstr "Ergebnis eingeben" + +#: motion/templates/motion/view.html:116 +msgid "Withdraw" +msgstr "Zurückziehen" + +#: motion/templates/motion/view.html:124 +msgid "Unsupport" +msgstr "Nicht unterstützen" + +#: motion/templates/motion/view.html:130 +msgid "Support" +msgstr "Unterstützen" + +#: motion/templates/motion/view.html:136 +msgid "minimum required supporters" +msgstr "minimal erforderliche Unterstützer/innen" + +#: motion/templates/motion/view.html:143 +msgid "Manage motion" +msgstr "Antrag Verwalten" + +#: motion/templates/motion/view.html:146 +msgid "Formal validation" +msgstr "Formale Gültigkeitsprüfung" + +#: motion/templates/motion/view.html:148 +msgid "Publish" +msgstr "Veröffentlichen" + +#: motion/templates/motion/view.html:151 +msgid "Permit" +msgstr "Zulassen" + +#: motion/templates/motion/view.html:154 +msgid "Not permit (reject)" +msgstr "Nicht zulassen (verwerfen)" + +#: motion/templates/motion/view.html:157 +msgid "Set Number" +msgstr "Setze Nummer" + +#: motion/templates/motion/view.html:164 +msgid "Result after vote" +msgstr "Ergebnis nach der Abstimmung" + +#: motion/templates/motion/view.html:178 +msgid "Result after debate" +msgstr "Ergebnis nach der Debatte" + +#: motion/templates/motion/view.html:189 +msgid "Withdrawed by Submitter" +msgstr "Zurückgezogen durch Antragsteller/in" + +#: motion/templates/motion/view.html:194 +msgid "For Administration only:" +msgstr "Nur zur Administration:" + +#: motion/templates/motion/view.html:196 +msgid "Reset" +msgstr "Zurücksetzen" + +#: motion/templates/motion/view.html:219 +msgid "This is not the newest version." +msgstr "Dies ist nicht die neuste Version." + +#: motion/templates/motion/view.html:219 motion/templates/motion/view.html:221 +msgid "Go to version" +msgstr "Gehe zu Version" + +#: motion/templates/motion/view.html:221 +msgid "This is not the authorized version." +msgstr "Dies ist nicht die zugelassene Version." + +#: motion/templates/motion/view.html:239 +msgid "Version History" +msgstr "Versionshistorie" + +#: motion/templates/motion/view.html:245 +msgid "Time" +msgstr "Zeit" + +#: motion/templates/motion/view.html:256 +msgid "Version authorized" +msgstr "Version %d zugelassen" + +#: motion/templates/motion/view.html:259 +msgid "Permit Version" +msgstr "Version zulassen" + +#: motion/templates/motion/view.html:262 +msgid "Reject Version" +msgstr "Version verwerfen" + +#: motion/templates/motion/view.html:266 +msgid "Version rejected" +msgstr "Version verworfen" + +#: motion/templates/motion/view.html:276 motion/templates/motion/view.html:283 +#: motion/templates/motion/view.html:290 +msgid "unchanged" +msgstr "unverändert" + +#: motion/templates/motion/view.html:299 +msgid "Log" +msgstr "Log" + +#: motion/templates/motion/widget.html:31 +msgid "No motion available." +msgstr "Keine Antrag vorhanden." + +#: motion/templates/projector/Motion.html:29 +msgid "Poll result" +msgstr "Abstimmungsergebnis" + +#: motion/templates/projector/Motion.html:47 +msgid "No poll results available." +msgstr "Keine Abstimmungen vorhanden." + #: participant/__init__.py:3 msgid "Participant" msgstr "Teilnehmer" @@ -1705,7 +1679,7 @@ msgstr "Erscheint nur im PDF der Erst-Passwörter" #: participant/forms.py:118 msgid "Sort users by first name" -msgstr "" +msgstr "Sortiere Teilnehmer beim Vornamen" #: participant/models.py:29 participant/templates/participant/overview.html:25 msgid "Male" @@ -1733,8 +1707,8 @@ msgstr "Gast" #: participant/models.py:41 participant/templates/participant/overview.html:30 #: participant/templates/participant/overview.html:68 -msgid "Category" -msgstr "Kategorie" +msgid "Detail" +msgstr "Detail" #: participant/models.py:42 msgid "Will be shown behind the name." @@ -1752,7 +1726,7 @@ msgstr "Nur zum Filtern der Benutzerliste." msgid "Typ" msgstr "Typ" -#: participant/models.py:50 participant/views.py:219 +#: participant/models.py:50 participant/views.py:217 #: participant/templates/participant/overview.html:45 #: participant/templates/participant/overview.html:70 msgid "Committee" @@ -1766,86 +1740,86 @@ msgstr "Nur für Notizen." msgid "Default password" msgstr "Vorgegebenes Passwort" -#: participant/models.py:99 +#: participant/models.py:102 msgid "Can see participant" msgstr "Darf die Teilnehmer/inen sehen" -#: participant/models.py:101 +#: participant/models.py:104 msgid "Can manage participant" msgstr "Darf die Teilnehmer/inen verwalten" -#: participant/views.py:214 +#: participant/views.py:212 msgid "Participant-list" msgstr "Teilnehmerliste" -#: participant/views.py:215 +#: participant/views.py:213 msgid "List of Participants" msgstr "Teilnehmerliste" -#: participant/views.py:218 participant/templates/participant/overview.html:67 +#: participant/views.py:216 participant/templates/participant/overview.html:67 msgid "Last Name" msgstr "Nachname" -#: participant/views.py:218 participant/templates/participant/overview.html:66 +#: participant/views.py:216 participant/templates/participant/overview.html:66 msgid "First Name" msgstr "Vorname" -#: participant/views.py:218 +#: participant/views.py:216 msgid "Group" msgstr "Gruppe" -#: participant/views.py:218 participant/templates/participant/overview.html:37 +#: participant/views.py:216 participant/templates/participant/overview.html:37 #: participant/templates/participant/overview.html:69 msgid "Type" msgstr "Typ" -#: participant/views.py:247 +#: participant/views.py:245 msgid "Participant-passwords" msgstr "Teilnehmer-Passwoerter" -#: participant/views.py:269 +#: participant/views.py:263 msgid "Account for OpenSlides" msgstr "Zugang für OpenSlides" -#: participant/views.py:271 +#: participant/views.py:265 #, python-format msgid "for %s" msgstr "für %s" -#: participant/views.py:274 +#: participant/views.py:268 #, python-format msgid "User: %s" msgstr "Nutzername: %s" -#: participant/views.py:278 +#: participant/views.py:272 #, python-format msgid "Password: %s" msgstr "Passwort: %s" -#: participant/views.py:283 +#: participant/views.py:277 #, python-format msgid "URL: %s" msgstr "URL: %s" -#: participant/views.py:368 +#: participant/views.py:319 #, python-format msgid "%d new participants were successfully imported." msgstr "%d neue Teilnehmer/innen wurden erfolgreich importiert." -#: participant/views.py:379 +#: participant/views.py:330 msgid "Do you really want to reset the password?" msgstr "Soll das Passwort wirklich zurückgesetzt werden?" -#: participant/views.py:395 +#: participant/views.py:346 #, python-format msgid "The Password for %s was successfully reset." msgstr "Das Passwort für %s wurde erfolgreich zurückgesetzt." -#: participant/views.py:477 +#: participant/views.py:428 msgid "Participants settings successfully saved." msgstr "Teilnehmer/innen-Einstellungen wurden erfolgreich gespeichert." -#: participant/views.py:487 +#: participant/views.py:438 #, python-format msgid "" "Installation was successfully! Use %(user)s (password: %(password)s) for " @@ -1858,15 +1832,15 @@ msgstr "" "Sie das Passwort nach der ersten Anmeldung! Anderenfalls erscheint diese " "Meldung weiterhin für alle und ist ein Sicherheitsrisiko." -#: participant/views.py:510 +#: participant/views.py:461 msgid "User settings successfully saved." msgstr "Nutzereinstellungen wurden erfolgreich gespeichert." -#: participant/views.py:532 +#: participant/views.py:483 msgid "Password successfully changed." msgstr "Password wurde erfolgreich geändert." -#: participant/views.py:550 +#: participant/views.py:501 #: participant/templates/participant/base_participant.html:12 #: participant/templates/participant/overview.html:7 #: participant/templates/participant/overview.html:18 @@ -2060,23 +2034,23 @@ msgstr "Darf den Projektor sehen" msgid "Can see the dashboard" msgstr "Darf das Dashboard sehen" -#: projector/views.py:184 +#: projector/views.py:185 msgid "Errors in the form" msgstr "Fehler im Formular" -#: projector/views.py:360 projector/templates/projector/dashboard.html:17 +#: projector/views.py:361 projector/templates/projector/dashboard.html:17 msgid "Dashboard" msgstr "Dashboard" -#: projector/views.py:377 +#: projector/views.py:378 msgid "Projector live view" msgstr "Projektor-Live-Ansicht" -#: projector/views.py:403 +#: projector/views.py:404 msgid "Overlays" msgstr "Einblendungen" -#: projector/views.py:416 +#: projector/views.py:417 msgid "Custom Slides" msgstr "Benutzerdefinierte Folien" @@ -2101,6 +2075,7 @@ msgid "Projector view" msgstr "Projektor-Ansicht" #: projector/templates/projector/control_countdown.html:6 +msgctxt "seconds" msgid "s" msgstr "s" @@ -2187,16 +2162,16 @@ msgstr "Abmelden" msgid "You have access to the following pages:" msgstr "Sie haben Zugriff auf folgende Seiten:" -#: utils/pdf.py:224 +#: utils/pdf.py:225 msgid "%Y-%m-%d %H:%Mh" msgstr "%d.%m.%Y %H:%Mh" -#: utils/pdf.py:225 +#: utils/pdf.py:226 #, python-format msgid "Printed: %s" msgstr "Gedruckt am: %s" -#: utils/pdf.py:236 utils/pdf.py:245 +#: utils/pdf.py:237 utils/pdf.py:246 #, python-format msgid "Page %s" msgstr "Seite %s" @@ -2241,6 +2216,27 @@ msgstr "undefinierter-dateiname" msgid "Enter valid JSON" msgstr "Gebe valides JSON ein" +#~ msgid "Applications" +#~ msgstr "Anträge" + +#~ msgid "Application" +#~ msgstr "Antrag" + +#~ msgid "Application No. %s" +#~ msgstr "Antrag Nr. %s" + +#~ msgid "Application No." +#~ msgstr "Antrag Nr." + +#~ msgid "Show Application" +#~ msgstr "Antrag projizieren" + +#~ msgid "Application settings" +#~ msgstr "Antrags-Einstellungen" + +#~ msgid "Category" +#~ msgstr "Kategorie" + #~ msgid "Do you really want to delete multiple motions?" #~ msgstr "Wollen Sie wirklich mehrere Anträge löschen?" diff --git a/openslides/motion/views.py b/openslides/motion/views.py index 9be63f5ed..9d6f78ed9 100644 --- a/openslides/motion/views.py +++ b/openslides/motion/views.py @@ -426,10 +426,13 @@ class MotionDelete(DeleteView): """ Delete one or more Motions. """ - permission_required = 'motion.can_manage_motion' model = Motion url = 'motion_overview' + def has_permission(self, request, *args, **kwargs): + self.kwargs = kwargs + return self.get_object().get_allowed_actions(request.user) + def get_object(self): self.motions = [] diff --git a/openslides/participant/forms.py b/openslides/participant/forms.py index 4687432fe..153285d8f 100644 --- a/openslides/participant/forms.py +++ b/openslides/participant/forms.py @@ -27,7 +27,7 @@ class UserCreateForm(forms.ModelForm, CssClassMixin): class Meta: model = User - fields = ('first_name', 'last_name', 'is_active', 'groups', 'category', + fields = ('first_name', 'last_name', 'is_active', 'groups', 'detail', 'gender', 'type', 'committee', 'comment', 'default_password') @@ -35,7 +35,7 @@ class UserUpdateForm(UserCreateForm): class Meta: model = User fields = ('username', 'first_name', 'last_name', 'is_active', 'groups', - 'category', 'gender', 'type', 'committee', 'comment', + 'detail', 'gender', 'type', 'committee', 'comment', 'default_password') diff --git a/openslides/participant/models.py b/openslides/participant/models.py index 42b965f69..cabb54b7a 100644 --- a/openslides/participant/models.py +++ b/openslides/participant/models.py @@ -16,14 +16,14 @@ from django.db.models import signals from django.dispatch import receiver from django.utils.translation import ugettext_lazy as _, ugettext_noop -from openslides.utils.person import PersonMixin +from openslides.utils.person import PersonMixin, Person from openslides.utils.person.signals import receive_persons from openslides.config.models import config from openslides.config.signals import default_config_value -class User(DjangoUser, PersonMixin): +class User(DjangoUser, PersonMixin, Person): person_prefix = 'user' GENDER_CHOICES = ( ('male', _('Male')), @@ -37,8 +37,8 @@ class User(DjangoUser, PersonMixin): ) django_user = models.OneToOneField(DjangoUser, editable=False, parent_link=True) - category = models.CharField( - max_length=100, null=True, blank=True, verbose_name=_("Category"), + detail = models.CharField( + max_length=100, blank=True, default='', verbose_name=_("Detail"), help_text=_('Will be shown behind the name.')) gender = models.CharField( max_length=50, choices=GENDER_CHOICES, blank=True, @@ -47,20 +47,24 @@ class User(DjangoUser, PersonMixin): max_length=100, choices=TYPE_CHOICES, blank=True, verbose_name=_("Typ"), help_text=_('Only for filter the userlist.')) committee = models.CharField( - max_length=100, null=True, blank=True, verbose_name=_("Committee"), + max_length=100, blank=True, default='', verbose_name=_("Committee"), help_text=_('Only for filter the userlist.')) comment = models.TextField( - null=True, blank=True, verbose_name=_('Comment'), + blank=True, default='', verbose_name=_('Comment'), help_text=_('Only for notes.')) default_password = models.CharField( - max_length=100, null=True, blank=True, + max_length=100, blank=True, default='', verbose_name=_("Default password")) + @property + def clean_name(self): + return self.get_full_name() or self.username + def get_name_suffix(self): - return self.category + return self.detail def set_name_suffix(self, value): - self.category = value + self.detail = value name_suffix = property(get_name_suffix, set_name_suffix) @@ -88,10 +92,9 @@ class User(DjangoUser, PersonMixin): return ('user_delete', [str(self.id)]) def __unicode__(self): - name = self.get_full_name() or self.username if self.name_suffix: - return u"%s (%s)" % (name, self.name_suffix) - return u"%s" % name + return u"%s (%s)" % (self.clean_name, self.name_suffix) + return u"%s" % self.clean_name class Meta: # Rename permissions @@ -103,7 +106,7 @@ class User(DjangoUser, PersonMixin): ordering = ('last_name',) -class Group(DjangoGroup, PersonMixin): +class Group(DjangoGroup, PersonMixin, Person): person_prefix = 'group' django_group = models.OneToOneField(DjangoGroup, editable=False, parent_link=True) diff --git a/openslides/participant/templates/participant/overview.html b/openslides/participant/templates/participant/overview.html index 452bdcb53..f950bc302 100644 --- a/openslides/participant/templates/participant/overview.html +++ b/openslides/participant/templates/participant/overview.html @@ -26,11 +26,11 @@ - + + {% for detail in details %} + {% endfor %}