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
diff options
context:
space:
mode:
authorMichael Weimann <mail@michael-weimann.eu>2019-01-14 02:05:11 +0300
committerMichael Weimann <mail@michael-weimann.eu>2019-01-14 02:08:26 +0300
commit2cd3fd3dc2b31e460ac8ff887a360e14e542ea1c (patch)
treebc27562327f69f7bea9185151f7255025cadd4a1
parentd7158402dd58197bbead7e5a6f45a9b5c233083d (diff)
Move server info to theming section
Signed-off-by: Michael Weimann <mail@michael-weimann.eu>
-rw-r--r--apps/theming/lib/Settings/Section.php83
-rw-r--r--apps/theming/tests/ServicesTest.php4
-rw-r--r--apps/theming/tests/Settings/SectionTest.php77
-rw-r--r--lib/private/Settings/Manager.php7
-rw-r--r--lib/private/Settings/Personal/PersonalInfo.php4
-rw-r--r--lib/private/Settings/Theming/ServerInfo.php (renamed from lib/private/Settings/Admin/ServerInfo.php)6
-rw-r--r--settings/Controller/ServerInfoSettingsController.php2
-rw-r--r--settings/img/theming-dark.svg1
-rw-r--r--settings/templates/settings/admin/server-info.php2
-rw-r--r--tests/Settings/Controller/ServerInfoSettingsControllerTest.php2
-rw-r--r--tests/lib/Settings/ManagerTest.php12
11 files changed, 23 insertions, 177 deletions
diff --git a/apps/theming/lib/Settings/Section.php b/apps/theming/lib/Settings/Section.php
deleted file mode 100644
index 9ec990ebe48..00000000000
--- a/apps/theming/lib/Settings/Section.php
+++ /dev/null
@@ -1,83 +0,0 @@
-<?php
-/**
- * @copyright Copyright (c) 2016 Arthur Schiwon <blizzz@arthur-schiwon.de>
- *
- * @author Arthur Schiwon <blizzz@arthur-schiwon.de>
- * @author Joas Schilling <coding@schilljs.com>
- *
- * @license GNU AGPL version 3 or any later version
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- */
-
-namespace OCA\Theming\Settings;
-
-use OCP\IL10N;
-use OCP\IURLGenerator;
-use OCP\Settings\IIconSection;
-
-class Section implements IIconSection {
- /** @var IL10N */
- private $l;
- /** @var IURLGenerator */
- private $url;
-
- /**
- * @param IURLGenerator $url
- * @param IL10N $l
- */
- public function __construct(IURLGenerator $url, IL10N $l) {
- $this->url = $url;
- $this->l = $l;
- }
-
- /**
- * returns the ID of the section. It is supposed to be a lower case string,
- * e.g. 'ldap'
- *
- * @returns string
- */
- public function getID() {
- return 'theming';
- }
-
- /**
- * returns the translated name as it should be displayed, e.g. 'LDAP / AD
- * integration'. Use the L10N service to translate it.
- *
- * @return string
- */
- public function getName() {
- return $this->l->t('Theming');
- }
-
- /**
- * @return int whether the form should be rather on the top or bottom of
- * the settings navigation. The sections are arranged in ascending order of
- * the priority values. It is required to return a value between 0 and 99.
- *
- * E.g.: 70
- */
- public function getPriority() {
- return 30;
- }
-
- /**
- * {@inheritdoc}
- */
- public function getIcon() {
- return $this->url->imagePath('theming', 'app-dark.svg');
- }
-}
diff --git a/apps/theming/tests/ServicesTest.php b/apps/theming/tests/ServicesTest.php
index a46e28235f5..baf7c6edc88 100644
--- a/apps/theming/tests/ServicesTest.php
+++ b/apps/theming/tests/ServicesTest.php
@@ -26,13 +26,11 @@ namespace OCA\Theming\Tests;
use OCA\Theming\Capabilities;
use OCA\Theming\Controller\ThemingController;
use OCA\Theming\Settings\Admin;
-use OCA\Theming\Settings\Section;
use OCA\Theming\ThemingDefaults;
use OCA\Theming\Util;
use OCP\AppFramework\App;
use OCP\Capabilities\ICapability;
use OCP\IL10N;
-use OCP\Settings\ISection;
use OCP\Settings\ISettings;
use Test\TestCase;
@@ -72,8 +70,6 @@ class ServicesTest extends TestCase {
// Settings
[Admin::class],
[Admin::class, ISettings::class],
- [Section::class],
- [Section::class, ISection::class],
];
}
diff --git a/apps/theming/tests/Settings/SectionTest.php b/apps/theming/tests/Settings/SectionTest.php
deleted file mode 100644
index 09abf9e34f5..00000000000
--- a/apps/theming/tests/Settings/SectionTest.php
+++ /dev/null
@@ -1,77 +0,0 @@
-<?php
-/**
- * @copyright Copyright (c) 2016 Lukas Reschke <lukas@statuscode.ch>
- *
- * @author Joas Schilling <coding@schilljs.com>
- * @author Lukas Reschke <lukas@statuscode.ch>
- *
- * @license GNU AGPL version 3 or any later version
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- */
-
-namespace OCA\Theming\Tests\Settings;
-
-use OCA\Theming\Settings\Section;
-use OCP\IL10N;
-use OCP\IURLGenerator;
-use Test\TestCase;
-
-class SectionTest extends TestCase {
- /** @var IURLGenerator|\PHPUnit_Framework_MockObject_MockObject */
- private $url;
- /** @var IL10N|\PHPUnit_Framework_MockObject_MockObject */
- private $l;
- /** @var Section */
- private $section;
-
- public function setUp() {
- parent::setUp();
- $this->url = $this->createMock(IURLGenerator::class);
- $this->l = $this->createMock(IL10N::class);
-
- $this->section = new Section(
- $this->url,
- $this->l
- );
- }
-
- public function testGetID() {
- $this->assertSame('theming', $this->section->getID());
- }
-
- public function testGetName() {
- $this->l
- ->expects($this->once())
- ->method('t')
- ->with('Theming')
- ->willReturn('Theming');
-
- $this->assertSame('Theming', $this->section->getName());
- }
-
- public function testGetPriority() {
- $this->assertSame(30, $this->section->getPriority());
- }
-
- public function testGetIcon() {
- $this->url->expects($this->once())
- ->method('imagePath')
- ->with('theming', 'app-dark.svg')
- ->willReturn('icon');
-
- $this->assertSame('icon', $this->section->getIcon());
- }
-}
diff --git a/lib/private/Settings/Manager.php b/lib/private/Settings/Manager.php
index e20afd44038..3f72557d8ec 100644
--- a/lib/private/Settings/Manager.php
+++ b/lib/private/Settings/Manager.php
@@ -192,6 +192,7 @@ class Manager implements IManager {
1 => [new Section('server', $this->l->t('Basic settings'), 0, $this->url->imagePath('core', 'actions/settings-dark.svg'))],
5 => [new Section('sharing', $this->l->t('Sharing'), 0, $this->url->imagePath('core', 'actions/share.svg'))],
10 => [new Section('security', $this->l->t('Security'), 0, $this->url->imagePath('core', 'actions/password.svg'))],
+ 30 => [new Section('theming', $this->l->t('Theming'), 0, $this->url->imagePath('settings', 'theming-dark.svg'))],
50 => [new Section('groupware', $this->l->t('Groupware'), 0, $this->url->imagePath('core', 'places/contacts.svg'))],
98 => [new Section('additional', $this->l->t('Additional settings'), 0, $this->url->imagePath('core', 'actions/settings-dark.svg'))],
];
@@ -231,14 +232,16 @@ class Manager implements IManager {
$forms[$form->getPriority()] = [$form];
$form = $this->container->query(Admin\Mail::class);
$forms[$form->getPriority()] = [$form];
- $form = $this->container->query(Admin\ServerInfo::class);
- $forms[$form->getPriority()] = [$form];
}
if ($section === 'security') {
/** @var ISettings $form */
$form = $this->container->query(Admin\Security::class);
$forms[$form->getPriority()] = [$form];
}
+ if ($section === 'theming') {
+ $form = $this->container->query(Theming\ServerInfo::class);
+ $forms[$form->getPriority()] = [$form];
+ }
if ($section === 'sharing') {
/** @var ISettings $form */
$form = $this->container->query(Admin\Sharing::class);
diff --git a/lib/private/Settings/Personal/PersonalInfo.php b/lib/private/Settings/Personal/PersonalInfo.php
index 444600f967a..f3163abff92 100644
--- a/lib/private/Settings/Personal/PersonalInfo.php
+++ b/lib/private/Settings/Personal/PersonalInfo.php
@@ -26,7 +26,7 @@
namespace OC\Settings\Personal;
use OC\Accounts\AccountManager;
-use OC\Settings\Admin\ServerInfo;
+use OC\Settings\Theming\ServerInfo;
use OCA\FederatedFileSharing\AppInfo\Application;
use OCP\App\IAppManager;
use OCP\AppFramework\Http\TemplateResponse;
@@ -217,7 +217,7 @@ class PersonalInfo implements ISettings {
$userLang = $languages['commonlanguages'][$userLangIndex];
// search in the other languages
if ($userLangIndex === false) {
- $userLangIndex = array_search($userConfLang, array_column($languages['languages'], 'code'));
+ $userLangIndex = array_search($userConfLang, array_column($languages['languages'], 'code'));
$userLang = $languages['languages'][$userLangIndex];
}
// if user language is not available but set somehow: show the actual code as name
diff --git a/lib/private/Settings/Admin/ServerInfo.php b/lib/private/Settings/Theming/ServerInfo.php
index 8ac4f890504..a5cfdd41f52 100644
--- a/lib/private/Settings/Admin/ServerInfo.php
+++ b/lib/private/Settings/Theming/ServerInfo.php
@@ -20,7 +20,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-namespace OC\Settings\Admin;
+namespace OC\Settings\Theming;
use OCP\AppFramework\Http\TemplateResponse;
use OCP\IConfig;
@@ -104,7 +104,7 @@ class ServerInfo implements ISettings {
* @return string
*/
public function getSection() {
- return 'server-info';
+ return 'theming';
}
/**
@@ -115,7 +115,7 @@ class ServerInfo implements ISettings {
* priority values. It is required to return a value between 0 and 100.
*/
public function getPriority() {
- return 20;
+ return 10;
}
}
diff --git a/settings/Controller/ServerInfoSettingsController.php b/settings/Controller/ServerInfoSettingsController.php
index d1f411592d4..29d36b2e196 100644
--- a/settings/Controller/ServerInfoSettingsController.php
+++ b/settings/Controller/ServerInfoSettingsController.php
@@ -22,7 +22,7 @@
namespace OC\Settings\Controller;
-use OC\Settings\Admin\ServerInfo;
+use OC\Settings\Theming\ServerInfo;
use OCP\AppFramework\Controller;
use OCP\IConfig;
use OCP\IRequest;
diff --git a/settings/img/theming-dark.svg b/settings/img/theming-dark.svg
new file mode 100644
index 00000000000..adf97966c41
--- /dev/null
+++ b/settings/img/theming-dark.svg
@@ -0,0 +1 @@
+<svg width="16" height="16" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="M10.707 11.412l-.587-.587-.03-.03a.513.513 0 0 1-.074-.526L13.07 3.4l-1.5-1.498-.15.15-.708-.706.505-.505a.538.538 0 0 1 .224-.128c.04-.01.05-.01.087-.016h.087c.04.006.05.006.086.016.072.02.134.055.192.1.74.676 1.42 1.415 2.127 2.124a.503.503 0 0 1 .103.556l-3.053 6.87.344.343.49-.49 3.01 3.01a1.192 1.192 0 0 1-1.685 1.686l-3.012-3.01.49-.488zm-.533-10.217a.986.986 0 0 0-1.396 0l-7.582 7.58a.99.99 0 0 0 0 1.398l1.397 1.396a.986.986 0 0 0 1.396 0l7.58-7.583a.988.988 0 0 0 0-1.396l-1.396-1.395z" fill="#000"/></svg>
diff --git a/settings/templates/settings/admin/server-info.php b/settings/templates/settings/admin/server-info.php
index 3690da6d3b4..ac6cf48ee80 100644
--- a/settings/templates/settings/admin/server-info.php
+++ b/settings/templates/settings/admin/server-info.php
@@ -57,7 +57,7 @@
placeholder="<?php p($l->t('company or person')); ?>">
</div>
<div>
- <label class="label" for="providerWebsite"><?php p($l->t('Website')); ?></label>
+ <label class="label" for="providerWebsite"><?php p($l->t('Provider website')); ?></label>
<input
class="form-input"
id="providerWebsite"
diff --git a/tests/Settings/Controller/ServerInfoSettingsControllerTest.php b/tests/Settings/Controller/ServerInfoSettingsControllerTest.php
index 43dcb90855a..8d2083d0acb 100644
--- a/tests/Settings/Controller/ServerInfoSettingsControllerTest.php
+++ b/tests/Settings/Controller/ServerInfoSettingsControllerTest.php
@@ -22,7 +22,7 @@
namespace Settings\Controller;
-use OC\Settings\Admin\ServerInfo;
+use OC\Settings\Theming\ServerInfo;
use OC\Settings\Controller\ServerInfoSettingsController;
use OCP\IConfig;
use OCP\IRequest;
diff --git a/tests/lib/Settings/ManagerTest.php b/tests/lib/Settings/ManagerTest.php
index b82fb5bc3ca..8323452934f 100644
--- a/tests/lib/Settings/ManagerTest.php
+++ b/tests/lib/Settings/ManagerTest.php
@@ -72,13 +72,14 @@ class ManagerTest extends TestCase {
$this->manager->registerSection('admin', \OCA\WorkflowEngine\Settings\Section::class);
- $this->url->expects($this->exactly(6))
+ $this->url->expects($this->exactly(7))
->method('imagePath')
->willReturnMap([
['settings', 'admin.svg', '0'],
['core', 'actions/settings-dark.svg', '1'],
['core', 'actions/share.svg', '2'],
['core', 'actions/password.svg', '3'],
+ ['settings', 'theming-dark.svg', '6'],
['core', 'places/contacts.svg', '5'],
['settings', 'help.svg', '4'],
]);
@@ -88,6 +89,7 @@ class ManagerTest extends TestCase {
1 => [new Section('server', 'Basic settings', 0, '1')],
5 => [new Section('sharing', 'Sharing', 0, '2')],
10 => [new Section('security', 'Security', 0, '3')],
+ 30 => [new Section('theming', 'Theming', 0, '6')],
50 => [new Section('groupware', 'Groupware', 0, '5')],
55 => [\OC::$server->query(\OCA\WorkflowEngine\Settings\Section::class)],
98 => [new Section('additional', 'Additional settings', 0, '1')],
@@ -124,13 +126,14 @@ class ManagerTest extends TestCase {
->method('t')
->will($this->returnArgument(0));
- $this->url->expects($this->exactly(6))
+ $this->url->expects($this->exactly(7))
->method('imagePath')
->willReturnMap([
['settings', 'admin.svg', '0'],
['core', 'actions/settings-dark.svg', '1'],
['core', 'actions/share.svg', '2'],
['core', 'actions/password.svg', '3'],
+ ['settings', 'theming-dark.svg', '6'],
['core', 'places/contacts.svg', '5'],
['settings', 'help.svg', '4'],
]);
@@ -140,6 +143,7 @@ class ManagerTest extends TestCase {
1 => [new Section('server', 'Basic settings', 0, '1')],
5 => [new Section('sharing', 'Sharing', 0, '2')],
10 => [new Section('security', 'Security', 0, '3')],
+ 30 => [new Section('theming', 'Theming', 0, '6')],
50 => [new Section('groupware', 'Groupware', 0, '5')],
98 => [new Section('additional', 'Additional settings', 0, '1')],
], $this->manager->getAdminSections());
@@ -209,7 +213,7 @@ class ManagerTest extends TestCase {
$this->manager->registerSection('personal', \OCA\WorkflowEngine\Settings\Section::class);
$this->manager->registerSection('admin', \OCA\WorkflowEngine\Settings\Section::class);
- $this->url->expects($this->exactly(9))
+ $this->url->expects($this->exactly(10))
->method('imagePath')
->willReturnMap([
['core', 'actions/info.svg', '1'],
@@ -219,6 +223,7 @@ class ManagerTest extends TestCase {
['core', 'actions/settings-dark.svg', '1'],
['core', 'actions/share.svg', '2'],
['core', 'actions/password.svg', '3'],
+ ['settings', 'theming-dark.svg', '6'],
['core', 'places/contacts.svg', '5'],
['settings', 'help.svg', '4'],
]);
@@ -235,6 +240,7 @@ class ManagerTest extends TestCase {
1 => [new Section('server', 'Basic settings', 0, '1')],
5 => [new Section('sharing', 'Sharing', 0, '2')],
10 => [new Section('security', 'Security', 0, '3')],
+ 30 => [new Section('theming', 'Theming', 0, '6')],
50 => [new Section('groupware', 'Groupware', 0, '5')],
55 => [\OC::$server->query(\OCA\WorkflowEngine\Settings\Section::class)],
98 => [new Section('additional', 'Additional settings', 0, '1')],