koha-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Koha-cvs] koha/members boraccount.pl borrowers_details.pl...


From: paul poulain
Subject: [Koha-cvs] koha/members boraccount.pl borrowers_details.pl...
Date: Fri, 09 Mar 2007 14:56:55 +0000

CVSROOT:        /sources/koha
Module name:    koha
Changes by:     paul poulain <tipaul>   07/03/09 14:56:55

Modified files:
        members        : boraccount.pl borrowers_details.pl deletemem.pl 
                         guarantor_search.pl mancredit.pl maninvoice.pl 
                         memberentry.pl member-flags.pl 
                         member-password.pl member-picupload.pl 
                         member.pl members-home.pl moremember.pl pay.pl 
                         readingrec.pl setdebar.pl 

Log message:
        rel_3_0 moved to HEAD

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/koha/members/boraccount.pl?cvsroot=koha&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/koha/members/borrowers_details.pl?cvsroot=koha&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/koha/members/deletemem.pl?cvsroot=koha&r1=1.9&r2=1.10
http://cvs.savannah.gnu.org/viewcvs/koha/members/guarantor_search.pl?cvsroot=koha&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/koha/members/mancredit.pl?cvsroot=koha&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/koha/members/maninvoice.pl?cvsroot=koha&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/koha/members/memberentry.pl?cvsroot=koha&r1=1.39&r2=1.40
http://cvs.savannah.gnu.org/viewcvs/koha/members/member-flags.pl?cvsroot=koha&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/koha/members/member-password.pl?cvsroot=koha&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/koha/members/member-picupload.pl?cvsroot=koha&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/koha/members/member.pl?cvsroot=koha&r1=1.13&r2=1.14
http://cvs.savannah.gnu.org/viewcvs/koha/members/members-home.pl?cvsroot=koha&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/koha/members/moremember.pl?cvsroot=koha&r1=1.29&r2=1.30
http://cvs.savannah.gnu.org/viewcvs/koha/members/pay.pl?cvsroot=koha&r1=1.6&r2=1.7
http://cvs.savannah.gnu.org/viewcvs/koha/members/readingrec.pl?cvsroot=koha&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/koha/members/setdebar.pl?cvsroot=koha&r1=1.3&r2=1.4

Patches:
Index: boraccount.pl
===================================================================
RCS file: /sources/koha/koha/members/boraccount.pl,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- boraccount.pl       27 Sep 2006 21:19:22 -0000      1.4
+++ boraccount.pl       9 Mar 2007 14:56:55 -0000       1.5
@@ -1,6 +1,6 @@
 #!/usr/bin/perl
 
-# $Id: boraccount.pl,v 1.4 2006/09/27 21:19:22 tgarip1957 Exp $
+# $Id: boraccount.pl,v 1.5 2007/03/09 14:56:55 tipaul Exp $
 
 #writen 11/1/2000 by address@hidden
 #script to display borrowers account details
@@ -30,7 +30,7 @@
 use C4::Date;
 use CGI;
 use C4::Members;
-use HTML::Template;
+
 
 my $input=new CGI;
 
@@ -46,13 +46,13 @@
                             debug => 1,
                             });
 
-my $bornum=$input->param('bornum');
+my $borrowernumber=$input->param('borrowernumber');
 #get borrower details
-my $data=borrdata('',$bornum);
+my $data=borrdata('',$borrowernumber);
 
 #get account details
 my %bor;
