Bug 32908

Summary: Item type icons broken in the bibliographic record details page
Product: Koha Reporter: George Veranis <gveranis>
Component: Staff interfaceAssignee: George Veranis <gveranis>
Status: CLOSED FIXED QA Contact: Martin Renvoize <martin.renvoize>
Severity: normal    
Priority: P5 - low CC: a.roussos, fridolin.somers, gmcharlt, jonathan.druart, lucas, martin.renvoize, mik
Version: master   
Hardware: All   
OS: All   
URL: catalogue/detail.pl
See Also: https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24121
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=32909
Change sponsored?: --- Patch complexity: Trivial patch
Documentation contact: Documentation submission:
Text to go in the release notes:
Version(s) released in:
23.05.00,22.11.03
Bug Depends on: 31321    
Bug Blocks:    
Attachments: Staff_Interface-Bibliographic_record_details-Item_type_icon_BROKEN
Staff_Interface-Bibliographic_record_details-Item_type_icon_OK
Bug 32908: Load item type icons from the correct path
Bug 32908: Load item type icons from the correct path
Bug 32908: Load item type icons from the correct path

Description George Veranis 2023-02-08 12:09:33 UTC
Created attachment 146386 [details]
Staff_Interface-Bibliographic_record_details-Item_type_icon_BROKEN

In the Staff interface, the details page of a bibliographic
record should display the icon associated with the item
type of an item ('Item type' column in the 'Holdings' tab).

This feature broke in v22.11.00 and is still broken [*]
in the current master (539efac9aa), as the <img> tag for
the item type icon points to a path that begins with:
/opac-tmpl/bootstrap/itemtypeimg
instead of the correct path that begins with:
/intranet-tmpl/prog/img/itemtypeimg

So, instead of fetching the corresponding item type icon
you get a 404 in your web server logs and the default
'broken image URL' image in your web browser. I will
attach a couple of screenshots to demonstrate the problem.

`git bisect` tells me that the relevant commit is
b686bd65e19a6688ebda109a156ea31576559e4f from Bug 31321.

[*] Please note: the bug outlined above occurs on Debian
    package installations. Koha instances created using
    koha-testing-docker or the Koha Sandboxes seem to be
    unaffected. I believe this has to do with the values
    of the <intrahtdocs> and <opachtdocs> settings in
    koha-conf.xml, and the fact that Gitified instances
    served by Apache use the same DocumentRoot path in
    their VirtualHost directives for both the OPAC and
    the Staff interface.

    However, when trying to reproduce this bug on Koha
    instances created with methods other than a Debian
    package install, you can still observe that the item
    type icon URL is wrong by right-clicking on the
    icon and selecting 'Inspect' to see its properties.
Comment 1 George Veranis 2023-02-08 12:12:47 UTC
Created attachment 146387 [details]
Staff_Interface-Bibliographic_record_details-Item_type_icon_OK
Comment 2 George Veranis 2023-02-08 12:13:11 UTC
Steps to reproduce:

1) (if needed) Configure the following System preferences:
   - item-level_itypes => 'specific item'
   - noItemTypeImages  => 'Show'
2) (if needed) In Koha Administration > Item types, create 
   an item type and associate it with an icon
3) (if needed) Create a test bibliographic record, and add
   an item to it that has an item type with an icon

Then, visit the bibliographic record's details page in the
Staff interface. In the 'Item type' column of the 'Holdings'
tab, notice that instead of seeing the icon associated with
the item type of each item you get the default 'broken image
URL' image of your web browser.

[If you try the above in a Dockerised Koha instance the icon
will -most likely- be displayed just fine. However, you can
still verify that it's being loaded from the wrong path by
right-clicking on the icon and selecting 'Inspect'.]
Comment 3 George Veranis 2023-02-08 12:25:48 UTC
Created attachment 146388 [details] [review]
Bug 32908: Load item type icons from the correct path

In the Staff interface, the details page of a bibliographic
record should display the icon associated with the item
type of an item ('Item type' column in the 'Holdings' tab).

This feature broke in v22.11.00 (for Debian package installs):
instead of the item type icon you get the default 'broken
image URL' image of your web browser.

This patch fixes that.

Test plan:

1) (if needed) Configure the following System preferences:
   - item-level_itypes => 'specific item'
   - noItemTypeImages  => 'Show'

2) (if needed) In Koha Administration > Item types, create
   an item type and associate it with an icon

3) (if needed) Create a test bibliographic record, and add
   an item to it that has an item type with an icon

