aboutsummaryrefslogtreecommitdiff
path: root/app/FreshRSS.php
diff options
context:
space:
mode:
Diffstat (limited to 'app/FreshRSS.php')
-rw-r--r--app/FreshRSS.php21
1 files changed, 21 insertions, 0 deletions
diff --git a/app/FreshRSS.php b/app/FreshRSS.php
index cdf8962cb..58aac4059 100644
--- a/app/FreshRSS.php
+++ b/app/FreshRSS.php
@@ -17,6 +17,7 @@ class FreshRSS extends Minz_FrontController {
Minz_View::_param('loginOk', $loginOk);
$this->loadStylesAndScripts($loginOk); //TODO: Do not load that when not needed, e.g. some Ajax requests
$this->loadNotifications();
+ $this->loadExtensions();
}
private static function getCredentialsFromLongTermCookie() {
@@ -179,4 +180,24 @@ class FreshRSS extends Minz_FrontController {
Minz_Session::_param ('notification');
}
}
+
+ private function loadExtensions() {
+ $extensionPath = FRESHRSS_PATH . '/extensions/';
+ //TODO: Add a preference to load only user-selected extensions
+ foreach (scandir($extensionPath) as $key => $extension) {
+ if (ctype_alpha($extension)) {
+ $mtime = @filemtime($extensionPath . $extension . '/style.css');
+ if ($mtime !== false) {
+ Minz_View::appendStyle(Minz_Url::display('/ext.php?c&e=' . $extension . '&' . $mtime));
+ }
+ $mtime = @filemtime($extensionPath . $extension . '/script.js');
+ if ($mtime !== false) {
+ Minz_View::appendScript(Minz_Url::display('/ext.php?j&e=' . $extension . '&' . $mtime));
+ }
+ if (file_exists($extensionPath . $extension . '/module.php')) {
+ //TODO: include
+ }
+ }
+ }
+ }
}