From 09a227e7e9a6cb19dd1909acbe4b7b19d95c1a7e Mon Sep 17 00:00:00 2001 From: Edmund Balnaves Date: Mon, 15 Apr 2013 11:08:06 +1000 Subject: [PATCH] Bug 8264 - local cover images not working in IE8 [ prog ] [Patch submitted by David Cook] Edmund, rather than myself, was the author of this patch, so I'm not entirely sure about his code choices, but...it looks like IE must process images differently than other browsers. It seems to me that the images are not appearing in IE, because they're being regarded as incomplete or having 0/NULL natural width. This patch simply introduces a try/catch hack where it tries to add the image and remove any "no-image" elements even nwhen the image is considered incomplete/width of 0/NULL. It won't do this if it catches any errors, although I'm not sure that any errors would be caught with this set up anyway... It's certainly not the ideal solution, but it's a solution. To Test: Before applying the patch: 1) Use IE and FF/Chrome/other browser to view a record with local images attached 2) Note that the local images appear in FF/Chrome/other, but not in IE Apply patch. After applying the patch: 1) Repeat step 1 from above 2) Note that the local images now appear in all browsers as they should. -- As I mentioned before, this seems like a real suboptimal solution. Any ideas on why IE might be considering local images to be incomplete or having 0/NULL natural width? Signed-off-by: David Cook Signed-off-by: Kyle M Hall Signed-off-by: Katrin Fischer I did a regression test using Chromium and Firefox in Ubuntu. I checked both prog and CCSR - covers displayed nicely. All tests and QA script pass. Signed-off-by: Jared Camins-Esakov Changed author of patch to reflect actual authorship. Signed-off-by: Chris Cormack --- koha-tmpl/intranet-tmpl/prog/en/js/localcovers.js | 7 +++++++ koha-tmpl/opac-tmpl/prog/en/js/localcovers.js | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/localcovers.js b/koha-tmpl/intranet-tmpl/prog/en/js/localcovers.js index 981af75e76..f044f62247 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/js/localcovers.js +++ b/koha-tmpl/intranet-tmpl/prog/en/js/localcovers.js @@ -28,6 +28,13 @@ KOHA.LocalCover = { '/cgi-bin/koha/catalogue/image.pl?thumbnail=1&biblionumber=' + $(mydiv).attr("class")) .load(function () { if (!this.complete || typeof this.naturalWidth == "undefined" || this.naturalWidth == 0) { + //IE HACK + try { + $(mydiv).append(img); + $(mydiv).children('.no-image').remove(); + } + catch(err){ + } } else { if (uselink) { var a = $("").attr('href', '/cgi-bin/koha/catalogue/imageviewer.pl?biblionumber=' + $(mydiv).attr("class")); diff --git a/koha-tmpl/opac-tmpl/prog/en/js/localcovers.js b/koha-tmpl/opac-tmpl/prog/en/js/localcovers.js index f2808ef6f9..6d247983bf 100644 --- a/koha-tmpl/opac-tmpl/prog/en/js/localcovers.js +++ b/koha-tmpl/opac-tmpl/prog/en/js/localcovers.js @@ -28,6 +28,13 @@ KOHA.LocalCover = { '/cgi-bin/koha/opac-image.pl?thumbnail=1&biblionumber=' + $(mydiv).attr("class")) .load(function () { if (!this.complete || typeof this.naturalWidth == "undefined" || this.naturalWidth == 0) { + //IE HACK + try { + $(mydiv).append(img); + $(mydiv).children('.no-image').remove(); + } + catch(err){ + }; } else { if (uselink) { var a = $("").attr('href', '/cgi-bin/koha/opac-imageviewer.pl?biblionumber=' + $(mydiv).attr("class")); -- 2.39.5