User tests: Successful: Unsuccessful:
When the Update Notification task (plg_task_updatenotification) is triggered via the CLI without a --live-site parameter, Uri::base() inherently falls back to https://joomla.invalid/set/by/console/application/. Because the plugin emails this raw output, it results in broken, confusing links for the user.
This PR adds a safe language string fallback for the CLI environment. If the URL contains joomla.invalid, the email will securely instruct the user to log in to their Administrator dashboard to apply the update, rather than sending a broken link.
System - Joomla! Update Notification plugin and its associated Scheduled Task are published.php cli/joomla.php scheduler:run -i 3The email body contains broken placeholder links:
URL: https://joomla.invalid/set/by/console/application/
Link: https://joomla.invalid/set/by/console/application/administrator/index.php?option=com_joomlaupdate
The email body provides a clean, instructional fallback using the new language strings:
URL: URL unavailable (Run via CLI without --live-site)
Link: Please log in to your site Administrator dashboard to apply this update.
No documentation changes required.
Fixes #47256
| Status | New | ⇒ | Pending |
| Category | ⇒ | Administration Language & Strings Front End Plugins |
i don't think this is a solution
My main thought is that the CLI environment natively doesn't know the live site URL. If we rely on forcing users to manually add the --live-site parameter, we are completely trusting their input. If they forget it, or type an invalid domain by mistake, the system will still generate and email a broken link.
I added this string as a safe fallback so the user always gets a clear, instructional email instead of a joomla.invalid link.
How would you prefer to solve the root cause here?
| Labels |
Added:
Language Change
PR-5.4-dev
|
||
i don't think this is a solution