X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=C4%2FXISBN.pm;h=12025f8857e23f6f3c6f5da767bf5ef127423e2c;hb=596f7a740eb7bb37cd727181f2b6894fefbacf9d;hp=13abf2543fc14beef738aa6770ffce8b461bcbe0;hpb=03890c90ac41f66b2de04d0280e2e96a0d2e8be8;p=koha_fer diff --git a/C4/XISBN.pm b/C4/XISBN.pm index 13abf2543f..12025f8857 100644 --- a/C4/XISBN.pm +++ b/C4/XISBN.pm @@ -31,7 +31,7 @@ use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS); BEGIN { require Exporter; - $VERSION = 3.01; + $VERSION = 3.07.00.049; @ISA = qw(Exporter); @EXPORT_OK = qw( &get_xisbns @@ -156,12 +156,16 @@ sub _get_url { sub _service_throttle { my ($service_type,$daily_limit) = @_; my $dbh = C4::Context->dbh; - my $sth = $dbh->prepare("SELECT service_count FROM services_throttle WHERE service_type=?"); + my $sth = $dbh->prepare(q{ SELECT service_count FROM services_throttle WHERE service_type=? }); $sth->execute($service_type); - my $count = 1; + my $count = 0; - while (my $counter = $sth->fetchrow_hashref()) { - $count = $counter->{service_count} if $counter->{service_count}; + if ($sth->rows == 0) { + # initialize services throttle + my $sth2 = $dbh->prepare(q{ INSERT INTO services_throttle (service_type, service_count) VALUES (?, ?) }); + $sth2->execute($service_type, $count); + } else { + $count = $sth->fetchrow_array; } # we're over the limit @@ -169,7 +173,9 @@ sub _service_throttle { # not over the limit $count++; - $sth = $dbh->do("UPDATE services_throttle SET service_count=$count WHERE service_type='xisbn'"); + my $sth3 = $dbh->prepare(q{ UPDATE services_throttle SET service_count=? WHERE service_type=? }); + $sth3->execute($count, $service_type); + return undef; }