Release of upstream version 4.11.
Signed-off-by: Thomas Hochstein <thh@inter.net>
This commit is contained in:
		
							parent
							
								
									bb61da3743
								
							
						
					
					
						commit
						c9497882fb
					
				
					 10 changed files with 64 additions and 47 deletions
				
			
		
							
								
								
									
										14
									
								
								CHANGES
									
										
									
									
									
								
							
							
						
						
									
										14
									
								
								CHANGES
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -1,15 +1,21 @@
 | 
			
		|||
UseVoteGer Versionshistorie (aktuelle Version: 4.10, released 17.09.2012)
 | 
			
		||||
UseVoteGer Versionshistorie (aktuelle Version: 4.11, released 25.09.2012)
 | 
			
		||||
=========================================================================
 | 
			
		||||
 | 
			
		||||
TODO:
 | 
			
		||||
- aussortieren von Bounces aus Stimmenliste
 | 
			
		||||
- Unterstuetzung von Maildir
 | 
			
		||||
- [Zugschlus] ich fänd es klasse, wenn man eine Kopie des Wahlscheines ins
 | 
			
		||||
Abstimmungsverzeichnis legt und Usevote einem dann auf Abruf ein diff
 | 
			
		||||
oder wdiff zwischen Sollwahlschein und wirklich eingreichtem
 | 
			
		||||
Wahlschein macht. Auf diese Weise erwischt man auch kleine Änderungen
 | 
			
		||||
am Datenschutzhinweis (da bin ich eben in eine Falle von th-h getappt).
 | 
			
		||||
 | 
			
		||||
Version 4.11 (25.09.2012):
 | 
			
		||||
- Regular Expression fuer Pruefung des Abstimmungsnamens verbessert.
 | 
			
		||||
  Es kam zu vielen False Positives
 | 
			
		||||
- Einlesen der Mailbox auf Perlmodule Mail::Box umgestellt, damit
 | 
			
		||||
  auch Maildir moeglich (neue Option "mailboxtype" in usevote.cfg).
 | 
			
		||||
  Archivierung erfolgt aber vorerst weiterhin immer als mbox
 | 
			
		||||
 | 
			
		||||
Version 4.10 (17.09.2012):
 | 
			
		||||
