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

(-)a/acqui/basketgroup.pl (-56 / +35 lines)
Lines 251-314 if ( $op eq "add" ) { Link Here
251
# the template will know if basketgroup must be displayed or edited, depending on the value of closed key
251
# the template will know if basketgroup must be displayed or edited, depending on the value of closed key
252
#
252
#
253
    my $bookseller = &GetBookSellerFromId($booksellerid);
253
    my $bookseller = &GetBookSellerFromId($booksellerid);
254
    if(! $booksellerid){
254
    my $basketgroupid = $input->param('basketgroupid');
255
# Unknown bookseller
255
    my $billingplace;
256
# FIXME : ungroupedlist does not seem to be used in this file nor in template
256
    my $deliveryplace;
257
        $template->param( ungroupedlist => 1);
257
    my $freedeliveryplace;
258
        my @booksellers = GetBookSeller('');
258
    if ( $basketgroupid ) {
259
       for (my $i=0; $i < scalar @booksellers; $i++) {
259
        # Get the selected baskets in the basketgroup to display them
260
            my $baskets = &GetBasketsByBookseller($booksellers[$i]->{id});
260
        my $selecteds = GetBasketsByBasketgroup($basketgroupid);
261
            for (my $j=0; $j < scalar @$baskets; $j++) {
261
        foreach my $basket(@{$selecteds}){
262
                if(! @$baskets[$i]->{closedate} || @$baskets[$i]->{basketgroupid}) {
262
            $basket->{total} = BasketTotal($basket->{basketno}, $bookseller);
263
                    splice(@$baskets, $j, 1);
264
                    $j--;
265
                }
266
            }
267
            if (scalar @$baskets == 0){
268
                splice(@booksellers, $i, 1);
269
                $i--;
270
            }
271
        }
263
        }
264
        $template->param(basketgroupid => $basketgroupid,
265
                         selectedbaskets => $selecteds);
266
267
        # Get general informations about the basket group to prefill the form
268
        my $basketgroup = GetBasketgroup($basketgroupid);
269
        $template->param(
270
            name            => $basketgroup->{name},
271
            deliverycomment => $basketgroup->{deliverycomment},
272
            freedeliveryplace => $basketgroup->{freedeliveryplace},
273
        );
274
        $billingplace  = $basketgroup->{billingplace};
275
        $deliveryplace = $basketgroup->{deliveryplace};
276
        $freedeliveryplace = $basketgroup->{freedeliveryplace};
277
        $template->param( closedbg => ($basketgroup ->{'closed'}) ? 1 : 0);
272
    } else {
278
    } else {
273
# Known bookseller
279
        $template->param( closedbg => 0);
274
        my $basketgroupid = $input->param('basketgroupid');
275
        my $billingplace;
276
        my $deliveryplace;
277
        my $freedeliveryplace;
278
        if ( $basketgroupid ) {
279
            # Get the selected baskets in the basketgroup to display them
280
            my $selecteds = GetBasketsByBasketgroup($basketgroupid);
281
            foreach my $basket(@{$selecteds}){
282
                $basket->{total} = BasketTotal($basket->{basketno}, $bookseller);
283
            }
284
            $template->param(basketgroupid => $basketgroupid,
285
                             selectedbaskets => $selecteds);
286
287
            # Get general informations about the basket group to prefill the form
288
            my $basketgroup = GetBasketgroup($basketgroupid);
289
            $template->param(
290
                name            => $basketgroup->{name},
291
                deliverycomment => $basketgroup->{deliverycomment},
292
                freedeliveryplace => $basketgroup->{freedeliveryplace},
293
            );
294
            $billingplace  = $basketgroup->{billingplace};
295
            $deliveryplace = $basketgroup->{deliveryplace};
296
            $freedeliveryplace = $basketgroup->{freedeliveryplace};
297
            $template->param( closedbg => ($basketgroup ->{'closed'}) ? 1 : 0);
298
        } else {
299
            $template->param( closedbg => 0);
300
        }
301
        # determine default billing and delivery places depending on librarian homebranch and existing basketgroup data
302
        my $borrower = GetMember( ( 'borrowernumber' => $loggedinuser ) );
303
        $billingplace  = $billingplace  || $borrower->{'branchcode'};
304
        $deliveryplace = $deliveryplace || $borrower->{'branchcode'};
305
306
        my $branches = C4::Branch::GetBranchesLoop( $billingplace );
307
        $template->param( billingplaceloop => $branches );
308
        $branches = C4::Branch::GetBranchesLoop( $deliveryplace );
309
        $template->param( deliveryplaceloop => $branches );
310
        $template->param( booksellerid => $booksellerid );
311
    }
280
    }
281
    # determine default billing and delivery places depending on librarian homebranch and existing basketgroup data
282
    my $borrower = GetMember( ( 'borrowernumber' => $loggedinuser ) );
283
    $billingplace  = $billingplace  || $borrower->{'branchcode'};
284
    $deliveryplace = $deliveryplace || $borrower->{'branchcode'};
285
286
    my $branches = C4::Branch::GetBranchesLoop( $billingplace );
287
    $template->param( billingplaceloop => $branches );
288
    $branches = C4::Branch::GetBranchesLoop( $deliveryplace );
289
    $template->param( deliveryplaceloop => $branches );
290
    $template->param( booksellerid => $booksellerid );
291
312
    # the template will display a unique basketgroup
292
    # the template will display a unique basketgroup
313
    $template->param(grouping => 1);
293
    $template->param(grouping => 1);
314
    my $basketgroups = &GetBasketgroups($booksellerid);
294
    my $basketgroups = &GetBasketgroups($booksellerid);
315
- 

Return to bug 11820