mirror of
https://github.com/nextcloud/server.git
synced 2026-06-09 00:32:29 -04:00
Merge pull request #56626 from nextcloud/fix/fix/theming-legacy-app-config
Fix/fix/theming legacy app config
This commit is contained in:
commit
045dc79b01
2 changed files with 36 additions and 4 deletions
|
|
@ -431,12 +431,12 @@ class ThemingDefaults extends \OC_Defaults {
|
|||
* @param string $value
|
||||
*/
|
||||
public function set($setting, $value): void {
|
||||
switch ($value) {
|
||||
switch ($setting) {
|
||||
case ConfigLexicon::CACHE_BUSTER:
|
||||
$this->appConfig->setAppValueInt(ConfigLexicon::CACHE_BUSTER, (int)$value);
|
||||
break;
|
||||
case ConfigLexicon::USER_THEMING_DISABLED:
|
||||
$value = $value === 'true' || $value === 'yes' || $value === '1';
|
||||
$value = in_array($value, ['1', 'true', 'yes', 'on']);
|
||||
$this->appConfig->setAppValueBool(ConfigLexicon::USER_THEMING_DISABLED, $value);
|
||||
break;
|
||||
default:
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ declare(strict_types=1);
|
|||
*/
|
||||
namespace OCA\Theming\Tests;
|
||||
|
||||
use OCA\Theming\ConfigLexicon;
|
||||
use OCA\Theming\ImageManager;
|
||||
use OCA\Theming\Service\BackgroundService;
|
||||
use OCA\Theming\ThemingDefaults;
|
||||
|
|
@ -728,7 +729,7 @@ class ThemingDefaultsTest extends TestCase {
|
|||
'theming-favicon-mime' => '\'jpeg\'',
|
||||
'image-logoheader' => "url('custom-logoheader?v=0')",
|
||||
'image-favicon' => "url('custom-favicon?v=0')",
|
||||
'has-legal-links' => 'false'
|
||||
'has-legal-links' => 'false',
|
||||
];
|
||||
$this->assertEquals($expected, $this->template->getScssVariables());
|
||||
}
|
||||
|
|
@ -798,7 +799,7 @@ class ThemingDefaultsTest extends TestCase {
|
|||
['core', 'test.png', false],
|
||||
['core', 'manifest.json'],
|
||||
['core', 'favicon.ico'],
|
||||
['core', 'favicon-touch.png']
|
||||
['core', 'favicon-touch.png'],
|
||||
];
|
||||
}
|
||||
|
||||
|
|
@ -825,4 +826,35 @@ class ThemingDefaultsTest extends TestCase {
|
|||
}
|
||||
$this->assertEquals($result, $this->template->replaceImagePath($app, $image));
|
||||
}
|
||||
|
||||
public static function setTypesProvider(): array {
|
||||
return [
|
||||
[ConfigLexicon::BASE_URL, 'example.com', 'example.com'],
|
||||
[ConfigLexicon::USER_THEMING_DISABLED, 'no', false],
|
||||
[ConfigLexicon::USER_THEMING_DISABLED, 'true', true],
|
||||
];
|
||||
}
|
||||
|
||||
#[\PHPUnit\Framework\Attributes\DataProvider('setTypesProvider')]
|
||||
public function testSetTypes(string $setting, string $value, mixed $expected): void {
|
||||
$setValue = null;
|
||||
$cb = function ($setting, $value) use (&$setValue) {
|
||||
if ($setting !== ConfigLexicon::CACHE_BUSTER) {
|
||||
$setValue = $value;
|
||||
}
|
||||
return true;
|
||||
};
|
||||
$this->appConfig
|
||||
->method('setAppValueBool')
|
||||
->willReturnCallback($cb);
|
||||
$this->appConfig
|
||||
->method('setAppValueString')
|
||||
->willReturnCallback($cb);
|
||||
$this->appConfig
|
||||
->method('setAppValueInt')
|
||||
->willReturnCallback($cb);
|
||||
|
||||
$this->template->set($setting, $value);
|
||||
$this->assertEquals($expected, $setValue);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue