Bug 7061: unnecessary global variables declared in C4::SQLHelper
[koha.git] / members / moremember.pl
index b766f2f..9115dd1 100755 (executable)
@@ -52,6 +52,7 @@ use C4::Branch; # GetBranchName
 use C4::Form::MessagingPreferences;
 use C4::NewsChannels; #get slip news
 use List::MoreUtils qw/uniq/;
+use C4::Members::Attributes qw(GetBorrowerAttributes);
 
 #use Smart::Comments;
 #use Data::Dumper;
@@ -157,12 +158,6 @@ $data->{ "sex_".$data->{'sex'}."_p" } = 1;
 
 my $catcode;
 if ( $category_type eq 'C') {
-       if ($data->{guarantorid} ) {
-       my $data2 = GetMember( 'borrowernumber' => $data->{'guarantorid'} );
-       foreach (qw(address address2 city state B_address B_address2 B_city B_state phone mobile zipcode B_zipcode country B_country)) {
-           $data->{$_} = $data2->{$_};
-       }
-   }
    my  ( $catcodes, $labels ) =  GetborCatFromCatType( 'A', 'WHERE category_type = ?' );
    my $cnt = scalar(@$catcodes);
 
@@ -242,9 +237,12 @@ if ( C4::Context->preference('OPACPrivacy') ) {
 #
 my @borrowernumbers = GetMemberRelatives($borrowernumber);
 my $issue       = GetPendingIssues($borrowernumber);
-my $relissue    = GetPendingIssues(@borrowernumbers);
-my $issuecount = scalar(@$issue);
-my $relissuecount  = scalar(@$relissue);
+my $relissue    = [];
+if ( @borrowernumbers ) {
+    $relissue    = GetPendingIssues(@borrowernumbers);
+}
+my $issuecount     = @{$issue};
+my $relissuecount  = @{$relissue};
 my $roaddetails = &GetRoadTypeDetails( $data->{'streettype'} );
 my $today       = POSIX::strftime("%Y-%m-%d", localtime);      # iso format
 my @issuedata;
@@ -262,15 +260,12 @@ sub build_issue_data {
     my $localissue;
 
     for ( my $i = 0 ; $i < $issuecount ; $i++ ) {
-        # Getting borrower details
-        my $memberdetails = GetMemberDetails($issue->[$i]{'borrowernumber'});
-        $issue->[$i]{'borrowername'} = $memberdetails->{'firstname'} . " " . $memberdetails->{'surname'};
-        $issue->[$i]{'cardnumber'} = $memberdetails->{'cardnumber'};
         my $datedue = $issue->[$i]{'date_due'};
         my $issuedate = $issue->[$i]{'issuedate'};
         $issue->[$i]{'date_due'}  = C4::Dates->new($issue->[$i]{'date_due'}, 'iso')->output('syspref');
         $issue->[$i]{'issuedate'} = C4::Dates->new($issue->[$i]{'issuedate'},'iso')->output('syspref');
         my $biblionumber = $issue->[$i]{'biblionumber'};
+        $issue->[$i]{'issuingbranchname'} = GetBranchName($issue->[$i]{'branchcode'});
         my %row = %{ $issue->[$i] };
         $totalprice += $issue->[$i]{'replacementprice'};
         $row{'replacementprice'} = $issue->[$i]{'replacementprice'};
@@ -308,7 +303,7 @@ sub build_issue_data {
 
         #find the charge for an item
         my ( $charge, $itemtype ) =
-          GetIssuingCharges( $issue->[$i]{'itemnumber'}, $borrowernumber );
+          GetIssuingCharges( $issue->[$i]{'itemnumber'}, $issue->[$i]{'borrowernumber'} );
 
         my $itemtypeinfo = getitemtypeinfo($itemtype);
         $row{'itemtype_description'} = $itemtypeinfo->{description};
@@ -316,7 +311,7 @@ sub build_issue_data {
 
         $row{'charge'} = sprintf( "%.2f", $charge );
 
-        my ( $renewokay,$renewerror ) = CanBookBeRenewed( $borrowernumber, $issue->[$i]{'itemnumber'}, $override_limit );
+        my ( $renewokay,$renewerror ) = CanBookBeRenewed( $issue->[$i]{'borrowernumber'}, $issue->[$i]{'itemnumber'}, $override_limit );
         $row{'norenew'} = !$renewokay;
         $row{'can_confirm'} = ( !$renewokay && $renewerror ne 'on_reserve' );
         $row{"norenew_reason_$renewerror"} = 1 if $renewerror;
@@ -430,8 +425,11 @@ my $branch=C4::Context->userenv->{'branch'};
 $template->param(%$data);
 
 if (C4::Context->preference('ExtendedPatronAttributes')) {
-    $template->param(ExtendedPatronAttributes => 1);
-    $template->param(patron_attributes => C4::Members::Attributes::GetBorrowerAttributes($borrowernumber));
+    my $attributes = GetBorrowerAttributes($borrowernumber);
+    $template->param(
+        ExtendedPatronAttributes => 1,
+        extendedattributes => $attributes
+    );
     my @types = C4::Members::AttributeTypes::GetAttributeTypes();
     if (scalar(@types) == 0) {
         $template->param(no_patron_attribute_types => 1);