Darathor
Citation :
But : Ajoute dans les forums contenant des sous-forums un lien permettant de marquer comme lus les topics des sous-forums en plus des topics du forum lui-même. Corrige également une erreur de traduction (mot manquant) dans le message apparaissant après le marquage d'un forum.
Prérequis :
- Pseudo sub-forums.
Auteur : Darathor (darathor@free.fr)
Version : 1.0 (02/09/2005)
Compatibilité phpBB : 2.0.17
Dans "viewtopic.php" :
Code :
#
# Trouver
#
//
// End handle marking posts
//
#
# Ajouter avant
#
// DEBUT MOD Mark sub-forums
elseif($mark_read == 'topics_sub')
{
if($userdata['session_logged_in'])
{
$sql = "SELECT MAX(post_time) AS last_post, f.forum_id AS forum_id
FROM " . POSTS_TABLE . " AS p, " . FORUMS_TABLE . " AS f
WHERE f.forum_id = p.forum_id
AND (p.forum_id = $forum_id OR attached_forum_id = $forum_id)
GROUP BY forum_id";
if(!($result = $db->sql_query($sql)))
{
message_die(GENERAL_ERROR, 'Could not obtain forums information', '', __LINE__, __FILE__, $sql);
}
if($rows = $db->sql_fetchrowset($result))
{
$tracking_forums = (isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f'])) ? unserialize($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f']) : array();
$tracking_topics = (isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_t'])) ? unserialize($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_t']) : array();
$maj = FALSE;
for($i=0; $i<count($rows); $i++)
{
$forum_id = $rows[$i]['forum_id'];
if((count($tracking_forums) + count($tracking_topics)) >= 150 && empty($tracking_forums[$forum_id]))
{
asort($tracking_forums);
unset($tracking_forums[key($tracking_forums)]);
}
if($rows[$i]['last_post'] > $userdata['user_lastvisit'])
{
$tracking_forums[$forum_id] = time();
$maj = TRUE;
}
}
if($maj)
{
setcookie($board_config['cookie_name'] . '_f', serialize($tracking_forums), 0, $board_config['cookie_path'], $board_config['cookie_domain'], $board_config['cookie_secure']);
}
}
$template->assign_vars(array(
'META' => '<meta http-equiv="refresh" content="3;url=' . append_sid("viewforum.$phpEx?" . POST_FORUM_URL . "=$forum_id") . '">')
);
}
$message = $lang['MaSF_Topics_marked_read_sub'] . '<br /><br />' . sprintf($lang['Click_return_forum'], '<a href="' . append_sid("viewforum.$phpEx?" . POST_FORUM_URL . "=$forum_id") . '">', '</a> ');
message_die(GENERAL_MESSAGE, $message);
}
// FIN MOD Mark sub-forums
#
# Trouver
#
'L_MARK_TOPICS_READ' => $lang['Mark_all_topics'],
#
# Ajouter après
#
// DEBUT MOD Mark sub-forums
'L_MARK_TOPICS_READ_SUB' => $lang['MaSF_Mark_all_topics_sub'],
// FIN MOD Mark sub-forums
#
# Trouver
#
'U_MARK_READ' => append_sid("viewforum.$phpEx?" . POST_FORUM_URL . "=$forum_id&mark=topics"))
#
# Ajouter avant
#
// DEBUT MOD Mark sub-forums
'U_MARK_READ_SUB' => append_sid("viewforum.$phpEx?" . POST_FORUM_URL . "=$forum_id&mark=topics_sub"),
// FUN MOD Mark sub-forums
Dans "language/lang_french/lang_main.php" :
Code :
#
# Trouver
#
$lang['Topics_marked_read'] = 'Les sujets de forum sont à présent marqués comme lus.';
#
# Remplacer par
#
// DEBUT MOD Mark sub-forums
// -- DEBUT Enlevé
// $lang['Topics_marked_read'] = 'Les sujets de forum sont à présent marqués comme lus.';
// -- FIN Enlevé
$lang['Topics_marked_read'] = 'Les sujets de ce forum sont à présent marqués comme lus.';
// FIN MOD Mark sub-forums
#
# Trouver
#
?>
#
# Ajouter avant
#
// DEBUT MOD Mark sub-forums
$lang['MaSF_Mark_all_topics_sub'] = 'Marquez tous les sujets comme lus (<strong>sous-forums compris</strong>)';
$lang['MaSF_Topics_marked_read_sub'] = 'Les sujets de ce forum et de ses sous-forums sont à présent marqués comme lus.';
// FIN MOD Mark sub-forums
Dans "templates/subsilver/viewforum_body.tpl" :
Code :
#
# Dans une ligne, trouver
#
<td align="right" valign="bottom" class="nav" nowrap="nowrap"><span class="gensmall"><a href="{U_MARK_READ}">{L_MARK_TOPICS_READ}</a></span></td>
#
# Dans la ligne, ajouter après
#
<td align="right" valign="bottom" class="nav" nowrap="nowrap"><span class="gensmall"><a href="{U_MARK_READ}">{L_MARK_TOPICS_READ}</a>
<!-- BEGIN switch_attached_list -->
<br /><a href="{U_MARK_READ_SUB}">{L_MARK_TOPICS_READ_SUB}</a>
<!-- END switch_attached_list -->
</span></td>