-$bor{'borrowernumber'}=$bornum;
+$bor{'borrowernumber'}=$borrowernumber;
 my ($numaccts,$accts,$total)=getboracctrecord('',\%bor);
 my $totalcredit;
 if($total <= 0){
@@ -95,7 +95,7 @@
 $template->param(
                        firstname       => $data->{'firstname'},
                        surname         => $data->{'surname'},
-                       bornum          => $bornum,
+                       borrowernumber          => $borrowernumber,
                        total           => sprintf("%.2f",$total),
                        totalcredit => $totalcredit,
                        accounts        => address@hidden );

Index: borrowers_details.pl
===================================================================
RCS file: /sources/koha/koha/members/borrowers_details.pl,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- borrowers_details.pl        7 Jun 2006 10:15:58 -0000       1.2
+++ borrowers_details.pl        9 Mar 2007 14:56:55 -0000       1.3
@@ -2,7 +2,7 @@
 # NOTE: This file uses standard 8-space tabs
 #       DO NOT SET TAB SIZE TO 4
 
-# $Id: borrowers_details.pl,v 1.2 2006/06/07 10:15:58 btoumi Exp $
+# $Id: borrowers_details.pl,v 1.3 2007/03/09 14:56:55 tipaul Exp $
 
 #script to set up screen for modification of borrower details
 #written 20/12/99 by address@hidden
@@ -31,10 +31,9 @@
 use C4::Output;
 use C4::Interface::CGI::Output;
 use CGI;
-use C4::Search;
 use C4::Members;
 use C4::Koha;
-use HTML::Template;
+
 use Date::Manip;
 use C4::Date;
 use C4::Input;

Index: deletemem.pl
===================================================================
RCS file: /sources/koha/koha/members/deletemem.pl,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- deletemem.pl        4 Jul 2006 14:36:52 -0000       1.9
+++ deletemem.pl        9 Mar 2007 14:56:55 -0000       1.10
@@ -1,6 +1,6 @@
 #!/usr/bin/perl
 
-# $Id: deletemem.pl,v 1.9 2006/07/04 14:36:52 toins Exp $
+# $Id: deletemem.pl,v 1.10 2007/03/09 14:56:55 tipaul Exp $
 
 #script to delete items
 #written 2/5/00
@@ -28,11 +28,11 @@
 
 use CGI;
 use C4::Context;
-use C4::Search;
 use C4::Interface::CGI::Output;
 use C4::Output;
 use C4::Circulation::Circ2;
 use C4::Auth;
+use C4::Members;
 
 
 my $input = new CGI;
@@ -60,7 +60,7 @@
        unless ($userenv->{flags} == 1){
                unless ($userenv->{'branch'} eq $bor->{'branchcode'}){
 #                      warn "user ".$userenv->{'branch'} ."borrower :". 
$bor->{'branchcode'};
-                       print 
$input->redirect("/cgi-bin/koha/members/moremember.pl?bornum=$member");
+                       print 
$input->redirect("/cgi-bin/koha/members/moremember.pl?borrowernumber=$member");
                        exit 1;
                }
        }
@@ -70,18 +70,18 @@
 $sth->execute($member);
 my $data=$sth->fetchrow_hashref;
 $sth->finish;
-
-if ($i > 0 || $flags->{'CHARGES'} ne '' || $data ne ''){
+if ($i > 0 or $flags->{'CHARGES'}  or $data->{'borrowernumber'}){
+warn"je suis rentre dans la boucle";
        my ($template, $borrowernumber, $cookie)
                = get_template_and_user({template_name => 
"members/deletemem.tmpl",
                                        query => $input,
                                        type => "intranet",
                                        authnotrequired => 0,
-                                       flagsrequired => {borrower => 1},
+                                       flagsrequired => {borrowers => 1},
                                        debug => 1,
                                        });
        #   print $input->header;
-       $template->param(bornum => $member);
+       $template->param(borrowernumber => $member);
        if ($i >0) {
                $template->param(ItemsOnIssues => $i);
        }
@@ -109,24 +109,8 @@
 output_html_with_http_headers $input, $cookie, $template->output;
 
 } else {
-       delmember($member);
+       DeleteBorrower($member);
        print $input->redirect("/cgi-bin/koha/members/members-home.pl");
 }
 
-sub delmember{
-       my ($member)address@hidden;
-       my $dbh = C4::Context->dbh;
-       my $sth=$dbh->prepare("Select * from borrowers where borrowernumber=?");
-       $sth->execute($member);
-       my @data=$sth->fetchrow_array;
-       $sth->finish;
-       $sth=$dbh->prepare("Insert into deletedborrowers values 
(".("?,"x(scalar(@data)-1))."?)");
-       $sth->execute(@data);
-       $sth->finish;
-       $sth=$dbh->prepare("Delete from borrowers where borrowernumber=?");
-       $sth->execute($member);
-       $sth->finish;
-       $sth=$dbh->prepare("Delete from reserves where borrowernumber=?");
-       $sth->execute($member);
-       $sth->finish;
-}
+

Index: guarantor_search.pl
===================================================================
RCS file: /sources/koha/koha/members/guarantor_search.pl,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- guarantor_search.pl 14 Apr 2006 09:32:34 -0000      1.1
+++ guarantor_search.pl 9 Mar 2007 14:56:55 -0000       1.2
@@ -1,6 +1,6 @@
 #!/usr/bin/perl
 
-# $Id: guarantor_search.pl,v 1.1 2006/04/14 09:32:34 tipaul Exp $
+# $Id: guarantor_search.pl,v 1.2 2007/03/09 14:56:55 tipaul Exp $
 
 # script to find a guarantor
 
@@ -26,8 +26,7 @@
 use C4::Output;
 use C4::Interface::CGI::Output;
 use CGI;
-use C4::Search;
-use HTML::Template;
+
 #op
 use C4::Date;
 use C4::Members;
@@ -76,7 +75,7 @@
        for (my $i=0; $i < $count; $i++){
        #find out stats
        my ($od,$issue,$fines)=borrdata2($env,$results->[$i]{'borrowerid'});
-       
+       my $guarantorinfo=uc($results->[$i]{'surname'})." , 
".ucfirst($results->[$i]{'firstname'});
        my %row = (
                background => $background,
                count => $i+1,
@@ -88,7 +87,7 @@
                address => $results->[$i]{'address'},
                city => $results->[$i]{'city'},
                branchcode => $results->[$i]{'branchcode'},
-               
+               guarantorinfo =>$guarantorinfo,
                #op
                dateofbirth =>format_date($results->[$i]{'dateofbirth'}),
                #fi op  

Index: mancredit.pl
===================================================================
RCS file: /sources/koha/koha/members/mancredit.pl,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- mancredit.pl        27 Sep 2006 21:19:22 -0000      1.4
+++ mancredit.pl        9 Mar 2007 14:56:55 -0000       1.5
@@ -26,15 +26,15 @@
 use C4::Output;
 use C4::Interface::CGI::Output;
 use CGI;
-use HTML::Template;
+
 use C4::Members;
 use C4::Accounts2;
 my $input=new CGI;
 
 
-my $bornum=$input->param('bornum');
+my $borrowernumber=$input->param('borrowernumber');
 #get borrower details
-my $data=borrdata('',$bornum);
+my $data=borrdata('',$borrowernumber);
 my $add=$input->param('add');
 if ($add){
   my $itemnum=$input->param('itemnum');
@@ -42,18 +42,18 @@
   my $amount=$input->param('amount');
   $amount = -$amount;
   my $type=$input->param('type');
-  manualinvoice($bornum,$itemnum,$desc,$type,$amount);
-  print $input->redirect("/cgi-bin/koha/members/boraccount.pl?bornum=$bornum");
+  manualinvoice($borrowernumber,$itemnum,$desc,$type,$amount);
+  print 
$input->redirect("/cgi-bin/koha/members/boraccount.pl?borrowernumber=$borrowernumber");
 } else {
        my ($template, $loggedinuser, $cookie)
-       = get_template_and_user({template_name => "mancredit.tmpl",
+       = get_template_and_user({template_name => "members/mancredit.tmpl",
                                        query => $input,
                                        type => "intranet",
                                        authnotrequired => 0,
                                        flagsrequired => {borrowers => 1},
                                        debug => 1,
                                        });
-       $template->param( bornum => $bornum);
+       $template->param( borrowernumber => $borrowernumber);
        print $input->header(
            -type => guesstype($template->output),
            -cookie => $cookie

Index: maninvoice.pl
===================================================================
RCS file: /sources/koha/koha/members/maninvoice.pl,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- maninvoice.pl       27 Sep 2006 21:19:22 -0000      1.4
+++ maninvoice.pl       9 Mar 2007 14:56:55 -0000       1.5
@@ -28,13 +28,13 @@
 use CGI;
 use C4::Members;
 use C4::Accounts2;
-use HTML::Template;
+
 
 my $input=new CGI;
 
-my $bornum=$input->param('bornum');
+my $borrowernumber=$input->param('borrowernumber');
 #get borrower details
-my $data=borrdata('',$bornum);
+my $data=borrdata('',$borrowernumber);
 my $add=$input->param('add');
 if ($add){
 #  print $input->header;
@@ -42,18 +42,18 @@
   my $desc=$input->param('desc');
   my $amount=$input->param('amount');
   my $type=$input->param('type');
-  manualinvoice($bornum,$itemnum,$desc,$type,$amount);
-  print $input->redirect("/cgi-bin/koha/members/boraccount.pl?bornum=$bornum");
+  manualinvoice($borrowernumber,$itemnum,$desc,$type,$amount);
+  print 
$input->redirect("/cgi-bin/koha/members/boraccount.pl?borrowernumber=$borrowernumber");
 } else {
        my ($template, $loggedinuser, $cookie)
-       = get_template_and_user({template_name => "maninvoice.tmpl",
+       = get_template_and_user({template_name => "members/maninvoice.tmpl",
                                        query => $input,
                                        type => "intranet",
                                        authnotrequired => 0,
                                        flagsrequired => {borrowers => 1},
                                        debug => 1,
                                        });
-       $template->param(bornum => $bornum);
+       $template->param(borrowernumber => $borrowernumber);
        print $input->header(
            -type => guesstype($template->output),
            -cookie => $cookie

Index: memberentry.pl
===================================================================
RCS file: /sources/koha/koha/members/memberentry.pl,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -b -r1.39 -r1.40
--- memberentry.pl      27 Sep 2006 21:19:22 -0000      1.39
+++ memberentry.pl      9 Mar 2007 14:56:55 -0000       1.40
@@ -1,5 +1,5 @@
 #!/usr/bin/perl
-# $Id: memberentry.pl,v 1.39 2006/09/27 21:19:22 tgarip1957 Exp $
+# $Id: memberentry.pl,v 1.40 2007/03/09 14:56:55 tipaul Exp $
 
 # Copyright 2006 SAN OUEST PROVENCE et Paul POULAIN
 #
@@ -30,21 +30,29 @@
 # internal modules
 use C4::Auth;
 use C4::Context;
+use C4::Output;
 use C4::Interface::CGI::Output;
-use C4::Search;
 use C4::Members;
 use C4::Koha;
 use C4::Date;
 use C4::Input;
 use C4::Log;
+use C4::Branch; # GetBranches
 
 my $input = new CGI;
 my %data;
 
-
 my $dbh = C4::Context->dbh;
 
-my $category_type = $input->param('category_type') || die "NO CATEGORY_TYPE 
!"; # A, E, C, or P
+my $categorycode=$input->param('categorycode');
+my $category_type;
+$category_type = $input->param('category_type');
+
+my $desc;
+($category_type,$desc) = getcategorytype($categorycode) unless ($category_type 
or !($categorycode));
+
+die "NO CATEGORY TYPE !" unless $category_type; # FIXME we should display a 
error message instead of a 500 error !
+
 my $step=$input->param('step') || 0;
 my ($template, $loggedinuser, $cookie)
     = get_template_and_user({template_name => 
"members/memberentry$category_type.tmpl",
@@ -60,7 +68,6 @@
 my $modify=$input->param('modify');
 my $delete=$input->param('delete');
 my $op=$input->param('op');
-my $categorycode=$input->param('categorycode');
 my $destination=$input->param('destination');
 my $cardnumber=$input->param('cardnumber');
 my $check_member=$input->param('check_member');
@@ -68,13 +75,13 @@
 my $nodouble=$input->param('nodouble');
 my $select_city=$input->param('select_city');
 my $nok=$input->param('nok');
-
+my $guarantorinfo=$input->param('guarantorinfo');
 my @errors;
 my $default_city;
 # $check_categorytype contains the value of duplicate borrowers category type 
to redirect in good template in step =2
 my $check_categorytype=$input->param('check_categorytype');
 # NOTE: Alert for ethnicity and ethnotes fields, they are unvalided in all 
borrowers form
-
+my $borrower_data;
 
 #function  to automatic setup the mandatory  fields (visual with css)
 my 
$check_BorrowerMandatoryField=C4::Context->preference("BorrowerMandatoryField");
@@ -82,23 +89,22 @@
 foreach (@field_check) {
 $template->param( "mandatory$_" => 1);         
 }      
-
 $template->param("add"=>1) if ($op eq 'add');
 $template->param( "checked" => 1) if ($nodouble eq 1);
+($borrower_data=borrdata('',$borrowernumber)) if($op eq 'modify');
 
-my $borrower_data=borrdata('',$borrowernumber);
 # if a add or modify is requested => check validity of data.
 if ($step eq 0){
     foreach my $column (keys %$borrower_data){
        $data{$column}=$borrower_data->{$column};
     }
    }    
+
 if ($op eq 'add' or $op eq 'modify') {
        my @names=$input->param;
        foreach my $key (@names){
                $data{$key}=$input->param($key)||'';
-               $data{$key}=~ s/\'/\\\'/g;
-               $data{$key}=~ s/\"/\\\"/g;
+               $data{$key}=~ s/\"/&quot;/gg unless $key eq 'borrowernotes' or 
$key eq 'opacnote';
        }
 
        # WARN : some tests must be done whatever the step, because the 
librarian can click on any tab.
@@ -115,6 +121,7 @@
 #recover all data from guarantor address phone ,fax... 
 if ($category_type eq 'C' and $guarantorid ne '' ){
                        my $guarantordata=getguarantordata($guarantorid);
+                       $guarantorinfo=$guarantordata->{'surname'}." , 
".$guarantordata->{'firstname'};
                        if (($data{'contactname'} eq '' or $data{'contactname'} 
ne $guarantordata->{'surname'})) {
                                
$data{'contactfirstname'}=$guarantordata->{'firstname'};        
                                
$data{'contactname'}=$guarantordata->{'surname'};
@@ -139,24 +146,28 @@
        if ($step eq 1) {
                ###############test to take the right zipcode and city name 
##############
                if ( $guarantorid eq ''){
+          if ($select_city){
                        my 
($borrower_city,$borrower_zipcode)=&getzipnamecity($select_city);
                        $data{'city'}= $borrower_city;
                        $data{'zipcode'}=$borrower_zipcode;
                }
-                if ($category_type ne 'I') {
+        }
+        my $dateofbirthmandatory=0;
+        map {$dateofbirthmandatory=1 if $_ eq "dateofbirth"} @field_check;
+        if ($category_type ne 'I' && $data{dateofbirth} && 
$dateofbirthmandatory) {
                 my $age = get_age(format_date_in_iso($data{dateofbirth}));
                 my 
(undef,$agelimitmin,$agelimitmax,undef)=getborrowercategory($data{'categorycode'});
   
-               if ($age > $agelimitmax
-                            or $age < $agelimitmin
-                   ) {
+          if (($age > $agelimitmax) or ($age < $agelimitmin)) {
                         push @errors, 'ERROR_age_limitations';
                         $nok = 1;
                     }
                 }
-       
        }
+
 # STEP 2
        if ($step eq 2) {
+       
+       
                        if ( ($data{'userid'} eq '')){
                                my 
$onefirstnameletter=substr($data{'firstname'},0,1);
                                my 
$fivesurnameletter=substr($data{'surname'},0,5);
@@ -186,7 +197,6 @@
                        # test to know if another user have the same password 
and same login            
                        if ($loginexist eq 0) {
                                &modmember(%data);              
-                               logaction($loggedinuser,"MEMBERS","modify 
member", $borrowernumber, "");
                        }
                        else {
                                push @errors, "ERROR_login_exist";
@@ -204,7 +214,6 @@
                                    my @orgs=split(/\|/,$data{'organisations'});
                                    
add_member_orgs($borrowernumber,address@hidden);
                                 }
-                               logaction($loggedinuser,"MEMBERS","add member", 
$borrowernumber, "");
                        }
                }
 
@@ -213,7 +222,7 @@
                                print 
$input->redirect("/cgi-bin/koha/circ/circulation.pl?findborrower=$data{'cardnumber'}");
                        } else {
                                if ($loginexist == 0) {
-                               print 
$input->redirect("/cgi-bin/koha/members/moremember.pl?bornum=$borrowernumber");
+                               print 
$input->redirect("/cgi-bin/koha/members/moremember.pl?borrowernumber=$borrowernumber");
                                }
                        }
                }
@@ -258,6 +267,7 @@
                $template->param(female => 1);
        }
        my ($categories,$labels)=ethnicitycategories();
+    
        my $ethnicitycategoriescount=$#{$categories};
        my $ethcatpopup;
        if ($ethnicitycategoriescount>=0) {
@@ -271,16 +281,21 @@
        }
        
        
-       ($categories,$labels)=borrowercategories($category_type,$op);
+       my $action="WHERE category_type=?";
+       ($categories,$labels)=GetborCatFromCatType($category_type,$action);
        
-       #if u modify the borrowers u must have the right value for is category 
code
-       
-       (my $default_category=$data{'categorycode'}) if ($op  eq '');
-       my $catcodepopup = CGI::popup_menu(-name=>'categorycode',
+       if(scalar(@$categories)){
+           #if you modify the borrowers you must have the right value for his 
category code
+       (my $default_category=$data{'categorycode'}) if ($op  eq 'modify');
+           my $catcodepopup = CGI::popup_menu(
+               -name=>'categorycode',
                                        -id => 'categorycode',
                                        -values=>$categories,
-                                       -default=>$default_category,
-                                       -labels=>$labels);
+                       -labels=>$labels,
+                       -default=>$default_category
+           );
+           $template->param(catcodepopup=>$catcodepopup);
+       }
        #test in city
        $select_city=getidcity($data{'city'}) if ($guarantorid ne '0');
        ($default_city=$select_city) if ($step eq 0);
@@ -288,7 +303,7 @@
        my $selectcity=&getidcity($data{'city'});
        $default_city=$selectcity;
        }
-       my($cityid,$name_city)=getcities();
+       my($cityid,$name_city)=GetCities();
        $template->param( city_cgipopup => 1) if ($cityid );
        my $citypopup = CGI::popup_menu(-name=>'select_city',
                                        -id => 'select_city',
@@ -300,7 +315,7 @@
        
        my $default_roadtype;
        $default_roadtype=$data{'streettype'} ;
-       my($roadtypeid,$road_type)=getroadtypes();
+       my($roadtypeid,$road_type)=GetRoadTypes();
        $template->param( road_cgipopup => 1) if ($roadtypeid );
        my $roadpopup = CGI::popup_menu(-name=>'streettype',
                                        -id => 'streettype',
@@ -310,6 +325,16 @@
                                        -default=>$default_roadtype
                                        );      
 
+       my $default_borrowertitle;
+       $default_borrowertitle=$data{'title'} ;
+       my($borrowertitle)=GetBorrowersTitles();
+       my $borrotitlepopup = CGI::popup_menu(-name=>'title',
+                                             -id => 'title',
+                                             -values=>$borrowertitle,
+                                             -override => 1,
+                                             -default=>$default_borrowertitle
+                                       );              
+
        
        my @relationships = split 
/,|\|/,C4::Context->preference('BorrowerRelationship');
        my @relshipdata;
@@ -352,7 +377,7 @@
        my @branches;
        my @select_branch;
        my %select_branches;
-       my $branches=GetBranches('IS');
+       my $branches=GetBranches();
        my $default;
        # -----------------------------------------------------
        #  the value of ip from the branches hash table
@@ -365,24 +390,23 @@
                if ((not C4::Context->preference("IndependantBranches")) || 
(C4::Context->userenv->{'flags'} == 1)) {
                        push @select_branch, $branch;
                        $select_branches{$branch} = 
$branches->{$branch}->{'branchname'};
-                       $default = $branches->{$branch}->{'branchcode'};
+                       $default=C4::Context->userenv->{'branch'};
                        } else {
                                push @select_branch,$branch if ($branch eq 
C4::Context->userenv->{'branch'});
                                $select_branches{$branch} = 
$branches->{$branch}->{'branchname'} if ($branch eq 
C4::Context->userenv->{'branch'});
                                $default = C4::Context->userenv->{'branch'};
-                                       
                                }
        }
 # 
--------------------------------------------------------------------------------------------------------
        #in modify mod :default value from $CGIbranch comes from borrowers table
        #in add mod: default value come from branches table (ip correspendence)
        $default=$data{'branchcode'}  if ($op eq 'modify');
-       
        my $CGIbranch = CGI::scrolling_list(-id    => 'branchcode',
                                           -name   => 'branchcode',
                                           -values => address@hidden,
                                           -labels => \%select_branches,
                                           -size   => 1,
+                                          -override => 1,      
                                           -multiple =>0,
                                           -default => $default,
                                        );
@@ -426,11 +450,6 @@
        } else {
                $template->param( sort2 => $data{'sort2'});
        }
-
-       
-       $data{'opacnotes'} =~ s/\\//g;
-       $data{'borrowernotes'} =~ s/\\//g;
-
        # increase step to see next page
         if ($nok) {
             foreach my $error (@errors) {
@@ -441,8 +460,6 @@
         else {
             $step++;
         }
-
-
        $template->param(
                BorrowerMandatoryField => 
C4::Context->preference("BorrowerMandatoryField"),#field to test with javascript
                category_type   => $category_type,#to know the category type of 
the borrower
@@ -458,8 +475,7 @@
                borrowernumber  => $borrowernumber,#register number
                cardnumber      => $data{'cardnumber'},
                surname         => uc($data{'surname'}),
-               firstname       => ucfirst($data{'firstname'}),
-               "title_".$data{'title'}   => " SELECTED ",
+               firstname       => ucfirst(lc $data{'firstname'}),
                title           => $data{'title'},
                othernames      => $data{'othernames'},
                initials        => $data{'initials'},
@@ -482,7 +498,6 @@
                B_phone        => $data{'B_phone'},
                dateofbirth     => $data{'dateofbirth'},
                branchcode      => $data{'branchcode'},
-               catcodepopup    => $catcodepopup,
                categorycode    => $data{'categorycode'},
                dateenrolled    => format_date($data{'dateenrolled'}),
                dateexpiry      => format_date($data{'dateexpiry'}),
@@ -490,7 +505,7 @@
                gonenoaddress   => $data{'gonenoaddress'}, 
                lost    => $data{'lost'},
                contactname     => uc($data{'contactname'}),
-               contactfirstname=> ucfirst($data{'contactfirstname'}),
+               contactfirstname=> ucfirst( lc $data{'contactfirstname'}),
                "contacttitle_".$data{'contacttitle'} => "SELECTED" ,
                contacttitle    => $data{'contacttitle'},
                guarantorid     => $guarantorid,
@@ -499,14 +514,16 @@
                userid          => $data{'userid'},     
                password        => $data{'password'},   
                opacnote        => $data{'opacnote'},   
-               contactnotes    => $data{'contactnotes'},
+               contactnote     => $data{'contactnote'},
                borrowernotes   => $data{'borrowernotes'},
                relshiploop     => address@hidden,
                relationship    => $data{'relationship'},
                citypopup       => $citypopup,
                roadpopup       => $roadpopup,  
+               borrotitlepopup => $borrotitlepopup,
                contacttype     => $data{'contacttype'},
                organisations   => $data{'organisations'},
+               guarantorinfo   => $guarantorinfo,
                flagloop        => address@hidden,
 #              "contacttype_".$data{'contacttype'} =>" SELECTED ",
                dateformat      => display_date_format(),

Index: member-flags.pl
===================================================================
RCS file: /sources/koha/koha/members/member-flags.pl,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- member-flags.pl     4 Jul 2006 14:36:52 -0000       1.5
+++ member-flags.pl     9 Mar 2007 14:56:55 -0000       1.6
@@ -6,14 +6,13 @@
 
 use strict;
 
-use C4::Search;
 use CGI;
 use C4::Output;
 use C4::Auth;
 use C4::Context;
 use C4::Circulation::Circ2;
 #use C4::Acquisitions;
-use HTML::Template;
+
 use C4::Interface::CGI::Output;
 
 my $input = new CGI;
@@ -56,7 +55,7 @@
     }
     my $sth=$dbh->prepare("update borrowers set flags=? where 
borrowernumber=?");
     $sth->execute($flags, $member);
-    print 
$input->redirect("/cgi-bin/koha/members/moremember.pl?bornum=$member");
+    print 
$input->redirect("/cgi-bin/koha/members/moremember.pl?borrowernumber=$member");
 } else {
 #     my ($bor,$flags,$accessflags)=getpatroninformation(\%env, $member,'');
     my $bor = getpatroninformation(\%env, $member,'');

Index: member-password.pl
===================================================================
RCS file: /sources/koha/koha/members/member-password.pl,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- member-password.pl  4 Jul 2006 14:36:52 -0000       1.4
+++ member-password.pl  9 Mar 2007 14:56:55 -0000       1.5
@@ -8,12 +8,11 @@
 use C4::Auth;
 use C4::Output;
 use C4::Interface::CGI::Output;
-use C4::Search;
 use C4::Context;
 use C4::Members;
 use C4::Circulation::Circ2;
 use CGI;
-use HTML::Template;
+
 use Digest::MD5 qw(md5_base64);
 
 my $input = new CGI;
@@ -54,7 +53,7 @@
        my $dbh=C4::Context->dbh;
        if (changepassword($uid,$member,$digest)) {
                $template->param(newpassword => $newpassword);
-               print 
$input->redirect("/cgi-bin/koha/members/moremember.pl?bornum=$member");
+               print 
$input->redirect("/cgi-bin/koha/members/moremember.pl?borrowernumber=$member");
        } else {
         $template->param(othernames => $bor->{'othernames'},
                                                surname     => 
$bor->{'surname'},

Index: member-picupload.pl
===================================================================
RCS file: /sources/koha/koha/members/member-picupload.pl,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- member-picupload.pl 22 Aug 2005 04:25:11 -0000      1.1
+++ member-picupload.pl 9 Mar 2007 14:56:55 -0000       1.2
@@ -1,6 +1,6 @@
 #!/usr/bin/perl
 
-# $Id: member-picupload.pl,v 1.1 2005/08/22 04:25:11 genjimoto Exp $
+# $Id: member-picupload.pl,v 1.2 2007/03/09 14:56:55 tipaul Exp $
 
 # script to upload a picture to a borrowerimages directory.
 # checks to see if its either displaying the upload form
@@ -30,13 +30,13 @@
 use C4::Context;
 use C4::Output;
 use CGI;
-use HTML::Template;
+
 use C4::Interface::CGI::Output;
 use C4::Interface::CGI::Template;
 
 my $input = new CGI;
 my $name = $input->param('name');
-my $bornum = $input->param('bornum');
+my $borrowernumber = $input->param('borrowernumber');
 my $photo = $input->param('photo');
 
 my $template_name;
@@ -59,7 +59,7 @@
                             });
 if ($photo){
 
-       my $filename=$bornum.'.jpg';
+       my $filename=$borrowernumber.'.jpg';
        my $upload_filehandle = $input->upload("photo");
        open UPLOADFILE, ">$upload_dir/$filename";
        binmode UPLOADFILE;
@@ -71,9 +71,9 @@
 }
 else {
        $template->param(
-                bornum => $bornum,
+                borrowernumber => $borrowernumber,
                 name => $name
                 );
        output_html_with_http_headers $input, $cookie, $template->output;
 }
-print 
$input->redirect("http://intranet/cgi-bin/koha/members/moremember.pl?bornum=$bornum";);
\ No newline at end of file
+print 
$input->redirect("http://intranet/cgi-bin/koha/members/moremember.pl?borrowernumber=$borrowernumber";);
\ No newline at end of file

Index: member.pl
===================================================================
RCS file: /sources/koha/koha/members/member.pl,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -b -r1.13 -r1.14
--- member.pl   4 Jul 2006 14:36:52 -0000       1.13
+++ member.pl   9 Mar 2007 14:56:55 -0000       1.14
@@ -1,6 +1,6 @@
 #!/usr/bin/perl
 
-# $Id: member.pl,v 1.13 2006/07/04 14:36:52 toins Exp $
+# $Id: member.pl,v 1.14 2007/03/09 14:56:55 tipaul Exp $
 
 #script to do a borrower enquiery/brin up borrower details etc
 #written 20/12/99 by address@hidden
@@ -29,7 +29,7 @@
 use C4::Interface::CGI::Output;
 use CGI;
 use C4::Members;
-use HTML::Template;
+
 
 my $input = new CGI;
 my $quicksearch = $input->param('quicksearch');
@@ -95,6 +95,8 @@
         surname => $results->[$i]{'surname'},
         firstname => $results->[$i]{'firstname'},
         categorycode => $results->[$i]{'categorycode'},
+        category_type => $results->[$i]{'category_type'},
+        category_description => $results->[$i]{'description'},
         streetaddress => $results->[$i]{'streetaddress'},
         city => $results->[$i]{'city'},
         branchcode => $results->[$i]{'branchcode'},

Index: members-home.pl
===================================================================
RCS file: /sources/koha/koha/members/members-home.pl,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- members-home.pl     4 Jul 2006 14:36:52 -0000       1.3
+++ members-home.pl     9 Mar 2007 14:56:55 -0000       1.4
@@ -1,12 +1,27 @@
 #!/usr/bin/perl
 
+# This file is part of Koha.
+#
+# Koha is free software; you can redistribute it and/or modify it under the
+# terms of the GNU General Public License as published by the Free Software
+# Foundation; either version 2 of the License, or (at your option) any later
+# version.
+#
+# Koha is distributed in the hope that it will be useful, but WITHOUT ANY
+# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+# A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along with
+# Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
+# Suite 330, Boston, MA  02111-1307 USA
+
 use strict;
 use CGI;
 use C4::Auth;
 use C4::Output;
 use C4::Interface::CGI::Output;
 use C4::Context;
-use HTML::Template;
+
 
 my $query = new CGI;
 my $quicksearch = $query->param('quicksearch');

Index: moremember.pl
===================================================================
RCS file: /sources/koha/koha/members/moremember.pl,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -b -r1.29 -r1.30
--- moremember.pl       27 Sep 2006 21:19:22 -0000      1.29
+++ moremember.pl       9 Mar 2007 14:56:55 -0000       1.30
@@ -1,18 +1,5 @@
 #!/usr/bin/perl
 
-# $Id: moremember.pl,v 1.29 2006/09/27 21:19:22 tgarip1957 Exp $
-
-# script to do a borrower enquiry/bring up borrower details etc
-# Displays all the details about a borrower
-# written 20/12/99 by address@hidden
-# last modified 21/1/2000 by address@hidden
-# modified 31/1/2001 by address@hidden
-#   to not allow items on request to be renewed
-#
-# needs html removed and to use the C4::Output more, but its tricky
-#
-
-
 # Copyright 2000-2002 Katipo Communications
 #
 # This file is part of Koha.
@@ -30,6 +17,21 @@
 # Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
 # Suite 330, Boston, MA  02111-1307 USA
 
+# $Id: moremember.pl,v 1.30 2007/03/09 14:56:55 tipaul Exp $
+
+=head1 moremember.pl
+
+ script to do a borrower enquiry/bring up borrower details etc
+ Displays all the details about a borrower
+ written 20/12/99 by address@hidden
+ last modified 21/1/2000 by address@hidden
+ modified 31/1/2001 by address@hidden
+   to not allow items on request to be renewed
+
+ needs html removed and to use the C4::Output more, but its tricky
+
+=cut
+
 use strict;
 use C4::Auth;
 use C4::Context;
@@ -44,7 +46,8 @@
 use C4::Circulation::Circ2;
 use C4::Koha;
 use C4::Letters;
-use HTML::Template;
+use C4::Biblio;
+use C4::Branch; # GetBranchName
 
 my $dbh = C4::Context->dbh;
 
@@ -52,120 +55,173 @@
 my $print = $input->param('print');
 my $template_name;
 
-if($print eq "page"){
+if ( $print eq "page" ) {
        $template_name = "members/moremember-print.tmpl";
-} elsif($print eq "slip"){
+}
+elsif ( $print eq "slip" ) {
        $template_name = "members/moremember-receipt.tmpl";
-} else {
+}
+else {
        $template_name = "members/moremember.tmpl";
 }
 
-my ($template, $loggedinuser, $cookie)
-    = get_template_and_user({template_name => $template_name,
+my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
+    {
+        template_name   => $template_name,
                             query => $input,
                             type => "intranet",
                             authnotrequired => 0,
-                            flagsrequired => {borrowers => 1},
+        flagsrequired   => { borrowers => 1 },
                             debug => 1,
-                            });
+    }
+);
+my $borrowernumber = $input->param('borrowernumber');
 
-my $bornum=$input->param('bornum');
 #start the page and read in includes
-my $data=borrdata('',$bornum);
+my $data           = borrdata( '', $borrowernumber );
+my $reregistration = $input->param('reregistration');
 
-my 
(undef,undef,undef,$category_type)=getborrowercategory($data->{'categorycode'});
-$template->param($data->{'categorycode'} => 1); # in template <TMPL_IF 
name="I"> => instutitional (A for Adult & C for children)
-$data->{'dateenrolled'} = format_date($data->{'dateenrolled'});
-$data->{'dateexpiry'} = format_date($data->{'dateexpiry'});
-$data->{'dateofbirth'} = format_date($data->{'dateofbirth'});
-$data->{'IS_ADULT'} = ($data->{'categorycode'} ne 'I');
-
-if($data->{'debarred'} || $data->{'gonenoaddress'} || $data->{'lost'} || 
$data->{'borrowernotes'}){
-       $template->param(flagged =>1);
-}
-
-$data->{'ethnicity'} = fixEthnicity($data->{'ethnicity'});
-
-$data->{&expand_sex_into_predicate($data->{'sex'})} = 1;
-
-if ($category_type eq 'C' and $data->{'guarantorid'} ne '0' ){
-       my $data2=borrdata('',$data->{'guarantorid'});
-       $data->{'address'}=$data2->{'address'};
-       $data->{'city'}=$data2->{'city'};
-       $data->{'B_address'}=$data2->{'B_address'};
-       $data->{'B_city'}=$data2->{'B_city'};
-       $data->{'phone'}=$data2->{'phone'};
-       $data->{'mobile'}=$data2->{'mobile'};
+if ( not defined $data ) {
+    $template->param (
+        unknowuser => 1
+    );
+    output_html_with_http_headers $input, $cookie, $template->output;
+    exit;
+}
+
+# re-reregistration function to automatic calcul of date expiry
+(
+    $data->{'dateexpiry'} = GetMembeReregistration(
+        $data->{'categorycode'},
+        $borrowernumber, $data->{'dateenrolled'}
+    )
+) if ( $reregistration eq 'y' );
+my ( undef, undef, undef, $category_type ) =
+  getborrowercategory( $data->{'categorycode'} );
+  
+# in template <TMPL_IF name="I"> => instutitional (A for Adult& C for 
children) 
+$template->param( $data->{'categorycode'} => 1 ); 
+
+$data->{'dateenrolled'} = format_date( $data->{'dateenrolled'} );
+$data->{'dateexpiry'}   = format_date( $data->{'dateexpiry'} );
+$data->{'dateofbirth'}  = format_date( $data->{'dateofbirth'} );
+$data->{'IS_ADULT'}     = ( $data->{'categorycode'} ne 'I' );
+
+if (   $data->{'debarred'}
+    || $data->{'gonenoaddress'}
+    || $data->{'lost'}
+    || $data->{'borrowernotes'} )
+{
+    $template->param( flagged => 1 );
+}
+
+$data->{'ethnicity'} = fixEthnicity( $data->{'ethnicity'} );
+
+$data->{ &expand_sex_into_predicate( $data->{'sex'} ) } = 1;
+
+if ( $category_type eq 'C' and $data->{'guarantorid'} ne '0' ) {
+    my $data2 = borrdata( '', $data->{'guarantorid'} );
+    $data->{'address'}   = $data2->{'address'};
+    $data->{'city'}      = $data2->{'city'};
+    $data->{'B_address'} = $data2->{'B_address'};
+    $data->{'B_city'}    = $data2->{'B_city'};
+    $data->{'phone'}     = $data2->{'phone'};
+    $data->{'mobile'}    = $data2->{'mobile'};
        $data->{'zipcode'} = $data2->{'zipcode'};
 }
 
-if ($data->{'ethnicity'} || $data->{'ethnotes'}) {
-       $template->param(printethnicityline => 1);
+if ( $data->{'ethnicity'} || $data->{'ethnotes'} ) {
+    $template->param( printethnicityline => 1 );
 }
-if ($category_type ne 'C'){
-       $template->param(isguarantee => 1);
+if ( $category_type eq 'A' ) {
+    $template->param( isguarantee => 1 );
+
        # FIXME
        # It looks like the $i is only being returned to handle walking through
        # the array, which is probably better done as a foreach loop.
        #
-       my ($count,$guarantees)=findguarantees($data->{'borrowernumber'});
+    my ( $count, $guarantees ) = findguarantees( $data->{'borrowernumber'} );
        my @guaranteedata;
-       for (my $i=0;$i<$count;$i++){
-               push (@guaranteedata, {borrowernumber => 
$guarantees->[$i]->{'borrowernumber'},
+    for ( my $i = 0 ; $i < $count ; $i++ ) {
+        push(
+            @guaranteedata,
+            {
+                borrowernumber => $guarantees->[$i]->{'borrowernumber'},
                                        cardnumber => 
$guarantees->[$i]->{'cardnumber'},
-                                       name => 
$guarantees->[$i]->{'firstname'} . " " . $guarantees->[$i]->{'surname'}});
+                name           => $guarantees->[$i]->{'firstname'} . " "
+                  . $guarantees->[$i]->{'surname'}
        }
-       $template->param(guaranteeloop => address@hidden);
-       ($template->param(adultborrower=>1)) if ($category_type eq 'A');
-} else {
-       my ($guarantorid)=findguarantor($data->{guarantorid});
-       if ($guarantorid->{'borrowernumber'}){
-               $template->param(guarantorborrowernumber => 
$guarantorid->{'borrowernumber'}, guarantorcardnumber => 
$guarantorid->{'cardnumber'});
+        );
+    }
+    $template->param( guaranteeloop => address@hidden );
+    ( $template->param( adultborrower => 1 ) ) if ( $category_type eq 'A' );
+
+}
+else {
+    my ($guarantorid) = findguarantor( $data->{'borrowernumber'} );
+    ( $template->param( guarantor => 1 ) )
+      if ( ( $data->{'guarantorid'} > '0' ) );
+    if ( $guarantorid->{'borrowernumber'} ) {
+        $template->param(
+            guarantorborrowernumber => $guarantorid->{'borrowernumber'},
+            guarantorcardnumber     => $guarantorid->{'cardnumber'},
+            guarantorfirstname      => $guarantorid->{'firstname'},
+            guarantorsurname        => $guarantorid->{'surname'}
+        );
        }
 }
 
 #Independant branches management
-my $unvalidlibrarian = ((C4::Context->preference("IndependantBranches")) && 
(C4::Context->userenv->{flags}!=1) && ($data->{'branchcode'} ne 
C4::Context->userenv->{branch}));
+my $unvalidlibrarian =
+  (      ( C4::Context->preference("IndependantBranches") )
+      && ( C4::Context->userenv->{flags} != 1 )
+      && ( $data->{'branchcode'} ne C4::Context->userenv->{branch} ) );
 
 my %bor;
-$bor{'borrowernumber'}=$bornum;
+$bor{'borrowernumber'} = $borrowernumber;
 
 # Converts the branchcode to the branch name
 my $samebranch;
-if (C4::Context->preference("IndependantBranches")) {
+if ( C4::Context->preference("IndependantBranches") ) {
        my $userenv = C4::Context->userenv;
-       unless ($userenv->{flags} == 1){
-               $samebranch = ($data->{'branchcode'} eq $userenv->{branch});
+    unless ( $userenv->{flags} == 1 ) {
+        $samebranch = ( $data->{'branchcode'} eq $userenv->{branch} );
        }
-       $samebranch =1 if ($userenv->{flags} == 1);
+    $samebranch = 1 if ( $userenv->{flags} == 1 );
 }
 
-$data->{'branchname'} = 
((getbranchdetail($data->{'branchcode'}))->{'branchname'});
+$data->{'branchname'} =
+  ( ( GetBranchDetail( $data->{'branchcode'} ) )->{'branchname'} );
 
 # Converts the categorycode to the description
-($data->{'categorycode'},undef,undef) = 
&getborrowercategory($data->{'categorycode'});
+( $data->{'categorycode'}, undef, undef ) =
+  &getborrowercategory( $data->{'categorycode'} );
 
-my ($numaccts,$accts,$total)=getboracctrecord('',\%bor);
+my ( $numaccts, $accts, $total ) = getboracctrecord( '', \%bor );
+my $lib1 = &GetSortDetails( "Bsort1", $data->{'sort1'} );
+my $lib2 = &GetSortDetails( "Bsort2", $data->{'sort2'} );
+( $template->param( lib1 => $lib1 ) ) if ($lib1);
+( $template->param( lib2 => $lib2 ) ) if ($lib2);
 
-#
 # current issues
 #
-my ($count,$issue)=borrissues($bornum);
-
-my $today=ParseDate('today');
+my ( $count, $issue ) = borrissues($borrowernumber);
+my $roaddetails = &GetRoadTypeDetails( $data->{'streettype'} );
+my $today       = ParseDate('today');
 my @issuedata;
 my $totalprice = 0;
 my $toggle = 0;
-for (my $i=0;$i<$count;$i++){
-       my $datedue=ParseDate($issue->[$i]{'date_due'});
-       $issue->[$i]{'date_due'} = format_date($issue->[$i]{'date_due'});
-       my %row = %{$issue->[$i]};
+for ( my $i = 0 ; $i < $count ; $i++ ) {
+    my $datedue = ParseDate( $issue->[$i]{'date_due'} );
+    $issue->[$i]{'date_due'} = format_date( $issue->[$i]{'date_due'} );
+    my %row = %{ $issue->[$i] };
        $totalprice += $issue->[$i]{'replacementprice'};
-       $row{'replacementprice'}=$issue->[$i]{'replacementprice'};
-       if ($datedue < $today){
-               $row{'red'}=1; #print "<font color=red>";
+    $row{'replacementprice'} = $issue->[$i]{'replacementprice'};
+    if ( $datedue < $today ) {
+        $row{'red'} = 1;    #print "<font color=red>";
        }
-        $row{toggle} = $toggle++%2;
+    $row{toggle} = $toggle++ % 2;
+
        #find the charge for an item
        # FIXME - This is expecting
        # &C4::Circulation::Renewals2::calc_charges, but it's getting
@@ -174,70 +230,147 @@
        # But &C4::Circulation::Renewals2::calc_charges doesn't appear to
        # return the correct item type either (or a properly-formatted
        # charge, for that matter).
-       my 
($charge,$itemtype)=calc_charges($dbh,$issue->[$i]{'itemnumber'},$bornum);
+    my ( $charge, $itemtype ) =
+      calc_charges( $dbh, $issue->[$i]{'itemnumber'}, $borrowernumber );
 
         my $itemtypeinfo = getitemtypeinfo($itemtype);
        $row{'itemtype_description'} = $itemtypeinfo->{description};
         $row{'itemtype_image'} = $itemtypeinfo->{imageurl};
 
-       $row{'charge'}= sprintf("%.2f",$charge);
+    $row{'charge'} = sprintf( "%.2f", $charge );
 
        #check item is not reserved
-       my ($restype,$reserves)=CheckReserves($issue->[$i]{'itemnumber'});
-       if ($restype){
-#              print "<TD><a 
href=/cgi-bin/koha/reserve/request.pl?bib=$issue->[$i]{'biblionumber'}>On 
Request - no renewals</a></td></tr>";
-               #  } elsif ($issue->[$i]->{'renewals'} > 0) {
-               #      print "<TD>Previously Renewed - no renewals</td></tr>";
-                       $row{'norenew'}=1;
-       } else {
-               $row{'norenew'}=0;
+    my ( $restype, $reserves ) = CheckReserves( $issue->[$i]{'itemnumber'} );
+    if ($restype) {
+
+#              print "<TD><a 
href=/cgi-bin/koha/reserve/request.pl?biblionumber=$issue->[$i]{'biblionumber'}>On
 Request - no renewals</a></td></tr>";
+#  } elsif ($issue->[$i]->{'renewals'} > 0) {
+#      print "<TD>Previously Renewed - no renewals</td></tr>";
+        $row{'norenew'} = 1;
        }
-       push (@issuedata, \%row);
+    else {
+        $row{'norenew'} = 0;
+    }
+    push( @issuedata, \%row );
 }
 
 #
 # find reserves
 #
-my ($rescount,$reserves)=FindReserves('',$bornum); #From C4::Reserves2
-my @reservedata;
-$toggle = 0;
-foreach my $reserveline (@$reserves) {
-       $reserveline->{'reservedate2'} = 
format_date($reserveline->{'reservedate'});
-       my $restitle;
-       my %row = %$reserveline;
-        $row{toggle} = $toggle++%2;
-       if ($reserveline->{'constrainttype'} eq 'o'){
-               
$restitle=getreservetitle($reserveline->{'biblionumber'},$reserveline->{'borrowernumber'},$reserveline->{'reservedate'},$reserveline->{'rtimestamp'});
-               %row =  (%row , %$restitle) if $restitle;
+# my ($rescount,$reserves)=FindReserves('',$borrowernumber); #From 
C4::Reserves2
+# my @reservedata;
+# $toggle = 0;
+# foreach my $reserveline (@$reserves) {
+#      $reserveline->{'reservedate2'} = 
format_date($reserveline->{'reservedate'});
+#      my $restitle;
+#      my %row = %$reserveline;
+#         $row{toggle} = $toggle++%2;
+#      if ($reserveline->{'constrainttype'} eq 'o'){
+#              
$restitle=GetReserveTitle($reserveline->{'biblionumber'},$reserveline->{'borrowernumber'},$reserveline->{'reservedate'},$reserveline->{'rtimestamp'});
+#              %row =  (%row , %$restitle) if $restitle;
+#      }
+#      push (@reservedata, \%row);
+# }
+
+##################################################################################
+# BUILD HTML
+# show all reserves of this borrower, and the position of the reservation ....
+if ($borrowernumber) {
+
+    # new op dev
+    # now we show the status of the borrower's reservations
+    my @borrowerreserv = GetReservations( 0, $borrowernumber );
+    my @reservloop;
+    foreach my $num_res (@borrowerreserv) {
+        my %getreserv;
+        my %env;
+        my $getiteminfo  = getiteminformation( $num_res->{'itemnumber'} );
+        my $itemtypeinfo = getitemtypeinfo( $getiteminfo->{'itemtype'} );
+        my ( $transfertwhen, $transfertfrom, $transfertto ) =
+          checktransferts( $num_res->{'itemnumber'} );
+
+        $getreserv{waiting}       = 0;
+        $getreserv{transfered}    = 0;
+        $getreserv{nottransfered} = 0;
+
+        $getreserv{reservedate}    = format_date( $num_res->{'reservedate'} );
+        $getreserv{biblionumber}   = $getiteminfo->{'biblionumber'};
+        $getreserv{title}          = $getiteminfo->{'title'};
+        $getreserv{itemtype}       = $itemtypeinfo->{'description'};
+        $getreserv{author}         = $getiteminfo->{'author'};
+        $getreserv{barcodereserv}  = $getiteminfo->{'barcode'};
+        $getreserv{itemcallnumber} = $getiteminfo->{'itemcallnumber'};
+
+        #              check if we have a waitin status for reservations
+        if ( $num_res->{'found'} eq 'W' ) {
+            $getreserv{color}   = 'reserved';
+            $getreserv{waiting} = 1;
+        }
+
+        #              check transfers with the itemnumber foud in th 
reservation loop
+        if ($transfertwhen) {
+            $getreserv{color}      = 'transfered';
+            $getreserv{transfered} = 1;
+            $getreserv{datesent}   = format_date($transfertwhen);
+            $getreserv{frombranch} = GetBranchName($transfertfrom);
+        }
+
+        if ( ( $getiteminfo->{'holdingbranch'} ne $num_res->{'branchcode'} )
+            and not $transfertwhen )
+        {
+            $getreserv{nottransfered}   = 1;
+            $getreserv{nottransferedby} =
+              GetBranchName( $getiteminfo->{'holdingbranch'} );
+        }
+
+#              if we don't have a reserv on item, we put the biblio infos and 
the waiting position
+        if ( $getiteminfo->{'title'} eq '' ) {
+            my $getbibinfo = GetBiblioItemData( $num_res->{'biblionumber'} );
+            my $getbibtype = getitemtypeinfo( $getbibinfo->{'itemtype'} );
+            $getreserv{color}           = 'inwait';
+            $getreserv{title}           = $getbibinfo->{'title'};
+            $getreserv{waitingposition} = $num_res->{'priority'};
+            $getreserv{nottransfered}   = 0;
+            $getreserv{itemtype}        = $getbibtype->{'description'};
+            $getreserv{author}          = $getbibinfo->{'author'};
+            $getreserv{itemcallnumber}  = '----------';
+            $getreserv{biblionumber}  = $num_res->{'biblionumber'};    
+        }
+
+        push( @reservloop, \%getreserv );
        }
-       push (@reservedata, \%row);
+
+    # return result to the template
+    $template->param( reservloop => address@hidden );
+
 }
 
 # current alert subscriptions
-my $alerts = getalert($bornum);
+my $alerts = getalert($borrowernumber);
 foreach (@$alerts) {
-       $_->{$_->{type}}=1;
-       $_->{relatedto} = findrelatedto($_->{type},$_->{externalid});
+    $_->{ $_->{type} } = 1;
+    $_->{relatedto} = findrelatedto( $_->{type}, $_->{externalid} );
 }
 my $picture;
 my $htdocs = C4::Context->config('intrahtdocs');
-$picture = "/borrowerimages/".$bornum.".jpg";
-if (-e $htdocs."$picture")
-{ 
-  $template->param(picture => $picture)
-};
+$picture = "/borrowerimages/" . $borrowernumber . ".jpg";
+if ( -e $htdocs . "$picture" ) {
+    $template->param( picture => $picture );
+}
+
+
 $template->param($data);
+
 $template->param(
-                bornum          => $bornum,
-                totalprice =>sprintf("%.2f",$totalprice),
-                totaldue => sprintf("%.2f",$total),
+    roaddetails      => $roaddetails,
+    borrowernumber   => $borrowernumber,
+    reregistration   => $reregistration,
+    totalprice       => sprintf( "%.2f", $totalprice ),
+    totaldue         => sprintf( "%.2f", $total ),
                 issueloop       => address@hidden,
                 unvalidlibrarian => $unvalidlibrarian,
-                reserveloop     => address@hidden,
-                intranetcolorstylesheet => 
C4::Context->preference("intranetcolorstylesheet"),
-               intranetstylesheet => 
C4::Context->preference("intranetstylesheet"),
-               IntranetNav => C4::Context->preference("IntranetNav"),
-               patronimages => C4::Context->preference("patronimages"),
-                );
+    
+    #           reserveloop     => address@hidden,
+);
 
 output_html_with_http_headers $input, $cookie, $template->output;

Index: pay.pl
===================================================================
RCS file: /sources/koha/koha/members/pay.pl,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -b -r1.6 -r1.7
--- pay.pl      27 Sep 2006 21:19:22 -0000      1.6
+++ pay.pl      9 Mar 2007 14:56:55 -0000       1.7
@@ -1,11 +1,5 @@
 #!/usr/bin/perl
 
-# $Id: pay.pl,v 1.6 2006/09/27 21:19:22 tgarip1957 Exp $
-
-# written 11/1/2000 by address@hidden
-# part of the koha library system, script to facilitate paying off fines
-
-
 # Copyright 2000-2002 Katipo Communications
 #
 # This file is part of Koha.
@@ -23,6 +17,15 @@
 # Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
 # Suite 330, Boston, MA  02111-1307 USA
 
+# $Id: pay.pl,v 1.7 2007/03/09 14:56:55 tipaul Exp $
+
+=head1 pay.pl
+
+ written 11/1/2000 by address@hidden
+ part of the koha library system, script to facilitate paying off fines
+
+=cut
+
 use strict;
 use C4::Context;
 use C4::Auth;
@@ -32,142 +35,169 @@
 use C4::Accounts2;
 use C4::Stats;
 use C4::Koha;
-use HTML::Template;
+use C4::Circulation::Fines;
+use C4::Branch; # GetBranches
 
-my $input=new CGI;
+my $input = new CGI;
 
-#print $input->header;
-my $bornum=$input->param('bornum');
-if ($bornum eq ''){
-       $bornum=$input->param('bornum0');
+my $borrowernumber = $input->param('borrowernumber');
+if ( $borrowernumber eq '' ) {
+    $borrowernumber = $input->param('borrowernumber0');
 }
+
 # get borrower details
-my $data=borrdata('',$bornum);
-my $user=$input->remote_user;
+my $data = borrdata( '', $borrowernumber );
+my $user = $input->remote_user;
 
 # get account details
 my %bor;
-$bor{'borrowernumber'}=$bornum;
+$bor{'borrowernumber'} = $borrowernumber;
 my $branches = GetBranches();
-my $printers = getprinters();
-my $branch = getbranch($input, $branches);
+my $printers = GetPrinters();
+my $branch   = GetBranch( $input, $branches );
 
-my @names=$input->param;
+my @names = $input->param;
 my %inp;
-my $check=0;
-for (my $i=0;$i<@names;$i++){
-       my $temp=$input->param($names[$i]);
-       if ($temp eq 'wo'){
-               $inp{$names[$i]}=$temp;
-               $check=1;
-       }
-       if ($temp eq 'yes'){
-               # For HLT
-               $user=~ s/Levin/L/i;
-               $user=~ s/Foxton/F/i;
-               $user=~ s/Shannon/S/i;
-               # FIXME : using array +4, +5, +6 is dirty. Should use arrays 
for each accountline
-               my $amount=$input->param($names[$i+4]);
-               my $bornum=$input->param($names[$i+5]);
-               my $accountno=$input->param($names[$i+6]);
-               makepayment($bornum,$accountno,$amount,$user,$branch);
-               $check=2;
+my $check = 0;
+for ( my $i = 0 ; $i < @names ; $i++ ) {
+    my $temp = $input->param( $names[$i] );
+    if ( $temp eq 'wo' ) {
+        $inp{ $names[$i] } = $temp;
+        $check = 1;
+    }
+    if ( $temp eq 'yes' ) {
+
+# FIXME : using array +4, +5, +6 is dirty. Should use arrays for each 
accountline
+        my $amount         = $input->param( $names[ $i + 4 ] );
+        my $borrowernumber = $input->param( $names[ $i + 5 ] );
+        my $accountno      = $input->param( $names[ $i + 6 ] );
+        makepayment( $borrowernumber, $accountno, $amount, $user, $branch );
+        $check = 2;
        }
 }
 my %env;
-    $user=~ s/Levin/L/i;
-    $user=~ s/Foxton/F/i;
-    $user=~ s/Shannon/S/i;
-
-$env{'branchcode'}=$branch;
-my $total=$input->param('total');
-if ($check ==0){
-       my($template, $loggedinuser, $cookie)
-               = get_template_and_user ({ template_name => "members/pay.tmpl",
+
+$env{'branchcode'} = $branch;
+my $total = $input->param('total');
+if ( $check == 0 ) {
+    my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
+        {
+            template_name   => "members/pay.tmpl",
                                           query => $input,
                                           type => "intranet",
                                           authnotrequired => 0,
-                                          flagsrequired => {borrowers => 1},
+            flagsrequired   => { borrowers => 1 },
                                           debug => 1,
-                                        });
-       if ($total ne ''){
-               recordpayment(\%env,$bornum,$total);
        }
-       my ($numaccts,$accts,$total)=getboracctrecord('',\%bor);
+    );
+    if ( $total ne '' ) {
+        recordpayment( \%env, $borrowernumber, $total );
+    }
 
+    my ( $numaccts, $accts, $total ) = getboracctrecord( '', \%bor );
+
+#       creation d'une fonction qui va nous retourner le notify_id dans un 
tableau
+
+    my @allfile;
+    my @notify = NumberNotifyId($borrowernumber);
+
+    my $numberofnotify = scalar(@notify);
+    for ( my $j = 0 ; $j < scalar(@notify) ; $j++ ) {
        my @loop_pay;
-       for (my $i=0;$i<$numaccts;$i++){
-               if ($accts->[$i]{'amountoutstanding'} > 0){
-                       $accts->[$i]{'amount'}+=0.00;
-                       $accts->[$i]{'amountoutstanding'}+=0.00;
+        my ( $numaccts, $accts, $total ) =
+          GetBorNotifyAcctRecord( '', \%bor, $notify[$j] );
+        for ( my $i = 0 ; $i < $numaccts ; $i++ ) {
                        my %line;
-                       $line{i}=$i;
+            if ( $accts->[$i]{'amountoutstanding'} > 0 ) {
+                $accts->[$i]{'amount'}            += 0.00;
+                $accts->[$i]{'amountoutstanding'} += 0.00;
+                $line{i}           = $j . "" . $i;
                        $line{itemnumber} = $accts->[$i]{'itemnumber'};
                        $line{accounttype} = $accts->[$i]{'accounttype'};
-                       $line{amount} = sprintf("%.2f",$accts->[$i]{'amount'});
-                       $line{amountoutstanding} = 
sprintf("%.2f",$accts->[$i]{'amountoutstanding'});
-                       $line{bornum} = $bornum;
+                $line{amount}      = sprintf( "%.2f", $accts->[$i]{'amount'} );
+                $line{amountoutstanding} =
+                  sprintf( "%.2f", $accts->[$i]{'amountoutstanding'} );
+                $line{borrowernumber} = $borrowernumber;
                        $line{accountno} = $accts->[$i]{'accountno'};
                        $line{description} = $accts->[$i]{'description'};
                        $line{title} = $accts->[$i]{'title'};
-                       push(@loop_pay, \%line);
+                $line{notify_id}      = $accts->[$i]{'notify_id'};
+                $line{notify_level}   = $accts->[$i]{'notify_level'};
+
+            }
+            push( @loop_pay, \%line );
                }
+
+        my $totalnotify = AmountNotify( $notify[$j] );
+        ( $totalnotify = '0' ) if ( $totalnotify =~ /^0.00/ );
+        push @allfile,
+          {
+            'loop_pay' => address@hidden,
+            'notify'   => $notify[$j],
+            'total'    => $totalnotify
+          };
        }
-       $template->param(firstname => $data->{'firstname'},
+
+    $template->param(
+        allfile        => address@hidden,
+        firstname      => $data->{'firstname'},
                                                        surname => 
$data->{'surname'},
-                                                       bornum => $bornum,
-                                                       loop_pay => 
address@hidden,
-                                                       total => 
sprintf("%.2f",$total));
+        borrowernumber => $borrowernumber,
+        total          => sprintf( "%.2f", $total )
+    );
        print "Content-Type: text/html\n\n", $template->output;
 
-} else {
-#  my $quety=$input->query_string;
-#  print $input->redirect("/cgi-bin/koha/sec/writeoff.pl?$quety");
-       my%inp;
-       my @name=$input->param;
-       for (my $i=0;$i<@name;$i++){
-               my $test=$input->param($name[$i]);
-               if ($test eq 'wo'){
-               my $temp=$name[$i];
-               $temp=~ s/payfine//;
-               $inp{$name[$i]}=$temp;
-               }
-       }
-       my $bornum;
-       while ( my ($key, $value) = each %inp){
-               #  print $key,$value;
-               my $accounttype=$input->param("accounttype$value");
-               $bornum=$input->param("bornum$value");
-               my $itemno=$input->param("itemnumber$value");
-               my $amount=$input->param("amount$value");
-               my $accountno=$input->param("accountno$value");
-               writeoff($bornum,$accountno,$itemno,$accounttype,$amount);
-       }
-       $bornum=$input->param('bornum');
-       print 
$input->redirect("/cgi-bin/koha/members/moremember.pl?bornum=$bornum");
 }
+else {
 
+    my %inp;
+    my @name = $input->param;
+    for ( my $i = 0 ; $i < @name ; $i++ ) {
+        my $test = $input->param( $name[$i] );
+        if ( $test eq 'wo' ) {
+            my $temp = $name[$i];
+            $temp =~ s/payfine//;
+            $inp{ $name[$i] } = $temp;
+        }
+    }
+    my $borrowernumber;
+    while ( my ( $key, $value ) = each %inp ) {
+
+        my $accounttype = $input->param("accounttype$value");
+        $borrowernumber = $input->param("borrowernumber$value");
+        my $itemno    = $input->param("itemnumber$value");
+        my $amount    = $input->param("amount$value");
+        my $accountno = $input->param("accountno$value");
+        writeoff( $borrowernumber, $accountno, $itemno, $accounttype, $amount 
);
+    }
+    $borrowernumber = $input->param('borrowernumber');
+    print $input->redirect(
+        "/cgi-bin/koha/members/moremember.pl?borrowernumber=$borrowernumber");
+}
 
-sub writeoff{
-       my ($bornum,$accountnum,$itemnum,$accounttype,$amount)address@hidden;
-       my $user=$input->remote_user;
+sub writeoff {
+    my ( $borrowernumber, $accountnum, $itemnum, $accounttype, $amount ) = @_;
+    my $user = $input->remote_user;
        my $dbh = C4::Context->dbh;
        my $env;
-       my $sth=$dbh->prepare("Update accountlines set amountoutstanding=0 
where accounttype='Res' and accountno=? and borrowernumber=?");
-        $sth->execute($accountnum,$bornum);
+    my $sth =
+      $dbh->prepare(
+"Update accountlines set amountoutstanding=0 where (accounttype='Res' OR 
accounttype='FU' OR accounttype ='IP' OR accounttype='CH' OR accounttype='N' OR 
accounttype='F' OR accounttype='A' OR accounttype='M' OR accounttype='L' OR 
accounttype='RE' OR accounttype='RL') and accountno=? and borrowernumber=?"
+      );
+    $sth->execute( $accountnum, $borrowernumber );
        $sth->finish;
-       $sth=$dbh->prepare("select max(accountno) from accountlines");
+    $sth = $dbh->prepare("select max(accountno) from accountlines");
        $sth->execute;
-       my $account=$sth->fetchrow_hashref;
+    my $account = $sth->fetchrow_hashref;
        $sth->finish;
        $account->{'max(accountno)'}++;
-       $sth=$dbh->prepare("insert into accountlines 
(borrowernumber,accountno,itemnumber,date,amount,description,accounttype)
-                                               values 
(?,?,?,now(),?,'Writeoff','W')");
-       $sth->execute($bornum,$account->{'max(accountno)'},$itemnum,$amount);
+    $sth = $dbh->prepare(
+"insert into accountlines 
(borrowernumber,accountno,itemnumber,date,amount,description,accounttype)
+                                               values 
(?,?,?,now(),?,'Writeoff','W')"
+    );
+    $sth->execute( $borrowernumber, $account->{'max(accountno)'},
+        $itemnum, $amount );
        $sth->finish;
-       UpdateStats($env,$branch,'writeoff',$amount,'','','',$bornum);
+    UpdateStats( $env, $branch, 'writeoff', $amount, '', '', '',
+        $borrowernumber );
 }
-
-# Local Variables:
-# tab-width: 4
-# End:

Index: readingrec.pl
===================================================================
RCS file: /sources/koha/koha/members/readingrec.pl,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- readingrec.pl       7 Jun 2006 02:33:09 -0000       1.2
+++ readingrec.pl       9 Mar 2007 14:56:55 -0000       1.3
@@ -26,14 +26,14 @@
 use C4::Interface::CGI::Output;
 use CGI;
 use C4::Members;
-use HTML::Template;
+
 use C4::Date;
 my $input=new CGI;
 
 
-my $bornum=$input->param('bornum');
+my $borrowernumber=$input->param('borrowernumber');
 #get borrower details
-my $data=borrdata('',$bornum);
+my $data=borrdata('',$borrowernumber);
 my $order=$input->param('order');
 my $order2=$order;
 if ($order2 eq ''){
@@ -49,7 +49,7 @@
 else {
   $limit=50;
 }
-my ($count,$issues)=allissues($bornum,$order2,$limit);
+my ($count,$issues)=allissues($borrowernumber,$order2,$limit);
 
 my ($template, $loggedinuser, $cookie)
 = get_template_and_user({template_name => "members/readingrec.tmpl",
@@ -82,7 +82,7 @@
                                                title => $data->{'title'},
                                                initials => $data->{'initials'},
                                                surname => $data->{'surname'},
-                                               bornum => $bornum,
+                                               borrowernumber => 
$borrowernumber,
                                                limit => $limit,
                                                firstname => 
$data->{'firstname'},
                                                cardnumber => 
$data->{'cardnumber'},

Index: setdebar.pl
===================================================================
RCS file: /sources/koha/koha/members/setdebar.pl,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- setdebar.pl 4 Jul 2006 14:36:52 -0000       1.3
+++ setdebar.pl 9 Mar 2007 14:56:55 -0000       1.4
@@ -1,10 +1,5 @@
 #!/usr/bin/perl
 
-#script to set or lift debarred status
-#written 2/8/04
-#by address@hidden
-
-
 # Copyright 2000-2002 Katipo Communications
 #
 # This file is part of Koha.
@@ -22,32 +17,45 @@
 # Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
 # Suite 330, Boston, MA  02111-1307 USA
 
+# $Id: setdebar.pl,v 1.4 2007/03/09 14:56:55 tipaul Exp $
+
+=head1 setdebar.pl
+
+script to set or lift debarred status
+written 2/8/04
+by address@hidden
+
+=cut
+
 use strict;
 
 use CGI;
 use C4::Context;
 use C4::Auth;
 
-
 my $input = new CGI;
 
 my $flagsrequired;
-$flagsrequired->{borrower}=1;
-my ($loggedinuser, $cookie, $sessionID) = checkauth($input, 0, $flagsrequired);
+$flagsrequired->{borrowers} = 1;
+my ( $loggedinuser, $cookie, $sessionID ) =
+  checkauth( $input, 0, $flagsrequired );
 
 my $destination = $input->param("destination");
 my $cardnumber = $input->param("cardnumber");
-my $borrowernumber=$input->param('borrowernumber');
+my $borrowernumber = $input->param('borrowernumber');
 my $status = $input->param('status');
 
 my $dbh = C4::Context->dbh;
-my $sth=$dbh->prepare("Update borrowers set debarred = ? where borrowernumber 
= ?");
-$sth->execute($status,$borrowernumber);
-my $data=$sth->fetchrow_hashref;
+my $sth =
+  $dbh->prepare("Update borrowers set debarred = ? where borrowernumber = ?");
+$sth->execute( $status, $borrowernumber );
 $sth->finish;
 
-if($destination eq "circ"){
-       print 
$input->redirect("/cgi-bin/koha/circ/circulation.pl?findborrower=$cardnumber");
-} else {
-       print 
$input->redirect("/cgi-bin/koha/members/moremember.pl?bornum=$borrowernumber");
+if ( $destination eq "circ" ) {
+    print $input->redirect(
+        "/cgi-bin/koha/circ/circulation.pl?findborrower=".$cardnumber);
+}
+else {
+    print $input->redirect(
+        "/cgi-bin/koha/members/moremember.pl?borrowernumber=$borrowernumber");
 }




reply via email to

[Prev in Thread] Current Thread [Next in Thread]