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

(-)a/Koha/Hold.pm (+1 lines)
Lines 305-310 Returns the related Koha::Patron object for this Hold Link Here
305
305
306
=cut
306
=cut
307
307
308
# FIXME Should be renamed with ->patron
308
sub borrower {
309
sub borrower {
309
    my ($self) = @_;
310
    my ($self) = @_;
310
311
(-)a/catalogue/detail.pl (-9 / +4 lines)
Lines 253-263 foreach my $item (@items) { Link Here
253
        $itemfields{$_} = 1 if ( $item->{$_} );
253
        $itemfields{$_} = 1 if ( $item->{$_} );
254
    }
254
    }
255
255
256
    if (C4::Context->preference('HidePatronName')){
257
        $item->{'hidepatronname'} = 1;
258
    }
259
260
261
    # checking for holds
256
    # checking for holds
262
    my $item_object = Koha::Items->find( $item->{itemnumber} );
257
    my $item_object = Koha::Items->find( $item->{itemnumber} );
263
    my $holds = $item_object->current_holds;
258
    my $holds = $item_object->current_holds;
Lines 265-279 foreach my $item (@items) { Link Here
265
        my $patron = Koha::Patrons->find( $first_hold->borrowernumber );
260
        my $patron = Koha::Patrons->find( $first_hold->borrowernumber );
266
        $item->{backgroundcolor} = 'reserved';
261
        $item->{backgroundcolor} = 'reserved';
267
        $item->{reservedate}     = $first_hold->reservedate;
262
        $item->{reservedate}     = $first_hold->reservedate;
268
        $item->{ReservedForBorrowernumber}     = $first_hold->borrowernumber;
263
        $item->{ReservedFor}     = $patron,
269
        $item->{ReservedForSurname}     = $patron->surname;
270
        $item->{ReservedForFirstname}   = $patron->firstname;
271
        $item->{ExpectedAtLibrary}      = $first_hold->branchcode;
264
        $item->{ExpectedAtLibrary}      = $first_hold->branchcode;
272
        $item->{Reservedcardnumber}     = $patron->cardnumber;
273
        # Check waiting status
265
        # Check waiting status
274
        $item->{waitingdate} = $first_hold->waitingdate;
266
        $item->{waitingdate} = $first_hold->waitingdate;
275
    }
267
    }
276
268
269
    if ( my $checkout = $item_object->checkout ) {
270
        $item->{CheckedOutFor} = $checkout->patron;
271
    }
277
272
278
	# Check the transit status
273
	# Check the transit status
279
    my ( $transfertwhen, $transfertfrom, $transfertto ) = GetTransfers($item->{itemnumber});
274
    my ( $transfertwhen, $transfertfrom, $transfertto ) = GetTransfers($item->{itemnumber});
(-)a/catalogue/moredetail.pl (-10 / +3 lines)
Lines 60-67 if($query->cookie("holdfor")){ Link Here
60
    );
60
    );
61
}
61
}
62
62
63
my $hidepatronname = C4::Context->preference("HidePatronName");
64
65
# get variables
63
# get variables
66
64
67
my $biblionumber=$query->param('biblionumber');
65
my $biblionumber=$query->param('biblionumber');
Lines 186-199 foreach my $item (@items){ Link Here
186
        $item->{'issue'}= 0;
184
        $item->{'issue'}= 0;
187
    }
185
    }
188
186
189
    unless ($hidepatronname) {
187
    if ( $item->{'borrowernumber'} ) {
190
        if ( $item->{'borrowernumber'} ) {
188
        my $curr_borrower = Koha::Patrons->find( $item->{borrowernumber} );
191
            my $curr_borrower = Koha::Patrons->find( $item->{borrowernumber} );
189
        $item->{patron} = $curr_borrower;
192
            $item->{borrowerfirstname} = $curr_borrower->firstname;
193
            $item->{borrowersurname} = $curr_borrower->surname;
194
        }
195
    }
190
    }
