Koha-clms/Koha
Cameron E. Tidd 67a37a07c3
Bug 16631: Institute library limits
This patch implements the library_limit concept for Report/Reports. Staff with the correct permission and superlibrarians can set libaries to which the report should be visible, if the system preference is enabled.

Test plan:
Confirm Initial Settings
1. Log in to Koha staff with username: koha and password: koha and set your library as Centerville if it's not already.
2. Visit the Saved reports page, and create and save three reports: Report 1, Report 2, and Report 3. The SQL query for each report doesn't matter, it should just be something valid.
3. Visit the Patrons page and create two staff users: StaffReportLimitUser and StaffNoLimitPermission. Set their home libraries to Centerville and Fairfield, respectively.
4. Under Allow access to the reports module, ensure both users have report management permissions for Create, Delete, Execute.

Verify Patch Settings
5. Apply the patch and restart services. If using Koha Testing Docker (KTD): from the Koha repo directory, apply the patch (e.g. `git bz apply 16631`, or check out the patched branch with `git fetch && git checkout <branch>`), then run `ktd --shell` to enter the KTD shell and run `restart_all`. If the patched branch is already checked out, just enter the KTD shell and run `restart_all`.
6. Click Patrons in the top navbar to go to the Patrons page.
7. Search for "StaffReportLimitUser" in the patron search field.
8. Click StaffReportLimitUser to edit the patron record for this user.
9. Click More -> Set permissions to access the permissions screens for the StaffReportLimitUser.
10. In the row for Allow access to the reports module (reports), click Show details to view relevant permissions.
11. Confirm Manage Report Limits (manage_report_limits) is an option under Allow access to the reports module (reports).
12. Click the checkbox for Manage Report Limits to give this user this permission, and click Save.
13. Go to the System Preferences page (Click the More dropdown from the top nav bar, click Administration, click System Preferences).
14. Verify Reports is an option in the left side navigation bar, and that when clicked, you see the LimitReportsByBranch option.
15. Enable LimitReportsByBranch as described in step 14.
16. Go back to Saved reports as in Step 2.
17. Click Edit in the row menu for Report 1.
18. At the bottom of the Report 1 edit page, you should see a Library limitation select box.

Verify the Library Limitation Settings are Persisted
19. Choose Centerville from the select box and click Update SQL.
20. Reload the page, or navigate away from the page and go back to the edit screen for Report 1.
21. Verify that Centerville is still in the Library limitation select box.
22. Add Fairfield in the Library limitation select box and click Update and run SQL.
23. Go back to editing Report 1.
24. Confirm the Library limitation select box has both Centerville and Fairfield selected.
25. Duplicate Report 1.
26. Confirm the Library limitation select box has both Centerville and Fairfield selected.
27. Click Save Report.
28. Confirm the Library limitation select box has both Centerville and Fairfield selected.

Verify Reports are Limited Based on Library Limitations
29. Edit Report 1 to add Centerville in the Library limitation select box as the only choice and click Update SQL.
30. Edit Report 2 to add Fairfield in the Library limitation select box as the only choice and click Update SQL.
31. Report 3 should have no library limitations, so it should be visible to all libraries.
32. Go to Saved reports as in Step 2.
33. Confirm you do not see Report 2, and only Report 1 and Report 3.
34. In the upper right corner, click the drop down that says koha Centerville and click Set library to change your library.
35. Set your library to Fairfield.
36. Go to Saved reports as in Step 2.
37. Confirm you do not see Report 1, and only Report 2 and Report 3.

Verify Disabling LimitReportsByBranch Preference Shows All Reports
38. Disable LimitReportsByBranch preference as in steps 13 to 15.
39. Go to Saved reports as in Step 2.
40. Confirm Report 1, Report 2, Report 3 are visible.
41. Click to edit Report 1 and verify there is no Library limitation select box.

Verify Library limitations are Persisted When EnableFilteringReports is Toggled On or Off
42. Enable LimitReportsByBranch preference as in steps 13 to 15.
43. Ensure your library is set to Fairfield as in step 35.
44. Go to Saved reports as in Step 2.
45. Confirm Report 1 is not visible, and Report 2 and Report 3 are visible.
46. Click to edit Report 2 and verify the Library limitation select box is at the bottom of the page and that it has Fairfield selected.

