diff --git a/administrator/components/com_joomlaupdate/config.xml b/administrator/components/com_joomlaupdate/config.xml index 0382caa4b1331..d4b814bcba382 100644 --- a/administrator/components/com_joomlaupdate/config.xml +++ b/administrator/components/com_joomlaupdate/config.xml @@ -28,6 +28,7 @@ label="COM_JOOMLAUPDATE_MINIMUM_STABILITY_LABEL" description="COM_JOOMLAUPDATE_MINIMUM_STABILITY_DESC" default="4" + showon="updatesource:testing[OR]updatesource:custom" > diff --git a/administrator/components/com_joomlaupdate/models/default.php b/administrator/components/com_joomlaupdate/models/default.php index 0401f340086ae..9c09a6b68752c 100644 --- a/administrator/components/com_joomlaupdate/models/default.php +++ b/administrator/components/com_joomlaupdate/models/default.php @@ -117,8 +117,14 @@ public function refreshUpdates($force = false) $cache_timeout = 3600 * JComponentHelper::getParams('com_installer')->get('cachetimeout', 6, 'int'); } - $updater = JUpdater::getInstance(); - $minimumStability = JComponentHelper::getParams('com_joomlaupdate')->get('minimum_stability', JUpdater::STABILITY_STABLE); + $updater = JUpdater::getInstance(); + $minimumStability = JUpdater::STABILITY_STABLE; + $comJoomlaupdateParams = JComponentHelper::getParams('com_joomlaupdate'); + + if (in_array($comJoomlaupdateParams->get('updatesource', 'nochange'), ['testing', 'custom'])) + { + $minimumStability = $comJoomlaupdateParams->get('minimum_stability', JUpdater::STABILITY_STABLE); + } $reflection = new ReflectionObject($updater); $reflectionMethod = $reflection->getMethod('findUpdates'); @@ -171,13 +177,18 @@ public function getUpdateInformation() $ret['latest'] = $updateObject->version; $ret['hasUpdate'] = $updateObject->version != JVERSION; + $minimumStability = JUpdater::STABILITY_STABLE; + $comJoomlaupdateParams = JComponentHelper::getParams('com_joomlaupdate'); + + if (in_array($comJoomlaupdateParams->get('updatesource', 'nochange'), ['testing', 'custom'])) + { + $minimumStability = $comJoomlaupdateParams->get('minimum_stability', JUpdater::STABILITY_STABLE); + } + // Fetch the full update details from the update details URL. jimport('joomla.updater.update'); $update = new JUpdate; - $update->loadFromXML( - $updateObject->detailsurl, - JComponentHelper::getParams('com_joomlaupdate')->get('minimum_stability', JUpdater::STABILITY_STABLE) - ); + $update->loadFromXML($updateObject->detailsurl, $minimumStability); $ret['object'] = $update;