Bug 37977

Summary: Fix some issues with labels in inventory form
Product: Koha Reporter: Phil Ringnalda <phil>
Component: TemplatesAssignee: Phil Ringnalda <phil>
Status: Pushed to main --- QA Contact: Chris Cormack <chris>
Severity: normal    
Priority: P3 CC: martin.renvoize
Version: Main   
Hardware: All   
OS: All   
See Also: https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=38008
Change sponsored?: --- Patch complexity: ---
Documentation contact: Documentation submission:
Text to go in the release notes:
Version(s) released in:
24.11.00
Circulation function:
Attachments: Bug 37977: Fix some issues with labels in Inventory form
Bug 37977: Fix some issues with labels in Inventory form
Bug 37977: Fix some issues with labels in Inventory form

Description Phil Ringnalda 2024-09-20 21:40:28 UTC
Or for a more accurate summary, "Fix the easy issues with..." because the hard ones with presentation impacts will come in a separate bug.

In Cataloging - Inventory, the labels for Collection and Call number classification scheme just don't have a for="" that matches the id of the input, the former by using the name rather than the id, and the latter because the input doesn't have an id.

The labels for the Optional filters for inventory list or comparing barcodes section of authorized values have correct for attributes, but wonky ids on the inputs: instead of using the authorized value's id, a unique number, they use the authorized value's value, so if you have a value "1" for notforloan and lost and withdrawn and damaged, like you probably do, there are four duplicate ids and zero labels for any of them, since the labels are all using things like 1011, not 1.
Comment 1 Phil Ringnalda 2024-09-20 21:57:40 UTC
Created attachment 171842 [details] [review]
Bug 37977: Fix some issues with labels in Inventory form

The inventory form has several issues with labels with a for attribute that
doesn't match the id of the input, so the label doesn't actually get linked
to anything.

Test plan:
 1. Without the patch, go to Cataloging - Inventory
 2. In the section for "Item location filters" click the label for "Shelving
    location (items.location) is", which will focus the select menu, then
    press the down arrow on the keyboard to see that it's focused by opening
    the select menu.
 3. Click in a blank spot to close the select menu, then click the label for
    "Collection" and press the down arrow key, which will scroll the page
    since the label didn't focus the menu, and repeat with "Call number
    classification scheme" which also will scroll the page when you press
    down arrow.
 4. In the section for "Optional filters for inventory list or comparing
    barcodes" click any of the labels below items.notforloan - clicking a
    checkbox label should toggle whether the checkbox is checked, but it
    will not
 5. Apply patch, refresh page
 6. Repeat steps 3 and 4, but this time you will get the proper behavior,
    focusing the select menus and toggling the checkboxes

Sponsored-by: Chetco Community Public Library
Comment 2 Lucas Gass (lukeg) 2024-09-21 15:18:33 UTC
Created attachment 171847 [details] [review]
Bug 37977: Fix some issues with labels in Inventory form

The inventory form has several issues with labels with a for attribute that
doesn't match the id of the input, so the label doesn't actually get linked
to anything.

Test plan:
 1. Without the patch, go to Cataloging - Inventory
 2. In the section for "Item location filters" click the label for "Shelving
    location (items.location) is", which will focus the select menu, then
    press the down arrow on the keyboard to see that it's focused by opening
    the select menu.
 3. Click in a blank spot to close the select menu, then click the label for
    "Collection" and press the down arrow key, which will scroll the page
    since the label didn't focus the menu, and repeat with "Call number
    classification scheme" which also will scroll the page when you press
    down arrow.
 4. In the section for "Optional filters for inventory list or comparing
    barcodes" click any of the labels below items.notforloan - clicking a
    checkbox label should toggle whether the checkbox is checked, but it
    will not
 5. Apply patch, refresh page
 6. Repeat steps 3 and 4, but this time you will get the proper behavior,
    focusing the select menus and toggling the checkboxes

Sponsored-by: Chetco Community Public Library
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Comment 3 Chris Cormack 2024-10-17 21:51:30 UTC
Created attachment 172932 [details] [review]
Bug 37977: Fix some issues with labels in Inventory form

The inventory form has several issues with labels with a for attribute that
doesn't match the id of the input, so the label doesn't actually get linked
to anything.

Test plan:
 1. Without the patch, go to Cataloging - Inventory
 2. In the section for "Item location filters" click the label for "Shelving
    location (items.location) is", which will focus the select menu, then
    press the down arrow on the keyboard to see that it's focused by opening
    the select menu.
 3. Click in a blank spot to close the select menu, then click the label for
    "Collection" and press the down arrow key, which will scroll the page
    since the label didn't focus the menu, and repeat with "Call number
    classification scheme" which also will scroll the page when you press
    down arrow.
 4. In the section for "Optional filters for inventory list or comparing
    barcodes" click any of the labels below items.notforloan - clicking a
    checkbox label should toggle whether the checkbox is checked, but it
    will not
 5. Apply patch, refresh page
 6. Repeat steps 3 and 4, but this time you will get the proper behavior,
    focusing the select menus and toggling the checkboxes

Sponsored-by: Chetco Community Public Library
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Comment 4 Katrin Fischer 2024-10-18 12:27:41 UTC
Pushed for 24.11!

Well done everyone, thank you!