Index: branches/RC/core/kernel/nparser/nparser.php
===================================================================
diff -u -r11368 -r11373
--- branches/RC/core/kernel/nparser/nparser.php (.../nparser.php) (revision 11368)
+++ branches/RC/core/kernel/nparser/nparser.php (.../nparser.php) (revision 11373)
@@ -434,11 +434,16 @@
$data_exists_bak = $this->DataExists;
// if we are parsing design block and we have block_no_data - we need to wrap block_no_data into design,
- // so we should set DataExists to true manually, otherwise the design block will be skipped because of data_exists in params
+ // so we should set DataExists to true manually, otherwise the design block will be skipped because of data_exists in params (by Kostja)
//
// keep_data_exists is used by block RenderElement (always added in ntags.php), to keep the DataExists value
- // from inside-content block, otherwise when parsing the design block DataExists will be reset to false resulting missing design block
- $this->DataExists = isset($params['keep_data_exists']) && $this->DataExists || (isset($params['design']) && isset($params['block_no_data']) && $params['name'] == $params['design']);
+ // from inside-content block, otherwise when parsing the design block DataExists will be reset to false resulting missing design block (by Kostja)
+ //
+ // Inside-content block parsing result is given to design block in "content" parameter (ntags.php) and "keep_data_exists"
+ // is only passed, when parsing design block. In case, when $this->DataExists is set to true, but
+ // zero-length content (in 2 cases: method NParser::CheckNoData set it OR really empty block content)
+ // is returned from inside-content block, then design block also should not be shown (by Alex)
+ $this->DataExists = (isset($params['keep_data_exists']) && isset($params['content']) && $params['content'] != '' && $this->DataExists) || (isset($params['design']) && isset($params['block_no_data']) && $params['name'] == $params['design']);
if (!array_key_exists($params['name'], $this->Elements)) {
$pre_parsed = $this->Application->TemplatesCache->GetPreParsed($params['name']);
Index: branches/RC/core/admin_templates/groups/permissions_selector.tpl
===================================================================
diff -u -r11226 -r11373
--- branches/RC/core/admin_templates/groups/permissions_selector.tpl (.../permissions_selector.tpl) (revision 11226)
+++ branches/RC/core/admin_templates/groups/permissions_selector.tpl (.../permissions_selector.tpl) (revision 11373)
@@ -1,3 +1,4 @@
+