- 21 Feb, 2026 10 commits
-
-
Stefy Lanza (nextime / spora ) authored
- Added _cached_today_fixture_id and _today_fixture_cache_time to cache today's fixture - Cache is valid for 60 seconds to prevent race conditions - This prevents multiple fixtures being created when _get_or_create_today_fixture is called multiple times in quick succession - Also provides MySQL queries for user to clean up duplicate fixtures
-
Stefy Lanza (nextime / spora ) authored
- Add _process_today_pending_matches() to process pending matches in today's fixture - Add _resolve_match_bets() to resolve bets for matches being finalized - Add _get_outcome_coefficient_for_bet() to get coefficients for bet resolution - For pending matches with no results: change status to 'bet' to play first - For pending matches with results: finalize as 'done' and resolve associated bets - Add Step 5 in initialize() to process today's pending matches
-
Stefy Lanza (nextime / spora ) authored
- Add _get_outcome_template() method to fetch template assignments from database - Update _handle_play_video_match() to use configured template for UNDER/OVER videos - Update _play_result_video() to use configured template for result videos - Update _switch_to_result_overlay() to use new template lookup method - Templates are now correctly loaded based on dashboard configuration - Falls back to match_video.html for UNDER/OVER and results.html for other outcomes
-
Stefy Lanza (nextime / spora ) authored
- Fix _get_or_create_today_fixture() to use created_at as fallback when start_time is NULL - Replace _initialize_new_fixture() calls with _get_or_create_today_fixture() in _handle_start_game() - Fix reset_fixtures() to use raw SQL DELETE statements for proper MySQL foreign key handling - Delete tables in correct order: extraction_stats, bets_details, bets, match_outcomes, matches, match_outcomes_templates, matches_templates
-
Stefy Lanza (nextime / spora ) authored
- Updated _cleanup_old_incomplete_matches() to also check matches with NULL start_time using created_at as fallback - Updated _get_yesterday_incomplete_matches() to also check matches with NULL start_time using created_at as fallback - Added detailed debug logging to help diagnose date/time issues - This fixes the issue where matches from old fixtures were not being detected because their start_time was NULL or recently synced
-
Stefy Lanza (nextime / spora ) authored
- Add _cleanup_old_incomplete_matches() to mark 2+ day old matches as failed - Add _get_yesterday_incomplete_matches() to detect yesterday's incomplete matches - Add _get_or_create_today_fixture() to ensure new matches go to today's fixture - Modify initialize() to process past incomplete matches before starting - Modify _handle_start_game() to use pre-computed yesterday_fixture_id - Add yesterday_fixture_id attribute to track yesterday's fixture for completion This ensures: - Matches from 2+ days ago are marked as failed with bet cancellation - Yesterday's incomplete matches are played to completion first - New matches are created in today's fixture, not yesterday's
-
Stefy Lanza (nextime / spora ) authored
- Add _cleanup_old_incomplete_matches() to close matches 2+ days old as 'failed' - Add _get_yesterday_incomplete_matches() to find yesterday's incomplete matches - Add _get_or_create_today_fixture() to ensure new matches go to today's fixture - Add yesterday_fixture_id attribute to track yesterday's fixture for completion - Modify initialize() to process past incomplete matches before starting - Pre-create today's fixture when yesterday's incomplete matches are found - Ensure new matches are created in today's fixture, not yesterday's
-
Stefy Lanza (nextime / spora ) authored
- Add video phase tracking in RTSPStreamer (idle, intro, match, result) - Implement HLS delay compensation for overlay template synchronization - Fix results template not showing after match video ends - Add phase transition handling with configurable delay compensation - Update overlay API endpoint to include video phase state - Add phaseTransitionTimer for delayed template changes This ensures overlay templates are synchronized with HLS video playback by compensating for FFmpeg encoding and web player buffering delays.
-
Stefy Lanza (nextime / spora ) authored
Fix match result display: use display_result field to show actual fight winner instead of UNDER/OVER
-
Stefy Lanza (nextime / spora ) authored
-
- 20 Feb, 2026 27 commits
-
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
- Add await to initializeOverlayController() in player.js to ensure proper initialization order - Add better logging to overlay-controller.js for debugging postMessage communication - Add sessionStorage check to getAuthToken() for more robust token retrieval - Add error handling and logging to fetchFixtureData() and apiRequest() methods This fixes the issue where the overlay iframe was requesting fixture data but not receiving it from the parent window.
-
Stefy Lanza (nextime / spora ) authored
- Added isStandaloneMode detection (window.parent === window) - getFixtureData() now fetches directly from /api/overlay/fixtures in standalone mode - getCompletedMatches() now fetches directly from /api/overlay/completed-matches in standalone mode - getWinningOutcomes() now fetches directly from /api/overlay/winning-outcomes in standalone mode - Prevents timeout waiting for parent window response when no parent exists
-
Stefy Lanza (nextime / spora ) authored
- Added isStandaloneWebMode() function to detect when running without Qt or parent iframe - Added fetchFixturesFromAPI() function to fetch data directly from /api/overlay/fixtures - Modified fetchFixturesData() to use direct API call in standalone mode - Falls back to API when WebChannel is unavailable or times out - Fixes issue where fixtures overlay showed 'null' data when loaded directly in browser
-
Stefy Lanza (nextime / spora ) authored
- Use timezone-aware date filtering (get_today_venue_date, venue_to_utc_datetime) - Query today's matches and yesterday's incomplete matches - Exclude terminal states (done, end, cancelled, failed, paused) - Limit to 5 matches total, same as Qt player - Add debug logging for match counts
-
Stefy Lanza (nextime / spora ) authored
- Add detailed logging to getFixtureData and getCompletedMatches - Log fixture data sample when received - Remove origin check in onIframeMessage for debugging - Add logging to sendMessageToOverlay
-
Stefy Lanza (nextime / spora ) authored
- Add inline environment detection to all overlay templates - Qt environment: Load Qt scripts (qwebchannel.js, overlay.js) synchronously - Web environment: Load web adapter for postMessage bridge - Update overlay-web-adapter.js to exit early in Qt environment - Fixes issue where overlay templates didn't show data in web player
-
Stefy Lanza (nextime / spora ) authored
- In Qt environment, use document.write to load Qt scripts synchronously - This ensures QWebChannel and overlay.js are available before template's inline scripts run - Async loading was causing templates to fail because overlay object wasn't ready
-
Stefy Lanza (nextime / spora ) authored
- In Qt environment, provide temporary window.overlay with log function - This prevents errors from template's console.log override that runs immediately - Qt's overlay.js will later replace this with the full overlay object
-
Stefy Lanza (nextime / spora ) authored
- Store original console.log before templates override it - Use originalConsoleLog throughout the adapter to prevent recursion - Templates override console.log to call window.overlay.log, which was calling console.log again
-
Stefy Lanza (nextime / spora ) authored
- Removed copied overlay-web-adapter.js from web/ - Created web/js symlink pointing to mbetterclient/web_dashboard/static/js - Ensures templates reference the same file at /js/overlay-web-adapter.js
-
Stefy Lanza (nextime / spora ) authored
- Created overlay-web-adapter.js to bridge postMessage to WebChannel interface - Updated all web templates to use conditional Qt script loading - Updated all Qt player templates with same pattern for consistency - Prevents browser console errors from Qt URL schemes (qrc:///, overlay://) - Templates now work in both Qt player and web player environments
-
Stefy Lanza (nextime / spora ) authored
-
- 19 Feb, 2026 1 commit
-
-
Stefy Lanza (nextime / spora ) authored
-