added duplicate method
This commit is contained in:
parent
6bbf0b43e2
commit
a7ac059864
1 changed files with 21 additions and 2 deletions
|
|
@ -150,6 +150,17 @@ sub definition {
|
|||
return $class->SUPER::definition($definition);
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------
|
||||
sub duplcate {
|
||||
my $self = shift;
|
||||
my $newAsset = $self->SUPER::duplicate;
|
||||
my $sth = WebGUI::SQL->read("select * from Poll_answer where assetId=".quote($self->getId));
|
||||
while (my $data = $sth->hashRef) {
|
||||
$newAsset->setVote($data->{answer}, $data->{userId}, $data->{ipAddress});
|
||||
}
|
||||
$sth->finish;
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------
|
||||
sub getEditForm {
|
||||
my $self = shift;
|
||||
|
|
@ -283,6 +294,15 @@ sub purge {
|
|||
$self->SUPER::purge();
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------
|
||||
sub setVote {
|
||||
my $self = shift;
|
||||
my $answer = shift;
|
||||
my $userId = shift;
|
||||
my $ip = shift;
|
||||
WebGUI::SQL->write("insert into Poll_answer (assetId, answer, userId, ipAddress) values (".quote($self->getId).",
|
||||
".quote($answer).", ".quote($userId).", '$ip')");
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------
|
||||
sub view {
|
||||
|
|
@ -342,8 +362,7 @@ sub www_vote {
|
|||
my $self = shift;
|
||||
my $u;
|
||||
if ($session{form}{answer} ne "" && WebGUI::Grouping::isInGroup($self->get("voteGroup")) && !($self->_hasVoted())) {
|
||||
WebGUI::SQL->write("insert into Poll_answer (assetId, answer, userId, ipAddress) values (".quote($self->getId).",
|
||||
".quote($session{form}{answer}).", ".quote($session{user}{userId}).", '$session{env}{REMOTE_ADDR}')");
|
||||
$self->setVote($session{form}{answer},$session{user}{userId},$session{env}{REMOTE_ADDR});
|
||||
if ($session{setting}{useKarma}) {
|
||||
$u = WebGUI::User->new($session{user}{userId});
|
||||
$u->karma($self->get("karmaPerVote"),"Poll (".$self->getId.")","Voted on this poll.");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue