Browse Source

News Fader Tweaks

- The news "item" is now inside a roundframe that is "integrated" with
the cat_bar.
- News items now only fade if there is more than one item.

Signed-off-by: emanuele <[email protected]>
Matthew Kerle 12 years ago
parent
commit
1ca74d5fe5

+ 55 - 52
Themes/default/BoardIndex.template.php

@@ -23,60 +23,63 @@ function template_main()
 	</div>';
 
 	// Show the news fader?  (assuming there are things to show...)
-	if ($settings['show_newsfader'] && !empty($context['news_lines']))
+	if (!empty($settings['show_newsfader']) && !empty($context['news_lines']))
 	{
 		echo '
-	<div id="newsfader">
-		<div class="cat_bar">
-			<h3 class="catbg">
-				<img id="newsupshrink" src="', $settings['images_url'], '/collapse.png" alt="*" title="', $txt['hide'], '" align="bottom" style="display: none;" />
-				', $txt['news'], '
-			</h3>
-		</div>
-		<ul class="reset" id="smfFadeScroller"', empty($options['collapse_news_fader']) ? '' : ' style="display: none;"', '>
-			<li>
-				', implode('</li><li>', $context['news_lines']), '
-			</li>
-		</ul>
-	</div>
-	<script type="text/javascript" src="', $settings['default_theme_url'], '/scripts/fader.js"></script>
-	<script type="text/javascript"><!-- // --><![CDATA[
-
-		// Create a news fader object.
-		var oNewsFader = new smc_NewsFader({
-			sFaderControlId: \'smfFadeScroller\',
-			sItemTemplate: ', JavaScriptEscape('<strong>%1$s</strong>'), ',
-			iFadeDelay: ', empty($settings['newsfader_time']) ? 5000 : $settings['newsfader_time'], '
-		});
-
-		// Create the news fader toggle.
-		var smfNewsFadeToggle = new smc_Toggle({
-			bToggleEnabled: true,
-			bCurrentlyCollapsed: ', empty($options['collapse_news_fader']) ? 'false' : 'true', ',
-			aSwappableContainers: [
-				\'smfFadeScroller\'
-			],
-			aSwapImages: [
-				{
-					sId: \'newsupshrink\',
-					srcExpanded: smf_images_url + \'/collapse.png\',
-					altExpanded: ', JavaScriptEscape($txt['hide']), ',
-					srcCollapsed: smf_images_url + \'/expand.png\',
-					altCollapsed: ', JavaScriptEscape($txt['show']), '
-				}
-			],
-			oThemeOptions: {
-				bUseThemeSettings: ', $context['user']['is_guest'] ? 'false' : 'true', ',
-				sOptionName: \'collapse_news_fader\',
-				sSessionVar: smf_session_var,
-				sSessionId: smf_session_id
-			},
-			oCookieOptions: {
-				bUseCookie: ', $context['user']['is_guest'] ? 'true' : 'false', ',
-				sCookieName: \'newsupshrink\'
-			}
-		});
-	// ]]></script>';
+			<div id="newsfader">
+				<div class="cat_bar">
+					<h3 class="catbg">
+						<img id="newsupshrink" src="', $settings['images_url'], '/collapse.png" alt="*" title="', $txt['hide'], '" align="bottom" style="display: none;" />
+						', $txt['news'], '
+					</h3>
+				</div>
+				<div class="roundframe rfix" id="smfFadeScrollerCont">
+					<ul class="reset" id="smfFadeScroller"', empty($options['collapse_news_fader']) ? '' : ' style="display: none;"', '>
+						<li>
+							', implode('</li><li>', $context['news_lines']), '
+						</li>
+					</ul>
+				</div>
+			</div>
+			<script type="text/javascript" src="', $settings['default_theme_url'], '/scripts/fader.js"></script>
+			<script type="text/javascript"><!-- // --><![CDATA[
+		
+				// Create a news fader object.
+				var oNewsFader = new smc_NewsFader({
+					sFaderControlId: \'smfFadeScroller\',
+					sItemTemplate: ', JavaScriptEscape('%1$s'), ',
+					iFadeDelay: ', empty($settings['newsfader_time']) ? 5000 : $settings['newsfader_time'], '
+				});
+		
+				// Create the news fader toggle.
+				var smfNewsFadeToggle = new smc_Toggle({
+					bToggleEnabled: true,
+					bCurrentlyCollapsed: ', empty($options['collapse_news_fader']) ? 'false' : 'true', ',
+					aSwappableContainers: [
+						\'smfFadeScrollerCont\'
+					],
+					aSwapImages: [
+						{
+							sId: \'newsupshrink\',
+							srcExpanded: smf_images_url + \'/collapse.png\',
+							altExpanded: ', JavaScriptEscape($txt['hide']), ',
+							srcCollapsed: smf_images_url + \'/expand.png\',
+							altCollapsed: ', JavaScriptEscape($txt['show']), '
+						}
+					],
+					oThemeOptions: {
+						bUseThemeSettings: ', $context['user']['is_guest'] ? 'false' : 'true', ',
+						sOptionName: \'collapse_news_fader\',
+						sSessionVar: smf_session_var,
+						sSessionId: smf_session_id
+					},
+					oCookieOptions: {
+						bUseCookie: ', $context['user']['is_guest'] ? 'true' : 'false', ',
+						sCookieName: \'newsupshrink\'
+					}
+				});
+			// ]]></script>
+		';
 	}
 
 	echo '

+ 7 - 1
Themes/default/css/index.css

@@ -913,6 +913,9 @@ img.sort {
 /* Used for combining cat/title headers with a content frame */
 .rfix {
 	margin-top: -1px;
+	border-top: 0;
+	border-top-left-radius: 0;
+	border-top-right-radius: 0;
 }
 
 /* The main content area.
@@ -1747,7 +1750,7 @@ ul li.greeting {
 }
 /* the newsfader */
 #newsfader {
-	margin: 0;
+	margin: 0 0 8px 0;
 }
 #smfFadeScroller {
 	text-align: center;
@@ -1755,6 +1758,9 @@ ul li.greeting {
 	overflow: auto;
 	color: #444444; /* shouldn't be shorthand style due to a JS bug in IE! */
 }
+ul#smfFadeScroller li {
+	font-weight: bold;
+}
 
 /* Styles for the info center on the board index.
 ---------------------------------------------------- */

+ 5 - 3
Themes/default/scripts/fader.js

@@ -35,7 +35,9 @@ function smc_NewsFader(oOptions)
 			aFaderItems.push($(this).html());
 		});
 
-	$(sControlId).html('<li>' + sItemTemplate.replace('%1$s', aFaderItems[0]) + '</li>').show();
-
-	fadeOut();
+	if (aFaderItems.length > 1)
+	{
+		$(sControlId).html('<li>' + sItemTemplate.replace('%1$s', aFaderItems[0]) + '</li>').show();
+		fadeOut();
+	}
 }