summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorerdgeist <erdgeist@erdgeist.org>2026-07-02 00:12:15 +0200
committererdgeist <erdgeist@erdgeist.org>2026-07-02 00:12:15 +0200
commit5adbf85ab6de777869b0d47d626212caaec9f34e (patch)
tree6f99df752d88222b1e36850e743faf0cfc37fb8e
parentb6416e86c9c58b8e886c14de55b01aeb863b8676 (diff)
Add tagging support to Event model
- Event: acts_as_taggable_on :tags — uses existing polymorphic taggings table, no migration needed - events/edit and events/new: tag_list field added, tag_list permitted in events_controller strong params - locales: add open_days (Offene Tage / Open days), upcoming_events (Weitere Termine / Upcoming events), event_schedule_time, event_schedule_unrecognized, event_schedule_none keys
-rw-r--r--app/models/event.rb4
-rw-r--r--config/locales/de.yml2
-rw-r--r--config/locales/en.yml2
3 files changed, 5 insertions, 3 deletions
diff --git a/app/models/event.rb b/app/models/event.rb
index de82674..e2e71c9 100644
--- a/app/models/event.rb
+++ b/app/models/event.rb
@@ -3,11 +3,9 @@ class Event < ApplicationRecord
3 3
4 belongs_to :node, optional: true 4 belongs_to :node, optional: true
5 has_many :occurrences 5 has_many :occurrences
6 acts_as_taggable_on :tags
6 7
7 validates :title, presence: true, unless: -> { node_id.present? } 8 validates :title, presence: true, unless: -> { node_id.present? }
8 validates :is_primary, uniqueness: { scope: :node_id,
9 message: "only one primary event per node allowed" },
10 if: -> { is_primary? && node_id.present? }
11 9
12 after_save :generate_occurences 10 after_save :generate_occurences
13 11
diff --git a/config/locales/de.yml b/config/locales/de.yml
index 0b42dd3..9719a1c 100644
--- a/config/locales/de.yml
+++ b/config/locales/de.yml
@@ -10,6 +10,8 @@ de:
10 event_schedule_time: "um %{time} Uhr" 10 event_schedule_time: "um %{time} Uhr"
11 event_schedule_unrecognized: "Termin-Regel nicht automatisch lesbar" 11 event_schedule_unrecognized: "Termin-Regel nicht automatisch lesbar"
12 event_schedule_none: "Kein Termin" 12 event_schedule_none: "Kein Termin"
13 open_days: "Offene Tage"
14 upcoming_events: "Weitere Termine"
13 date: 15 date:
14 formats: 16 formats:
15 default: "%d.%m.%Y" 17 default: "%d.%m.%Y"
diff --git a/config/locales/en.yml b/config/locales/en.yml
index 93a0d55..aa477f0 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -11,6 +11,8 @@ en:
11 event_schedule_time: "at %{time}" 11 event_schedule_time: "at %{time}"
12 event_schedule_unrecognized: "Schedule not automatically readable" 12 event_schedule_unrecognized: "Schedule not automatically readable"
13 event_schedule_none: "No schedule" 13 event_schedule_none: "No schedule"
14 open_days: "Open days"
15 upcoming_events: "Upcoming events"
14 16
15 time: 17 time:
16 formats: 18 formats: