basic beta for themes

This commit is contained in:
Savetheinternet 2011-04-14 17:10:59 +10:00
parent 1bd14ef1d2
commit 757b09dec9
3 changed files with 28 additions and 1 deletions

View File

@ -137,6 +137,7 @@
$config['error']['invalidpost'] = 'That post doesn\'t exist…';
$config['error']['404'] = 'Page not found.';
$config['error']['modexists'] = 'That mod <a href="?/users/%d">already exists</a>!';
$config['error']['invalidtheme'] = 'That theme doesn\'t exist!';
// How many reports you can create in the same request.
$config['report_limit'] = 2;

View File

@ -96,6 +96,9 @@
function loadThemeConfig($_theme) {
global $config;
if(!file_exists($config['dir']['homepage'] . '/' . $_theme . '/theme.php'))
return false;
// Load theme information into $theme
include $config['dir']['homepage'] . '/' . $_theme . '/theme.php';
return $theme;

25
mod.php
View File

@ -80,6 +80,7 @@
'Boards' => '',
'Noticeboard' => '',
'Administration' => '',
'Themes' => '',
'Search' => '',
'Logout' => ''
);
@ -158,6 +159,10 @@
$fieldset['Administration'] .= '<li><a href="?/config">Show configuration</a></li>';
}
if($mod['type'] >= $config['mod']['themes']) {
$fieldset['Themes'] .= '<li><a href="?/themes">Manage themes</a></li>';
}
if($mod['type'] >= $config['mod']['search']) {
$fieldset['Search'] .= '<li><form style="display:inline" action="?/search" method="post">' .
'<label style="display:inline" for="search">Phrase:</label> ' .
@ -249,6 +254,19 @@
'mod'=>true
)
);
} elseif(preg_match('/^\/themes\/none$/', $query, $match)) {
if($mod['type'] < $config['mod']['themes']) error($config['error']['noaccess']);
// Clearsettings
query("TRUNCATE TABLE `theme_settings`") or error(db_error());
echo Element('page.html', Array(
'config'=>$config,
'title'=>'No theme',
'body'=>'<p style="text-align:center">Successfully stopped using any themes. You\'ll have to create a homepage manually if you want one.</p>',
'mod'=>true
)
);
} elseif(preg_match('/^\/themes(\/(\w+))?$/', $query, $match)) {
if($mod['type'] < $config['mod']['themes']) error($config['error']['noaccess']);
@ -260,7 +278,9 @@
if(isset($match[2])) {
$_theme = $match[2];
$theme = loadThemeConfig($_theme);
if(!$theme = loadThemeConfig($_theme)) {
error($config['error']['invalidtheme']);
}
if(isset($_POST['install'])) {
// Check if everything is submitted
@ -366,6 +386,9 @@
}
$body .= '</table>';
}
$body .= '<p style="text-align:center"><a href="?/themes/none">Don\'t use a theme.</a></p>';
echo Element('page.html', Array(
'config'=>$config,
'title'=>'Select theme',