sub AddMember {
my (%data) = @_;
my $dbh = C4::Context->dbh;
- $data{'password'} = '!' if (not $data{'password'} and $data{'userid'});
+ $data{'userid'} = '' unless $data{'password'};
$data{'password'} = md5_base64( $data{'password'} ) if $data{'password'};
$data{'borrowernumber'}=InsertInTable("borrowers",\%data);
# mysql_insertid is probably bad. not necessarily accurate and mysql-specific at best.
do {
$firstname =~ s/[[:digit:][:space:][:blank:][:punct:][:cntrl:]]//g;
$surname =~ s/[[:digit:][:space:][:blank:][:punct:][:cntrl:]]//g;
- $newuid = lc("$firstname.$surname");
+ $newuid = lc(($firstname)? "$firstname.$surname" : $surname);
$newuid .= $offset unless $offset == 0;
$offset++;
sub checkcardnumber {
my ($cardnumber,$borrowernumber) = @_;
+ # If cardnumber is null, we assume they're allowed.
+ return 0 if !defined($cardnumber);
my $dbh = C4::Context->dbh;
my $query = "SELECT * FROM borrowers WHERE cardnumber=?";
$query .= " AND borrowernumber <> ?" if ($borrowernumber);