diff --git a/components/ILIAS/Poll/classes/BlockGUI/Results/class.ilPollResultsRenderer.php b/components/ILIAS/Poll/classes/BlockGUI/Results/class.ilPollResultsRenderer.php index d0e1a2260caf..ff9b7ca9d2a1 100755 --- a/components/ILIAS/Poll/classes/BlockGUI/Results/class.ilPollResultsRenderer.php +++ b/components/ILIAS/Poll/classes/BlockGUI/Results/class.ilPollResultsRenderer.php @@ -89,7 +89,7 @@ protected function renderStackedChart( $tooltips = []; $color_index = 0; foreach ($results->getOrderedAnswerIds() as $id) { - $label = $this->htmlSpecialCharsAsEntities($results->getAnswerText($id)); + $label = nl2br($results->getAnswerText($id)); $total_votes = $results->getAnswerTotal($id); $tooltip = $total_votes . ' (' . round($results->getAnswerPercentage($id)) . '%)'; $bar_config = new BarConfig(); @@ -135,7 +135,7 @@ protected function renderBarChart( $dataset = $this->data_factory->dataset([$votes_label => $c_dimension]); foreach ($results->getOrderedAnswerIds() as $id) { - $label = $this->htmlSpecialCharsAsEntities($results->getAnswerText($id)); + $label = nl2br($results->getAnswerText($id)); $total_votes = $results->getAnswerTotal($id); $tooltip = $total_votes . ' (' . round($results->getAnswerPercentage($id)) . '%)'; $dataset = $dataset->withPoint($label, [$votes_label => $total_votes]) @@ -151,9 +151,4 @@ protected function renderBarChart( ->withBarConfigs([$votes_label => $bar_config]); $tpl->setVariable('CHART', $this->ui_renderer->render($chart)); } - - protected function htmlSpecialCharsAsEntities(string $string): string - { - return $this->refinery->encode()->htmlSpecialCharsAsEntities()->transform(nl2br($string)); - } } diff --git a/components/ILIAS/UI/src/Implementation/Component/Chart/Bar/Renderer.php b/components/ILIAS/UI/src/Implementation/Component/Chart/Bar/Renderer.php index f80980c61f60..155a7362db42 100755 --- a/components/ILIAS/UI/src/Implementation/Component/Chart/Bar/Renderer.php +++ b/components/ILIAS/UI/src/Implementation/Component/Chart/Bar/Renderer.php @@ -113,7 +113,7 @@ function ($id) use ($options, $data, $y_labels, $tooltips) { protected function renderBasics(Bar\Bar $component, Template $tpl): void { - $tpl->setVariable("TITLE", $component->getTitle()); + $tpl->setVariable("TITLE", $this->convertSpecialCharacters($component->getTitle())); $height = ""; if ($component instanceof Bar\Horizontal) { $height = $this->determineHeightForHorizontal($component); @@ -166,10 +166,11 @@ protected function getAccessibilityList( foreach ($points_per_dimension as $dimension_name => $item_points) { $entries = []; - foreach ($item_points as $messeaurement_item_label => $point) { - if (isset($tooltips_per_dimension[$dimension_name][$messeaurement_item_label])) { + foreach ($item_points as $measurement_item_label => $point) { + // use numeric value as default + if (isset($tooltips_per_dimension[$dimension_name][$measurement_item_label])) { // use custom tooltips if defined - $entries[] = $messeaurement_item_label . ": " . $tooltips_per_dimension[$dimension_name][$messeaurement_item_label]; + $entry = $measurement_item_label . ": " . $tooltips_per_dimension[$dimension_name][$measurement_item_label]; } elseif (is_array($point)) { // handle range values $range = ""; @@ -177,19 +178,20 @@ protected function getAccessibilityList( $range .= $p . " - "; } $range = rtrim($range, " -"); - $entries[] = $messeaurement_item_label . ": " . $range; + $entry = $measurement_item_label . ": " . $range; } elseif (is_null($point)) { // handle null values - $entries[] = $messeaurement_item_label . ": -"; + $entry = $measurement_item_label . ": -"; } elseif (!empty($value_labels) && is_int($point) && !empty($value_labels[$point - $lowest])) { // use custom value labels if defined - $entries[] = $messeaurement_item_label . ": " . $value_labels[$point - $lowest]; + $entry = $measurement_item_label . ": " . $value_labels[$point - $lowest]; } else { // use numeric value for all other cases - $entries[] = $messeaurement_item_label . ": " . $point; + $entry = $measurement_item_label . ": " . $point; } + $entries[] = $this->convertSpecialCharacters($entry); } - $list_items[$dimension_name] = $ui_fac->listing()->unordered($entries); + $list_items[$this->convertSpecialCharacters($dimension_name)] = $ui_fac->listing()->unordered($entries); } $list = $ui_fac->listing()->descriptive($list_items);