diff --git a/administrator/components/com_content/src/Field/Modal/ArticleField.php b/administrator/components/com_content/src/Field/Modal/ArticleField.php
index e5d5e70b613f8..c173321bbf6c0 100644
--- a/administrator/components/com_content/src/Field/Modal/ArticleField.php
+++ b/administrator/components/com_content/src/Field/Modal/ArticleField.php
@@ -52,6 +52,12 @@ class ArticleField extends ModalSelectField
*/
public function setup(\SimpleXMLElement $element, $value, $group = null)
{
+ // Check if the value consist with id:alias, extract the id only
+ if ($value && str_contains($value, ':')) {
+ [$id] = explode(':', $value, 2);
+ $value = (int) $id;
+ }
+
$result = parent::setup($element, $value, $group);
if (!$result) {
diff --git a/administrator/components/com_joomlaupdate/src/View/Joomlaupdate/HtmlView.php b/administrator/components/com_joomlaupdate/src/View/Joomlaupdate/HtmlView.php
index 8f3ec804007b1..44d4eb2a8b354 100644
--- a/administrator/components/com_joomlaupdate/src/View/Joomlaupdate/HtmlView.php
+++ b/administrator/components/com_joomlaupdate/src/View/Joomlaupdate/HtmlView.php
@@ -110,6 +110,15 @@ class HtmlView extends BaseHtmlView
*/
protected $messagePrefix = '';
+ /**
+ * A special text used for the emptystate layout to explain why there is no download
+ *
+ * @var string The message
+ *
+ * @since __DEPLOY_VERSION__
+ */
+ protected $reasonNoDownload = '';
+
/**
* List of non core critical plugins
*
@@ -190,7 +199,8 @@ public function display($tpl = null)
} else {
// No download available
if ($hasUpdate) {
- $this->messagePrefix = '_NODOWNLOAD';
+ $this->messagePrefix = '_NODOWNLOAD';
+ $this->reasonNoDownload = 'COM_JOOMLAUPDATE_NODOWNLOAD_EMPTYSTATE_REASON';
}
$this->setLayout('noupdate');
diff --git a/administrator/components/com_joomlaupdate/tmpl/joomlaupdate/noupdate.php b/administrator/components/com_joomlaupdate/tmpl/joomlaupdate/noupdate.php
index 6bfa18ab193db..6336b732f970c 100644
--- a/administrator/components/com_joomlaupdate/tmpl/joomlaupdate/noupdate.php
+++ b/administrator/components/com_joomlaupdate/tmpl/joomlaupdate/noupdate.php
@@ -19,7 +19,7 @@
$displayData = [
'textPrefix' => 'COM_JOOMLAUPDATE' . $this->messagePrefix,
- 'content' => Text::sprintf($this->langKey, $this->updateSourceKey),
+ 'content' => Text::_($this->reasonNoDownload) . Text::sprintf($this->langKey, $this->updateSourceKey),
'formURL' => 'index.php?option=com_joomlaupdate&view=joomlaupdate',
'helpURL' => 'https://docs.joomla.org/Special:MyLanguage/Updating_from_an_existing_version',
'icon' => 'icon-loop joomlaupdate',
diff --git a/administrator/components/com_menus/src/Field/Modal/MenuField.php b/administrator/components/com_menus/src/Field/Modal/MenuField.php
index f59726f5c5970..d383bbf90727e 100644
--- a/administrator/components/com_menus/src/Field/Modal/MenuField.php
+++ b/administrator/components/com_menus/src/Field/Modal/MenuField.php
@@ -145,6 +145,12 @@ public function __set($name, $value)
*/
public function setup(\SimpleXMLElement $element, $value, $group = null)
{
+ // Check if the value consist with id:alias, extract the id only
+ if ($value && str_contains($value, ':')) {
+ [$id] = explode(':', $value, 2);
+ $value = (int) $id;
+ }
+
$return = parent::setup($element, $value, $group);
if (!$return) {
diff --git a/administrator/language/en-GB/com_joomlaupdate.ini b/administrator/language/en-GB/com_joomlaupdate.ini
index b059603856c19..cd9e5d3e37332 100644
--- a/administrator/language/en-GB/com_joomlaupdate.ini
+++ b/administrator/language/en-GB/com_joomlaupdate.ini
@@ -44,7 +44,8 @@ COM_JOOMLAUPDATE_MINIMUM_STABILITY_STABLE="Stable"
COM_JOOMLAUPDATE_NODOWNLOAD_EMPTYSTATE_APPEND="Upload and Update"
COM_JOOMLAUPDATE_NODOWNLOAD_EMPTYSTATE_BUTTON_ADD="Retry check for update"
COM_JOOMLAUPDATE_NODOWNLOAD_EMPTYSTATE_CONTENT="An update to Joomla %1$s was found, but it wasn't possible to fetch the download URL for that update. Either the update to Joomla %1$s is not available for your stability level or there is a problem with the Joomla Update Server.
Please try to download the update package from the official Joomla download page and use the Upload and Update function."
-COM_JOOMLAUPDATE_NODOWNLOAD_EMPTYSTATE_TITLE="We can't find a download URL"
+COM_JOOMLAUPDATE_NODOWNLOAD_EMPTYSTATE_REASON="An update to Joomla %1$s was found but your web server doesn't meet the minimum requirements. Please contact your web host to update your server.
"
+COM_JOOMLAUPDATE_NODOWNLOAD_EMPTYSTATE_TITLE="This site can't be updated to Joomla %1$s"
COM_JOOMLAUPDATE_OVERVIEW="Joomla Update"
COM_JOOMLAUPDATE_PREUPDATE_CHECK_CAPTION="Server settings to check before update."
COM_JOOMLAUPDATE_PREUPDATE_CHECK_COMPLETED_YOU_HAVE_DANGEROUS_PLUGINS="There are plugins installed and enabled that could interfere with the Joomla update and result in a failed update that leaves the site inaccessible.
You are strongly advised to update, disable or uninstall these plugins before upgrading."
@@ -148,7 +149,7 @@ COM_JOOMLAUPDATE_VIEW_DEFAULT_PHP_VERSION_NOT_SUPPORTED="Your PHP version is not
COM_JOOMLAUPDATE_VIEW_DEFAULT_PHP_VERSION_NOT_SUPPORTED_DESC="An update to Joomla %1$s was found, but your currently installed PHP version does not match the minimum requirements for Joomla %1$s."
COM_JOOMLAUPDATE_VIEW_DEFAULT_POTENTIALLY_DANGEROUS_PLUGIN="Potential Upgrade Issue."
COM_JOOMLAUPDATE_VIEW_DEFAULT_POTENTIALLY_DANGEROUS_PLUGIN_CONFIRM_MESSAGE="Are you sure you want to acknowledge the warnings about potentially incompatible extensions and proceed with the update?"
-COM_JOOMLAUPDATE_VIEW_DEFAULT_POTENTIALLY_DANGEROUS_PLUGIN_DESC="This extension includes a plugin that could cause the update to fail.
To perform the Joomla update safely you should either update this extension to a version compatible with your target version of Joomla or disable the relevant plugin(s) and check again.
For more information about the relevant plugins please check the 'Live Update' tab."
+COM_JOOMLAUPDATE_VIEW_DEFAULT_POTENTIALLY_DANGEROUS_PLUGIN_DESC="This extension includes a plugin that could cause the update to fail.
To perform the Joomla update safely you should either update this extension to a version compatible with your target version of Joomla or disable the relevant plugin(s) and check again."
COM_JOOMLAUPDATE_VIEW_DEFAULT_POTENTIALLY_DANGEROUS_PLUGIN_LIST="The following plugins could cause problems during the update"
COM_JOOMLAUPDATE_VIEW_DEFAULT_PREUPDATE_CHECK="Pre-Update Check for Joomla %s"
COM_JOOMLAUPDATE_VIEW_DEFAULT_RECOMMENDED="Recommended"
diff --git a/build/media_source/com_associations/js/sidebyside.es5.js b/build/media_source/com_associations/js/sidebyside.es5.js
index 9c3b755a1d277..b6ceb1dc2e427 100644
--- a/build/media_source/com_associations/js/sidebyside.es5.js
+++ b/build/media_source/com_associations/js/sidebyside.es5.js
@@ -46,10 +46,11 @@ jQuery(document).ready(function($) {
// Remove it on the target
$('#jform_itemlanguage option').each(function()
{
- lang = $(this).val().split('|')[0];
+ lang = $(this).val().split(':')[0];
- if (typeof lang !== 'undefined') {
+ if (lang) {
lang = lang.replace(/-/,'_');
+
// - For modal association selectors.
target.find('#jform_associations_' + lang + '_id').val('');
// - For chosen association selectors (menus).