196
197
}
191
}
198
192
199
my $mss = Koha::MarcSubfieldStructures->search({ frameworkcode => $fw, kohafield => 'items.itemlost', authorised_value => { not => undef } });
193
my $mss = Koha::MarcSubfieldStructures->search({ frameworkcode => $fw, kohafield => 'items.itemlost', authorised_value => { not => undef } });
Lines 224-230 $template->param( Link Here
224
    itemnumber          => $itemnumber,
218
    itemnumber          => $itemnumber,
225
    z3950_search_params => C4::Search::z3950_search_args(GetBiblioData($biblionumber)),
219
    z3950_search_params => C4::Search::z3950_search_args(GetBiblioData($biblionumber)),
226
    subtitle            => $subtitle,
220
    subtitle            => $subtitle,
227
    hidepatronname      => $hidepatronname,
228
);
221
);
229
$template->param(ONLY_ONE => 1) if ( $itemnumber && $showncount != @items );
222
$template->param(ONLY_ONE => 1) if ( $itemnumber && $showncount != @items );
230
$template->{'VARS'}->{'searchid'} = $query->param('searchid');
223
$template->{'VARS'}->{'searchid'} = $query->param('searchid');
(-)a/koha-tmpl/intranet-tmpl/prog/en/includes/patron-title.inc (-30 / +70 lines)
Lines 1-35 Link Here
1
[%- USE Koha -%]
2
[%- USE Branches -%]
3
[%- SET data = {} -%]
4
[%- IF patron -%]
5
    [%- SET data.category_type  = patron.category.category_type -%]
6
    [%- SET data.surname        = patron.surname -%]
7
    [%- SET data.othernames     = patron.othernames -%]
8
    [%- SET data.firstname      = patron.firstname -%]
9
    [%- SET data.cardnumber     = patron.cardnumber -%]
10
    [%- SET data.borrowernumber = patron.borrowernumber -%]
11
    [%- SET data.title          = patron.title -%]
12
[%- ELSIF ( borrower.borrowernumber ) -%]
13
    [%- SET data.category_type  = borrower.category_type -%]
14
    [%- SET data.surname        = borrower.surname -%]
15
    [%- SET data.othernames     = borrower.othernames -%]
16
    [%- SET data.firstname      = borrower.firstname -%]
17
    [%- SET data.cardnumber     = borrower.cardnumber -%]
18
    [%- SET data.borrowernumber = borrower.borrowernumber -%]
19
    [%- SET data.title          = borrower.title -%]
20
[%- ELSIF ( borrowernumber ) -%]
21
    [%- SET data.category_type  = category_type -%]
22
    [%- SET data.surname        = surname -%]
23
    [%- SET data.othernames     = othernames -%]
24
    [%- SET data.firstname      = firstname -%]
25
    [%- SET data.cardnumber     = cardnumber -%]
26
    [%- SET data.borrowernumber = borrowernumber -%]
27
    [%- SET data.title          = title -%]
