The empty blocks that get injected into the page are being injectd for all users, including anonymous users or users without the permission to do inline context editing. These empty blocks should be hidden because they have the context-block-empty class applied to them. However, that class only has css to hide it when the context_reaction_block.css file is included, which it isn't for anonymous users.

So, either the css should always be included to ensure that the empty blocks are hidden, or the logic that determined wether or not the empty blocks should be added needs fixing so that they only get added when required (ie. not for anonymous users or users that o not have the ability to do inline editing). Prpbably the later.

Comments

mrfelton’s picture

Note, this is only a problem when block caching is enabled.

mrfelton’s picture

My immediate problem was actually solved by http://drupal.org/node/1346740#comment-5549532 - however this still indicates a problem with Context's empty blocks and cached blocks. If the block is cached by admin with the empty markup, then anonymous see the markup with out the css styles to hide it.

Richard.Li’s picture

after enable context, I set it nothing, but for empty block it insert div with a link such as
<div><a class="context-block-region" id="context-block-region-slideshow">slideshow</a></div>

when I disable context, it's gone.

drupal 7.12 with context 7.x-3.0-beta2