diff options
| author | czaks <marcin@6irc.net> | 2016-02-09 12:37:03 +0100 |
|---|---|---|
| committer | czaks <marcin@6irc.net> | 2016-02-09 12:37:03 +0100 |
| commit | c53f13bf90716461780fef0a2b4b6e2b5b3cb002 (patch) | |
| tree | 5cd18f303da0b0e6fdc87f175adf5f5f86d881e2 /templates/themes/recent/theme.php | |
| parent | fe66c51a19920378885fb790d341cc50c933b046 (diff) | |
| parent | 028fd3df15b2e2edc96c5b84156b0b039ea16562 (diff) | |
Merge branch 'master' of https://github.com/vichan-devel/vichan
Diffstat (limited to 'templates/themes/recent/theme.php')
| -rw-r--r-- | templates/themes/recent/theme.php | 23 |
1 files changed, 17 insertions, 6 deletions
diff --git a/templates/themes/recent/theme.php b/templates/themes/recent/theme.php index 2ea6a7b9..f44e2529 100644 --- a/templates/themes/recent/theme.php +++ b/templates/themes/recent/theme.php @@ -24,8 +24,14 @@ $this->excluded = explode(' ', $settings['exclude']); - if ($action == 'all' || $action == 'post' || $action == 'post-thread' || $action == 'post-delete') - file_write($config['dir']['home'] . $settings['html'], $this->homepage($settings)); + if ($action == 'all' || $action == 'post' || $action == 'post-thread' || $action == 'post-delete') { + if ($config['smart_build']) { + file_unlink($config['dir']['home'] . $settings['html']); + } + else { + file_write($config['dir']['home'] . $settings['html'], $this->homepage($settings)); + } + } } // Build news page @@ -125,15 +131,20 @@ $stats['unique_posters'] = number_format($query->fetchColumn()); // Active content - /*$query = 'SELECT SUM(`filesize`) FROM ('; + $query = 'SELECT DISTINCT(`files`) FROM ('; foreach ($boards as &$_board) { if (in_array($_board['uri'], $this->excluded)) continue; - $query .= sprintf("SELECT `filesize` FROM ``posts_%s`` UNION ALL ", $_board['uri']); + $query .= sprintf("SELECT `files` FROM ``posts_%s`` UNION ALL ", $_board['uri']); } - $query = preg_replace('/UNION ALL $/', ') AS `posts_all`', $query); + $query = preg_replace('/UNION ALL $/', ' WHERE `num_files` > 0) AS `posts_all`', $query); $query = query($query) or error(db_error()); - $stats['active_content'] = $query->fetchColumn();*/ + $files = $query->fetchAll(); + $stats['active_content'] = 0; + foreach ($files as &$file) { + preg_match_all('/"size":([0-9]*)/', $file[0], $matches); + $stats['active_content'] += array_sum($matches[1]); + } return Element('themes/recent/recent.html', Array( 'settings' => $settings, |
