время установки: примерно 5 минут
сложность установки: Легко
известные мне аналоги: [BETA] Return on the previous message
Код: Выделить всё
#
#----[ OPEN ]----
#
posting.php
#
#----[ FIND ]----
#
$params = array('forum_id' => POST_FORUM_URL, 'topic_id' => POST_TOPIC_URL, 'post_id' => POST_POST_URL, 'lock_subject' => 'lock_subject' );
#
#----[ REPLACE WITH ]----
#
// +Last Post Redirect
$params = array('forum_id' => POST_FORUM_URL, 'topic_id' => POST_TOPIC_URL, 'post_id' => POST_POST_URL, 'lock_subject' => 'lock_subject', 'prev_post_id' => 'prev' );
// -Last Post Redirect
#
#----[ FIND ]----
#
$s_hidden_fields .= ( $delete || $mode == "delete" ) ? '<input type="hidden" name="mode" value="delete" />' : '<input type="hidden" name="mode" value="poll_delete" />';
#
#----[ AFTER, ADD ]----
#
// +Last Post Redirect
$s_hidden_fields .= '<input type="hidden" name="prev" value="' . $prev_post_id . '" />';
// -Last Post Redirect
#
#----[ FIND ]----
#
$return_message = '';
$return_meta = '';
#
#----[ BEFORE, ADD ]----
#
// +Last Post Redirect
$redirect_url = '';
// -Last Post Redirect
#
#----[ FIND ]----
#
submit_post($mode, $post_data, $return_message, $return_meta, $forum_id, $topic_id, $post_id, $poll_id, $topic_type, $bbcode_on, $html_on, $smilies_on, $attach_sig, $bbcode_uid, str_replace("\'", "''", $username), str_replace("\'", "''", $subject), str_replace("\'", "''", $message), str_replace("\'", "''", $poll_title), $poll_options, $poll_length);
#
#----[ REPLACE WITH ]----
#
// +Last Post Redirect
submit_post($mode, $post_data, $return_message, $return_meta, $forum_id, $topic_id, $post_id, $poll_id, $topic_type, $bbcode_on, $html_on, $smilies_on, $attach_sig, $bbcode_uid, str_replace("\'", "''", $username), str_replace("\'", "''", $subject), str_replace("\'", "''", $message), str_replace("\'", "''", $poll_title), $poll_options, $poll_length, $redirect_url);
// -Last Post Redirect
#
#----[ FIND ]----
#
delete_post($mode, $post_data, $return_message, $return_meta, $forum_id, $topic_id, $post_id, $poll_id);
#
#----[ REPLACE WITH ]----
#
// +Last Post Redirect
delete_post($mode, $post_data, $return_message, $return_meta, $forum_id, $topic_id, $post_id, $poll_id, $redirect_url, $prev_post_id);
// -Last Post Redirect
#
#----[ FIND ]----
#
if ($lock_subject)
{
#
#----[ AFTER, ADD ]----
#
// +Last Post Redirect
$redirect_url = append_sid("viewtopic.$phpEx?" . POST_POST_URL . "=" .$lock_subject."#".$lock_subject);
// -Last Post Redirect
#
#----[ FIND ]----
#
$template->assign_vars(array(
'META' => $return_meta)
);
message_die(GENERAL_MESSAGE, $return_message);
#
#----[ REPLACE WITH ]----
#
// +Last Post Redirect
if ($redirect_url)
{
redirect($redirect_url);
}
else
{
$template->assign_vars(array(
'META' => $return_meta)
);
message_die(GENERAL_MESSAGE, $return_message);
}
// -Last Post Redirect
#
#----[ OPEN ]----
#
viewtopic.php
#
#----[ FIND ]----
#
$temp_url = "posting.$phpEx?mode=delete&" . POST_POST_URL . "=" . $postrow[$i]['post_id'] . "&sid=" . $userdata['session_id'];
#
#----[ REPLACE WITH ]----
#
// +Last Post Redirect
$temp_url = $i ? "&prev=" . $postrow[$i - 1]['post_id'] : '';
$temp_url = "posting.$phpEx?mode=delete&" . POST_POST_URL . "=" . $postrow[$i]['post_id'] . $temp_url . "&sid=" . $userdata['session_id'];
// -Last Post Redirect
#
#----[ FIND ]----
#
$temp_url = "posting.$phpEx?mode=delete&" . POST_POST_URL . "=" . $postrow[$i]['post_id'] . "&sid=" . $userdata['session_id'];
#
#----[ REPLACE WITH ]----
#
// +Last Post Redirect
$temp_url = $i ? "&prev=" . $postrow[$i - 1]['post_id'] : '';
$temp_url = "posting.$phpEx?mode=delete&" . POST_POST_URL . "=" . $postrow[$i]['post_id'] . $temp_url . "&sid=" . $userdata['session_id'];
// -Last Post Redirect
#
#----[ OPEN ]----
#
includes/functions_post.php
#
#----[ FIND ]----
#
function submit_post($mode, &$post_data, &$message, &$meta, &$forum_id, &$topic_id, &$post_id, &$poll_id, &$topic_type, &$bbcode_on, &$html_on, &$smilies_on, &$attach_sig, &$bbcode_uid, &$post_username, &$post_subject, &$post_message, &$poll_title, &$poll_options, &$poll_length)
#
#----[ REPLACE WITH ]----
#
// +Last Post Redirect
function submit_post($mode, &$post_data, &$message, &$meta, &$forum_id, &$topic_id, &$post_id, &$poll_id, &$topic_type, &$bbcode_on, &$html_on, &$smilies_on, &$attach_sig, &$bbcode_uid, &$post_username, &$post_subject, &$post_message, &$poll_title, &$poll_options, &$poll_length, &$redirect_url)
// -Last Post Redirect
#
#----[ FIND ]----
#
$meta = '<meta http-equiv="refresh" content="3;url=' . append_sid("viewtopic.$phpEx?" . POST_POST_URL . "=" . $post_id) . '#' . $post_id . '">';
$message = $lang['Stored'] . '<br /><br />' . sprintf($lang['Click_view_message'], '<a href="' . append_sid("viewtopic.$phpEx?" . POST_POST_URL . "=" . $post_id) . '#' . $post_id . '">', '</a>') . '<br /><br />' . sprintf($lang['Click_return_forum'], '<a href="' . append_sid("viewforum.$phpEx?" . POST_FORUM_URL . "=$forum_id") . '">', '</a>');
#
#----[ BEFORE, ADD ]----
#
// +Last Post Redirect
$redirect_url = append_sid("viewtopic.$phpEx?" . POST_POST_URL . "=" . $post_id) . '#' . $post_id;
// -Last Post Redirect
#
#----[ FIND ]----
#
function delete_post($mode, &$post_data, &$message, &$meta, &$forum_id, &$topic_id, &$post_id, &$poll_id)
#
#----[ REPLACE WITH ]----
#
// +Last Post Redirect
function delete_post($mode, &$post_data, &$message, &$meta, &$forum_id, &$topic_id, &$post_id, &$poll_id, &$redirect_url, $prev_post_id='')
// -Last Post Redirect
#
#----[ FIND ]----
#
$meta = '<meta http-equiv="refresh" content="3;url=' . append_sid("viewtopic.$phpEx?" . POST_TOPIC_URL . '=' . $topic_id) . '">';
$message = (($mode == 'poll_delete') ? $lang['Poll_delete'] : $lang['Deleted']) . '<br /><br />' . sprintf($lang['Click_return_topic'], '<a href="' . append_sid("viewtopic.$phpEx?" . POST_TOPIC_URL . "=$topic_id") . '">', '</a>');
#
#----[ BEFORE, ADD ]----
#
$redirect_url = append_sid("viewtopic.$phpEx?" . POST_TOPIC_URL . '=' . $topic_id);
if ($prev_post_id)
{
$redirect_url .= '#' . $prev_post_id;
}