Changeset 161


Ignore:
Timestamp:
04/05/09 23:49:43 (15 years ago)
Author:
nanardon
Message:
  • fix due to oo change
Location:
trunk/lib/Vote
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/lib/Vote/DB.pm

    r160 r161  
    1010use Vote::DB::Poll; 
    1111use Vote::DB::Ballot; # see ballot() 
     12use Vote::DB::Voting; # see delete_voting() 
    1213 
    1314=head1 NAME 
     
    127128sub vote_voting { 
    128129    my ($self, $voteid) = @_; 
    129     $self->poll($voteid)->voting; 
     130    $self->poll($voteid)->voting_keys; 
    130131} 
    131132 
     
    230231sub voting_has_sign { 
    231232    my ($self, $poll, $user) = @_; 
     233    warn $user; 
    232234    $self->poll($poll)->voting_has_sign($user); 
    233235} 
     
    252254sub list_vote_ballot_needvalid { 
    253255    my ($self, $voteid) = @_; 
    254     $self->poll->list_ballot_needvalid; 
     256    $self->poll($voteid)->list_ballot_needvalid; 
    255257} 
    256258 
     
    292294sub delete_voting { 
    293295    my ($self, $key) = @_; 
    294  
    295     $self->voting_has_sign($key) and return; 
     296    # must die, voting are attached to a poll 
     297    Vote::DB::Voting->new($self->{dbstring}, $key)->has_sign and return; 
    296298    my $sth = $self->db->prepare_cached( 
    297299        q{delete from voting where key = ?} 
  • trunk/lib/Vote/DB/Poll.pm

    r160 r161  
    160160    my $res = $sth->fetchrow_hashref; 
    161161    $sth->finish; 
    162     return $res ? Vote::DB::Voting($self->{dbstring}, $votingkey) : undef; 
     162    return $res ? Vote::DB::Voting->new($self->{dbstring}, $votingkey) : undef; 
    163163} 
    164164 
     
    175175    my $res = $sth->fetchrow_hashref; 
    176176    $sth->finish; 
    177     return $res ? Vote::DB::Voting($self->{dbstring}, $res->{key}) : undef; 
     177    return $res ? Vote::DB::Voting->new($self->{dbstring}, $res->{key}) : undef; 
    178178} 
    179179 
     
    270270        } 
    271271    ); 
    272     my $uid = gen_uid(); 
     272    my $uid = Vote::DB::common::gen_uid(); 
    273273    $addb->execute($uid, $self->voteid, scalar(@{$fchoice || []}) ? undef : 'f') or do { 
    274274        self->db->rollback; 
     
    456456sub voting_has_sign { 
    457457    my ($self, $user) = @_; 
     458    warn $user; 
    458459    $self->voting_from_mail($user)->has_sign; 
    459460} 
     
    663664sub mail_voting_passwd { 
    664665    my ($self, $id, $mailinfo) = @_; 
    665      
    666     my $vinfo = $self->voting_info($id) or return; 
    667     my $voteinfo = $self->info; 
    668     $voteinfo->{description} ||= ""; 
    669  
    670     my $passwd = random_string(8); 
    671     my $encpasswd = $self->gen_enc_passwd($passwd); 
    672  
    673     my $upd_voting = $self->db->prepare_cached( 
    674         q{update voting set passwd = ? where key = ?} 
    675     ); 
    676  
    677     $upd_voting->execute($encpasswd, $id); 
    678  
    679     my $date = $voteinfo->{dstart} && $voteinfo->{dend} 
    680         ? sprintf("\n" . 'Vous pourrez voter entre le %s %s et le %s %s' . "\n", 
    681             $voteinfo->{dstart}, $voteinfo->{hstart}, $voteinfo->{dend}, $voteinfo->{hend}) 
    682         : ''; 
    683  
    684     # TODO complete this properly: 
    685     my $mailer = new Mail::Mailer 'smtp', Server => (Vote->config->{smtp} || 'localhost'); 
    686     $ENV{MAILADDRESS} = $voteinfo->{owner}; 
    687     $mailer->open({ 
    688         From => $voteinfo->{owner}, 
    689         To => $vinfo->{mail}, 
    690         Subject => 'Invitation a voter: ' . $voteinfo->{label}, 
    691         'X-Epoll-poll' => $id, 
    692         Vote::DB::common::mail_header(), 
    693     }); 
    694     print $mailer <<EOF; 
    695 Vous êtes convié à participer a ce vote: 
    696  
    697 -------- 
    698 $voteinfo->{label} 
    699 -------- 
    700 $voteinfo->{description} 
    701 -------- 
    702  
    703 Ã  l'adresse: 
    704  
    705 $mailinfo->{voteurl} 
    706 $date 
    707  
    708 --  
    709 Votre identifiant est: $vinfo->{mail} 
    710 Votre mot de passe est: $passwd 
    711  
    712 Conservez précieusement ces identifiants, il ne vous seront pas retransmits. 
    713  
    714 Cordialement. 
    715 EOF 
    716     $mailer->close or warn "couldn't send whole message: $!\n"; 
    717  
    718     $self->db->commit; 
     666    $self->voting($id)->mail_voting_passwd($mailinfo);  
    719667} 
    720668 
  • trunk/lib/Vote/DB/Voting.pm

    r160 r161  
    8989    $voteinfo->{description} ||= ""; 
    9090 
    91     my $passwd = random_string(8); 
     91    my $passwd = Vote::DB::common::random_string(8); 
    9292    my $encpasswd = $self->gen_enc_passwd($passwd); 
    9393 
     
    110110        To => $vinfo->{mail}, 
    111111        Subject => 'Invitation a voter: ' . $voteinfo->{label}, 
    112         'X-Epoll-poll' => $voteinfo->pollid, 
     112        'X-Epoll-poll' => $self->poll->voteid, 
    113113        Vote::DB::common::mail_header(), 
    114114    }); 
Note: See TracChangeset for help on using the changeset viewer.