X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=C4%2FVirtualShelves.pm;h=70dc9657552ea8bbe8b3e5954afcf210c9d53745;hb=5d6c092921919526ade501facb1220f8a108a08f;hp=f5a67582c69cadc99d7279114435a073737bdf7a;hpb=4c877bb7c9170902a41f07a29adaa33e14dd4171;p=koha_fer diff --git a/C4/VirtualShelves.pm b/C4/VirtualShelves.pm index f5a67582c6..70dc965755 100644 --- a/C4/VirtualShelves.pm +++ b/C4/VirtualShelves.pm @@ -334,6 +334,7 @@ sub AddShelf { $hashref->{allow_add}//0, $hashref->{allow_delete_own}//1, $hashref->{allow_delete_other}//0 ); + return if $sth->err; my $shelfnumber = $dbh->{'mysql_insertid'}; return $shelfnumber; } @@ -675,13 +676,9 @@ sub AddShare { my ($shelfnumber, $key)= @_; return if !$shelfnumber || !$key; - my $sql; my $dbh = C4::Context->dbh; - $sql="DELETE FROM virtualshelfshares WHERE sharedatedo($sql); - $sql="INSERT INTO virtualshelfshares (shelfnumber, invitekey, sharedate) VALUES (?, ?, ADDDATE(NOW(),?))"; - $dbh->do($sql, undef, ($shelfnumber, $key, SHARE_INVITATION_EXPIRY_DAYS)); + my $sql = "INSERT INTO virtualshelfshares (shelfnumber, invitekey, sharedate) VALUES (?, ?, NOW())"; + $dbh->do($sql, undef, ($shelfnumber, $key)); return !$dbh->err; } @@ -703,10 +700,10 @@ sub AcceptShare { my $dbh = C4::Context->dbh; $sql=" UPDATE virtualshelfshares -SET invitekey=NULL, sharedate=NULL, borrowernumber=? -WHERE shelfnumber=? AND invitekey=? AND sharedate>NOW() +SET invitekey=NULL, sharedate=NOW(), borrowernumber=? +WHERE shelfnumber=? AND invitekey=? AND (sharedate + INTERVAL ? DAY) >NOW() "; - my $i= $dbh->do($sql, undef, ($borrowernumber, $shelfnumber, $key)); + my $i= $dbh->do($sql, undef, ($borrowernumber, $shelfnumber, $key, SHARE_INVITATION_EXPIRY_DAYS)); return if !defined($i) || !$i || $i eq '0E0'; #not found return 1; }