Bug 9665: add RIS and BIBTEXT bibliographic record export to staff interface
authorOwen Leonard <oleonard@myacpl.org>
Fri, 31 May 2013 15:03:56 +0000 (11:03 -0400)
committerGalen Charlton <gmc@esilibrary.com>
Mon, 17 Jun 2013 18:24:31 +0000 (11:24 -0700)
The OPAC offers RIS and BIBTEX as choices for bibliographic downloads,
but the staff client was missing these options. This patch adds them.

To test, view a record in the staff client (detail.pl, MARCdetail.pl,
etc.) and click the "Save..." toolbar button. BIBTEX and RIS should be
available and functional.

Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
catalogue/export.pl
koha-tmpl/intranet-tmpl/prog/en/includes/cat-toolbar.inc

index 26e189b..935dd6b 100755 (executable)
@@ -7,6 +7,7 @@ use C4::Auth;
 use C4::Output;
 use C4::Biblio;
 use CGI;
+use C4::Ris;
 
 
 
@@ -35,10 +36,20 @@ if ($op eq "export") {
                        }
                        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";
@@ -46,14 +57,17 @@ if ($op eq "export") {
                        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',
index f669d2c..3683ac9 100644 (file)
@@ -173,13 +173,14 @@ CAN_user_serials_create_subscription ) %]
     <div class="btn-group">
     <button class="btn btn-small dropdown-toggle" data-toggle="dropdown"><i class="icon-download-alt"></i> Save <span class="caret"></span></button>
     <ul class="dropdown-menu">
-        <li><a href="/cgi-bin/koha/catalogue/export.pl?format=mods&amp;op=export&amp;bib=[% biblionumber %]">MODS (XML)</a></li>
-        <li><a href="/cgi-bin/koha/catalogue/export.pl?format=dc&amp;op=export&amp;bib=[% biblionumber %]
-">Dublic Core (XML)</a></li>
+        <li><a href="/cgi-bin/koha/catalogue/export.pl?format=bibtex&amp;op=export&amp;bib=[% biblionumber %]">BIBTEX</a></li>
+        <li><a href="/cgi-bin/koha/catalogue/export.pl?format=dc&amp;op=export&amp;bib=[% biblionumber %]">Dublin Core (XML)</a></li>
         <li><a href="/cgi-bin/koha/catalogue/export.pl?format=marcxml&amp;op=export&amp;bib=[% biblionumber %]">MARCXML</a></li>
         <li><a href="/cgi-bin/koha/catalogue/export.pl?format=marc8&amp;op=export&amp;bib=[% biblionumber %]">MARC (non-Unicode/MARC-8)</a></li>
-        <li><a href="/cgi-bin/koha/catalogue/export.pl?format=utf8&amp;op=export&amp;bib=[% biblionumber %]">MARC (Unicode/UTF-8</a></li>
+        <li><a href="/cgi-bin/koha/catalogue/export.pl?format=utf8&amp;op=export&amp;bib=[% biblionumber %]">MARC (Unicode/UTF-8)</a></li>
         <li><a href="/cgi-bin/koha/catalogue/export.pl?format=marcstd&amp;op=export&amp;bib=[% biblionumber %]">MARC (Unicode/UTF-8, Standard)</a></li>
+        <li><a href="/cgi-bin/koha/catalogue/export.pl?format=mods&amp;op=export&amp;bib=[% biblionumber %]">MODS (XML)</a></li>
+        <li><a href="/cgi-bin/koha/catalogue/export.pl?format=ris&amp;op=export&amp;bib=[% biblionumber %]">RIS</a></li>
     </ul>
     </div>