simplified theme settings and standard layout (#586)
This commit is contained in:
@@ -66,13 +66,16 @@ class ThemeOptionsSubscriber implements EventSubscriberInterface
|
||||
|
||||
$skin = '';
|
||||
foreach ($user->getPreferences() as $ref) {
|
||||
$name = $ref->getName();
|
||||
if (UserPreference::SKIN === $name) {
|
||||
$skin = 'skin-' . $ref->getValue();
|
||||
}
|
||||
|
||||
if (false !== strpos($name, 'theme.')) {
|
||||
$this->helper->setOption(str_replace('theme.', '', $name), $ref->getValue());
|
||||
$name = $ref->getName();
|
||||
switch ($name) {
|
||||
case UserPreference::SKIN:
|
||||
$skin = 'skin-' . $ref->getValue();
|
||||
break;
|
||||
|
||||
case 'theme.collapsed_sidebar':
|
||||
$this->helper->setOption('collapsed_sidebar', $ref->getValue());
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -100,26 +100,11 @@ class UserPreferenceSubscriber implements EventSubscriberInterface
|
||||
->setValue('green')
|
||||
->setType(SkinType::class),
|
||||
|
||||
(new UserPreference())
|
||||
->setName('theme.fixed_layout')
|
||||
->setValue(true)
|
||||
->setType(CheckboxType::class),
|
||||
|
||||
(new UserPreference())
|
||||
->setName('theme.boxed_layout')
|
||||
->setValue(false)
|
||||
->setType(CheckboxType::class),
|
||||
|
||||
(new UserPreference())
|
||||
->setName('theme.collapsed_sidebar')
|
||||
->setValue(false)
|
||||
->setType(CheckboxType::class),
|
||||
|
||||
(new UserPreference())
|
||||
->setName('theme.mini_sidebar')
|
||||
->setValue(true)
|
||||
->setType(CheckboxType::class),
|
||||
|
||||
(new UserPreference())
|
||||
->setName('calendar.initial_view')
|
||||
->setValue(CalendarViewType::DEFAULT_VIEW)
|
||||
|
||||
40
src/Migrations/Version20190219200020.php
Normal file
40
src/Migrations/Version20190219200020.php
Normal file
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
/*
|
||||
* This file is part of the Kimai time-tracking app.
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
namespace DoctrineMigrations;
|
||||
|
||||
use App\Doctrine\AbstractMigration;
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
|
||||
/**
|
||||
* Cleanup the user_preferences table from old configs.
|
||||
*/
|
||||
final class Version20190219200020 extends AbstractMigration
|
||||
{
|
||||
public function up(Schema $schema): void
|
||||
{
|
||||
$platform = $this->getPlatform();
|
||||
|
||||
if (!in_array($platform, ['sqlite', 'mysql'])) {
|
||||
$this->abortIf(true, 'Unsupported database platform: ' . $platform);
|
||||
}
|
||||
|
||||
$userPrefs = $this->getTableName('user_preferences');
|
||||
|
||||
$this->addSql('DELETE FROM ' . $userPrefs. ' WHERE name = "theme.fixed_layout"');
|
||||
$this->addSql('DELETE FROM ' . $userPrefs. ' WHERE name = "theme.boxed_layout"');
|
||||
$this->addSql('DELETE FROM ' . $userPrefs. ' WHERE name = "theme.mini_sidebar"');
|
||||
}
|
||||
|
||||
public function down(Schema $schema): void
|
||||
{
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user