Skip to content

Commit 174b297

Browse files
authored
Merge pull request #406 from nextcloud/theming-fixes-stable9
Theming fixes stable9
2 parents d35d9d2 + 3cdd10b commit 174b297

File tree

15 files changed

+79
-14
lines changed

15 files changed

+79
-14
lines changed

apps/dav/lib/connector/sabre/serverfactory.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ public function createServer($baseUri,
9898
$server->setBaseUri($baseUri);
9999

100100
// Load plugins
101-
$defaults = new \OC_Defaults();
101+
$defaults = new \OCP\Defaults();
102102
$server->addPlugin(new \OCA\DAV\Connector\Sabre\MaintenancePlugin($this->config));
103103
$server->addPlugin(new \OCA\DAV\Connector\Sabre\BlockLegacyClientPlugin($this->config));
104104
$server->addPlugin(new \Sabre\DAV\Auth\Plugin($authBackend, $defaults->getName()));

apps/theming/appinfo/info.xml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,17 @@
55
<description>Adjust the Nextcloud theme</description>
66
<licence>AGPL</licence>
77
<author>Nextcloud</author>
8-
<version>0.1.0</version>
8+
<version>0.2.0</version>
99
<namespace>Theming</namespace>
1010
<category>other</category>
11+
1112
<dependencies>
1213
<owncloud min-version="9.0" max-version="9.1" />
1314
</dependencies>
15+
16+
<types>
17+
<logging/>
18+
</types>
19+
1420
<default_enable/>
1521
</info>

apps/theming/lib/template.php

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,10 @@ public function getName() {
7777
return $this->config->getAppValue('theming', 'name', $this->name);
7878
}
7979

80+
public function getHTMLName() {
81+
return $this->config->getAppValue('theming', 'name', $this->name);
82+
}
83+
8084
public function getTitle() {
8185
return $this->config->getAppValue('theming', 'name', $this->name);
8286
}
@@ -93,6 +97,15 @@ public function getSlogan() {
9397
return $this->config->getAppValue('theming', 'slogan', $this->slogan);
9498
}
9599

100+
public function getShortFooter() {
101+
$slogan = $this->getSlogan();
102+
$footer = '<a href="'. $this->getBaseUrl() . '" target="_blank"' .
103+
' rel="noreferrer">' .$this->getEntity() . '</a>'.
104+
($slogan !== '' ? '' . $slogan : '');
105+
106+
return $footer;
107+
}
108+
96109
/**
97110
* Color that is used for the header as well as for mail headers
98111
*

apps/theming/tests/lib/TemplateTest.php

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,26 @@ public function testGetNameWithCustom() {
9191
$this->assertEquals('MyCustomCloud', $this->template->getName());
9292
}
9393

94+
public function testGetHTMLNameWithDefault() {
95+
$this->config
96+
->expects($this->once())
97+
->method('getAppValue')
98+
->with('theming', 'name', 'Nextcloud')
99+
->willReturn('Nextcloud');
100+
101+
$this->assertEquals('Nextcloud', $this->template->getHTMLName());
102+
}
103+
104+
public function testGetHTMLNameWithCustom() {
105+
$this->config
106+
->expects($this->once())
107+
->method('getAppValue')
108+
->with('theming', 'name', 'Nextcloud')
109+
->willReturn('MyCustomCloud');
110+
111+
$this->assertEquals('MyCustomCloud', $this->template->getHTMLName());
112+
}
113+
94114
public function testGetTitleWithDefault() {
95115
$this->config
96116
->expects($this->once())
@@ -172,6 +192,32 @@ public function testGetSloganWithCustom() {
172192
$this->assertEquals('My custom Slogan', $this->template->getSlogan());
173193
}
174194

195+
public function testGetShortFooter() {
196+
$this->config
197+
->expects($this->exactly(3))
198+
->method('getAppValue')
199+
->willReturnMap([
200+
['theming', 'url', 'https://nextcloud.com/', 'url'],
201+
['theming', 'name', 'Nextcloud', 'Name'],
202+
['theming', 'slogan', 'Safe Data', 'Slogan'],
203+
]);
204+
205+
$this->assertEquals('<a href="url" target="_blank" rel="noreferrer">Name</a> – Slogan', $this->template->getShortFooter());
206+
}
207+
208+
public function testGetShortFooterEmptySlogan() {
209+
$this->config
210+
->expects($this->exactly(3))
211+
->method('getAppValue')
212+
->willReturnMap([
213+
['theming', 'url', 'https://nextcloud.com/', 'url'],
214+
['theming', 'name', 'Nextcloud', 'Name'],
215+
['theming', 'slogan', 'Safe Data', ''],
216+
]);
217+
218+
$this->assertEquals('<a href="url" target="_blank" rel="noreferrer">Name</a>', $this->template->getShortFooter());
219+
}
220+
175221
public function testGetMailHeaderColorWithDefault() {
176222
$this->config
177223
->expects($this->once())

core/application.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -123,8 +123,8 @@ public function __construct(array $urlParams=array()){
123123
$container->registerService('UserFolder', function(SimpleContainer $c) {
124124
return $c->query('ServerContainer')->getUserFolder();
125125
});
126-
$container->registerService('Defaults', function() {
127-
return new \OC_Defaults;
126+
$container->registerService('Defaults', function(SimpleContainer $c) {
127+
return $c->query('ServerContainer')->getThemingDefaults();
128128
});
129129
$container->registerService('Mailer', function(SimpleContainer $c) {
130130
return $c->query('ServerContainer')->getMailer();

core/command/maintenance/install.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ protected function execute(InputInterface $input, OutputInterface $output) {
6363
// validate the environment
6464
$server = \OC::$server;
6565
$setupHelper = new Setup($this->config, $server->getIniWrapper(),
66-
$server->getL10N('lib'), new \OC_Defaults(), $server->getLogger(),
66+
$server->getL10N('lib'), $server->getThemingDefaults(), $server->getLogger(),
6767
$server->getSecureRandom());
6868
$sysInfo = $setupHelper->getSystemInfo(true);
6969
$errors = $sysInfo['errors'];

lib/base.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -911,7 +911,7 @@ public static function handleRequest() {
911911
if (!$systemConfig->getValue('installed', false)) {
912912
\OC::$server->getSession()->clear();
913913
$setupHelper = new OC\Setup(\OC::$server->getConfig(), \OC::$server->getIniWrapper(),
914-
\OC::$server->getL10N('lib'), new \OC_Defaults(), \OC::$server->getLogger(),
914+
\OC::$server->getL10N('lib'), \OC::$server->getThemingDefaults(), \OC::$server->getLogger(),
915915
\OC::$server->getSecureRandom());
916916
$controller = new OC\Core\Controller\SetupController($setupHelper);
917917
$controller->run($_POST);

lib/private/console/application.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ class Application {
5151
* @param IRequest $request
5252
*/
5353
public function __construct(IConfig $config, EventDispatcherInterface $dispatcher, IRequest $request) {
54-
$defaults = new OC_Defaults;
54+
$defaults = \OC::$server->getThemingDefaults();
5555
$this->config = $config;
5656
$this->application = new SymfonyApplication($defaults->getName(), \OC_Util::getVersionString());
5757
$this->dispatcher = $dispatcher;

lib/private/server.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -510,7 +510,7 @@ public function __construct($webRoot, \OC\Config $config) {
510510
return new Mailer(
511511
$c->getConfig(),
512512
$c->getLogger(),
513-
new \OC_Defaults()
513+
$c->getThemingDefaults()
514514
);
515515
});
516516
$this->registerService('OcsClient', function (Server $c) {

lib/private/setup.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -415,7 +415,7 @@ public static function updateHtaccess() {
415415
}
416416

417417
$setupHelper = new \OC\Setup($config, \OC::$server->getIniWrapper(),
418-
\OC::$server->getL10N('lib'), new \OC_Defaults(), \OC::$server->getLogger(),
418+
\OC::$server->getL10N('lib'), \OC::$server->getThemingDefaults(), \OC::$server->getLogger(),
419419
\OC::$server->getSecureRandom());
420420

421421
$htaccessContent = file_get_contents($setupHelper->pathToHtaccess());

0 commit comments

Comments
 (0)