3 # Koha library project www.koha-community.org
5 # Copyright 2007 Liblime
6 # Parts copyright 2010 BibLibre
8 # This file is part of Koha.
10 # Koha is free software; you can redistribute it and/or modify it
11 # under the terms of the GNU General Public License as published by
12 # the Free Software Foundation; either version 3 of the License, or
13 # (at your option) any later version.
15 # Koha is distributed in the hope that it will be useful, but
16 # WITHOUT ANY WARRANTY; without even the implied warranty of
17 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 # GNU General Public License for more details.
20 # You should have received a copy of the GNU General Public License
21 # along with Koha; if not, see <http://www.gnu.org/licenses>.
25 # standard or CPAN modules used
26 use CGI
qw(:standard -utf8);
39 my ( $template, $loggedinuser, $cookie ) = get_template_and_user
(
41 template_name
=> "catalogue/showmarc.tt",
45 flagsrequired
=> { catalogue
=> 1 },
50 my $biblionumber= $input->param('id');
51 my $importid= $input->param('importid');
52 my $view= $input->param('viewas')||'';
56 $record = C4
::ImportBatch
::GetRecordFromImportBiblio
( $importid, 'embed_items' );
59 $record =GetMarcBiblio
({ biblionumber
=> $biblionumber });
62 print $input->redirect("/cgi-bin/koha/errors/404.pl");
66 if($view eq 'card' || $view eq 'html') {
67 my $xml = $importid ?
$record->as_xml(): GetXmlBiblio
($biblionumber);
69 if ( $view eq 'card' ){
70 $xsl = C4
::Context
->preference('marcflavour') eq 'UNIMARC'
71 ?
'UNIMARC_compact.xsl' : 'compact.xsl';
74 $xsl = 'plainMARC.xsl';
76 my $htdocs = C4
::Context
->config('intrahtdocs');
77 my ($theme, $lang) = C4
::Templates
::themelanguage
($htdocs, $xsl, 'intranet', $input);
78 $xsl = "$htdocs/$theme/$lang/xslt/$xsl";
79 print $input->header(-charset
=> 'UTF-8'),
80 Encode
::encode_utf8
(C4
::XSLT
::engine
->transform($xml, $xsl));
83 $template->param( MARC_FORMATTED
=> $record->as_formatted );
84 output_html_with_http_headers
$input, $cookie, $template->output;