Conversation
- Add OIDC login/callback/logout flow with DB-backed sessions (BSS-006) - Add viewer policy and admin/leadership route guards (BSS-007) - Add Authentik member cache sync job and mapping (BSS-008) - Add shared slug history, immutable audit log, and optimistic locking (BSS-009) - Add background job runner with locking, health, and sync alerts (BSS-010) - Add media/YouTube URL validators for publish and draft flows (BSS-011) - Add auth_sessions migration and svc-bss-sync OOB config docs
- Add catalog (names/tags/staff-roles), events, and videos domain modules with lifecycle, purge, and highlight-invalidation logic - Add related-videos, view-counter, search, and homepage (live/highlight/about/state) services - Add migrations for nullable event start_date, partial live-overlap exclusion constraint, and pg_trgm/bss_norm search support - Add integration test suites for all new domains - Update docs/implementation-progress.md for phase 2 gate results
- Add public app shell with Hungarian 404/error/loading states, navbar with login/logout and viewer-aware session state - Implement slug-based routing with legacy slug redirects for videos, events, and members - Build video list/detail pages with filters, native player, view counting, and related videos - Build event list/detail pages and public member list/profile/archived/contributors pages - Add homepage with live/highlight sections, global search page and API, and about/courses redirect pages - Cover all new pages and routes with integration tests Cards BSS-019 – BSS-026 done, phase gate green.
- Add admin shell (sidebar, tables, forms, alerts) and routes for events, videos, members, homepage, catalog, audit, and trash - Add admin server domain logic and HTTP API routes with access guards - Add integration tests covering admin access, catalog, event, video, homepage, member, and trash/audit routes - Update implementation progress doc for phase 4 completion
- Add idempotent seed JSON importer and validation schema, plus `pnpm db:seed` CLI - Add sitemap/robots generation and security headers (CSP, X-Frame-Options, etc.) - Add per-page SEO metadata (title/description/canonical/OG) across public routes - Polish admin forms with character-limit hints and noindex on admin pages - Add end-to-end acceptance chain, seed importer, and security header tests - Rewrite README and update docs with install/demo walkthrough and phase status
- Allow overriding Authentik/app base URLs via BSS_AUTHENTIK_BASE_URL and BSS_APP_BASE_URL for LAN dev setups - Add matching OIDC redirect URI when app base URL differs from localhost/127.0.0.1 - Accept RFC1918 private-network http issuer URLs in oob-schema validation, not just localhost/127.0.0.1 - Regenerate routeTree.gen.ts with router Register typing
- Add BSS navbar logo SVGs (desktop + mobile) and swap them in via responsive `<picture>` - Add consistent hover/focus/active styles (ctrl-btn, solid-btn, hover-lift, nav-link) across nav, admin, and content links/buttons - Mark active nav/tab links with aria-current for accessibility - Fix ThemeToggle to read the stored theme after hydration instead of resetting to auto, avoiding an SSR/client mismatch - Work around a router-ssr-query-core bug that logged a spurious "query stream" error on every page load
- Add UserMenu popover (avatar, admin link, logout) replacing the plain logout button - Add Thumbnail component with fixed 16:9 frame and skeleton placeholder, used across home/events/videos/search - Add pending-state skeletons for homepage, event list, and video list routes - Fall back to the latest visible video thumbnail for events without their own cover image - Add card border, skeleton, and popover theme variables; polish dark-mode nav colors
- Fix YouTube oEmbed endpoint URL casing to lowercase `oembed` (config, live schedule, admin homepage routes, tests) - Add shared `parsePaginationNumber`/`parseSearchPage` helpers and use them across admin audit, events, videos, and trash routes to handle string/number page params consistently
- Add AdminSearchSelect combobox for filtering long option lists (events, staff, roles, related videos) - Add client-side media URL validation with save-time confirmation for disallowed hosts - Split "Felhasznált zenék" into a structured artist/title list editor with free-text fallback - Add accent-insensitive text-search helper used by the new select component - Link published videos to their public page from the admin list and editor - Add unit tests for media-url, song-list, and text-search helpers
- Swap native `<select>` filters/pickers for `AdminSearchSelect` across audit, events, videos, homepage, and catalog merge admin pages; add shared status/visibility option constants - Add `src/lib/youtube-url.ts` for client-side YouTube URL parsing and extract `allowedMediaHosts` into `src/server/media/allowed-hosts.ts` - Show live validation warnings for event thumbnail and live-stream URLs while typing, ahead of server-side checks
- Translate the product specification (docs/product-specification.md) from Hungarian to English - Translate inline code comments and JSDoc across components, routes, lib, and server modules to English - No functional or behavioral changes
- Homepage hero now plays the featured video inline via VideoDetailPlayer instead of a static card; title links through to the video page - Highlight state shows six side videos (was five) since the hero no longer needs a separate thumbnail slot - Footer renders real partner logos and social links (Facebook/YouTube/Instagram) with SVG assets instead of empty alt-only placeholders - Move page background (color + dot pattern) from body to root element and add public/background.svg - Update product spec and implementation progress docs, adjust homepage integration tests
- Replace native video controls with a branded player (play/pause, seek, volume, mute, fullscreen, HUD auto-hide) and keyboard shortcuts (space/k, j/l, arrows, m, f, 0-9, home/end) - Support iOS Safari and other WebKit fullscreen APIs - Make the video detail page responsive (title, meta, related videos grid) and widen the player container
- Add a `site-width` utility class for consistent page gutters and use it across public pages instead of ad-hoc `mx-auto w-[90dvw]`/`w-[95dvw]` classes - Switch admin editor pages (events, videos, catalog, homepage, trash, members, audit) from fixed `max-w-*` to full-width layout - Replace native `<select>` filters and the checkbox tag dropdown on `/videos` with `AdminSearchSelect`
- Add visibility icons to admin video views - Track saved editor state after partial saves - Add a search form to the search results page
- Fix the AdminSearchSelect declaration - Preserve trigger scale during active interaction
- Add public-page links from the admin event list and editor - Open published event pages in a new tab
- Save reorder, add, and remove changes immediately - Roll back the local selection when saving fails
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.