This patch adds the option to download records from the cart, and
lists in the ISBD format from the OPAC.
To test (cart):
- Apply the patch
- Add several records to your OPAC cart.
- Go to your cart, and choose 'Download'
=> SUCCESS: There's an ISBD option
- Dowload and open the exported records
=> SUCCESS: The file contains the ISBD format for the records on the cart
To test (lists):
- Add several records to a list (i did it from the cart ;-))
- Open the list
- Choose 'Download list'
=> SUCCESS: There's an ISBD option
- Download and open the exported records
=> SUCCESS: The file contains the ISBD format for the records on the list.
- Sign off :-D
Sponsored-by: Orex Digital
---
.../opac-tmpl/bootstrap/en/modules/opac-downloadcart.tt | 1 +
.../opac-tmpl/bootstrap/en/modules/opac-downloadshelf.tt | 1 +
opac/opac-downloadcart.pl | 16 ++++++++++++----
opac/opac-downloadshelf.pl | 14 +++++++++++---
4 files changed, 25 insertions(+), 7 deletions(-)
diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-downloadcart.tt
b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-downloadcart.tt
index 8536c46..9f1f65d 100644
--- a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-downloadcart.tt
+++ b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-downloadcart.tt
@@ -14,6 +14,7 @@
<option value="">-- Choose format --</option>
<option value="ris">RIS (Zotero, EndNote,
others)</option>
<option value="bibtex">BibTeX</option>
+ <option value="isbd">ISBD</option>
<option value="iso2709">MARC</option>
[% FOREACH csv_profile IN csv_profiles %]
<option value="[%
csv_profile.export_format_id %]">CSV - [% csv_profile.profile %]</option>
diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-downloadshelf.tt
b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-downloadshelf.tt
index 128cec2..a9c53f9 100644
--- a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-downloadshelf.tt
+++ b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-downloadshelf.tt
@@ -53,6 +53,7 @@
<option value="">-- Choose format
--</option>
<option value="ris">RIS (Zotero,
EndNote, others)</option>
<option
value="bibtex">BibTeX</option>
+ <option value="isbd">ISBD</option>
<option
value="iso2709">MARC</option>
[% FOREACH csv_profile IN
csv_profiles %]
<option value="[%
csv_profile.export_format_id |html %]">CSV - [% csv_profile.profile |html
%]</option>
diff --git a/opac/opac-downloadcart.pl b/opac/opac-downloadcart.pl
index 98a7f3c..5164c2e 100755
--- a/opac/opac-downloadcart.pl
+++ b/opac/opac-downloadcart.pl
@@ -52,8 +52,10 @@ if ($bib_list && $format) {
my @bibs = split( /\//, $bib_list );
- my $marcflavour = C4::Context->preference('marcflavour');
+ my $marcflavour = C4::Context->preference('marcflavour');
my $output;
+ my $extension;
+ my $type;
# CSV
if ($format =~ /^\d+$/) {
@@ -76,6 +78,11 @@ if ($bib_list && $format) {
elsif ($format eq 'bibtex') {
$output .= marc2bibtex($record, $biblio);
}
+ elsif ( $format eq 'isbd' ) {
+ $output .= GetISBDView($biblio, "opac");
+ $extension = "txt";
+ $type = "text/plain";
+ }
}
}
@@ -83,9 +90,10 @@ if ($bib_list && $format) {
$format = "csv" if ($format =~ m/^\d+$/);
print $query->header(
- -type => 'application/octet-stream',
- -'Content-Transfer-Encoding' => 'binary',
- -attachment=>"cart.$format");
+ -type => ($type) ? $type :
'application/octet-stream',
+ -'Content-Transfer-Encoding' => 'binary',
+ -attachment => ($extension) ?
"cart.$format.$extension" : "cart.$format"
+ );
print $output;
} else {
diff --git a/opac/opac-downloadshelf.pl b/opac/opac-downloadshelf.pl
index 7a6b1dd..0230eba 100755
--- a/opac/opac-downloadshelf.pl
+++ b/opac/opac-downloadshelf.pl
@@ -57,6 +57,8 @@ if ( ShelfPossibleAction( (defined($borrowernumber) ?
$borrowernumber : -1), $sh
my ($items, $totitems) = GetShelfContents($shelfid);
my $marcflavour = C4::Context->preference('marcflavour');
my $output;
+ my $extension;
+ my $type;
# CSV
if ($format =~ /^\d+$/) {
@@ -83,6 +85,11 @@ if ( ShelfPossibleAction( (defined($borrowernumber) ?
$borrowernumber : -1), $sh
elsif ($format eq 'bibtex') {
$output .= marc2bibtex($record, $biblionumber);
}
+ elsif ( $format eq 'isbd' ) {
+ $output .= GetISBDView($biblionumber, "opac");
+ $extension = "txt";
+ $type = "text/plain";
+ }
}
}
@@ -90,9 +97,10 @@ if ( ShelfPossibleAction( (defined($borrowernumber) ?
$borrowernumber : -1), $sh
$format = "csv" if ($format =~ m/^\d+$/);
print $query->header(
- -type => 'application/octet-stream',
- -'Content-Transfer-Encoding' => 'binary',
- -attachment=>"shelf.$format");
+ -type => ($type) ? $type :
'application/octet-stream',
+ -'Content-Transfer-Encoding' => 'binary',
+ -attachment => ($extension) ?
"shelf.$format.$extension" : "shelf.$format"
+ );
print $output;
} else {
--
2.3.0
_______________________________________________
Koha-patches mailing list
[email protected]
http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-patches
website : http://www.koha-community.org/
git : http://git.koha-community.org/
bugs : http://bugs.koha-community.org/