[Koha-cvs] koha/members boraccount.pl borrowers_details.pl...
paul poulain
paul at koha-fr.org
Fri Mar 9 15:56:55 CET 2007
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 chris at katipo.oc.nz
#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 => \@accountrows );
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 chris at katipo.co.nz
@@ -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)=@_;
- 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/\"/"/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,\@orgs);
}
- 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 => \@select_branch,
-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 => \@relshipdata,
relationship => $data{'relationship'},
citypopup => $citypopup,
roadpopup => $roadpopup,
+ borrotitlepopup => $borrotitlepopup,
contacttype => $data{'contacttype'},
organisations => $data{'organisations'},
+ guarantorinfo => $guarantorinfo,
flagloop => \@flagdata,
# "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 chris at katipo.co.nz
@@ -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 chris at katipo.co.nz
-# last modified 21/1/2000 by chris at katipo.co.nz
-# modified 31/1/2001 by chris at katipo.co.nz
-# 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 chris at katipo.co.nz
+ last modified 21/1/2000 by chris at katipo.co.nz
+ modified 31/1/2001 by chris at katipo.co.nz
+ 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 => \@guaranteedata);
- ($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 => \@guaranteedata );
+ ( $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 => \@reservloop );
+
}
# 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 => \@issuedata,
unvalidlibrarian => $unvalidlibrarian,
- reserveloop => \@reservedata,
- intranetcolorstylesheet => C4::Context->preference("intranetcolorstylesheet"),
- intranetstylesheet => C4::Context->preference("intranetstylesheet"),
- IntranetNav => C4::Context->preference("IntranetNav"),
- patronimages => C4::Context->preference("patronimages"),
- );
+
+ # reserveloop => \@reservedata,
+);
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 chris at katipo.oc.nz
-# 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 chris at katipo.oc.nz
+ 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' => \@loop_pay,
+ 'notify' => $notify[$j],
+ 'total' => $totalnotify
+ };
}
- $template->param(firstname => $data->{'firstname'},
+
+ $template->param(
+ allfile => \@allfile,
+ firstname => $data->{'firstname'},
surname => $data->{'surname'},
- bornum => $bornum,
- loop_pay => \@loop_pay,
- 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)=@_;
- 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 oleonard at athenscounty.lib.oh.us
-
-
# 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 oleonard at athenscounty.lib.oh.us
+
+=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");
}
More information about the Koha-cvs
mailing list