Add aria-hidden="true" to all icons that exist only for design reasons

refs #8360
This commit is contained in:
Johannes Meyer 2015-02-12 13:47:00 +01:00
parent 3d0fbc833d
commit 9232c5cf22
26 changed files with 50 additions and 51 deletions

View File

@ -6,7 +6,7 @@
</div>
<div class="form" data-base-target="layout">
<?php if ($requiresSetup): ?>
<p class="config-note"><?= sprintf(
<p tabindex="0" class="config-note"><?= sprintf(
$this->translate(
'It appears that you did not configure Icinga Web 2 yet so it\'s not possible to log in without any defined '
. 'authentication method. Please define a authentication method by following the instructions in the'
@ -17,7 +17,7 @@
'</a>'
); ?></p>
<?php elseif ($requiresExternalAuth): ?>
<p class="info-box"><span class="icon-info"></span><?= $this->translate(
<p tabindex="0" class="info-box"><i aria-hidden="true" class="icon-info"></i><?= $this->translate(
'You\'re currently not authenticated using any of the web server\'s authentication mechanisms.'
. ' Make sure you\'ll configure such, otherwise you\'ll not be able to login.'
); ?></p>

View File

@ -4,7 +4,7 @@
<div class="content" data-base-target="_next">
<p>
<a href="<?= $this->href('/config/createAuthenticationBackend'); ?>">
<?= $this->icon('plus'); ?><?= $this->translate('Create A New Authentication Backend'); ?>
<?= $this->icon('plus', null, array('aria-hidden' => 'true')); ?><?= $this->translate('Create A New Authentication Backend'); ?>
</a>
</p>
<?= $form; ?>

View File

@ -4,7 +4,7 @@
<div class="content" data-base-target="_next">
<p>
<a href="<?= $this->href('/config/createresource'); ?>">
<?= $this->icon('plus'); ?> <?= $this->translate('Create A New Resource'); ?>
<?= $this->icon('plus', null, array('aria-hidden' => 'true')); ?> <?= $this->translate('Create A New Resource'); ?>
</a>
</p>
<table class="action">

View File

@ -25,7 +25,7 @@ class NoScriptApply extends Zend_Form_Decorator_Abstract
{
if ($content) {
$content .= '<noscript><button name="noscript_apply" style="margin-left: 0.5em;" type="submit" value="1">'
. Icinga::app()->getViewRenderer()->view->icon('refresh.png') . '&nbsp;' . t('Apply')
. Icinga::app()->getViewRenderer()->view->icon('refresh.png', null, array('aria-hidden' => 'true')) . '&nbsp;' . t('Apply')
. '</button></noscript>';
}

View File

@ -16,7 +16,7 @@ class ForeignMenuItemRenderer implements MenuItemRenderer {
return sprintf(
'<a href="%s" target="_self">%s%s<span></span></a>',
$menu->getUrl() ?: '#',
$menu->getIcon() ? '<img src="' . Url::fromPath($menu->getIcon()) . '" class="icon" /> ' : '',
$menu->getIcon() ? '<img aria-hidden="true" src="' . Url::fromPath($menu->getIcon()) . '" class="icon" /> ' : '',
htmlspecialchars($menu->getTitle())
);
}

View File

@ -80,7 +80,7 @@ class MonitoringMenuItemRenderer implements MenuItemRenderer {
}
if ($menu->getIcon() && strpos($menu->getIcon(), '.') === false) {
return sprintf(
'%s <a href="%s" class="icon-%s">%s</a>',
'%s <a href="%s"><i aria-hidden="true" class="icon-%s"></i>%s</a>',
$badge,
$menu->getUrl() ?: '#',
$menu->getIcon(),
@ -92,7 +92,7 @@ class MonitoringMenuItemRenderer implements MenuItemRenderer {
'%s<a href="%s">%s%s<span></span></a>',
$badge,
$menu->getUrl() ?: '#',
$menu->getIcon() ? '<img src="' . Url::fromPath($menu->getIcon()) . '" class="icon" /> ' : '',
$menu->getIcon() ? '<img aria-hidden="true" src="' . Url::fromPath($menu->getIcon()) . '" class="icon" /> ' : '',
htmlspecialchars($menu->getTitle())
);
}

View File

@ -115,7 +115,7 @@ class MenuRenderer extends RecursiveIteratorIterator
}
if ($child->getIcon() && strpos($child->getIcon(), '.') === false) {
return sprintf(
'<a href="%s" class="icon-%s">%s</a>',
'<a href="%s"><i aria-hidden="true" class="icon-%s"></i>%s</a>',
$child->getUrl() ?: '#',
$child->getIcon(),
htmlspecialchars($child->getTitle())
@ -124,7 +124,9 @@ class MenuRenderer extends RecursiveIteratorIterator
return sprintf(
'<a href="%s">%s%s</a>',
$child->getUrl() ?: '#',
$child->getIcon() ? '<img src="' . Url::fromPath($child->getIcon()) . '" class="icon" /> ' : '',
$child->getIcon()
? '<img aria-hidden="true" src="' . Url::fromPath($child->getIcon()) . '" class="icon" /> '
: '',
htmlspecialchars($child->getTitle())
);
}

View File

@ -215,13 +215,9 @@ class Tab extends AbstractWidget
if ($this->icon !== null) {
if (strpos($this->icon, '.') === false) {
if ($tagParams && array_key_exists('class', $tagParams)) {
$tagParams['class'] .= ' icon-' . $this->icon;
} else {
$tagParams['class'] = 'icon-' . $this->icon;
}
$caption = $view->icon($this->icon, null, array('aria-hidden' => 'true')) . $caption;
} else {
$caption = $view->img($this->icon, array('class' => 'icon')) . $caption;
$caption = $view->img($this->icon, array('aria-hidden' => 'true', 'class' => 'icon')) . $caption;
}
}
if ($this->url !== null) {

View File

@ -35,7 +35,8 @@ class CheckNowCommandForm extends ObjectsCommandForm
'ignore' => true,
'type' => 'submit',
'value' => $this->translate('Check now'),
'label' => '<i class="icon-reschedule"></i> ' . $this->translate('Check now'),
'label' => '<i aria-hidden="true" class="icon-reschedule"></i> '
. $this->translate('Check now'),
'decorators' => array('ViewHelper'),
'escape' => false,
'class' => 'link-like'

View File

@ -42,11 +42,11 @@
<span>
<?php if ($this->trend->trend === 'up'): ?>
<?= $this->icon('up-open'); ?>
<?= $this->icon('up-open', null, array('aria-hidden' => 'true')); ?>
<?php elseif ($this->trend->trend === 'unchanged'): ?>
<?= $this->icon('right-open'); ?>
<?= $this->icon('right-open', null, array('aria-hidden' => 'true')); ?>
<?php else: ?>
<?= $this->icon('down-open'); ?>
<?= $this->icon('down-open', null, array('aria-hidden' => 'true')); ?>
<?php endif; ?>
</span>
</div>

View File

@ -6,7 +6,7 @@
<div class="content" data-base-target="_next">
<p>
<a href="<?= $this->href('/monitoring/config/createbackend'); ?>">
<?= $this->icon('plus'); ?> <?= $this->translate('Create New Monitoring Backend'); ?>
<?= $this->icon('plus', null, array('aria-hidden' => 'true')); ?> <?= $this->translate('Create New Monitoring Backend'); ?>
</a>
</p>
<table class="action">
@ -38,7 +38,7 @@
<h1><?= $this->translate('Monitoring Instances') ?></h1>
<p>
<a href="<?= $this->href('/monitoring/config/createinstance'); ?>">
<?= $this->icon('plus'); ?> <?= $this->translate('Create New Instance'); ?>
<?= $this->icon('plus', null, array('aria-hidden' => 'true')); ?> <?= $this->translate('Create New Instance'); ?>
</a>
</p>
<table class="action">

View File

@ -31,21 +31,21 @@
<div>
<a href="<?= $rescheduleAllLink ?>">
<?= $this->icon('reschedule') ?>
<?= $this->icon('reschedule', null, array('aria-hidden' => 'true')) ?>
<?= $this->translate('Reschedule host checks') ?>
</a>
</div>
<div>
<a href="<?= $downtimeAllLink ?>">
<?= $this->icon('plug') ?>
<?= $this->icon('plug', null, array('aria-hidden' => 'true')) ?>
<?= $this->translate('Schedule host downtimes') ?>
</a>
</div>
<div>
<a href="<?= $processCheckResultAllLink; ?>">
<?= $this->icon('reply'); ?>
<?= $this->icon('reply', null, array('aria-hidden' => 'true')); ?>
<?= $this->translate('Submit passive check results'); ?>
</a>
</div>
@ -71,7 +71,7 @@
),
$unhandledCount
) ?>">
<?= $this->icon('plug') ?>
<?= $this->icon('plug', null, array('aria-hidden' => 'true')) ?>
<?= sprintf(
$this->translatePlural(
'Schedule downtime for unhandled host problem',
@ -91,7 +91,7 @@
),
$unhandledCount
) ?>">
<?= $this->icon('ok') ?>
<?= $this->icon('ok', null, array('aria-hidden' => 'true')) ?>
<?= sprintf(
$this->translatePlural(
'Acknowledge unhandled host problem',
@ -133,7 +133,7 @@
),
$inDowntimeCount
) ?>">
<?= $this->icon('plug') ?>
<?= $this->icon('plug', null, array('aria-hidden' => 'true')) ?>
<?= sprintf(
$this->translatePlural(
'List %u host currently in downtime',
@ -158,7 +158,7 @@
),
$commentCount
) ?>">
<?= $this->icon('comment') ?>
<?= $this->icon('comment', null, array('aria-hidden' => 'true')) ?>
<?= sprintf(
$this->translatePlural(
'List %u host comment',

View File

@ -59,7 +59,7 @@
<?= $this->link()->host($comment->host, $comment->host_display_name) ?>
<?php endif ?>
<br>
<?= $this->icon('comment'); ?> <?= isset($comment->author)
<?= $this->icon('comment', null, array('aria-hidden' => 'true')); ?> <?= isset($comment->author)
? '[' . $comment->author . '] '
: '';
?><?= $this->escape($comment->comment); ?>

View File

@ -20,7 +20,7 @@ foreach ($groupData as $groupName => $groupInfo): ?>
<div class="box contents">
<?php foreach ($groupInfo['contacts'] as $c): ?>
<div class="box entry">
<img src="<?= $this->href('/static/gravatar', array('email' => $c->contact_email )) ?>" />
<img aria-hidden="true" src="<?= $this->href('/static/gravatar', array('email' => $c->contact_email )) ?>" />
<a href="<?= $this->href(
'monitoring/show/contact',
array('contact' => $c->contact_name)

View File

@ -14,7 +14,7 @@
}
foreach ($contacts as $contact): ?>
<div class="contact">
<img src="<?= $this->href('/static/gravatar', array('email' => $contact->contact_email )) ?>" />
<img aria-hidden="true" src="<?= $this->href('/static/gravatar', array('email' => $contact->contact_email )) ?>" />
<a href="<?= $this->href(
'monitoring/show/contact',
array('contact' => $contact->contact_name)

View File

@ -9,8 +9,8 @@
<table class="objectlist">
<thead>
<tr>
<th><?= $this->icon('host'); ?> <?= $this->translate('Host'); ?></th>
<th><?= $this->icon('conf'); ?> <?= $this->translate('Service'); ?></th>
<th><?= $this->icon('host', null, array('aria-hidden' => 'true')); ?> <?= $this->translate('Host'); ?></th>
<th><?= $this->icon('conf', null, array('aria-hidden' => 'true')); ?> <?= $this->translate('Service'); ?></th>
</tr>
</thead>
<tbody>

View File

@ -19,21 +19,21 @@
<div>
<a href="<?= $rescheduleAllLink ?>">
<?= $this->icon('reschedule') ?>
<?= $this->icon('reschedule', null, array('aria-hidden' => 'true')) ?>
<?= $this->translate('Reschedule service checks') ?>
</a>
</div>
<div>
<a href="<?= $downtimeAllLink ?>">
<?= $this->icon('plug') ?>
<?= $this->icon('plug', null, array('aria-hidden' => 'true')) ?>
<?= $this->translate('Schedule service downtimes') ?>
</a>
</div>
<div>
<a href="<?= $processCheckResultAllLink; ?>">
<?= $this->icon('reply'); ?>
<?= $this->icon('reply', null, array('aria-hidden' => 'true')); ?>
<?= $this->translate('Submit passive check results'); ?>
</a>
</div>
@ -59,7 +59,7 @@
),
$unhandledCount
) ?>">
<?= $this->icon('plug') ?>
<?= $this->icon('plug', null, array('aria-hidden' => 'true')) ?>
<?= sprintf(
$this->translatePlural(
'Schedule downtime for unhandled service problem',
@ -79,7 +79,7 @@
),
$unhandledCount
) ?>">
<?= $this->icon('ok') ?>
<?= $this->icon('ok', null, array('aria-hidden' => 'true')) ?>
<?= sprintf(
$this->translatePlural(
'Acknowledge unhandled service problem',
@ -119,7 +119,7 @@
$inDowntimeCount
),
$inDowntimeCount) ?>">
<?= $this->icon('plug') ?>
<?= $this->icon('plug', null, array('aria-hidden' => 'true')) ?>
<?= sprintf(
$this->translatePlural(
'List %u service currently in downtime',
@ -143,7 +143,7 @@
),
$commentCount
) ?>">
<?= $this->icon('comment') ?>
<?= $this->icon('comment', null, array('aria-hidden' => 'true')) ?>
<?= sprintf(
$this->translatePlural(
'List %u service comment',

View File

@ -36,7 +36,7 @@ if ($object->acknowledged): ?>
}
?>
<a href="<?= $ackLink ?>" data-base-target="_self">
<?= $this->icon('ok') ?> <?= $this->translate('Acknowledge') ?>
<?= $this->icon('ok', null, array('aria-hidden' => 'true')) ?> <?= $this->translate('Acknowledge') ?>
</a>
<?php } else {
echo '&#45;';

View File

@ -40,7 +40,7 @@ if ($object->getType() === $object::TYPE_HOST) {
}
?>
<a href="<?= $reschedule ?>" data-base-target="_self">
<?= $this->icon('reschedule') ?>
<?= $this->icon('reschedule', null, array('aria-hidden' => 'true')) ?>
<?= $this->translate('Reschedule') ?>
</a>
<?php } // endif ?>

View File

@ -22,7 +22,7 @@ $command = array_shift($parts);
);
} ?>
<a href="<?= $processCheckResult ?>" data-base-target="_self">
<?= $this->icon('reply') ?>
<?= $this->icon('reply', null, array('aria-hidden' => 'true')) ?>
<?= $this->translate('Process check result') ?>
</a>
<?php endif ?>

View File

@ -16,7 +16,7 @@
}
?>
<a href="<?= $addCommentLink ?>" data-base-target="_self">
<?= $this->icon('comment') ?>
<?= $this->icon('comment', null, array('aria-hidden' => 'true')) ?>
<?= $this->translate('Add comment') ?>
</a>
<?php } else {

View File

@ -12,7 +12,7 @@ if (! empty($object->contacts)) {
printf(
"<tr><th>%s</th><td>%s %s</td></tr>\n",
$this->translate('Contacts'),
$this->icon('user'),
$this->icon('user', null, array('aria-hidden' => 'true')),
implode(', ', $list)
);
@ -31,7 +31,7 @@ if (! empty($object->contactgroups)) {
printf(
"<tr><th>%s</th><td>%s %s</td></tr>\n",
$this->translate('Contactgroups'),
$this->icon('users'),
$this->icon('users', null, array('aria-hidden' => 'true')),
implode(', ', $list)
);

View File

@ -16,7 +16,7 @@
}
?>
<a href="<?= $scheduleDowntimeLink ?>" data-base-target="_self">
<?= $this->icon('plug') ?>
<?= $this->icon('plug', null, array('aria-hidden' => 'true')) ?>
<?= $this->translate('Schedule downtime') ?>
</a>
<?php } else {

View File

@ -11,7 +11,7 @@ foreach ($object->hostgroups as $name => $alias) {
printf(
"<tr><th>%s</th><td>%s %s</td></tr>\n",
$this->translate('Hostgroups'),
$this->icon('host'),
$this->icon('host', null, array('aria-hidden' => 'true')),
implode(', ', $list)
);

View File

@ -12,7 +12,7 @@ foreach ($object->servicegroups as $name => $alias) {
printf(
"<tr><th>%s</th><td>%s %s</td></tr>\n",
$this->translate('Servicegroups'),
$this->icon('services'),
$this->icon('services', null, array('aria-hidden' => 'true')),
implode(', ', $list)
);

View File

@ -131,7 +131,7 @@
height: 2.2em;
margin: 0 auto 2.5em;
span.icon-info {
i.icon-info {
float: left;
height: 100%;
}