summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2014-12-04 19:47:43 +0100
committerGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2014-12-04 19:47:43 +0100
commit1086ba4a2bbe43a0101105624f831516b59ba9e9 (patch)
tree33f17552c6d29d97f734bc3484c128a66d8d0c35 /app
parent86f69ca396572ca4d7668a33e84cb4f3b523fc4e (diff)
Enable extensions for users
Diffstat (limited to 'app')
-rw-r--r--app/FreshRSS.php6
-rw-r--r--app/Models/Configuration.php8
2 files changed, 13 insertions, 1 deletions
diff --git a/app/FreshRSS.php b/app/FreshRSS.php
index 2db811a71..166ee1709 100644
--- a/app/FreshRSS.php
+++ b/app/FreshRSS.php
@@ -6,7 +6,7 @@ class FreshRSS extends Minz_FrontController {
Minz_Session::init('FreshRSS');
}
- // Load list of extensions and initialize the "system" ones.
+ // Load list of extensions and enable the "system" ones.
Minz_ExtensionManager::init();
// Need to be called just after session init because it initializes
@@ -29,6 +29,10 @@ class FreshRSS extends Minz_FrontController {
// Load context and configuration.
FreshRSS_Context::init();
+ // Enable extensions for the current user.
+ $ext_list = FreshRSS_Context::$conf->extensions_enabled;
+ Minz_ExtensionManager::enable_by_list($ext_list);
+
// Init i18n.
Minz_Session::_param('language', FreshRSS_Context::$conf->language);
Minz_Translate::init();
diff --git a/app/Models/Configuration.php b/app/Models/Configuration.php
index 8668470b0..13ce43990 100644
--- a/app/Models/Configuration.php
+++ b/app/Models/Configuration.php
@@ -64,6 +64,7 @@ class FreshRSS_Configuration {
'sharing' => array(),
'queries' => array(),
'html5_notif_timeout' => 0,
+ 'extensions_enabled' => array(),
);
private $available_languages = array(
@@ -342,4 +343,11 @@ class FreshRSS_Configuration {
public function _bottomline_link($value) {
$this->data['bottomline_link'] = ((bool)$value) && $value !== 'no';
}
+
+ public function _extensions_enabled($value) {
+ if (!is_array($value)) {
+ $value = array($value);
+ }
+ $this->data['extensions_enabled'] = $value;
+ }
}