X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;ds=sidebyside;f=src%2FWallabag%2FCoreBundle%2FHelper%2FContentProxy.php;h=bbd5db5d1f1bed84a2c103035f49114a3857ad5e;hb=8d7b4f0eff9d07f8d6d354e09fd926abf26aa4ce;hp=8019df42a6c51bd642c78074f6eceb6ec0e91657;hpb=e9490a344376036978956aedeb213066fdbf49e4;p=github%2Fwallabag%2Fwallabag.git diff --git a/src/Wallabag/CoreBundle/Helper/ContentProxy.php b/src/Wallabag/CoreBundle/Helper/ContentProxy.php index 8019df42..bbd5db5d 100644 --- a/src/Wallabag/CoreBundle/Helper/ContentProxy.php +++ b/src/Wallabag/CoreBundle/Helper/ContentProxy.php @@ -8,6 +8,7 @@ use Wallabag\CoreBundle\Entity\Entry; use Wallabag\CoreBundle\Entity\Tag; use Wallabag\CoreBundle\Tools\Utils; use Wallabag\CoreBundle\Repository\TagRepository; +use Symfony\Component\HttpFoundation\File\MimeType\MimeTypeExtensionGuesser; /** * This kind of proxy class take care of getting the content from an url @@ -19,6 +20,7 @@ class ContentProxy protected $tagger; protected $logger; protected $tagRepository; + protected $mimeGuesser; public function __construct(Graby $graby, RuleBasedTagger $tagger, TagRepository $tagRepository, Logger $logger) { @@ -26,6 +28,7 @@ class ContentProxy $this->tagger = $tagger; $this->logger = $logger; $this->tagRepository = $tagRepository; + $this->mimeGuesser = new MimeTypeExtensionGuesser(); } /** @@ -79,6 +82,11 @@ class ContentProxy $entry->setPreviewPicture($content['open_graph']['og_image']); } + // if content is an image define as a preview too + if (in_array($this->mimeGuesser->guess($content['content_type']), ['jpeg', 'jpg', 'gif', 'png'], true)) { + $entry->setPreviewPicture($content['url']); + } + try { $this->tagger->tag($entry); } catch (\Exception $e) {