Verify the Show all reports option shows all reports for users with the Manage Report Limits permission and superlibrarians
47. Go to Saved reports as in Step 2 and in the Show reports dropdown, select Show all reports, and click Apply filter.
48. Confirm the page reloads with all reports visible: Report 1, Report 2, and Report 3 should be visible.
49. Select Show my branch reports from the dropdown and click Apply filter.
50. Confirm Report 1 is not visible, and Report 2 and Report 3 are visible (you should only see reports for your branch, Fairfield).

Verify Report filters return the correct results
51. Go to Saved reports as in Step 2.
52. Verify you're viewing only your branch's reports in the filter.
53. Under Filter in the left sidebar, type "2" in the Keyword field and click Apply filter.
54. Confirm only Report 2 is visible.
55. Under Filter in the left sidebar, type "1" in the Keyword field and click Apply filter.
56. Confirm there are no reports visible, and the message "No saved reports match your criteria" is displayed.

Verify Library Limits column is available to superlibrarians and users with the Manage Report Limits permission
57. Go to Saved reports as in Step 2.
58. Click the Columns dropdown and ensure that the Library limits column is available to select for display. Select it.
59. Confirm that the Library limits column is now visible in the list of reports and that it shows the correct library limitations for each report (e.g., Report 1 should show 1 library limitation and Centerville (CPL) on hover, Report 2 should show 1 library limitation and Fairfield (FFL) on hover, and Report 3 should show no limitation).

Verify the Show all reports and Limit reports options are available to users that are not superlibrarian but have the Manage Report Limits permission
60. For the StaffReportLimitUser, add the permission for Manage Report Limits as described in steps 9 to 12. This will allow this user to see the Show all reports and Limit reports options.
61. Log out of the koha admin account. In the upper right corner, click the drop down that says koha Fairfield and click Log out.
62. Log in as StaffReportLimitUser, the previously created staff user with report permissions.
63. Confirm the staff user's library is Centerville in the upper right corner of the screen.
64. Go to Saved reports as in Step 2.
65. Confirm the filter option for Show reports is visible.
66. Click to edit Report 1.
67. Verify there is a Library limitation select box and that it can be interacted with.

Verify the Show all reports and Limit reports options are not available to users that are not superlibrarian and do not have the Manage Report Limits permission
68. Log out of the StaffReportLimitUser account.
69. Log in as StaffNoLimitPermission, the previously created staff user without the Manage Report Limits permission.
70. Confirm the staff user's library is Fairfield in the upper right corner of the screen.
71. Go to Saved reports as in Step 2.
72. Click the Columns dropdown and ensure that the Library limits column is not in the list of available columns to select for display.
73. Confirm the filter option for Show reports is not available.
74. Click to edit Report 2.
75. Verify there is no Library limitation select box at the bottom of the page.

[NEW] Verify library limits are auto-assigned and preserved correctly for non-permissioned users
76. Still logged in as StaffNoLimitPermission (Fairfield) from the previous section. Go to Saved reports and click New report. Enter "Limit Auto-Assign Test" as the report name and SELECT 1 as the SQL. Confirm there is no Library limitations select box visible on the form. Click Save.
77. Go back to Saved reports. Click Edit for Report 2 (limited to Fairfield). Add `-- test` as a trailing SQL comment and click Update SQL. This simulates a non-permissioned user saving an existing report that already has limits.
78. Go back to Saved reports. Click Edit for Report 3 (no library limits). Add `-- test` as a trailing SQL comment and click Update SQL. This simulates a non-permissioned user saving an existing report that has no limits.
79. Log out and log back in as StaffReportLimitUser (Centerville, has manage_report_limits).
80. Go to Saved reports. Use Show all reports if needed. Find "Limit Auto-Assign Test" and click Edit. Confirm the Library limitations select box shows Fairfield as the only selected library — the report was automatically limited to the creator's home library on create.
81. Find Report 2 and click Edit. Confirm the Library limitations select box still shows only Fairfield — the existing limit was preserved when the non-permissioned user saved the report.
82. Find Report 3 and click Edit. Confirm the Library limitations select box is empty — no limits were introduced when the non-permissioned user saved a report that had no existing limits.

Verify limited reports are not visible to users without permissions
83. While still logged in as StaffReportLimitUser from step 79, copy the URL for the edit page of Report 1.
84. Log out of the StaffReportLimitUser account.
85. Log in as StaffNoLimitPermission, the user without the Manage Report Limits permission.
86. Paste the copied URL for the edit page of Report 1 into the browser and navigate to it.
87. Confirm that you see an error message that says "This report is restricted and cannot be accessed by the current user." and that the page does not load the report details.

