1. 17 Apr, 2026 31 commits
  2. 16 Apr, 2026 9 commits
    • Your Name's avatar
      Update pyproject.toml to version 0.99.28 · ee9c9c2b
      Your Name authored
      ee9c9c2b
    • Your Name's avatar
      Bump version to 0.99.28 · 34a0d4e6
      Your Name authored
      All fixes verified and packaged:
      - Admin settings page os context fix
      - Consolidation settings UPSERT persistence
      - Prominent top-center notification alerts
      - Live crypto prices for BTC, ETH, USDT, USDC
      - ENCRYPTION_KEY management UI
      - All templates and code correctly packaged
      34a0d4e6
    • Your Name's avatar
      Improve notification visibility with prominent top-center alerts · 455e310e
      Your Name authored
      - Changed from small bottom-right toast to large top-center alert
      - Added gradient backgrounds (green for success, red for error, orange for warning)
      - Added large icons (check circle, exclamation circle, warning triangle)
      - Centered at top of page with 400-600px width
      - Smooth slide-down animation on appear, slide-up on dismiss
      - Auto-dismisses after 4 seconds
      - Much more noticeable for important actions like saving settings
      455e310e
    • Your Name's avatar
      Fix template error: add os to settings save response context · 8e689156
      Your Name authored
      - Added 'os': os to dashboard_settings_save template context
      - Fixes jinja2.exceptions.UndefinedError: 'os' is undefined
      - Template needs os.environ to get USER for tor hidden service path
      - GET endpoint already had it, POST endpoint was missing it
      8e689156
    • Your Name's avatar
      Use UPSERT for consolidation settings to handle missing records · e780ad68
      Your Name authored
      - Changed UPDATE to INSERT...ON DUPLICATE KEY UPDATE (MySQL)
      - Changed UPDATE to INSERT...ON CONFLICT DO UPDATE (SQLite)
      - Ensures records are created if they don't exist yet
      - Fixes issue where UPDATE fails silently on missing records
      - Handles both database types correctly
      e780ad68
    • Your Name's avatar
      Add logging and visual feedback for consolidation settings · 29d64814
      Your Name authored
      - Added detailed logging to track consolidation updates
      - Logs received config, rows affected, and commit status
      - Returns success:false on errors for proper frontend handling
      - Frontend now shows toast notifications on save success/failure
      - Added console logging for debugging
      - Checks rowcount to detect if records exist in database
      29d64814
    • Your Name's avatar
      Fix consolidation settings not saving · eb05beac
      Your Name authored
      - Updated API endpoint to handle simple key-value format from frontend
      - Endpoint now accepts both old format (consolidation_settings array) and new format (btc/eth/usdt/usdc keys)
      - Maps lowercase keys to uppercase crypto_type in database (btc -> BTC, etc)
      - Only updates threshold_amount, preserves admin_address and is_enabled
      - Fixes issue where changing page would reset values to defaults
      eb05beac
    • Your Name's avatar
      Expand crypto price display to show BTC, ETH, USDT, USDC · f0f3d96f
      Your Name authored
      - Updated UI to show prices for all 4 supported cryptocurrencies
      - Each crypto has its own section with color-coded borders
      - Shows prices from Coinbase, Binance, and Kraken for each
      - Displays average price (applied) for each cryptocurrency
      - New API endpoint: GET /api/admin/crypto/prices (returns all 4 cryptos)
      - Legacy endpoint /api/admin/crypto/btc-prices still works (redirects)
      - Handles stablecoin pricing correctly (USDT/USDC near 1.00)
      - Auto-refreshes all prices every 60 seconds
      - Single refresh button updates all cryptocurrencies
      f0f3d96f
    • Your Name's avatar
      Add live BTC price display in admin payment settings · 79a2e226
      Your Name authored
      - Added live BTC price section showing prices from Coinbase, Binance, and Kraken
      - Displays average price calculated from enabled sources
      - Shows prices in configured currency (USD by default)
      - Auto-refreshes every 60 seconds
      - Manual refresh button available
      - New API endpoint: GET /api/admin/crypto/btc-prices
      - Fetches real-time prices from exchange APIs
      - Gracefully handles disabled sources and API errors
      - Shows 'Disabled' for unchecked sources, 'Error' for failed fetches
      79a2e226