/** * Adds a single tag * * @param $tagName string */ private function addTag($tagName) { $tagName = trim($tagName); $normalizer = config('tagging.normalizer'); $normalizer = empty($normalizer) ? '\\Conner\\Tagging\\TaggingUtil::slug' : $normalizer; $tagSlug = call_user_func($normalizer, $tagName); $previousCount = $this->tagged()->where('tag_slug', '=', $tagSlug)->take(1)->count(); if ($previousCount >= 1) { return; } $displayer = config('tagging.displayer'); $displayer = empty($displayer) ? '\\Illuminate\\Support\\Str::title' : $displayer; $tagged = new Tagged(array('tag_name' => call_user_func($displayer, $tagName), 'tag_slug' => $tagSlug)); $this->tagged()->save($tagged); TaggingUtil::incrementCount($tagName, $tagSlug, 1); }
/** * Adds a single tag * * @param $tagName string */ private function addTag($tagName) { $tagName = trim($tagName); $tagSlug = TaggingUtil::slug($tagName); $previousCount = $this->tagged()->where('tag_slug', '=', $tagSlug)->take(1)->count(); if ($previousCount >= 1) { return; } $tagged = new Tagged(array('tag_name' => Str::title($tagName), 'tag_slug' => $tagSlug)); $this->tagged()->save($tagged); TaggingUtil::incrementCount($tagName, $tagSlug, 1); }