use C4::Output;
use C4::Biblio;
use CGI;
+use C4::Ris;
my $format=$query->param("format");
my $error = '';
if ($op eq "export") {
- my $biblionumber = $query->param("bib");
- if ($biblionumber){
+ my $biblionumber = $query->param("bib");
+ if ($biblionumber){
- my $marc = GetMarcBiblio($biblionumber, 1);
+ my $marc = GetMarcBiblio($biblionumber, 1);
- if ($format =~ /endnote/) {
- $marc = marc2endnote($marc);
- $format = 'endnote';
- }
- elsif ($format =~ /marcxml/) {
- $marc = marc2marcxml($marc);
- }
- elsif ($format=~ /mods/) {
- $marc = marc2modsxml($marc);
- }
- elsif ($format =~ /dc/) {
- ($error,$marc) = marc2dcxml($marc,1);
- $format = "dublin-core.xml";
- }
- elsif ($format =~ /marc8/) {
- $marc = changeEncoding($marc,"MARC","MARC21","MARC-8");
- $marc = $marc->as_usmarc();
- }
- elsif ($format =~ /utf8/) {
- C4::Charset::SetUTF8Flag($marc, 1);
- $marc = $marc->as_usmarc();
- }
+ if ($format =~ /endnote/) {
+ $marc = marc2endnote($marc);
+ $format = 'endnote';
+ }
+ elsif ($format =~ /marcxml/) {
+ $marc = marc2marcxml($marc);
+ $format = "marcxml";
+ }
+ elsif ($format=~ /mods/) {
+ $marc = marc2modsxml($marc);
+ $format = "mods";
+ }
+ elsif ($format =~ /ris/) {
+ $marc = marc2ris($marc);
+ $format = "ris";
+ }
+ elsif ($format =~ /bibtex/) {
+ $marc = marc2bibtex($marc);
+ $format = "bibtex";
+ }
+ elsif ($format =~ /dc/) {
+ ($error,$marc) = marc2dcxml($marc,1);
+ $format = "dublin-core.xml";
+ }
+ elsif ($format =~ /marc8/) {
+ $marc = changeEncoding($marc,"MARC","MARC21","MARC-8");
+ $marc = $marc->as_usmarc();
+ $format = "marc8";
+ }
+ elsif ($format =~ /utf8/) {
+ C4::Charset::SetUTF8Flag($marc, 1);
+ $marc = $marc->as_usmarc();
+ $format = "utf8";
+ }
elsif ($format =~ /marcstd/) {
C4::Charset::SetUTF8Flag($marc,1);
($error, $marc) = marc2marc($marc, 'marcstd', C4::Context->preference('marcflavour'));
+ $format = "marcstd";
}
- print $query->header(
- -type => 'application/octet-stream',
+ print $query->header(
+ -type => 'application/octet-stream',
-attachment=>"bib-$biblionumber.$format");
- print $marc;
- }
+ print $marc;
+ }
}