Site-wide design configuration

I added some code so that the site-wide design can be set, using the
configuration interface.

I also moved the configuration option from
$config['site']['design']['background'] to just
$config['design']['background'], but the old syntax will still work.

Conflicts:

	config.php.sample
This commit is contained in:
Evan Prodromou
2009-07-30 17:05:35 -04:00
parent 421ee4297e
commit 854d24b05a
8 changed files with 160 additions and 103 deletions

View File

@@ -191,6 +191,7 @@ class Action extends HTMLOutputter // lawsuit
function showStylesheets()
{
if (Event::handle('StartShowStyles', array($this))) {
if (Event::handle('StartShowLaconicaStyles', array($this))) {
$this->element('link', array('rel' => 'stylesheet',
'type' => 'text/css',
@@ -209,6 +210,7 @@ class Action extends HTMLOutputter // lawsuit
'media' => 'print'));
Event::handle('EndShowLaconicaStyles', array($this));
}
if (Event::handle('StartShowUAStyles', array($this))) {
$this->comment('[if IE]><link rel="stylesheet" type="text/css" '.
'href="'.theme_path('css/ie.css', 'base').'?version='.LACONICA_VERSION.'" /><![endif]');
@@ -223,6 +225,21 @@ class Action extends HTMLOutputter // lawsuit
'href="'.theme_path('css/ie.css', null).'?version='.LACONICA_VERSION.'" /><![endif]');
Event::handle('EndShowUAStyles', array($this));
}
if (Event::handle('StartShowDesign', array($this))) {
$user = common_current_user();
if (empty($user) || $user->viewdesigns) {
$design = $this->getDesign();
if (!empty($design)) {
$design->showCSS($this);
}
}
Event::handle('EndShowDesign', array($this));
}
Event::handle('EndShowStyles', array($this));
}
}
@@ -1074,4 +1091,15 @@ class Action extends HTMLOutputter // lawsuit
{
return null;
}
/**
* A design for this action
*
* @return Design a design object to use
*/
function getDesign()
{
return Design::siteDesign();
}
}