summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2013-10-07 11:31:12 +0200
committerGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2013-10-07 11:31:12 +0200
commit879e9fcd76f65107390bffa7d8c8999cb6c6a853 (patch)
tree1e23ae8521c48e8b02c594988fdde5443aed4252 /app
parent71282fb72f8d113953aef5eb7be111a14ece3f22 (diff)
Fix issue #165: @import CSS enlevés
Implique une modification des fichiers metadata.json pour les thèmes : ajout d'un champ "files" répertoriant les fichiers CSS à utiliser
Diffstat (limited to 'app')
-rw-r--r--app/App_FrontController.php14
-rwxr-xr-xapp/controllers/configureController.php2
-rw-r--r--app/models/RSSThemes.php13
3 files changed, 20 insertions, 9 deletions
diff --git a/app/App_FrontController.php b/app/App_FrontController.php
index 920e3baa8..844956cf9 100644
--- a/app/App_FrontController.php
+++ b/app/App_FrontController.php
@@ -10,13 +10,13 @@ class App_FrontController extends FrontController {
$this->loadLibs ();
$this->loadModels ();
- Session::init (); // lancement de la session doit se faire après chargement des modèles sinon bug (pourquoi ?)
+ Session::init ();
+ RSSThemes::init ();
+ Translate::init ();
$this->loadParamsView ();
$this->loadStylesAndScripts ();
$this->loadNotifications ();
-
- Translate::init ();
}
private function loadLibs () {
@@ -51,8 +51,12 @@ class App_FrontController extends FrontController {
}
private function loadStylesAndScripts () {
- $theme = $this->conf->theme();
- View::appendStyle (Url::display ('/themes/' . $theme . '/style.css'));
+ $theme = RSSThemes::get_infos($this->conf->theme());
+ if ($theme) {
+ foreach($theme["files"] as $file) {
+ View::appendStyle (Url::display ('/themes/' . $theme['path'] . '/' . $file));
+ }
+ }
View::appendStyle (Url::display ('/themes/printer/style.css'), 'print');
if (login_is_conf ($this->conf)) {
View::appendScript ('https://login.persona.org/include.js');
diff --git a/app/controllers/configureController.php b/app/controllers/configureController.php
index c1e79d73e..1c4b92e77 100755
--- a/app/controllers/configureController.php
+++ b/app/controllers/configureController.php
@@ -147,8 +147,6 @@ class configureController extends ActionController {
}
public function displayAction () {
- RSSThemes::init();
-
if (Request::isPost ()) {
$current_token = $this->view->conf->token ();
diff --git a/app/models/RSSThemes.php b/app/models/RSSThemes.php
index 291b295e3..83db85acf 100644
--- a/app/models/RSSThemes.php
+++ b/app/models/RSSThemes.php
@@ -23,10 +23,11 @@ class RSSThemes extends Model {
isset($res['name']) &&
isset($res['author']) &&
isset($res['description']) &&
- isset($res['version'])) {
+ isset($res['version']) &&
+ isset($res['files']) && is_array($res['files'])) {
$theme = $res;
$theme['path'] = $theme_dir;
- self::$list[] = $theme;
+ self::$list[$theme_dir] = $theme;
}
}
}
@@ -35,4 +36,12 @@ class RSSThemes extends Model {
public static function get() {
return self::$list;
}
+
+ public static function get_infos($theme_id) {
+ if (isset(self::$list[$theme_id])) {
+ return self::$list[$theme_id];
+ }
+
+ return false;
+ }
} \ No newline at end of file