Admin Dashboard

Manage shows, events, history, team, and community content

@if (activeTab() === 'shows') { @if (shows$ | async; as shows) {

Shows ({{ shows.length }})

@for (show of shows; track show.id) { } @empty { }
Order Title Host Genre Slots Actions
{{ show.display_order }} {{ show.title }} {{ show.host }} {{ show.genre }} @for (slot of show.schedules; track slot.id) { {{ slot.day_label.charAt(0) }} {{ slot.time }} }
No shows yet. Click "Add Show" to create one.
} } @if (activeTab() === 'events') { @if (events$ | async; as events) {

Events ({{ events.length }})

@for (event of events; track event.id) { } @empty { }
Date Title Location Active Actions
{{ event.date }} {{ event.title }} {{ event.location }} {{ event.active ? 'Yes' : 'No' }}
No events yet. Click "Add Event" to create one.
} } @if (activeTab() === 'history') { @if (historyEntries$ | async; as entries) {

History Timeline ({{ entries.length }})

@for (entry of entries; track entry.id) { } @empty { }
Year Title Order Active Actions
{{ entry.year }} {{ entry.title }} {{ entry.display_order }} {{ entry.active ? 'Yes' : 'No' }}
No history entries yet. Click "Add Entry" to create one.
} } @if (activeTab() === 'team') { @if (teamMembers$ | async; as members) {

Team Members ({{ members.length }})

@for (member of members; track member.id) { } @empty { }
Name Title Order Active Actions
{{ member.name }} {{ member.title }} {{ member.display_order }} {{ member.active ? 'Yes' : 'No' }}
No team members yet. Click "Add Member" to create one.
} } @if (activeTab() === 'community') { @if (communityHighlights$ | async; as highlights) {

Community Highlights ({{ highlights.length }})

@for (highlight of highlights; track highlight.id) { } @empty { }
Icon Title Order Active Actions
{{ highlight.icon }} {{ highlight.title }} {{ highlight.display_order }} {{ highlight.active ? 'Yes' : 'No' }}
No highlights yet. Click "Add Highlight" to create one.
} } @if (activeTab() === 'station') { @if (stationConfig$ | async; as config) {

Station Configuration

Callsign {{ config.callsign }}
Name {{ config.name_primary }} {{ config.name_secondary }}
Tagline {{ config.tagline }}
Frequency {{ config.frequency }}
Founded {{ config.founded_year }}
Nonprofit {{ config.nonprofit_type }} — EIN {{ config.ein }}
Email {{ config.email }}
Phone {{ config.phone }}
Website {{ config.website }}
Donation URL {{ config.donation_url || '(not set)' }}
Play Store URL {{ config.play_store_url || '(not set)' }}
App Store Embed {{ config.app_store_embed_html ? 'Configured' : '(not set)' }}
} } @if (activeTab() === 'underwriters') { @if (underwriters$ | async; as underwriters) {

Underwriters ({{ underwriters.length }})

@for (uw of underwriters; track uw.id) { } @empty { }
Name Description Website Order Active Actions
{{ uw.name }} {{ uw.description }} @if (uw.website_url) { {{ uw.website_url }} } @else { — } {{ uw.display_order }} {{ uw.active ? 'Yes' : 'No' }}
No underwriters yet. Click "Add Underwriter" to create one.
} } @if (activeTab() === 'stats') {
}
@if (showShowForm) { } @if (showEventForm) { } @if (showStationForm) { } @if (showHistoryForm) { } @if (showTeamForm) { } @if (showCommunityForm) { } @if (showUnderwriterForm) { }