From af7acb3d700ed12fe091a85dff67adbb705313a4 Mon Sep 17 00:00:00 2001 From: Dries Buytaert Date: Sun, 3 Oct 2010 00:41:14 +0000 Subject: - Patch #821672 by dereine, mgifford, andypost, Damien Tournoud: forum icons not accessible to screen-reader users and forum icons not using sprites. --- modules/forum/forum-icon.tpl.php | 4 +++- modules/forum/forum.css | 22 +++++++++++++++++++++- modules/forum/forum.module | 12 ++++++++---- 3 files changed, 32 insertions(+), 6 deletions(-) (limited to 'modules/forum') diff --git a/modules/forum/forum-icon.tpl.php b/modules/forum/forum-icon.tpl.php index 9e8c653a8..4a43dd2ce 100644 --- a/modules/forum/forum-icon.tpl.php +++ b/modules/forum/forum-icon.tpl.php @@ -14,12 +14,14 @@ * @see theme_forum_icon() */ ?> +
- "misc/forum-$icon.png")) ?> + +
diff --git a/modules/forum/forum.css b/modules/forum/forum.css index f56930d54..adcf7aa70 100644 --- a/modules/forum/forum.css +++ b/modules/forum/forum.css @@ -24,4 +24,24 @@ #forum div.indent { margin-left: 20px; } - +#forum .icon div { + background-image: url(../../misc/forum-icons.png); + background-repeat: no-repeat; + width: 24px; + height: 24px; +} +#forum .icon .topic-status-new { + background-position: -24px 0; +} +#forum .icon .topic-status-hot { + background-position: -48px 0; +} +#forum .icon .topic-status-hot-new { + background-position: -72px 0; +} +#forum .icon .topic-status-sticky { + background-position: -96px 0; +} +#forum .icon .topic-status-closed { + background-position: -120px 0; +} diff --git a/modules/forum/forum.module b/modules/forum/forum.module index f5d779a91..d89f25e7e 100644 --- a/modules/forum/forum.module +++ b/modules/forum/forum.module @@ -1135,18 +1135,22 @@ function template_preprocess_forum_topic_list(&$variables) { function template_preprocess_forum_icon(&$variables) { $variables['hot_threshold'] = variable_get('forum_hot_topic', 15); if ($variables['num_posts'] > $variables['hot_threshold']) { - $variables['icon'] = $variables['new_posts'] ? 'hot-new' : 'hot'; + $variables['icon_class'] = $variables['new_posts'] ? 'hot-new' : 'hot'; + $variables['icon_title'] = $variables['new_posts'] ? t('Hot topic, new comments') : t('Hot topic'); } else { - $variables['icon'] = $variables['new_posts'] ? 'new' : 'default'; + $variables['icon_class'] = $variables['new_posts'] ? 'new' : 'default'; + $variables['icon_title'] = $variables['new_posts'] ? t('New comments') : t('Normal topic'); } if ($variables['comment_mode'] == COMMENT_NODE_CLOSED || $variables['comment_mode'] == COMMENT_NODE_HIDDEN) { - $variables['icon'] = 'closed'; + $variables['icon_class'] = 'closed'; + $variables['icon_title'] = t('Closed topic'); } if ($variables['sticky'] == 1) { - $variables['icon'] = 'sticky'; + $variables['icon_class'] = 'sticky'; + $variables['icon_title'] = t('Sticky topic'); } } -- cgit v1.2.3