1. 01 Oct, 2025 22 commits
    • Stefy Lanza (nextime / spora )'s avatar
      Add comprehensive game flow documentation with ASCII diagrams · 6b64015f
      Stefy Lanza (nextime / spora ) authored
      - Create GAME_FLOW_DIAGRAM.md with detailed visual representations of:
        * Complete match lifecycle state machine (scheduled → bet → ingame → completed)
        * Component interaction diagrams showing system architecture
        * Betting system flow from customer request to receipt generation
        * Timer and automation sequences with priority logic
        * Extraction process flow with redistribution cap logic
        * Error handling and recovery scenarios
        * Performance and scalability visualizations
      - Include timing sequences, global betting mode comparisons, and bottleneck analysis
      6b64015f
    • Stefy Lanza (nextime / spora )'s avatar
      Add comprehensive user workflow documentation and statistics page · 3fb2bbb1
      Stefy Lanza (nextime / spora ) authored
      - Create USER_WORKFLOW_DOCUMENTATION.md with extensive coverage of:
        * Complete cashier workflow from login to end-of-day procedures
        * Game flow and match progression with state machine details
        * Extraction algorithm and redistribution cap system
        * Major functionality and configuration options
      - Add statistics.html template for admin statistics dashboard
      - Update core components for improved functionality
      3fb2bbb1
    • Stefy Lanza (nextime / spora )'s avatar
      Fix duplicate Flask route and add Statistics link to admin navbar · 71d9820e
      Stefy Lanza (nextime / spora ) authored
      - Remove duplicate start_games function in routes.py that was causing Flask route conflict
      - Add Statistics page link to admin submenu in navbar with chart-bar icon
      71d9820e
    • Stefy Lanza (nextime / spora )'s avatar
      Add missing /api/cashier/start-games endpoint and complete betting system enhancements · ac7e676c
      Stefy Lanza (nextime / spora ) authored
      - Add /api/cashier/start-games endpoint to routes.py that sends START_GAME message to message bus
      - Complete betting system with win_amount calculation and paid_out tracking
      - Update bet resolution logic for UNDER/OVER outcomes
      - Add comprehensive result extraction with CAP logic
      - Enhance match timer and games thread coordination
      - Update verification pages to show proper win amounts and payout status
      ac7e676c
    • Stefy Lanza (nextime / spora )'s avatar
      Implement new match video flow with betting calculation · 5ed9a200
      Stefy Lanza (nextime / spora ) authored
      - Remove automatic PLAY_VIDEO_MATCH sending from MatchTimerComponent
      - Add MATCH_START handler to GamesThread with betting calculation logic
      - Update Message Builder to include result parameter in PLAY_VIDEO_MATCH messages
      - Update Qt Player to use match_video.html template for match videos
      - Add new match_video.html overlay template for displaying match results
      
      The new flow: Start Games -> MATCH_START -> betting calculation -> PLAY_VIDEO_MATCH with result -> display match video with result overlay
      5ed9a200
    • Stefy Lanza (nextime / spora )'s avatar
      Enhance keyboard navigation and help panel · 01b4e509
      Stefy Lanza (nextime / spora ) authored
      - Extend help panel visibility from 5 to 10 seconds
      - Add 'h' key toggle to reopen minimized help panel on all pages
      - Fix 'h' key functionality on bet list pages (bets.html, admin_bets.html)
      - Add keyboard help panel to bet verification pages
      - Improve user experience with consistent keyboard shortcuts across all pages
      01b4e509
    • Stefy Lanza (nextime / spora )'s avatar
      Add 'v' key navigation to bet verification and ESC back navigation · 5da1fa32
      Stefy Lanza (nextime / spora ) authored
      - Press 'v' or 'V' from bets list pages to go to verification
      - ESC key from verification pages goes back to bets list
      - Ensure barcode input focus on verification pages
      - Applied to both admin and cashier interfaces
      5da1fa32
    • Stefy Lanza (nextime / spora )'s avatar
      Add keyboard navigation to bet details pages · 09343719
      Stefy Lanza (nextime / spora ) authored
      - Enter key prints the ticket directly
      - Esc key goes back to bet list
      - Applied to both cashier and admin bet details pages
      - Simplified bet submission to just Enter (no Ctrl+Enter required)
      09343719
    • Stefy Lanza (nextime / spora )'s avatar
      Enhance ESC key behavior in keyboard navigation · 5fb52f41
      Stefy Lanza (nextime / spora ) authored
      - ESC key now clears all input amounts in the closed match panel
      - TAB navigation maintains input values for continued betting
      - ESC acts as proper 'cancel' operation while TAB is navigation-only
      - Applied to both cashier and admin new bet pages
      5fb52f41
    • Stefy Lanza (nextime / spora )'s avatar
      Enhance keyboard navigation in /bets/new pages · c5edf8d0
      Stefy Lanza (nextime / spora ) authored
      - After digits+Enter to select match, scroll to the match panel
      - When TAB navigates to outcomes, focus goes directly to input field
      - ESC key closes match panel without requiring Enter, allowing selection of another match
      - Applied changes to both cashier and admin new bet pages
      c5edf8d0
    • Stefy Lanza (nextime / spora )'s avatar
      Implement keyboard navigation and improve receipt printing · 9636b502
      Stefy Lanza (nextime / spora ) authored
      - Add keyboard navigation to /bets and /bets/new pages (admin and cashier)
      - Add keyboard navigation to /cashier/verify-bet page with auto-focus
      - Implement conditional QR code and barcode printing based on settings
      - Remove fist icon and MBETTER title from printed receipts
      - Remove FIXTURE, ITEMS, and STATUS lines from receipts
      - Add python-barcode dependency for barcode generation
      - Update PyInstaller build script with barcode imports
      - Apply receipt changes to all bet list and detail pages
      9636b502
    • Stefy Lanza (nextime / spora )'s avatar
      Add new intro · 35f6eccf
      Stefy Lanza (nextime / spora ) authored
      35f6eccf
    • Stefy Lanza (nextime / spora )'s avatar
      Fix extraction association parameter order and add comprehensive logging · 5033cd7c
      Stefy Lanza (nextime / spora ) authored
      - Correct parameter order in frontend JavaScript API calls
      - Add detailed logging for all association operations (create, remove, bulk save)
      - Log user context, operation details, and validation errors
      - Fix parameter mapping: outcome_name (source) -> extraction_result (target)
      - Update logging to correctly show association mappings
      - Add logging for association validation and duplicate detection
      5033cd7c
    • Stefy Lanza (nextime / spora )'s avatar
      Fix extraction associations display in web interface · 179aabf4
      Stefy Lanza (nextime / spora ) authored
      - Fixed displayAssociations() and createOutcomeColumns() functions to properly group associations by extraction_result instead of outcome_name
      - This ensures all extraction associations are correctly displayed in their respective columns in the extraction management interface
      179aabf4
    • Stefy Lanza (nextime / spora )'s avatar
      feat: remove Current Associations Summary area from extraction page · bbd677ff
      Stefy Lanza (nextime / spora ) authored
      - Remove the entire 'Current Associations Summary' card section
      - Remove updateAssociationsSummary() JavaScript function
      - Update error handling to remove references to associations-summary element
      - Clean up the page layout for better focus on the main functionality
      bbd677ff
    • Stefy Lanza (nextime / spora )'s avatar
      fix: correct drag and drop target detection for result association columns · eecc37f0
      Stefy Lanza (nextime / spora ) authored
      - Fix getDropTarget function to properly detect drops on column bodies
      - Allow dropping on any element within the column body area
      - Ensure drag and drop associations work correctly
      eecc37f0
    • Stefy Lanza (nextime / spora )'s avatar
      fix: update extraction page text for clarity · a1dda541
      Stefy Lanza (nextime / spora ) authored
      - Remove 'Drop outcomes here to create association columns' from Results area
      - Change 'Drag bets to UNDER/OVER or Results areas' to 'Drag bets to UNDER/OVER or Results associations area'
      a1dda541
    • Stefy Lanza (nextime / spora )'s avatar
      feat: enhance extraction page with available bets and result associations · 6939ce9e
      Stefy Lanza (nextime / spora ) authored
      - Rename 'Available Outcomes' to 'Available Bets' in admin interface
      - Add database tables for available_bets and result_options
      - Implement CRUD operations for managing bets and result options
      - Update extraction page UI with add/delete functionality
      - Implement drag-and-drop associations between bets and results
      - Add database persistence for all associations
      - Remove X buttons from result association columns for cleaner UI
      - Update terminology throughout for clarity
      6939ce9e
    • Stefy Lanza (nextime / spora )'s avatar
      Rename 'Available Outcomes' to 'Available Bets' in extraction page · 9fd38518
      Stefy Lanza (nextime / spora ) authored
      - Add AvailableBetModel with is_active and sort_order fields
      - Create Migration_023_AddAvailableBetsTable with default betting options
      - Add API endpoints for CRUD operations on available bets
      - Update extraction page UI with add/delete functionality
      - Update JavaScript to load from available_bets table instead of hardcoded outcomes
      - Add modal dialog for adding new bet options
      - Add delete buttons to each bet item in the UI
      9fd38518
    • Stefy Lanza (nextime / spora )'s avatar
      Fix database locking during ZIP file downloads · 7f1c1602
      Stefy Lanza (nextime / spora ) authored
      - Release database session before ZIP downloads to prevent locking
      - Process all match data first, then download ZIP files separately
      - This prevents database locks during potentially slow ZIP downloads
      - Allows other database operations to proceed between different ZIP downloads
      - Maintains proper error handling and heartbeat updates during downloads
      7f1c1602
    • Stefy Lanza (nextime / spora )'s avatar
      Update default API settings · 0a16e903
      Stefy Lanza (nextime / spora ) authored
      - Set default API access token to gtW82Ejr8LySk2PFVRefn-HEWG5NrowsHaDCht2yPGo
      - Change default FastAPI server URL to https://mbetter.nexlab.net/
      - Update default request interval to 600 seconds (10 minutes)
      - Update settings across config template, routes, and settings.py
      0a16e903
    • Stefy Lanza (nextime / spora )'s avatar
      Add QR code configuration section to admin dashboard · d7f28dfb
      Stefy Lanza (nextime / spora ) authored
      - Add new QR code settings section in admin/configurations page
      - QR codes disabled by default in database on creation
      - Include size, error correction level, and display options
      - Add API endpoints for QR code configuration management
      - Update barcode settings to be enabled by default
      - Add JavaScript handlers for QR code settings with validation
      - Create database migration for QR code configuration settings
      d7f28dfb
  2. 27 Sep, 2025 1 commit
  3. 26 Sep, 2025 2 commits
  4. 08 Sep, 2025 5 commits
  5. 05 Sep, 2025 10 commits
    • Stefy Lanza (nextime / spora )'s avatar
      Fix QtWebEngine overlay transparency with Mesa software rendering · 658468a3
      Stefy Lanza (nextime / spora ) authored
      - Detect Mesa software rendering in OverlayWebView.setup_web_view()
      - Apply Mesa-specific transparency settings using CSS rgba() instead of Qt alpha
      - Update overlay window transparency for Mesa compatibility
      - Add Mesa transparency environment variables to wrapper script
      - Use composition-based transparency for Mesa instead of native transparency
      - Maintain hardware transparency for non-Mesa environments
      658468a3
    • Stefy Lanza (nextime / spora )'s avatar
      Add ffmpeg-python support and virtualization compatibility fixes · 6053bd99
      Stefy Lanza (nextime / spora ) authored
      - Add comprehensive ffmpeg-python hidden imports to build.py and PyInstaller specs
      - Include ffmpeg._run, ffmpeg._utils, ffmpeg.nodes, ffmpeg.streams, ffmpeg.filter modules
      - Create MbetterClient_wrapper.sh for automatic virtualization detection
      - Apply Mesa software rendering with transparency optimizations for VMs
      - Fix VMware vmwgfx_dri.so crashes and Chromium shared memory permission errors
      - Disable Vulkan extensions that cause VK_KHR_video_decode_queue errors
      - Enable hardware acceleration detection for optimal performance on physical hardware
      6053bd99
    • Stefy Lanza (nextime / spora )'s avatar
      Fix Qt WebEngine sandbox error when running as root · 54bbadd4
      Stefy Lanza (nextime / spora ) authored
      - Add QTWEBENGINE_DISABLE_SANDBOX=1 environment variable to all Qt WebEngine files
      - Suppress Chromium sandbox warnings when running as root user
      - Applied to: qt6_player.py, player.py, overlay_url_handler.py
      - Environment variable set before any Qt imports to ensure effectiveness
      54bbadd4
    • Stefy Lanza (nextime / spora )'s avatar
      Add UDP broadcast and Qt6 discovery functionality · 8b9d138d
      Stefy Lanza (nextime / spora ) authored
      - Add UDP broadcast component that sends server info every 30 seconds
      - Create Qt6 discovery application for LAN server detection
      - Fix Migration 012 column count mismatch by adding missing status column
      - Suppress Chromium sandbox warnings when running as root
      - Add PyInstaller specs for Linux and Windows executables
      - Update requirements.txt with netifaces dependency
      - Create comprehensive documentation and setup scripts
      
      Features:
      - Automatic server discovery on local network
      - Cross-platform support (Linux/Windows)
      - System tray integration
      - Auto-open browser functionality
      - SSL detection and support
      - Standalone executable builds
      8b9d138d
    • Stefy Lanza (nextime / spora )'s avatar
      Re-added client · 52f1a5b6
      Stefy Lanza (nextime / spora ) authored
      52f1a5b6
    • Stefy Lanza (nextime / spora )'s avatar
      Added broadcast discovery · 4498e6b1
      Stefy Lanza (nextime / spora ) authored
      4498e6b1
    • Stefy Lanza (nextime / spora )'s avatar
      Remove wrong files · 7ccb993b
      Stefy Lanza (nextime / spora ) authored
      7ccb993b
    • Stefy Lanza (nextime / spora )'s avatar
      Add Windows icon for PyInstaller executable · fe0fde9f
      Stefy Lanza (nextime / spora ) authored
      - Created create_icon.py script to generate network/discovery-themed icon
      - Generated mbetter_discovery_icon.ico with multiple sizes (16x16 to 256x256)
      - Updated Windows PyInstaller spec to use the icon
      - Enhanced setup_discovery.py to automatically create icon during build
      - Added icon preview PNG file for development reference
      
      The icon features:
      - Blue circular background with network theme
      - Concentric radar circles representing discovery
      - Signal waves for larger icon sizes
      - Professional Windows executable appearance
      fe0fde9f
    • Stefy Lanza (nextime / spora )'s avatar
      26dd76e0
    • Stefy Lanza (nextime / spora )'s avatar
      f35155a7