aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Alexandre Alapetite <alexandre@alapetite.fr> 2016-10-15 15:13:38 +0200
committerGravatar GitHub <noreply@github.com> 2016-10-15 15:13:38 +0200
commit9ed59ff1f3840d7d8d96a541ad00a744b8ec1ce8 (patch)
treea7a5d8360170f2b8cdc2a6bf00512789b721a823
parent98a038926232511fdabc1cfaf5dfb220508047aa (diff)
parent4d9fbb97c80f450d13b455377482ad94d4637671 (diff)
Merge pull request #1316 from Alkarex/initial-requests
Remove superflous SQL category request
-rw-r--r--CHANGELOG.md4
-rwxr-xr-xapp/Controllers/indexController.php5
-rw-r--r--app/Models/Context.php15
3 files changed, 19 insertions, 5 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 7d4e36c7f..6243611c1 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -33,8 +33,10 @@
* UI
* Download icon 💾 for podcasts [#1236](https://github.com/FreshRSS/FreshRSS/issues/1236)
* Extensions
- * Allow extensions for default accout in anonymous mode [#1288](https://github.com/FreshRSS/FreshRSS/pull/1288)
+ * Allow extensions for default account in anonymous mode [#1288](https://github.com/FreshRSS/FreshRSS/pull/1288)
* Trigger a `freshrss:load-more` JavaScript event to help extensions [#1278](https://github.com/FreshRSS/FreshRSS/issues/1278)
+* SQL
+ * Increase performances by removing a superfluous category request [#1316](https://github.com/FreshRSS/FreshRSS/pull/1316)
* Mics.
* Removed *resource-priorities* attributes (`defer`, `lazyload`), deprecated by W3C [#1222](https://github.com/FreshRSS/FreshRSS/pull/1222)
diff --git a/app/Controllers/indexController.php b/app/Controllers/indexController.php
index 4e2717920..5ca147ff3 100755
--- a/app/Controllers/indexController.php
+++ b/app/Controllers/indexController.php
@@ -159,6 +159,11 @@ class FreshRSS_index_Controller extends Minz_ActionController {
* - hours (default: 0)
*/
private function updateContext() {
+ if (empty(FreshRSS_Context::$categories)) {
+ $catDAO = new FreshRSS_CategoryDAO();
+ FreshRSS_Context::$categories = $catDAO->listCategories();
+ }
+
// Update number of read / unread variables.
$entryDAO = FreshRSS_Factory::createEntryDao();
FreshRSS_Context::$total_starred = $entryDAO->countUnreadReadFavorites();
diff --git a/app/Models/Context.php b/app/Models/Context.php
index 889ddab1e..fe4fa6281 100644
--- a/app/Models/Context.php
+++ b/app/Models/Context.php
@@ -48,9 +48,6 @@ class FreshRSS_Context {
// Init configuration.
self::$system_conf = Minz_Configuration::get('system');
self::$user_conf = Minz_Configuration::get('user');
-
- $catDAO = new FreshRSS_CategoryDAO();
- self::$categories = $catDAO->listCategories();
}
/**
@@ -142,6 +139,11 @@ class FreshRSS_Context {
$id = substr($get, 2);
$nb_unread = 0;
+ if (empty(self::$categories)) {
+ $catDAO = new FreshRSS_CategoryDAO();
+ self::$categories = $catDAO->listCategories();
+ }
+
switch($type) {
case 'a':
self::$current_get['all'] = true;
@@ -203,11 +205,16 @@ class FreshRSS_Context {
/**
* Set the value of $next_get attribute.
*/
- public static function _nextGet() {
+ private static function _nextGet() {
$get = self::currentGet();
// By default, $next_get == $get
self::$next_get = $get;
+ if (empty(self::$categories)) {
+ $catDAO = new FreshRSS_CategoryDAO();
+ self::$categories = $catDAO->listCategories();
+ }
+
if (self::$user_conf->onread_jump_next && strlen($get) > 2) {
$another_unread_id = '';
$found_current_get = false;