return(1, $cardnumber, $local_userid);
}
} elsif ($config{replicate}) { # A2, C2
$borrowernumber = C4::Members::AddMember(%borrower) or die "AddMember failed";
Koha::Patron->new( \%borrower )->store;
C4::Members::Messaging::SetMessagingPreferencesFromDefaults( { borrowernumber => $borrowernumber, categorycode => $borrower{'categorycode'} } );
} else {
return 0; # B2, D2
);
# trim whitespace from data which has some non-whitespace in it.
foreach my $field_name (keys(%data)) {
if ( defined $data{$field_name} && $data{$field_name} =~ /\S/ ) {
$data{$field_name} =~ s/^\s*|\s*$//g;
my $p = Koha::Patron->new( { userid => $data{userid}, firstname => $data{firstname}, surname => $data{surname} } );
# generate a proper login if none provided
$data{'userid'} = $p->generate_userid
$self->cardnumber($max+1);
# Could be moved to Koha::Object if need to be reused
sub trim_whitespaces {
my( $self ) = @_;
my $schema = Koha::Database->new->schema;
my @columns = $schema->source('Borrowers')->columns;
for my $column( @columns ) {
my $value = $self->$column;
if ( defined $value ) {
$value =~ s/^\s*|\s*$//g;
$self->$column($value);
return $self;
sub store {
-