BEGIN {
require Exporter;
@ISA = qw(Exporter);
- @EXPORT = qw(getreview savereview updatereview numberofreviews numberofreviewsbybiblionumber);
+ @EXPORT = qw(savereview updatereview numberofreviews numberofreviewsbybiblionumber);
}
=head1 NAME
use C4::Review;
- my $review=getreview($biblionumber,$borrowernumber);
savereview($biblionumber,$borrowernumber,$review);
updatereview($biblionumber,$borrowernumber,$review);
my $count=numberofreviews($status);
=head1 FUNCTIONS
-=head2 getreview
-
- $review = getreview($biblionumber,$borrowernumber);
-
-Takes a borrowernumber and a biblionumber and returns the review of that biblio
-
-=cut
-
-sub getreview {
- my ( $biblionumber, $borrowernumber ) = @_;
- my $dbh = C4::Context->dbh;
- my $query = "SELECT * FROM reviews WHERE biblionumber=? and borrowernumber=?";
- my $sth = $dbh->prepare($query);
- $sth->execute( $biblionumber, $borrowernumber );
- return $sth->fetchrow_hashref();
-}
-
=head2 savereview
savereview($biblionumber,$borrowernumber, $review);
# You should have received a copy of the GNU General Public License
# along with Koha; if not, see <http://www.gnu.org/licenses>.
-use strict;
-use warnings;
+use Modern::Perl;
use CGI qw ( -utf8 );
use C4::Auth;
use C4::Koha;
use C4::Biblio;
use C4::Scrubber;
use C4::Debug;
+use Koha::Reviews;
my $query = new CGI;
my $biblionumber = $query->param('biblionumber');
# FIXME: need to allow user to delete their own comment(s)
my $biblio = GetBiblioData($biblionumber);
-my $savedreview = getreview($biblionumber,$borrowernumber);
+# FIXME biblionumber, borrowernumber should be a unique key of reviews
+my $savedreview = Koha::Reviews->search({ biblionumber => $biblionumber, borrowernumber => $borrowernumber })->next;
my ($clean, @errors);
if (defined $review) {
if ($review !~ /\S/) {
}
(@errors ) and $template->param( ERRORS=>\@errors);
($cgi_debug) and $template->param(cgi_debug=>1 );
+$review = $clean;
+$review ||= $savedreview->review if $savedreview;
$template->param(
'biblionumber' => $biblionumber,
'borrowernumber' => $borrowernumber,
- 'review' => $clean || $savedreview->{'review'},
+ 'review' => $review,
'reviewid' => scalar $query->param('reviewid') || 0,
'title' => $biblio->{'title'},
);