MyBB Community Forums

Full Version: Forum status icons missing after upgrade
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I've successfully upgraded from V1.6.1 to V1.8.26.
And I've been able to re-set almost everything back to former appearance.
However, I'm still missing the status icons - both on the forum lines and in the legend at page bottom:
[Image: IconlessLegend.png]

I cannot locate a setting in the ACP controlling this feature; can anyone please point me to its settings?

Board Settings/Forum Display Options
Use 'dot' Icons
Currently: Set to Yes

Board Settings/Forum Home Options:
Show Subforum Status Icons?
Show icons indicating whether or not a subforum contains new posts or not? This won't have any effect unless you enabled subforums display on the index.
Currently: Set to Yes, and the line above, "Subforums to show on Index listing", is set to '2'... meaning subforums are enabled.

So I'm still stumped on this one.... Confused
Is it possible the icon images themselves are somehow missing or the css is looking in the wrong place for them?
The class definitions have changed:

<dl class="forum_legend smalltext">
	<dt><span class="forum_status forum_on" title="{$lang->new_posts}"></span></dt>
	<dd>{$lang->new_posts}</dd>

	<dt><span class="forum_status forum_off" title="{$lang->no_new_posts}"></span></dt>
	<dd>{$lang->no_new_posts}</dd>

	<dt><span class="forum_status forum_offclose" title="{$lang->forum_closed}"></span></dt>
	<dd>{$lang->forum_closed}</dd>

	<dt><span class="forum_status forum_offlink" title="{$lang->forum_redirect}"></span></dt>
	<dd>{$lang->forum_redirect}</dd>
</dl>
Thanks for the reply, Ashley1.
I located the defs you mention, in the index template, and can confirm that yes, they are as you've quoted.

I wish I was experienced enough to know what to do with this information, though.
I'm not grasping where the connection is being missed. I don't see that they point to a location for the actual icon graphics.
If it's in some upstream css assignments for these four (5?) classes, where can I find that css?

Sorry I'm not more savvy!
In the default MyBB theme's global.css, there is a definition for .forum_status which identifies a background image. The location is images/forum_icon_sprite.png

A sprite is a single graphic with multiple versions of what is to be displayed. The css specifies the offset in the image for .forum_on, .forum_off, .forum_offclose, and .forum_offlink.

If you're not seeing the images in the index page, it's because server can't deliver images/forum_icon_sprite.png. The theme relies on other graphics at that location as well.

A different theme may use a different method to display its forum icons. For example, icons may be a FontAwesome character. The template identifies what is to be displayed. The CSS identifies how it is to be displayed.
HLFadmin, I can find no .forum_status definition in either the MyBB Default Theme's  global.css or my custom theme's global.css.
Maybe that's my problem, as I can confirm that the forum_icon_sprite.png file is in the correct location, just as you describe.

Can I steal this definition from some trusted source, to be added to my global.css?
A websearch for .forum_status leads me to...this thread! Rolleyes

There is a thread_status.css stylesheet under both the Default and my custom theme, and this does contain a pointer to the location for folders_sprite.png.
Is it possible there's also supposed to be an equivalent forum_status.css stylesheet containing a pointer to forum_icon_sprite.png?

Okay, solved - I think.

I did finally locate one other thread here dealing with replacing status-icon graphics, and an answer there did contain the aforementioned .forum_status code that went missing from my global.css after my upgrade.

For anyone with the same problem, here's the code:
.forum_status {
    height: 30px;
    width: 30px;
    background: url(images/forum_icon_sprite.png) no-repeat 0 0;
    display: inline-block;
}

.forum_on {
    background-position: 0 0;
}

.forum_off {
    background-position: 0 -30px;
}

.forum_offlock {
    background-position: 0 -60px;
}

.forum_offlink {
    background-position: 0 -90px;
}

.subforumicon {
    height: 10px;
    width: 10px;
    display: inline-block;
    margin: 0 5px;
    background: url(images/mini_status_sprite.png) no-repeat 0 0;
}

.subforum_minion {
    background-position: 0 0;
}

.subforum_minioff {
    background-position: 0 -10px;
}

.subforum_miniofflock {
    background-position: 0 -20px;
}

.subforum_miniofflink {
    background-position: 0 -30px;
}
You may have to be careful to NOT double up on the following, which I DID already have in my global.css:
.subforumicon {
	border: 0;
	vertical-align: middle;
}