aboutsummaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2015-01-05 22:43:15 +0100
committerGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2015-01-05 22:45:03 +0100
commit7cca47d1ab5838f5440b1a1e08fa4c0d43989664 (patch)
treeb51ae930a11afd4c9622c27c1926310f980d294e /app
parent51a71ec4b9d62528054be8faee1576a8fd6d37f6 (diff)
Change name of user configuration var in Context
- FreshRSS_Context::$conf is replaced by FreshRSS_Context::$user_conf - Introduce FreshRSS_Context::$system_conf - Remove FreshRSS_Configuration object See https://github.com/FreshRSS/FreshRSS/issues/730
Diffstat (limited to 'app')
-rw-r--r--app/Controllers/authController.php24
-rw-r--r--app/Controllers/categoryController.php10
-rwxr-xr-xapp/Controllers/configureController.php94
-rwxr-xr-xapp/Controllers/entryController.php4
-rwxr-xr-xapp/Controllers/feedController.php18
-rw-r--r--app/Controllers/importExportController.php4
-rwxr-xr-xapp/Controllers/indexController.php12
-rwxr-xr-xapp/Controllers/javascriptController.php2
-rw-r--r--app/Controllers/userController.php18
-rw-r--r--app/FreshRSS.php7
-rw-r--r--app/Models/Configuration.php345
-rw-r--r--app/Models/Context.php20
-rw-r--r--app/layout/aside_feed.phtml6
-rw-r--r--app/layout/layout.phtml2
-rw-r--r--app/layout/nav_menu.phtml10
-rw-r--r--app/views/auth/index.phtml4
-rw-r--r--app/views/configure/archiving.phtml10
-rw-r--r--app/views/configure/display.phtml30
-rw-r--r--app/views/configure/queries.phtml4
-rw-r--r--app/views/configure/reading.phtml44
-rw-r--r--app/views/configure/sharing.phtml6
-rw-r--r--app/views/configure/shortcut.phtml2
-rw-r--r--app/views/helpers/javascript_vars.phtml14
-rwxr-xr-xapp/views/helpers/pagination.phtml2
-rw-r--r--app/views/index/global.phtml4
-rw-r--r--app/views/index/normal.phtml32
-rw-r--r--app/views/index/reader.phtml4
-rw-r--r--app/views/user/manage.phtml6
-rw-r--r--app/views/user/profile.phtml2
29 files changed, 196 insertions, 544 deletions
diff --git a/app/Controllers/authController.php b/app/Controllers/authController.php
index f68ea8da5..3a1ad4605 100644
--- a/app/Controllers/authController.php
+++ b/app/Controllers/authController.php
@@ -27,12 +27,11 @@ class FreshRSS_auth_Controller extends Minz_ActionController {
if (Minz_Request::isPost()) {
$ok = true;
- $system_conf = Minz_Configuration::get('system');
- $general = $system_conf->general;
- $current_token = FreshRSS_Context::$conf->token;
+ $general = FreshRSS_Context::$system_conf->general;
+ $current_token = FreshRSS_Context::$user_conf->token;
$token = Minz_Request::param('token', $current_token);
- FreshRSS_Context::$conf->_token($token);
- $ok &= FreshRSS_Context::$conf->save();
+ FreshRSS_Context::$user_conf->_token($token);
+ $ok &= FreshRSS_Context::$user_conf->save();
$anon = Minz_Request::param('anon_access', false);
$anon = ((bool)$anon) && ($anon !== 'no');
@@ -81,8 +80,7 @@ class FreshRSS_auth_Controller extends Minz_ActionController {
Minz_Request::forward(array('c' => 'index', 'a' => 'index'), true);
}
- $conf = Minz_Configuration::get('system');
- $auth_type = $conf->general['auth_type'];
+ $auth_type = FreshRSS_Context::$system_conf->general['auth_type'];
switch ($auth_type) {
case 'form':
Minz_Request::forward(array('c' => 'auth', 'a' => 'formLogin'));
@@ -120,12 +118,12 @@ class FreshRSS_auth_Controller extends Minz_ActionController {
$file_mtime = @filemtime(PUBLIC_PATH . '/scripts/bcrypt.min.js');
Minz_View::appendScript(Minz_Url::display('/scripts/bcrypt.min.js?' . $file_mtime));
- $conf = Minz_Configuration::get('system');
-
if (Minz_Request::isPost()) {
$nonce = Minz_Session::param('nonce');
$username = Minz_Request::param('username', '');
$challenge = Minz_Request::param('challenge', '');
+
+ // TODO #730: change the way to get the configuration
try {
$conf = new FreshRSS_Configuration($username);
} catch(Minz_Exception $e) {
@@ -162,7 +160,7 @@ class FreshRSS_auth_Controller extends Minz_ActionController {
Minz_Request::bad(_t('feedback.auth.login.invalid'),
array('c' => 'auth', 'a' => 'login'));
}
- } elseif ($conf->general['unsafe_autologin_enabled']) {
+ } elseif (FreshRSS_Context::$system_conf->general['unsafe_autologin_enabled']) {
$username = Minz_Request::param('u', '');
$password = Minz_Request::param('p', '');
Minz_Request::_param('p');
@@ -171,6 +169,7 @@ class FreshRSS_auth_Controller extends Minz_ActionController {
return;
}
+ // TODO #730: change the way to get the configuration
try {
$conf = new FreshRSS_Configuration($username);
} catch(Minz_Exception $e) {
@@ -243,6 +242,7 @@ class FreshRSS_auth_Controller extends Minz_ActionController {
$persona_file = DATA_PATH . '/persona/' . $email . '.txt';
if (($current_user = @file_get_contents($persona_file)) !== false) {
$current_user = trim($current_user);
+ // TODO #730: change the way to get the configuration
try {
$conf = new FreshRSS_Configuration($current_user);
$login_ok = strcasecmp($email, $conf->mail_login) === 0;
@@ -301,7 +301,7 @@ class FreshRSS_auth_Controller extends Minz_ActionController {
$this->view->no_form = false;
// Enable changement of auth only if Persona!
- if (Minz_Configuration::authType() != 'persona') {
+ if (FreshRSS_Context::$system_conf->general['auth_type'] != 'persona') {
$this->view->message = array(
'status' => 'bad',
'title' => _t('gen.short.damn'),
@@ -311,6 +311,7 @@ class FreshRSS_auth_Controller extends Minz_ActionController {
return;
}
+ // TODO #730
$conf = new FreshRSS_Configuration(Minz_Configuration::defaultUser());
// Admin user must have set its master password.
if (!$conf->passwordHash) {
@@ -335,6 +336,7 @@ class FreshRSS_auth_Controller extends Minz_ActionController {
);
if ($ok) {
+ // TODO #730
Minz_Configuration::_authType('form');
$ok = Minz_Configuration::writeFile();
diff --git a/app/Controllers/categoryController.php b/app/Controllers/categoryController.php
index 5f1beae90..c90e55ea7 100644
--- a/app/Controllers/categoryController.php
+++ b/app/Controllers/categoryController.php
@@ -30,7 +30,7 @@ class FreshRSS_category_Controller extends Minz_ActionController {
$catDAO = new FreshRSS_CategoryDAO();
$url_redirect = array('c' => 'subscription', 'a' => 'index');
- $limits = Minz_Configuration::limits();
+ $limits = FreshRSS_Context::$system_conf->limits;
$this->view->categories = $catDAO->listCategories(false);
if (count($this->view->categories) >= $limits['max_categories']) {
@@ -141,8 +141,8 @@ class FreshRSS_category_Controller extends Minz_ActionController {
}
// Remove related queries.
- FreshRSS_Context::$conf->remove_query_by_get('c_' . $id);
- FreshRSS_Context::$conf->save();
+ FreshRSS_Context::$user_conf->remove_query_by_get('c_' . $id);
+ FreshRSS_Context::$user_conf->save();
Minz_Request::good(_t('feedback.sub.category.deleted'), $url_redirect);
}
@@ -177,9 +177,9 @@ class FreshRSS_category_Controller extends Minz_ActionController {
// Remove related queries
foreach ($feeds as $feed) {
- FreshRSS_Context::$conf->remove_query_by_get('f_' . $feed->id());
+ FreshRSS_Context::$user_conf->remove_query_by_get('f_' . $feed->id());
}
- FreshRSS_Context::$conf->save();
+ FreshRSS_Context::$user_conf->save();
Minz_Request::good(_t('feedback.sub.category.emptied'), $url_redirect);
} else {
diff --git a/app/Controllers/configureController.php b/app/Controllers/configureController.php
index feb5483fb..6e7a40ea6 100755
--- a/app/Controllers/configureController.php
+++ b/app/Controllers/configureController.php
@@ -41,23 +41,23 @@ class FreshRSS_configure_Controller extends Minz_ActionController {
*/
public function displayAction() {
if (Minz_Request::isPost()) {
- FreshRSS_Context::$conf->_language(Minz_Request::param('language', 'en'));
- FreshRSS_Context::$conf->_theme(Minz_Request::param('theme', FreshRSS_Themes::$defaultTheme));
- FreshRSS_Context::$conf->_content_width(Minz_Request::param('content_width', 'thin'));
- FreshRSS_Context::$conf->_topline_read(Minz_Request::param('topline_read', false));
- FreshRSS_Context::$conf->_topline_favorite(Minz_Request::param('topline_favorite', false));
- FreshRSS_Context::$conf->_topline_date(Minz_Request::param('topline_date', false));
- FreshRSS_Context::$conf->_topline_link(Minz_Request::param('topline_link', false));
- FreshRSS_Context::$conf->_bottomline_read(Minz_Request::param('bottomline_read', false));
- FreshRSS_Context::$conf->_bottomline_favorite(Minz_Request::param('bottomline_favorite', false));
- FreshRSS_Context::$conf->_bottomline_sharing(Minz_Request::param('bottomline_sharing', false));
- FreshRSS_Context::$conf->_bottomline_tags(Minz_Request::param('bottomline_tags', false));
- FreshRSS_Context::$conf->_bottomline_date(Minz_Request::param('bottomline_date', false));
- FreshRSS_Context::$conf->_bottomline_link(Minz_Request::param('bottomline_link', false));
- FreshRSS_Context::$conf->_html5_notif_timeout(Minz_Request::param('html5_notif_timeout', 0));
- FreshRSS_Context::$conf->save();
-
- Minz_Session::_param('language', FreshRSS_Context::$conf->language);
+ FreshRSS_Context::$user_conf->_language(Minz_Request::param('language', 'en'));
+ FreshRSS_Context::$user_conf->_theme(Minz_Request::param('theme', FreshRSS_Themes::$defaultTheme));
+ FreshRSS_Context::$user_conf->_content_width(Minz_Request::param('content_width', 'thin'));
+ FreshRSS_Context::$user_conf->_topline_read(Minz_Request::param('topline_read', false));
+ FreshRSS_Context::$user_conf->_topline_favorite(Minz_Request::param('topline_favorite', false));
+ FreshRSS_Context::$user_conf->_topline_date(Minz_Request::param('topline_date', false));
+ FreshRSS_Context::$user_conf->_topline_link(Minz_Request::param('topline_link', false));
+ FreshRSS_Context::$user_conf->_bottomline_read(Minz_Request::param('bottomline_read', false));
+ FreshRSS_Context::$user_conf->_bottomline_favorite(Minz_Request::param('bottomline_favorite', false));
+ FreshRSS_Context::$user_conf->_bottomline_sharing(Minz_Request::param('bottomline_sharing', false));
+ FreshRSS_Context::$user_conf->_bottomline_tags(Minz_Request::param('bottomline_tags', false));
+ FreshRSS_Context::$user_conf->_bottomline_date(Minz_Request::param('bottomline_date', false));
+ FreshRSS_Context::$user_conf->_bottomline_link(Minz_Request::param('bottomline_link', false));
+ FreshRSS_Context::$user_conf->_html5_notif_timeout(Minz_Request::param('html5_notif_timeout', 0));
+ FreshRSS_Context::$user_conf->save();
+
+ Minz_Session::_param('language', FreshRSS_Context::$user_conf->language);
Minz_Translate::reset();
invalidateHttpCache();
@@ -100,28 +100,28 @@ class FreshRSS_configure_Controller extends Minz_ActionController {
*/
public function readingAction() {
if (Minz_Request::isPost()) {
- FreshRSS_Context::$conf->_posts_per_page(Minz_Request::param('posts_per_page', 10));
- FreshRSS_Context::$conf->_view_mode(Minz_Request::param('view_mode', 'normal'));
- FreshRSS_Context::$conf->_default_view(Minz_Request::param('default_view', 'adaptive'));
- FreshRSS_Context::$conf->_auto_load_more(Minz_Request::param('auto_load_more', false));
- FreshRSS_Context::$conf->_display_posts(Minz_Request::param('display_posts', false));
- FreshRSS_Context::$conf->_display_categories(Minz_Request::param('display_categories', false));
- FreshRSS_Context::$conf->_hide_read_feeds(Minz_Request::param('hide_read_feeds', false));
- FreshRSS_Context::$conf->_onread_jump_next(Minz_Request::param('onread_jump_next', false));
- FreshRSS_Context::$conf->_lazyload(Minz_Request::param('lazyload', false));
- FreshRSS_Context::$conf->_sticky_post(Minz_Request::param('sticky_post', false));
- FreshRSS_Context::$conf->_reading_confirm(Minz_Request::param('reading_confirm', false));
- FreshRSS_Context::$conf->_auto_remove_article(Minz_Request::param('auto_remove_article', false));
- FreshRSS_Context::$conf->_sort_order(Minz_Request::param('sort_order', 'DESC'));
- FreshRSS_Context::$conf->_mark_when(array(
+ FreshRSS_Context::$user_conf->_posts_per_page(Minz_Request::param('posts_per_page', 10));
+ FreshRSS_Context::$user_conf->_view_mode(Minz_Request::param('view_mode', 'normal'));
+ FreshRSS_Context::$user_conf->_default_view(Minz_Request::param('default_view', 'adaptive'));
+ FreshRSS_Context::$user_conf->_auto_load_more(Minz_Request::param('auto_load_more', false));
+ FreshRSS_Context::$user_conf->_display_posts(Minz_Request::param('display_posts', false));
+ FreshRSS_Context::$user_conf->_display_categories(Minz_Request::param('display_categories', false));
+ FreshRSS_Context::$user_conf->_hide_read_feeds(Minz_Request::param('hide_read_feeds', false));
+ FreshRSS_Context::$user_conf->_onread_jump_next(Minz_Request::param('onread_jump_next', false));
+ FreshRSS_Context::$user_conf->_lazyload(Minz_Request::param('lazyload', false));
+ FreshRSS_Context::$user_conf->_sticky_post(Minz_Request::param('sticky_post', false));
+ FreshRSS_Context::$user_conf->_reading_confirm(Minz_Request::param('reading_confirm', false));
+ FreshRSS_Context::$user_conf->_auto_remove_article(Minz_Request::param('auto_remove_article', false));
+ FreshRSS_Context::$user_conf->_sort_order(Minz_Request::param('sort_order', 'DESC'));
+ FreshRSS_Context::$user_conf->_mark_when(array(
'article' => Minz_Request::param('mark_open_article', false),
'site' => Minz_Request::param('mark_open_site', false),
'scroll' => Minz_Request::param('mark_scroll', false),
'reception' => Minz_Request::param('mark_upon_reception', false),
));
- FreshRSS_Context::$conf->save();
+ FreshRSS_Context::$user_conf->save();
- Minz_Session::_param('language', FreshRSS_Context::$conf->language);
+ Minz_Session::_param('language', FreshRSS_Context::$user_conf->language);
Minz_Translate::reset();
invalidateHttpCache();
@@ -142,8 +142,8 @@ class FreshRSS_configure_Controller extends Minz_ActionController {
public function sharingAction() {
if (Minz_Request::isPost()) {
$params = Minz_Request::params();
- FreshRSS_Context::$conf->_sharing($params['share']);
- FreshRSS_Context::$conf->save();
+ FreshRSS_Context::$user_conf->_sharing($params['share']);
+ FreshRSS_Context::$user_conf->save();
invalidateHttpCache();
Minz_Request::good(_t('feedback.conf.updated'),
@@ -184,8 +184,8 @@ class FreshRSS_configure_Controller extends Minz_ActionController {
}
}
- FreshRSS_Context::$conf->_shortcuts($shortcuts_ok);
- FreshRSS_Context::$conf->save();
+ FreshRSS_Context::$user_conf->_shortcuts($shortcuts_ok);
+ FreshRSS_Context::$user_conf->save();
invalidateHttpCache();
Minz_Request::good(_t('feedback.conf.shortcuts_updated'),
@@ -212,10 +212,10 @@ class FreshRSS_configure_Controller extends Minz_ActionController {
*/
public function archivingAction() {
if (Minz_Request::isPost()) {
- FreshRSS_Context::$conf->_old_entries(Minz_Request::param('old_entries', 3));
- FreshRSS_Context::$conf->_keep_history_default(Minz_Request::param('keep_history_default', 0));
- FreshRSS_Context::$conf->_ttl_default(Minz_Request::param('ttl_default', -2));
- FreshRSS_Context::$conf->save();
+ FreshRSS_Context::$user_conf->_old_entries(Minz_Request::param('old_entries', 3));
+ FreshRSS_Context::$user_conf->_keep_history_default(Minz_Request::param('keep_history_default', 0));
+ FreshRSS_Context::$user_conf->_ttl_default(Minz_Request::param('ttl_default', -2));
+ FreshRSS_Context::$user_conf->save();
invalidateHttpCache();
Minz_Request::good(_t('feedback.conf.updated'),
@@ -252,8 +252,8 @@ class FreshRSS_configure_Controller extends Minz_ActionController {
$query['name'] = _t('conf.query.number', $key + 1);
}
}
- FreshRSS_Context::$conf->_queries($queries);
- FreshRSS_Context::$conf->save();
+ FreshRSS_Context::$user_conf->_queries($queries);
+ FreshRSS_Context::$user_conf->save();
Minz_Request::good(_t('feedback.conf.updated'),
array('c' => 'configure', 'a' => 'queries'));
@@ -261,7 +261,7 @@ class FreshRSS_configure_Controller extends Minz_ActionController {
$this->view->query_get = array();
$cat_dao = new FreshRSS_CategoryDAO();
$feed_dao = FreshRSS_Factory::createFeedDao();
- foreach (FreshRSS_Context::$conf->queries as $key => $query) {
+ foreach (FreshRSS_Context::$user_conf->queries as $key => $query) {
if (!isset($query['get'])) {
continue;
}
@@ -329,7 +329,7 @@ class FreshRSS_configure_Controller extends Minz_ActionController {
*/
public function addQueryAction() {
$whitelist = array('get', 'order', 'name', 'search', 'state');
- $queries = FreshRSS_Context::$conf->queries;
+ $queries = FreshRSS_Context::$user_conf->queries;
$query = Minz_Request::params();
$query['name'] = _t('conf.query.number', count($queries) + 1);
foreach ($query as $key => $value) {
@@ -338,8 +338,8 @@ class FreshRSS_configure_Controller extends Minz_ActionController {
}
}
$queries[] = $query;
- FreshRSS_Context::$conf->_queries($queries);
- FreshRSS_Context::$conf->save();
+ FreshRSS_Context::$user_conf->_queries($queries);
+ FreshRSS_Context::$user_conf->save();
Minz_Request::good(_t('feedback.conf.query_created', $query['name']),
array('c' => 'configure', 'a' => 'queries'));
diff --git a/app/Controllers/entryController.php b/app/Controllers/entryController.php
index aae08c413..1d9989f40 100755
--- a/app/Controllers/entryController.php
+++ b/app/Controllers/entryController.php
@@ -154,7 +154,7 @@ class FreshRSS_entry_Controller extends Minz_ActionController {
public function purgeAction() {
@set_time_limit(300);
- $nb_month_old = max(FreshRSS_Context::$conf->old_entries, 1);
+ $nb_month_old = max(FreshRSS_Context::$user_conf->old_entries, 1);
$date_min = time() - (3600 * 24 * 30 * $nb_month_old);
$feedDAO = FreshRSS_Factory::createFeedDao();
@@ -168,7 +168,7 @@ class FreshRSS_entry_Controller extends Minz_ActionController {
if ($feed_history == -2) {
// TODO: -2 must be a constant!
// -2 means we take the default value from configuration
- $feed_history = FreshRSS_Context::$conf->keep_history_default;
+ $feed_history = FreshRSS_Context::$user_conf->keep_history_default;
}
if ($feed_history >= 0) {
diff --git a/app/Controllers/feedController.php b/app/Controllers/feedController.php
index 121cb8921..92a1e3bf8 100755
--- a/app/Controllers/feedController.php
+++ b/app/Controllers/feedController.php
@@ -14,7 +14,7 @@ class FreshRSS_feed_Controller extends Minz_ActionController {
// Token is useful in the case that anonymous refresh is forbidden
// and CRON task cannot be used with php command so the user can
// set a CRON task to refresh his feeds by using token inside url
- $token = FreshRSS_Context::$conf->token;
+ $token = FreshRSS_Context::$user_conf->token;
$token_param = Minz_Request::param('token', '');
$token_is_ok = ($token != '' && $token == $token_param);
$action = Minz_Request::actionName();
@@ -161,14 +161,14 @@ class FreshRSS_feed_Controller extends Minz_ActionController {
$feed->_id($id);
$feed->faviconPrepare();
- $is_read = FreshRSS_Context::$conf->mark_when['reception'] ? 1 : 0;
+ $is_read = FreshRSS_Context::$user_conf->mark_when['reception'] ? 1 : 0;
$entryDAO = FreshRSS_Factory::createEntryDao();
// We want chronological order and SimplePie uses reverse order.
$entries = array_reverse($feed->entries());
// Calculate date of oldest entries we accept in DB.
- $nb_month_old = FreshRSS_Context::$conf->old_entries;
+ $nb_month_old = FreshRSS_Context::$user_conf->old_entries;
$date_min = time() - (3600 * 24 * 30 * $nb_month_old);
// Use a shared statement and a transaction to improve a LOT the
@@ -272,15 +272,15 @@ class FreshRSS_feed_Controller extends Minz_ActionController {
$feeds[] = $feed;
}
} else {
- $feeds = $feedDAO->listFeedsOrderUpdate(FreshRSS_Context::$conf->ttl_default);
+ $feeds = $feedDAO->listFeedsOrderUpdate(FreshRSS_Context::$user_conf->ttl_default);
}
// Calculate date of oldest entries we accept in DB.
- $nb_month_old = max(FreshRSS_Context::$conf->old_entries, 1);
+ $nb_month_old = max(FreshRSS_Context::$user_conf->old_entries, 1);
$date_min = time() - (3600 * 24 * 30 * $nb_month_old);
$updated_feeds = 0;
- $is_read = FreshRSS_Context::$conf->mark_when['reception'] ? 1 : 0;
+ $is_read = FreshRSS_Context::$user_conf->mark_when['reception'] ? 1 : 0;
foreach ($feeds as $feed) {
if (!$feed->lock()) {
Minz_Log::notice('Feed already being actualized: ' . $feed->url());
@@ -302,7 +302,7 @@ class FreshRSS_feed_Controller extends Minz_ActionController {
if ($feed_history == -2) {
// TODO: -2 must be a constant!
// -2 means we take the default value from configuration
- $feed_history = FreshRSS_Context::$conf->keep_history_default;
+ $feed_history = FreshRSS_Context::$user_conf->keep_history_default;
}
// We want chronological order and SimplePie uses reverse order.
@@ -476,8 +476,8 @@ class FreshRSS_feed_Controller extends Minz_ActionController {
// TODO: Delete old favicon
// Remove related queries
- FreshRSS_Context::$conf->remove_query_by_get('f_' . $id);
- FreshRSS_Context::$conf->save();
+ FreshRSS_Context::$user_conf->remove_query_by_get('f_' . $id);
+ FreshRSS_Context::$user_conf->save();
Minz_Request::good(_t('feedback.sub.feed.deleted'), $redirect_url);
} else {
diff --git a/app/Controllers/importExportController.php b/app/Controllers/importExportController.php
index 6eefa0f6f..334f33d6a 100644
--- a/app/Controllers/importExportController.php
+++ b/app/Controllers/importExportController.php
@@ -315,7 +315,7 @@ class FreshRSS_importExport_Controller extends Minz_ActionController {
return true;
}
- $is_read = FreshRSS_Context::$conf->mark_when['reception'] ? 1 : 0;
+ $is_read = FreshRSS_Context::$user_conf->mark_when['reception'] ? 1 : 0;
$google_compliant = strpos($article_object['id'], 'com.google') !== false;
@@ -532,7 +532,7 @@ class FreshRSS_importExport_Controller extends Minz_ActionController {
$this->view->type = 'feed/' . $feed->id();
$this->view->entries = $this->entryDAO->listWhere(
'f', $feed->id(), FreshRSS_Entry::STATE_ALL, 'ASC',
- FreshRSS_Context::$conf->posts_per_page
+ FreshRSS_Context::$user_conf->posts_per_page
);
$this->view->feed = $feed;
}
diff --git a/app/Controllers/indexController.php b/app/Controllers/indexController.php
index 33cd2843c..14f3f4f4b 100755
--- a/app/Controllers/indexController.php
+++ b/app/Controllers/indexController.php
@@ -9,7 +9,7 @@ class FreshRSS_index_Controller extends Minz_ActionController {
* This action only redirect on the default view mode (normal or global)
*/
public function indexAction() {
- $prefered_output = FreshRSS_Context::$conf->view_mode;
+ $prefered_output = FreshRSS_Context::$user_conf->view_mode;
Minz_Request::forward(array(
'c' => 'index',
'a' => $prefered_output
@@ -109,7 +109,7 @@ class FreshRSS_index_Controller extends Minz_ActionController {
* This action displays the RSS feed of FreshRSS.
*/
public function rssAction() {
- $token = FreshRSS_Context::$conf->token;
+ $token = FreshRSS_Context::$user_conf->token;
$token_param = Minz_Request::param('token', '');
$token_is_ok = ($token != '' && $token === $token_param);
@@ -160,10 +160,10 @@ class FreshRSS_index_Controller extends Minz_ActionController {
FreshRSS_Context::_get(Minz_Request::param('get', 'a'));
FreshRSS_Context::$state = Minz_Request::param(
- 'state', FreshRSS_Context::$conf->default_state
+ 'state', FreshRSS_Context::$user_conf->default_state
);
$state_forced_by_user = Minz_Request::param('state', false) !== false;
- if (FreshRSS_Context::$conf->default_view === 'adaptive' &&
+ if (FreshRSS_Context::$user_conf->default_view === 'adaptive' &&
FreshRSS_Context::$get_unread <= 0 &&
!FreshRSS_Context::isStateEnabled(FreshRSS_Entry::STATE_READ) &&
!$state_forced_by_user) {
@@ -172,10 +172,10 @@ class FreshRSS_index_Controller extends Minz_ActionController {
FreshRSS_Context::$search = Minz_Request::param('search', '');
FreshRSS_Context::$order = Minz_Request::param(
- 'order', FreshRSS_Context::$conf->sort_order
+ 'order', FreshRSS_Context::$user_conf->sort_order
);
FreshRSS_Context::$number = Minz_Request::param(
- 'nb', FreshRSS_Context::$conf->posts_per_page
+ 'nb', FreshRSS_Context::$user_conf->posts_per_page
);
FreshRSS_Context::$first_id = Minz_Request::param('next', '');
}
diff --git a/app/Controllers/javascriptController.php b/app/Controllers/javascriptController.php
index 113f58ea9..b178801d4 100755
--- a/app/Controllers/javascriptController.php
+++ b/app/Controllers/javascriptController.php
@@ -8,7 +8,7 @@ class FreshRSS_javascript_Controller extends Minz_ActionController {
public function actualizeAction() {
header('Content-Type: text/javascript; charset=UTF-8');
$feedDAO = FreshRSS_Factory::createFeedDao();
- $this->view->feeds = $feedDAO->listFeedsOrderUpdate(FreshRSS_Context::$conf->ttl_default);
+ $this->view->feeds = $feedDAO->listFeedsOrderUpdate(FreshRSS_Context::$user_conf->ttl_default);
}
public function nbUnreadsPerFeedAction() {
diff --git a/app/Controllers/userController.php b/app/Controllers/userController.php
index 1b1ccaac9..58181bfb0 100644
--- a/app/Controllers/userController.php
+++ b/app/Controllers/userController.php
@@ -39,9 +39,9 @@ class FreshRSS_user_Controller extends Minz_ActionController {
$passwordPlain = '';
$passwordHash = preg_replace('/^\$2[xy]\$/', '\$2a\$', $passwordHash); //Compatibility with bcrypt.js
$ok &= ($passwordHash != '');
- FreshRSS_Context::$conf->_passwordHash($passwordHash);
+ FreshRSS_Context::$user_conf->_passwordHash($passwordHash);
}
- Minz_Session::_param('passwordHash', FreshRSS_Context::$conf->passwordHash);
+ Minz_Session::_param('passwordHash', FreshRSS_Context::$user_conf->passwordHash);
$passwordPlain = Minz_Request::param('apiPasswordPlain', '', true);
if ($passwordPlain != '') {
@@ -52,17 +52,17 @@ class FreshRSS_user_Controller extends Minz_ActionController {
$passwordPlain = '';
$passwordHash = preg_replace('/^\$2[xy]\$/', '\$2a\$', $passwordHash); //Compatibility with bcrypt.js
$ok &= ($passwordHash != '');
- FreshRSS_Context::$conf->_apiPasswordHash($passwordHash);
+ FreshRSS_Context::$user_conf->_apiPasswordHash($passwordHash);
}
// TODO: why do we need of hasAccess here?
if (FreshRSS_Auth::hasAccess('admin')) {
- FreshRSS_Context::$conf->_mail_login(Minz_Request::param('mail_login', '', true));
+ FreshRSS_Context::$user_conf->_mail_login(Minz_Request::param('mail_login', '', true));
}
- $email = FreshRSS_Context::$conf->mail_login;
+ $email = FreshRSS_Context::$user_conf->mail_login;
Minz_Session::_param('mail', $email);
- $ok &= FreshRSS_Context::$conf->save();
+ $ok &= FreshRSS_Context::$user_conf->save();
if ($email != '') {
$personaFile = DATA_PATH . '/persona/' . $email . '.txt';
@@ -108,10 +108,10 @@ class FreshRSS_user_Controller extends Minz_ActionController {
$db = Minz_Configuration::dataBase();
require_once(APP_PATH . '/SQL/install.sql.' . $db['type'] . '.php');
- $new_user_language = Minz_Request::param('new_user_language', FreshRSS_Context::$conf->language);
- $languages = FreshRSS_Context::$conf->availableLanguages();
+ $new_user_language = Minz_Request::param('new_user_language', FreshRSS_Context::$user_conf->language);
+ $languages = FreshRSS_Context::$user_conf->availableLanguages();
if (!isset($languages[$new_user_language])) {
- $new_user_language = FreshRSS_Context::$conf->language;
+ $new_user_language = FreshRSS_Context::$user_conf->language;
}
$new_user_name = Minz_Request::param('new_user_name');
diff --git a/app/FreshRSS.php b/app/FreshRSS.php
index 455f2fefd..b22bfdb4b 100644
--- a/app/FreshRSS.php
+++ b/app/FreshRSS.php
@@ -32,7 +32,7 @@ class FreshRSS extends Minz_FrontController {
FreshRSS_Context::init();
// Init i18n.
- Minz_Session::_param('language', FreshRSS_Context::$conf->language);
+ Minz_Session::_param('language', FreshRSS_Context::$user_conf->language);
Minz_Translate::init();
$this->loadStylesAndScripts();
@@ -41,7 +41,7 @@ class FreshRSS extends Minz_FrontController {
}
private function loadStylesAndScripts() {
- $theme = FreshRSS_Themes::load(FreshRSS_Context::$conf->theme);
+ $theme = FreshRSS_Themes::load(FreshRSS_Context::$user_conf->theme);
if ($theme) {
foreach($theme['files'] as $file) {
if ($file[0] === '_') {
@@ -62,8 +62,7 @@ class FreshRSS extends Minz_FrontController {
Minz_View::appendScript(Minz_Url::display('/scripts/shortcut.js?' . @filemtime(PUBLIC_PATH . '/scripts/shortcut.js')));
Minz_View::appendScript(Minz_Url::display('/scripts/main.js?' . @filemtime(PUBLIC_PATH . '/scripts/main.js')));
- $conf = Minz_Configuration::get('system');
- if ($conf->general['auth_type'] === 'persona') {
+ if (FreshRSS_Context::$system_conf->general['auth_type'] === 'persona') {
// TODO move it in a plugin
// Needed for login AND logout with Persona.
Minz_View::appendScript('https://login.persona.org/include.js');
diff --git a/app/Models/Configuration.php b/app/Models/Configuration.php
deleted file mode 100644
index 8bba8f777..000000000
--- a/app/Models/Configuration.php
+++ /dev/null
@@ -1,345 +0,0 @@
-<?php
-
-class FreshRSS_Configuration {
- private $filename;
-
- private $data = array(
- 'language' => 'en',
- 'old_entries' => 3,
- 'keep_history_default' => 0,
- 'ttl_default' => 3600,
- 'mail_login' => '',
- 'token' => '',
- 'passwordHash' => '', //CRYPT_BLOWFISH
- 'apiPasswordHash' => '', //CRYPT_BLOWFISH
- 'posts_per_page' => 20,
- 'view_mode' => 'normal',
- 'default_view' => 'adaptive',
- 'default_state' => FreshRSS_Entry::STATE_NOT_READ,
- 'auto_load_more' => true,
- 'display_posts' => false,
- 'display_categories' => false,
- 'hide_read_feeds' => true,
- 'onread_jump_next' => true,
- 'lazyload' => true,
- 'sticky_post' => true,
- 'reading_confirm' => false,
- 'auto_remove_article' => false,
- 'sort_order' => 'DESC',
- 'anon_access' => false,
- 'mark_when' => array(
- 'article' => true,
- 'site' => true,
- 'scroll' => false,
- 'reception' => false,
- ),
- 'theme' => 'Origine',
- 'content_width' => 'thin',
- 'shortcuts' => array(
- 'mark_read' => 'r',
- 'mark_favorite' => 'f',
- 'go_website' => 'space',
- 'next_entry' => 'j',
- 'prev_entry' => 'k',
- 'first_entry' => 'home',
- 'last_entry' => 'end',
- 'collapse_entry' => 'c',
- 'load_more' => 'm',
- 'auto_share' => 's',
- 'focus_search' => 'a',
- 'user_filter' => 'u',
- 'help' => 'f1',
- 'close_dropdown' => 'escape',
- ),
- 'topline_read' => true,
- 'topline_favorite' => true,
- 'topline_date' => true,
- 'topline_link' => true,
- 'bottomline_read' => true,
- 'bottomline_favorite' => true,
- 'bottomline_sharing' => true,
- 'bottomline_tags' => true,
- 'bottomline_date' => true,
- 'bottomline_link' => true,
- 'sharing' => array(),
- 'queries' => array(),
- 'html5_notif_timeout' => 0,
- );
-
- private $available_languages = array(
- 'en' => 'English',
- 'fr' => 'Français',
- );
-
- private $shares;
-
- public function __construct($user) {
- $this->filename = join_path(DATA_PATH, 'users', $user, 'config.php');
-
- $data = @include($this->filename);
- if (!is_array($data)) {
- throw new Minz_PermissionDeniedException($this->filename);
- }
-
- foreach ($data as $key => $value) {
- if (isset($this->data[$key])) {
- $function = '_' . $key;
- $this->$function($value);
- }
- }
- $this->data['user'] = $user;
-
- $this->shares = join_path(DATA_PATH, 'shares.php');
-
- $shares = @include($this->shares);
- if (!is_array($shares)) {
- throw new Minz_PermissionDeniedException($this->shares);
- }
-
- $this->data['shares'] = $shares;
- }
-
- public function save() {
- @rename($this->filename, $this->filename . '.bak.php');
- unset($this->data['shares']); // Remove shares because it is not intended to be stored in user configuration
- if (file_put_contents($this->filename, "<?php\n return " . var_export($this->data, true) . ';', LOCK_EX) === false) {
- throw new Minz_PermissionDeniedException($this->filename);
- }
- if (function_exists('opcache_invalidate')) {
- opcache_invalidate($this->filename); //Clear PHP 5.5+ cache for include
- }
- invalidateHttpCache();
- return true;
- }
-
- public function __get($name) {
- if (array_key_exists($name, $this->data)) {
- return $this->data[$name];
- } else {
- $trace = debug_backtrace();
- trigger_error('Undefined FreshRSS_Configuration->' . $name . 'in ' . $trace[0]['file'] . ' line ' . $trace[0]['line'], E_USER_NOTICE); //TODO: Use Minz exceptions
- return null;
- }
- }
-
- public function availableLanguages() {
- return $this->available_languages;
- }
-
- public function remove_query_by_get($get) {
- $final_queries = array();
- foreach ($this->queries as $key => $query) {
- if (empty($query['get']) || $query['get'] !== $get) {
- $final_queries[$key] = $query;
- }
- }
- $this->_queries($final_queries);
- }
-
- public function _language($value) {
- if (!isset($this->available_languages[$value])) {
- $value = 'en';
- }
- $this->data['language'] = $value;
- }
- public function _posts_per_page($value) {
- $value = intval($value);
- $this->data['posts_per_page'] = $value > 0 ? $value : 10;
- }
- public function _view_mode($value) {
- if ($value === 'global' || $value === 'reader') {
- $this->data['view_mode'] = $value;
- } else {
- $this->data['view_mode'] = 'normal';
- }
- }
- public function _default_view($value) {
- switch ($value) {
- case 'all':
- $this->data['default_view'] = $value;
- $this->data['default_state'] = (FreshRSS_Entry::STATE_READ +
- FreshRSS_Entry::STATE_NOT_READ);
- break;
- case 'adaptive':
- case 'unread':
- default:
- $this->data['default_view'] = $value;
- $this->data['default_state'] = FreshRSS_Entry::STATE_NOT_READ;
- }
- }
- public function _default_state($value) {
- $this->data['default_state'] = (int)$value;
- }
-
- public function _display_posts($value) {
- $this->data['display_posts'] = ((bool)$value) && $value !== 'no';
- }
- public function _display_categories($value) {
- $this->data['display_categories'] = ((bool)$value) && $value !== 'no';
- }
- public function _hide_read_feeds($value) {
- $this->data['hide_read_feeds'] = (bool)$value;
- }
- public function _onread_jump_next($value) {
- $this->data['onread_jump_next'] = ((bool)$value) && $value !== 'no';
- }
- public function _lazyload($value) {
- $this->data['lazyload'] = ((bool)$value) && $value !== 'no';
- }
- public function _sticky_post($value) {
- $this->data['sticky_post'] = ((bool)$value) && $value !== 'no';
- }
- public function _reading_confirm($value) {
- $this->data['reading_confirm'] = ((bool)$value) && $value !== 'no';
- }
- public function _auto_remove_article($value) {
- $this->data['auto_remove_article'] = ((bool)$value) && $value !== 'no';
- }
- public function _sort_order($value) {
- $this->data['sort_order'] = $value === 'ASC' ? 'ASC' : 'DESC';
- }
- public function _old_entries($value) {
- $value = intval($value);
- $this->data['old_entries'] = $value > 0 ? $value : 3;
- }
- public function _keep_history_default($value) {
- $value = intval($value);
- $this->data['keep_history_default'] = $value >= -1 ? $value : 0;
- }
- public function _ttl_default($value) {
- $value = intval($value);
- $this->data['ttl_default'] = $value >= -1 ? $value : 3600;
- }
- public function _shortcuts($values) {
- foreach ($values as $key => $value) {
- if (isset($this->data['shortcuts'][$key])) {
- $this->data['shortcuts'][$key] = $value;
- }
- }
- }
- public function _passwordHash($value) {
- $this->data['passwordHash'] = ctype_graph($value) && (strlen($value) >= 60) ? $value : '';
- }
- public function _apiPasswordHash($value) {
- $this->data['apiPasswordHash'] = ctype_graph($value) && (strlen($value) >= 60) ? $value : '';
- }
- public function _mail_login($value) {
- $value = filter_var($value, FILTER_VALIDATE_EMAIL);
- if ($value) {
- $this->data['mail_login'] = $value;
- } else {
- $this->data['mail_login'] = '';
- }
- }
- public function _anon_access($value) {
- $this->data['anon_access'] = ((bool)$value) && $value !== 'no';
- }
- public function _mark_when($values) {
- foreach ($values as $key => $value) {
- if (isset($this->data['mark_when'][$key])) {
- $this->data['mark_when'][$key] = ((bool)$value) && $value !== 'no';
- }
- }
- }
- public function _sharing($values) {
- $this->data['sharing'] = array();
- $unique = array();
- foreach ($values as $value) {
- if (!is_array($value)) {
- continue;
- }
-
- // Verify URL and add default value when needed
- if (isset($value['url'])) {
- $is_url = (
- filter_var($value['url'], FILTER_VALIDATE_URL) ||
- (version_compare(PHP_VERSION, '5.3.3', '<') &&
- (strpos($value, '-') > 0) &&
- ($value === filter_var($value, FILTER_SANITIZE_URL)))
- ); //PHP bug #51192
- if (!$is_url) {
- continue;
- }
- } else {
- $value['url'] = null;
- }
-
- // Add a default name
- if (empty($value['name'])) {
- $value['name'] = $value['type'];
- }
-
- $json_value = json_encode($value);
- if (!in_array($json_value, $unique)) {
- $unique[] = $json_value;
- $this->data['sharing'][] = $value;
- }
- }
- }
- public function _queries($values) {
- $this->data['queries'] = array();
- foreach ($values as $value) {
- $value = array_filter($value);
- $params = $value;
- unset($params['name']);
- unset($params['url']);
- $value['url'] = Minz_Url::display(array('params' => $params));
-
- $this->data['queries'][] = $value;
- }
- }
- public function _theme($value) {
- $this->data['theme'] = $value;
- }
- public function _content_width($value) {
- if ($value === 'medium' ||
- $value === 'large' ||
- $value === 'no_limit') {
- $this->data['content_width'] = $value;
- } else {
- $this->data['content_width'] = 'thin';
- }
- }
-
- public function _html5_notif_timeout($value) {
- $value = intval($value);
- $this->data['html5_notif_timeout'] = $value >= 0 ? $value : 0;
- }
-
- public function _token($value) {
- $this->data['token'] = $value;
- }
- public function _auto_load_more($value) {
- $this->data['auto_load_more'] = ((bool)$value) && $value !== 'no';
- }
- public function _topline_read($value) {
- $this->data['topline_read'] = ((bool)$value) && $value !== 'no';
- }
- public function _topline_favorite($value) {
- $this->data['topline_favorite'] = ((bool)$value) && $value !== 'no';
- }
- public function _topline_date($value) {
- $this->data['topline_date'] = ((bool)$value) && $value !== 'no';
- }
- public function _topline_link($value) {
- $this->data['topline_link'] = ((bool)$value) && $value !== 'no';
- }
- public function _bottomline_read($value) {
- $this->data['bottomline_read'] = ((bool)$value) && $value !== 'no';
- }
- public function _bottomline_favorite($value) {
- $this->data['bottomline_favorite'] = ((bool)$value) && $value !== 'no';
- }
- public function _bottomline_sharing($value) {
- $this->data['bottomline_sharing'] = ((bool)$value) && $value !== 'no';
- }
- public function _bottomline_tags($value) {
- $this->data['bottomline_tags'] = ((bool)$value) && $value !== 'no';
- }
- public function _bottomline_date($value) {
- $this->data['bottomline_date'] = ((bool)$value) && $value !== 'no';
- }
- public function _bottomline_link($value) {
- $this->data['bottomline_link'] = ((bool)$value) && $value !== 'no';
- }
-}
diff --git a/app/Models/Context.php b/app/Models/Context.php
index 9bbad9857..1c770c756 100644
--- a/app/Models/Context.php
+++ b/app/Models/Context.php
@@ -5,7 +5,8 @@
* useful functions associated to the current view state.
*/
class FreshRSS_Context {
- public static $conf = null;
+ public static $user_conf = null;
+ public static $system_conf = null;
public static $categories = array();
public static $name = '';
@@ -37,17 +38,12 @@ class FreshRSS_Context {
/**
* Initialize the context.
*
- * Set the correct $conf and $categories variables.
+ * Set the correct configurations and $categories variables.
*/
public static function init() {
// Init configuration.
- try {
- self::$conf = Minz_Configuration::get('user');
- } catch(Minz_Exception $e) {
- $current_user = Minz_Session::param('currentUser', '_');
- Minz_Log::error('Cannot load configuration file of user `' . $current_user . '`');
- die($e->getMessage());
- }
+ self::$system_conf = Minz_Configuration::get('system');
+ self::$user_conf = Minz_Configuration::get('user');
$catDAO = new FreshRSS_CategoryDAO();
self::$categories = $catDAO->listCategories();
@@ -198,7 +194,7 @@ class FreshRSS_Context {
// By default, $next_get == $get
self::$next_get = $get;
- if (self::$conf->onread_jump_next && strlen($get) > 2) {
+ if (self::$user_conf->onread_jump_next && strlen($get) > 2) {
$another_unread_id = '';
$found_current_get = false;
switch ($get[0]) {
@@ -276,7 +272,7 @@ class FreshRSS_Context {
* @return boolean
*/
public static function isAutoRemoveAvailable() {
- if (!self::$conf->auto_remove_article) {
+ if (!self::$user_conf->auto_remove_article) {
return false;
}
if (self::isStateEnabled(FreshRSS_Entry::STATE_READ)) {
@@ -297,7 +293,7 @@ class FreshRSS_Context {
* @return boolean
*/
public static function isStickyPostEnabled() {
- if (self::$conf->sticky_post) {
+ if (self::$user_conf->sticky_post) {
return true;
}
if (self::isAutoRemoveAvailable()) {
diff --git a/app/layout/aside_feed.phtml b/app/layout/aside_feed.phtml
index a39aea327..a384455b4 100644
--- a/app/layout/aside_feed.phtml
+++ b/app/layout/aside_feed.phtml
@@ -1,6 +1,6 @@
<?php
$class = '';
- if (FreshRSS_Context::$conf->hide_read_feeds &&
+ if (FreshRSS_Context::$user_conf->hide_read_feeds &&
FreshRSS_Context::isStateEnabled(FreshRSS_Entry::STATE_NOT_READ) &&
!FreshRSS_Context::isStateEnabled(FreshRSS_Entry::STATE_READ)) {
$class = ' state_unread';
@@ -39,7 +39,7 @@
$feeds = $cat->feeds();
if (!empty($feeds)) {
$c_active = FreshRSS_Context::isCurrentGet('c_' . $cat->id());
- $c_show = $c_active && (!FreshRSS_Context::$conf->display_categories ||
+ $c_show = $c_active && (!FreshRSS_Context::$user_conf->display_categories ||
FreshRSS_Context::$current_get['feed']);
?>
<li class="tree-folder category<?php echo $c_active ? ' active' : ''; ?>" data-unread="<?php echo $cat->nbNotRead(); ?>">
@@ -84,7 +84,7 @@
<li class="item"><a href="<?php echo _url('subscription', 'index', 'id', '!!!!!!'); ?>"><?php echo _t('gen.action.manage'); ?></a></li>
<li class="item"><a href="<?php echo _url('feed', 'actualize', 'id', '!!!!!!'); ?>"><?php echo _t('gen.action.actualize'); ?></a></li>
<li class="item">
- <?php $confirm = FreshRSS_Context::$conf->reading_confirm ? 'confirm' : ''; ?>
+ <?php $confirm = FreshRSS_Context::$user_conf->reading_confirm ? 'confirm' : ''; ?>
<button class="read_all as-link <?php echo $confirm; ?>"
form="mark-read-aside"
formaction="<?php echo _url('entry', 'read', 'get', 'f_!!!!!!'); ?>"
diff --git a/app/layout/layout.phtml b/app/layout/layout.phtml
index 656fbe9bc..b3734aa56 100644
--- a/app/layout/layout.phtml
+++ b/app/layout/layout.phtml
@@ -1,5 +1,5 @@
<!DOCTYPE html>
-<html lang="<?php echo FreshRSS_Context::$conf->language; ?>" xml:lang="<?php echo FreshRSS_Context::$conf->language; ?>">
+<html lang="<?php echo FreshRSS_Context::$user_conf->language; ?>" xml:lang="<?php echo FreshRSS_Context::$user_conf->language; ?>">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="initial-scale=1.0" />
diff --git a/app/layout/nav_menu.phtml b/app/layout/nav_menu.phtml
index f8abf9032..eeadb622b 100644
--- a/app/layout/nav_menu.phtml
+++ b/app/layout/nav_menu.phtml
@@ -39,13 +39,13 @@
<a class="no-mobile" href="<?php echo _url('configure', 'queries'); ?>"><?php echo _i('configure'); ?></a>
</li>
- <?php foreach (FreshRSS_Context::$conf->queries as $query) { ?>
+ <?php foreach (FreshRSS_Context::$user_conf->queries as $query) { ?>
<li class="item query">
<a href="<?php echo $query['url']; ?>"><?php echo $query['name']; ?></a>
</li>
<?php } ?>
- <?php if (count(FreshRSS_Context::$conf->queries) > 0) { ?>
+ <?php if (count(FreshRSS_Context::$user_conf->queries) > 0) { ?>
<li class="separator no-mobile"></li>
<?php } ?>
@@ -82,7 +82,7 @@
<form id="mark-read-menu" method="post" style="display: none"></form>
<div class="stick" id="nav_menu_read_all">
- <?php $confirm = FreshRSS_Context::$conf->reading_confirm ? 'confirm' : ''; ?>
+ <?php $confirm = FreshRSS_Context::$user_conf->reading_confirm ? 'confirm' : ''; ?>
<button class="read_all btn <?php echo $confirm; ?>"
form="mark-read-menu"
formaction="<?php echo Minz_Url::display($mark_read_url); ?>"
@@ -145,8 +145,8 @@
<?php
$url_output['a'] = 'rss';
- if (FreshRSS_Context::$conf->token) {
- $url_output['params']['token'] = FreshRSS_Context::$conf->token;
+ if (FreshRSS_Context::$user_conf->token) {
+ $url_output['params']['token'] = FreshRSS_Context::$user_conf->token;
}
?>
<a class="view_rss btn" target="_blank" title="<?php echo _t('index.menu.rss_view'); ?>" href="<?php echo Minz_Url::display($url_output); ?>">
diff --git a/app/views/auth/index.phtml b/app/views/auth/index.phtml
index ee1e2d8b9..bb07cc2af 100644
--- a/app/views/auth/index.phtml
+++ b/app/views/auth/index.phtml
@@ -14,7 +14,7 @@
<option selected="selected"></option>
<?php } ?>
<option value="form"<?php echo Minz_Configuration::authType() === 'form' ? ' selected="selected"' : '', cryptAvailable() ? '' : ' disabled="disabled"'; ?>><?php echo _t('admin.auth.form'); ?></option>
- <option value="persona"<?php echo Minz_Configuration::authType() === 'persona' ? ' selected="selected"' : '', FreshRSS_Context::$conf->mail_login == '' ? ' disabled="disabled"' : ''; ?>><?php echo _t('admin.auth.persona'); ?></option>
+ <option value="persona"<?php echo Minz_Configuration::authType() === 'persona' ? ' selected="selected"' : '', FreshRSS_Context::$user_conf->mail_login == '' ? ' disabled="disabled"' : ''; ?>><?php echo _t('admin.auth.persona'); ?></option>
<option value="http_auth"<?php echo Minz_Configuration::authType() === 'http_auth' ? ' selected="selected"' : '', httpAuthUser() == '' ? ' disabled="disabled"' : ''; ?>><?php echo _t('admin.auth.http'); ?> (REMOTE_USER = '<?php echo httpAuthUser(); ?>')</option>
<option value="none"<?php echo Minz_Configuration::authType() === 'none' ? ' selected="selected"' : ''; ?>><?php echo _t('admin.auth.none'); ?></option>
</select>
@@ -55,7 +55,7 @@
<?php if (Minz_Configuration::canLogIn()) { ?>
<div class="form-group">
<label class="group-name" for="token"><?php echo _t('admin.auth.token'); ?></label>
- <?php $token = FreshRSS_Context::$conf->token; ?>
+ <?php $token = FreshRSS_Context::$user_conf->token; ?>
<div class="group-controls">
<input type="text" id="token" name="token" value="<?php echo $token; ?>" placeholder="<?php echo _t('gen.short.blank_to_disable'); ?>"<?php
echo Minz_Configuration::canLogIn() ? '' : ' disabled="disabled"'; ?> />
diff --git a/app/views/configure/archiving.phtml b/app/views/configure/archiving.phtml
index 4e8dfd385..875463137 100644
--- a/app/views/configure/archiving.phtml
+++ b/app/views/configure/archiving.phtml
@@ -10,7 +10,7 @@
<div class="form-group">
<label class="group-name" for="old_entries"><?php echo _t('conf.archiving.delete_after'); ?></label>
<div class="group-controls">
- <input type="number" id="old_entries" name="old_entries" min="1" max="1200" value="<?php echo FreshRSS_Context::$conf->old_entries; ?>" /> <?php echo _t('gen.date.month'); ?>
+ <input type="number" id="old_entries" name="old_entries" min="1" max="1200" value="<?php echo FreshRSS_Context::$user_conf->old_entries; ?>" /> <?php echo _t('gen.date.month'); ?>
  <a class="btn confirm" href="<?php echo _url('entry', 'purge'); ?>"><?php echo _t('conf.archiving.purge_now'); ?></a>
</div>
</div>
@@ -19,7 +19,7 @@
<div class="group-controls">
<select class="number" name="keep_history_default" id="keep_history_default" required="required"><?php
foreach (array('' => '', 0 => '0', 10 => '10', 50 => '50', 100 => '100', 500 => '500', 1000 => '1 000', 5000 => '5 000', 10000 => '10 000', -1 => '∞') as $v => $t) {
- echo '<option value="' . $v . (FreshRSS_Context::$conf->keep_history_default == $v ? '" selected="selected' : '') . '">' . $t . ' </option>';
+ echo '<option value="' . $v . (FreshRSS_Context::$user_conf->keep_history_default == $v ? '" selected="selected' : '') . '">' . $t . ' </option>';
}
?></select> (<?php echo _t('gen.short.by_default'); ?>)
</div>
@@ -34,13 +34,13 @@
36000 => '10h', 43200 => '12h', 64800 => '18h',
86400 => '1d', 129600 => '1.5d', 172800 => '2d', 259200 => '3d', 345600 => '4d', 432000 => '5d', 518400 => '6d',
604800 => '1wk', -1 => '∞') as $v => $t) {
- echo '<option value="' . $v . (FreshRSS_Context::$conf->ttl_default == $v ? '" selected="selected' : '') . '">' . $t . '</option>';
- if (FreshRSS_Context::$conf->ttl_default == $v) {
+ echo '<option value="' . $v . (FreshRSS_Context::$user_conf->ttl_default == $v ? '" selected="selected' : '') . '">' . $t . '</option>';
+ if (FreshRSS_Context::$user_conf->ttl_default == $v) {
$found = true;
}
}
if (!$found) {
- echo '<option value="' . intval(FreshRSS_Context::$conf->ttl_default) . '" selected="selected">' . intval(FreshRSS_Context::$conf->ttl_default) . 's</option>';
+ echo '<option value="' . intval(FreshRSS_Context::$user_conf->ttl_default) . '" selected="selected">' . intval(FreshRSS_Context::$user_conf->ttl_default) . 's</option>';
}
?></select> (<?php echo _t('gen.short.by_default'); ?>)
</div>
diff --git a/app/views/configure/display.phtml b/app/views/configure/display.phtml
index a245c8f5e..b68bf925b 100644
--- a/app/views/configure/display.phtml
+++ b/app/views/configure/display.phtml
@@ -10,9 +10,9 @@
<label class="group-name" for="language"><?php echo _t('conf.display.language'); ?></label>
<div class="group-controls">
<select name="language" id="language">
- <?php $languages = FreshRSS_Context::$conf->availableLanguages(); ?>
+ <?php $languages = FreshRSS_Context::$user_conf->availableLanguages(); ?>
<?php foreach ($languages as $short => $lib) { ?>
- <option value="<?php echo $short; ?>"<?php echo FreshRSS_Context::$conf->language === $short ? ' selected="selected"' : ''; ?>><?php echo $lib; ?></option>
+ <option value="<?php echo $short; ?>"<?php echo FreshRSS_Context::$user_conf->language === $short ? ' selected="selected"' : ''; ?>><?php echo $lib; ?></option>
<?php } ?>
</select>
</div>
@@ -24,7 +24,7 @@
<ul class="slides">
<?php $slides = count($this->themes); $i = 1; ?>
<?php foreach($this->themes as $theme) { ?>
- <input type="radio" name="theme" id="img-<?php echo $i ?>" <?php if (FreshRSS_Context::$conf->theme === $theme['id']) {echo "checked";}?> value="<?php echo $theme['id'] ?>"/>
+ <input type="radio" name="theme" id="img-<?php echo $i ?>" <?php if (FreshRSS_Context::$user_conf->theme === $theme['id']) {echo "checked";}?> value="<?php echo $theme['id'] ?>"/>
<li class="slide-container">
<div class="slide">
<img src="<?php echo Minz_Url::display('/themes/' . $theme['id'] . '/thumbs/original.png')?>"/>
@@ -49,7 +49,7 @@
</div>
</div>
- <?php $width = FreshRSS_Context::$conf->content_width; ?>
+ <?php $width = FreshRSS_Context::$user_conf->content_width; ?>
<div class="form-group">
<label class="group-name" for="content_width"><?php echo _t('conf.display.width.content'); ?></label>
<div class="group-controls">
@@ -87,20 +87,20 @@
<tbody>
<tr>
<th><?php echo _t('conf.display.icon.top_line'); ?></th>
- <td><input type="checkbox" name="topline_read" value="1"<?php echo FreshRSS_Context::$conf->topline_read ? ' checked="checked"' : ''; ?> /></td>
- <td><input type="checkbox" name="topline_favorite" value="1"<?php echo FreshRSS_Context::$conf->topline_favorite ? ' checked="checked"' : ''; ?> /></td>
+ <td><input type="checkbox" name="topline_read" value="1"<?php echo FreshRSS_Context::$user_conf->topline_read ? ' checked="checked"' : ''; ?> /></td>
+ <td><input type="checkbox" name="topline_favorite" value="1"<?php echo FreshRSS_Context::$user_conf->topline_favorite ? ' checked="checked"' : ''; ?> /></td>
<td><input type="checkbox" disabled="disabled" /></td>
<td><input type="checkbox" disabled="disabled" /></td>
- <td><input type="checkbox" name="topline_date" value="1"<?php echo FreshRSS_Context::$conf->topline_date ? ' checked="checked"' : ''; ?> /></td>
- <td><input type="checkbox" name="topline_link" value="1"<?php echo FreshRSS_Context::$conf->topline_link ? ' checked="checked"' : ''; ?> /></td>
+ <td><input type="checkbox" name="topline_date" value="1"<?php echo FreshRSS_Context::$user_conf->topline_date ? ' checked="checked"' : ''; ?> /></td>
+ <td><input type="checkbox" name="topline_link" value="1"<?php echo FreshRSS_Context::$user_conf->topline_link ? ' checked="checked"' : ''; ?> /></td>
</tr><tr>
<th><?php echo _t('conf.display.icon.bottom_line'); ?></th>
- <td><input type="checkbox" name="bottomline_read" value="1"<?php echo FreshRSS_Context::$conf->bottomline_read ? ' checked="checked"' : ''; ?> /></td>
- <td><input type="checkbox" name="bottomline_favorite" value="1"<?php echo FreshRSS_Context::$conf->bottomline_favorite ? ' checked="checked"' : ''; ?> /></td>
- <td><input type="checkbox" name="bottomline_sharing" value="1"<?php echo FreshRSS_Context::$conf->bottomline_sharing ? ' checked="checked"' : ''; ?> /></td>
- <td><input type="checkbox" name="bottomline_tags" value="1"<?php echo FreshRSS_Context::$conf->bottomline_tags ? ' checked="checked"' : ''; ?> /></td>
- <td><input type="checkbox" name="bottomline_date" value="1"<?php echo FreshRSS_Context::$conf->bottomline_date ? ' checked="checked"' : ''; ?> /></td>
- <td><input type="checkbox" name="bottomline_link" value="1"<?php echo FreshRSS_Context::$conf->bottomline_link ? ' checked="checked"' : ''; ?> /></td>
+ <td><input type="checkbox" name="bottomline_read" value="1"<?php echo FreshRSS_Context::$user_conf->bottomline_read ? ' checked="checked"' : ''; ?> /></td>
+ <td><input type="checkbox" name="bottomline_favorite" value="1"<?php echo FreshRSS_Context::$user_conf->bottomline_favorite ? ' checked="checked"' : ''; ?> /></td>
+ <td><input type="checkbox" name="bottomline_sharing" value="1"<?php echo FreshRSS_Context::$user_conf->bottomline_sharing ? ' checked="checked"' : ''; ?> /></td>
+ <td><input type="checkbox" name="bottomline_tags" value="1"<?php echo FreshRSS_Context::$user_conf->bottomline_tags ? ' checked="checked"' : ''; ?> /></td>
+ <td><input type="checkbox" name="bottomline_date" value="1"<?php echo FreshRSS_Context::$user_conf->bottomline_date ? ' checked="checked"' : ''; ?> /></td>
+ <td><input type="checkbox" name="bottomline_link" value="1"<?php echo FreshRSS_Context::$user_conf->bottomline_link ? ' checked="checked"' : ''; ?> /></td>
</tr>
</tbody>
</table><br />
@@ -109,7 +109,7 @@
<div class="form-group">
<label class="group-name" for="posts_per_page"><?php echo _t('conf.display.notif_html5.timeout'); ?></label>
<div class="group-controls">
- <input type="number" id="html5_notif_timeout" name="html5_notif_timeout" value="<?php echo FreshRSS_Context::$conf->html5_notif_timeout; ?>" /> <?php echo _t('conf.display.notif_html5.seconds'); ?>
+ <input type="number" id="html5_notif_timeout" name="html5_notif_timeout" value="<?php echo FreshRSS_Context::$user_conf->html5_notif_timeout; ?>" /> <?php echo _t('conf.display.notif_html5.seconds'); ?>
</div>
</div>
diff --git a/app/views/configure/queries.phtml b/app/views/configure/queries.phtml
index 1b3a08c91..5f449deb3 100644
--- a/app/views/configure/queries.phtml
+++ b/app/views/configure/queries.phtml
@@ -6,7 +6,7 @@
<form method="post" action="<?php echo _url('configure', 'queries'); ?>">
<legend><?php echo _t('conf.query'); ?></legend>
- <?php foreach (FreshRSS_Context::$conf->queries as $key => $query) { ?>
+ <?php foreach (FreshRSS_Context::$user_conf->queries as $key => $query) { ?>
<div class="form-group" id="query-group-<?php echo $key; ?>">
<label class="group-name" for="queries_<?php echo $key; ?>_name">
<?php echo _t('conf.query.number', $key + 1); ?>
@@ -82,7 +82,7 @@
</div>
<?php } ?>
- <?php if (count(FreshRSS_Context::$conf->queries) > 0) { ?>
+ <?php if (count(FreshRSS_Context::$user_conf->queries) > 0) { ?>
<div class="form-group form-actions">
<div class="group-controls">
<button type="submit" class="btn btn-important"><?php echo _t('gen.action.submit'); ?></button>
diff --git a/app/views/configure/reading.phtml b/app/views/configure/reading.phtml
index 440ad1df8..636671f14 100644
--- a/app/views/configure/reading.phtml
+++ b/app/views/configure/reading.phtml
@@ -9,7 +9,7 @@
<div class="form-group">
<label class="group-name" for="posts_per_page"><?php echo _t('conf.reading.articles_per_page'); ?></label>
<div class="group-controls">
- <input type="number" id="posts_per_page" name="posts_per_page" value="<?php echo FreshRSS_Context::$conf->posts_per_page; ?>" min="5" max="50" />
+ <input type="number" id="posts_per_page" name="posts_per_page" value="<?php echo FreshRSS_Context::$user_conf->posts_per_page; ?>" min="5" max="50" />
<?php echo _i('help'); ?> <?php echo _t('conf.reading.number_divided_when_reader'); ?>
</div>
</div>
@@ -18,8 +18,8 @@
<label class="group-name" for="sort_order"><?php echo _t('conf.reading.sort'); ?></label>
<div class="group-controls">
<select name="sort_order" id="sort_order">
- <option value="DESC"<?php echo FreshRSS_Context::$conf->sort_order === 'DESC' ? ' selected="selected"' : ''; ?>><?php echo _t('conf.reading.sort.newer_first'); ?></option>
- <option value="ASC"<?php echo FreshRSS_Context::$conf->sort_order === 'ASC' ? ' selected="selected"' : ''; ?>><?php echo _t('conf.reading.sort.older_first'); ?></option>
+ <option value="DESC"<?php echo FreshRSS_Context::$user_conf->sort_order === 'DESC' ? ' selected="selected"' : ''; ?>><?php echo _t('conf.reading.sort.newer_first'); ?></option>
+ <option value="ASC"<?php echo FreshRSS_Context::$user_conf->sort_order === 'ASC' ? ' selected="selected"' : ''; ?>><?php echo _t('conf.reading.sort.older_first'); ?></option>
</select>
</div>
</div>
@@ -28,9 +28,9 @@
<label class="group-name" for="view_mode"><?php echo _t('conf.reading.view.default'); ?></label>
<div class="group-controls">
<select name="view_mode" id="view_mode">
- <option value="normal"<?php echo FreshRSS_Context::$conf->view_mode === 'normal' ? ' selected="selected"' : ''; ?>><?php echo _t('conf.reading.view.normal'); ?></option>
- <option value="reader"<?php echo FreshRSS_Context::$conf->view_mode === 'reader' ? ' selected="selected"' : ''; ?>><?php echo _t('conf.reading.view.reader'); ?></option>
- <option value="global"<?php echo FreshRSS_Context::$conf->view_mode === 'global' ? ' selected="selected"' : ''; ?>><?php echo _t('conf.reading.view.global'); ?></option>
+ <option value="normal"<?php echo FreshRSS_Context::$user_conf->view_mode === 'normal' ? ' selected="selected"' : ''; ?>><?php echo _t('conf.reading.view.normal'); ?></option>
+ <option value="reader"<?php echo FreshRSS_Context::$user_conf->view_mode === 'reader' ? ' selected="selected"' : ''; ?>><?php echo _t('conf.reading.view.reader'); ?></option>
+ <option value="global"<?php echo FreshRSS_Context::$user_conf->view_mode === 'global' ? ' selected="selected"' : ''; ?>><?php echo _t('conf.reading.view.global'); ?></option>
</select>
</div>
</div>
@@ -39,9 +39,9 @@
<label class="group-name" for="view_mode"><?php echo _t('conf.reading.show'); ?></label>
<div class="group-controls">
<select name="default_view" id="default_view">
- <option value="adaptive"<?php echo FreshRSS_Context::$conf->default_view === 'adaptive' ? ' selected="selected"' : ''; ?>><?php echo _t('conf.reading.show.adaptive'); ?></option>
- <option value="all"<?php echo FreshRSS_Context::$conf->default_view === 'all' ? ' selected="selected"' : ''; ?>><?php echo _t('conf.reading.show.all_articles'); ?></option>
- <option value="unread"<?php echo FreshRSS_Context::$conf->default_view === 'unread' ? ' selected="selected"' : ''; ?>><?php echo _t('conf.reading.show.unread'); ?></option>
+ <option value="adaptive"<?php echo FreshRSS_Context::$user_conf->default_view === 'adaptive' ? ' selected="selected"' : ''; ?>><?php echo _t('conf.reading.show.adaptive'); ?></option>
+ <option value="all"<?php echo FreshRSS_Context::$user_conf->default_view === 'all' ? ' selected="selected"' : ''; ?>><?php echo _t('conf.reading.show.all_articles'); ?></option>
+ <option value="unread"<?php echo FreshRSS_Context::$user_conf->default_view === 'unread' ? ' selected="selected"' : ''; ?>><?php echo _t('conf.reading.show.unread'); ?></option>
</select>
</div>
</div>
@@ -49,7 +49,7 @@
<div class="form-group">
<div class="group-controls">
<label class="checkbox" for="hide_read_feeds">
- <input type="checkbox" name="hide_read_feeds" id="hide_read_feeds" value="1"<?php echo FreshRSS_Context::$conf->hide_read_feeds ? ' checked="checked"' : ''; ?> />
+ <input type="checkbox" name="hide_read_feeds" id="hide_read_feeds" value="1"<?php echo FreshRSS_Context::$user_conf->hide_read_feeds ? ' checked="checked"' : ''; ?> />
<?php echo _t('conf.reading.hide_read_feeds'); ?>
</label>
</div>
@@ -58,7 +58,7 @@
<div class="form-group">
<div class="group-controls">
<label class="checkbox" for="display_posts">
- <input type="checkbox" name="display_posts" id="display_posts" value="1"<?php echo FreshRSS_Context::$conf->display_posts ? ' checked="checked"' : ''; ?> />
+ <input type="checkbox" name="display_posts" id="display_posts" value="1"<?php echo FreshRSS_Context::$user_conf->display_posts ? ' checked="checked"' : ''; ?> />
<?php echo _t('conf.reading.display_articles_unfolded'); ?>
<noscript> — <strong><?php echo _t('gen.js.should_be_activated'); ?></strong></noscript>
</label>
@@ -68,7 +68,7 @@
<div class="form-group">
<div class="group-controls">
<label class="checkbox" for="display_categories">
- <input type="checkbox" name="display_categories" id="display_categories" value="1"<?php echo FreshRSS_Context::$conf->display_categories ? ' checked="checked"' : ''; ?> />
+ <input type="checkbox" name="display_categories" id="display_categories" value="1"<?php echo FreshRSS_Context::$user_conf->display_categories ? ' checked="checked"' : ''; ?> />
<?php echo _t('conf.reading.display_categories_unfolded'); ?>
<noscript> — <strong><?php echo _t('gen.js.should_be_activated'); ?></strong></noscript>
</label>
@@ -78,7 +78,7 @@
<div class="form-group">
<div class="group-controls">
<label class="checkbox" for="sticky_post">
- <input type="checkbox" name="sticky_post" id="sticky_post" value="1"<?php echo FreshRSS_Context::$conf->sticky_post ? ' checked="checked"' : ''; ?> />
+ <input type="checkbox" name="sticky_post" id="sticky_post" value="1"<?php echo FreshRSS_Context::$user_conf->sticky_post ? ' checked="checked"' : ''; ?> />
<?php echo _t('conf.reading.sticky_post'); ?>
<noscript> — <strong><?php echo _t('gen.js.should_be_activated'); ?></strong></noscript>
</label>
@@ -88,7 +88,7 @@
<div class="form-group">
<div class="group-controls">
<label class="checkbox" for="auto_load_more">
- <input type="checkbox" name="auto_load_more" id="auto_load_more" value="1"<?php echo FreshRSS_Context::$conf->auto_load_more ? ' checked="checked"' : ''; ?> />
+ <input type="checkbox" name="auto_load_more" id="auto_load_more" value="1"<?php echo FreshRSS_Context::$user_conf->auto_load_more ? ' checked="checked"' : ''; ?> />
<?php echo _t('conf.reading.auto_load_more'); ?>
<noscript> — <strong><?php echo _t('gen.js.should_be_activated'); ?></strong></noscript>
</label>
@@ -98,7 +98,7 @@
<div class="form-group">
<div class="group-controls">
<label class="checkbox" for="lazyload">
- <input type="checkbox" name="lazyload" id="lazyload" value="1"<?php echo FreshRSS_Context::$conf->lazyload ? ' checked="checked"' : ''; ?> />
+ <input type="checkbox" name="lazyload" id="lazyload" value="1"<?php echo FreshRSS_Context::$user_conf->lazyload ? ' checked="checked"' : ''; ?> />
<?php echo _t('conf.reading.img_with_lazyload'); ?>
<noscript> — <strong><?php echo _t('gen.js.should_be_activated'); ?></strong></noscript>
</label>
@@ -108,7 +108,7 @@
<div class="form-group">
<div class="group-controls">
<label class="checkbox" for="reading_confirm">
- <input type="checkbox" name="reading_confirm" id="reading_confirm" value="1"<?php echo FreshRSS_Context::$conf->reading_confirm ? ' checked="checked"' : ''; ?> />
+ <input type="checkbox" name="reading_confirm" id="reading_confirm" value="1"<?php echo FreshRSS_Context::$user_conf->reading_confirm ? ' checked="checked"' : ''; ?> />
<?php echo _t('conf.reading.confirm_enabled'); ?>
<noscript> — <strong><?php echo _t('gen.js.should_be_activated'); ?></strong></noscript>
</label>
@@ -118,7 +118,7 @@
<div class="form-group">
<div class="group-controls">
<label class="checkbox" for="auto_remove_article">
- <input type="checkbox" name="auto_remove_article" id="auto_remove_article" value="1"<?php echo FreshRSS_Context::$conf->auto_remove_article ? ' checked="checked"' : ''; ?> />
+ <input type="checkbox" name="auto_remove_article" id="auto_remove_article" value="1"<?php echo FreshRSS_Context::$user_conf->auto_remove_article ? ' checked="checked"' : ''; ?> />
<?php echo _t('conf.reading.auto_remove_article'); ?>
<noscript> — <strong><?php echo _t('gen.js.should_be_activated'); ?></strong></noscript>
</label>
@@ -129,19 +129,19 @@
<label class="group-name"><?php echo _t('conf.reading.read.when'); ?></label>
<div class="group-controls">
<label class="checkbox" for="check_open_article">
- <input type="checkbox" name="mark_open_article" id="check_open_article" value="1"<?php echo FreshRSS_Context::$conf->mark_when['article'] ? ' checked="checked"' : ''; ?> />
+ <input type="checkbox" name="mark_open_article" id="check_open_article" value="1"<?php echo FreshRSS_Context::$user_conf->mark_when['article'] ? ' checked="checked"' : ''; ?> />
<?php echo _t('conf.reading.read.article_viewed'); ?>
</label>
<label class="checkbox" for="check_open_site">
- <input type="checkbox" name="mark_open_site" id="check_open_site" value="1"<?php echo FreshRSS_Context::$conf->mark_when['site'] ? ' checked="checked"' : ''; ?> />
+ <input type="checkbox" name="mark_open_site" id="check_open_site" value="1"<?php echo FreshRSS_Context::$user_conf->mark_when['site'] ? ' checked="checked"' : ''; ?> />
<?php echo _t('conf.reading.read.article_open_on_website'); ?>
</label>
<label class="checkbox" for="check_scroll">
- <input type="checkbox" name="mark_scroll" id="check_scroll" value="1"<?php echo FreshRSS_Context::$conf->mark_when['scroll'] ? ' checked="checked"' : ''; ?> />
+ <input type="checkbox" name="mark_scroll" id="check_scroll" value="1"<?php echo FreshRSS_Context::$user_conf->mark_when['scroll'] ? ' checked="checked"' : ''; ?> />
<?php echo _t('conf.reading.read.scroll'); ?>
</label>
<label class="checkbox" for="check_reception">
- <input type="checkbox" name="mark_upon_reception" id="check_reception" value="1"<?php echo FreshRSS_Context::$conf->mark_when['reception'] ? ' checked="checked"' : ''; ?> />
+ <input type="checkbox" name="mark_upon_reception" id="check_reception" value="1"<?php echo FreshRSS_Context::$user_conf->mark_when['reception'] ? ' checked="checked"' : ''; ?> />
<?php echo _t('conf.reading.read.upon_reception'); ?>
</label>
</div>
@@ -151,7 +151,7 @@
<label class="group-name"><?php echo _t('conf.reading.after_onread'); ?></label>
<div class="group-controls">
<label class="checkbox" for="onread_jump_next">
- <input type="checkbox" name="onread_jump_next" id="onread_jump_next" value="1"<?php echo FreshRSS_Context::$conf->onread_jump_next ? ' checked="checked"' : ''; ?> />
+ <input type="checkbox" name="onread_jump_next" id="onread_jump_next" value="1"<?php echo FreshRSS_Context::$user_conf->onread_jump_next ? ' checked="checked"' : ''; ?> />
<?php echo _t('conf.reading.jump_next'); ?>
</label>
</div>
diff --git a/app/views/configure/sharing.phtml b/app/views/configure/sharing.phtml
index ffe3c039b..f5c133f07 100644
--- a/app/views/configure/sharing.phtml
+++ b/app/views/configure/sharing.phtml
@@ -15,8 +15,8 @@
<a target="_blank" class="btn" title="<?php echo _t('conf.sharing.more_information'); ?>" href="##help##"><?php echo _i('help'); ?></a>
</div></div>'>
<legend><?php echo _t('conf.sharing'); ?></legend>
- <?php foreach (FreshRSS_Context::$conf->sharing as $key => $sharing) { ?>
- <?php $share = FreshRSS_Context::$conf->shares[$sharing['type']]; ?>
+ <?php foreach (FreshRSS_Context::$user_conf->sharing as $key => $sharing) { ?>
+ <?php $share = FreshRSS_Context::$user_conf->shares[$sharing['type']]; ?>
<div class="form-group" id="group-share-<?php echo $key; ?>">
<label class="group-name">
<?php echo _t('conf.sharing.' . $sharing['type']); ?>
@@ -41,7 +41,7 @@
<div class="form-group">
<div class="group-controls">
<select>
- <?php foreach(FreshRSS_Context::$conf->shares as $key => $params) { ?>
+ <?php foreach(FreshRSS_Context::$user_conf->shares as $key => $params) { ?>
<option value='<?php echo $key?>' data-form='<?php echo $params['form']?>' data-help='<?php if (!empty($params['help'])) {echo $params['help'];}?>'><?php echo _t('conf.sharing.' . $key) ?></option>
<?php } ?>
</select>
diff --git a/app/views/configure/shortcut.phtml b/app/views/configure/shortcut.phtml
index dca8b6ef8..fdbeed3ea 100644
--- a/app/views/configure/shortcut.phtml
+++ b/app/views/configure/shortcut.phtml
@@ -9,7 +9,7 @@
<?php } ?>
</datalist>
- <?php $s = FreshRSS_Context::$conf->shortcuts; ?>
+ <?php $s = FreshRSS_Context::$user_conf->shortcuts; ?>
<form method="post" action="<?php echo _url('configure', 'shortcut'); ?>">
<legend><?php echo _t('conf.shortcut'); ?></legend>
diff --git a/app/views/helpers/javascript_vars.phtml b/app/views/helpers/javascript_vars.phtml
index 02f2014ee..aa73e297e 100644
--- a/app/views/helpers/javascript_vars.phtml
+++ b/app/views/helpers/javascript_vars.phtml
@@ -2,12 +2,12 @@
<?php
$conf = Minz_Configuration::get('system');
-$mark = FreshRSS_Context::$conf->mark_when;
+$mark = FreshRSS_Context::$user_conf->mark_when;
$mail = Minz_Session::param('mail', false);
$auto_actualize = Minz_Session::param('actualize_feeds', false);
-$hide_posts = (FreshRSS_Context::$conf->display_posts ||
+$hide_posts = (FreshRSS_Context::$user_conf->display_posts ||
Minz_Request::param('output') === 'reader');
-$s = FreshRSS_Context::$conf->shortcuts;
+$s = FreshRSS_Context::$user_conf->shortcuts;
$url_login = Minz_Url::display(array(
'c' => 'auth',
@@ -21,15 +21,15 @@ $url_logout = Minz_Url::display(array(
echo 'var context={',
'auto_remove_article:', FreshRSS_Context::isAutoRemoveAvailable() ? 'true' : 'false', ',',
'hide_posts:', $hide_posts ? 'false' : 'true', ',',
- 'display_order:"', Minz_Request::param('order', FreshRSS_Context::$conf->sort_order), '",',
+ 'display_order:"', Minz_Request::param('order', FreshRSS_Context::$user_conf->sort_order), '",',
'auto_mark_article:', $mark['article'] ? 'true' : 'false', ',',
'auto_mark_site:', $mark['site'] ? 'true' : 'false', ',',
'auto_mark_scroll:', $mark['scroll'] ? 'true' : 'false', ',',
- 'auto_load_more:', FreshRSS_Context::$conf->auto_load_more ? 'true' : 'false', ',',
+ 'auto_load_more:', FreshRSS_Context::$user_conf->auto_load_more ? 'true' : 'false', ',',
'auto_actualize_feeds:', $auto_actualize ? 'true' : 'false', ',',
- 'does_lazyload:', FreshRSS_Context::$conf->lazyload ? 'true' : 'false', ',',
+ 'does_lazyload:', FreshRSS_Context::$user_conf->lazyload ? 'true' : 'false', ',',
'sticky_post:', FreshRSS_Context::isStickyPostEnabled() ? 'true' : 'false', ',',
- 'html5_notif_timeout:', FreshRSS_Context::$conf->html5_notif_timeout, ',',
+ 'html5_notif_timeout:', FreshRSS_Context::$user_conf->html5_notif_timeout, ',',
'auth_type:"', $conf->general['auth_type'], '",',
'current_user_mail:', $mail ? ('"' . $mail . '"') : 'null', ',',
'current_view:"', Minz_Request::param('output', 'normal'), '"',
diff --git a/app/views/helpers/pagination.phtml b/app/views/helpers/pagination.phtml
index 8b40e4336..b20201c4b 100755
--- a/app/views/helpers/pagination.phtml
+++ b/app/views/helpers/pagination.phtml
@@ -24,7 +24,7 @@
</a>
<?php } elseif ($url_mark_read) { ?>
<button id="bigMarkAsRead"
- class="as-link <?php echo FreshRSS_Context::$conf->reading_confirm ? 'confirm' : ''; ?>"
+ class="as-link <?php echo FreshRSS_Context::$user_conf->reading_confirm ? 'confirm' : ''; ?>"
form="mark-read-pagination"
formaction="<?php echo Minz_Url::display($url_mark_read); ?>"
type="submit">
diff --git a/app/views/index/global.phtml b/app/views/index/global.phtml
index ae7f5ffbc..cf95bd0f5 100644
--- a/app/views/index/global.phtml
+++ b/app/views/index/global.phtml
@@ -2,7 +2,7 @@
$this->partial('nav_menu');
$class = '';
- if (FreshRSS_Context::$conf->hide_read_feeds &&
+ if (FreshRSS_Context::$user_conf->hide_read_feeds &&
FreshRSS_Context::isStateEnabled(FreshRSS_Entry::STATE_NOT_READ) &&
!FreshRSS_Context::isStateEnabled(FreshRSS_Entry::STATE_READ)) {
$class = ' state_unread';
@@ -50,5 +50,5 @@
<div id="overlay">
<a class="close" href="#"><?php echo _i('close'); ?></a>
</div>
-<div id="panel"<?php echo FreshRSS_Context::$conf->display_posts ? '' : ' class="hide_posts"'; ?>>
+<div id="panel"<?php echo FreshRSS_Context::$user_conf->display_posts ? '' : ' class="hide_posts"'; ?>>
</div>
diff --git a/app/views/index/normal.phtml b/app/views/index/normal.phtml
index b8a78cc3d..c2cf7c887 100644
--- a/app/views/index/normal.phtml
+++ b/app/views/index/normal.phtml
@@ -8,24 +8,24 @@ if (!empty($this->entries)) {
$display_yesterday = true;
$display_others = true;
if (FreshRSS_Auth::hasAccess()) {
- $sharing = FreshRSS_Context::$conf->sharing;
+ $sharing = FreshRSS_Context::$user_conf->sharing;
} else {
$sharing = array();
}
- $hidePosts = !FreshRSS_Context::$conf->display_posts;
- $lazyload = FreshRSS_Context::$conf->lazyload;
- $topline_read = FreshRSS_Context::$conf->topline_read;
- $topline_favorite = FreshRSS_Context::$conf->topline_favorite;
- $topline_date = FreshRSS_Context::$conf->topline_date;
- $topline_link = FreshRSS_Context::$conf->topline_link;
- $bottomline_read = FreshRSS_Context::$conf->bottomline_read;
- $bottomline_favorite = FreshRSS_Context::$conf->bottomline_favorite;
- $bottomline_sharing = FreshRSS_Context::$conf->bottomline_sharing && (count($sharing));
- $bottomline_tags = FreshRSS_Context::$conf->bottomline_tags;
- $bottomline_date = FreshRSS_Context::$conf->bottomline_date;
- $bottomline_link = FreshRSS_Context::$conf->bottomline_link;
+ $hidePosts = !FreshRSS_Context::$user_conf->display_posts;
+ $lazyload = FreshRSS_Context::$user_conf->lazyload;
+ $topline_read = FreshRSS_Context::$user_conf->topline_read;
+ $topline_favorite = FreshRSS_Context::$user_conf->topline_favorite;
+ $topline_date = FreshRSS_Context::$user_conf->topline_date;
+ $topline_link = FreshRSS_Context::$user_conf->topline_link;
+ $bottomline_read = FreshRSS_Context::$user_conf->bottomline_read;
+ $bottomline_favorite = FreshRSS_Context::$user_conf->bottomline_favorite;
+ $bottomline_sharing = FreshRSS_Context::$user_conf->bottomline_sharing && (count($sharing));
+ $bottomline_tags = FreshRSS_Context::$user_conf->bottomline_tags;
+ $bottomline_date = FreshRSS_Context::$user_conf->bottomline_date;
+ $bottomline_link = FreshRSS_Context::$user_conf->bottomline_link;
- $content_width = FreshRSS_Context::$conf->content_width;
+ $content_width = FreshRSS_Context::$user_conf->content_width;
$today = @strtotime('today');
?>
@@ -142,11 +142,11 @@ if (!empty($this->entries)) {
<li class="dropdown-close"><a href="#close">❌</a></li>
<?php
foreach ($sharing as $share) {
- $type_share = FreshRSS_Context::$conf->shares[$share['type']];
+ $type_share = FreshRSS_Context::$user_conf->shares[$share['type']];
$has_specific_title = ($type_share['form'] === 'advanced');
?>
<li class="item share">
- <a target="_blank" href="<?php echo FreshRSS_Share::generateUrl(FreshRSS_Context::$conf->shares, $share, $item->link(), $item->title() . ' . ' . $feed->name())?>">
+ <a target="_blank" href="<?php echo FreshRSS_Share::generateUrl(FreshRSS_Context::$user_conf->shares, $share, $item->link(), $item->title() . ' . ' . $feed->name())?>">
<?php echo $has_specific_title ? $share['name'] : _t('index.share.' . $share['name']); ?>
</a>
</li>
diff --git a/app/views/index/reader.phtml b/app/views/index/reader.phtml
index 1eab86dd2..017297710 100644
--- a/app/views/index/reader.phtml
+++ b/app/views/index/reader.phtml
@@ -2,8 +2,8 @@
$this->partial('nav_menu');
if (!empty($this->entries)) {
- $lazyload = FreshRSS_Context::$conf->lazyload;
- $content_width = FreshRSS_Context::$conf->content_width;
+ $lazyload = FreshRSS_Context::$user_conf->lazyload;
+ $content_width = FreshRSS_Context::$user_conf->content_width;
?>
<div id="stream" class="reader">
diff --git a/app/views/user/manage.phtml b/app/views/user/manage.phtml
index b175d48df..6e472ca0b 100644
--- a/app/views/user/manage.phtml
+++ b/app/views/user/manage.phtml
@@ -10,9 +10,9 @@
<label class="group-name" for="new_user_language"><?php echo _t('admin.user.language'); ?></label>
<div class="group-controls">
<select name="new_user_language" id="new_user_language">
- <?php $languages = FreshRSS_Context::$conf->availableLanguages(); ?>
+ <?php $languages = FreshRSS_Context::$user_conf->availableLanguages(); ?>
<?php foreach ($languages as $short => $lib) { ?>
- <option value="<?php echo $short; ?>"<?php echo FreshRSS_Context::$conf->language === $short ? ' selected="selected"' : ''; ?>><?php echo $lib; ?></option>
+ <option value="<?php echo $short; ?>"<?php echo FreshRSS_Context::$user_conf->language === $short ? ' selected="selected"' : ''; ?>><?php echo $lib; ?></option>
<?php } ?>
</select>
</div>
@@ -38,7 +38,7 @@
<div class="form-group">
<label class="group-name" for="new_user_email"><?php echo _t('admin.user.email_persona'); ?></label>
- <?php $mail = FreshRSS_Context::$conf->mail_login; ?>
+ <?php $mail = FreshRSS_Context::$user_conf->mail_login; ?>
<div class="group-controls">
<input type="email" id="new_user_email" name="new_user_email" class="extend" autocomplete="off" placeholder="alice@example.net" />
</div>
diff --git a/app/views/user/profile.phtml b/app/views/user/profile.phtml
index fc9b24674..a3f7bf15d 100644
--- a/app/views/user/profile.phtml
+++ b/app/views/user/profile.phtml
@@ -42,7 +42,7 @@
<div class="form-group">
<label class="group-name" for="mail_login"><?php echo _t('conf.profile.email_persona'); ?></label>
- <?php $mail = FreshRSS_Context::$conf->mail_login; ?>
+ <?php $mail = FreshRSS_Context::$user_conf->mail_login; ?>
<div class="group-controls">
<input type="email" id="mail_login" name="mail_login" class="extend" autocomplete="off" value="<?php echo $mail; ?>" <?php echo FreshRSS_Auth::hasAccess('admin') ? '' : 'disabled="disabled"'; ?> placeholder="alice@example.net" />
<noscript><b><?php echo _t('gen.js.should_be_activated'); ?></b></noscript>