Example #1
0
 public static function findByNameOrCreate(string $name, TagType $type) : Tag
 {
     $existing = Tag::whereTranslation('name', $name, content_locale())->first();
     if ($existing) {
         return $existing;
     }
     $tag = new static(['type' => $type, 'draft' => false, 'online' => true]);
     foreach (config('app.locales') as $locale) {
         $tag->translateOrNew($locale)->name = $name;
     }
     $tag->save();
     return $tag;
 }