# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU General Public License for more details.
#
-# You should have received a copy of the GNU General Public License along with
-# Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
-# Suite 330, Boston, MA 02111-1307 USA
+# You should have received a copy of the GNU General Public License along
+# with Koha; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
use strict;
+use warnings;
+
use C4::Context;
use vars qw($VERSION @ISA @EXPORT);
BEGIN {
# set the version for version checking
- $VERSION = 3.00;
+ $VERSION = 3.07.00.049;
require Exporter;
@ISA = qw(Exporter);
- @EXPORT = qw(getreview savereview updatereview numberofreviews
- getreviews getallreviews approvereview deletereview);
+ @EXPORT = qw(getreview savereview updatereview numberofreviews numberofreviewsbybiblionumber
+ getreviews getallreviews approvereview unapprovereview deletereview);
}
=head1 NAME
my $review=getreview($biblionumber,$borrowernumber);
savereview($biblionumber,$borrowernumber,$review);
updatereview($biblionumber,$borrowernumber,$review);
- my $count=numberofreviews($biblionumber);
+ my $count=numberofreviews($status);
+ my $count=numberofreviewsbybiblionumber($biblionumber);
my $reviews=getreviews($biblionumber);
my $reviews=getallreviews($status);
}
sub numberofreviews {
+ my ($param) = @_;
+ my $status = (defined($param) ? $param : 1);
+ my $dbh = C4::Context->dbh;
+ my $query =
+ "SELECT count(*) FROM reviews WHERE approved=?";
+ my $sth = $dbh->prepare($query);
+ $sth->execute( $status );
+ return $sth->fetchrow;
+}
+
+sub numberofreviewsbybiblionumber {
my ($biblionumber) = @_;
my $dbh = C4::Context->dbh;
my $query =
}
sub getallreviews {
- my ($status) = @_;
+ my ($status, $offset, $row_count) = @_;
+ my @params = ($status,($offset ? $offset : 0),($row_count ? $row_count : 20));
my $dbh = C4::Context->dbh;
my $query =
- "SELECT * FROM reviews WHERE approved=? order by datereviewed desc";
- my $sth = $dbh->prepare($query);
- $sth->execute($status);
+ "SELECT * FROM reviews WHERE approved=? order by datereviewed desc LIMIT ?, ?";
+ my $sth = $dbh->prepare($query) || warn $dbh->err_str;
+ $sth->execute(@params);
return $sth->fetchall_arrayref({});
}
$sth->execute( 1, $reviewid );
}
+=head2 unapprovereview
+
+ unapprovereview($reviewid);
+
+Takes a reviewid and marks that review as not approved
+
+=cut
+
+sub unapprovereview {
+ my ($reviewid) = @_;
+ my $dbh = C4::Context->dbh();
+ my $query = "UPDATE reviews
+ SET approved=?
+ WHERE reviewid=?";
+ my $sth = $dbh->prepare($query);
+ $sth->execute( 0, $reviewid );
+}
+
=head2 deletereview
deletereview($reviewid);