<?xml version="1.0" encoding="utf-8"?><rss version="2.0"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
    xmlns:admin="http://webns.net/mvcb/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
    <title>Magento Issue Tracking</title>
    <link>http://www.magentocommerce.com/bug-tracking/</link>
    <description></description>
    <dc:language>en</dc:language>
    <dc:creator>MagentoCommerce</dc:creator>
    <dc:rights>Copyright {gmt_date format="%Y"}</dc:rights>
    <dc:date>{gmt_date format="%Y-%m-%dT%H:%i:%s%Q"}</dc:date>
    <admin:generatorAgent rdf:resource="http://expressionengine.com/" />
        <item>
        <title>View Issue #28506 / Making an layout update while caching fails (the cache is loaded)</title>
        <link>http://www.magentocommerce.com/bug-tracking/issue?issue=14498</link>
        <description><![CDATA[<strong>Posted:</strong> 2012-12-04 09:58:47<br/><strong>Category:</strong> Configuration<br/><strong>Version:</strong> 1.7.0.0<br/><strong>Priority:</strong> low<br/><strong>Status:</strong> new<br/><strong>Reported By:</strong> <a href="http://www.magentocommerce.com/boards/member/26725608/">dkr84</a></strong><br/><br/>Using<br />
  Mage_Core_Model_Layout::getUpdate<br />
and<br />
  -&gt;load($template)<br />
in Observer Event<br />
  &quot;controller_action_layout_generate_blocks_before&quot;<br />
while activated the caching<br />
  LAYOUT_GENERAL_CACHE_TAG<br />
results in an output of the cached version instead of the wanted update..<br />
This is due to the $cacheKey in fetchFileLayoutUpdates used for loadCache().<br />
(I think... If I'm not right correct me...)<br />
But take a look by yourself for this Bug...<br />
<br />
~<br />
<br />
In the following testobserver, uncomment the commented lines and the update should appear as wanted.<br />
<br />
&lt;?php<br />
function mainLayoutListener($observer)<br />
{<br />
    $action = $observer-&gt;getEvent()-&gt;getAction();<br />
    $layout = $observer-&gt;getEvent()-&gt;getLayout();<br />
    $template = $action-&gt;getRequest()-&gt;template;<br />
    <br />
    if (isset($template) &amp;&amp; $template == 'popup') {<br />
        $update = $layout-&gt;getUpdate();<br />
        /* &lt;start&gt; the following will bugfix the issue */<br />
//        $cache_key = Mage::app()-&gt;getCache()-&gt;getOption('cache_id_prefix');<br />
//        Mage::app()-&gt;getCache()-&gt;setOption('cache_id_prefix',$cache_key.'_'.$template);<br />
        /* &lt;end&gt; the following will bugfix the issue */<br />
        $update-&gt;load($template);<br />
        $layout-&gt;generateXml();<br />
    }<br />
}<br />
?&gt;<br />
<br />
~<br/><br/><hr/>]]></description>
    </item>
    
                    <item>
        <title>RE: Making an layout update while caching fails (the cache is loaded)</title>
        <description><![CDATA[<em>#1 / Comment by <a href="http://www.magentocommerce.com/boards/member/26725608/">dkr84</a></em><br/><br/>I forgot something...<br />
Simple create the observer and try using the parameter ?template=popup on any page of the frontend....]]></description>
    </item>
        </channel>
</rss>