--- loncom/interface/lonfeedback.pm 2012/03/17 04:55:10 1.350 +++ loncom/interface/lonfeedback.pm 2012/03/17 14:49:29 1.351 @@ -1,7 +1,7 @@ # The LearningOnline Network # Feedback # -# $Id: lonfeedback.pm,v 1.350 2012/03/17 04:55:10 raeburn Exp $ +# $Id: lonfeedback.pm,v 1.351 2012/03/17 14:49:29 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -1457,13 +1457,24 @@ sub build_posting_display { $message. ''; if ($canvote) { + my $ownpost; + if (($uname eq $env{'user.name'}) && + ($udom eq $env{'user.domain'})) { + $ownpost = 1; + } # Put in the like and unlike buttons - if (($uname eq $env{'user.name'}) && ($udom eq $env{'user.domain'})) { - my $novote = &mt('No voting for your own posts'); + if ($ownpost || (($hiddens{$idx}) && ($seehidden))) { + my $novote; + if ($ownpost) { + $novote = &mt('No voting for your own posts.'); + } else { + $novote = &mt('No voting for hidden posts.'); + } $$discussionitems[$idx].= ''. ''.$novote.' '. ''.$novote.''; + } else { if ($userlikes{$idx}) { $$discussionitems[$idx].=''.&mt('You like this posting').''; @@ -4127,11 +4138,21 @@ ENDREDIR if (&discussion_vote_available($status,$realsymb)) { my %contrib=&Apache::lonnet::restore($symb,$env{'request.course.id'}, $cdom,$cnum); + my $ownpost; if (($contrib{$idx.':sendername'} eq $env{'user.name'}) && ($contrib{$idx.':senderdomain'} eq $env{'user.domain'})) { - $result = &mt("Vote not registered. No voting for your own posts."); + $ownpost = 1; + } + if ($ownpost || $contrib{$idx.':hidden'} || $contrib{$idx.':deleted'}) { + $result = &mt('Vote not registered.').' '; + } + if ($ownpost) { + $result .= &mt('No voting for your own posts.'); + } elsif ($contrib{$idx.':hidden'}) { + $result .= &mt('No voting for hidden posts.'); + } elsif ($contrib{$idx.':deleted'}) { + $result .= &mt('No voting for deleted posts.'); } else { - # # Likes and unlikes are in db-file "disclikes" of the course # The prefix is the $symb to identify the resource discussion,