From c2656f96d4776c86b13d8a4c93a78ee7c4d3824c Mon Sep 17 00:00:00 2001 From: Jeremy Benoist Date: Fri, 19 Feb 2016 14:22:20 +0100 Subject: Move assignTagsToEntry in ContentProxy helper --- .../ImportBundle/Import/WallabagV1Import.php | 28 ++++++---------------- 1 file changed, 7 insertions(+), 21 deletions(-) (limited to 'src/Wallabag/ImportBundle/Import/WallabagV1Import.php') diff --git a/src/Wallabag/ImportBundle/Import/WallabagV1Import.php b/src/Wallabag/ImportBundle/Import/WallabagV1Import.php index bbac6eaf..05bdb401 100644 --- a/src/Wallabag/ImportBundle/Import/WallabagV1Import.php +++ b/src/Wallabag/ImportBundle/Import/WallabagV1Import.php @@ -6,7 +6,6 @@ use Psr\Log\LoggerInterface; use Psr\Log\NullLogger; use Doctrine\ORM\EntityManager; use Wallabag\CoreBundle\Entity\Entry; -use Wallabag\CoreBundle\Entity\Tag; use Wallabag\UserBundle\Entity\User; use Wallabag\CoreBundle\Tools\Utils; use Wallabag\CoreBundle\Helper\ContentProxy; @@ -144,6 +143,7 @@ class WallabagV1Import implements ImportInterface // @see ContentProxy->updateEntry $entry = new Entry($this->user); $entry->setUrl($importedEntry['url']); + if (in_array($importedEntry['title'], $untitled)) { $entry = $this->contentProxy->updateEntry($entry, $importedEntry['url']); } else { @@ -152,10 +152,14 @@ class WallabagV1Import implements ImportInterface $entry->setReadingTime(Utils::getReadingTime($importedEntry['content'])); $entry->setDomainName(parse_url($importedEntry['url'], PHP_URL_HOST)); } + if (array_key_exists('tags', $importedEntry) && $importedEntry['tags'] != '') { - $tags = explode(',', $importedEntry['tags']); - $this->assignTagsToEntry($entry, $tags); + $this->contentProxy->assignTagsToEntry( + $entry, + $importedEntry['tags'] + ); } + $entry->setArchived($importedEntry['is_read']); $entry->setStarred($importedEntry['is_fav']); @@ -171,22 +175,4 @@ class WallabagV1Import implements ImportInterface $this->em->flush(); } - - private function assignTagsToEntry(Entry $entry, $tags) - { - foreach ($tags as $tag) { - $label = trim($tag); - $tagEntity = $this->em - ->getRepository('WallabagCoreBundle:Tag') - ->findOneByLabel($label); - if (is_object($tagEntity)) { - $entry->addTag($tagEntity); - } else { - $newTag = new Tag(); - $newTag->setLabel($label); - $entry->addTag($newTag); - } - $this->em->flush(); - } - } } -- cgit v1.2.3