Seite 1 von 2
Neue Beiträge in Geschlossnen Foren -kein icon
Verfasst: 06.07.2007 03:05
von mark2
Eigentlich kann in einem geschlossenem Thema oder Forum keiner schreiben. Wenn da nicht die Admins und Moderatoren währen.
Verfasst einer der Admins oder Moderatoren einen Beitag in einem geschlossenem Forum so bekommt das keiner mit. Da ich das in meinem Forum oft nutze ist das nicht so toll. Leider hat phpbb dafür kein icon und keine Ausgabe vorgesehen.
Ich könnte zwar über die Foren Berechtigung das so einstellen dass wenn das Forum entsperrt ist dennoch nur Admins posten können aber das hat den Nachteil dass dann jeder der da posten möchte erst beim abschicken seines Beitrags merkt dass er nicht posten kann. Was dann für denjenigen ärgerlich ist bei längeren Texten.
Gibt es dafür irgend eine Lösung?
Verfasst: 06.07.2007 09:53
von Mahony
Hallo
Mit dem
UPI2DB MOD kannst du Beiträge bewusst als neu markieren. Frag einfach mal im Forum dort nach ob das dann auch bei gesperrten Foren zutrifft.
Grüße: Mahony
Verfasst: 07.07.2007 00:54
von mark2
Mit dem UPI2DB MOD hatte ich so meine Probleme beim Einbau. Und richtig funktioniert hat er auch nicht. Ist mir auch zu gewaltig das Teil. Darum habe ich ihn nicht mehr.
Möchte auch nicht noch einen großen mod nur wegen den subforen einbauen. Musste ja schon den extremeStyles für die subforen installieren.
Währe mir schon lieber wenn man in der index.php den code für gesperrte Foren genau so schreiben würde wie den für offene Foren. Sollte doch möglich sein oder?
Wird das alles nur in der index.php geregelt oder müsste da wo anders auch noch etwas gemacht werden?
Verfasst: 07.07.2007 10:24
von StarWolf3000
ich glaube, ich hab da auch schon den Code ausgetüftelt (!UNGETESTET!):
Code: Alles auswählen
#
#-----[ OPEN ]---------------------------------------------
#
index.php
#
#-----[ FIND ]---------------------------------------------
#
if ( $forum_data[$j]['forum_status'] == FORUM_LOCKED )
{
$folder_image = $images['forum_locked'];
$folder_alt = $lang['Forum_locked'];
}
#
#-----[ REPLACE WITH ]---------------------------------------
#
if ( $forum_data[$j]['forum_status'] == FORUM_LOCKED )
{
if($userdata['session_logged_in'])
{
if(check_unread($forum_id))
{
$folder_image = $images['forum_locked_new'];
$folder_alt = $lang['Forum_locked'] . ' (' . $lang['New_posts'] . ')';
}
else
{
$folder_image = $images['forum_locked'];
$folder_alt = $lang['Forum_locked'];
}
}
else
{
$folder_image = $images['forum_locked'];
$folder_alt = $lang['Forum_locked'];
}
}
#
#-----[ OPEN ]---------------------------------------------
#
templates/dein_template/dein_template.cfg
#
#-----[ FIND ]---------------------------------------------
#
$images['forum_locked'] = "$current_template_images/folder_locked_big.gif";
#
#-----[ AFTER, ADD ]------------------------------------------
#
$images['forum_locked_new'] = "$current_template_images/folder_locked_new_big.gif";
#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM
Die
folder_locked_new_big.gif musst du allerdings selbst erstellen oder eine andere kopieren und umbenennen, da wie gesagt phpBB so eine Funktion nicht vorgesehen hat
Verfasst: 07.07.2007 23:04
von mark2
Das funktioniert leider nicht.
Bekomme diese Fehlermeldung.
Code: Alles auswählen
Fatal error: Call to undefined function: check_unread() in /usr/export/www/vhosts/funnetwork/hosting/mark2/phpBB2/index.php on line 441
Das hier ist die zeile 441.
Verfasst: 08.07.2007 11:27
von StarWolf3000
achso, stimmt ja, das gilt ja nur, wenn man den "Easy Sub-Forums MOD" drin hat, hier ist der korrigierte Code:
Code: Alles auswählen
#
#-----[ FIND ]------------------------------------------------
#
if ( $forum_data[$j]['forum_status'] == FORUM_LOCKED )
{
if($userdata['session_logged_in'])
{
if(check_unread($forum_id))
{
$folder_image = $images['forum_locked_new'];
$folder_alt = $lang['Forum_locked'] . ' (' . $lang['New_posts'] . ')';
}
else
{
$folder_image = $images['forum_locked'];
$folder_alt = $lang['Forum_locked'];
}
}
else
{
$folder_image = $images['forum_locked'];
$folder_alt = $lang['Forum_locked'];
}
}
#
#-----[ REPLACE WITH ]----------------------------------------
#
if ( $forum_data[$j]['forum_status'] == FORUM_LOCKED )
{
if($userdata['session_logged_in'])
{
if ( !empty($new_topic_data[$forum_id]) )
{
$forum_last_post_time = 0;
while( list($check_topic_id, $check_post_time) = @each($new_topic_data[$forum_id]) )
{
if ( empty($tracking_topics[$check_topic_id]) )
{
$unread_topics = true;
$forum_last_post_time = max($check_post_time, $forum_last_post_time);
$folder_image = $images['forum_locked_new'];
$folder_alt = $lang['Forum_locked'] . ' (' . $lang['New_posts'] . ')';
}
else
{
if ( $tracking_topics[$check_topic_id] < $check_post_time )
{
$unread_topics = true;
$forum_last_post_time = max($check_post_time, $forum_last_post_time);
$folder_image = $images['forum_locked_new'];
$folder_alt = $lang['Forum_locked'] . ' (' . $lang['New_posts'] . ')';
}
}
}
if ( !empty($tracking_forums[$forum_id]) )
{
if ( $tracking_forums[$forum_id] > $forum_last_post_time )
{
$unread_topics = false;
$folder_image = $images['forum_locked'];
$folder_alt = $lang['Forum_locked'];
}
}
if ( isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f_all']) )
{
if ( $HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f_all'] > $forum_last_post_time )
{
$unread_topics = false;
$folder_image = $images['forum_locked'];
$folder_alt = $lang['Forum_locked'];
}
}
}
}
else
{
$folder_image = $images['forum_locked'];
$folder_alt = $lang['Forum_locked'];
}
}
Verfasst: 08.07.2007 12:02
von mark2
Aber den subforen habe ich doch drin.
Ich probiere jetzt mal den neuen code.
den teil den ich ersetzten soll sieht bei mir also so aus.
Code: Alles auswählen
if ( $forum_data[$j]['forum_status'] == FORUM_LOCKED )
{
$folder_image = $images['forum_locked'];
$folder_alt = $lang['Forum_locked'];
// Begin Simple Subforums MOD
$unread_topics = false;
$folder_images = array(
'default' => $folder_image,
'new' => $images['forum_locked'],
'sub' => ( isset($images['forums_locked']) ) ? $images['forums_locked'] : $images['forum_locked'],
'subnew' => ( isset($images['forums_locked']) ) ? $images['forums_locked'] : $images['forum_locked'],
'subalt' => $lang['Forum_locked'],
'subaltnew' => $lang['Forum_locked'],
);
// End Simple Subforums MOD
}
Verfasst: 08.07.2007 12:27
von mark2
Jetzt verlieren alle Foren ihr Icon. Erst nach dem ersten subforum werden die Icon normal angezeigt. Das gilt wenn keine neuen Themen vorhanden sind.
Sobald ein (also nur eines) neues Thema vorhanden ist wird gleich in mehreren Foren ein neuer Beitrag gemeldet. ich schicke dir eine PM dann kannst du das Testen.
allerdings ist jetzt durch den Einbau der code für die subforen den ich oben gepostet habe nicht mehr drin. Eventuell liegt daran das Problem. Ich weiß aber nicht an welcher stelle der wieder rein muß.
Verfasst: 08.07.2007 12:49
von gn#36
- Du hast dein Thema binnen weniger Minuten/Stunden mit einem Folgebeitrag nach oben geschoben.
Die Mindestwartezeit für Topic Bumping beträgt 24 Stunden. - Für das Hinzufügen neuer Informationen gibt es den [ externes Bild ] (Edit-Button) mit welchem sehr leicht Beiträge bearbeitet werden können, ohne das Thema unübersichtlich zu machen.
Verfasst: 09.07.2007 15:30
von StarWolf3000
mark2 hat geschrieben:Aber den subforen habe ich doch drin.
Ich probiere jetzt mal den neuen code.
den teil den ich ersetzten soll sieht bei mir also so aus.
Code: Alles auswählen
if ( $forum_data[$j]['forum_status'] == FORUM_LOCKED )
{
$folder_image = $images['forum_locked'];
$folder_alt = $lang['Forum_locked'];
// Begin Simple Subforums MOD
$unread_topics = false;
$folder_images = array(
'default' => $folder_image,
'new' => $images['forum_locked'],
'sub' => ( isset($images['forums_locked']) ) ? $images['forums_locked'] : $images['forum_locked'],
'subnew' => ( isset($images['forums_locked']) ) ? $images['forums_locked'] : $images['forum_locked'],
'subalt' => $lang['Forum_locked'],
'subaltnew' => $lang['Forum_locked'],
);
// End Simple Subforums MOD
}
Du hast den anderen "Subforums"-MOD drin, daher: nimm alle Änderungen, die ich geschrieben hatte raus und ändere diesen Code-Abschnitt wie folgt ab:
Code: Alles auswählen
if ( $forum_data[$j]['forum_status'] == FORUM_LOCKED )
{
if ( !empty($new_topic_data[$forum_id]) )
{
$forum_last_post_time = 0;
while( list($check_topic_id, $check_post_time) = @each($new_topic_data[$forum_id]) )
{
if ( empty($tracking_topics[$check_topic_id]) )
{
$unread_topics = true;
$forum_last_post_time = max($check_post_time, $forum_last_post_time);
$folder_image = $images['forum_locked_new'];
$folder_alt = $images['forum_locked'] . '(' . $lang['New_posts'] . ')';
}
else
{
if ( $tracking_topics[$check_topic_id] < $check_post_time )
{
$unread_topics = true;
$forum_last_post_time = max($check_post_time, $forum_last_post_time);
$folder_image = $images['forum_locked_new'];
$folder_alt = $images['forum_locked'] . '(' . $lang['New_posts'] . ')';
}
}
}
if ( !empty($tracking_forums[$forum_id]) )
{
if ( $tracking_forums[$forum_id] > $forum_last_post_time )
{
$unread_topics = false;
$folder_image = $images['forum_locked'];
$folder_alt = $lang['Forum_locked'];
}
}
if ( isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f_all']) )
{
if ( $HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f_all'] > $forum_last_post_time )
{
$unread_topics = false;
$folder_image = $images['forum_locked'];
$folder_alt = $lang['Forum_locked'];
}
}
}
// $folder_image = $images['forum_locked'];
// $folder_alt = $lang['Forum_locked'];
// Begin Simple Subforums MOD
// $unread_topics = false;
$folder_images = array(
'default' => $images['forum_locked'],
'new' => $images['forum_locked_new'],
'sub' => ( isset($images['forums_locked']) ) ? $images['forums_locked'] : $images['forum_locked'],
'subnew' => ( isset($images['forums_locked']) ) ? $images['forums_locked'] : $images['forum_locked'],
'subalt' => $lang['Forum_locked'],
'subaltnew' => $lang['Forum_locked'],
);
// End Simple Subforums MOD
}