[Koha-cvs] CVS: koha/C4 Members.pm,1.4,1.5

Paul POULAIN tipaul at users.sourceforge.net
Thu Sep 2 18:27:11 CEST 2004


Update of /cvsroot/koha/koha/C4
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5299/C4

Modified Files:
	Members.pm 
Log Message:
road to a better member management code.
Useful for LDAP integration


Index: Members.pm
===================================================================
RCS file: /cvsroot/koha/koha/C4/Members.pm,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -r1.4 -r1.5
*** Members.pm	30 Aug 2004 13:48:58 -0000	1.4
--- Members.pm	2 Sep 2004 16:27:09 -0000	1.5
***************
*** 50,54 ****
  
  @EXPORT = qw(
! 	&fixup_cardnumber &findguarantees &modmember &newmember
      );
  
--- 50,54 ----
  
  @EXPORT = qw(
! 	&fixup_cardnumber &findguarantees &modmember &newmember &changepassword
      );
  
***************
*** 106,119 ****
  	$sth->finish;
  	$data{borrowernumber} =$dbh->{'mysql_insertid'};
- 	# 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;
- 		updateguarantees(%data);
- 	}
  	return $data{borrowernumber};
  }
  
  sub updateguarantees {
  	my (%data) = @_;
--- 106,136 ----
  	$sth->finish;
  	$data{borrowernumber} =$dbh->{'mysql_insertid'};
  	return $data{borrowernumber};
  }
  
+ sub changepassword {
+ 	my ($uid,$member,$digest) = @_;
+ 	my $dbh = C4::Context->dbh;
+ 	#Make sure the userid chosen is unique and not theirs if non-empty. If it is not,
+ 	#Then we need to tell the user and have them create a new one.
+ 	my $sth=$dbh->prepare("select * from borrowers where userid=? and borrowernumber != ?");
+ 	$sth->execute($uid,$member);
+ 	if ( ($uid ne '') && ($sth->fetchrow) ) {
+ 		return 0;
+     } else {
+ 		#Everything is good so we can update the information.
+ 		$sth=$dbh->prepare("update borrowers set userid=?, password=? where borrowernumber=?");
+     		$sth->execute($uid, $digest, $member);
+ 		return 1;
+ 	}
+ }
+ 
+ sub getmemberfromuserid {
+ 	my ($userid) = @_;
+ 	my $dbh = C4::Context->dbh;
+ 	my $sth = $dbh->prepare("select * from borrowers where userid=?");
+ 	$sth->execute($userid);
+ 	return $sth->fetchrow_hashref;
+ }
  sub updateguarantees {
  	my (%data) = @_;





More information about the Koha-cvs mailing list