4) Visit the bibliographic record's details page in the
   Staff interface. Notice that in the 'Item type' column of
   the 'Holdings' tab instead of seeing the icon associated
   with the item type of each item you get the default
   'broken image URL' image of your web browser [*].

   [*] In non-Debian package installs, the 'href' property
       of the item type icon's <img> tag should start with
       '/opac-tmpl/bootstrap/itemtypeimg'

5) Apply this patch, and refresh the page with CTRL-F5.
   The item type icon should now be displayed correctly.

   [*] KTD and Koha Sandboxes users: To verify the patch
       has worked, you should right-click on the item type
       icon and click 'Inspect: the 'href' property of the
       <img> tag should now start with:
       '/intranet-tmpl/prog/img/itemtypeimg'

Mentored by : Andreas Roussos
Comment 4 Frédéric Demians 2023-02-08 14:37:23 UTC
Created attachment 146393 [details] [review]
Bug 32908: Load item type icons from the correct path

In the Staff interface, the details page of a bibliographic
record should display the icon associated with the item
type of an item ('Item type' column in the 'Holdings' tab).

This feature broke in v22.11.00 (for Debian package installs):
instead of the item type icon you get the default 'broken
image URL' image of your web browser.

This patch fixes that.

Test plan:

1) (if needed) Configure the following System preferences:
   - item-level_itypes => 'specific item'
   - noItemTypeImages  => 'Show'

2) (if needed) In Koha Administration > Item types, create
   an item type and associate it with an icon

3) (if needed) Create a test bibliographic record, and add
   an item to it that has an item type with an icon

4) Visit the bibliographic record's details page in the
   Staff interface. Notice that in the 'Item type' column of
   the 'Holdings' tab instead of seeing the icon associated
   with the item type of each item you get the default
   'broken image URL' image of your web browser [*].

   [*] In non-Debian package installs, the 'href' property
       of the item type icon's <img> tag should start with
       '/opac-tmpl/bootstrap/itemtypeimg'

5) Apply this patch, and refresh the page with CTRL-F5.
   The item type icon should now be displayed correctly.

   [*] KTD and Koha Sandboxes users: To verify the patch
       has worked, you should right-click on the item type
       icon and click 'Inspect: the 'href' property of the
       <img> tag should now start with:
       '/intranet-tmpl/prog/img/itemtypeimg'

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
Comment 5 Martin Renvoize 2023-02-10 16:33:20 UTC
Created attachment 146493 [details] [review]
Bug 32908: Load item type icons from the correct path

In the Staff interface, the details page of a bibliographic
record should display the icon associated with the item
type of an item ('Item type' column in the 'Holdings' tab).

This feature broke in v22.11.00 (for Debian package installs):
instead of the item type icon you get the default 'broken
image URL' image of your web browser.

This patch fixes that.

Test plan:

1) (if needed) Configure the following System preferences:
   - item-level_itypes => 'specific item'
   - noItemTypeImages  => 'Show'

2) (if needed) In Koha Administration > Item types, create
   an item type and associate it with an icon

3) (if needed) Create a test bibliographic record, and add
   an item to it that has an item type with an icon

4) Visit the bibliographic record's details page in the
   Staff interface. Notice that in the 'Item type' column of
   the 'Holdings' tab instead of seeing the icon associated
   with the item type of each item you get the default
   'broken image URL' image of your web browser [*].

   [*] In non-Debian package installs, the 'href' property
       of the item type icon's <img> tag should start with
       '/opac-tmpl/bootstrap/itemtypeimg'

5) Apply this patch, and refresh the page with CTRL-F5.
   The item type icon should now be displayed correctly.

   [*] KTD and Koha Sandboxes users: To verify the patch
       has worked, you should right-click on the item type
       icon and click 'Inspect: the 'href' property of the
       <img> tag should now start with:
       '/intranet-tmpl/prog/img/itemtypeimg'

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Comment 6 Martin Renvoize 2023-02-10 16:33:37 UTC
Thanks for the fix, Passing QA
Comment 7 Fridolin Somers 2023-02-14 07:28:32 UTC
Depends on Bug 31321 if I understand well.
Comment 8 Jonathan Druart 2023-02-14 09:19:12 UTC
Did you check reserve/request?
Comment 9 Jonathan Druart 2023-02-14 09:19:47 UTC
(In reply to Jonathan Druart from comment #8)
> Did you check reserve/request?

forget that, just seen bug 32909 now!
Comment 10 Tomás Cohen Arazi 2023-02-15 12:34:42 UTC
Pushed to master for 23.05.

Nice work everyone, thanks!
Comment 11 Pedro Amorim 2023-02-16 10:35:08 UTC
Nice work everyone!

Pushed to 22.11.x for next release
Comment 12 Lucas Gass 2023-03-01 14:05:05 UTC
Missing dependencies for 22.05.x, no backport.