use File::Basename qw( dirname );
use Koha::DateUtils;
-my ( $stylesheet, $help, $split, $html, $csv, $ods, $delimiter, @letter_codes );
-
+my (
+ $stylesheet,
+ $help,
+ $split,
+ $html,
+ $csv,
+ $ods,
+ $delimiter,
+ @letter_codes,
+ $send,
+);
+
+$send = 1;
GetOptions(
'h|help' => \$help,
's|split' => \$split,
'ods' => \$ods,
'd|delimiter:s' => \$delimiter,
'letter_code:s' => \@letter_codes,
+ 'send!' => \$send,
) || pod2usage(1);
pod2usage(0) if $help;
(
grep { /^$letter_code$/ } @letter_codes
) ? $_ : ()
-} @all_messages;
+} @all_messages if @letter_codes;
exit unless @all_messages;
my ( $html_filenames, $csv_filenames, $ods_filenames );
});
}
- foreach my $message ( @$branch_messages ) {
- C4::Letters::_set_message_status(
- {
- message_id => $message->{'message_id'},
- status => 'sent'
- }
- );
+ if ( $send ) {
+ foreach my $message ( @$branch_messages ) {
+ C4::Letters::_set_message_status(
+ {
+ message_id => $message->{'message_id'},
+ status => 'sent'
+ }
+ );
+ }
}
push @filenames, $filename;
}
my $table = $doc->getTable(0);
my @headers;
- my ( $nb_rows, $nb_cols ) = ( scalar(@$messages), 0 );
+ my ( $nb_rows, $nb_cols, $i ) = ( scalar(@$messages), 0, 0 );
foreach my $message ( @$messages ) {
my @lines = split /\n/, $message->{content};
chomp for @lines;
$doc->cellValue( $row, $j, Encode::encode( 'UTF8', $header ) );
$j++;
}
+ $i = 1;
}
shift @lines; # remove headers
- my $i = 1;
for my $line ( @lines ) {
my @row_data = split $delimiter, $line;
my $row = $doc->getRow( $table, $i );
Define the output directory where the files will be generated.
+=item B<--send|--nosend>
+
+After files have been generated, messages status is changed from 'pending' to
+'sent'. This is the default action, without this parameter or with --send.
+Using --nosend, mesages status aren't changed.
+
=item B<-s|--split>
Split messages into separate file by borrower home library to OUTPUT_DIRECTORY/notices-CURRENT_DATE-BRANCHCODE.[csv|html|ods]