[Koha-patches] [PATCH] Bug 5749 Fix borrower address display in intranet

Chris Cormack chrisc at catalyst.net.nz
Sun Feb 13 23:23:29 CET 2011


From: Stéphane Delaune <stephane.delaune at biblibre.com>

The display of borrower adresses composed of streetnumber, streettype and address was broken.
---
 C4/Members.pm                                      |   55 ++++++++++++++++++++
 .../prog/en/modules/members/moremember.tmpl        |    2 +
 members/member.pl                                  |   11 ++--
 3 files changed, 63 insertions(+), 5 deletions(-)

diff --git a/C4/Members.pm b/C4/Members.pm
index fafc99b..5780e01 100644
--- a/C4/Members.pm
+++ b/C4/Members.pm
@@ -87,6 +87,8 @@ BEGIN {
 		&DeleteMessage
 		&GetMessages
 		&GetMessagesCount
+		&SetMemberInfosInTemplate
+      &getFullBorrowerAddress
 	);
 
 	#Modify data
@@ -1642,6 +1644,59 @@ sub DelMember {
     return $sth->rows;
 }
 
+=head2 SetMemberInfosInTemplate
+    &SetMemberInfosInTemplate($borrowernumber, $template)
+    
+    
+Settings borrower informations for template user
+
+=cut
+
+sub SetMemberInfosInTemplate {
+    my ($borrowernumber, $template) = @_;
+    
+    my $borrower = GetMemberDetails( $borrowernumber, 0 );
+    foreach my $key (keys %$borrower){
+        $template->param($key => $borrower->{$key});
+    }
+    
+    # Computes full borrower address
+    my (undef, $roadttype_hashref) = &GetRoadTypes();
+    my $address = $borrower->{'streetnumber'}.' '.$roadttype_hashref->{$borrower->{'streettype'}}.' '.$borrower->{'address'};
+    $template->param(is_child  => ($borrower->{'category_type'} eq 'C'),
+                    address    => $address,
+                    branchname => GetBranchName($borrower->{'branchcode'}),
+                    );
+                    
+    foreach (qw(dateenrolled dateexpiry dateofbirth)) {
+		my $userdate = $borrower->{$_};
+		unless ($userdate) {
+			$borrower->{$_} = '';
+			next;
+		}
+		$userdate = C4::Dates->new($userdate,'iso')->output('syspref');
+		$borrower->{$_} = $userdate || '';
+		$template->param( $_ => $userdate );
+    }
+    
+    my $attributes = GetBorrowerAttributes($borrowernumber);
+    $template->param(
+        extendedattributes => $attributes,
+    );
+}
+
+sub getFullBorrowerAddress {
+    my ( $borrowernumber ) = @_;
+    my $borrower = GetMemberDetails( $borrowernumber, 0 );
+    # Computes full borrower address
+    my ( undef, $roadttype_hashref ) = &GetRoadTypes();
+    my $address1="";
+    if(($borrower->{'streetnumber'}) ne ''){$address1=$address1.$borrower->{'streetnumber'}.' ';}
+    if(($roadttype_hashref->{ $borrower->{'streettype'} }) ne ""){$address1=$address1.$roadttype_hashref->{ $borrower->{'streettype'} }.' ';}
+    $address1=$address1.$borrower->{'address'};
+    return $address1;
+}
+
 =head2 ExtendMemberSubscriptionTo (OUEST-PROVENCE)
 
     $date = ExtendMemberSubscriptionTo($borrowerid, $date);
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tmpl
index 2cdc13a..543a66f 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tmpl
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tmpl
@@ -172,6 +172,8 @@ function validate1(date) {
         <!--TMPL_IF NAME="roaddetails"-->
          <!-- TMPL_VAR NAME="roaddetails" -->,
         <!-- /TMPL_IF -->
+
+
         <!-- TMPL_VAR NAME="address" --><br />
         <!-- TMPL_IF NAME="address2" --><!-- TMPL_VAR NAME="address2"--><br /><!-- /TMPL_IF -->
     	<!-- TMPL_IF NAME="city" --><!-- TMPL_VAR NAME="city" --><!-- /TMPL_IF -->
diff --git a/members/member.pl b/members/member.pl
index df688d1..f950bf3 100755
--- a/members/member.pl
+++ b/members/member.pl
@@ -116,6 +116,7 @@ foreach my $borrower(@$results[$from..$to-1]){
   my ($od,$issue,$fines)=GetMemberIssuesAndFines($$borrower{'borrowernumber'});
 
   $$borrower{'dateexpiry'}= C4::Dates->new($$borrower{'dateexpiry'},'iso')->output('syspref');
+    $$borrower{'address'}=getFullBorrowerAddress($$borrower{'borrowernumber'});
 
   my %row = (
     count => $index++,
@@ -163,10 +164,10 @@ $template->param(
     branchloop=>\@branchloop,
     categories=>\@categories,
     searching       => "1",
-		actionname		=>basename($0),
-		%$patron,
-        numresults      => $count,
-        resultsloop     => \@resultsdata,
-            );
+    actionname		=>basename($0),
+    %$patron,
+    numresults      => $count,
+    resultsloop     => \@resultsdata,
+);
 
 output_html_with_http_headers $input, $cookie, $template->output;
-- 
1.7.1



More information about the Koha-patches mailing list