Fixed siblings occasionally removing wrong tag
This commit is contained in:
parent
8509b5fb00
commit
462708c1d8
2 changed files with 10 additions and 4 deletions
|
@ -60,8 +60,14 @@ class TagDao extends AbstractDao implements ICrudDao
|
|||
->where('pt2.tagId', $tagId)
|
||||
->groupBy('tags.id')
|
||||
->orderBy('postCount DESC, name ASC');
|
||||
$arrayEntities = iterator_to_array($query);
|
||||
array_shift($arrayEntities); //don't show input tag itself
|
||||
|
||||
$arrayEntities = array_filter(
|
||||
iterator_to_array($query),
|
||||
function($arrayEntity) use ($tagName)
|
||||
{
|
||||
return strcasecmp($arrayEntity['name'], $tagName) !== 0;
|
||||
});
|
||||
|
||||
return $this->arrayToEntities($arrayEntities);
|
||||
}
|
||||
|
||||
|
|
|
@ -192,13 +192,13 @@ class TagService
|
|||
|
||||
private function updateImplications(Tag $tag, array $relatedNames)
|
||||
{
|
||||
$relatedNames = array_udiff($relatedNames, [$tag->getName()], 'strnatcasecmp');
|
||||
$relatedNames = array_udiff($relatedNames, [$tag->getName()], 'strcasecmp');
|
||||
$tag->setImpliedTags($this->createTags($relatedNames));
|
||||
}
|
||||
|
||||
private function updateSuggestions(Tag $tag, array $relatedNames)
|
||||
{
|
||||
$relatedNames = array_udiff($relatedNames, [$tag->getName()], 'strnatcasecmp');
|
||||
$relatedNames = array_udiff($relatedNames, [$tag->getName()], 'strcasecmp');
|
||||
$tag->setSuggestedTags($this->createTags($relatedNames));
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue