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);
|
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 {
|
sub getEditForm {
|
||||||
my $self = shift;
|
my $self = shift;
|
||||||
|
|
@ -283,6 +294,15 @@ sub purge {
|
||||||
$self->SUPER::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 {
|
sub view {
|
||||||
|
|
@ -342,8 +362,7 @@ sub www_vote {
|
||||||
my $self = shift;
|
my $self = shift;
|
||||||
my $u;
|
my $u;
|
||||||
if ($session{form}{answer} ne "" && WebGUI::Grouping::isInGroup($self->get("voteGroup")) && !($self->_hasVoted())) {
|
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).",
|
$self->setVote($session{form}{answer},$session{user}{userId},$session{env}{REMOTE_ADDR});
|
||||||
".quote($session{form}{answer}).", ".quote($session{user}{userId}).", '$session{env}{REMOTE_ADDR}')");
|
|
||||||
if ($session{setting}{useKarma}) {
|
if ($session{setting}{useKarma}) {
|
||||||
$u = WebGUI::User->new($session{user}{userId});
|
$u = WebGUI::User->new($session{user}{userId});
|
||||||
$u->karma($self->get("karmaPerVote"),"Poll (".$self->getId.")","Voted on this poll.");
|
$u->karma($self->get("karmaPerVote"),"Poll (".$self->getId.")","Voted on this poll.");
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue