Fixed a bug in tag creation.

This commit is contained in:
James Cole
2016-08-11 19:01:23 +02:00
parent 0aaf9a6fda
commit 2111873bcf
3 changed files with 37 additions and 33 deletions

View File

@@ -35,6 +35,7 @@ class TagsComma extends BasicConverter implements ConverterInterface
if (strlen($value) === 0) { if (strlen($value) === 0) {
$this->setCertainty(0); $this->setCertainty(0);
return new Collection; return new Collection;
} }
$parts = array_unique(explode(',', $value)); $parts = array_unique(explode(',', $value));
@@ -63,8 +64,8 @@ class TagsComma extends BasicConverter implements ConverterInterface
Log::debug('Found tag by name ', ['id' => $tag->id]); Log::debug('Found tag by name ', ['id' => $tag->id]);
$set->push($tag); $set->push($tag);
continue;
} }
if (is_null($tag->id)) {
// create new tag // create new tag
$tag = $repository->store( $tag = $repository->store(
[ [
@@ -80,6 +81,7 @@ class TagsComma extends BasicConverter implements ConverterInterface
Log::debug('Created new tag', ['name' => $part, 'id' => $tag->id]); Log::debug('Created new tag', ['name' => $part, 'id' => $tag->id]);
$set->push($tag); $set->push($tag);
} }
}
$this->setCertainty(100); $this->setCertainty(100);
return $set; return $set;

View File

@@ -35,6 +35,7 @@ class TagsSpace extends BasicConverter implements ConverterInterface
if (strlen($value) === 0) { if (strlen($value) === 0) {
$this->setCertainty(0); $this->setCertainty(0);
return new Collection; return new Collection;
} }
$parts = array_unique(explode(' ', $value)); $parts = array_unique(explode(' ', $value));
@@ -63,8 +64,8 @@ class TagsSpace extends BasicConverter implements ConverterInterface
Log::debug('Found tag by name ', ['id' => $tag->id]); Log::debug('Found tag by name ', ['id' => $tag->id]);
$set->push($tag); $set->push($tag);
continue;
} }
if (is_null($tag->id)) {
// create new tag // create new tag
$tag = $repository->store( $tag = $repository->store(
[ [
@@ -80,6 +81,7 @@ class TagsSpace extends BasicConverter implements ConverterInterface
Log::debug('Created new tag', ['name' => $part, 'id' => $tag->id]); Log::debug('Created new tag', ['name' => $part, 'id' => $tag->id]);
$set->push($tag); $set->push($tag);
} }
}
$this->setCertainty(100); $this->setCertainty(100);
return $set; return $set;

View File

@@ -106,9 +106,9 @@ class TagRepository implements TagRepositoryInterface
{ {
$tags = $this->user->tags()->get(); $tags = $this->user->tags()->get();
/** @var Tag $tag */ /** @var Tag $tag */
foreach ($tags as $tag) { foreach ($tags as $databaseTag) {
if ($tag->tag === $tag) { if ($databaseTag->tag === $tag) {
return $tag; return $databaseTag;
} }
} }