[Patches] [PATCH] Bug 1633: Don't show image tab when inappropriate

koha-patchbot at kohaaloha.com koha-patchbot at kohaaloha.com
Sat Dec 31 03:00:07 NZDT 2011


From: Jared Camins-Esakov <jcamins at cpbibliography.com>
Date: Tue, 13 Dec 2011 21:02:03 -0500
Subject: [PATCH] Bug 1633: Don't show image tab when inappropriate
Content-Type: text/plain; charset="UTF-8"

This patch corrects the bug spotted by Owen Leonard where the Images tab was
showing up even for records that didn't have local cover images attached to
them. The tab is now hidden on the OPAC for records that don't have any
images. In the Intranet, an Images tab will show for staff with permission
to upload images, suggesting that they do so. For staff without that
permission, the tab is not shown.

This permission also disables returning images via the opac-image.pl and
catalogue/image.pl scripts when local cover images have been disabled.
---
 catalogue/image.pl                                 |    2 ++
 .../prog/en/modules/catalogue/detail.tt            |    8 +++++++-
 koha-tmpl/opac-tmpl/prog/en/modules/opac-detail.tt |    2 +-
 opac/opac-image.pl                                 |    2 ++
 opac/opac-imageviewer.pl                           |    2 +-
 5 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/catalogue/image.pl b/catalogue/image.pl
index 17621d7..2af1246 100755
--- a/catalogue/image.pl
+++ b/catalogue/image.pl
@@ -55,6 +55,8 @@ imagenumber, a random image is selected.
 
 =cut
 
+error() unless C4::Context->preference("OPACLocalCoverImages");
+
 if (defined $data->param('imagenumber')) {
     $imagenumber = $data->param('imagenumber');
 } elsif (defined $data->param('biblionumber')) {
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt
index 06a5975..1038b48 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt
@@ -233,7 +233,7 @@ function verify_images() {
 [% IF ( subscriptionsnumber ) %]<li><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblionumber %]#subscriptions">Subscriptions</a></li>[% END %]
 [% IF ( FRBRizeEditions ) %][% IF ( XISBNS ) %]<li><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblionumber %]#editions">Editions</a></li>[% END %][% END %]
 [% IF ( AmazonSimilarItems ) %]<li><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblionumber %]#related">Related Titles</a></li>[% END %]
-[% IF ( LocalCoverImages ) %]<li><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblionumber %]#images">Images</a></li>[% END %]
+[% IF ( LocalCoverImages ) %][% IF ( localimages || CAN_user_tools_upload_local_cover_images ) %]<li><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblionumber %]#images">Images</a></li>[% END %][% END %]
  </ul>
 
 <div id="holdings">
@@ -524,12 +524,18 @@ function verify_images() {
 
 [% IF ( LocalCoverImages ) %]
 <div id="images">
+[% IF ( localimages ) %]
 <div>Click on an image to view it in the image viewer</div>
 [% FOREACH image IN localimages %]
 [% IF image %]
 <span class="localimage"><a href="/cgi-bin/koha/catalogue/imageviewer.pl?biblionumber=[% biblionumber %]&imagenumber=[% image %]"><img alt="img" src="/cgi-bin/koha/catalogue/image.pl?thumbnail=1&imagenumber=[% image %]" /></a></span>
 [% END %]
 [% END %]
+[% ELSE %]
+[% IF ( CAN_user_tools_upload_local_cover_images ) %]
+<p>No images have been uploaded for this bibliographic record yet. Please <a href='/cgi-bin/koha/tools/upload-cover-image.pl?biblionumber=[% biblionumber %]&filetype=image'>upload</a> one.</p>
+[% END %]
+[% END %]
 </div>
 [% END %]
 
diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/opac-detail.tt b/koha-tmpl/opac-tmpl/prog/en/modules/opac-detail.tt
index 7f52117..5574485 100755
--- a/koha-tmpl/opac-tmpl/prog/en/modules/opac-detail.tt
+++ b/koha-tmpl/opac-tmpl/prog/en/modules/opac-detail.tt
@@ -548,7 +548,7 @@ YAHOO.util.Event.onContentReady("furtherm", function () {
 		<a href="/cgi-bin/koha/opac-detail.pl?biblionumber=[% biblionumber %]#serialcollection">Serial Collection</a></li>
     [% END %]
 
-    [% IF ( OPACLocalCoverImages ) %]<li><a href="/cgi-bin/koha/opac-detail.pl?biblionumber=[% biblionumber %]#images">Images</a></li>[% END %]
+    [% IF ( OPACLocalCoverImages ) %][% IF ( localimages ) %]<li><a href="/cgi-bin/koha/opac-detail.pl?biblionumber=[% biblionumber %]#images">Images</a></li>[% END %][% END %]
 </ul>
 
 [% IF ( serialcollection ) %]
diff --git a/opac/opac-image.pl b/opac/opac-image.pl
index 444c127..eefd573 100755
--- a/opac/opac-image.pl
+++ b/opac/opac-image.pl
@@ -55,6 +55,8 @@ imagenumber, a random image is selected.
 
 =cut
 
+error() unless C4::Context->preference("OPACLocalCoverImages");
+
 if (defined $data->param('imagenumber')) {
     $imagenumber = $data->param('imagenumber');
 } elsif (defined $data->param('biblionumber')) {
diff --git a/opac/opac-imageviewer.pl b/opac/opac-imageviewer.pl
index e3bddb4..e806267 100755
--- a/opac/opac-imageviewer.pl
+++ b/opac/opac-imageviewer.pl
@@ -46,7 +46,7 @@ if (C4::Context->preference("OPACLocalCoverImages")) {
     $template->{VARS}->{'OPACLocalCoverImages'} = 1;
     $template->{VARS}->{'images'} = \@images;
     $template->{VARS}->{'biblionumber'} = $biblionumber;
-    $template->{VARS}->{'imagenumber'} = $images[0] || '';
+    $template->{VARS}->{'imagenumber'} = $imagenumber || $images[0] || '';
 }
 
 $template->{VARS}->{'biblio'} = $biblio;
-- 
1.7.2.5


More information about the Patches mailing list