View Issue Details

IDProjectCategoryView StatusLast Update
0006847OXID eShop (all versions)1.10. RSSpublic2021-02-26 10:23
Reporterfthielen 
PrioritynormalSeverityminorReproducibilityalways
Status acknowledgedResolutionopen 
Product Version6.0.2 
Target VersionFixed in Version 
Summary0006847: Exception gets thrown if the RSS Feeds are not enabled
DescriptionIf the RSS Feeds are disabled, and you try to access the RSS Feed,
the Shop tries to call the 404 Handler, but throws an Exception:
[message ERROR_MESSAGE_SYSTEMCOMPONENT_FUNCTIONNOTFOUND catarts]

https://forum.oxid-esales.com/t/exception-wenn-die-rss-feeds-nicht-aktiviert-sind/93703?u=fthielen
Steps To Reproduce1. Disable the RSS Feeds
2. Try to access the Feed: http://shop-url/source/?cl=rss&fnc=catarts
Tags302, Exception, RSS
ThemeNot defined
BrowserNot defined
PHP Version7.0
Database Version5.5

Activities

dx_bhesse

2021-02-26 10:23

reporter   ~0013387

The issue seems to be in \vendor\oxid-esales\oxideshop-ce\source\Core\Smarty\Plugin\function.oxid_include_widget.php
$widgetControl->start() is called with null for the function-parameter which will lead to start() fetching fnc via \OxidEsales\Eshop\Core\Registry::getConfig()->getRequestParameter('fnc')
But the fnc-parameter then used will in most cases be meant for the top-active-view and not the widgets included in the top-active-view.

Possible fix could be to read fnc from $params in the smarty-function and giving that value to $widgetControl->start()
as it is also done for "cl" there:
----------------------------------------------------------------------------------------
$fnc = isset($params['fnc']) ? $params['fnc'] : '';
unset($params['fnc']);
[..]
return $widgetControl->start($class, $fnc, $params, $parentViews);