X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=tools%2Fmodborrowers.pl;h=5bd21033a4be0112f76ab24796c3e0b6e302e7ef;hb=fb4025b67b45e60154f67b9acca3d56e4f5eb7c5;hp=a2c27c6a02ad5dd3ff6a791d1fd9ce910810e490;hpb=b764c1ee81728ce5007b89e28b8703742d202375;p=koha_fer diff --git a/tools/modborrowers.pl b/tools/modborrowers.pl index a2c27c6a02..5bd21033a4 100755 --- a/tools/modborrowers.pl +++ b/tools/modborrowers.pl @@ -21,7 +21,7 @@ # # Batch Edit Patrons # Modification for patron's fields: -# surname firstname branchcode categorycode sort1 sort2 dateenrolled dateexpiry debarred debarredcomment borrowernotes +# surname firstname branchcode categorycode sort1 sort2 dateenrolled dateexpiry borrowernotes # And for patron attributes. use Modern::Perl; @@ -34,6 +34,7 @@ use C4::Members::Attributes; use C4::Members::AttributeTypes qw/GetAttributeTypes_hashref/; use C4::Output; use List::MoreUtils qw /any uniq/; +use Koha::List::Patron; my $input = new CGI; my $op = $input->param('op') || 'show_form'; @@ -50,12 +51,11 @@ my %cookies = parse CGI::Cookie($cookie); my $sessionID = $cookies{'CGISESSID'}->value; my $dbh = C4::Context->dbh; - - # Show borrower informations if ( $op eq 'show' ) { - my $filefh = $input->upload('uploadfile'); - my $filecontent = $input->param('filecontent'); + my $filefh = $input->upload('uploadfile'); + my $filecontent = $input->param('filecontent'); + my $patron_list_id = $input->param('patron_list_id'); my @borrowers; my @cardnumbers; my @notfoundcardnumbers; @@ -67,6 +67,13 @@ if ( $op eq 'show' ) { $content =~ s/[\r\n]*$//g; push @cardnumbers, $content if $content; } + } elsif ( $patron_list_id ) { + my ($list) = GetPatronLists( { patron_list_id => $patron_list_id } ); + + @cardnumbers = + $list->patron_list_patrons()->search_related('borrowernumber') + ->get_column('cardnumber')->all(); + } else { if ( my $list = $input->param('cardnumberlist') ) { push @cardnumbers, split( /\s\n/, $list ); @@ -206,18 +213,6 @@ if ( $op eq 'show' ) { } , { - name => "debarred", - type => "date", - mandatory => ( grep /debarred/, @mandatoryFields ) ? 1 : 0, - } - , - { - name => "debarredcomment", - type => "text", - mandatory => ( grep /debarredcomment/, @mandatoryFields ) ? 1 : 0, - } - , - { name => "borrowernotes", type => "text", mandatory => ( grep /borrowernotes/, @mandatoryFields ) ? 1 : 0, @@ -228,7 +223,6 @@ if ( $op eq 'show' ) { $template->param('patron_attributes_values', \@patron_attributes_values); $template->param( fields => \@fields ); - $template->param( DHTMLcalendar_dateformat => C4::Dates->DHTMLcalendar() ); } # Process modifications @@ -236,7 +230,7 @@ if ( $op eq 'do' ) { my @disabled = $input->param('disable_input'); my $infos; - for my $field ( qw/surname firstname branchcode categorycode sort1 sort2 dateenrolled dateexpiry debarred debarredcomment borrowernotes/ ) { + for my $field ( qw/surname firstname branchcode categorycode sort1 sort2 dateenrolled dateexpiry borrowernotes/ ) { my $value = $input->param($field); $infos->{$field} = $value if $value; $infos->{$field} = "" if grep { /^$field$/ } @disabled; @@ -315,6 +309,9 @@ if ( $op eq 'do' ) { $template->param( borrowers => \@borrowers ); $template->param( errors => \@errors ); +} else { + + $template->param( patron_lists => [ GetPatronLists() ] ); } $template->param( @@ -328,7 +325,7 @@ sub GetBorrowerInfos { my $borrower = GetMember( %info ); if ( $borrower ) { $borrower->{branchname} = GetBranchName( $borrower->{branchcode} ); - for ( qw(dateenrolled dateexpiry debarred) ) { + for ( qw(dateenrolled dateexpiry) ) { my $userdate = $borrower->{$_}; unless ($userdate && $userdate ne "0000-00-00" and $userdate ne "9999-12-31") { $borrower->{$_} = '';