Improved pseudo sub-forums MOD hulp nodig
Geplaatst: 25 jun 2005, 15:48
Nederlandstalige phpBB Support
https://www.phpbb.nl/forums/
Code: Selecteer alles
// Added by Attached Forums MOD
if ($attachments)
{
//
// Obtain a list of topic ids which contain
// posts made since user last visited
//
if ( $userdata['session_logged_in'] )
{
$sql = "SELECT t.forum_id, t.topic_id, p.post_time
FROM " . TOPICS_TABLE . " t, " . POSTS_TABLE . " p
WHERE p.post_id = t.topic_last_post_id
AND p.post_time > " . $userdata['user_lastvisit'] . "
AND t.topic_moved_id = 0";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not query new topic information', '', __LINE__, __FILE__, $sql);
}
$new_topic_data = array();
while( $topic_data = $db->sql_fetchrow($result) )
{
$new_topic_data[$topic_data['forum_id']][$topic_data['topic_id']] = $topic_data['post_time'];
}
}
$sql2 = "SELECT f.*, p.post_time, p.post_username, u.username, u.user_id, t.topic_id, t.topic_title
FROM ((( " . FORUMS_TABLE . " f
LEFT JOIN " . POSTS_TABLE . " p ON p.post_id = f.forum_last_post_id )
LEFT JOIN " . USERS_TABLE . " u ON u.user_id = p.poster_id )
LEFT JOIN " . TOPICS_TABLE . " t ON t.topic_last_post_id = f.forum_last_post_id)
WHERE attached_forum_id = " . $forum_id . "
GROUP by f.forum_id ORDER BY f.forum_order";
$result2 = $db->sql_query ($sql2);
if (!$result2 )
{
message_die ('Could not gather attached forum info', __LINE__, __FILE__, $sql2);
}
if ($db->sql_numrows ($result2) != 0)
{
while( $row = $db->sql_fetchrow($result2) )
{
$forum_data[] = $row;
}
$is_auth_ary = auth(AUTH_VIEW, AUTH_LIST_ALL, $userdata, $forum_data);
$x=0;
foreach ($forum_data as $row2 => $value)
{
if ($is_auth_ary[$value['forum_id']]['auth_view'])
{
$x++;
if ($x==1)
{
$template->assign_block_vars ('switch_attached_list',
array( 'L_ATTACHED_FORUM' => $lang['Attached_forums'],
'L_ATTACHED_TOPICS' => $lang['Topics'],
'L_ATTACHED_POSTS' => $lang['Posts'],
'L_LAST_POST'=>$lang['Last_Post']
)
);
}
$attach_forum_link = append_sid('viewforum.php?f=' . $value['forum_id']);
$attach_forum_name = '<a href="' . append_sid('viewforum.php?f=' . $value['forum_id']) . '">' . $value['forum_name'] . '</a>' ;
$attach_forum_desc = $value['forum_desc'];
$attach_forum_topics = $value['forum_topics'];
$attach_forum_posts = $value['forum_posts'];
$last_post_id = $value['forum_last_post_id'];
if ( $value['forum_status'] == FORUM_LOCKED )
{
$folder_image = $images['forum_locked'];
$folder_alt = $lang['Forum_locked'];
}
else
{
$unread_topics = false;
if ( $userdata['session_logged_in'] )
{
$unread_topics=check_unread($value['forum_id']);
}
$folder_image = ( $unread_topics ) ? $images['forum_new'] : $images['forum'];
$folder_alt = ( $unread_topics ) ? $lang['New_posts'] : $lang['No_new_posts'];
}
if ( $value['forum_last_post_id'] )
{
if (strlen($value['topic_title'])>=25)
{
$value['topic_title']=substr($value['topic_title'],0,25). "...";
}
$last_post_time = create_date($board_config['default_dateformat'], $value['post_time'], $board_config['board_timezone']);
$last_post = '<a href="' . append_sid("viewtopic.$phpEx?" . POST_POST_URL . '=' . $value['forum_last_post_id']) . '#' . $value['forum_last_post_id'] . '">'.$value['topic_title'].' <img src="' . $images['icon_latest_reply'] . '" border="0" alt="' . $lang['View_latest_post'] . '" title="' . $lang['View_latest_post'] . '" /></a>';
$last_post .= '<br /> ';
$last_post .= ' '.$last_post_time;
$last_post .= '<br /> ';
$last_post .= ( $value['user_id'] == ANONYMOUS ) ? ( ($value['post_username'] != '' ) ? $value['post_username'] . ' ' : $lang['Guest'] . ' ' ) : '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . '=' . $value['user_id']) . '">' . $value['username'] . '</a> ';
}
else
{
$last_post = $lang['No_Posts'];
}
$template->assign_block_vars ('switch_attached_list.switch_attached_present',
array
(
'FORUM_FOLDER_IMG' => $folder_image,
'L_FORUM_FOLDER_ALT' => $folder_alt,
'FORUM_NAME' => $attach_forum_name,
'U_VIEWFORUM' => $attach_forum_link,
'FORUM_DESC' => $attach_forum_desc,
'TOPICS' => $attach_forum_topics,
'POSTS' => $attach_forum_posts,
'LAST_POST_ID' => $last_post,
));
}
}
}
$db->sql_freeresult ($result2);
}
// END Added by Attached Forums MOD
Code: Selecteer alles
if ( $value['forum_last_post_id'] )
{
if (strlen($value['topic_title'])>=25)
{
$value['topic_title']=substr($value['topic_title'],0,25). "...";
}
$last_post_time = create_date($board_config['default_dateformat'], $value['post_time'], $board_config['board_timezone']);
$last_post .= '<br /> ';
$last_post .= ' '.$last_post_time;
$last_post .= '<br /> ';
$last_post .= ( $value['user_id'] == ANONYMOUS ) ? ( ($value['post_username'] != '' ) ? $value['post_username'] . ' ' : $lang['Guest'] . ' ' ) : '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . '=' . $value['user_id']) . '">' . $value['username'] . '</a> <a href="' . append_sid("viewtopic.$phpEx?" . POST_POST_URL . '=' . $value['forum_last_post_id']) . '#' . $value['forum_last_post_id'] . '"> <img src="' . $images['icon_latest_reply'] . '" border="0" alt="' . $lang['View_latest_post'] . '" title="' . $lang['View_latest_post'] . '" /></a>';
}
else
{
Code: Selecteer alles
$last_post .= ( $value['user_id'] == ANONYMOUS ) ? ( ($value['post_username'] != '' ) ? $value['post_username'] . ' ' : $lang['Guest'] . ' ' ) : '<a href="' .