Bonjour,
En exclusivité, et en considérant que j'ai bien compris ce que tu voulais, je t'ai préparé une petite modification a effectuer.
Dans
modcp.php, cherche:
- Code: Tout sélectionner
if ( !$is_auth['auth_mod'] )
{
message_die(GENERAL_MESSAGE, $lang['Not_Moderator'], $lang['Not_Authorised']);
}
Remplace par:
- Code: Tout sélectionner
if ( !$is_auth['auth_mod'] && !$extended_status )
{
message_die(GENERAL_MESSAGE, $lang['Not_Moderator'], $lang['Not_Authorised']);
}
Ensuite, dans
viewtopic.php, cherche:
- Code: Tout sélectionner
$postrow = array();
if ($row = $db->sql_fetchrow($result))
{
do
{
$postrow[] = $row;
}
while ($row = $db->sql_fetchrow($result));
$db->sql_freeresult($result);
$total_posts = count($postrow);
}
Et remplace par:
- Code: Tout sélectionner
$postrow = array();
$user_topic_posts = 0;
if ($row = $db->sql_fetchrow($result))
{
do
{
$postrow[] = $row;
$user_topic_posts += ( $row['user_id'] == $userdata['user_id'] ) ? 1 : 0;
}
while ($row = $db->sql_fetchrow($result));
$db->sql_freeresult($result);
$total_posts = count($postrow);
}
Et enfin, cherche:
- Code: Tout sélectionner
for ($ext_nb=0; $ext_nb<count($ext_status); $ext_nb++)
{
$ext_status_select .="<option value='" . $ext_status[$ext_nb][0] . "'";
if ( $forum_topic_data['topic_ext_status'] == $ext_status[$ext_nb][0] )
{
$ext_status_select .= ' selected ';
}
$ext_status_select .= ">" . $ext_status[$ext_nb][2] . "</option>";
}
$topic_mod .="<form action='modcp.$phpEx' method='post'><input type='submit' class='liteoption' name='" . $solved_act . "' value='" . $solved . "'><input type='submit' class='liteoption' name='" . $totrash_act . "' value='" . $totrash . "'><input type='hidden' name='sid' value='" . $userdata['session_id'] . "'><input type='hidden' name='mode' value='status'><input type=hidden name='" . POST_FORUM_URL . "' value=". $forum_topic_data['forum_id'] . "><input type=hidden name='" . POST_TOPIC_URL . "' value=". $forum_topic_data['topic_id'] . "><input type='submit' class='liteoption' name='extended_status' value='" . $lang['Extended_Status'] . "'><select class='liteoption' name='ext_status_value'>" . $ext_status_select . "</select></form>";
// Fin ajout de type de sujets
}
Et remplace par:
- Code: Tout sélectionner
$topic_mod .="<form action='modcp.$phpEx' method='post'><input type='submit' class='liteoption' name='" . $solved_act . "' value='" . $solved . "'><input type='submit' class='liteoption' name='" . $totrash_act . "' value='" . $totrash . "'>";
// Fin ajout de type de sujets
}
if ( $user_topic_posts || $is_auth['auth_mod'] )
{
for ($ext_nb=0; $ext_nb<count($ext_status); $ext_nb++)
{
$ext_status_select .="<option value='" . $ext_status[$ext_nb][0] . "'";
if ( $forum_topic_data['topic_ext_status'] == $ext_status[$ext_nb][0] )
{
$ext_status_select .= ' selected ';
}
$ext_status_select .= ">" . $ext_status[$ext_nb][2] . "</option>";
}
$topic_mod .= !$is_auth['auth_mod'] ? "<form action='modcp.$phpEx' method='post'>" : '';
$topic_mod .="<input type='hidden' name='sid' value='" . $userdata['session_id'] . "'><input type='hidden' name='mode' value='status'><input type=hidden name='" . POST_FORUM_URL . "' value=". $forum_topic_data['forum_id'] . "><input type=hidden name='" . POST_TOPIC_URL . "' value=". $forum_topic_data['topic_id'] . "><input type='submit' class='liteoption' name='extended_status' value='" . $lang['Extended_Status'] . "'><select class='liteoption' name='ext_status_value'>" . $ext_status_select . "</select></form>";
}
Voilà, normalement seuls les utilisateurs ayant postés au moins un message dans le sujet peuvent voir le menu déroulant et peuvent changer le type de sujet (ainsi, bien sûr, que les modérateurs).