Run Unit Tests
88. Using Koha Testing Docker, in the Koha home directory run the command: ktd --shell to start the ktd shell.
89. Run command: reset_all to drop and recreate the koha database.
90. Run command prove t/db_dependent/Koha/Reports.t to run the test.
91. This file contains the unit tests for the reports_branches table and the new subtest `library limits enforcement on save and update`, which covers auto-assignment of branch limits on create and preservation of limits on update for non-permissioned users.
92. All tests should pass.
93. Run command prove t/Koha/Auth/Permissions.t
94. Permissions unit tests in this file were updated.
95. All tests should pass.
96. Run command prove t/db_dependent/Reports/Guided.t
97. The Guided report tests were updated to account for the new library limitations and permissions.
98. All tests should pass.

Signoff
99. Sign off if the steps above check out.

Sponsored-by: Ramapo Catskill Library System
Co-authored-by: Casey Conlin <casey.conlin@gmail.com>
Signed-off-by: Emmi Takkinen <emmi.takkinen@koha-suomi.fi>
Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Pedro Amorim <pedro.amorim@openfifth.co.uk>
2026-07-28 14:32:25 +00:00
..
Account Bug 40255: (follow-up) Fix failure in add_debit tests 2026-04-20 13:04:58 -06:00
Acquisition Bug 41950: (follow-up) Add DBIC relationship aliases for +count embeds 2026-06-29 16:19:49 +00:00
App Bug 42175: Fix Mojo under k.t.d 2026-04-09 08:27:30 -06:00
ArticleRequest Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Auth Bug 33782: (follow-up) Remove code duplication in OAuth client 2026-02-10 10:51:32 -07:00
Authority Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
BackgroundJob Bug 42396: Adjust 'use' statements 2026-07-27 15:53:23 +00:00
Biblio Bug 41031: Add checks on metadata and biblio in Extractor::MARC->new 2025-12-01 12:53:35 -07:00
Cache Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Cash Bug 40445: (RM follow-up): Fix POD copy paste 2026-07-27 12:12:42 +00:00
Charges Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Checkouts Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Club Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
CodeList/Unimarc Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Config Bug 41834: Set systempreferences's options, explanation and type to NULL 2026-03-20 07:57:11 +00:00
Controller Bug 37762: Circulation: Hook to holds 2026-05-08 12:25:43 -06:00
Course Bug 40163: (follow-up) Fix wrong GNU links and update test 2025-09-24 09:25:04 -06:00
Database Bug 43101: search_for_data_inconsistencies.pl inlines every biblionumber in the catalog as an OR chain 2026-07-27 12:13:05 +00:00
DateTime/Format Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Devel Bug 42764: Use inline codespell:ignore for SAN-Ouest Provence in templates 2026-06-04 10:59:21 +01:00
ERM Bug 41950: (follow-up) Add DBIC relationship aliases for +count embeds 2026-06-29 16:19:49 +00:00
Edifact Bug 41709: Fix EDIfact special character escaping in GIR segments and other fields 2026-06-29 15:39:00 +00:00
Exceptions Bug 42391: (follow-up) Add NotNull, NotInStorage and UnhandledDBError translations 2026-07-20 12:44:54 +00:00
Exporter Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ExternalContent Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
File Bug 40811: (follow-up) Fix list context bug and add comprehensive tests 2026-01-21 15:28:17 -07:00
Filter/MARC Bug 41494: Rename "Koha administration" module name to "Administration" 2026-01-06 07:45:37 -07:00
Hold Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ILL Bug 42396: Adjust 'use' statements 2026-07-27 15:53:23 +00:00
Import Bug 40163: (follow-up) Fix wrong GNU links and update test 2025-09-24 09:25:04 -06:00
Indexer Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Installer Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Item Bug 42764: Fix spelling errors across the codebase 2026-06-03 16:09:04 +00:00
Library Bug 28530: (QA follow-up) Fix branch transfer limits not checking alternate libraries 2026-02-10 10:51:43 -07:00
List Bug 41076: Adjust our perl tidiness for v20250105 2026-02-05 09:03:51 -07:00
MetadataRecord Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Middleware Bug 39789: Add ability to specify an alternative header to X-Forwarded-For for finding the real ip address 2026-04-23 16:04:04 -06:00
Misc Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Notice Bug 35267: (follow-up) Add POD coverage for private subroutines 2026-04-17 09:18:10 -06:00
Number Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
OAI Bug 37713: Do not show record metadata if OPAC suppressed 2026-04-17 09:18:03 -06:00
Object Bug 41076: Adjust our perl tidiness for v20250105 2026-02-05 09:03:51 -07:00
Objects Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Old Bug 17387: (follow-up) address review feedback 2026-04-15 14:10:27 -06:00
Patron Bug 42764: Fix spelling errors across the codebase 2026-06-03 16:09:04 +00:00
Patrons Bug 42764: Fix spelling errors across the codebase 2026-06-03 16:09:04 +00:00
Plugins Bug 42098: EDIFACT edi_cron.pl runs disabled plugins due to bug in Koha::Plugins::Handler::run 2026-03-19 10:20:35 +00:00
Policy Bug 41076: Adjust our perl tidiness for v20250105 2026-02-05 09:03:51 -07:00
Preservation Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
REST Revert "Bug 34451: Add CSRF protection for REST API (cookie-auth only)" 2026-07-27 16:06:36 +00:00
RecordProcessor Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Result Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
SIP2 Bug 42664: Update SIP2 config timestamp after storing the change 2026-06-29 15:38:51 +00:00
SMS Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
SMTP Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Schema Bug 41898: Automated Schema Update 2026-07-27 15:53:32 +00:00
SearchEngine Bug 42485: (RM follow-up): Tidy 2026-06-15 12:54:23 +00:00
Serial Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Sitemapper Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Subscription Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
SuggestionEngine Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Tags Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Template/Plugin Bug 42136: prevent cgi, directory, and file plugins from use in user-entered templates 2026-04-28 15:48:20 -06:00
Ticket Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
UI Bug 38136: Refactor database translations (alternative) 2026-04-15 11:37:14 -06:00
Util Bug 12757: Set float type on OpenDocument cells 2026-06-18 16:02:11 +00:00
XSLT Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Z3950Responder Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
pdfformat Bug 38516: Use PDF template copy for exporting PDFs 2025-12-01 08:34:02 -07:00
Account.pm Bug 42396: Adjust 'use' statements 2026-07-27 15:53:23 +00:00
ActionLog.pm Bug 43119: Restore item and hold links to the log viewer 2026-07-27 12:13:00 +00:00
ActionLogs.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
AdditionalContent.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
AdditionalContents.pm Bug 39027: Order news on opac-main.pl by publication date instead of ID 2026-04-15 14:10:14 -06:00
AdditionalContentsLocalization.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
AdditionalContentsLocalizations.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
AdditionalField.pm Bug 39438: Add additional fields support to ERM agreement periods 2026-01-30 10:54:10 -07:00
AdditionalFieldValue.pm Bug 41520: Filter out record_table from AdditionalFieldValue API responses 2026-01-06 07:45:38 -07:00
AdditionalFieldValues.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
AdditionalFields.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
AdvancedEditorMacro.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
AdvancedEditorMacros.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ApiKey.pm Bug 20638: Improve ApiKey logging to use structured data 2026-01-22 09:26:02 -07:00
ApiKeys.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ArticleRequest.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ArticleRequests.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
AudioAlert.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
AudioAlerts.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
AuthUtils.pm Bug 40680: Move EXPORT_OK right after Modern::Perl 2025-12-01 08:33:56 -07:00
AuthorisedValue.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
AuthorisedValueCategories.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
AuthorisedValueCategory.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
AuthorisedValues.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Authorities.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Authority.pm Bug 42032: (follow-up) Use MARC-in-JSON for authority action log diffs 2026-05-05 13:42:04 -06:00
BackgroundJob.pm Bug 42394: Fallback to {} if no userenv set 2026-04-17 09:18:00 -06:00
BackgroundJobs.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Biblio.pm Bug 41950: (follow-up) Add DBIC relationship aliases for +count embeds 2026-06-29 16:19:49 +00:00
BiblioFramework.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
BiblioFrameworks.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
BiblioUtils.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Biblioitem.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Biblioitems.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Biblios.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Booking.pm Bug 41898: (QA follow-up) Skip clash detection when collecting a booking 2026-07-27 15:53:38 +00:00
Bookings.pm Bug 41898: Introduce 'issued' status and update booking display/filtering 2026-07-27 15:53:33 +00:00
CSV.pm Bug 41619: (Follow-up) Fix for t/Koha/CSV.t 2026-02-27 13:12:37 -07:00
Cache.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Caches.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Calendar.pm Bug 42545: (QA follow-up) Add POD for _init and _holidays and fix incorrect test expectation 2026-05-20 09:04:53 -06:00
Checkout.pm Bug 37762: Circulation: Hook to checkouts/checkins 2026-05-08 12:25:43 -06:00
Checkouts.pm Bug 34596: Add rebuild queue where needed for existing calls to AddReturn 2025-10-06 09:15:17 -06:00
CirculationRule.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
CirculationRules.pm Bug 41267: Add fill_other_biblio_holds_policy circulation rule 2026-04-09 08:27:26 -06:00
Cities.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
City.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ClassSortRule.pm Bug 42764: Fix spelling errors across the codebase 2026-06-03 16:09:04 +00:00
ClassSortRules.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ClassSource.pm Bug 42764: Fix spelling errors across the codebase 2026-06-03 16:09:04 +00:00
ClassSources.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ClassSplitRule.pm Bug 42764: Fix spelling errors across the codebase 2026-06-03 16:09:04 +00:00
ClassSplitRules.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Club.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Clubs.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Config.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ContentSecurityPolicy.pm Bug 38365: Switch from using ENV to package level variable for nonce caching 2026-03-16 11:57:33 +01:00
CookieManager.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Course.pm Bug 40163: (follow-up) Fix wrong GNU links and update test 2025-09-24 09:25:04 -06:00
Courses.pm Bug 40163: (follow-up) Fix wrong GNU links and update test 2025-09-24 09:25:04 -06:00
CoverImage.pm Bug 8088: (follow-up) Tidy 2026-04-15 14:10:15 -06:00
CoverImages.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
CsvProfile.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
CsvProfiles.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
CurbsidePickup.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
CurbsidePickupIssue.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
CurbsidePickupIssues.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
CurbsidePickupOpeningSlot.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
CurbsidePickupOpeningSlots.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
CurbsidePickupPolicies.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
CurbsidePickupPolicy.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
CurbsidePickups.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Database.pm Bug 38384: Refactor plugin loading to use lightweight Koha::Plugins::Loader 2026-02-25 07:36:59 -07:00
DateUtils.pm Bug 40680: Move EXPORT_OK right after Modern::Perl 2025-12-01 08:33:56 -07:00
Desk.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Desks.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
EDI.pm Bug 42764: Fix spelling errors across the codebase 2026-06-03 16:09:04 +00:00
Edifact.pm Bug 42764: Fix spelling errors across the codebase 2026-06-03 16:09:04 +00:00
Email.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Encryption.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Exception.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Exceptions.pm Bug 36942: Use an exception for a failed KBART file parse 2025-09-18 14:31:03 -06:00
ExternalContent.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
FrameworkPlugin.pm Bug 42764: Fix spelling errors across the codebase 2026-06-03 16:09:04 +00:00
Hold.pm Bug 41879: (QA follow-up) Add pod for new sub _pickup_valid_for_item 2026-07-27 15:53:30 +00:00
HoldGroup.pm Bug 41983: (QA follow-up): Rebuild the holds queue when groups are edited 2026-05-06 15:20:58 -06:00
HoldGroups.pm Bug 40163: (follow-up) Fix wrong GNU links and update test 2025-09-24 09:25:04 -06:00
Holds.pm Bug 33364: Prevent Holds to Pull from including items with pending recalls 2026-07-27 12:12:53 +00:00
I18N.pm Bug 40680: Move EXPORT_OK right after Modern::Perl 2025-12-01 08:33:56 -07:00
ImportBatch.pm Bug 41036: Log errors in Koha::ImportBatch->new_from_file 2026-02-26 09:04:14 -07:00
ImportBatchProfile.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ImportBatchProfiles.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ImportBatches.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Installer.pm Bug 40437: Remove warning from Koha/Installer.t 2025-07-18 11:09:57 -06:00
Item.pm Bug 42396: Adjust 'use' statements 2026-07-27 15:53:23 +00:00
ItemType.pm Bug 38136: Refactor database translations (alternative) 2026-04-15 11:37:14 -06:00
ItemTypes.pm Bug 38136: Refactor database translations (alternative) 2026-04-15 11:37:14 -06:00
Items.pm Bug 42349: Fix filtering items by recalls 2026-07-16 17:05:03 +00:00
KeyboardShortcut.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
KeyboardShortcuts.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Language.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Libraries.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Library.pm Bug 39482: Correct the link to edit OpacLibraryInfo from library edit page 2025-12-29 09:56:16 -07:00
Linktracker.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Logger.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Manual.pm Bug 16631: Institute library limits 2026-07-28 14:32:25 +00:00
MarcOrder.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
MarcOrderAccount.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
MarcOrderAccounts.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
MarcOverlayRule.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
MarcOverlayRules.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
MarcSubfieldStructure.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
MarcSubfieldStructures.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
MetaSearcher.pm Bug 41205: Skip undef records in Z39 response 2025-11-17 15:15:48 -07:00
MetadataIterator.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
MetadataRecord.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
MoreUtils.pm Bug 38664: Tidy the whole codebase 2025-02-11 14:58:24 +01:00
OAIServer.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
OAIServers.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
OAuth.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
OAuthAccessToken.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
OAuthAccessTokens.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Object.pm Bug 42391: (follow-up) Restore DB exception warnings in Object::store 2026-07-21 15:40:23 +00:00
Objects.pm Bug 42764: Fix spelling errors across the codebase 2026-06-03 16:09:04 +00:00
OverdueRule.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
OverdueRules.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Patron.pm Bug 20573: Make NotifyBorrowerDeparture's date math consistent with MembershipExpiryDaysNotice 2026-07-27 15:53:18 +00:00
Patrons.pm Bug 43069: Don't match every patron when no duplicate-match fields apply 2026-07-16 17:05:18 +00:00
Plugins.pm Bug 42430: (QA follow-up) Fix nested plugin package corruption on reload 2026-07-13 15:46:23 +00:00
ProblemReport.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ProblemReports.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
PseudonymizedTransaction.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
PseudonymizedTransactions.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Quote.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Quotes.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Rating.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Ratings.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Recall.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Recalls.pm Bug 42396: Adjust 'use' statements 2026-07-27 15:53:23 +00:00
RecordProcessor.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
RecordSource.pm Bug 35380: Change record sources to by systemdefined 2026-03-26 09:46:15 +01:00
RecordSources.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Report.pm Bug 16631: Institute library limits 2026-07-28 14:32:25 +00:00
Reports.pm Bug 16631: Institute library limits 2026-07-28 14:32:25 +00:00
Review.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Reviews.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Schema.pm Bug 42391: (QA follow-up): Clarify exception_action ref-passthrough comment 2026-07-20 12:44:57 +00:00
Script.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
SearchEngine.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
SearchField.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
SearchFields.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
SearchFilter.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
SearchFilters.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
SearchMarcMap.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
SearchMarcMaps.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Serial.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Serials.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Session.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
SharedContent.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
SimpleMARC.pm Bug 28915: (RM follow-up): Remove dead code + typo fix 2026-06-15 15:24:15 +00:00
Sitemapper.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Statistic.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Statistics.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Status.pm Bug 41107: Add /status/version API endpoint 2026-03-23 09:33:54 +01:00
StockRotationItem.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
StockRotationItems.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
StockRotationRota.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
StockRotationRotas.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
StockRotationStage.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
StockRotationStages.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Subscription.pm Bug 41076: Adjust our perl tidiness for v20250105 2026-02-05 09:03:51 -07:00
Subscriptions.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Suggestion.pm Bug 42723: Purchase suggestion 500 when EmailPurchaseSuggestions is set to BranchEmailAddress 2026-06-05 14:26:09 +00:00
SuggestionEngine.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Suggestions.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Tag.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Tags.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
TemplateUtils.pm Bug 42136: prevent cgi, directory, and file plugins from use in user-entered templates 2026-04-28 15:48:20 -06:00
Ticket.pm Bug 41950: (follow-up) Add DBIC relationship aliases for +count embeds 2026-06-29 16:19:49 +00:00
Tickets.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Token.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
TrackedLink.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
TrackedLinks.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
UploadedFile.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
UploadedFiles.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Uploader.pm Bug 41076: Adjust our perl tidiness for v20250105 2026-02-05 09:03:51 -07:00
Virtualshelf.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Virtualshelfcontent.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Virtualshelfcontents.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Virtualshelfshare.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Virtualshelfshares.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Virtualshelves.pm Bug 18148: Make list of lists in OPAC sortable 2025-11-05 07:12:35 -07:00
Z3950Responder.pm Bug 40946: Remove warning "Aborted connection" from Koha/Z3950Responder/ZebraSession.t 2026-02-06 15:17:13 -07:00
Z3950Server.pm Bug 40841: Add Z39.50 library limits 2026-03-26 14:21:27 +01:00
Z3950Servers.pm Bug 40841: Add Z39.50 library limits 2026-03-26 14:21:27 +01:00