use Cubist\Util\Graphics\Image;
use Cubist\Util\Graphics\Resizer;
+use Cubist\Util\Text;
+use Nette\Utils\Html;
class HTMLMultimediaPopupImage extends NormalLink
{
$imgSizeAttrs = is_array($dim) ? ' data-width="' . $dim[0] . '" data-height="' . $dim[1] . '" width="' . $dim[0] . '" height="' . $dim[1] . '" ' : '';
- $markup = '<div class="multimediaContainer" data-click-to-close="' . $this->clickToClose . '">';
- $markup .= '<img ' . $imgSizeAttrs . ' src="' . Link::getUniversalLocation($this->to) . '" class="multimedia" aria-hidden="1" />';
$alt = $this->getAlternativeText();
if ($alt) {
- $markup .= '<div class="visually-hidden" aria-live="polite">' . $alt . '</div>';
+ $adbid = 'adb_' . rand(1000, 100000);
+ $altmarkup = '<div class="visually-hidden" aria-live="polite" id="' . $adbid . '">' . $alt . '</div>';
+ $alttxt = Text::html2text($alt);
+ }
+
+ $markup = '<div class="multimediaContainer" data-click-to-close="' . $this->clickToClose . '">';
+ $markup .= '<img ' . $imgSizeAttrs . ' src="' . Link::getUniversalLocation($this->to) . '" class="multimedia" ';
+ if ($alt) {
+ $markup .= ' alt="' . $alttxt . '" aria-described-by="' . $adbid . '"';
+ } else {
+ $markup .= ' aria-hidden="true"';
+ }
+ $markup .= ' />';
+ if ($alt) {
+ $markup .= $altmarkup;
}
$markup .= '</div>';
$read = '';