| Summary: | overdue_notices.pl wrongly reports "terms were not matched and replaced" | ||
|---|---|---|---|
| Product: | Koha | Reporter: | Magnus Enger <magnus> |
| Component: | Command-line Utilities | Assignee: | Bugs List <koha-bugs> |
| Status: | NEW --- | QA Contact: | Testopia <testopia> |
| Severity: | minor | ||
| Priority: | P5 - low | CC: | robin |
| Version: | Main | ||
| Hardware: | All | ||
| OS: | All | ||
| GIT URL: | Initiative type: | --- | |
| Sponsorship status: | --- | Comma delimited list of Sponsors: | |
| Crowdfunding goal: | 0 | Patch complexity: | --- |
| Documentation contact: | Documentation submission: | ||
| Text to go in the release notes: | Version(s) released in: | ||
| Circulation function: | |||
I tried running overdue_notices.pl with the --verbose argument, and got a bunch of messages like this: The following terms were not matched and replaced: div class="adress_odue" div class="adressrad" /div ... But the generated messages in the message_queue looks ok. The message comes from this code, around line 766 of misc/cronjobs/overdue_notices.pl: my @misses = grep { /./ } map { /^([^>]*)[>]+/; ( $1 || '' ); } split /\</, $letter->{'content'}; if (@misses) { $verbose and warn "The following terms were not matched and replaced: \n\t" . join "\n\t", @misses; } I have a hunch this is meant to look for things like <<something>> that are still left in the $letter->{'content'}, but it actually finds and reports on things like <something>, including HTML tags. So maybe it can be improved to look for <<>>? Maybe there should even be two different checks like this, one for HTML messages and one for non-HTML-messages?