forked from GNUsocial/gnu-social
theme dir, path configurable
This commit is contained in:
parent
876ab05927
commit
7cf0a4c647
13
README
13
README
@ -1039,9 +1039,16 @@ theme
|
|||||||
-----
|
-----
|
||||||
|
|
||||||
server: Like avatars, you can speed up page loading by pointing the
|
server: Like avatars, you can speed up page loading by pointing the
|
||||||
theme file lookup to another server (virtual or real). The
|
theme file lookup to another server (virtual or real).
|
||||||
theme server's root path should map to the Laconica "theme"
|
Defaults to NULL, meaning to use the site server.
|
||||||
subdirectory. Defaults to NULL.
|
dir: Directory where theme files are stored. Used to determine
|
||||||
|
whether to show parts of a theme file. Defaults to the theme
|
||||||
|
subdirectory of the install directory.
|
||||||
|
path: Path part of theme URLs, before the theme name. Relative to the
|
||||||
|
theme server. It may make sense to change this path when upgrading,
|
||||||
|
(using version numbers as the path) to make sure that all files are
|
||||||
|
reloaded by caching clients or proxies. Defaults to null,
|
||||||
|
which means to use the site path + '/theme'.
|
||||||
|
|
||||||
xmpp
|
xmpp
|
||||||
----
|
----
|
||||||
|
@ -140,7 +140,9 @@ $config =
|
|||||||
'blacklist' => array(),
|
'blacklist' => array(),
|
||||||
'autosource' => array()),
|
'autosource' => array()),
|
||||||
'theme' =>
|
'theme' =>
|
||||||
array('server' => null),
|
array('server' => null,
|
||||||
|
'dir' => null,
|
||||||
|
'path'=> null),
|
||||||
'throttle' =>
|
'throttle' =>
|
||||||
array('enabled' => false, // whether to throttle edits; false by default
|
array('enabled' => false, // whether to throttle edits; false by default
|
||||||
'count' => 20, // number of allowed messages in timespan
|
'count' => 20, // number of allowed messages in timespan
|
||||||
|
@ -43,10 +43,14 @@ if (!defined('LACONICA')) {
|
|||||||
|
|
||||||
function theme_file($relative, $theme=null)
|
function theme_file($relative, $theme=null)
|
||||||
{
|
{
|
||||||
if (!$theme) {
|
if (empty($theme)) {
|
||||||
$theme = common_config('site', 'theme');
|
$theme = common_config('site', 'theme');
|
||||||
}
|
}
|
||||||
return INSTALLDIR.'/theme/'.$theme.'/'.$relative;
|
$dir = common_config('theme', 'dir');
|
||||||
|
if (empty($dir)) {
|
||||||
|
$dir = INSTALLDIR.'/theme';
|
||||||
|
}
|
||||||
|
return $dir.'/'.$theme.'/'.$relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -60,13 +64,31 @@ function theme_file($relative, $theme=null)
|
|||||||
|
|
||||||
function theme_path($relative, $theme=null)
|
function theme_path($relative, $theme=null)
|
||||||
{
|
{
|
||||||
if (!$theme) {
|
if (empty($theme)) {
|
||||||
$theme = common_config('site', 'theme');
|
$theme = common_config('site', 'theme');
|
||||||
}
|
}
|
||||||
$server = common_config('theme', 'server');
|
|
||||||
if ($server) {
|
$path = common_config('theme', 'path');
|
||||||
return 'http://'.$server.'/'.$theme.'/'.$relative;
|
|
||||||
} else {
|
if (empty($path)) {
|
||||||
return common_path('theme/'.$theme.'/'.$relative);
|
$path = common_config('site', 'path') . '/theme/';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($path[strlen($path)-1] != '/') {
|
||||||
|
$path .= '/';
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($path[0] != '/') {
|
||||||
|
$path = '/'.$path;
|
||||||
|
}
|
||||||
|
|
||||||
|
$server = common_config('theme', 'server');
|
||||||
|
|
||||||
|
if (empty($server)) {
|
||||||
|
$server = common_config('site', 'server');
|
||||||
|
}
|
||||||
|
|
||||||
|
// XXX: protocol
|
||||||
|
|
||||||
|
return 'http://'.$server.$path.$theme.'/'.$relative;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user