From 12ee85beafcb545fcb3a71eb1ad9cf90c329df33 Mon Sep 17 00:00:00 2001 From: fallenPineapple Date: Sat, 10 Aug 2013 17:16:30 -0400 Subject: Adds "noko50" (View Last 50 Posts) pages. (Broken Reply) --- post.php | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'post.php') diff --git a/post.php b/post.php index ab4775eb..a6997f45 100644 --- a/post.php +++ b/post.php @@ -656,6 +656,20 @@ if (isset($_POST['delete'])) { if ($config['always_noko'] || $noko) { $redirect = $root . $board['dir'] . $config['dir']['res'] . sprintf($config['file_page'], $post['op'] ? $id:$post['thread']) . (!$post['op'] ? '#' . $id : ''); + + if (!$post['op'] && isset($_SERVER['HTTP_REFERER'])) { + $regex = array( + 'board' => str_replace('%s', '(\w{1,8})', preg_quote($config['board_path'], '/')), + 'page' => str_replace('%d', '(\d+)', preg_quote($config['file_page'], '/')), + 'page50' => str_replace('%d', '(\d+)', preg_quote($config['file_page50'], '/')), + 'res' => preg_quote($config['dir']['res'], '/'), + ); + + if (preg_match('/\/' . $regex['board'] . $regex['res'] . $regex['page50'] . '([?&].*)?$/', $_SERVER['HTTP_REFERER'])) { + $redirect = $root . $board['dir'] . $config['dir']['res'] . + sprintf($config['file_page50'], $post['op'] ? $id:$post['thread']) . (!$post['op'] ? '#' . $id : ''); + } + } } else { $redirect = $root . $board['dir'] . $config['file_index']; -- cgit v1.3 From a4e97c32ec9d413ea2c77fab61a46c5e6c2cb2d7 Mon Sep 17 00:00:00 2001 From: fallenPineapple Date: Sun, 11 Aug 2013 06:29:30 -0400 Subject: noko50 reply fix --- post.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'post.php') diff --git a/post.php b/post.php index a6997f45..77c03439 100644 --- a/post.php +++ b/post.php @@ -170,7 +170,7 @@ if (isset($_POST['delete'])) { error($config['error']['bot']); // Check the referrer - if (!isset($_SERVER['HTTP_REFERER']) || !preg_match($config['referer_match'], urldecode($_SERVER['HTTP_REFERER']))) + if (!isset($_SERVER['HTTP_REFERER']) || !preg_match($config['referer_match'], rawurldecode($_SERVER['HTTP_REFERER']))) error($config['error']['referer']); checkDNSBL(); -- cgit v1.3