use SL::BP;
use Data::Dumper;
+use List::Util qw(first);
1;
$form->get_lists(printers => 'ALL_PRINTERS');
# use the command stored in the databse or fall back to $myconfig{printer}
- my $selected_printer = (grep { $_->{id} eq $form->{printer} } @{ $form->{ALL_PRINTERS} })[0]->{'printer_command'} || $myconfig{printer};
+ my $selected_printer = first { $_ } map ({ $_ ->{printer_command} }
+ grep { $_->{id} eq $form->{printer} }
+ @{ $form->{ALL_PRINTERS} }),
+ $myconfig{printer};
if ($form->{callback}) {
map { $form->{callback} .= "&checked_$_=1" if $form->{"checked_$_"} }
$form->get_lists(printers=>"ALL_PRINTERS");
print qq|<select name="printer">|;
-print map(qq|<option value="$_->{id}">| . $form->quote_html($_->{printer_description}) . qq|</option>|, @{ $form->{ALL_PRINTERS} });
+print map(qq|<option value="$_->{id}">| . H($_->{printer_description}) . qq|</option>|, @{ $form->{ALL_PRINTERS} });
print qq|</select>|;
# }