- Fehler in uvvote.pl, Zeile 126 behoben (Verarbeitung von temporaeren
 | 
			
		||||
  Dateien - es wurde nicht korrekt auf vorhandene Temp-Dateien
 | 
			
		||||
| 
						 | 
				
			
			@ -23,7 +29,7 @@ Version 4.10 (17.09.2012):
 | 
			
		|||
  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
 | 
			
		||||
- Abstimmungsname wird nun auf Korrektheit geprueft (Wahlschein gehört
 | 
			
		||||
  zur richtigen Abstimmung)
 | 
			
		||||
- neue Konfigurations-Option "ballotintro" und neues Template
 | 
			
		||||
  tpl_wrong_voting
 | 
			
		||||
| 
						 | 
				
			
			@ -36,7 +42,7 @@ Version 4.09 (14.09.2007):
 | 
			
		|||
- "votefile"-Option in usevote.cfg an passendere Stelle verschoben und
 | 
			
		||||
  den Kommentar korrigiert (natuerlich gilt pop3=0 als Bedingung, nicht
 | 
			
		||||
  etwa wie vorher angegeben smtp=0)
 | 
			
		||||
- Fehler in Template für Ergebnisausgabe korrigiert (fehlendes Newline
 | 
			
		||||
- Fehler in Template fuer Ergebnisausgabe korrigiert (fehlendes Newline
 | 
			
		||||
  nach umgebrochenen Abstimmungspunkten)
 | 
			
		||||
- Fehler in Doku der Kommandozeilenoptionen von uvcount.pl behoben
 | 
			
		||||
  (--voters statt --votes)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										5
									
								
								README
									
										
									
									
									
								
							
							
						
						
									
										5
									
								
								README
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -1,4 +1,4 @@
 | 
			
		|||
UseVoteGer 4.10  (c) 2001-2012 Marc Langer
 | 
			
		||||
UseVoteGer 4.11  (c) 2001-2012 Marc Langer
 | 
			
		||||
 | 
			
		||||
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.10 - Usenet-Abstimmungssoftware
 | 
			
		||||
UseVoteGer 4.11 - Usenet-Abstimmungssoftware
 | 
			
		||||
===========================================
 | 
			
		||||
 | 
			
		||||
von Marc Langer <uv@marclanger.de>
 | 
			
		||||
| 
						 | 
				
			
			@ -958,6 +958,7 @@ votename         Name der Abstimmung
 | 
			
		|||
group1           Erster Abstimmungsgegenstand
 | 
			
		||||
group2           Zweiter (und so weiter durchnummerieren)
 | 
			
		||||
votefile         Mailbox mit eingehenden Stimmen (falls POP3 ausgeschaltet)
 | 
			
		||||
mailboxtype      Typ der Mailbox (mbox, maildir)
 | 
			
		||||
personal         Personalisierte Wahlscheine verwenden? [BOOL]
 | 
			
		||||
                 (siehe gesonderten Abschnitt weiter oben)
 | 
			
		||||
voteaccount      Mailadresse, unter der abgestimmt werden kann
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -18,7 +18,7 @@ require Exporter;
 | 
			
		|||
$VERSION = "0.18";
 | 
			
		||||
 | 
			
		||||
# Usevote version
 | 
			
		||||
$usevote_version = "UseVoteGer 4.10";
 | 
			
		||||
$usevote_version = "UseVoteGer 4.11";
 | 
			
		||||
 | 
			
		||||
sub read_config {
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -45,6 +45,7 @@ sub read_config {
 | 
			
		|||
             voteaccount          => "<> (unkonfiguriertes Usevote)",
 | 
			
		||||
             mailfrom             => "<> (unkonfiguriertes Usevote)",
 | 
			
		||||
             envelopefrom         => "<>",
 | 
			
		||||
             mailboxtype          => "mbox",
 | 
			
		||||
             mailstart            => "^From ",
 | 
			
		||||
             archivedir           => "fertig",
 | 
			
		||||
             tmpdir               => "tmp",
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -9,6 +9,7 @@ use UVmessage;
 | 
			
		|||
use MIME::QuotedPrint;
 | 
			
		||||
use MIME::Base64;
 | 
			
		||||
use MIME::Parser;
 | 
			
		||||
use Mail::Box::Manager;
 | 
			
		||||
use POSIX qw(strftime);
 | 
			
		||||
 | 
			
		||||
use vars qw($VERSION);
 | 
			
		||||
| 
						 | 
				
			
			@ -118,6 +119,41 @@ sub process {
 | 
			
		|||
      close (UIDLCACHE) or print STDERR UVmessage::get("READMAIL_UIDL_CLOSE") . "\n";
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    $pop->quit();
 | 
			
		||||
 | 
			
		||||
  # Mailbox / Maildir
 | 
			
		||||
  } else {
 | 
			
		||||
 | 
			
		||||
    my $mgr = Mail::Box::Manager->new;
 | 
			
		||||
    my $folder;
 | 
			
		||||
 | 
			
		||||
    eval{
 | 
			
		||||
      $folder = $mgr->open( folder => $config{votefile},
 | 
			
		||||
                create => 0,
 | 
			
		||||
                access => 'rw',
 | 
			
		||||
                type   => $config{mailboxtype},
 | 
			
		||||
                expand => 'LAZY',
 | 
			
		||||
              );
 | 
			
		||||
    };
 | 
			
		||||
    die UVmessage::get("READMAIL_NOMAILFILE", (FILE => $config{votefile})) . "\n\n" if $@;
 | 
			
		||||
 | 
			
		||||
    # Iterate over the messages.
 | 
			
		||||
    foreach (@$folder) {
 | 
			
		||||
      my $mail = $_->string;
 | 
			
		||||
      $_->delete();
 | 
			
		||||
      my $fromline = 'From ';
 | 
			
		||||
      if ($mail =~ /From: .*?<(.+?)>/) {
 | 
			
		||||
        $fromline .= $1;
 | 
			
		||||
      } elsif ($mail =~ /From:\s+?(\S+?\@\S+?)\s/) {
 | 
			
		||||
        $fromline .= $1;
 | 
			
		||||
      } else {
 | 
			
		||||
        $fromline .= 'foo@bar.invalid';
 | 
			
		||||
      }
 | 
			
		||||
      $fromline .= ' ' . localtime() . "\n";  #strftime ('%a %b %d %H:%M:%S %Y', localtime) . "\n";
 | 
			
		||||
      push (@mails, $fromline . $mail);
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  # make archive of all mails
 | 
			
		||||
  my $fileproblem = 0;
 | 
			
		||||
  open (VOTES, ">$filename") or $fileproblem = 1;
 | 
			
		||||
| 
						 | 
				
			
			@ -131,26 +167,6 @@ sub process {
 | 
			
		|||
                      (FILE => $filename)) . "\n";
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
    $pop->quit();
 | 
			
		||||
 | 
			
		||||
  } else {
 | 
			
		||||
    # open mail file
 | 
			
		||||
    open(VOTES, "<$filename")
 | 
			
		||||
        or die UVmessage::get("READMAIL_NOMAILFILE", (FILE => $filename)) . "\n\n";
 | 
			
		||||
 | 
			
		||||
    # read all mails
 | 
			
		||||
    my $i = 0;
 | 
			
		||||
    while (<VOTES>) {
 | 
			
		||||
      if (/$config{mailstart}/) {
 | 
			
		||||
        $i++;
 | 
			
		||||
      }
 | 
			
		||||
      $mails[$i] = ($mails[$i] || "") . $_;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    # close mail file
 | 
			
		||||
    close(VOTES);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  foreach my $mail (@mails) {
 | 
			
		||||
    next unless $mail;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -90,6 +90,9 @@ pop3 = 1
 | 
			
		|||
# Mailbox, in der die zu verarbeitenden Mails liegen (falls pop3=0)
 | 
			
		||||
votefile = votes
 | 
			
		||||
 | 
			
		||||
# Typ der Mailbox (mbox, maildir)
 | 
			
		||||
mailboxtype = mbox
 | 
			
		||||
 | 
			
		||||
# POP3-Einstellungen fuer Abruf der eingehenden Wahlscheine:
 | 
			
		||||
# Server, Port, Benutzername, Passwort
 | 
			
		||||
pop3server = 127.0.0.1
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,7 +1,7 @@
 | 
			
		|||
#!/usr/bin/perl -w
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
# UseVoteGer 4.10 Wahlscheingenerierung
 | 
			
		||||
# UseVoteGer 4.11 Wahlscheingenerierung
 | 
			
		||||
# (c) 2001-2012 Marc Langer <uv@marclanger.de>
 | 
			
		||||
# 
 | 
			
		||||
# This script package is free software; you can redistribute it and/or
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,7 +1,7 @@
 | 
			
		|||
#!/usr/bin/perl -w
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
# UseVoteGer 4.10 Bounce-Verarbeitung
 | 
			
		||||
# UseVoteGer 4.11 Bounce-Verarbeitung
 | 
			
		||||
# (c) 2001-2012 Marc Langer <uv@marclanger.de>
 | 
			
		||||
# 
 | 
			
		||||
# This script package is free software; you can redistribute it and/or
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										2
									
								
								uvcfv.pl
									
										
									
									
									
								
							
							
						
						
									
										2
									
								
								uvcfv.pl
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -1,7 +1,7 @@
 | 
			
		|||
#!/usr/bin/perl -w
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
# UseVoteGer 4.10 Personalisierte Wahlscheine
 | 
			
		||||
# UseVoteGer 4.11 Personalisierte Wahlscheine
 | 
			
		||||
# (c) 2001-2012 Marc Langer <uv@marclanger.de>
 | 
			
		||||
# 
 | 
			
		||||
# This script package is free software; you can redistribute it and/or
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,7 +1,7 @@
 | 
			
		|||
#!/usr/bin/perl -w
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
# UseVoteGer 4.10 Stimmauswertung
 | 
			
		||||
# UseVoteGer 4.11 Stimmauswertung
 | 
			
		||||
# (c) 2001-2012 Marc Langer <uv@marclanger.de>
 | 
			
		||||
# 
 | 
			
		||||
# This script package is free software; you can redistribute it and/or
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										14
									
								
								uvvote.pl
									
										
									
									
									
								
							
							
						
						
									
										14
									
								
								uvvote.pl
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -1,7 +1,7 @@
 | 
			
		|||
#!/usr/bin/perl -w
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
# UseVoteGer 4.10 Wahldurchfuehrung
 | 
			
		||||
# UseVoteGer 4.11 Wahldurchfuehrung
 | 
			
		||||
# (c) 2001-2012 Marc Langer <uv@marclanger.de>
 | 
			
		||||
# 
 | 
			
		||||
# This script package is free software; you can redistribute it and/or
 | 
			
		||||
| 
						 | 
				
			
			@ -135,16 +135,6 @@ if ($clean) {
 | 
			
		|||
  my $thisresult = "ergebnis-" . $ext;
 | 
			
		||||
  my $thisvotes = "stimmen-" . $ext;
 | 
			
		||||
  
 | 
			
		||||
  # POP3 not activated: rename votes file
 | 
			
		||||
  unless ($config{pop3}) {
 | 
			
		||||
    print UVmessage::get("VOTE_RENAMING_MAILBOX"), "\n";
 | 
			
		||||
    rename ($config{votefile}, "$config{tmpdir}/$thisvotes")
 | 
			
		||||
       or die UVmessage::get("ERR_RENAME_MAILFILE") . "$!\n\n";
 | 
			
		||||
  
 | 
			
		||||
    #  wait, so that current mail deliveries can finalize
 | 
			
		||||
    sleep 2;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  # open results file
 | 
			
		||||
  open (RESULT, ">>$config{tmpdir}/$thisresult")
 | 
			
		||||
     or die UVmessage::get("VOTE_WRITE_RESULTS", (FILE=>$thisresult)) . "\n\n";
 | 
			
		||||
| 
						 | 
				
			
			@ -241,7 +231,7 @@ sub process_vote {
 | 
			
		|||
  }
 | 
			
		||||
 | 
			
		||||
  # correct voting?
 | 
			
		||||
  if ($$body =~ /\Q$config{ballotintro}\E\s+(.+?)\s*\n(.*?[\t ]+(\S+.+)\s*$)?/m) {
 | 
			
		||||
  if ($$body =~ /\Q$config{ballotintro}\E\s+(.+?)[^\S\n]*\n([>:|]*?[\t ]+(\S+.+)\s*$)?/m) {
 | 
			
		||||
    $voting = $1;
 | 
			
		||||
    $voting .= " $3" if defined($3);
 | 
			
		||||
    push (@errors, 'WrongVoting') if ($config{votename} !~ /^\s*\Q$voting\E\s*$/);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue