From: Jérémy Benoist Date: Mon, 15 May 2017 09:42:05 +0000 (+0200) Subject: Merge pull request #3120 from aaa2000/fix-delete-annotation-user X-Git-Tag: 2.3.0~31^2~94 X-Git-Url: https://git.immae.eu/?a=commitdiff_plain;h=d168fff7a9aedb19db05a95a3264e548748126c1;hp=60c522899bcfd3aef1a486922e0a9aeb549c0fc8;p=github%2Fwallabag%2Fwallabag.git Merge pull request #3120 from aaa2000/fix-delete-annotation-user Fix delete annotation when username is defined --- diff --git a/app/Resources/CraueConfigBundle/views/Settings/modify.html.twig b/app/Resources/CraueConfigBundle/views/Settings/modify.html.twig index c4e735ee..b81b8651 100644 --- a/app/Resources/CraueConfigBundle/views/Settings/modify.html.twig +++ b/app/Resources/CraueConfigBundle/views/Settings/modify.html.twig @@ -20,12 +20,10 @@ {% for section in sections | craue_sortSections %}
- {% for setting in form.settings if setting.section.vars.value == section %} - {{ form_row(setting.name) }} - {{ form_row(setting.section) }} - {{ form_row(setting.value, { - 'label': setting.name.vars.value | trans({}, 'CraueConfigBundle'), - }) }} + {% for setting in form.settings if setting.vars.value.section == section %} + {{ form_row(setting.value, { + 'label': setting.vars.value.name | trans({}, 'CraueConfigBundle'), + }) }} {% endfor %}
{% endfor %} diff --git a/app/config/config.yml b/app/config/config.yml index 116bb04c..28abe734 100644 --- a/app/config/config.yml +++ b/app/config/config.yml @@ -6,6 +6,7 @@ imports: parameters: # Allows to use the live reload feature for changes in assets use_webpack_dev_server: false + craue_config.cache_adapter.class: Craue\ConfigBundle\CacheAdapter\SymfonyCacheComponentAdapter framework: #esi: ~ diff --git a/app/config/services.yml b/app/config/services.yml index 9a1ce80b..7b85d846 100644 --- a/app/config/services.yml +++ b/app/config/services.yml @@ -42,3 +42,11 @@ services: arguments: ["@session"] tags: - { name: kernel.event_listener, event: security.interactive_login, method: onInteractiveLogin } + + craue_config_cache_provider: + class: Symfony\Component\Cache\Adapter\FilesystemAdapter + public: false + arguments: + - 'craue_config' + - 0 + - '%kernel.cache_dir%' diff --git a/composer.json b/composer.json index bfd42339..02a79853 100644 --- a/composer.json +++ b/composer.json @@ -75,7 +75,7 @@ "guzzlehttp/guzzle": "^5.3.1", "doctrine/doctrine-migrations-bundle": "^1.0", "paragonie/random_compat": "~1.0", - "craue/config-bundle": "~1.4", + "craue/config-bundle": "~2.0", "mnapoli/piwik-twig-extension": "^1.0", "ocramius/proxy-manager": "1.*", "white-october/pagerfanta-bundle": "^1.0", diff --git a/src/Wallabag/CoreBundle/Helper/RuleBasedTagger.php b/src/Wallabag/CoreBundle/Helper/RuleBasedTagger.php index b490e209..add27db2 100644 --- a/src/Wallabag/CoreBundle/Helper/RuleBasedTagger.php +++ b/src/Wallabag/CoreBundle/Helper/RuleBasedTagger.php @@ -8,6 +8,7 @@ use Wallabag\CoreBundle\Entity\Tag; use Wallabag\CoreBundle\Repository\EntryRepository; use Wallabag\CoreBundle\Repository\TagRepository; use Wallabag\UserBundle\Entity\User; +use Psr\Log\LoggerInterface; class RuleBasedTagger { @@ -15,11 +16,12 @@ class RuleBasedTagger private $tagRepository; private $entryRepository; - public function __construct(RulerZ $rulerz, TagRepository $tagRepository, EntryRepository $entryRepository) + public function __construct(RulerZ $rulerz, TagRepository $tagRepository, EntryRepository $entryRepository, LoggerInterface $logger) { $this->rulerz = $rulerz; $this->tagRepository = $tagRepository; $this->entryRepository = $entryRepository; + $this->logger = $logger; } /** @@ -36,6 +38,11 @@ class RuleBasedTagger continue; } + $this->logger->info('Matching rule.', [ + 'rule' => $rule->getRule(), + 'tags' => $rule->getTags(), + ]); + foreach ($rule->getTags() as $label) { $tag = $this->getTag($label); diff --git a/src/Wallabag/CoreBundle/Resources/config/services.yml b/src/Wallabag/CoreBundle/Resources/config/services.yml index 6c9195ce..a9134ac3 100644 --- a/src/Wallabag/CoreBundle/Resources/config/services.yml +++ b/src/Wallabag/CoreBundle/Resources/config/services.yml @@ -99,6 +99,7 @@ services: - "@rulerz" - "@wallabag_core.tag_repository" - "@wallabag_core.entry_repository" + - "@logger" # repository as a service wallabag_core.entry_repository: diff --git a/tests/Wallabag/CoreBundle/Helper/RuleBasedTaggerTest.php b/tests/Wallabag/CoreBundle/Helper/RuleBasedTaggerTest.php index 17b08c2a..1e21f400 100644 --- a/tests/Wallabag/CoreBundle/Helper/RuleBasedTaggerTest.php +++ b/tests/Wallabag/CoreBundle/Helper/RuleBasedTaggerTest.php @@ -2,6 +2,8 @@ namespace Tests\Wallabag\CoreBundle\Helper; +use Monolog\Handler\TestHandler; +use Monolog\Logger; use Wallabag\CoreBundle\Entity\Config; use Wallabag\CoreBundle\Entity\Entry; use Wallabag\CoreBundle\Entity\Tag; @@ -15,14 +17,19 @@ class RuleBasedTaggerTest extends \PHPUnit_Framework_TestCase private $tagRepository; private $entryRepository; private $tagger; + private $logger; + private $handler; public function setUp() { $this->rulerz = $this->getRulerZMock(); $this->tagRepository = $this->getTagRepositoryMock(); $this->entryRepository = $this->getEntryRepositoryMock(); + $this->logger = $this->getLogger(); + $this->handler = new TestHandler(); + $this->logger->pushHandler($this->handler); - $this->tagger = new RuleBasedTagger($this->rulerz, $this->tagRepository, $this->entryRepository); + $this->tagger = new RuleBasedTagger($this->rulerz, $this->tagRepository, $this->entryRepository, $this->logger); } public function testTagWithNoRule() @@ -32,6 +39,8 @@ class RuleBasedTaggerTest extends \PHPUnit_Framework_TestCase $this->tagger->tag($entry); $this->assertTrue($entry->getTags()->isEmpty()); + $records = $this->handler->getRecords(); + $this->assertCount(0, $records); } public function testTagWithNoMatchingRule() @@ -49,6 +58,8 @@ class RuleBasedTaggerTest extends \PHPUnit_Framework_TestCase $this->tagger->tag($entry); $this->assertTrue($entry->getTags()->isEmpty()); + $records = $this->handler->getRecords(); + $this->assertCount(0, $records); } public function testTagWithAMatchingRule() @@ -70,6 +81,9 @@ class RuleBasedTaggerTest extends \PHPUnit_Framework_TestCase $tags = $entry->getTags(); $this->assertSame('foo', $tags[0]->getLabel()); $this->assertSame('bar', $tags[1]->getLabel()); + + $records = $this->handler->getRecords(); + $this->assertCount(1, $records); } public function testTagWithAMixOfMatchingRules() @@ -90,6 +104,8 @@ class RuleBasedTaggerTest extends \PHPUnit_Framework_TestCase $tags = $entry->getTags(); $this->assertSame('foo', $tags[0]->getLabel()); + $records = $this->handler->getRecords(); + $this->assertCount(1, $records); } public function testWhenTheTagExists() @@ -118,6 +134,8 @@ class RuleBasedTaggerTest extends \PHPUnit_Framework_TestCase $tags = $entry->getTags(); $this->assertSame($tag, $tags[0]); + $records = $this->handler->getRecords(); + $this->assertCount(1, $records); } public function testSameTagWithDifferentfMatchingRules() @@ -138,6 +156,8 @@ class RuleBasedTaggerTest extends \PHPUnit_Framework_TestCase $tags = $entry->getTags(); $this->assertCount(1, $tags); + $records = $this->handler->getRecords(); + $this->assertCount(2, $records); } public function testTagAllEntriesForAUser() @@ -209,4 +229,9 @@ class RuleBasedTaggerTest extends \PHPUnit_Framework_TestCase ->disableOriginalConstructor() ->getMock(); } + + private function getLogger() + { + return new Logger('foo'); + } } diff --git a/var/SymfonyRequirements.php b/var/SymfonyRequirements.php index 7e7a99de..3b14a402 100644 --- a/var/SymfonyRequirements.php +++ b/var/SymfonyRequirements.php @@ -633,12 +633,6 @@ class SymfonyRequirements extends RequirementCollection 'Install and enable the mbstring extension.' ); - $this->addRecommendation( - function_exists('iconv'), - 'iconv() should be available', - 'Install and enable the iconv extension.' - ); - $this->addRecommendation( function_exists('utf8_decode'), 'utf8_decode() should be available',