View | Details | Raw Unified | Return to bug 15516
Collapse All | Expand All

(-)a/C4/Reserves.pm (-13 / +18 lines)
Lines 1223-1228 sub ModReserveAffect { Link Here
1223
1223
1224
    $hold->itemnumber($itemnumber);
1224
    $hold->itemnumber($itemnumber);
1225
1225
1226
    my @reserve_ids;
1227
    push @reserve_ids, $hold->reserve_id;
1228
1226
    if ($transferToDo) {
1229
    if ($transferToDo) {
1227
        $hold->set_transfer();
1230
        $hold->set_transfer();
1228
    } elsif (C4::Context->preference('HoldsNeedProcessingSIP')
1231
    } elsif (C4::Context->preference('HoldsNeedProcessingSIP')
Lines 1239-1244 sub ModReserveAffect { Link Here
1239
        # if this hold was part of a group, cancel other holds in the group
1242
        # if this hold was part of a group, cancel other holds in the group
1240
        my @holds = Koha::Holds->search({ hold_group_id => $hold->hold_group_id });
1243
        my @holds = Koha::Holds->search({ hold_group_id => $hold->hold_group_id });
1241
        foreach my $h ( @holds ) {
1244
        foreach my $h ( @holds ) {
1245
            push @reserve_ids, $h->reserve_id;
1242
            $h->cancel unless $h->reserve_id == $hold->reserve_id;
1246
            $h->cancel unless $h->reserve_id == $hold->reserve_id;
1243
        }
1247
        }
1244
    }
1248
    }
Lines 1250-1267 sub ModReserveAffect { Link Here
1250
      CartToShelf( $itemnumber );
1254
      CartToShelf( $itemnumber );
1251
    }
1255
    }
1252
1256
1253
    my $std = $dbh->prepare(q{
1257
    foreach my $id ( @reserve_ids ) {
1254
        DELETE  q, t
1258
        my $std = $dbh->prepare(q{
1255
        FROM    tmp_holdsqueue q
1259
            DELETE  q, t
1256
        INNER JOIN hold_fill_targets t
1260
            FROM    tmp_holdsqueue q
1257
        ON  q.borrowernumber = t.borrowernumber
1261
            INNER JOIN hold_fill_targets t
1258
            AND q.biblionumber = t.biblionumber
1262
            ON  q.borrowernumber = t.borrowernumber
1259
            AND q.itemnumber = t.itemnumber
1263
                AND q.biblionumber = t.biblionumber
1260
            AND q.item_level_request = t.item_level_request
1264
                AND q.itemnumber = t.itemnumber
1261
            AND q.holdingbranch = t.source_branchcode
1265
                AND q.item_level_request = t.item_level_request
1262
        WHERE t.reserve_id = ?
1266
                AND q.holdingbranch = t.source_branchcode
1263
    });
1267
            WHERE t.reserve_id = ?
1264
    $std->execute($hold->reserve_id);
1268
        });
1269
        $std->execute($id);
1270
    }
1265
1271
1266
    logaction( 'HOLDS', 'MODIFY', $hold->reserve_id, $hold )
1272
    logaction( 'HOLDS', 'MODIFY', $hold->reserve_id, $hold )
1267
        if C4::Context->preference('HoldsLog');
1273
        if C4::Context->preference('HoldsLog');
1268
- 

Return to bug 15516