28
[%- END -%]
1
[%# Parameter no_html - if 1, the html tags are NOT generated %]
29
[%# Parameter no_html - if 1, the html tags are NOT generated %]
2
[%- IF no_html %]
30
[% IF data.title %]
3
    [%- span_start = '' %]
31
    [%- IF no_html %]
4
    [%- span_end   = '' %]
32
        [%- span_start = '' %]
5
[%- ELSE %]
33
        [%- span_end   = '' %]
6
    [%- span_start = '<span class="patron-title">' %]
7
    [%- span_end   = '</span>' %]
8
[%- END %]
9
[%- IF ( borrower.borrowernumber ) %]
10
    [%- IF borrower.category_type == 'I' %]
11
        [%- borrower.surname | html %] [% IF borrower.othernames %] ([% borrower.othernames | html %]) [% END %]
12
    [%- ELSE %]
34
    [%- ELSE %]
13
        [%- IF invert_name %]
35
        [%- span_start = '<span class="patron-title">' %]
14
            [%- IF borrower.title %][% span_start %][%- borrower.title | html %][% span_end %] [% END %][%- borrower.surname | html %], [% borrower.firstname | html %] [% IF borrower.othernames %] ([% borrower.othernames | html %]) [% END %]
36
        [%- span_end   = '</span>' %]
15
        [%- ELSE %]
16
            [%- IF borrower.title %][% span_start %][%- borrower.title | html %][% span_end %] [% END %][%- borrower.firstname | html %] [% IF borrower.othernames %] ([% borrower.othernames | html %]) [% END %] [% borrower.surname | html %]
17
        [%- END -%]
18
    [%- END -%]
19
    [%- IF ( borrower.cardnumber ) -%]
20
        ([% borrower.cardnumber | html %])
21
    [%- END %]
37
    [%- END %]
22
[%- ELSIF ( borrowernumber ) %]
38
    [%- SET data.title = span_start _ data.title _ span_end _ ' ' -%]
23
    [%- IF category_type == 'I' %]
39
[%- END -%]
24
        [%- surname | html %] [% IF othernames %] ([% othernames | html %]) [% END %]
40
[%- SET display_patron_name = 1 -%]
25
    [%- ELSE %]
41
[%- SET display_cardnumber  = 1 -%]
26
        [%- IF invert_name %]
42
[%- IF hide_patron_infos_if_needed %] [%# Should only be set if patron is set -%]
27
            [%- IF title %][% span_start %][%- title | html %][% span_end %] [% END %][%- surname | html %], [% firstname | html %] [% IF othernames %] ([% othernames | html %]) [% END %]
43
    [%- SET can_see_patron_infos = logged_in_user.can_see_patron_infos( patron ) -%]
28
        [%- ELSE %]
44
    [%- UNLESS can_see_patron_infos -%]
29
            [%- IF title %][% span_start %][%- title | html %][% span_end %] [% END %][%- firstname | html %] [% IF othernames %] ([% othernames | html %]) [% END %] [% surname | html %]
45
        [%- SET display_patron_name = 0 -%]
30
        [%- END %]
46
        [%- SET display_cardnumber  = 0 -%]
47
    [%- ELSIF Koha.Preference('HidePatronName') -%]
48
        [%- SET display_patron_name = 0 -%]
31
    [%- END -%]
49
    [%- END -%]
32
    [%- IF ( cardnumber ) -%]
50
[%- END -%]
33
        ([% cardnumber | html %])
51
[%- IF hide_patron_infos_if_needed AND ( display_patron_name OR display_cardnumber ) -%]
34
    [%- END %]
52
    [%- IF link_to == 'circulation_reserves' %]<a href="/cgi-bin/koha/circ/circulation.pl?borrowernumber=[% data.borrowernumber %]#reserves">
53
    [%- ELSE %]<a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% data.borrowernumber %]">
54
    [%- END -%]
55
[%- END -%]
56
[%- IF data.category_type == 'I' -%]
57
    [%- UNLESS display_patron_name %][%- data.surname | html %] [% IF data.othernames %] [% END %]([% data.othernames | html %]) [% END -%]
58
[%- ELSIF display_patron_name -%]
59
    [%- IF invert_name -%]
60
        [% data.title%][%- data.surname | html %], [% data.firstname | html %] [% IF data.othernames %] ([% data.othernames | html %]) [% END -%]
61
    [%- ELSE -%]
62
        [% data.title %][%- data.firstname | html %] [% IF data.othernames %] ([% data.othernames | html %]) [% END %] [% data.surname | html -%]
63
    [%- END -%]
64
    [%- IF display_cardnumber AND data.cardnumber %]([% data.cardnumber | html %])[% END -%]
65
[%- ELSIF display_cardnumber -%]
66
    [%- IF data.cardnumber -%][%# FIXME Cardnumber should always be defined, right? -%]
67
        [%- data.cardnumber | html -%]
68
    [%- END -%]
69
[%- ELSE -%]
70
    A patron from library [% Branches.GetName( patron.branchcode ) -%]
71
[%- END -%]
72
73
[%- IF hide_patron_infos_if_needed AND ( display_patron_name OR display_cardnumber ) -%]
74
    </a>
35
[%- END -%]
75
[%- END -%]
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt (-16 / +6 lines)
Lines 373-379 Link Here
373
                    <td class="itemcallnumber">[% IF ( item.itemcallnumber ) %] [% item.itemcallnumber %][% END %]</td>
373
                    <td class="itemcallnumber">[% IF ( item.itemcallnumber ) %] [% item.itemcallnumber %][% END %]</td>
374
                    <td class="status">
374
                    <td class="status">
375
375
376
                        [% IF ( item.datedue ) %]
376
                        [% IF item.CheckedOutFor %]
377
                          [% IF item.onsite_checkout %]
377
                          [% IF item.onsite_checkout %]
378
                            <span>Currently in local use
378
                            <span>Currently in local use
379
                          [% ELSE %]
379
                          [% ELSE %]
Lines 381-396 Link Here
381
                          [% END %]
381
                          [% END %]
382
                                [% UNLESS ( item.NOTSAMEBRANCH ) %]
382
                                [% UNLESS ( item.NOTSAMEBRANCH ) %]
383
                                  [% IF item.onsite_checkout %]
383
                                  [% IF item.onsite_checkout %]
384
                                    by <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% item.borrowernumber %]">
384
                                    by
385
                                  [% ELSE %]
385
                                  [% ELSE %]
386
                                    to <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% item.borrowernumber %]">
386
                                    to
387
                                  [% END %]
387
                                  [% END %]
388
                                        [% IF ( item.hidepatronname ) %]
388
                                  [% INCLUDE 'patron-title.inc' patron=item.CheckedOutFor hide_patron_infos_if_needed=1 %]
389
                                            [% item.cardnumber %]
390
                                        [% ELSE %]
391
                                            [% item.firstname %] [% item.surname %]
392
                                        [% END %]
393
                                    </a>
394
                                [% END %]
389
                                [% END %]
395
                                : due [% item.datedue %]
390
                                : due [% item.datedue %]
396
                            </span>
391
                            </span>
Lines 440-452 Link Here
440
                                Item-level hold (placed [% item.reservedate | $KohaDates %]) for delivery at [% Branches.GetName( item.ExpectedAtLibrary ) %].
435
                                Item-level hold (placed [% item.reservedate | $KohaDates %]) for delivery at [% Branches.GetName( item.ExpectedAtLibrary ) %].
441
                            [% END %]
436
                            [% END %]
442
                            [% IF ( canreservefromotherbranches ) %]
437
                            [% IF ( canreservefromotherbranches ) %]
443
                                Hold for: <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% item.ReservedForBorrowernumber %]">
