[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Koha-cvs] CVS: koha/members memberentry.pl,1.1,1.2 member-password.pl,1
From: |
Paul POULAIN |
Subject: |
[Koha-cvs] CVS: koha/members memberentry.pl,1.1,1.2 member-password.pl,1.1,1.2 |
Date: |
Wed, 24 Mar 2004 07:08:22 -0800 |
Update of /cvsroot/koha/koha/members
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15099/members
Modified Files:
memberentry.pl member-password.pl
Log Message:
css'ing & merging members management.
memberentry merges
* memberentry, moremember & insertdata (form, validation & storing)
* and the I series (Institution management)
Index: memberentry.pl
===================================================================
RCS file: /cvsroot/koha/koha/members/memberentry.pl,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -r1.1 -r1.2
*** memberentry.pl 10 Mar 2004 15:13:45 -0000 1.1
--- memberentry.pl 24 Mar 2004 15:08:19 -0000 1.2
***************
*** 38,44 ****
--- 38,47 ----
use Date::Manip;
use C4::Date;
+ use C4::Input;
my $input = new CGI;
+ my $dbh = C4::Context->dbh;
+
my ($template, $loggedinuser, $cookie)
= get_template_and_user({template_name => "members/memberentry.tmpl",
***************
*** 51,71 ****
my $member=$input->param('bornum');
! # if ($member eq ''){
! # $member=NewBorrowerNumber();
! # }
! my $type=$input->param('type') || '';
my $modify=$input->param('modify');
my $delete=$input->param('delete');
if ($delete){
print $input->redirect("/cgi-bin/koha/deletemem.pl?member=$member");
} else { # this else goes down the whole script
! if ($type eq 'Add'){
$template->param( addAction => 1);
} else {
$template->param( addAction =>0);
}
!
! my $data=borrdata('',$member);
! if ($type eq 'Add'){
$template->param( updtype => 'I');
} else {
--- 54,198 ----
my $member=$input->param('bornum');
! my $actionType=$input->param('actionType') || '';
my $modify=$input->param('modify');
my $delete=$input->param('delete');
+ my $op=$input->param('op');
+ my $categorycode=$input->param('categorycode');
+
+ my $nok;
+ # if a add or modify is requested => check validity of data.
+ if ($op eq 'add' or $op eq 'modify') {
+ my %data;
+ my @names=$input->param;
+ foreach my $key (@names){
+ $data{$key}=$input->param($key);
+ $data{$key}=~ s/\'/\\\'/g;
+ $data{$key}=~ s/\"/\\\"/g;
+ }
+ my @errors;
+ if ($data{'cardnumber'} eq ''){
+ push @errors,"ERROR_cardnumber";
+ $nok=1;
+ } else {
+ #check cardnumber is valid
+ my $nounique;
+ if ( $data{'actionType'} eq "Add" ) {
+ $nounique = 0;
+ } else {
+ $nounique = 1;
+ }
+ my $valid=checkdigit('',$data{'cardnumber'}, $nounique);
+ if ($valid != 1){
+ $nok=1;
+ push @errors, "ERROR_invalid_cardnumber";
+ }
+ }
+ if ($data{'sex'} eq '' && $categorycode ne "I"){
+ push @errors, "ERROR_gender";
+ $nok=1;
+ }
+ if ($data{'firstname'} eq '' && $categorycode ne "I"){
+ push @errors,"ERROR_firstname";
+ $nok=1;
+ }
+ if ($data{'surname'} eq ''){
+ push @errors,"ERROR_surname";
+ $nok=1;
+ }
+ if ($data{'address'} eq ''){
+ push @errors, "ERROR_address";
+ $nok=1;
+ }
+ if ($data{'city'} eq ''){
+ push @errors, "ERROR_city";
+ $nok=1;
+ }
+ if ($nok) {
+ foreach my $error (@errors) {
+ $template->param( $error => 1);
+ }
+ $template->param(nok => 1);
+ } else {
+ my $query="Select * from borrowers where borrowernumber=?";
+ my $sth=$dbh->prepare($query);
+ $sth->execute($data{'borrowernumber'});
+ if (my $data2=$sth->fetchrow_hashref){
+
$data{'dateofbirth'}=format_date_in_iso($data{'dateofbirth'});
+ $data{'joining'}=format_date_in_iso($data{'joining'});
+ $data{'expiry'}=format_date_in_iso($data{'expiry'});
+ $query="update borrowers set
title='$data{'title'}',expiry='$data{'expiry'}',
+
cardnumber='$data{'cardnumber'}',sex='$data{'sex'}',ethnotes='$data{'ethnicnotes'}',
+
streetaddress='$data{'address'}',faxnumber='$data{'faxnumber'}',firstname='$data{'firstname'}',
+
altnotes='$data{'altnotes'}',dateofbirth='$data{'dateofbirth'}',contactname='$data{'contactname'}',
+
emailaddress='$data{'emailaddress'}',dateenrolled='$data{'joining'}',streetcity='$data{'streetcity'}',
+
altrelationship='$data{'altrelationship'}',othernames='$data{'othernames'}',phoneday='$data{'phoneday'}',
+
categorycode='$data{'categorycode'}',city='$data{'city'}',area='$data{'area'}',phone='$data{'phone'}',
+
borrowernotes='$data{'borrowernotes'}',altphone='$data{'altphone'}',surname='$data{'surname'}',
+
initials='$data{'initials'}',physstreet='$data{'streetaddress'}',ethnicity='$data{'ethnicity'}',
+
gonenoaddress='$data{'gna'}',lost='$data{'lost'}',debarred='$data{'debarred'}',
+ textmessaging='$data{'textmessaging'}', branchcode =
'$data{'branchcode'}',
+ zipcode =
'$data{'zipcode'}',homezipcode='$data{'homezipcode'}'
+ where borrowernumber=$data{'borrowernumber'}";
+ }else{
+
$data{'dateofbirth'}=format_date_in_iso($data{'dateofbirth'});
+ $data{'joining'}=format_date_in_iso($data{'joining'});
+ $data{'expiry'}=format_date_in_iso($data{'expiry'});
+ $data{'borrowernumber'}=NewBorrowerNumber();
+ $query="insert into borrowers
(title,expiry,cardnumber,sex,ethnotes,streetaddress,faxnumber,
+
firstname,altnotes,dateofbirth,contactname,emailaddress,textmessaging,dateenrolled,streetcity,
+
altrelationship,othernames,phoneday,categorycode,city,area,phone,borrowernotes,altphone,surname,
+
initials,ethnicity,physstreet,branchcode,zipcode,homezipcode) values
('$data{'title'}','$data{'expiry'}','$data{'cardnumber'}',
+
'$data{'sex'}','$data{'ethnotes'}','$data{'address'}','$data{'faxnumber'}',
+
'$data{'firstname'}','$data{'altnotes'}','$data{'dateofbirth'}','$data{'contactname'}','$data{'emailaddress'}','$data{'textmessaging'}',
+
'$data{'joining'}','$data{'streetcity'}','$data{'altrelationship'}','$data{'othernames'}',
+
'$data{'phoneday'}','$data{'categorycode'}','$data{'city'}','$data{'area'}','$data{'phone'}',
+
'$data{'borrowernotes'}','$data{'altphone'}','$data{'surname'}','$data{'initials'}',
+
'$data{'ethnicity'}','$data{'streetaddress'}','$data{'branchcode'}','$data{'zipcode'}','$data{'homezipcode'}')";
+ }
+ # ok if its an adult (type) it may have borrowers that depend
on it as a guarantor
+ # so when we update information for an adult we should check
for guarantees and update the relevant part
+ # of their records, ie addresses and phone numbers
+ if ($data{'categorycode'} eq 'A' || $data{'categorycode'} eq
'W'){
+ # is adult check guarantees;
+ my
($count,$guarantees)=findguarantees($data{'borrowernumber'});
+ for (my $i=0;$i<$count;$i++){
+ # 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 $guaquery="update borrowers set
streetaddress='$data{'address'}',faxnumber='$data{'faxnumber'}',
+
streetcity='$data{'streetcity'}',phoneday='$data{'phoneday'}',city='$data{'city'}',area='$data{'area'}',phone='$data{'phone'}'
+ ,streetaddress='$data{'address'}'
+ where
borrowernumber='$guarantees->[$i]->{'borrowernumber'}'";
+ my $sth3=$dbh->prepare($guaquery);
+ $sth3->execute;
+ $sth3->finish;
+ }
+ }
+ my $sth2=$dbh->prepare($query);
+ $sth2->execute;
+ $sth2->finish;
+ $sth->finish;
+ print
$input->redirect("/cgi-bin/koha/members/moremember.pl?bornum=$data{'borrowernumber'}");
}
+ }
if ($delete){
print $input->redirect("/cgi-bin/koha/deletemem.pl?member=$member");
} else { # this else goes down the whole script
! if ($actionType eq 'Add'){
$template->param( addAction => 1);
} else {
$template->param( addAction =>0);
}
! # retrieve previous values : either in DB or in CGI, in case of errors
in values
! my $data;
! if ($nok) {
! my @names=$input->param;
! foreach my $key (@names){
! $data->{$key}=$input->param($key);
! }
! } else {
! $data=borrdata('',$member);
! }
! if ($actionType eq 'Add'){
$template->param( updtype => 'I');
} else {
***************
*** 152,156 ****
-multiple => 0 );
! $template->param( type => $type,
member => $member,
address => $data->{'streetaddress'},
--- 279,283 ----
-multiple => 0 );
! $template->param( actionType => $actionType,
member => $member,
address => $data->{'streetaddress'},
***************
*** 185,188 ****
--- 312,316 ----
modify => $modify,
CGIbranch => $CGIbranch);
+ $template->param(Institution => 1) if ($categorycode eq "I");
output_html_with_http_headers $input, $cookie, $template->output;
Index: member-password.pl
===================================================================
RCS file: /cvsroot/koha/koha/members/member-password.pl,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -r1.1 -r1.2
*** member-password.pl 10 Mar 2004 15:13:45 -0000 1.1
--- member-password.pl 24 Mar 2004 15:08:20 -0000 1.2
***************
*** 70,77 ****
#Everything is good so we can update the information.
my $sth=$dbh->prepare("update borrowers set userid=?,
password=? where borrowernumber=?");
! $sth->execute($uid, $digest, $member);
$template->param(newpassword => $newpassword);
}
-
} else {
my $userid = $bor->{'userid'};
--- 70,77 ----
#Everything is good so we can update the information.
my $sth=$dbh->prepare("update borrowers set userid=?,
password=? where borrowernumber=?");
! $sth->execute($uid, $digest, $member);
$template->param(newpassword => $newpassword);
+ print
$input->redirect("/cgi-bin/koha/members/moremember.pl?bornum=$member");
}
} else {
my $userid = $bor->{'userid'};
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Koha-cvs] CVS: koha/members memberentry.pl,1.1,1.2 member-password.pl,1.1,1.2,
Paul POULAIN <=