Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorArthur Schiwon <blizzz@arthur-schiwon.de>2016-08-19 18:52:33 +0300
committerJoas Schilling <coding@schilljs.com>2016-08-22 09:29:49 +0300
commit7972fa552724ce63a4f51b864c28bd086fc15cb7 (patch)
tree1528708b020b4d1def91f66c2e6c8ecd63f51032 /lib
parentcb3c1eee976711d21724de819b9b365fd9e6badb (diff)
enlist only registered sections that also have settings registered to
Diffstat (limited to 'lib')
-rw-r--r--lib/private/Settings/Manager.php12
1 files changed, 8 insertions, 4 deletions
diff --git a/lib/private/Settings/Manager.php b/lib/private/Settings/Manager.php
index 7574695d709..8451e965955 100644
--- a/lib/private/Settings/Manager.php
+++ b/lib/private/Settings/Manager.php
@@ -327,10 +327,6 @@ class Manager implements IManager {
* @inheritdoc
*/
public function getAdminSections() {
- $query = $this->dbc->getQueryBuilder();
- $query->select(['class', 'priority'])
- ->from(self::TABLE_ADMIN_SECTIONS);
-
// built-in sections
$sections = [
0 => [new Section('server', $this->l->t('Server settings'), 0)],
@@ -341,7 +337,15 @@ class Manager implements IManager {
99 => [new Section('tips-tricks', $this->l->t('Tips & tricks'), 0)],
];
+ $query = $this->dbc->getQueryBuilder();
+ $query->selectDistinct('s.class')
+ ->addSelect('s.priority')
+ ->from(self::TABLE_ADMIN_SECTIONS, 's')
+ ->from(self::TABLE_ADMIN_SETTINGS, 'f')
+ ->where($query->expr()->eq('s.id', 'f.section'))
+ ;
$result = $query->execute();
+
while($row = $result->fetch()) {
if(!isset($sections[$row['priority']])) {
$sections[$row['priority']] = [];