/** * Delete a tag * * @param int|array|\Tag\Model\Tag\Structure $tagOrId * @return int */ public function delete($tagOrId) { if (is_numeric($tagOrId)) { $tag = $this->find((int) $tagOrId); } else { if (is_scalar($tagOrId)) { $tag = $this->findByName((string) $tagOrId); } else { if (is_array($tagOrId)) { if (!empty($tagOrId['id'])) { $tag = $this->find((int) $tagOrId['id']); } else { if (!empty($tagOrId['name'])) { $tag = $this->findByName((string) $tagOrId['name']); } } } else { if ($tagOrId instanceof Structure) { $tag = $tagOrId; } } } } if (empty($tag)) { return 0; } return parent::delete($tag); }