# must avoid biblioitems.* to prevent large marc and marcxml fields from killing performance
# FIXME: namespace collision: each table has "timestamp" fields. Which one is "timestamp" ?
# FIXME: circ/ciculation.pl tries to sort by timestamp!
- # FIXME: C4::Print::printslip tries to sort by timestamp!
# FIXME: namespace collision: other collisions possible.
# FIXME: most of this data isn't really being used by callers.
my $query =
$VERSION = 3.01;
require Exporter;
@ISA = qw(Exporter);
- @EXPORT = qw(&printslip);
+ @EXPORT = qw(&NetworkPrint);
}
=head1 NAME
=head1 FUNCTIONS
-=cut
-
-=for comment
- my $slip = <<"EOF";
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-Date: $todaysdate;
-
-ITEM RESERVED:
-$itemdata->{'title'} ($itemdata->{'author'})
-barcode: $itemdata->{'barcode'}
-
-COLLECT AT: $branchname
-
-BORROWER:
-$bordata->{'surname'}, $bordata->{'firstname'}
-card number: $bordata->{'cardnumber'}
-Phone: $bordata->{'phone'}
-$bordata->{'streetaddress'}
-$bordata->{'suburb'}
-$bordata->{'town'}
-$bordata->{'emailaddress'}
+=head2 NetworkPrint
+ &NetworkPrint($text)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-EOF
-=cut
-
-=head2 printslip
-
- &printslip($slip)
-
-print a slip for the given $borrowernumber and $branchcode
+Queue some text for printing on the selected branch printer
=cut
-sub printslip ($) {
- my ($slip) = @_;
-
- return unless ( C4::Context->boolean_preference('printcirculationslips') );
+sub NetworkPrint {
+ my ($text) = @_;
# FIXME - It'd be nifty if this could generate pretty PostScript.
# print $queue;
#open (FILE,">/tmp/$file");
- print PRINTER $slip;
+ print PRINTER $text;
print PRINTER "\r\n" x 7 ;
close PRINTER;
use warnings;
use CGI;
use C4::Output;
+use C4::Print;
use C4::Auth qw/:DEFAULT get_session/;
use C4::Dates qw/format_date/;
use C4::Branch; # GetBranches
}
if ( $print eq 'yes' && $borrowernumber ne '' ) {
- PrintIssueSlip($session->param('branch') || $branch, $borrowernumber);
+ if ( C4::Context->boolean_preference('printcirculationslips') ) {
+ my $letter = IssueSlip($branch, $borrowernumber, "QUICK");
+ NetworkPrint($letter->{content});
+ }
$query->param( 'borrowernumber', '' );
$borrowernumber = '';
}
sub methods : Test( 1 ) {
my $self = shift;
- my @methods = qw( printslip );
+ my @methods = qw( NetworkPrint );
can_ok( $self->testing_class, @methods );
}