bug 7016 further followup: clarify return of GetItemnumbersForBiblio
[koha_gimpoz] / opac / opac-user.pl
index c16eaaf..e99e557 100755 (executable)
@@ -79,11 +79,13 @@ if ( $borr->{'amountoutstanding'} > 5 ) {
 if ( 5 >= $borr->{'amountoutstanding'} && $borr->{'amountoutstanding'} > 0 ) {
     $borr->{'amountoverzero'} = 1;
 }
+my $no_renewal_amt = C4::Context->preference( 'OPACFineNoRenewals' );
+$no_renewal_amt ||= 0;
 
-if ( $borr->{'amountoutstanding'} > C4::Context->preference( 'OPACFineNoRenewals' ) ) {
+if ( $borr->{amountoutstanding} > $no_renewal_amt ) {
     $borr->{'flagged'} = 1;
     $template->param(
-        renewal_blocked_fines => sprintf( "%.02f", C4::Context->preference( 'OPACFineNoRenewals' ) ),
+        renewal_blocked_fines => sprintf( '%.02f', $no_renewal_amt ),
     );
 }
 
@@ -97,9 +99,10 @@ $borr->{'amountoutstanding'} = sprintf "%.02f", $borr->{'amountoutstanding'};
 my @bordat;
 $bordat[0] = $borr;
 
-$template->param(   BORROWER_INFO  => \@bordat,
-                    borrowernumber => $borrowernumber,
-                    patron_flagged => $borr->{flagged},
+$template->param(   BORROWER_INFO     => \@bordat,
+                    borrowernumber    => $borrowernumber,
+                    patron_flagged    => $borr->{flagged},
+                    OPACMySummaryHTML => (C4::Context->preference("OPACMySummaryHTML")) ? 1 : 0,
                 );
 
 #get issued items ....
@@ -111,6 +114,7 @@ my @overdues;
 my @issuedat;
 my $itemtypes = GetItemTypes();
 my ($issues) = GetPendingIssues($borrowernumber);
+my $canrenew = 0;
 if ($issues){
        foreach my $issue ( sort { $b->{'date_due'} cmp $a->{'date_due'} } @$issues ) {
                # check for reserves
@@ -139,7 +143,10 @@ if ($issues){
                # check if item is renewable
                my ($status,$renewerror) = CanBookBeRenewed( $borrowernumber, $issue->{'itemnumber'} );
                ($issue->{'renewcount'},$issue->{'renewsallowed'},$issue->{'renewsleft'}) = GetRenewCount($borrowernumber, $issue->{'itemnumber'});
-               $issue->{'status'} = $status && C4::Context->preference("OpacRenewalAllowed");
+        if($status && C4::Context->preference("OpacRenewalAllowed")){
+            $issue->{'status'} = $status;
+            $canrenew = 1;
+        }
                $issue->{'too_many'} = 1 if $renewerror and $renewerror eq 'too_many';
                $issue->{'on_reserve'} = 1 if $renewerror and $renewerror eq 'on_reserve';
 
@@ -163,11 +170,22 @@ if ($issues){
                
                my $isbn = GetNormalizedISBN($issue->{'isbn'});
                $issue->{normalized_isbn} = $isbn;
+
+                # My Summary HTML
+                if (my $my_summary_html = C4::Context->preference('OPACMySummaryHTML')){
+                    $issue->{author} ? $my_summary_html =~ s/{AUTHOR}/$issue->{author}/g : $my_summary_html =~ s/{AUTHOR}//g;
+                    $issue->{title} =~ s/\/+$//; # remove trailing slash
+                    $issue->{title} =~ s/\s+$//; # remove trailing space
+                    $issue->{title} ? $my_summary_html =~ s/{TITLE}/$issue->{title}/g : $my_summary_html =~ s/{TITLE}//g;
+                    $issue->{isbn} ? $my_summary_html =~ s/{ISBN}/$isbn/g : $my_summary_html =~ s/{ISBN}//g;
+                    $issue->{biblionumber} ? $my_summary_html =~ s/{BIBLIONUMBER}/$issue->{biblionumber}/g : $my_summary_html =~ s/{BIBLIONUMBER}//g;
+                    $issue->{MySummaryHTML} = $my_summary_html;
+                }
        }
 }
 $template->param( ISSUES       => \@issuedat );
 $template->param( issues_count => $count );
-
+$template->param( canrenew     => $canrenew );
 $template->param( OVERDUES       => \@overdues );
 $template->param( overdues_count => $overdues_count );
 
@@ -181,13 +199,17 @@ $template->param( show_barcode => 1 ) if $show_barcode;
 # load the branches
 my $branches = GetBranches();
 my @branch_loop;
-for my $branch_hash (sort keys %$branches ) {
-    my $selected=(C4::Context->userenv && ($branch_hash eq C4::Context->userenv->{branch})) if (C4::Context->preference('SearchMyLibraryFirst'));
+for my $branch_hash ( sort keys %{$branches} ) {
+    my $selected;
+    if ( C4::Context->preference('SearchMyLibraryFirst') ) {
+        $selected =
+          ( C4::Context->userenv
+              && ( $branch_hash eq C4::Context->userenv->{branch} ) );
+    }
     push @branch_loop,
-      {
-        value      => "branch: $branch_hash",
+      { value      => "branch: $branch_hash",
         branchname => $branches->{$branch_hash}->{'branchname'},
-        selected => $selected
+        selected   => $selected,
       };
 }
 $template->param( branchloop => \@branch_loop );