themes can use smart_build now

This commit is contained in:
czaks 2015-04-02 20:54:28 +02:00
parent e1a8c4aa7d
commit 61d2729a40
3 changed files with 36 additions and 7 deletions

View File

@ -16,11 +16,22 @@
if ($action == 'all') {
foreach ($boards as $board) {
$b = new Catalog();
$b->build($settings, $board);
if ($config['smart_build']) {
file_unlink($config['dir']['home'] . $board . '/catalog.html');
}
else {
$b->build($settings, $board);
}
}
} elseif ($action == 'post-thread' || ($settings['update_on_posts'] && $action == 'post') || ($settings['update_on_posts'] && $action == 'post-delete') && in_array($board, $boards)) {
$b = new Catalog();
$b->build($settings, $board);
if ($config['smart_build']) {
file_unlink($config['dir']['home'] . $board . '/catalog.html');
}
else {
$b->build($settings, $board);
}
}
}
@ -28,8 +39,12 @@
class Catalog {
public function build($settings, $board_name) {
global $config, $board;
openBoard($board_name);
if ($board['uri'] != $board_name) {
if (!openBoard($board_name)) {
error(sprintf(_("Board %s doesn't exist"), $board_name));
}
}
$recent_images = array();
$recent_posts = array();

View File

@ -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

View File

@ -2,6 +2,8 @@
require 'info.php';
function ukko_build($action, $settings) {
global $config;
$ukko = new ukko();
$ukko->settings = $settings;
@ -9,7 +11,13 @@
return;
}
file_write($settings['uri'] . '/index.html', $ukko->build());
if ($config['smart_build']) {
file_unlink($settings['uri'] . '/index.html');
}
else {
file_write($settings['uri'] . '/index.html', $ukko->build());
}
file_write($settings['uri'] . '/ukko.js', Element('themes/ukko/ukko.js', array()));
}