allow themes to use "style.php" instead of "style.css".
Load style.php trhu mod/view.php to pass it friendica framework.
This commit is contained in:
parent
77f57e1b13
commit
01af7d355a
15
boot.php
15
boot.php
|
@ -1261,17 +1261,20 @@ function current_theme(){
|
||||||
$system_theme = ((isset($a->config['system']['theme'])) ? $a->config['system']['theme'] : '');
|
$system_theme = ((isset($a->config['system']['theme'])) ? $a->config['system']['theme'] : '');
|
||||||
$theme_name = ((isset($_SESSION) && x($_SESSION,'theme')) ? $_SESSION['theme'] : $system_theme);
|
$theme_name = ((isset($_SESSION) && x($_SESSION,'theme')) ? $_SESSION['theme'] : $system_theme);
|
||||||
|
|
||||||
if($theme_name && file_exists('view/theme/' . $theme_name . '/style.css'))
|
if($theme_name &&
|
||||||
|
(file_exists('view/theme/' . $theme_name . '/style.css') ||
|
||||||
|
file_exists('view/theme/' . $theme_name . '/style.php')))
|
||||||
return($theme_name);
|
return($theme_name);
|
||||||
|
|
||||||
foreach($app_base_themes as $t) {
|
foreach($app_base_themes as $t) {
|
||||||
if(file_exists('view/theme/' . $t . '/style.css'))
|
if(file_exists('view/theme/' . $t . '/style.css')||
|
||||||
|
file_exists('view/theme/' . $t . '/style.php'))
|
||||||
return($t);
|
return($t);
|
||||||
}
|
}
|
||||||
|
|
||||||
$fallback = glob('view/theme/*/style.css');
|
$fallback = glob('view/theme/*/style.[css|php]');
|
||||||
if(count($fallback))
|
if(count($fallback))
|
||||||
return (str_replace('view/theme/','', str_replace("/style.css","",$fallback[0])));
|
return (str_replace('view/theme/','', substr($fallback[0],0,-10)));
|
||||||
|
|
||||||
}}
|
}}
|
||||||
|
|
||||||
|
@ -1283,6 +1286,8 @@ if(! function_exists('current_theme_url')) {
|
||||||
function current_theme_url() {
|
function current_theme_url() {
|
||||||
global $a;
|
global $a;
|
||||||
$t = current_theme();
|
$t = current_theme();
|
||||||
|
if (file_exists('view/theme/' . $t . '/style.php'))
|
||||||
|
return($a->get_baseurl() . '/view/theme/' . $t . '/style.pcss');
|
||||||
return($a->get_baseurl() . '/view/theme/' . $t . '/style.css');
|
return($a->get_baseurl() . '/view/theme/' . $t . '/style.css');
|
||||||
}}
|
}}
|
||||||
|
|
||||||
|
@ -1432,4 +1437,4 @@ function zrl($s) {
|
||||||
if($mine and ! link_compare($mine,$s))
|
if($mine and ! link_compare($mine,$s))
|
||||||
return $s . $achar . 'zrl=' . urlencode($mine);
|
return $s . $achar . 'zrl=' . urlencode($mine);
|
||||||
return $s;
|
return $s;
|
||||||
}
|
}
|
||||||
|
|
16
mod/view.php
Normal file
16
mod/view.php
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* load view/theme/$current_theme/style.php with friendica contex
|
||||||
|
*/
|
||||||
|
|
||||||
|
function view_init($a){
|
||||||
|
header("Content-Type: text/css");
|
||||||
|
|
||||||
|
if ($a->argc == 4){
|
||||||
|
$theme = $a->argv[2];
|
||||||
|
$THEMEPATH = "view/theme/$theme";
|
||||||
|
require_once("view/theme/$theme/style.php");
|
||||||
|
}
|
||||||
|
|
||||||
|
killme();
|
||||||
|
}
|
Loading…
Reference in a new issue