438
                                Hold for:
444
                                    [% IF ( item.hidepatronname ) %]
439
                                [% INCLUDE 'patron-title.inc' patron=item.ReservedFor hide_patron_infos_if_needed=1 %]
445
                                        [% item.Reservedcardnumber %]
446
                                    [% ELSE %]
447
                                        [% item.ReservedForFirstname _ " " _ item.ReservedForSurname _ " (" _ item.Reservedcardnumber _ ")" %]
448
                                    [% END %]
449
                                </a>
450
                            [% END %]
440
                            [% END %]
451
                        [% END %]
441
                        [% END %]
452
                        [% UNLESS ( item.itemnotforloan || item.notforloan_per_itemtype || item.onloan || item.itemlost || item.withdrawn || item.damaged || item.transfertwhen || item.reservedate ) %]
442
                        [% UNLESS ( item.itemnotforloan || item.notforloan_per_itemtype || item.onloan || item.itemlost || item.withdrawn || item.damaged || item.transfertwhen || item.reservedate ) %]
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/reserve/request.tt (-7 / +1 lines)
Lines 795-807 function checkMultiHold() { Link Here
795
    [% END %]
795
    [% END %]
796
796
797
        <td>
797
        <td>
798
          <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% reserveloo.borrowernumber %]" >
798
          [% INCLUDE 'patron-title.inc' patron=reserveloo.patron hide_patron_infos_if_needed=1 %]
799
	  [% IF ( reserveloo.hidename ) %]
800
	      [% reserveloo.cardnumber (reserveloo.borrowernumber) %]
801
	  [% ELSE %]
802
	      [% reserveloo.firstname %] [% reserveloo.surname %]
803
	  [% END %]
804
	  </a>
805
        </td>
799
        </td>
806
        <td>[% reserveloo.notes %]</td>
800
        <td>[% reserveloo.notes %]</td>
807
        <td>[% reserveloo.date %]</td>
801
        <td>[% reserveloo.date %]</td>
(-)a/reserve/request.pl (-9 / +1 lines)
Lines 572-590 foreach my $biblionumber (@biblionumbers) { Link Here
572
            }
572
            }
573
        }
573
        }
574
574
575
        #     get borrowers reserve info
576
        if ( C4::Context->preference('HidePatronName') ) {
577
            $reserve{'hidename'}   = 1;
578
            $reserve{'cardnumber'} = $res->borrower()->cardnumber();
579
        }
580
        $reserve{'expirationdate'} = output_pref( { dt => dt_from_string( $res->expirationdate ), dateonly => 1 } )
575
        $reserve{'expirationdate'} = output_pref( { dt => dt_from_string( $res->expirationdate ), dateonly => 1 } )
581
          unless ( !defined( $res->expirationdate ) || $res->expirationdate eq '0000-00-00' );
576
          unless ( !defined( $res->expirationdate ) || $res->expirationdate eq '0000-00-00' );
582
        $reserve{'date'}           = output_pref( { dt => dt_from_string( $res->reservedate ), dateonly => 1 } );
577
        $reserve{'date'}           = output_pref( { dt => dt_from_string( $res->reservedate ), dateonly => 1 } );
583
        $reserve{'borrowernumber'} = $res->borrowernumber();
578
        $reserve{'borrowernumber'} = $res->borrowernumber();
584
        $reserve{'biblionumber'}   = $res->biblionumber();
579
        $reserve{'biblionumber'}   = $res->biblionumber();
585
        $reserve{'borrowernumber'} = $res->borrowernumber();
580
        $reserve{'patron'}         = $res->borrower;
586
        $reserve{'firstname'}      = $res->borrower()->firstname();
587
        $reserve{'surname'}        = $res->borrower()->surname();
588
        $reserve{'notes'}          = $res->reservenotes();
581
        $reserve{'notes'}          = $res->reservenotes();
589
        $reserve{'waiting_date'}   = $res->waitingdate();
582
        $reserve{'waiting_date'}   = $res->waitingdate();
590
        $reserve{'ccode'}          = $res->item() ? $res->item()->ccode() : undef;
583
        $reserve{'ccode'}          = $res->item() ? $res->item()->ccode() : undef;
591
- 

Return to bug 18403