Remove Programs tab and all supporting code
The Programs feature is superseded by Shows, which provides a more flexible model with schedule slots. This commit removes all Programs code across frontend and backend: Frontend: - Delete admin-program-form component (ts/html/scss) - Delete program.service.ts and program.ts interface - Remove Programs tab, form modal, and all CRUD logic from admin component (ts + html) Backend: - Delete programs API router - Remove Program ORM model and ProgramCreate/Update/Response schemas - Remove programs router registration from main.py - Remove Program from seed data, seed helpers, and truncate/reset
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
<div class="container">
|
||||
<div class="admin-header">
|
||||
<h1>Admin Dashboard</h1>
|
||||
<p>Manage shows, programs, events, tiers, history, team, and community content</p>
|
||||
<p>Manage shows, events, tiers, history, team, and community content</p>
|
||||
</div>
|
||||
|
||||
<!-- Tabs -->
|
||||
@@ -12,11 +12,6 @@
|
||||
[class.active]="activeTab() === 'shows'"
|
||||
(click)="activeTab.set('shows')"
|
||||
>Shows</button>
|
||||
<button
|
||||
class="tab-btn"
|
||||
[class.active]="activeTab() === 'programs'"
|
||||
(click)="activeTab.set('programs')"
|
||||
>Programs</button>
|
||||
<button
|
||||
class="tab-btn"
|
||||
[class.active]="activeTab() === 'events'"
|
||||
@@ -95,48 +90,6 @@
|
||||
}
|
||||
}
|
||||
|
||||
<!-- Programs Tab -->
|
||||
@if (activeTab() === 'programs') {
|
||||
@if (programs$ | async; as programs) {
|
||||
<div class="tab-content">
|
||||
<div class="tab-toolbar">
|
||||
<h2>Programs ({{ programs.length }})</h2>
|
||||
<button class="btn btn-add" (click)="openProgramForm()">+ Add Program</button>
|
||||
</div>
|
||||
|
||||
<table class="admin-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Day</th>
|
||||
<th>Time</th>
|
||||
<th>Title</th>
|
||||
<th>Host</th>
|
||||
<th>Genre</th>
|
||||
<th>Actions</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@for (program of programs; track program.id) {
|
||||
<tr>
|
||||
<td>{{ program.day_label }}</td>
|
||||
<td>{{ program.time }}</td>
|
||||
<td>{{ program.title }}</td>
|
||||
<td>{{ program.host }}</td>
|
||||
<td>{{ program.genre }}</td>
|
||||
<td class="actions">
|
||||
<button class="btn-icon btn-edit" (click)="editProgram(program)">Edit</button>
|
||||
<button class="btn-icon btn-delete" (click)="deleteProgram(program.id)">Delete</button>
|
||||
</td>
|
||||
</tr>
|
||||
} @empty {
|
||||
<tr><td colspan="6" class="empty-row">No programs yet. Click "Add Program" to create one.</td></tr>
|
||||
}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
}
|
||||
}
|
||||
|
||||
<!-- Events Tab -->
|
||||
@if (activeTab() === 'events') {
|
||||
@if (events$ | async; as events) {
|
||||
@@ -393,9 +346,6 @@
|
||||
@if (showShowForm) {
|
||||
<app-admin-show-form [editItem]="editingShow" (saved)="onShowSaved()" (closed)="onShowClosed()" />
|
||||
}
|
||||
@if (showProgramForm) {
|
||||
<app-admin-program-form [editItem]="editingProgram" (saved)="onProgramSaved()" (closed)="onProgramClosed()" />
|
||||
}
|
||||
@if (showEventForm) {
|
||||
<app-admin-event-form [editItem]="editingEvent" (saved)="onEventSaved()" (closed)="onEventClosed()" />
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user