Index: trunk/core/units/categories/categories_tag_processor.php =================================================================== diff -u -N -r5214 -r5326 --- trunk/core/units/categories/categories_tag_processor.php (.../categories_tag_processor.php) (revision 5214) +++ trunk/core/units/categories/categories_tag_processor.php (.../categories_tag_processor.php) (revision 5326) @@ -378,6 +378,38 @@ } return $ret; } + + function SaveWarning($params) + { + $main_prefix = getArrayValue($params, 'main_prefix'); + if ($main_prefix && $main_prefix != '$main_prefix') { + $top_prefix = $main_prefix; + } + else { + $top_prefix = $this->Application->GetTopmostPrefix($this->Prefix); + } + + $temp_tables = $this->Application->GetVar($top_prefix.'_mode') == 't'; + $modified = $this->Application->RecallVar($top_prefix.'_modified'); + + if (!$temp_tables) { + $this->Application->RemoveVar($top_prefix.'_modified'); + return 'flag remoeved'; + } + + $block_name = $this->SelectParam($params, 'render_as,name'); + if ($block_name) { + $block_params = $this->prepareTagParams($params); + $block_params['name'] = $block_name; + $block_params['edit_mode'] = $temp_tables ? 1 : 0; + $block_params['display'] = $temp_tables && $modified ? 1 : 0; + return $this->Application->ParseBlock($block_params); + } + else { + return $temp_tables && $modified ? 1 : 0; + } + return ; + } }