Last Recent Topics erweitern
Verfasst: 02.09.2004 09:08
Hallo zusammen..
ich habe vor kurzen in meinem Forum eine Erweiterung installiert, die mir die letzen X Topics per Marquee auf der Indexseite angibt. Das funktioniert auch alles wunderbar, nur würde ich da gerne eine Erweiterung hinzufügen.
Im moment werden da "Topictitel" "Poster" und "Datum+Uhrzeit" angezeigt.
Ich würde jetzt aber auch gerne noch zusätzlich die Kategorie haben, da mein Forum sehr verschachtelt sein wird.
Ich habe mal den Code angefügt, leider kenn ich mich mit MySql nicht so aus. Es reicht um Datenbanken anzulegen und Foren etc. auf die Datenbank einzustellen...
Ich habe gestern da auch schon was mit experimentiert, aber das ist wie die Nadel im Heuhaufen
Man bekommt ja schon bei der obigen Abfrage die Forum ID, aber ich weiß nicht wie ich da jetzt den namen herbekomme.
Wäre super wenn mir da jemand helfen könnte.
Viele Grüsse
Stefan
ich habe vor kurzen in meinem Forum eine Erweiterung installiert, die mir die letzen X Topics per Marquee auf der Indexseite angibt. Das funktioniert auch alles wunderbar, nur würde ich da gerne eine Erweiterung hinzufügen.
Im moment werden da "Topictitel" "Poster" und "Datum+Uhrzeit" angezeigt.
Ich würde jetzt aber auch gerne noch zusätzlich die Kategorie haben, da mein Forum sehr verschachtelt sein wird.
Ich habe mal den Code angefügt, leider kenn ich mich mit MySql nicht so aus. Es reicht um Datenbanken anzulegen und Foren etc. auf die Datenbank einzustellen...
Code: Alles auswählen
//
// Get The Data
//
$template->assign_vars(array(
'MARQUEE_TOPIC' => str_replace("%s",$board_config['topics_on_index'],$lang['marquee_topic']) )
);
$sql = "SELECT t.topic_id, t.topic_title, t.topic_last_post_id, t.forum_id, t.topic_type, t.topic_status, p.post_id, p.poster_id,
p.post_time, u.user_id, u.username, u.user_lastvisit
FROM " . TOPICS_TABLE . " t, " . FORUMS_TABLE . " f, " . POSTS_TABLE . " p, " . USERS_TABLE . " u
WHERE t.forum_id IN " . $auth_view_forum_sql . " AND t.topic_id = p.topic_id
AND f.forum_id = t.forum_id
AND t.topic_status <> 2
AND p.post_id = t.topic_last_post_id
AND p.poster_id = u.user_id
ORDER BY t.topic_last_post_id DESC";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not query recent posts marquee information', '', __LINE__, __FILE__, $sql);
}
if ($row = $db->sql_fetchrowset($result))
{
$db->sql_freeresult($result);
}
if( count($row) <= $board_config['topics_on_index'] )
{
$topics = count($row);
}
else
{
$topics = $board_config['topics_on_index'];
}
for($i = 0; $i < $topics; $i++)
{
$mar_title = $row[$i]["topic_title"];
$mar_url = $phpbb_root_path . 'viewtopic.'.$phpEx.'?t='.$row[$i]["topic_id"];
$mar_user = $row[$i]["username"];
if ( $row[$i]["topic_status"] == TOPIC_LOCKED )
{
if ( $row[$i]["post_time"] > $row[$i]["user_lastvisit"] )
{
$pic = $images['folder_locked_new'];
}
else
{
$pic = $images['folder_locked'];
}
}
else
{
if ( $row[$i]["topic_type"] == POST_GLOBAL_ANNOUNCE )
{
if ( $row[$i]["post_time"] > $row[$i]["user_lastvisit"] )
{
$pic = $images['folder_global_announce_new'];
}
else
{
$pic = $images['folder_global_announce'];
}
}
else if ( $row[$i]["topic_type"] == POST_ANNOUNCE )
{
if ( $row[$i]["post_time"] > $row[$i]["user_lastvisit"] )
{
$pic = $images['folder_announce_new'];
}
else
{
$pic = $images['folder_announce'];
}
}
else if ( $row[$i]["topic_type"] == POST_STICKY )
{
if ( $row[$i]["post_time"] > $row[$i]["user_lastvisit"] )
{
$pic = $images['folder_sticky_new'];
}
else
{
$pic = $images['folder_sticky'];
}
}
else { if ( $row[$i]["post_time"] > $userdata['user_lastvisit'] )
{
$pic = $images['folder_new']; }else{ $pic = $images['folder'];
}
}
}
$template->assign_block_vars('marqueerow', array(
'FOLD_URL' => $pic,
'TOPIC_TITLE' => $row[$i]["topic_title"],
'TOPIC_URL' => append_sid($phpbb_root_path . 'viewtopic.'.$phpEx.'?t='.$row[$i]["topic_id"]),
'USERNAME' => $row[$i]["username"],
'USER_PROF' => append_sid($phpbb_root_path . 'profile.'.$phpEx.'?mode=viewprofile&u='.$row[$i]["user_id"]),
'POST_DATE' => create_date($board_config['default_dateformat'], $row[$i]["post_time"], $board_config['board_timezone']))
);
}

Wäre super wenn mir da jemand helfen könnte.
Viele Grüsse
Stefan