numerous fixes
This commit is contained in:
parent
45650303af
commit
87d2b64593
3 changed files with 19 additions and 21 deletions
|
|
@ -395,7 +395,7 @@ sub getTemplateVars {
|
|||
$var{"deny.url"} = $self->getDenyUrl;
|
||||
$var{"reply.url"} = $self->getReplyUrl;
|
||||
$var{'reply.withquote.url'} = $self->getReplyUrl(1);
|
||||
$var{'url'} = WebGUI::URL::getSiteURL().$self->getUrl.'#'.$self->getId;
|
||||
$var{'url'} = $self->getUrl.'#'.$self->getId;
|
||||
$var{'rating.value'} = $self->get("rating")+0;
|
||||
$var{'rate.url.1'} = $self->getRateUrl(1);
|
||||
$var{'rate.url.2'} = $self->getRateUrl(2);
|
||||
|
|
@ -706,7 +706,7 @@ sub rate {
|
|||
my ($sum) = WebGUI::SQL->quickArray("select sum(rating) from Post_rating where assetId=".quote($self->getId));
|
||||
my $average = WebGUI::Utility::round($sum/$count);
|
||||
$self->update({rating=>$average});
|
||||
$self->getThread->rate;
|
||||
$self->getThread->rate($rating);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1049,7 +1049,7 @@ The web method to rate a post.
|
|||
|
||||
sub www_rate {
|
||||
my $self = shift;
|
||||
$self->rate($session{form}{rating}) if ($self->canView && !$self->hasRated);
|
||||
$self->WebGUI::Asset::Post::rate($session{form}{rating}) if ($self->canView && !$self->hasRated);
|
||||
$self->www_view;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -448,27 +448,25 @@ An integer between 1 and 5 (5 being best) to rate this post with.
|
|||
=cut
|
||||
|
||||
sub rate {
|
||||
my $self = shift;
|
||||
my $rating = shift;
|
||||
unless ($self->hasRated) {
|
||||
WebGUI::SQL->write("insert into Post_rating (assetId,userId,ipAddress,dateOfRating,rating) values ("
|
||||
.quote($self->getId).", ".quote($session{user}{userId}).", ".quote($session{env}{REMOTE_ADDR}).",
|
||||
".WebGUI::DateTime::time().", $rating)");
|
||||
my ($count) = WebGUI::SQL->quickArray("select count(*) from Post left join asset on Post.assetId=asset.assetId
|
||||
where Post.threadId=".quote($self->getId)." and Post.rating>0");
|
||||
$count = $count || 1;
|
||||
my ($sum) = WebGUI::SQL->quickArray("select sum(Post.rating) from Post left join asset on Post.assetId=asset.assetId
|
||||
where Post.threadId=".quote($self->getId)." and Post.rating>0");
|
||||
my $average = round($sum/$count);
|
||||
$self->update({rating=>$average});
|
||||
my $self = shift;
|
||||
my $rating = shift;
|
||||
unless ($self->hasRated) {
|
||||
WebGUI::SQL->write("insert into Post_rating (assetId,userId,ipAddress,dateOfRating,rating) values ("
|
||||
.quote($self->getId).", ".quote($session{user}{userId}).", ".quote($session{env}{REMOTE_ADDR}).",
|
||||
".WebGUI::DateTime::time().", ".quote($rating).")");
|
||||
my ($count) = WebGUI::SQL->quickArray("select count(*) from Post left join asset on Post.assetId=asset.assetId where Post.threadId=".quote($self->getId)." and Post.rating>0");
|
||||
$count = $count || 1;
|
||||
my ($sum) = WebGUI::SQL->quickArray("select sum(Post.rating) from Post left join asset on Post.assetId=asset.assetId where Post.threadId=".quote($self->getId)." and Post.rating>0");
|
||||
my $average = round($sum/$count);
|
||||
$self->update({rating=>$average});
|
||||
if ($session{setting}{useKarma}) {
|
||||
my $poster = WebGUI::User->new($self->get("ownerUserId"));
|
||||
$poster->karma($rating*$self->getParent->get("karmaRatingMultiplier"),"collaboration rating","someone rated post ".$self->getId);
|
||||
my $rater = WebGUI::User->new($session{user}{userId});
|
||||
$rater->karma(-$self->getParent->get("karmaSpentToRate"),"collaboration rating","spent karma to rate post ".$self->getId);
|
||||
$rater->karma(-$self->getParent->get("karmaSpentToRate"),"collaboration rating","spent karma to rate post ".$self->getId);
|
||||
}
|
||||
$self->getParent->recalculateRating;
|
||||
}
|
||||
$self->getParent->recalculateRating;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -150,8 +150,8 @@ sub www_view {
|
|||
if ($session{var}{adminOn}) {
|
||||
return $self->getContainer->www_view;
|
||||
}
|
||||
WebGUI::HTTP::setRedirect($self->get("redirectUrl"));
|
||||
return undef;
|
||||
WebGUI::HTTP::setRedirect($self->get("redirectUrl")) unless $self->newByUrl($self->get("redirectUrl"))->getUrl eq $self->getUrl;
|
||||
return "Redirect is self-referential";
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue