Lines 1962-1992
sub RevertWaitingStatus {
Link Here
|
1962 |
my $dbh = C4::Context->dbh; |
1962 |
my $dbh = C4::Context->dbh; |
1963 |
|
1963 |
|
1964 |
## Get the waiting reserve we want to revert |
1964 |
## Get the waiting reserve we want to revert |
1965 |
my $query = " |
1965 |
my $hold = Koha::Holds->search( |
1966 |
SELECT * FROM reserves |
1966 |
{ |
1967 |
WHERE itemnumber = ? |
1967 |
itemnumber => $itemnumber, |
1968 |
AND found IS NOT NULL |
1968 |
found => { not => undef }, |
1969 |
"; |
1969 |
} |
1970 |
my $sth = $dbh->prepare( $query ); |
1970 |
)->next; |
1971 |
$sth->execute( $itemnumber ); |
|
|
1972 |
my $reserve = $sth->fetchrow_hashref(); |
1973 |
|
1974 |
my $hold = Koha::Holds->find( $reserve->{reserve_id} ); # TODO Remove the next raw SQL statements and use this instead |
1975 |
|
1971 |
|
1976 |
## Increment the priority of all other non-waiting |
1972 |
## Increment the priority of all other non-waiting |
1977 |
## reserves for this bib record |
1973 |
## reserves for this bib record |
1978 |
$query = " |
1974 |
my $holds = Koha::Holds->search({ biblionumber => $hold->biblionumber, priority => { '>' => 0 } }); |
1979 |
UPDATE reserves |
1975 |
while ( my $h = $holds->next ) { |
1980 |
SET |
1976 |
$h->priority( $h->priority + 1 )->store; |
1981 |
priority = priority + 1 |
1977 |
} |
1982 |
WHERE |
|
|
1983 |
biblionumber = ? |
1984 |
AND |
1985 |
priority > 0 |
1986 |
"; |
1987 |
$sth = $dbh->prepare( $query ); |
1988 |
$sth->execute( $reserve->{'biblionumber'} ); |
1989 |
|
1978 |
|
|
|
1979 |
## Fix up the currently waiting reserve |
1990 |
$hold->set( |
1980 |
$hold->set( |
1991 |
{ |
1981 |
{ |
1992 |
priority => 1, |
1982 |
priority => 1, |
1993 |
- |
|
|