Koha-clms/tools
Martin Renvoize b0c86b0fcf
Bug 42746: (QA follow-up) Sanitize agefield and substitution field at the sink too
The original fix only whitelisted agefield, condition_field, and
substitution_field at the point they're saved in
tools/automatic_item_modification_by_age.pl, leaving the actual
consumer of the stored syspref, C4::Items::ToggleNewStatus, trusting
agefield and substitution field unchecked. agefield is spliced
directly into raw SQL (TO_DAYS($agefield)) and so can't be
parameterized like an ordinary value; substitution field reaches a
dynamic method call ($item->$field($value)). Any future or
alternate writer of the automatic_item_modification_by_age_configuration
syspref would have reopened both holes without touching the form at
all.

This adds the same allow-list validation directly in ToggleNewStatus
(falling back to the safe default agefield, or skipping the
substitution/condition, exactly as before for missing values), shares
the age-field allow-list between the two files via a new
GetAutomaticItemModificationAgeFields() in C4::Items so it can't drift
between them, and logs rejected values via Koha::Logger instead of
silently discarding them so tampering leaves an audit trail.

Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Pedro Amorim <pedro.amorim@openfifth.co.uk>
2026-08-11 12:39:38 +00:00
..
csv-profiles
…
access_files.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
additional-contents.pl Bug 41614: available options template params also needed for op=list 2026-03-24 07:48:24 +01:00
ajax-inventory.pl Bug 38664: Tidy the whole codebase 2025-02-11 14:58:24 +01:00
automatic_item_modification_by_age.pl Bug 42746: (QA follow-up) Sanitize agefield and substitution field at the sink too 2026-08-11 12:39:38 +00:00
batchMod.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
batch_delete_records.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
batch_extend_due_dates.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
batch_modify_holds.pl Bug 41882: Enforce pickup location rules 2026-04-29 09:09:20 -06:00
batch_record_modification.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
batch_records_ajax.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
cleanborrowers.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
copy-holidays.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
csv-profiles.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
exceptionHolidays.pl Bug 38664: Tidy the whole codebase 2025-02-11 14:58:24 +01:00
export.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
holidays.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
import_borrowers.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
inventory.pl Bug 38946: Add enumchron to inventory table 2026-02-27 11:38:33 -07:00
letter.pl Bug 40659: (follow-up) include substitutions in the possible options for template 2026-04-23 16:04:12 -06:00
manage-marc-import.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
marc_modification_templates.pl Bug 16994: Import and export MARC modification templates 2026-04-17 09:18:16 -06:00
modborrowers.pl Bug 40843: Sort patron attributes by description 2025-11-19 12:28:16 -07:00
newHolidays.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
overduerules.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
page.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
picture-upload.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
problem-reports.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
quotes-upload.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
quotes.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
restore-records.pl Bug 17387: (follow-up) move records_restore under editcatalogue permission 2026-04-15 14:10:27 -06:00
scheduler.pl Bug 16631: Institute library limits 2026-07-28 14:32:25 +00:00
showdiffmarc.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
stage-marc-import.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
stockrotation.pl Bug 41076: Adjust our perl tidiness for v20250105 2026-02-05 09:03:51 -07:00
tools-home.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
upload-cover-image.pl Bug 8088: (follow-up) Tidy 2026-04-15 14:10:15 -06:00
upload-file.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
upload.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
viewlog.pl Bug 41358: Apply consistent JSON logging to holds (Bug 40866) 2026-07-16 10:54:22 +00:00