Release of upstream version 4.10.
Signed-off-by: Thomas Hochstein <thh@inter.net>
This commit is contained in:
parent
b0edfe72dd
commit
bb61da3743
17
CHANGES
17
CHANGES
|
@ -1,9 +1,7 @@
|
||||||
UseVoteGer Versionshistorie (aktuelle Version: 4.10, released )
|
UseVoteGer Versionshistorie (aktuelle Version: 4.10, released 17.09.2012)
|
||||||
=========================================================================
|
=========================================================================
|
||||||
|
|
||||||
TODO:
|
TODO:
|
||||||
- Fehler in Annullierungsbearbeitung (wird nur bei erstem oder letztem
|
|
||||||
Abstimmungspunkt ausgewertet)
|
|
||||||
- aussortieren von Bounces aus Stimmenliste
|
- aussortieren von Bounces aus Stimmenliste
|
||||||
- Unterstuetzung von Maildir
|
- Unterstuetzung von Maildir
|
||||||
- [Zugschlus] ich fänd es klasse, wenn man eine Kopie des Wahlscheines ins
|
- [Zugschlus] ich fänd es klasse, wenn man eine Kopie des Wahlscheines ins
|
||||||
|
@ -12,16 +10,27 @@ oder wdiff zwischen Sollwahlschein und wirklich eingreichtem
|
||||||
Wahlschein macht. Auf diese Weise erwischt man auch kleine Änderungen
|
Wahlschein macht. Auf diese Weise erwischt man auch kleine Änderungen
|
||||||
am Datenschutzhinweis (da bin ich eben in eine Falle von th-h getappt).
|
am Datenschutzhinweis (da bin ich eben in eine Falle von th-h getappt).
|
||||||
|
|
||||||
Version 4.10:
|
Version 4.10 (17.09.2012):
|
||||||
- Fehler in uvvote.pl, Zeile 126 behoben (Verarbeitung von temporaeren
|
- Fehler in uvvote.pl, Zeile 126 behoben (Verarbeitung von temporaeren
|
||||||
Dateien - es wurde nicht korrekt auf vorhandene Temp-Dateien
|
Dateien - es wurde nicht korrekt auf vorhandene Temp-Dateien
|
||||||
geprueft)
|
geprueft)
|
||||||
- Typo in bdsgtext.cfg behoben
|
- Typo in bdsgtext.cfg behoben
|
||||||
|
- doppelten Identifier "VOTE_NO_VOTES" in messages.cfg/uvvote.pl umbenannt
|
||||||
- templates/ack-mail: Votetaker (Unterschrift) linksbuendig statt
|
- templates/ack-mail: Votetaker (Unterschrift) linksbuendig statt
|
||||||
wie vorher rechtsbuendig einfuegen; Anleitung fuer Annullierungen
|
wie vorher rechtsbuendig einfuegen; Anleitung fuer Annullierungen
|
||||||
verbessert; Hinweis darauf, dass Stimmaenderungen an den
|
verbessert; Hinweis darauf, dass Stimmaenderungen an den
|
||||||
Voteaccount geschickt werden muessen und nicht einfach als Antwort
|
Voteaccount geschickt werden muessen und nicht einfach als Antwort
|
||||||
auf die Ack-Mail geschickt werden koennen)
|
auf die Ack-Mail geschickt werden koennen)
|
||||||
|
- Fehler in Annullierungsbearbeitung behoben (wurde nur bei erstem
|
||||||
|
oder letztem Abstimmungspunkt ausgewertet)
|
||||||
|
- Abstimmungsname wird nun auf Korrektheit geprüft (Wahlschein gehört
|
||||||
|
zur richtigen Abstimmung)
|
||||||
|
- neue Konfigurations-Option "ballotintro" und neues Template
|
||||||
|
tpl_wrong_voting
|
||||||
|
- usenet@ und news@ werden nicht mehr als ungueltige Mailadressen
|
||||||
|
angesehen. Vor allem usenet@ wird von vielen Waehlern verwendet.
|
||||||
|
- Aenderung der Wahlregeln: statt 60 nur noch 50 JA-Stimmen benoetigt
|
||||||
|
- kleinere Template-Aenderungen (verbesserte Texte/Formatierungen)
|
||||||
|
|
||||||
Version 4.09 (14.09.2007):
|
Version 4.09 (14.09.2007):
|
||||||
- "votefile"-Option in usevote.cfg an passendere Stelle verschoben und
|
- "votefile"-Option in usevote.cfg an passendere Stelle verschoben und
|
||||||
|
|
7
README
7
README
|
@ -1,4 +1,4 @@
|
||||||
UseVoteGer 4.09 (c) 2001-2007 Marc Langer
|
UseVoteGer 4.10 (c) 2001-2012 Marc Langer
|
||||||
|
|
||||||
UseVoteGer is a voting software for usenet votes.
|
UseVoteGer is a voting software for usenet votes.
|
||||||
|
|
||||||
|
@ -18,7 +18,7 @@ written in C). Not all functions of Usevote/UseVoteGer 3.x are implemented!
|
||||||
|
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
|
|
||||||
UseVoteGer 4.09 - Usenet-Abstimmungssoftware
|
UseVoteGer 4.10 - Usenet-Abstimmungssoftware
|
||||||
===========================================
|
===========================================
|
||||||
|
|
||||||
von Marc Langer <uv@marclanger.de>
|
von Marc Langer <uv@marclanger.de>
|
||||||
|
@ -89,9 +89,6 @@ I. Einmalig bei der Usevote-Erstinstallation
|
||||||
sehr einfach mit "perl -MCPAN -e shell", ActivePerl fuer
|
sehr einfach mit "perl -MCPAN -e shell", ActivePerl fuer
|
||||||
Windows hat einen eigenen Paketmanager)
|
Windows hat einen eigenen Paketmanager)
|
||||||
|
|
||||||
Achtung: Bei meinem ActivePerl 5.6.1 war eine alte Libnet-Version
|
|
||||||
enthalten, die noch keine SMTP-Authentication unterstuetzte.
|
|
||||||
Bei Benutzung dieses Features muss evtl. erst upgedated werden.
|
|
||||||
|
|
||||||
II. Fuer jedes Voting
|
II. Fuer jedes Voting
|
||||||
(1) usevote.cfg auf das durchzufuehrende Voting anpassen
|
(1) usevote.cfg auf das durchzufuehrende Voting anpassen
|
||||||
|
|
|
@ -18,7 +18,7 @@ require Exporter;
|
||||||
$VERSION = "0.18";
|
$VERSION = "0.18";
|
||||||
|
|
||||||
# Usevote version
|
# Usevote version
|
||||||
$usevote_version = "UseVoteGer 4.09";
|
$usevote_version = "UseVoteGer 4.10";
|
||||||
|
|
||||||
sub read_config {
|
sub read_config {
|
||||||
|
|
||||||
|
|
38
UVmenu.pm
38
UVmenu.pm
|
@ -17,7 +17,8 @@ $VERSION = "0.4";
|
||||||
##############################################################################
|
##############################################################################
|
||||||
# Menu for interaction with the votetaker #
|
# Menu for interaction with the votetaker #
|
||||||
# Parameters: votes list and header (references to arrays) #
|
# Parameters: votes list and header (references to arrays) #
|
||||||
# Body, Mailadress, Name, Ballot ID (references to strings) #
|
# Body, Mailadress, Name, Ballot ID, #
|
||||||
|
# Voting (references to strings) #
|
||||||
# List of newly set fields (reference to array) #
|
# List of newly set fields (reference to array) #
|
||||||
# List of errors to correct (Array-Ref) #
|
# List of errors to correct (Array-Ref) #
|
||||||
# Return Values: 'w': proceed #
|
# Return Values: 'w': proceed #
|
||||||
|
@ -25,7 +26,7 @@ $VERSION = "0.4";
|
||||||
##############################################################################
|
##############################################################################
|
||||||
|
|
||||||
sub menu {
|
sub menu {
|
||||||
my ($votes, $header, $body, $addr, $name, $ballot_id, $set, $errors) = @_;
|
my ($votes, $header, $body, $addr, $name, $ballot_id, $voting, $set, $errors) = @_;
|
||||||
my $input = "";
|
my $input = "";
|
||||||
my $voter_addr = $$addr || '';
|
my $voter_addr = $$addr || '';
|
||||||
my $voter_name = $$name || '';
|
my $voter_name = $$name || '';
|
||||||
|
@ -79,6 +80,7 @@ sub menu {
|
||||||
print "(5) ", UVmessage::get("MENU_BALLOT_ID"), " [$$ballot_id]\n"
|
print "(5) ", UVmessage::get("MENU_BALLOT_ID"), " [$$ballot_id]\n"
|
||||||
if ($config{personal});
|
if ($config{personal});
|
||||||
print "(6) ", UVmessage::get("MENU_BDSG"), "\n" if ($config{bdsg});
|
print "(6) ", UVmessage::get("MENU_BDSG"), "\n" if ($config{bdsg});
|
||||||
|
print "(7) ", UVmessage::get("MENU_VOTING"), " [", $$voting, "]\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
print "\n",
|
print "\n",
|
||||||
|
@ -269,6 +271,38 @@ sub menu {
|
||||||
$errors{InvalidBDSG} = UVmessage::get("MENU_INVALIDBDSG");
|
$errors{InvalidBDSG} = UVmessage::get("MENU_INVALIDBDSG");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
} elsif ($input eq '7') {
|
||||||
|
my $sel;
|
||||||
|
do {
|
||||||
|
print "[a] ", UVmessage::get("MENU_VOTING_CORRECT"), "\n",
|
||||||
|
"[b] ", UVmessage::get("MENU_VOTING_WRONG"), "\n\n",
|
||||||
|
UVmessage::get("MENU_PROMPT");
|
||||||
|
$sel = <STDIN>;
|
||||||
|
} until ($sel =~ /^[ab]$/i);
|
||||||
|
|
||||||
|
if ($sel =~ /^a$/i) {
|
||||||
|
delete $errors{NoVoting};
|
||||||
|
delete $errors{WrongVoting};
|
||||||
|
} else {
|
||||||
|
$errors{WrongVoting} = UVmessage::get("MENU_WRONGVOTING");
|
||||||
|
}
|
||||||
|
|
||||||
|
} elsif ($input eq '7') {
|
||||||
|
my $sel;
|
||||||
|
do {
|
||||||
|
print "[a] ", UVmessage::get("MENU_VOTING_CORRECT"), "\n",
|
||||||
|
"[b] ", UVmessage::get("MENU_VOTING_WRONG"), "\n\n",
|
||||||
|
UVmessage::get("MENU_PROMPT");
|
||||||
|
$sel = <STDIN>;
|
||||||
|
} until ($sel =~ /^[ab]$/i);
|
||||||
|
|
||||||
|
if ($sel =~ /^a$/i) {
|
||||||
|
delete $errors{NoVoting};
|
||||||
|
delete $errors{WrongVoting};
|
||||||
|
} else {
|
||||||
|
$errors{WrongVoting} = UVmessage::get("MENU_WRONGVOTING");
|
||||||
|
}
|
||||||
|
|
||||||
} elsif ($input =~ /^i$/i) {
|
} elsif ($input =~ /^i$/i) {
|
||||||
my $ignore = UVmessage::get("MENU_IGNORE_STRING");
|
my $ignore = UVmessage::get("MENU_IGNORE_STRING");
|
||||||
# Set columns for Text::Wrap
|
# Set columns for Text::Wrap
|
||||||
|
|
|
@ -25,7 +25,6 @@ hostmaster@
|
||||||
install@
|
install@
|
||||||
mailer.*@
|
mailer.*@
|
||||||
maint.*@
|
maint.*@
|
||||||
news@
|
|
||||||
newsmaster@
|
newsmaster@
|
||||||
nobody@
|
nobody@
|
||||||
operator@
|
operator@
|
||||||
|
@ -38,5 +37,4 @@ sysop@
|
||||||
system@
|
system@
|
||||||
test@
|
test@
|
||||||
tutor@
|
tutor@
|
||||||
usenet@
|
|
||||||
uucp@
|
uucp@
|
||||||
|
|
|
@ -29,6 +29,8 @@ MENU_INVALIDBDSG = Datenschutzhinweis fehlerhaft oder nicht bestaetigt.
|
||||||
MENU_DUPLICATEVOTE = Doppelte Stimmabgabe gefunden.
|
MENU_DUPLICATEVOTE = Doppelte Stimmabgabe gefunden.
|
||||||
MENU_NOVOTE = Keine Stimmabgabe gefunden.
|
MENU_NOVOTE = Keine Stimmabgabe gefunden.
|
||||||
MENU_INVALIDVOTE = Ungueltige Stimmabgabe.
|
MENU_INVALIDVOTE = Ungueltige Stimmabgabe.
|
||||||
|
MENU_NOVOTING = Bezeichnung der Abstimmung nicht gefunden.
|
||||||
|
MENU_WRONGVOTING = Wahlschein fuer andere Abstimmung.
|
||||||
MENU_NOBALLOTID = Keine Scheinkennung gefunden.
|
MENU_NOBALLOTID = Keine Scheinkennung gefunden.
|
||||||
MENU_WRONGBALLOTID = Scheinkennung falsch.
|
MENU_WRONGBALLOTID = Scheinkennung falsch.
|
||||||
MENU_ADDRESSNOTREGISTERED = Adresse nicht registriert.
|
MENU_ADDRESSNOTREGISTERED = Adresse nicht registriert.
|
||||||
|
@ -67,6 +69,9 @@ MENU_BALLOT_ID = Scheinkennung
|
||||||
MENU_BDSG = Datenschutzklausel
|
MENU_BDSG = Datenschutzklausel
|
||||||
MENU_BDSG_ACCEPTED = Datenschutzklausel wurde akzeptiert
|
MENU_BDSG_ACCEPTED = Datenschutzklausel wurde akzeptiert
|
||||||
MENU_BDSG_DECLINED = Datenschutzklausel nicht akzeptiert bzw. Text veraendert
|
MENU_BDSG_DECLINED = Datenschutzklausel nicht akzeptiert bzw. Text veraendert
|
||||||
|
MENU_VOTING = Abstimmung
|
||||||
|
MENU_VOTING_CORRECT = Korrekter Wahlschein fuer diese Abstimmung
|
||||||
|
MENU_VOTING_WRONG = Wahlschein fuer andere Abstimmung
|
||||||
MENU_IGNORE = Diese Stimme ignorieren (ohne Benachrichtigung verwerfen)
|
MENU_IGNORE = Diese Stimme ignorieren (ohne Benachrichtigung verwerfen)
|
||||||
MENU_IGNORE_WARNING = Die Stimme wird nicht aufgezeichnet, und es wird keine Bestaetigung verschickt. ${MENU_IGNORE_STRING} eingeben, wenn Du sicher bist:
|
MENU_IGNORE_WARNING = Die Stimme wird nicht aufgezeichnet, und es wird keine Bestaetigung verschickt. ${MENU_IGNORE_STRING} eingeben, wenn Du sicher bist:
|
||||||
MENU_IGNORE_STRING = JA
|
MENU_IGNORE_STRING = JA
|
||||||
|
@ -162,7 +167,7 @@ COUNT_DELETED = ${NUM} Stimme(n) geloescht.
|
||||||
VOTE_RENAMING_MAILBOX = Benenne Stimmdatei um...
|
VOTE_RENAMING_MAILBOX = Benenne Stimmdatei um...
|
||||||
VOTE_WRITE_RESULTS = Ergebnisdatei ${FILE} nicht schreibbar!
|
VOTE_WRITE_RESULTS = Ergebnisdatei ${FILE} nicht schreibbar!
|
||||||
VOTE_CLOSE_RESULTS = Ergebnisdatei ${FILE} konnte nicht erfolgreich geschlossen werden!
|
VOTE_CLOSE_RESULTS = Ergebnisdatei ${FILE} konnte nicht erfolgreich geschlossen werden!
|
||||||
VOTE_NO_VOTES = Keine Stimmen zu verarbeiten.
|
VOTE_NO_VOTEMAILS = Keine Stimmen zu verarbeiten.
|
||||||
VOTE_NUM_VOTES = ${COUNT} Stimmen bearbeitet.
|
VOTE_NUM_VOTES = ${COUNT} Stimmen bearbeitet.
|
||||||
VOTE_NOT_SAVED = ${COUNT} Stimmen bearbeitet, aber nicht gespeichert.
|
VOTE_NOT_SAVED = ${COUNT} Stimmen bearbeitet, aber nicht gespeichert.
|
||||||
VOTE_FIRSTRUN = 'uvvote clean' aufrufen, um Ergebnisse zu speichern und Bestaetigungen zu verschicken.
|
VOTE_FIRSTRUN = 'uvvote clean' aufrufen, um Ergebnisse zu speichern und Bestaetigungen zu verschicken.
|
||||||
|
@ -173,6 +178,7 @@ VOTE_UNREGISTERED_ADDRESS = Adresse nicht registriert
|
||||||
VOTE_INVALID_VOTE = Ungueltige Stimmabgabe
|
VOTE_INVALID_VOTE = Ungueltige Stimmabgabe
|
||||||
VOTE_VIOLATED_RULE = Regel ${RULE} verletzt
|
VOTE_VIOLATED_RULE = Regel ${RULE} verletzt
|
||||||
VOTE_NO_VOTES = Keine Stimmen abgegeben
|
VOTE_NO_VOTES = Keine Stimmen abgegeben
|
||||||
|
VOTE_WRONG_VOTING = Wahlschein gehoert nicht zu dieser Abstimmung
|
||||||
VOTE_INVALID_ACCOUNT = Ungueltiger Account
|
VOTE_INVALID_ACCOUNT = Ungueltiger Account
|
||||||
VOTE_INVALID_ADDRESS = Ungueltige Adresse
|
VOTE_INVALID_ADDRESS = Ungueltige Adresse
|
||||||
VOTE_INVALID_REALNAME = Ungueltiger Realname
|
VOTE_INVALID_REALNAME = Ungueltiger Realname
|
||||||
|
|
|
@ -5,15 +5,22 @@ pos := value pos | fill-right 2
|
||||||
group-first := value group | first-words 50
|
group-first := value group | first-words 50
|
||||||
group-more := value group | drop-words 50 | create-lines 50
|
group-more := value group | drop-words 50 | create-lines 50
|
||||||
vote := value vote | fill-both 10
|
vote := value vote | fill-both 10
|
||||||
votetaker := value mailfrom | fill-left 65
|
votetaker := value mailfrom
|
||||||
|
voteaccount-line := value voteaccount | fill-both 70
|
||||||
|
|
||||||
== TEMPLATE =================================================================
|
== TEMPLATE =================================================================
|
||||||
Diese automatische Nachricht wurde dir nach Zaehlung deiner Stimme
|
Diese automatische Nachricht wurde dir nach Zaehlung deiner Stimme
|
||||||
zugesandt. Wenn alles stimmt, gibt es keinen Anlass fuer eine Reaktion.
|
zugesandt. Wenn alles stimmt, gibt es keinen Anlass fuer eine Reaktion.
|
||||||
|
|
||||||
Wenn deine Stimme falsch registriert wurde, stimme bitte erneut ab,
|
Wenn deine Stimme falsch registriert wurde, stimme bitte erneut ab,
|
||||||
indem du diese Mail komplett zitierst und die falschen Wertungen
|
indem du diese Mail komplett zitierst und die falschen Wertungen
|
||||||
korrigierst (zwischen die eckigen Klammern schreiben). Dabei darf
|
korrigierst (zwischen die eckigen Klammern schreiben). Dabei darf
|
||||||
keinesfalls die laufende Nummer am Zeilenanfang entfernt werden.
|
keinesfalls die laufende Nummer am Zeilenanfang entfernt werden.
|
||||||
|
Beachte bitte, dass Du Deine Stimme an die Abstimmadresse senden
|
||||||
|
musst! Es genuegt daher nicht, einfach auf diese E-Mail zu antworten,
|
||||||
|
vielmehr muss die Antwort an die Adresse
|
||||||
|
[$voteaccount-line]
|
||||||
|
gerichtet sein.
|
||||||
|
|
||||||
Diese Wahl ist oeffentlich, und die Adressen aller Waehlerinnen und
|
Diese Wahl ist oeffentlich, und die Adressen aller Waehlerinnen und
|
||||||
Waehler werden am Ende bekanntgegeben. Wenn du deine Adresse & Stimme
|
Waehler werden am Ende bekanntgegeben. Wenn du deine Adresse & Stimme
|
||||||
|
@ -29,8 +36,8 @@ Wahlscheinkennung gueltig!
|
||||||
[$name-line]
|
[$name-line]
|
||||||
(Real-Namen sind fuer diese Abstimmung vorgeschrieben. Wenn hier
|
(Real-Namen sind fuer diese Abstimmung vorgeschrieben. Wenn hier
|
||||||
nicht Dein wirklicher Name steht, dann korrigiere die Zeile
|
nicht Dein wirklicher Name steht, dann korrigiere die Zeile
|
||||||
bitte und sende die Nachricht zurueck; sonst kann die Stimme
|
bitte und sende die Nachricht erneut an die Abstimmadresse,
|
||||||
spaeter als ungueltig gewertet werden.)
|
sonst kann die Stimme spaeter als ungueltig gewertet werden.)
|
||||||
|
|
||||||
|
|
||||||
Deine Stimmabgabe wurde wie folgt erkannt:
|
Deine Stimmabgabe wurde wie folgt erkannt:
|
||||||
|
@ -39,8 +46,7 @@ Deine Stimmabgabe wurde wie folgt erkannt:
|
||||||
[@group-more| [$line]\n]|\n]
|
[@group-more| [$line]\n]|\n]
|
||||||
|
|
||||||
|
|
||||||
Danke fuer deine Stimmabgabe. Eine Kopie des CfV kannst du von mir er-
|
Danke fuer deine Stimmabgabe.
|
||||||
halten (bitte Namen der Abstimmung angeben, falls mehrere laufen).
|
|
||||||
|
|
||||||
[$votetaker]
|
[$votetaker]
|
||||||
\[mit [$usevote_version]\]
|
\[mit [$usevote_version]\]
|
||||||
|
|
|
@ -14,7 +14,7 @@ bdsgtext-more := value bdsgtext | drop-words 50 | create-lines 50
|
||||||
|
|
||||||
=-=-=-=-=-=-=-=- Alles vor dieser Zeile bitte loeschen =-=-=-=-=-=-=-=-
|
=-=-=-=-=-=-=-=- Alles vor dieser Zeile bitte loeschen =-=-=-=-=-=-=-=-
|
||||||
|
|
||||||
WAHLSCHEIN fuer [$votename-first]
|
[$ballotintro] [$votename-first]
|
||||||
[@votename-more| [$line]\n]
|
[@votename-more| [$line]\n]
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -29,7 +29,7 @@ votetaker := value mailfrom | fill-left 65
|
||||||
|
|
||||||
=-=-=-=-=-=-=-=- Alles vor dieser Zeile bitte loeschen =-=-=-=-=-=-=-=-
|
=-=-=-=-=-=-=-=- Alles vor dieser Zeile bitte loeschen =-=-=-=-=-=-=-=-
|
||||||
|
|
||||||
WAHLSCHEIN fuer [$votename-first]
|
[$ballotintro] [$votename-first]
|
||||||
[@votename-more| [$line]\n]
|
[@votename-more| [$line]\n]
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -11,9 +11,10 @@ group-more := value group | drop-words 40 | create-lines 40
|
||||||
|
|
||||||
Ergebnisse [$votename-first]
|
Ergebnisse [$votename-first]
|
||||||
[@votename-more| [$line]\n]
|
[@votename-more| [$line]\n]
|
||||||
([$numvalid] gueltige Stimmen)
|
|
||||||
|
|
||||||
Ja Nein : 2/3? >=60? : ang.? : Gruppe
|
Es wurden [$numvalid] gueltige Stimmen abgegeben.
|
||||||
|
|
||||||
|
Ja Nein : 2/3? >=50? : ang.? : Gruppe
|
||||||
---- ---- : ---- ----- : ----- : ---------------------------------------
|
---- ---- : ---- ----- : ----- : ---------------------------------------
|
||||||
[@count|[$yes] [$no] : [?cond1| Ja |Nein] [?cond2| Ja |Nein] : [?result| Ja |Nein] : [$group-first]
|
[@count|[$yes] [$no] : [?cond1| Ja |Nein] [?cond2| Ja |Nein] : [?result| Ja |Nein] : [$group-first]
|
||||||
[@group-more| : : : [$line]\n]\n]
|
[@group-more| : : : [$line]\n]\n]
|
||||||
|
@ -24,6 +25,7 @@ Gegen dieses Ergebnis kann innerhalb einer Woche nach seiner
|
||||||
Veroeffentlichung Einspruch erhoben werden. Der Einspruch ist per
|
Veroeffentlichung Einspruch erhoben werden. Der Einspruch ist per
|
||||||
E-Mail bei der Moderation von de.admin.news.announce (Adressen
|
E-Mail bei der Moderation von de.admin.news.announce (Adressen
|
||||||
siehe Signatur) einzulegen.
|
siehe Signatur) einzulegen.
|
||||||
|
|
||||||
Wenn es keine ernsthaften Einsprueche gibt oder diese abgelehnt
|
Wenn es keine ernsthaften Einsprueche gibt oder diese abgelehnt
|
||||||
werden, wird die Moderation von de.admin.news.announce das
|
werden, wird die Moderation von de.admin.news.announce das
|
||||||
Ergebnis danach umsetzen.
|
Ergebnis danach umsetzen.
|
||||||
|
|
|
@ -12,7 +12,8 @@ group-more := value group | drop-words 40 | create-lines 40
|
||||||
|
|
||||||
Ergebnisse [$votename-first]
|
Ergebnisse [$votename-first]
|
||||||
[@votename-more| [$line]\n]
|
[@votename-more| [$line]\n]
|
||||||
([$numvalid] gueltige Stimmen)
|
|
||||||
|
Es wurden [$numvalid] gueltige Stimmen abgegeben.
|
||||||
|
|
||||||
Ja Nein : J>=N? Ja/Nein : ang.? : Gruppe
|
Ja Nein : J>=N? Ja/Nein : ang.? : Gruppe
|
||||||
---- ---- : ----- ------- : ----- : ---------------------------------------
|
---- ---- : ----- ------- : ----- : ---------------------------------------
|
||||||
|
@ -24,6 +25,7 @@ Gegen dieses Ergebnis kann innerhalb einer Woche nach seiner
|
||||||
Veroeffentlichung Einspruch erhoben werden. Der Einspruch ist per
|
Veroeffentlichung Einspruch erhoben werden. Der Einspruch ist per
|
||||||
E-Mail bei der Moderation von de.admin.news.announce (Adressen
|
E-Mail bei der Moderation von de.admin.news.announce (Adressen
|
||||||
siehe Signatur) einzulegen.
|
siehe Signatur) einzulegen.
|
||||||
|
|
||||||
Wenn es keine ernsthaften Einsprueche gibt oder diese abgelehnt
|
Wenn es keine ernsthaften Einsprueche gibt oder diese abgelehnt
|
||||||
werden, wird die Moderation von de.admin.news.announce das
|
werden, wird die Moderation von de.admin.news.announce das
|
||||||
Ergebnis danach umsetzen.
|
Ergebnis danach umsetzen.
|
||||||
|
|
|
@ -8,19 +8,21 @@ votename-text-more := value votename | drop-words 30 | create-lines 72
|
||||||
|
|
||||||
Ergebnisse [$votename-first]
|
Ergebnisse [$votename-first]
|
||||||
[@votename-more| [$line]\n]
|
[@votename-more| [$line]\n]
|
||||||
([$numvalid] gueltige Stimmen)
|
|
||||||
|
Es wurden [$numvalid] gueltige Stimmen abgegeben.
|
||||||
|
|
||||||
Es gab [$yes] Ja-Stimmen und [$no] Nein-Stimmen[?numabstain| bei [$numabstain] Enthaltungen].
|
Es gab [$yes] Ja-Stimmen und [$no] Nein-Stimmen[?numabstain| bei [$numabstain] Enthaltungen].
|
||||||
[?numinvalid|[$numinvalid] Stimme(n) wurden als ungueltig gewertet.]
|
[?numinvalid|[$numinvalid] Stimme(n) wurden als ungueltig gewertet.]
|
||||||
|
|
||||||
Es wurde [?cond1|die|keine] 2/3-Mehrheit erreicht und es gingen [?cond2|mehr|weniger] als
|
Es wurde [?cond1|die|keine] 2/3-Mehrheit erreicht und es gingen [?cond2|mehr|weniger] als
|
||||||
60 Ja-Stimmen ein. Damit ist die [$votename-text-first]
|
50 Ja-Stimmen ein. Damit ist die [$votename-text-first]
|
||||||
[@votename-text-more|[$line] |\n][?cond1|[?cond2|angenommen|abgelehnt]|abgelehnt].
|
[@votename-text-more|[$line] |\n][?cond1|[?cond2|angenommen|abgelehnt]|abgelehnt].
|
||||||
|
|
||||||
Gegen dieses Ergebnis kann innerhalb einer Woche nach seiner
|
Gegen dieses Ergebnis kann innerhalb einer Woche nach seiner
|
||||||
Veroeffentlichung Einspruch erhoben werden. Der Einspruch ist per
|
Veroeffentlichung Einspruch erhoben werden. Der Einspruch ist per
|
||||||
E-Mail bei der Moderation von de.admin.news.announce (Adressen
|
E-Mail bei der Moderation von de.admin.news.announce (Adressen
|
||||||
siehe Signatur) einzulegen.
|
siehe Signatur) einzulegen.
|
||||||
|
|
||||||
Wenn es keine ernsthaften Einsprueche gibt oder diese abgelehnt
|
Wenn es keine ernsthaften Einsprueche gibt oder diese abgelehnt
|
||||||
werden, wird die Moderation von de.admin.news.announce das
|
werden, wird die Moderation von de.admin.news.announce das
|
||||||
Ergebnis danach umsetzen.
|
Ergebnis danach umsetzen.
|
||||||
|
|
21
templates/wrong-voting
Normal file
21
templates/wrong-voting
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
votetaker := value mailfrom | fill-left 65
|
||||||
|
body := value body | quote "> "
|
||||||
|
|
||||||
|
== TEMPLATE =================================================================
|
||||||
|
Offenbar hast du einen Wahlschein fuer eine andere Abstimmung eingesandt
|
||||||
|
oder der Name der Abstimmung geht aus dem Wahlschein nicht hervor. Wenn
|
||||||
|
das ein Irrtum war, pruefe bitte noch einmal die im CfV angegebene
|
||||||
|
Abstimmungsadresse und wiederhole Deine Stimmabgabe.
|
||||||
|
|
||||||
|
Dieser Fehler kann auftreten, wenn Du an mehreren Abstimmungen teilnimmst
|
||||||
|
und den Wahlschein von Hand einsendest (und dabei mehrere Abstimmungen
|
||||||
|
verwechselst), oder wenn Du die Bezeichnung der Abstimmung im Wahlschein
|
||||||
|
veraendert oder geloescht hast.
|
||||||
|
|
||||||
|
Hier die Mail, die ich erhalten habe:
|
||||||
|
|
||||||
|
[$body]
|
||||||
|
|
||||||
|
|
||||||
|
[$votetaker]
|
||||||
|
\[mit [$usevote_version]\]
|
|
@ -75,7 +75,7 @@ multigroup = 1
|
||||||
# wird nur Bedingung 1 ausgewertet und kann z.B. auf "$yes>$no" gesetzt
|
# wird nur Bedingung 1 ausgewertet und kann z.B. auf "$yes>$no" gesetzt
|
||||||
# werden.
|
# werden.
|
||||||
condition1 = $yes>=2*$no
|
condition1 = $yes>=2*$no
|
||||||
condition2 = $yes>=60
|
condition2 = $yes>=50
|
||||||
|
|
||||||
# Ergebnisdatei, in der alle Einzelergebniss zusammengeschrieben werden
|
# Ergebnisdatei, in der alle Einzelergebniss zusammengeschrieben werden
|
||||||
# (wird bei jedem Programmlauf neu erstellt!)
|
# (wird bei jedem Programmlauf neu erstellt!)
|
||||||
|
@ -227,6 +227,10 @@ mailstart = "^From "
|
||||||
begin_divider = Alles vor dieser Zeile bitte loeschen
|
begin_divider = Alles vor dieser Zeile bitte loeschen
|
||||||
end_divider = Alles nach dieser Zeile bitte loeschen
|
end_divider = Alles nach dieser Zeile bitte loeschen
|
||||||
|
|
||||||
|
# Ueberschrift fuer den Wahlschein
|
||||||
|
# Achtung, muss im Wahlschein genauso stehen!
|
||||||
|
ballotintro = WAHLSCHEIN fuer
|
||||||
|
|
||||||
# Text fuer die Namens-Angabe im Wahlschein. Achtung, muss im
|
# Text fuer die Namens-Angabe im Wahlschein. Achtung, muss im
|
||||||
# Wahlschein genauso stehen!
|
# Wahlschein genauso stehen!
|
||||||
nametext = Dein Realname, falls nicht im FROM-Header:
|
nametext = Dein Realname, falls nicht im FROM-Header:
|
||||||
|
@ -290,4 +294,5 @@ tpl_invalid_name = "invalid-name" # used by uvvote.pl
|
||||||
tpl_multiple_votes = "multiple-votes" # used by uvvote.pl
|
tpl_multiple_votes = "multiple-votes" # used by uvvote.pl
|
||||||
tpl_no_ballot = "no-ballot" # used by uvvote.pl
|
tpl_no_ballot = "no-ballot" # used by uvvote.pl
|
||||||
tpl_no_votes = "no-votes" # used by uvvote.pl
|
tpl_no_votes = "no-votes" # used by uvvote.pl
|
||||||
|
tpl_wrong_voting = "wrong-voting" # used by uvvote.pl
|
||||||
tpl_rule_violated = "rule-violated" # used by uvvote.pl (c.f. usevote.rul)
|
tpl_rule_violated = "rule-violated" # used by uvvote.pl (c.f. usevote.rul)
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
#!/usr/bin/perl -w
|
#!/usr/bin/perl -w
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# UseVoteGer 4.09 Wahlscheingenerierung
|
# UseVoteGer 4.10 Wahlscheingenerierung
|
||||||
# (c) 2001-2005 Marc Langer <uv@marclanger.de>
|
# (c) 2001-2012 Marc Langer <uv@marclanger.de>
|
||||||
#
|
#
|
||||||
# This script package is free software; you can redistribute it and/or
|
# This script package is free software; you can redistribute it and/or
|
||||||
# modify it under the terms of the GNU Public License as published by the
|
# modify it under the terms of the GNU Public License as published by the
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
#!/usr/bin/perl -w
|
#!/usr/bin/perl -w
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# UseVoteGer 4.09 Bounce-Verarbeitung
|
# UseVoteGer 4.10 Bounce-Verarbeitung
|
||||||
# (c) 2001-2005 Marc Langer <uv@marclanger.de>
|
# (c) 2001-2012 Marc Langer <uv@marclanger.de>
|
||||||
#
|
#
|
||||||
# This script package is free software; you can redistribute it and/or
|
# This script package is free software; you can redistribute it and/or
|
||||||
# modify it under the terms of the GNU Public License as published by the
|
# modify it under the terms of the GNU Public License as published by the
|
||||||
|
|
8
uvcfv.pl
8
uvcfv.pl
|
@ -1,8 +1,8 @@
|
||||||
#!/usr/bin/perl -w
|
#!/usr/bin/perl -w
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# UseVoteGer 4.09 Personalisierte Wahlscheine
|
# UseVoteGer 4.10 Personalisierte Wahlscheine
|
||||||
# (c) 2001-2005 Marc Langer <uv@marclanger.de>
|
# (c) 2001-2012 Marc Langer <uv@marclanger.de>
|
||||||
#
|
#
|
||||||
# This script package is free software; you can redistribute it and/or
|
# This script package is free software; you can redistribute it and/or
|
||||||
# modify it under the terms of the GNU Public License as published by the
|
# modify it under the terms of the GNU Public License as published by the
|
||||||
|
@ -152,9 +152,9 @@ sub process_request {
|
||||||
# check for suspicious addresses
|
# check for suspicious addresses
|
||||||
foreach my $element (@bad_addr) {
|
foreach my $element (@bad_addr) {
|
||||||
if ($voter_addr =~ /^$element/) {
|
if ($voter_addr =~ /^$element/) {
|
||||||
my (@votes, @set, $ballot_id); # irrelevant, but necessary for UVmenu::menu()
|
my (@votes, @set, $ballot_id, $voting); # irrelevant, but necessary for UVmenu::menu()
|
||||||
my @errors = ('SuspiciousAccountBallot');
|
my @errors = ('SuspiciousAccountBallot');
|
||||||
my $res = UVmenu::menu(\@votes, \@header, $body, \$voter_addr, \$voter_name, \$ballot_id, \@set, \@errors);
|
my $res = UVmenu::menu(\@votes, \@header, $body, \$voter_addr, \$voter_name, \$ballot_id, \$voting, \@set, \@errors);
|
||||||
|
|
||||||
# "Ignore": don't deliver a ballot
|
# "Ignore": don't deliver a ballot
|
||||||
return 0 if ($res eq 'i');
|
return 0 if ($res eq 'i');
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
#!/usr/bin/perl -w
|
#!/usr/bin/perl -w
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# UseVoteGer 4.09 Stimmauswertung
|
# UseVoteGer 4.10 Stimmauswertung
|
||||||
# (c) 2001-2005 Marc Langer <uv@marclanger.de>
|
# (c) 2001-2012 Marc Langer <uv@marclanger.de>
|
||||||
#
|
#
|
||||||
# This script package is free software; you can redistribute it and/or
|
# This script package is free software; you can redistribute it and/or
|
||||||
# modify it under the terms of the GNU Public License as published by the
|
# modify it under the terms of the GNU Public License as published by the
|
||||||
|
|
26
uvvote.pl
26
uvvote.pl
|
@ -1,8 +1,8 @@
|
||||||
#!/usr/bin/perl -w
|
#!/usr/bin/perl -w
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# UseVoteGer 4.09 Wahldurchfuehrung
|
# UseVoteGer 4.10 Wahldurchfuehrung
|
||||||
# (c) 2001-2005 Marc Langer <uv@marclanger.de>
|
# (c) 2001-2012 Marc Langer <uv@marclanger.de>
|
||||||
#
|
#
|
||||||
# This script package is free software; you can redistribute it and/or
|
# This script package is free software; you can redistribute it and/or
|
||||||
# modify it under the terms of the GNU Public License as published by the
|
# modify it under the terms of the GNU Public License as published by the
|
||||||
|
@ -158,7 +158,7 @@ if ($clean) {
|
||||||
|
|
||||||
# no mails: exit here
|
# no mails: exit here
|
||||||
unless ($count) {
|
unless ($count) {
|
||||||
print UVmessage::get("VOTE_NO_VOTES") . "\n\n";
|
print UVmessage::get("VOTE_NO_VOTEMAILS") . "\n\n";
|
||||||
exit 0;
|
exit 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -224,6 +224,7 @@ sub process_vote {
|
||||||
my $onevote = 0; # 0=no votes, 1=everything OK, 2=vote cancelled
|
my $onevote = 0; # 0=no votes, 1=everything OK, 2=vote cancelled
|
||||||
my $voteerror = ""; # error message in case of invalid vote
|
my $voteerror = ""; # error message in case of invalid vote
|
||||||
my $ballot_id = ""; # ballot id (German: Wahlscheinkennung)
|
my $ballot_id = ""; # ballot id (German: Wahlscheinkennung)
|
||||||
|
my $voting = ""; # voting (should be votename)
|
||||||
|
|
||||||
# found address?
|
# found address?
|
||||||
if ($voter_addr) {
|
if ($voter_addr) {
|
||||||
|
@ -239,6 +240,15 @@ sub process_vote {
|
||||||
push (@errors, 'InvalidAddress');
|
push (@errors, 'InvalidAddress');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# correct voting?
|
||||||
|
if ($$body =~ /\Q$config{ballotintro}\E\s+(.+?)\s*\n(.*?[\t ]+(\S+.+)\s*$)?/m) {
|
||||||
|
$voting = $1;
|
||||||
|
$voting .= " $3" if defined($3);
|
||||||
|
push (@errors, 'WrongVoting') if ($config{votename} !~ /^\s*\Q$voting\E\s*$/);
|
||||||
|
} else {
|
||||||
|
push (@errors, 'NoVoting');
|
||||||
|
}
|
||||||
|
|
||||||
# personalized ballots?
|
# personalized ballots?
|
||||||
if ($config{personal}) {
|
if ($config{personal}) {
|
||||||
if ($$body =~ /$config{ballotidtext}\s+([a-z0-9]+)/) {
|
if ($$body =~ /$config{ballotidtext}\s+([a-z0-9]+)/) {
|
||||||
|
@ -273,7 +283,7 @@ sub process_vote {
|
||||||
# this matches on a single appearance:
|
# this matches on a single appearance:
|
||||||
if ($$body =~ /#$votenum\W*?\[(.+)\]/) {
|
if ($$body =~ /#$votenum\W*?\[(.+)\]/) {
|
||||||
# one or more vote strings were found
|
# one or more vote strings were found
|
||||||
$onevote = 1;
|
$onevote ||= 1; # set $onevote to 1 if it was 0
|
||||||
my $votestring = $1;
|
my $votestring = $1;
|
||||||
if ($votestring =~ /^\W*$config{ja_stimme}\W*$/i) {
|
if ($votestring =~ /^\W*$config{ja_stimme}\W*$/i) {
|
||||||
$vote = "J";
|
$vote = "J";
|
||||||
|
@ -343,7 +353,7 @@ sub process_vote {
|
||||||
# Errors encountered?
|
# Errors encountered?
|
||||||
if (@errors) {
|
if (@errors) {
|
||||||
my $res = UVmenu::menu(\@votes, \@header, $body, \$voter_addr, \$voter_name,
|
my $res = UVmenu::menu(\@votes, \@header, $body, \$voter_addr, \$voter_name,
|
||||||
\$ballot_id, \@set, \@errors);
|
\$ballot_id, \$voting, \@set, \@errors);
|
||||||
return 0 if ($res eq 'i'); # "Ignore": Ignore vote, don't save
|
return 0 if ($res eq 'i'); # "Ignore": Ignore vote, don't save
|
||||||
|
|
||||||
my $tpl;
|
my $tpl;
|
||||||
|
@ -402,6 +412,12 @@ sub process_vote {
|
||||||
my $msg = $template->processTemplate($config{tpl_bdsg_error});
|
my $msg = $template->processTemplate($config{tpl_bdsg_error});
|
||||||
UVsendmail::mail($voter_addr, "Fehler", $msg, $msgid) if ($config{voteack});
|
UVsendmail::mail($voter_addr, "Fehler", $msg, $msgid) if ($config{voteack});
|
||||||
return 0;
|
return 0;
|
||||||
|
} elsif ($error{NoVoting} or $error{WrongVoting}) {
|
||||||
|
$voteerror = UVmessage::get("VOTE_WRONG_VOTING");
|
||||||
|
my $template = UVtemplate->new();
|
||||||
|
$template->setKey('body' => $$body);
|
||||||
|
my $msg = $template->processTemplate($config{tpl_wrong_voting});
|
||||||
|
UVsendmail::mail($voter_addr, "Fehler", $msg, $msgid) if ($config{voteack});
|
||||||
} elsif ($error{NoVote}) {
|
} elsif ($error{NoVote}) {
|
||||||
$voteerror = UVmessage::get("VOTE_NO_VOTES");
|
$voteerror = UVmessage::get("VOTE_NO_VOTES");
|
||||||
my $template = UVtemplate->new();
|
my $template = UVtemplate->new();
|
||||||
|
|
Loading…
Reference in a new issue