Skip to content

Comments

Redesign event show page layout and form with autoshow fields#1138

Merged
maebeale merged 4 commits intomainfrom
maebeale/event-form-layout
Feb 21, 2026
Merged

Redesign event show page layout and form with autoshow fields#1138
maebeale merged 4 commits intomainfrom
maebeale/event-form-layout

Conversation

@maebeale
Copy link
Collaborator

What is the goal of this PR and why is this important?

Restructure event show page with centered header image, title (Lato font, green), date/time (Lato, dark navy, uppercase), and registration section. Add autoshow boolean fields for conditional display of event details. Add timezone-aware datetime display with user timezone support (PST default). Style register/deregister buttons with custom color (rgb(170,46,0)) and Telefon Bold font. Extract videoconference link into turbo-replaceable partial. Support up to 5 registration section instances for embedding in rich text. Add calendar link location/videoconference URL fields.

How did you approach the change?

Anything else to add?

maebeale and others added 2 commits February 21, 2026 12:04
Restructure event show page with centered header image, title (Lato font,
green), date/time (Lato, dark navy, uppercase), and registration section.
Add autoshow boolean fields for conditional display of event details.
Add timezone-aware datetime display with user timezone support (PST default).
Style register/deregister buttons with custom color (rgb(170,46,0)) and
Telefon Bold font. Extract videoconference link into turbo-replaceable partial.
Support up to 5 registration section instances for embedding in rich text.
Add calendar link location/videoconference URL fields.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add pre_title string column to events with its own migration. Update form
with title card, pre-title field, and admin Display settings card. Show
pre_title on event show page in Telefon Bold. Comment out header_image
blob check in display_image pending rhino embed investigation.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

def set_time_zone_from_user
zone = ActiveSupport::TimeZone[current_user&.time_zone || "UTC"]
zone = ActiveSupport::TimeZone[current_user&.time_zone || "Pacific Time (US & Canada)"]
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

changing this so a public user sees events in PST by default.

:autoshow_location,
:autoshow_videoconference_url,
:autoshow_cost,
:autoshow_title,
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

adding a bunch of booleans so admin can control which parts they do/don't want dynamically displaying on event show.

added rhino_header for "top" part of page

end

desc_encoded = ERB::Util.url_encode(description)
location_encoded = ERB::Util.url_encode(cal_location.to_s)
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add more data into the calendar links so they include the videoconf url and/or location


# embeds returns ActiveStorage::Attached::Many; find first image blob
object.rhino_header.embeds.blobs.find { |blob| blob.image? }
end
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this doesn't seem to be working yet.

.rhino-centered table,
.rhino-centered pre {
text-align: left;
}
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not sure where else to put this. rhino_header needs to be centered.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is this trying to do? The user should be able to handle alignment within the editor.

background-color: rgb(170, 46, 0) !important;
color: white !important;
}

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add custom register styling for show page

file
elsif !icon_display && (file.is_a?(ActiveStorage::Blob) || file.is_a?(ActiveStorage::Attachment))
file
end
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

trying to show a blob, which doesn't respond to same checks as AS attachment.

<% (1..5).each do |i| %>
<%= turbo_stream.replace dom_id(@event, "registration_section_#{i}"), partial: "events/registration_section", locals: { event: @event.decorate, instance: i } %>
<% end %>
<%= turbo_stream.replace dom_id(@event, :videoconference_link), partial: "events/videoconference_link", locals: { event: @event.decorate } %>
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

update Join on Zoom to be linked to the videoconf url, if registered.

placeholder: "e.g. Facilitator Training Series"
} %>
</div>
<div>
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

adding pre_title bc they add tagline-esque titles to their event titles

<link rel="shortcut icon" type="image/png" href="<%= asset_path(favicon_file) %>">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Lato:wght@400;700;900&display=swap" rel="stylesheet">
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add lato google font.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@maebeale maebeale marked this pull request as ready for review February 21, 2026 17:39
- Styled times format: full day/month names instead of abbreviated
- "Registration closes" instead of "Registration Close Date"
- "Join on {domain}" instead of "Join online"
- Remove "All times displayed in" assertions (text removed from show)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@maebeale maebeale merged commit dfb1a0f into main Feb 21, 2026
3 checks passed
@maebeale maebeale deleted the maebeale/event-form-layout branch February 21, 2026 17:54
jmilljr24 pushed a commit that referenced this pull request Feb 21, 2026
* Redesign event show page layout and form with autoshow fields

Restructure event show page with centered header image, title (Lato font,
green), date/time (Lato, dark navy, uppercase), and registration section.
Add autoshow boolean fields for conditional display of event details.
Add timezone-aware datetime display with user timezone support (PST default).
Style register/deregister buttons with custom color (rgb(170,46,0)) and
Telefon Bold font. Extract videoconference link into turbo-replaceable partial.
Support up to 5 registration section instances for embedding in rich text.
Add calendar link location/videoconference URL fields.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Add pre_title field and refine event form layout

Add pre_title string column to events with its own migration. Update form
with title card, pre-title field, and admin Display settings card. Show
pre_title on event show page in Telefon Bold. Comment out header_image
blob check in display_image pending rhino embed investigation.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Fix Rubocop Omakase array bracket spacing

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Update tests to match redesigned event show page

- Styled times format: full day/month names instead of abbreviated
- "Registration closes" instead of "Registration Close Date"
- "Join on {domain}" instead of "Join online"
- Remove "All times displayed in" assertions (text removed from show)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants