aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul S. Owen <psotfx@users.sourceforge.net>2003-05-24 00:30:53 +0000
committerPaul S. Owen <psotfx@users.sourceforge.net>2003-05-24 00:30:53 +0000
commitf381c0d3ef39a078a21b727a07caeeeef2745fa4 (patch)
treef9300d4118baca17de470143ad6ac722b62a767d
parentbea13814e7831d3a5f19709e598dbefbae6e222d (diff)
downloadforums-f381c0d3ef39a078a21b727a07caeeeef2745fa4.tar
forums-f381c0d3ef39a078a21b727a07caeeeef2745fa4.tar.gz
forums-f381c0d3ef39a078a21b727a07caeeeef2745fa4.tar.bz2
forums-f381c0d3ef39a078a21b727a07caeeeef2745fa4.tar.xz
forums-f381c0d3ef39a078a21b727a07caeeeef2745fa4.zip
more fun with cookies
git-svn-id: file:///svn/phpbb/trunk@4054 89ea8834-ac86-4346-8a33-228a782c2dd0
-rw-r--r--phpBB/includes/functions.php5
-rw-r--r--phpBB/includes/functions_display.php4
-rw-r--r--phpBB/includes/functions_posting.php2
-rw-r--r--phpBB/viewforum.php6
4 files changed, 9 insertions, 8 deletions
diff --git a/phpBB/includes/functions.php b/phpBB/includes/functions.php
index de1f7064e8..d293157bd7 100644
--- a/phpBB/includes/functions.php
+++ b/phpBB/includes/functions.php
@@ -35,8 +35,9 @@ function set_config($config_name, $config_value, $is_dynamic = FALSE)
}
else
{
- $db->sql_query('DELETE FROM ' . CONFIG_TABLE . "
- WHERE config_name = '" . $config_name . "'");
+ $sql = 'DELETE FROM ' . CONFIG_TABLE . "
+ WHERE config_name = '$config_name'";
+ $db->sql_query($sql);
$sql = 'INSERT INTO ' . CONFIG_TABLE . " (config_name, config_value)
VALUES ('$config_name', '" . $db->sql_escape($config_value) . "')";
diff --git a/phpBB/includes/functions_display.php b/phpBB/includes/functions_display.php
index d65fe44c19..c9a69b1349 100644
--- a/phpBB/includes/functions_display.php
+++ b/phpBB/includes/functions_display.php
@@ -55,8 +55,8 @@ function display_forums($root_data = '', $display_moderators = TRUE)
$lastread_select = '';
$sql_lastread = '';
- $tracking_forums = (isset($_COOKIE[$config['cookie_name'] . '_f'])) ? unserialize($_COOKIE[$config['cookie_name'] . '_f']) : array();
- $tracking_topics = (isset($_COOKIE[$config['cookie_name'] . '_t'])) ? unserialize($_COOKIE[$config['cookie_name'] . '_t']) : array();
+ $tracking_forums = (isset($_COOKIE[$config['cookie_name'] . '_f'])) ? unserialize(stripslashes($_COOKIE[$config['cookie_name'] . '_f'])) : array();
+ $tracking_topics = (isset($_COOKIE[$config['cookie_name'] . '_t'])) ? unserialize(stripslashes($_COOKIE[$config['cookie_name'] . '_t'])) : array();
}
$sql = "SELECT f.* $lastread_select
diff --git a/phpBB/includes/functions_posting.php b/phpBB/includes/functions_posting.php
index 7ae621ed6e..24284032ea 100644
--- a/phpBB/includes/functions_posting.php
+++ b/phpBB/includes/functions_posting.php
@@ -1173,7 +1173,7 @@ function submit_post($mode, $message, $subject, $username, $topic_type, $bbcode_
// Mark this topic as read and posted to.
$mark_mode = ($mode == 'post' || $mode == 'reply' || $mode == 'quote') ? 'post' : 'topic';
- markread($mark_mode, $post_data['forum_id'], $post_data['topic_id'], $post_data['post_id']);
+ markread($mark_mode, $post_data['forum_id'], $post_data['topic_id'], $post_data['post_time']);
$db->sql_transaction('commit');
diff --git a/phpBB/viewforum.php b/phpBB/viewforum.php
index 25c88712fd..12b72b5bae 100644
--- a/phpBB/viewforum.php
+++ b/phpBB/viewforum.php
@@ -519,7 +519,7 @@ if ($forum_data['forum_type'] == FORUM_POST)
if ($config['load_db_lastread'])
{
- if ($row['mark_time'] > $row['topic_last_post_time'] && !isset($update_forum))
+ if ($row['mark_time'] >= $row['topic_last_post_time'] && !isset($update_forum))
{
$update_forum = true;
}
@@ -530,7 +530,7 @@ if ($forum_data['forum_type'] == FORUM_POST)
}
else
{
- if ($tracking_topics[$topic_id] > $row['topic_last_post_time'] && !isset($update_forum))
+ if ($tracking_topics[$topic_id] >= $row['topic_last_post_time'] && !isset($update_forum))
{
$update_forum = true;
}
@@ -549,7 +549,7 @@ if ($forum_data['forum_type'] == FORUM_POST)
// after reading a topic
if ($user->data['user_id'] != ANONYMOUS && $update_forum)
{
- markread('mark', $forum_id);
+ markread('mark', $forum_id, false, time());
}
}