Updated translation strings and German translation.

This commit is contained in:
Emanuel Schütze 2020-03-15 23:56:49 +01:00 committed by FinnStutzenstein
parent ee4c6aa0bf
commit d15c9892ed
32 changed files with 538 additions and 321 deletions

View File

@ -1,5 +1,6 @@
import { Injectable } from '@angular/core';
import { _ } from 'app/core/translate/translation-marker';
import { TranslateService } from '@ngx-translate/core';
import { BehaviorSubject, Observable } from 'rxjs';
@ -20,7 +21,7 @@ export class OfflineService {
*/
private offline = new BehaviorSubject<boolean>(false);
private bannerDefinition: BannerDefinition = {
text: 'Offline mode',
text: _('Offline mode'),
icon: 'cloud_off'
};

View File

@ -99,7 +99,9 @@ _('Only main agenda items');
_('Topics');
_('Open requests to speak');
// Motions config strings
// ** Motions **
// config strings
// subgroup general
_('General');
_('Workflow of new motions');
@ -155,7 +157,7 @@ _('Choose 0 to disable the supporting system.');
_('Remove all supporters of a motion if a submitter edits his motion in early state');
// subgroup Voting and ballot papers
_('Voting and ballot papers');
_('The 100 % base of a voting result consists of');
_('Default 100 % base of a voting result');
_('Yes/No/Abstain');
_('Yes/No');
_('All valid ballots');
@ -173,17 +175,12 @@ _('Number of all participants');
_('Use the following custom number');
_('Custom number of ballot papers');
_('Voting');
_('Click here to vote');
// subgroup PDF export
_('PDF export');
_('Title for PDF documents of motions');
_('Preamble text for PDF documents of motions');
_('Show submitters and recommendation/state in table of contents');
_('Show checkbox to record decision');
// misc motion strings
_('Amendment');
_('Statute amendment for');
_('Statute paragraphs');
// motion workflow 1
_('Simple Workflow');
@ -226,46 +223,7 @@ _('Needs review');
_('rejected (not authorized)');
_('Reject (not authorized)');
_('Rejection (not authorized)');
// misc for motions
_('Called');
_('Called with');
_('Recommendation');
_('Motion block');
_('The text field may not be blank.');
_('The reason field may not be blank.');
// Assignment config strings
_('Election method');
_('Automatic assign of method');
_('Always one option per candidate');
_('Always Yes-No-Abstain per candidate');
_('Always Yes/No per candidate');
_('Elections');
_('Ballot and ballot papers');
_('The 100-%-base of an election result consists of');
_(
'For Yes/No/Abstain per candidate and Yes/No per candidate the 100-%-base depends on the election method: If there is only one option per candidate, the sum of all votes of all candidates is 100 %. Otherwise for each candidate the sum of all votes is 100 %.'
);
_('Yes/No/Abstain per candidate');
_('Yes/No per candidate');
_('All valid ballots');
_('All casted ballots');
_('Disabled (no percents)');
_('Number of ballot papers (selection)');
_('Number of all delegates');
_('Number of all participants');
_('Use the following custom number');
_('Custom number of ballot papers');
_('Required majority');
_('Default method to check whether a candidate has reached the required majority.');
_('Simple majority');
_('Two-thirds majority');
_('Three-quarters majority');
_('Disabled');
_('Put all candidates on the list of speakers');
_('Title for PDF document (all elections)');
_('Preamble text for PDF document (all elections)');
// motion workflow
// motion workflow manager
_('Recommendation label');
_('Allow support');
_('Allow create poll');
@ -277,12 +235,63 @@ _('Show amendment in parent motion');
_('Restrictions');
_('Label color');
_('Next states');
// misc for motions
_('Amendment');
_('Statute amendment for');
_('Statute paragraphs');
_('Called');
_('Called with');
_('Recommendation');
_('Motion block');
_('The text field may not be blank.');
_('The reason field may not be blank.');
// other translations
// ** Assignments **
// Assignment config strings
_('Elections');
// subgroup ballot
_('Default election method');
_('Default 100 % base of an election result');
_('All valid ballots');
_('All casted ballots');
_('Disabled (no percents)');
_('Default groups with voting rights');
_('Sort election results by amount of votes')
_('Put all candidates on the list of speakers');
// subgroup ballot papers
_('Ballot papers');
_('Number of ballot papers');
_('Number of all delegates');
_('Number of all participants');
_('Use the following custom number');
_('Custom number of ballot papers');
_('Required majority');
_('Default method to check whether a candidate has reached the required majority.');
_('Simple majority');
_('Two-thirds majority');
_('Three-quarters majority');
_('Disabled');
_('Title for PDF document (all elections)');
_('Preamble text for PDF document (all elections)');
// misc for assignments
_('Searching for candidates');
_('Finished');
_('In the election process');
// Voting strings
_('Voting type');
_('analog');
_('nominal');
_('non-nominal');
_('Start voting');
_('Stop voting');
_('Publish');
_('Entitled to vote');
_('Voting method');
_('Amount of votes');
// ** Users **
// permission strings (see models.py of each Django app)
// agenda

View File

@ -1,5 +1,6 @@
import { Injectable } from '@angular/core';
import { _ } from 'app/core/translate/translation-marker';
import { TranslateService } from '@ngx-translate/core';
import { ViewAssignmentPoll } from 'app/site/assignments/models/view-assignment-poll';
@ -16,7 +17,7 @@ import { VotingService } from './voting.service';
export class VotingBannerService {
private currentBanner: BannerDefinition;
private subText = 'Click here to vote';
private subText = _('Click here to vote!');
public constructor(
pollListObservableService: PollListObservableService,
@ -44,7 +45,7 @@ export class VotingBannerService {
pollsToVote.length === 1
? this.createBanner(this.getTextForPoll(pollsToVote[0]), pollsToVote[0].parentLink)
: this.createBanner(
`${this.translate.instant('You have polls to vote on')}: ${pollsToVote.length}`,
`${pollsToVote.length} ${this.translate.instant('open votes')}`,
'/polls/'
);
this.sliceBanner(banner);
@ -81,7 +82,7 @@ export class VotingBannerService {
'Voting opened'
)}`;
} else if (poll instanceof ViewAssignmentPoll) {
return `${poll.assignment.getTitle()}: ${this.translate.instant('Ballot openened!')}`;
return `${poll.assignment.getTitle()}: ${this.translate.instant('Ballot opened')}`;
}
}

View File

@ -9,8 +9,8 @@ const PollValues = {
yes: 'Yes',
no: 'No',
abstain: 'Abstain',
amount_global_abstain: 'Global abstain',
amount_global_no: 'Global no'
amount_global_abstain: 'General abstain',
amount_global_no: 'General no'
};
/**

View File

@ -279,19 +279,19 @@
type="number"
required
/>
<mat-error *ngIf="assignmentForm.get('open_posts').hasError('required')">{{
'This field is required.' | translate
}}</mat-error>
<mat-error *ngIf="assignmentForm.get('open_posts').hasError('min')">{{
'The number has to be greater than 0.' | translate
}}</mat-error>
<mat-error *ngIf="assignmentForm.get('open_posts').hasError('required')">
{{ 'This field is required.' | translate }}
</mat-error>
<mat-error *ngIf="assignmentForm.get('open_posts').hasError('min')">
{{ 'The number has to be greater than 0.' | translate }}
</mat-error>
</mat-form-field>
</div>
<!-- Number poll candidates -->
<!-- Number candidates -->
<div>
<mat-checkbox formControlName="number_poll_candidates">
<span translate>Number poll candidates</span>
<span translate>Number candidates</span>
</mat-checkbox>
</div>
</form>

View File

@ -18,7 +18,15 @@
<ng-template #viewTemplate>
<div *ngIf="isReady">
<h1>{{ poll.title }}</h1>
<span *ngIf="poll.type !== 'analog'">{{ poll.typeVerbose | translate }}</span>
<div>
<!-- Voting type -->
<span *ngIf="poll.type !== 'analog'"> {{ poll.typeVerbose | translate }} &middot; </span>
<!-- State -->
<span>
{{ poll.stateVerbose | translate }}
</span>
</div>
<div class="assignment-result-wrapper" *ngIf="poll.stateHasVotes">
<!-- Result Table -->

View File

@ -13,7 +13,7 @@
<div *ngFor="let option of options" class="votes-grid">
<div>
<span *ngIf="option.user">{{ option.user.getFullName() }}</span>
<span *ngIf="!option.user">{{ 'Unknown User' | translate }}</span>
<span *ngIf="!option.user">{{ 'Unknown user' | translate }}</span>
</div>
<div>
@ -46,7 +46,7 @@
<div>
<os-check-input
*ngIf="globalNoEnabled"
placeholder="{{ 'Global No' | translate }}"
placeholder="{{ 'General No' | translate }}"
[checkboxValue]="-1"
inputType="number"
[checkboxLabel]="'majority' | translate"
@ -55,7 +55,7 @@
<os-check-input
*ngIf="globalAbstainEnabled"
placeholder="{{ 'Global Abstain' | translate }}"
placeholder="{{ 'General Abstain' | translate }}"
[checkboxValue]="-1"
inputType="number"
[checkboxLabel]="'majority' | translate"
@ -70,7 +70,7 @@
<span translate>Publish immediately</span>
</mat-checkbox>
<mat-error *ngIf="!dialogVoteForm.valid" translate>
If you want to publish after creating, you have to fill at least one of the fields.
Error in form field.
</mat-error>
</div>
</ng-container>

View File

@ -9,7 +9,7 @@
<h4
*ngIf="poll.pollmethod === AssignmentPollMethod.Votes && poll.votes_amount > 1"
>
{{ 'Votes for this poll' | translate }}: {{ getVotesCount() }}/{{ poll.votes_amount }}
{{ 'Available votes' | translate }}: {{ getVotesCount() }}/{{ poll.votes_amount }}
</h4>
<!-- Options and Actions -->
@ -69,7 +69,7 @@
<mat-icon> thumb_down </mat-icon>
</button>
<span class="vote-label">
{{ 'No to all' | translate }}
{{ 'General No' | translate }}
</span>
</div>
@ -82,7 +82,7 @@
<mat-icon> trip_origin</mat-icon>
</button>
<span class="vote-label">
{{ 'Abstain' | translate }}
{{ 'General Abstain' | translate }}
</span>
</div>
</div>
@ -105,7 +105,7 @@
check_circle
</mat-icon>
<br />
<span>{{ 'You already voted on this poll.' | translate }}</span>
<span>{{ 'Voting successful.' | translate }}</span>
</div>
</div>
</ng-template>

View File

@ -43,7 +43,7 @@ export class AssignmentPollVoteComponent extends BasePollVoteComponent<ViewAssig
public constructor(
title: Title,
translate: TranslateService,
protected translate: TranslateService,
matSnackbar: MatSnackBar,
vmanager: VotingService,
operator: OperatorService,
@ -102,8 +102,8 @@ export class AssignmentPollVoteComponent extends BasePollVoteComponent<ViewAssig
}
public submitVote(): void {
const title = this.translate.instant('Are you sure?');
const content = this.translate.instant('Your decision cannot be changed afterwards');
const title = this.translate.instant('Submit selection now?');
const content = this.translate.instant('Your decision cannot be changed afterwards.');
this.promptService.open(title, content).then(confirmed => {
if (confirmed) {
this.pollRepo

View File

@ -9,7 +9,14 @@
</mat-card-title>
<!-- Type and State -->
<div>
<div class="italic spacer-bottom-20">
<span *osPerms="'assignments.can_manage'; and: poll.type === 'pseudoanonymous'">
<button mat-icon-button color="warn" (click)="openVotingWarning()">
<mat-icon>
warning
</mat-icon>
</button>
</span>
<span *ngIf="poll.type !== 'analog'"> {{ poll.typeVerbose | translate }} &middot; </span>
<span>
{{ poll.stateVerbose | translate }}
@ -65,7 +72,7 @@
<!-- Cannot see unpublished -->
<div *osPerms="'assignments.can_manage'; complement: true">
<span *ngIf="poll.isFinished">
{{ 'Counting is in progress' | translate }}
{{ 'Counting of votes is in progress ...' | translate }}
</span>
</div>
</div>
@ -107,7 +114,7 @@
<div *osPerms="'assignments.can_manage'">
<button mat-menu-item (click)="printBallot()">
<mat-icon>picture_as_pdf</mat-icon>
<span translate>Ballot paper</span>
<span translate>Ballot papers</span>
</button>
<mat-divider></mat-divider>
<!-- Reset Button -->

View File

@ -1,5 +1,6 @@
import { BehaviorSubject } from 'rxjs';
import { _ } from 'app/core/translate/translation-marker';
import { ChartData } from 'app/shared/components/charts/charts.component';
import {
AssignmentPoll,
@ -17,18 +18,18 @@ export interface AssignmentPollTitleInformation {
}
export const AssignmentPollMethodVerbose = {
votes: 'Yes per candidate',
YN: 'Yes/No per candidate',
YNA: 'Yes/No/Abstain per candidate'
votes: _('Yes per candidate'),
YN: _('Yes/No per candidate'),
YNA: _('Yes/No/Abstain per candidate')
};
export const AssignmentPollPercentBaseVerbose = {
YN: 'Yes/No per candidate',
YNA: 'Yes/No/Abstain per candidate',
votes: 'Sum of votes inclusive global ones',
valid: 'All valid ballots',
cast: 'All cast ballots',
disabled: 'Disabled (no percents)'
YN: _('Yes/No per candidate'),
YNA: _('Yes/No/Abstain per candidate'),
votes: _('Sum of votes including general No/Abstain'),
valid: _('All valid ballots'),
cast: _('All casted ballots'),
disabled: _('Disabled (no percents)')
};
export class ViewAssignmentPoll extends ViewBasePoll<AssignmentPoll, AssignmentPollMethod, AssignmentPollPercentBase>

View File

@ -20,16 +20,16 @@
<h1>{{ poll.title | translate }}</h1>
<div>
<!-- Subtitle -->
<!-- Voting type -->
<span *ngIf="poll.type !== 'analog'"> {{ poll.typeVerbose | translate }} &middot; </span>
<!-- State chip -->
<!-- State -->
<span>
{{ poll.stateVerbose | translate }}
</span>
</div>
<div *ngIf="!poll.hasVotes || !poll.stateHasVotes">{{ 'No results to show' | translate }}</div>
<p *ngIf="!poll.hasVotes || !poll.stateHasVotes">{{ 'No results yet.' | translate }}</p>
<div *ngIf="poll.stateHasVotes && (hasPerms() || poll.isPublished)">
<os-motion-poll-detail-content [poll]="poll" [chartData]="chartDataSubject">

View File

@ -47,7 +47,7 @@
<span translate>Publish immediately</span>
</mat-checkbox>
<mat-error *ngIf="!dialogVoteForm.valid" translate>
If you want to publish after creating, you have to fill at least one of the fields.
Error in form field.
</mat-error>
</div>
</ng-container>

View File

@ -1,5 +1,5 @@
<os-head-bar>
<div class="title-slot" translate>Motions poll list</div>
<div class="title-slot">Motions poll list</div>
<!-- Menu -->
<div class="menu-slot">

View File

@ -24,7 +24,7 @@
check_circle
</mat-icon>
<br />
<span>{{ 'You already voted on this poll.' | translate }}</span>
<span>{{ 'Voting successful.' | translate }}</span>
</div>
</div>
</ng-template>

View File

@ -63,8 +63,8 @@ export class MotionPollVoteComponent extends BasePollVoteComponent<ViewMotionPol
*/
public saveVote(vote: 'Y' | 'N' | 'A'): void {
this.currentVote.vote = vote;
const title = this.translate.instant('Are you sure?');
const content = this.translate.instant('Your decision cannot be changed afterwards');
const title = this.translate.instant('Submit selection now?');
const content = this.translate.instant('Your decision cannot be changed afterwards.');
this.promptService.open(title, content).then(confirmed => {
if (confirmed) {
this.pollRepo.vote(vote, this.poll.id).catch(this.raiseError);

View File

@ -2,7 +2,7 @@
<!-- Poll Infos -->
<div class="poll-title-wrapper">
<!-- Title Area -->
<div class="poll-title-area">
<div class="poll-title-area spacer-bottom-20">
<!-- Title -->
<span class="poll-title">
<a [routerLink]="pollLink">
@ -10,7 +10,7 @@
</a>
</span>
<div>
<div class="italic">
<span *osPerms="'motions.can_manage_polls'; and: poll.type === 'pseudoanonymous'">
<button mat-icon-button color="warn" (click)="openVotingWarning()">
<mat-icon>
@ -100,7 +100,7 @@
<!-- In Progress hint -->
<div class="motion-couting-in-progress-hint" *osPerms="'motions.can_manage_polls'; complement: true">
<span *ngIf="poll.isFinished">
{{ 'Counting is in progress' | translate }}
{{ 'Counting of votes is in progress ...' | translate }}
</span>
</div>
</ng-template>
@ -120,7 +120,7 @@
<os-projector-button [menuItem]="true" [object]="poll" *osPerms="'core.can_manage_projector'"></os-projector-button>
<button mat-menu-item (click)="downloadPdf()">
<mat-icon>picture_as_pdf</mat-icon>
<span translate>Ballot paper</span>
<span translate>Ballot papers</span>
</button>
<div *osPerms="'motions.can_manage_polls'">
<mat-divider></mat-divider>

View File

@ -11,10 +11,10 @@
<!-- TODO: rather disable forms than duplicate them -->
<div *ngIf="data && data.state" class="poll-preview-meta-info">
<span class="short-description" *ngFor="let value of pollValues">
<span class="short-description-label subtitle" translate>
<span class="short-description-label subtitle">
{{ value[0] }}
</span>
<span class="short-description-value" translate>
<span class="short-description-value">
{{ value[1] }}
</span>
</span>
@ -28,7 +28,7 @@
{{ option.value | translate }}
</mat-option>
</mat-select>
<mat-error translate>This field is required</mat-error>
<mat-error translate>This field is required.</mat-error>
<mat-hint (click)="openVotingWarning()" *ngIf="showNonNominalWarning"> {{ 'Not suitable for formal secret voting!' | translate }}</mat-hint>
</mat-form-field>
@ -52,10 +52,10 @@
required
>
<mat-option *ngFor="let option of pollMethods | keyvalue: keepEntryOrder" [value]="option.key">
{{ option.value }}
{{ option.value | translate }}
</mat-option>
</mat-select>
<mat-error translate>This field is required</mat-error>
<mat-error translate>This field is required.</mat-error>
</mat-form-field>
</ng-container>

View File

@ -1,10 +1,5 @@
<os-head-bar>
<div class="title-slot" translate>Poll list</div>
<!-- Menu -->
<div class="menu-slot">
<button type="button" mat-icon-button [matMenuTriggerFor]="pollMenu"><mat-icon>more_vert</mat-icon></button>
</div>
<div class="title-slot" translate>List of votes</div>
</os-head-bar>
<os-list-view-table
@ -25,18 +20,10 @@
</div>
<div *pblNgridCellDef="'state'; row as poll;" class="cell-slot fill">
<a class="detail-link" [routerLink]="poll.parentLink" *ngIf="!isMultiSelect"></a>
<span>{{ poll.stateVerbose }}</span>
<span>{{ poll.stateVerbose | translate }}</span>
</div>
<div *pblNgridCellDef="'votability'; row as poll;" class="cell-slot fill">
<mat-icon *ngIf="poll.user_has_voted_valid" color="accent" matTooltip="{{ 'You have already voted on this poll. Good job!' | translate }}">check_circle</mat-icon>
<mat-icon *ngIf="!poll.user_has_voted_valid && poll.canBeVotedFor" color="warn" matTooltip="{{ 'You still have to vote on this poll.' | translate }}">warning</mat-icon>
<mat-icon *ngIf="poll.user_has_voted_valid" color="accent" matTooltip="{{ 'You have already voted.' | translate }}">check_circle</mat-icon>
<mat-icon *ngIf="!poll.user_has_voted_valid && poll.canBeVotedFor" color="warn" matTooltip="{{ 'Voting is currently in progress.' | translate }}">warning</mat-icon>
</div>
</os-list-view-table>
<mat-menu #pollMenu="matMenu">
<!-- Settings -->
<button mat-menu-item *osPerms="'core.can_manage_config'" routerLink="/settings/polls">
<mat-icon>settings</mat-icon>
<span translate>Settings</span>
</button>
</mat-menu>

View File

@ -48,5 +48,6 @@ export class PollListComponent extends BaseListViewComponent<ViewBasePoll> {
snackbar: MatSnackBar
) {
super(title, translate, snackbar, storage);
super.setTitle('List of votes');
}
}

View File

@ -44,8 +44,8 @@ export const PollPropertyVerbose = {
state: 'State',
groups: 'Entitled to vote',
votes_amount: 'Amount of votes',
global_no: 'general "No"',
global_abstain: 'general "Abstain"'
global_no: 'General No',
global_abstain: 'General Abstain'
};
export const MajorityMethodVerbose = {

View File

@ -38,15 +38,15 @@ export class PollFilterListService extends BaseFilterListService<ViewBasePoll> {
},
{
property: 'canBeVotedFor',
label: this.translate.instant('Votability'),
label: this.translate.instant('Vote'),
options: [
{ condition: true, label: this.translate.instant('Can be voted for') },
{ condition: false, label: this.translate.instant('Cannot be voted for') }
{ condition: true, label: this.translate.instant('Vote currently possible') },
{ condition: false, label: this.translate.instant('Vote not possible') }
]
},
{
property: 'user_has_voted',
label: this.translate.instant('Vote state'),
label: this.translate.instant('Vote finished'),
options: [
{ condition: true, label: this.translate.instant('Has been voted for') },
{ condition: false, label: this.translate.instant('Has not been voted for') }

View File

@ -12,8 +12,4 @@
[pieChartOptions]="options"
></os-charts>
</div>
<div *ngIf="data.data.poll.state !== PollState.Published">
<!-- TODO -->
{{ "Nothing to see here!" | translate }}
</div>
</ng-container>

View File

@ -9,8 +9,4 @@
<div *ngIf="data.data.poll.state === PollState.Published">
<os-motion-poll-detail-content [poll]="pollData" [chartData]="chartDataSubject"> </os-motion-poll-detail-content>
</div>
<div *ngIf="data.data.poll.state !== PollState.Published">
<!-- TODO -->
{{ 'Nothing to see here!' | translate }}
</div>
</ng-container>

File diff suppressed because one or more lines are too long

View File

@ -14,6 +14,9 @@ msgstr ""
msgid "%num% emails were send sucessfully."
msgstr "%num% E-Mails wurden erfolgreich versandt."
msgid "100% base"
msgstr "100-%-Basis"
msgid ""
"<a href=\"http://www.openslides.org\">OpenSlides</a> is a free web based "
"presentation and assembly system for visualizing and controlling agenda, "
@ -140,6 +143,9 @@ msgstr "Alle Themen werden gelöscht und sind danach nicht mehr zugänglich."
msgid "All valid ballots"
msgstr "Alle gültigen Stimmzettel"
msgid "All votes will be lost."
msgstr "Alle Stimmen gehen verloren."
msgid "All your changes are saved immediately."
msgstr "Alle Änderungen werden sofort gespeichert."
@ -167,15 +173,6 @@ msgstr "Zulässige Zugriffsgruppen für dieses Verzeichnis"
msgid "Always"
msgstr "Immer"
msgid "Always Yes-No-Abstain per candidate"
msgstr "Ja/Nein/Enthaltung pro Kandidat/in"
msgid "Always Yes/No per candidate"
msgstr "Ja/Nein pro Kandidat/in"
msgid "Always one option per candidate"
msgstr "Eine Stimme pro Kandidat/in"
msgid "Amendment"
msgstr "Änderungsantrag"
@ -197,22 +194,31 @@ msgstr "Änderungsanträge können mehrere Absätze ändern"
msgid "Amendments to"
msgstr "Änderungsanträge zu"
msgid "Amount of votes"
msgstr "Anzahl der Stimmen"
msgid "An email with a password reset link was send!"
msgstr "Es wurde eine E-Mail mit Link zum Passwort-Zurücksetzen gesendet."
msgid "An unknown error occurred."
msgstr "Ein unbekannter Fehler ist aufgetreten."
msgid "Anonymize votes"
msgstr "Stimmen anonymisieren"
msgid "Anonymous"
msgstr "Anonym"
msgid "Apply"
msgstr "Übernehmen"
msgid "Arabic"
msgstr "Arabisch"
msgid "Are you sure you want to copy the final version to the print template?"
msgid "Are you sure you want to anonymize all votes? This cannot be undone."
msgstr ""
"Soll die Beschlussfassung weiter bearbeitet und eine Beschluss-Druckvorlage "
"erstellt werden?"
"Sollen alle Stimmen wirklich anonymisiert werden? Dies kann nicht rückgängig"
" gemacht werden."
msgid "Are you sure you want to delete all selected elections?"
msgstr "Sollen alle ausgewählten Wahlen wirklich gelöscht werden?"
@ -234,9 +240,6 @@ msgstr "Sollen wirklich alle Redner/innen von dieser Liste entfernt werden?"
msgid "Are you sure you want to delete the print template?"
msgstr "Soll die Beschluss-Druckvorlage wirklich gelöscht werden?"
msgid "Are you sure you want to delete this ballot?"
msgstr "Soll dieser Wahlgang wirklich gelöscht werden?"
msgid "Are you sure you want to delete this category and all subcategories?"
msgstr ""
"Soll dieses Sachgebiet und deren Untersachgebiete wirklich gelöscht werden?"
@ -284,6 +287,9 @@ msgstr "Soll dieses Schlagwort wirklich gelöscht werden?"
msgid "Are you sure you want to delete this topic?"
msgstr "Soll dieses Thema wirklich gelöscht werden?"
msgid "Are you sure you want to delete this vote?"
msgstr "Soll diese Abstimmung wirklich gelöscht werden?"
msgid "Are you sure you want to delete this workflow?"
msgstr "Soll dieser Arbeitsablauf wirklich gelöscht werden?"
@ -341,6 +347,9 @@ msgstr ""
"Sollen wirklich alle Passwörter auf die initialen Passwörter zurückgesetzt "
"werden?"
msgid "Are you sure you want to reset this vote?"
msgstr "Soll diese Abstimmung wirklich zurückgesetzt werden?"
msgid "Are you sure you want to send an invitation email to the user?"
msgstr "Soll wirklich eine E-Mail den diesen Nutzer gesendet werden?"
@ -363,8 +372,8 @@ msgstr "Nachfragen, voreingestellt ja"
msgid "Attachments"
msgstr "Anhänge"
msgid "Automatic assign of method"
msgstr "Automatische Zuordnung der Methode"
msgid "Available votes"
msgstr "Verfügbare Stimmen"
msgid "Back"
msgstr "Zurück"
@ -375,8 +384,11 @@ msgstr "Zurück zur Anmeldung"
msgid "Ballot"
msgstr "Wahlgang"
msgid "Ballot and ballot papers"
msgstr "Wahlgang und Stimmzettel"
msgid "Ballot opened"
msgstr "Wahlgang eröffnet"
msgid "Ballot papers"
msgstr "Stimmzettel"
msgid "Base folder"
msgstr "Basisverzeichnis"
@ -588,6 +600,9 @@ msgstr "Antragsblock löschen"
msgid "Clear tags"
msgstr "Schlagwörter löschen"
msgid "Click here to vote!"
msgstr "Zur Stimmabgabe hier klicken!"
msgid "Close"
msgstr "Schließen"
@ -655,6 +670,9 @@ msgstr "Countdown-Titel"
msgid "Countdowns"
msgstr "Countdowns"
msgid "Counting of votes is in progress ..."
msgstr "Die Auszählung der Stimmen läuft ..."
msgid "Couple countdown with the list of speakers"
msgstr "Countdown mit der Redeliste verkoppeln"
@ -715,8 +733,14 @@ msgstr "Entscheidung"
msgid "Default"
msgstr "Standard"
msgid "Default comment on the ballot paper"
msgstr "Voreingestellter Hinweis auf Stimmzettel"
msgid "Default 100 % base of a voting result"
msgstr "Voreingestellte 100-%-Basis eines Abstimmungsergebnisses"
msgid "Default 100 % base of an election result"
msgstr "Voreingestellte 100-%-Basis eines Wahlergebnisses"
msgid "Default election method"
msgstr "Voreingestellte Wahlmethode"
msgid "Default encoding for all csv exports"
msgstr "Voreingestelltes Encoding für alle CSV-Exporte"
@ -724,6 +748,9 @@ msgstr "Voreingestelltes Encoding für alle CSV-Exporte"
msgid "Default group"
msgstr "Vorgegebene Gruppen"
msgid "Default groups with voting rights"
msgstr "Voreingestellte Gruppen mit Stimmrecht"
msgid "Default line numbering"
msgstr "Voreingestellte Zeilennummerierung"
@ -848,6 +875,13 @@ msgstr ""
msgid "Duration"
msgstr "Dauer"
msgid ""
"During voting, OpenSlides does not store the individual user ID of the voter. This in no way means that a\n"
" non-nominal vote is completely anonymous and secure. You cannot track the decisions of your voters after the\n"
" data has been submitted. The validity of the data cannot always be guaranteed, especially if you use OpenSlides\n"
" in a distributed online setup. You are responsible for your own actions."
msgstr ""
msgid "Edit"
msgstr "Bearbeiten"
@ -872,24 +906,18 @@ msgstr "Schlagwort bearbeiten"
msgid "Edit the whole motion text"
msgstr "Vollständigen Antragstext bearbeiten"
msgid "Edit to enter votes."
msgstr "Bearbeiten, um Stimmen einzugeben."
msgid "Edit topic"
msgstr "Thema bearbeiten"
msgid "Elected"
msgstr "Gewählt"
msgid "Election"
msgstr "Wahl"
msgid "Election documents"
msgstr "Wahlunterlagen"
msgid "Election method"
msgstr "Wahlmethode"
msgid "Election result"
msgstr "Wahlergebnis"
msgid "Elections"
msgstr "Wahlen"
@ -944,14 +972,14 @@ msgstr ""
msgid "Enter participant number"
msgstr "Teilnehmernummer eingeben"
msgid "Enter votes"
msgstr "Stimmen eingeben"
msgid "Enter your email to send the password reset link"
msgstr ""
"Geben Sie Ihre E-Mail-Adresse ein um eine Link zum Zurücksetzen des "
"Passworts zu erhalten."
msgid "Entitled to vote"
msgstr "Stimmberechtigte"
msgid "Error"
msgstr "Fehler"
@ -961,6 +989,9 @@ msgstr "Fehler bei der PDF-Erstellung der Wahl:"
msgid "Error during PDF creation of motion:"
msgstr "Fehler bei der PDF-Erstellung in Antrag"
msgid "Error in form field."
msgstr "Fehler im Formularfeld."
msgid "Error: The new passwords do not match."
msgstr "Fehler: Die neuen Passwörter stimmen nicht überein."
@ -1054,17 +1085,6 @@ msgstr "Empfehlungen für alle Anträge folgen"
msgid "Following users are currently editing this motion:"
msgstr "Folgende Nutzer bearbeiten aktuell diesen Antrag:"
msgid ""
"For Yes/No/Abstain per candidate and Yes/No per candidate the 100-%-base "
"depends on the election method: If there is only one option per candidate, "
"the sum of all votes of all candidates is 100 %. Otherwise for each "
"candidate the sum of all votes is 100 %."
msgstr ""
"Für Ja/Nein/Enthaltung pro Kandidat und Ja/Nein pro Kandidat hängt die "
"100%-Basis von der Wahlmethode ab: Wenn es nur eine Option pro Kandidat "
"gibt, ist 100% die Summe aller Stimmen von allen Kandidaten. Andernfalls ist"
" 100% die Summe aller Stimmen pro Kandidat."
msgid "Forgot Password?"
msgstr "Passwort vergessen?"
@ -1086,6 +1106,12 @@ msgstr "Geschlecht"
msgid "General"
msgstr "Allgemein"
msgid "General Abstain"
msgstr "Generelle Enthaltung"
msgid "General No"
msgstr "Generelles Nein"
msgid "Generate new passwords"
msgstr "Neue Passwörter generieren"
@ -1116,9 +1142,15 @@ msgstr "Gast"
msgid "Has amendments"
msgstr "Hat Änderungsanträge"
msgid "Has been voted for"
msgstr ""
msgid "Has no speakers"
msgstr "Keine Wortmeldungen vorhanden"
msgid "Has not been voted for"
msgstr ""
msgid "Has notes"
msgstr "Hat Notizen"
@ -1156,8 +1188,8 @@ msgid "Hide the amount of speakers in subtitle of list of speakers slide"
msgstr ""
"Anzahl der Redner/innen im Untertitel der Redelistenprojektion ausblenden"
msgid "Hint for ballot paper"
msgstr "Hinweis auf dem Stimmzettel"
msgid "Hint on voting"
msgstr "Hinweis zur Stimmabgabe"
msgid "History"
msgstr "Chronik"
@ -1168,6 +1200,9 @@ msgstr "Startseite"
msgid "How to create new amendments"
msgstr "Erstellung von Änderungsanträgen"
msgid "I know the risk"
msgstr "Ich kenne das Risiko"
msgid "Identifier"
msgstr "Bezeichner"
@ -1196,6 +1231,9 @@ msgstr "Themen importieren"
msgid "In motion list, motion detail and PDF."
msgstr "In Antragsliste, Detailansicht und PDF."
msgid "In the election process"
msgstr "Im Wahlvorgang"
msgid "Inactive"
msgstr "Inaktiv"
@ -1337,6 +1375,9 @@ msgstr "Redeliste"
msgid "List of speakers overlay"
msgstr "Redelisten-Einblendung"
msgid "List of votes"
msgstr "Stimmabgaben"
msgid "List view"
msgstr "Listenansicht"
@ -1355,8 +1396,8 @@ msgstr "Abmelden"
msgid "Main motion and line number"
msgstr "Hauptantrag und Zeilennummer"
msgid "Mark as elected"
msgstr "Als gewählt markieren"
msgid "Mark as personal favorite"
msgstr "Als persönlichen Favorit markieren"
msgid "Mark speaker"
msgstr "Redner/in markieren"
@ -1373,6 +1414,9 @@ msgstr "Mitteilungen"
msgid "Meta information"
msgstr "Metainformationen"
msgid "More"
msgstr "Mehr"
msgid "Motion"
msgstr "Antrag"
@ -1577,6 +1621,9 @@ msgstr "Keine persönliche Notiz"
msgid "No recommendation"
msgstr "keine Empfehlung gesetzt"
msgid "No results yet."
msgstr "Noch keine Ergebnisse."
msgid "No search result found"
msgstr "Keine Suchergebnisse gefunden"
@ -1595,6 +1642,9 @@ msgstr "Nr."
msgid "None"
msgstr "aus"
msgid "Not suitable for formal secret voting!"
msgstr "Nicht geeignet für förmliche, geheime Stimmabgaben!"
msgid ""
"Note, that the default password will be changed to the new generated one."
msgstr ""
@ -1611,6 +1661,9 @@ msgstr ""
msgid "Notes"
msgstr "Notizen"
msgid "Number candidates"
msgstr "Kandidat/innen nummerieren"
msgid "Number motions"
msgstr "Anträge nummerieren"
@ -1623,6 +1676,9 @@ msgstr "Anzahl aller Delegierten"
msgid "Number of all participants"
msgstr "Anzahl aller Teilnehmenden"
msgid "Number of ballot papers"
msgstr "Stimmzettelanzahl"
msgid "Number of ballot papers (selection)"
msgstr "Anzahl der Stimmzettel (Vorauswahl)"
@ -1675,8 +1731,8 @@ msgstr ""
"Mindestens Vor- oder Nachname muss angegeben werden. Alle übrigen Felder "
"sind optional und dürfen leer sein."
msgid "One vote per candidate"
msgstr "Eine Stimme pro Kandidat/in"
msgid "Online voting is impossible to secure"
msgstr ""
msgid "Only countdown"
msgstr "Nur Countdown"
@ -1844,12 +1900,6 @@ msgstr "Bitte geben Sie eine gültige E-Mail-Adresse ein!"
msgid "Please enter your new password"
msgstr "Bitte geben Sie Ihr neues Passwort ein"
msgid "Please fill in all required values"
msgstr "Bitte füllen Sie alle erforderlichen Felder aus."
msgid "Please fill in the values for each candidate"
msgstr "Bitte füllen Sie die Werte aller Kandidat/innen aus."
msgid "Please select the directory:"
msgstr "Bitte wählen Sie das Verzeichnis aus:"
@ -1886,12 +1936,6 @@ msgstr "Zurück"
msgid "Previous slides"
msgstr "Letzte Folien"
msgid "Print ballot paper"
msgstr "Stimmzettel drucken"
msgid "Print ballot papers"
msgstr "Stimmzettel drucken"
msgid "Privacy Policy"
msgstr "Datenschutzerklärung"
@ -1931,15 +1975,15 @@ msgstr "Öffentlicher Eintrag"
msgid "Publish"
msgstr "Veröffentlichen"
msgid "Publish immediately"
msgstr "Direkt veröffentlichen"
msgid "Put all candidates on the list of speakers"
msgstr "Alle Kandidaten auf die Redeliste setzen"
msgid "Queue"
msgstr "Warteliste"
msgid "Quorum"
msgstr "Quorum"
msgid "Re-add last speaker"
msgstr "Letzte/n Redner/in zurückholen"
@ -1949,6 +1993,9 @@ msgstr "Begründung"
msgid "Reason required for creating new motion"
msgstr "Begründung erforderlich zur Erstellung neuer Anträge"
msgid "Received votes"
msgstr "Empfangene Stimmen"
msgid "Recommendation"
msgstr "Empfehlung"
@ -2266,6 +2313,9 @@ msgstr "Einfacher Arbeitsablauf"
msgid "Simple majority"
msgstr "Einfache Mehrheit"
msgid "Single votes"
msgstr "Einzelstimmen"
msgid "Slide"
msgstr "Folie"
@ -2284,6 +2334,9 @@ msgstr "Sachgebiete sortieren"
msgid "Sort comments"
msgstr "Kommentare sortieren"
msgid "Sort election results by amount of votes"
msgstr "Wahlergebnisse nach Stimmanzahl sortieren"
msgid "Sort list of speakers"
msgstr "Redeliste sortieren"
@ -2299,9 +2352,6 @@ msgstr "Namen der Teilnehmenden sortieren nach"
msgid "Speakers"
msgstr "Redner/innen"
msgid "Special values"
msgstr "Spezielle Werte"
msgid "Staff"
msgstr "Mitarbeitende"
@ -2314,6 +2364,9 @@ msgstr "Standard-PDF-Papierformat"
msgid "Start time"
msgstr "Startzeit"
msgid "Start voting"
msgstr "Stimmabgabe starten"
msgid "State"
msgstr "Status"
@ -2348,18 +2401,30 @@ msgid "Stop submitting new motions by non-staff users"
msgstr ""
"Einreichen von neuen Anträgen stoppen für Nutzer ohne Verwaltungsrechte"
msgid "Stop voting"
msgstr "Stimmabgabe beenden"
msgid "Structure level"
msgstr "Gliederungsebene"
msgid "Subcategory"
msgstr "Untersachgebiet"
msgid "Submit selection now?"
msgstr "Auswahl jetzt senden?"
msgid "Submit vote now"
msgstr "Stimme(n) jetzt senden"
msgid "Submitters"
msgstr "Antragsteller/in"
msgid "Submitters changed"
msgstr "Antragsteller/in geändert"
msgid "Sum of votes including general No/Abstain"
msgstr "Summe der Stimmen einschließlich generelles Nein/Enthaltung"
msgid "Summary of changes"
msgstr "Zusammenfassung der Änderungen"
@ -2402,12 +2467,6 @@ msgstr "Textimport"
msgid "Text separator"
msgstr "Texttrenner"
msgid "The 100 % base of a voting result consists of"
msgstr "Die 100%-Basis eines Abstimmungsergebnisses besteht aus"
msgid "The 100-%-base of an election result consists of"
msgstr "Die 100%-Basis eines Wahlergebnisses besteht aus"
msgid "The assembly may decide:"
msgstr "Die Versammlung möge beschließen:"
@ -2430,6 +2489,9 @@ msgstr ""
"Die Datei scheint einige ausgelassene Spalten zu haben. Sie werden als leer "
"betrachtet."
msgid "The individual votes were anonymized."
msgstr "Die individuellen Stimmen wurden anonymisiert."
msgid "The link is broken. Please contact your system administrator."
msgstr ""
"Der Link ist defekt. Bitte kontaktieren Sie den zuständigen Administrator."
@ -2628,8 +2690,8 @@ msgstr "Typ"
msgid "Undone"
msgstr "unerledigt"
msgid "Unpublish"
msgstr "Nicht veröffentlichen"
msgid "Unknown user"
msgstr "Unbekannter Nutzer"
msgid "Unsupport"
msgstr "Unterstützung zurückziehen"
@ -2692,9 +2754,18 @@ msgstr "Abstimmung"
msgid "Vote created"
msgstr "Abstimmung erstellt"
msgid "Vote currently possible"
msgstr "Stimmabgabe aktuell möglich"
msgid "Vote deleted"
msgstr "Abstimmung gelöscht"
msgid "Vote finished"
msgstr "Stimmabgabe abgeschlossen"
msgid "Vote not possible"
msgstr "Stimmabgabe nicht möglich"
msgid "Vote updated"
msgstr "Abstimmung aktualisiert"
@ -2707,9 +2778,24 @@ msgstr "Im Wahlvorgang"
msgid "Voting and ballot papers"
msgstr "Abstimmung und Stimmzettel"
msgid "Voting is currently in progress."
msgstr "Stimmabgabe läuft aktuell "
msgid "Voting method"
msgstr "Wahlmethode"
msgid "Voting opened"
msgstr "Abstimmung eröffnet"
msgid "Voting result"
msgstr "Abstimmungsergebnis"
msgid "Voting successful."
msgstr "Stimmabgabe erfolgreich."
msgid "Voting type"
msgstr "Art der Stimmabgabe"
msgid "WEP"
msgstr "WEP"
@ -2728,9 +2814,6 @@ msgstr "WLAN-Passwort"
msgid "WPA/WPA2"
msgstr "WPA/WPA2"
msgid "Waiting for results"
msgstr "Auf Ergebnisse wartend ..."
msgid "Web interface header logo"
msgstr "Web-Interface-Kopfzeilen-Logo"
@ -2772,6 +2855,9 @@ msgstr "Arbeitsabläufe"
msgid "Yes"
msgstr "Ja"
msgid "Yes per candidate"
msgstr "Ja pro Kandidat"
msgid "Yes/No"
msgstr "Ja/Nein"
@ -2808,6 +2894,9 @@ msgstr ""
msgid "You do not have the required permission to see that page!"
msgstr "Sie haben leider keine Berechtigung diese Seite zu sehen."
msgid "You have already voted."
msgstr "Sie haben bereits Ihre Stimme abgegeben."
msgid "You have to fill this field."
msgstr "Sie müssen diese Feld ausfüllen."
@ -2817,6 +2906,14 @@ msgstr "Sie haben Änderungen vorgenommen."
msgid "You override the personally set password!"
msgstr "Sie überschreiben hiermit das persönlich gesetzte Passwort!"
msgid "You reached the maximum amount of votes. Deselect somebody first."
msgstr ""
"Sie haben die maximale Anzahl von Stimmen erreicht. Deselektieren Sie zuerst"
" eine Auswahl."
msgid "Your decision cannot be changed afterwards."
msgstr "Ihre Stimmabgabe kann anschließend nicht mehr geändert werden."
msgid "Your password was resetted successfully!"
msgstr "Ihr Passwort wurde erfolgreich zurückgesetzt!"
@ -2854,6 +2951,9 @@ msgstr "Gruppe(n) hinzufügen"
msgid "adjourned"
msgstr "vertagt"
msgid "analog"
msgstr "analog"
msgid "and"
msgstr "und"
@ -2872,6 +2972,9 @@ msgstr "Verbindungen"
msgid "contribution"
msgstr "Wortmeldung"
msgid "created"
msgstr "erstellt"
msgid "custom"
msgstr "benutzerdefiniert"
@ -2896,6 +2999,9 @@ msgstr "Beispiel"
msgid "female"
msgstr "weiblich"
msgid "finished (unpublished)"
msgstr "abgeschlossen (unveröffentlicht)"
msgid "fullscreen"
msgstr "Vollbild"
@ -2917,9 +3023,6 @@ msgstr "innerhalb"
msgid "internal"
msgstr "intern"
msgid "is elected"
msgstr "gewählt"
msgid "is now"
msgstr "ist jetzt"
@ -2953,6 +3056,12 @@ msgstr "benötigt Überprüfung"
msgid "no committee"
msgstr "kein Gremium"
msgid "nominal"
msgstr "namentlich"
msgid "non-nominal"
msgstr "nicht-namentlich"
msgid "none"
msgstr "aus"
@ -2962,15 +3071,12 @@ msgstr "nicht befasst"
msgid "not decided"
msgstr "nicht entschieden"
msgid "not reached"
msgstr "nicht erreicht"
msgid "not reached."
msgstr "nicht erreicht."
msgid "of"
msgstr "von"
msgid "open votes"
msgstr "offene Stimmabgaben"
msgid "outside"
msgstr "außerhalb"
@ -2989,12 +3095,6 @@ msgstr "öffentlich"
msgid "published"
msgstr "veröffentlicht"
msgid "reached"
msgstr "erreicht"
msgid "reached."
msgstr "erreicht."
msgid "refered to committee"
msgstr "in Ausschuss verwiesen"
@ -3016,6 +3116,9 @@ msgstr "Ergebnisse"
msgid "selected"
msgstr "ausgewählt"
msgid "started"
msgstr "gestartet"
msgid "statute paragraphs have been imported."
msgstr "Satzungsabschnitte wurden importiert."
@ -3034,9 +3137,6 @@ msgstr "bis"
msgid "undocumented"
msgstr "nicht erfasst"
msgid "unpublished"
msgstr "unveröffentlicht"
msgid "with filter"
msgstr "mit Filter"

View File

@ -7,6 +7,9 @@ msgstr ""
msgid "%num% emails were send sucessfully."
msgstr ""
msgid "100% base"
msgstr ""
msgid ""
"<a href=\"http://www.openslides.org\">OpenSlides</a> is a free web based "
"presentation and assembly system for visualizing and controlling agenda, "
@ -126,6 +129,9 @@ msgstr ""
msgid "All valid ballots"
msgstr ""
msgid "All votes will be lost."
msgstr ""
msgid "All your changes are saved immediately."
msgstr ""
@ -153,15 +159,6 @@ msgstr ""
msgid "Always"
msgstr ""
msgid "Always Yes-No-Abstain per candidate"
msgstr ""
msgid "Always Yes/No per candidate"
msgstr ""
msgid "Always one option per candidate"
msgstr ""
msgid "Amendment"
msgstr ""
@ -183,19 +180,28 @@ msgstr ""
msgid "Amendments to"
msgstr ""
msgid "Amount of votes"
msgstr ""
msgid "An email with a password reset link was send!"
msgstr ""
msgid "An unknown error occurred."
msgstr ""
msgid "Anonymize votes"
msgstr ""
msgid "Anonymous"
msgstr ""
msgid "Apply"
msgstr ""
msgid "Arabic"
msgstr ""
msgid "Are you sure you want to copy the final version to the print template?"
msgid "Are you sure you want to anonymize all votes? This cannot be undone."
msgstr ""
msgid "Are you sure you want to delete all selected elections?"
@ -216,9 +222,6 @@ msgstr ""
msgid "Are you sure you want to delete the print template?"
msgstr ""
msgid "Are you sure you want to delete this ballot?"
msgstr ""
msgid "Are you sure you want to delete this category and all subcategories?"
msgstr ""
@ -264,6 +267,9 @@ msgstr ""
msgid "Are you sure you want to delete this topic?"
msgstr ""
msgid "Are you sure you want to delete this vote?"
msgstr ""
msgid "Are you sure you want to delete this workflow?"
msgstr ""
@ -308,6 +314,9 @@ msgstr ""
msgid "Are you sure you want to reset all passwords to the default ones?"
msgstr ""
msgid "Are you sure you want to reset this vote?"
msgstr ""
msgid "Are you sure you want to send an invitation email to the user?"
msgstr ""
@ -329,7 +338,7 @@ msgstr ""
msgid "Attachments"
msgstr ""
msgid "Automatic assign of method"
msgid "Available votes"
msgstr ""
msgid "Back"
@ -341,7 +350,10 @@ msgstr ""
msgid "Ballot"
msgstr ""
msgid "Ballot and ballot papers"
msgid "Ballot opened"
msgstr ""
msgid "Ballot papers"
msgstr ""
msgid "Base folder"
@ -551,6 +563,9 @@ msgstr ""
msgid "Clear tags"
msgstr ""
msgid "Click here to vote!"
msgstr ""
msgid "Close"
msgstr ""
@ -617,6 +632,9 @@ msgstr ""
msgid "Countdowns"
msgstr ""
msgid "Counting of votes is in progress ..."
msgstr ""
msgid "Couple countdown with the list of speakers"
msgstr ""
@ -668,7 +686,13 @@ msgstr ""
msgid "Default"
msgstr ""
msgid "Default comment on the ballot paper"
msgid "Default 100 % base of a voting result"
msgstr ""
msgid "Default 100 % base of an election result"
msgstr ""
msgid "Default election method"
msgstr ""
msgid "Default encoding for all csv exports"
@ -677,6 +701,9 @@ msgstr ""
msgid "Default group"
msgstr ""
msgid "Default groups with voting rights"
msgstr ""
msgid "Default line numbering"
msgstr ""
@ -792,6 +819,17 @@ msgstr ""
msgid "Duration"
msgstr ""
msgid ""
"During voting, OpenSlides does not store the individual user ID of the "
"voter. This in no way means that a\n"
" non-nominal vote is completely anonymous and secure. You cannot "
"track the decisions of your voters after the\n"
" data has been submitted. The validity of the data cannot always be "
"guaranteed, especially if you use OpenSlides\n"
" in a distributed online setup. You are responsible for your own "
"actions."
msgstr ""
msgid "Edit"
msgstr ""
@ -816,10 +854,10 @@ msgstr ""
msgid "Edit the whole motion text"
msgstr ""
msgid "Edit topic"
msgid "Edit to enter votes."
msgstr ""
msgid "Elected"
msgid "Edit topic"
msgstr ""
msgid "Election"
@ -828,12 +866,6 @@ msgstr ""
msgid "Election documents"
msgstr ""
msgid "Election method"
msgstr ""
msgid "Election result"
msgstr ""
msgid "Elections"
msgstr ""
@ -884,10 +916,10 @@ msgstr ""
msgid "Enter participant number"
msgstr ""
msgid "Enter votes"
msgid "Enter your email to send the password reset link"
msgstr ""
msgid "Enter your email to send the password reset link"
msgid "Entitled to vote"
msgstr ""
msgid "Error"
@ -899,6 +931,9 @@ msgstr ""
msgid "Error during PDF creation of motion:"
msgstr ""
msgid "Error in form field."
msgstr ""
msgid "Error: The new passwords do not match."
msgstr ""
@ -992,13 +1027,6 @@ msgstr ""
msgid "Following users are currently editing this motion:"
msgstr ""
msgid ""
"For Yes/No/Abstain per candidate and Yes/No per candidate the 100-%-base "
"depends on the election method: If there is only one option per candidate, "
"the sum of all votes of all candidates is 100 %. Otherwise for each "
"candidate the sum of all votes is 100 %."
msgstr ""
msgid "Forgot Password?"
msgstr ""
@ -1020,6 +1048,12 @@ msgstr ""
msgid "General"
msgstr ""
msgid "General Abstain"
msgstr ""
msgid "General No"
msgstr ""
msgid "Generate new passwords"
msgstr ""
@ -1050,9 +1084,15 @@ msgstr ""
msgid "Has amendments"
msgstr ""
msgid "Has been voted for"
msgstr ""
msgid "Has no speakers"
msgstr ""
msgid "Has not been voted for"
msgstr ""
msgid "Has notes"
msgstr ""
@ -1089,7 +1129,7 @@ msgstr ""
msgid "Hide the amount of speakers in subtitle of list of speakers slide"
msgstr ""
msgid "Hint for ballot paper"
msgid "Hint on voting"
msgstr ""
msgid "History"
@ -1101,6 +1141,9 @@ msgstr ""
msgid "How to create new amendments"
msgstr ""
msgid "I know the risk"
msgstr ""
msgid "Identifier"
msgstr ""
@ -1127,6 +1170,9 @@ msgstr ""
msgid "In motion list, motion detail and PDF."
msgstr ""
msgid "In the election process"
msgstr ""
msgid "Inactive"
msgstr ""
@ -1268,6 +1314,9 @@ msgstr ""
msgid "List of speakers overlay"
msgstr ""
msgid "List of votes"
msgstr ""
msgid "List view"
msgstr ""
@ -1286,7 +1335,7 @@ msgstr ""
msgid "Main motion and line number"
msgstr ""
msgid "Mark as elected"
msgid "Mark as personal favorite"
msgstr ""
msgid "Mark speaker"
@ -1304,6 +1353,9 @@ msgstr ""
msgid "Meta information"
msgstr ""
msgid "More"
msgstr ""
msgid "Motion"
msgstr ""
@ -1508,6 +1560,9 @@ msgstr ""
msgid "No recommendation"
msgstr ""
msgid "No results yet."
msgstr ""
msgid "No search result found"
msgstr ""
@ -1526,6 +1581,9 @@ msgstr ""
msgid "None"
msgstr ""
msgid "Not suitable for formal secret voting!"
msgstr ""
msgid "Note, that the default password will be changed to the new generated one."
msgstr ""
@ -1537,6 +1595,9 @@ msgstr ""
msgid "Notes"
msgstr ""
msgid "Number candidates"
msgstr ""
msgid "Number motions"
msgstr ""
@ -1549,6 +1610,9 @@ msgstr ""
msgid "Number of all participants"
msgstr ""
msgid "Number of ballot papers"
msgstr ""
msgid "Number of ballot papers (selection)"
msgstr ""
@ -1599,7 +1663,7 @@ msgid ""
"fields are optional and may be empty."
msgstr ""
msgid "One vote per candidate"
msgid "Online voting is impossible to secure"
msgstr ""
msgid "Only countdown"
@ -1767,12 +1831,6 @@ msgstr ""
msgid "Please enter your new password"
msgstr ""
msgid "Please fill in all required values"
msgstr ""
msgid "Please fill in the values for each candidate"
msgstr ""
msgid "Please select the directory:"
msgstr ""
@ -1809,12 +1867,6 @@ msgstr ""
msgid "Previous slides"
msgstr ""
msgid "Print ballot paper"
msgstr ""
msgid "Print ballot papers"
msgstr ""
msgid "Privacy Policy"
msgstr ""
@ -1854,15 +1906,15 @@ msgstr ""
msgid "Publish"
msgstr ""
msgid "Publish immediately"
msgstr ""
msgid "Put all candidates on the list of speakers"
msgstr ""
msgid "Queue"
msgstr ""
msgid "Quorum"
msgstr ""
msgid "Re-add last speaker"
msgstr ""
@ -1872,6 +1924,9 @@ msgstr ""
msgid "Reason required for creating new motion"
msgstr ""
msgid "Received votes"
msgstr ""
msgid "Recommendation"
msgstr ""
@ -2182,6 +2237,9 @@ msgstr ""
msgid "Simple majority"
msgstr ""
msgid "Single votes"
msgstr ""
msgid "Slide"
msgstr ""
@ -2200,6 +2258,9 @@ msgstr ""
msgid "Sort comments"
msgstr ""
msgid "Sort election results by amount of votes"
msgstr ""
msgid "Sort list of speakers"
msgstr ""
@ -2215,9 +2276,6 @@ msgstr ""
msgid "Speakers"
msgstr ""
msgid "Special values"
msgstr ""
msgid "Staff"
msgstr ""
@ -2230,6 +2288,9 @@ msgstr ""
msgid "Start time"
msgstr ""
msgid "Start voting"
msgstr ""
msgid "State"
msgstr ""
@ -2263,18 +2324,30 @@ msgstr ""
msgid "Stop submitting new motions by non-staff users"
msgstr ""
msgid "Stop voting"
msgstr ""
msgid "Structure level"
msgstr ""
msgid "Subcategory"
msgstr ""
msgid "Submit selection now?"
msgstr ""
msgid "Submit vote now"
msgstr ""
msgid "Submitters"
msgstr ""
msgid "Submitters changed"
msgstr ""
msgid "Sum of votes including general No/Abstain"
msgstr ""
msgid "Summary of changes"
msgstr ""
@ -2317,12 +2390,6 @@ msgstr ""
msgid "Text separator"
msgstr ""
msgid "The 100 % base of a voting result consists of"
msgstr ""
msgid "The 100-%-base of an election result consists of"
msgstr ""
msgid "The assembly may decide:"
msgstr ""
@ -2341,6 +2408,9 @@ msgstr ""
msgid "The file seems to have some ommitted columns. They will be considered empty."
msgstr ""
msgid "The individual votes were anonymized."
msgstr ""
msgid "The link is broken. Please contact your system administrator."
msgstr ""
@ -2505,7 +2575,7 @@ msgstr ""
msgid "Undone"
msgstr ""
msgid "Unpublish"
msgid "Unknown user"
msgstr ""
msgid "Unsupport"
@ -2563,9 +2633,18 @@ msgstr ""
msgid "Vote created"
msgstr ""
msgid "Vote currently possible"
msgstr ""
msgid "Vote deleted"
msgstr ""
msgid "Vote finished"
msgstr ""
msgid "Vote not possible"
msgstr ""
msgid "Vote updated"
msgstr ""
@ -2578,9 +2657,24 @@ msgstr ""
msgid "Voting and ballot papers"
msgstr ""
msgid "Voting is currently in progress."
msgstr ""
msgid "Voting method"
msgstr ""
msgid "Voting opened"
msgstr ""
msgid "Voting result"
msgstr ""
msgid "Voting successful."
msgstr ""
msgid "Voting type"
msgstr ""
msgid "WEP"
msgstr ""
@ -2599,9 +2693,6 @@ msgstr ""
msgid "WPA/WPA2"
msgstr ""
msgid "Waiting for results"
msgstr ""
msgid "Web interface header logo"
msgstr ""
@ -2639,6 +2730,9 @@ msgstr ""
msgid "Yes"
msgstr ""
msgid "Yes per candidate"
msgstr ""
msgid "Yes/No"
msgstr ""
@ -2669,6 +2763,9 @@ msgstr ""
msgid "You do not have the required permission to see that page!"
msgstr ""
msgid "You have already voted."
msgstr ""
msgid "You have to fill this field."
msgstr ""
@ -2678,6 +2775,12 @@ msgstr ""
msgid "You override the personally set password!"
msgstr ""
msgid "You reached the maximum amount of votes. Deselect somebody first."
msgstr ""
msgid "Your decision cannot be changed afterwards."
msgstr ""
msgid "Your password was resetted successfully!"
msgstr ""
@ -2714,6 +2817,9 @@ msgstr ""
msgid "adjourned"
msgstr ""
msgid "analog"
msgstr ""
msgid "and"
msgstr ""
@ -2732,6 +2838,9 @@ msgstr ""
msgid "contribution"
msgstr ""
msgid "created"
msgstr ""
msgid "custom"
msgstr ""
@ -2756,6 +2865,9 @@ msgstr ""
msgid "female"
msgstr ""
msgid "finished (unpublished)"
msgstr ""
msgid "fullscreen"
msgstr ""
@ -2777,9 +2889,6 @@ msgstr ""
msgid "internal"
msgstr ""
msgid "is elected"
msgstr ""
msgid "is now"
msgstr ""
@ -2813,6 +2922,12 @@ msgstr ""
msgid "no committee"
msgstr ""
msgid "nominal"
msgstr ""
msgid "non-nominal"
msgstr ""
msgid "none"
msgstr ""
@ -2822,15 +2937,12 @@ msgstr ""
msgid "not decided"
msgstr ""
msgid "not reached"
msgstr ""
msgid "not reached."
msgstr ""
msgid "of"
msgstr ""
msgid "open votes"
msgstr ""
msgid "outside"
msgstr ""
@ -2849,12 +2961,6 @@ msgstr ""
msgid "published"
msgstr ""
msgid "reached"
msgstr ""
msgid "reached."
msgstr ""
msgid "refered to committee"
msgstr ""
@ -2876,6 +2982,9 @@ msgstr ""
msgid "selected"
msgstr ""
msgid "started"
msgstr ""
msgid "statute paragraphs have been imported."
msgstr ""
@ -2894,9 +3003,6 @@ msgstr ""
msgid "undocumented"
msgstr ""
msgid "unpublished"
msgstr ""
msgid "with filter"
msgstr ""

View File

@ -290,6 +290,10 @@ b,
font-weight: 500;
}
.italic {
font-style: italic;
}
.generic-mini-button {
bottom: -28px;
z-index: 100;

View File

@ -15,7 +15,7 @@ def get_config_variables():
name="assignment_poll_method",
default_value="votes",
input_type="choice",
label="Preselected election method",
label="Default election method",
choices=tuple(
{"value": method[0], "display_name": method[1]}
for method in AssignmentPoll.POLLMETHODS
@ -29,7 +29,7 @@ def get_config_variables():
name="assignment_poll_default_100_percent_base",
default_value="valid",
input_type="choice",
label="The 100-%-base of an election result consists of",
label="Default 100 % base of an election result",
choices=tuple(
{"value": base[0], "display_name": base[1]}
for base in AssignmentPoll.PERCENT_BASES
@ -90,7 +90,7 @@ def get_config_variables():
name="assignments_pdf_ballot_papers_selection",
default_value="CUSTOM_NUMBER",
input_type="choice",
label="Number of ballot papers (selection)",
label="Number of ballot papers",
choices=(
{"value": "NUMBER_OF_DELEGATES", "display_name": "Number of all delegates"},
{

View File

@ -141,7 +141,7 @@ class Migration(migrations.Migration):
choices=[
("YN", "Yes/No per candidate"),
("YNA", "Yes/No/Abstain per candidate"),
("votes", "Sum of votes inclusive global ones"),
("votes", "Sum of votes including general No/Abstain"),
("valid", "All valid ballots"),
("cast", "All casted ballots"),
("disabled", "Disabled (no percents)"),

View File

@ -335,7 +335,7 @@ class AssignmentPoll(RESTModelMixin, BasePoll):
PERCENT_BASES = (
(PERCENT_BASE_YN, "Yes/No per candidate"),
(PERCENT_BASE_YNA, "Yes/No/Abstain per candidate"),
(PERCENT_BASE_VOTES, "Sum of votes inclusive global ones"),
(PERCENT_BASE_VOTES, "Sum of votes including general No/Abstain"),
(PERCENT_BASE_VALID, "All valid ballots"),
(PERCENT_BASE_CAST, "All casted ballots"),
(PERCENT_BASE_DISABLED, "Disabled (no percents)"),

View File

@ -335,7 +335,7 @@ def get_config_variables():
name="motion_poll_default_100_percent_base",
default_value="YNA",
input_type="choice",
label="The 100 % base of a voting result consists of",
label="Default 100 % base of a voting result",
choices=tuple(
{"value": base[0], "display_name": base[1]}
for base in MotionPoll.PERCENT_BASES
@ -375,7 +375,7 @@ def get_config_variables():
name="motions_pdf_ballot_papers_selection",
default_value="CUSTOM_NUMBER",
input_type="choice",
label="Number of ballot papers (selection)",
label="Number of ballot papers",
choices=(
{"value": "NUMBER_OF_DELEGATES", "display_name": "Number of all delegates"},
{