summaryrefslogtreecommitdiff
path: root/inc
diff options
context:
space:
mode:
authorMichael Save <savetheinternet@tinyboard.org>2013-01-23 13:42:14 +1100
committerMichael Save <savetheinternet@tinyboard.org>2013-01-23 13:42:14 +1100
commitcd81ae8ea586bd3a4a05b0070dcb496fa2c8bd71 (patch)
treee4c33da2be1a2e236063d3e1cd59c5ecd76d9f41 /inc
parentedb9999a7d74582f989f0372e04678b4fc7cb8dd (diff)
No point using JSON as Cache class already supports objects
Diffstat (limited to 'inc')
-rw-r--r--inc/functions.php14
1 files changed, 5 insertions, 9 deletions
diff --git a/inc/functions.php b/inc/functions.php
index 90e0bf16..2ceb8a5d 100644
--- a/inc/functions.php
+++ b/inc/functions.php
@@ -974,9 +974,7 @@ function index($page, $mod=false) {
$th['sticky'], $th['locked'], $th['sage'], $th['embed'], $mod ? '?/' : $config['root'], $mod
);
- if ($config['cache']['enabled'] && $replies = cache::get("thread_index_{$board['uri']}_{$th['id']}")) {
- $replies = json_decode($replies, true);
- } else {
+ if (!$config['cache']['enabled'] || !$replies = cache::get("thread_index_{$board['uri']}_{$th['id']}")) {
$posts = prepare(sprintf("SELECT * FROM `posts_%s` WHERE `thread` = :id ORDER BY `id` DESC LIMIT :limit", $board['uri']));
$posts->bindValue(':id', $th['id']);
$posts->bindValue(':limit', ($th['sticky'] ? $config['threads_preview_sticky'] : $config['threads_preview']), PDO::PARAM_INT);
@@ -985,9 +983,9 @@ function index($page, $mod=false) {
$replies = $posts->fetchAll(PDO::FETCH_ASSOC);
if ($config['cache']['enabled'])
- cache::set("thread_index_{$board['uri']}_{$th['id']}", json_encode($replies));
+ cache::set("thread_index_{$board['uri']}_{$th['id']}", $replies);
}
-
+
$num_images = 0;
foreach ($replies as $po) {
if ($po['file'])
@@ -1004,16 +1002,14 @@ function index($page, $mod=false) {
if ($post_count == ($th['sticky'] ? $config['threads_preview_sticky'] : $config['threads_preview'])) {
// Yeah, using two cache objects for one thread seems a little inefficient. This code is messy and dumb; please clean it up if you can.
- if ($config['cache']['enabled'] && $count = cache::get("thread_index_{$board['uri']}_{$th['id']}_omitted")) {
- $count = explode(',', $count);
- } else {
+ if (!$config['cache']['enabled'] || !$count = cache::get("thread_index_{$board['uri']}_{$th['id']}_omitted")) {
$count = prepare(sprintf("SELECT COUNT(`id`) as `num` FROM `posts_%s` WHERE `thread` = :thread UNION ALL SELECT COUNT(`id`) FROM `posts_%s` WHERE `file` IS NOT NULL AND `thread` = :thread", $board['uri'], $board['uri']));
$count->bindValue(':thread', $th['id'], PDO::PARAM_INT);
$count->execute() or error(db_error($count));
$count = $count->fetchAll(PDO::FETCH_COLUMN);
if ($config['cache']['enabled'])
- cache::set("thread_index_{$board['uri']}_{$th['id']}_omitted", implode(',', $count));
+ cache::set("thread_index_{$board['uri']}_{$th['id']}_omitted", $count);
}
$thread->omitted = $count[0] - ($th['sticky'] ? $config['threads_preview_sticky'] : $config['threads_preview']);