#!/usr/bin/perl

#use utf8;
use strict;
use CGI;

use Opals::Context;#use MARC::File::USMARC;

use HTML::Template;

use LWP::Simple;
my $dbh = Opals::Context->dbh();
END { $dbh->disconnect(); }


my $cgi = CGI->new;
my $input   = $cgi->Vars();
my $bc=$input->{"bc"};
my $size=$input->{"size"};
my $filename ="dymoLbl25x38.tmpl";
$filename ="dymoLbl25x25.tmpl" if($size && $size eq '25x25');

   my $rootDir       = Opals::Context->config('rootDir');
   print "Content-Type:application/x-download\n";
   print "Content-Disposition:attachment;filename=$bc.label\n\n";     
   my $template = HTML::Template->new(    
                #filename            => "dymoLbl25x38.tmpl",
                filename            => $filename,
                path                => "$rootDir/htdocs/theme/opals/util/",
                global_vars         => 1,
                die_on_bad_params   => 0,
                cache               => 1,
                shared_cache        => 0,
                loop_context_vars   => 1,);

     my $spine=getCallNumber($dbh,$bc);
    $template->param(spine=>$spine);

    print $template->output;

sub getCallNumber{
    my ($dbh,$bc)=@_;
    my $spine="";
    my $sth=$dbh->prepare("select callNumber from opl_item where barcode=?");
    $sth->execute($bc);
    if(($spine) =$sth->fetchrow_array){
        $spine =~ s/^([a-zA-Z]*)(.*)/$1 $2/g;
        $spine =~ s/[\s]+/\n/g    
    }
    $sth->finish;
    return $spine;
}
