Der Thread heißt zwar gleich, aber hier geht es um etwas anderes. (Also mach das mal fix rückgängig. ^^)
Du willst nämlich, daß Gäste die Zahlen der Beiträge/Themen sehen und wer zuletzt gepostet hat. Aber daß sie das entsprechende Forum trotzdem nicht betreten können.
https://community.mybb.com/thread-171902...63646.html
Wenn jeder, der das braucht, einfach mal eben schreiben würde, daß er es auch braucht, wäre das ja einfach mal nett, denn dann könnte man mal sehen, wie viele Leute das eigentlich brauchen. Und ich stünde nicht so allein da. So bleibts halt dabei, daß es angeblich für kaum jemanden interessant ist...
Weil: Dafür kann man leider kein Plugin schreiben. Aber du kannst für den gewünschten Effekt eine Core-PHP-Datei ändern. Und zwei Templates hinzufügen. Und ein anderes ändern. Und das geht so:
1. Lege ein neues Template an. Name:
forumbit_depth2_forum_hidden
Inhalt:
Code:
<tr>
<td class="{$bgcolor}" align="center" valign="center" width="1"><span class="forum_status forum_{$lightbulb['folder']} ajax_mark_read" title="{$lightbulb['altonoff']}" id="mark_read_{$forum['fid']}"></span></td>
<td class="{$bgcolor}" valign="top">
<span class="lockedforumname">{$forum['name']}</span>{$forum_viewers_text}<div class="smalltext">{$forum['description']}{$modlist}{$subforums}</div>
</td>
<td class="{$bgcolor}" valign="top" align="center" style="white-space: nowrap">{$threads}{$unapproved['unapproved_threads']}</td>
<td class="{$bgcolor}" valign="top" align="center" style="white-space: nowrap">{$posts}{$unapproved['unapproved_posts']}</td>
<td class="{$bgcolor}" valign="top" align="right" style="white-space: nowrap">{$lastpost}</td>
</tr>
2. Lege ein neues Template an. Name:
forumbit_depth3_hidden
Inhalt:
Code:
{$comma}{$statusicon}<span class="lockedforumname">{$forum['name']}</span>
3. Ändere das Template mit dem Namen:
forumbit_depth2_forum_lastpost_hidden
Neuer Inhalt (laß weg, was du im letzten Post nicht angezeigt haben willst - klar, ne?):
Code:
<div class="smalltext center"><strong>{$lastpost_subject}</strong><br>{$lastpost_date}<br />{$lang->by} {$lastpost_profilelink}</div>
4. Ändere die Datei
inc/functions_forumlist.php nach folgender Anweisung
Code:
ersetze:
if(isset($permissions['canviewthreads']) && $permissions['canviewthreads'] != 1)
{
$hideinfo = true;
}
durch
if(isset($permissions['canviewthreads']) && $permissions['canviewthreads'] != 1)
{
$hideinfo = true;
// EDIT: => Lock forum if no threads permitted!
$forum_url = "";
$showlockicon = 1;
}
-----------------------
ersetze:
if(isset($permissions['canonlyviewownthreads']) && $permissions['canonlyviewownthreads'] == 1)
{
$hidecounters = true;
durch:
if(isset($permissions['canonlyviewownthreads']) && $permissions['canonlyviewownthreads'] == 1)
{
// EDIT: => Show Counters for everyone!
// $hidecounters = true;
-----------------------
ersetze:
// If we are hiding information (lastpost) because we aren't authenticated against the password for this forum, remove them
if($hidelastpostinfo == true)
{
$lastpost_data = array(
'lastpost' => 0,
'lastposter' => ''
);
}
durch:
// If we are hiding information (lastpost) because we aren't authenticated against the password for this forum, remove them
// EDIT: => No, don't!
/*
if($hidelastpostinfo == true)
{
$lastpost_data = array(
'lastpost' => 0,
'lastposter' => ''
);
}
*/
-----------------------
ersetze:
// Increment the counters for the parent forum (returned later)
if($hideinfo != true && $hidecounters != true)
durch:
// Increment the counters for the parent forum (returned later)
// EDIT: => only no counters when explicitly no counters wanted
// if($hideinfo != true && $hidecounters != true)
if($hidecounters != true)
-----------------------
ersetze:
// Fetch the template and append it to the list
eval("\$forum_list .= \"".$templates->get("forumbit_depth3", 1, 0)."\";");
durch:
// Fetch the template and append it to the list
// EDIT: => hidden if no url:
if($forum_url == "") {
eval("\$forum_list .= \"".$templates->get("forumbit_depth3_hidden", 1, 0)."\";");
}
else {
eval("\$forum_list .= \"".$templates->get("forumbit_depth3", 1, 0)."\";");
}
-----------------------
ersetze:
// Forum is a standard forum, set template type
else
{
$forumcat = '_forum';
}
durch:
// Forum is a standard forum, set template type
else
{
// EDIT: => hidden if no url:
if($forum_url == "") {
$forumcat = '_forum_hidden';
}
else {
$forumcat = '_forum';
}
}
-----------------------
ersetze:
if($forum['linkto'] == '')
{
// No posts have been made in this forum - show never text
if(($lastpost_data['lastpost'] == 0 || $lastpost_data['lastposter'] == '') && $hideinfo != true)
{
eval("\$lastpost = \"".$templates->get("forumbit_depth2_forum_lastpost_never")."\";");
}
elseif($hideinfo != true)
durch:
if($forum['linkto'] == '')
{
// EDIT: => Last Date for everyone!
// Format lastpost date and time
$lastpost_date = my_date('relative', $lastpost_data['lastpost']);
$lastpost_profilelink = build_profile_link($lastpost_data['lastposter'], $lastpost_data['lastposteruid']);
$lastpost_subject = $full_lastpost_subject = $parser->parse_badwords($lastpost_data['lastpostsubject']);
// Call hidden lastpost template
if($depth != 1)
{
eval("\$lastpost = \"".$templates->get("forumbit_depth2_forum_lastpost_hidden")."\";");
}
// No posts have been made in this forum - show never text
// EDIT: => Last Date for everyone!
// if(($lastpost_data['lastpost'] == 0 || $lastpost_data['lastposter'] == '') && $hideinfo != true)
if(($lastpost_data['lastpost'] == 0 || $lastpost_data['lastposter'] == ''))
{
eval("\$lastpost = \"".$templates->get("forumbit_depth2_forum_lastpost_never")."\";");
}
elseif($hideinfo != true)
-----------------------
ersetze:
// If this forum is a link or is password protected and the user isn't authenticated, set counters to "-"
if($forum['linkto'] != '' || $hideinfo == true || $hidecounters == true)
{
$posts = "-";
$threads = "-";
}
durch:
// If this forum is a link or is password protected and the user isn't authenticated, set counters to "-"
// EDIT: => Only hide counters when counters should be explicitly hidden
//if($forum['linkto'] != '' || $hideinfo == true || $hidecounters == true)
if($forum['linkto'] != '' || $hidecounters == true)
{
$posts = "-";
$threads = "-";
}
-----------------------
ersetze:
// If this forum is a link or is password protected and the user isn't authenticated, set lastpost to "-"
if($forum['linkto'] != '' || $hideinfo == true || $hidelastpostinfo == true)
{
eval("\$lastpost = \"".$templates->get("forumbit_depth2_forum_lastpost_hidden")."\";");
}
durch:
// If this forum is a link or is password protected and the user isn't authenticated, set lastpost to "-"
// EDIT: => too late for hideinfo, already done
//if($forum['linkto'] != '' || $hideinfo == true || $hidelastpostinfo == true)
if($forum['linkto'] != '')
{
eval("\$lastpost = \"".$templates->get("forumbit_depth2_forum_lastpost_hidden")."\";");
}
-----------------------
ersetze:
// If the current forums lastpost is greater than other child forums of the current parent and forum info isn't hidden, overwrite it
if((!isset($parent_lastpost) || $lastpost_data['lastpost'] > $parent_lastpost['lastpost']) && $hideinfo != true)
durch:
// If the current forums lastpost is greater than other child forums of the current parent and forum info isn't hidden, overwrite it
// EDIT: => $hideinfo removed
// if((!isset($parent_lastpost) || $lastpost_data['lastpost'] > $parent_lastpost['lastpost']) && $hideinfo != true)
if((!isset($parent_lastpost) || $lastpost_data['lastpost'] > $parent_lastpost['lastpost']) )
Und ich glaube, das müßte es gewesen sein. Sieht jetzt viel aus. Ist es auch.
Ich übernehme keine Haftung. Und sichere vorher alles.
LG
Ama