github sassanix/Warracker 0.9.9.4
0.9.9.4-beta

latest releases: 0.10.1.10, 0.10.1.9, 0.10.1.8...
4 months ago

✨ Added

  • Admin/User Tag Separation

    • Admin-only and User-only tags with backend enforcement (is_admin_tag).
    • Role-based filtering across all tag-related endpoints.
    • DB migration: 009_add_admin_flag_to_tags.sql.
  • Version Checker

    • About page now checks for the latest GitHub release and indicates update status.
  • Mobile Home Screen Icon Support

    • Added Apple touch icon and web app manifest for Android/iOS home screen support.
  • Optional Vendor Field for Warranties

    • Vendor info can be added/edited, shown in UI, and included in search.
    • DB migration: 017_add_vendor_to_warranties.sql.
  • Serial Number Search

    • Search now matches serial numbers in addition to names, notes, and tags.
  • CSV Import: Vendor Field

    • Support for importing vendor via CSV with header Vendor.
  • Date Format Customization

    • Users can choose from 6 display formats for warranty dates. Persisted across sessions and tabs.
  • IPv6 Support

    • Nginx now listens on both IPv4 and IPv6 (listen [::]:80;).
  • Cloudflare Compatibility

    • Added data-cfasync="false" to ensure script loading behind Cloudflare.
  • New API Endpoint: /api/timezones

    • Structured list of timezones grouped by region.

🛠️ Changed

  • Theme Persistence Overhaul

    • Unified theme preference using a single localStorage key: darkMode.
    • Removed all prefixed or redundant keys and logic.
    • Ensured early loading of theme-loader.js across all HTML files.
    • Reliable persistence across sessions and pages.
  • Migration System Refactor

    • Improved reliability and removed obsolete files.
  • Warranty Visibility Logic

    • Admins now only see their own warranties.
    • Fixed leakage of user warranties across roles.

🐛 Fixed

  • Tag Visibility

    • Corrected reversed visibility logic between Admins and Users.
  • Date Handling (Off-by-One Errors)

    • Used relativedelta for accurate date math including fractional years.
    • Applied consistent UTC-based formatting and parsing on frontend.
    • Eliminated timezone-related discrepancies in summary tab and warranty display.
  • Currency Persistence

    • Fixed inconsistent behavior after login and across sessions.
    • Unified prefix usage and ensured preferences are loaded before rendering.
  • Settings Sync Issue

    • Prevented auto-refreshes and logout when settings are open in multiple tabs.
    • Refined inter-tab communication and storage event handling.
  • UI Toast Overlap

    • Fixed header z-index conflict in style.css.
  • User Preferences API Bug

    • Resolved failure to update preferences when only timezone was changed.

📁 Files Touched (Highlights)

  • Frontend: script.js, settings-new.js, index.html, about.html, theme-loader.js, and others.
  • Backend: app.py, migrations 009, 017
  • Config: nginx.conf, manifest.json
  • New: version-checker.js, requirements.txt updated with python-dateutil.

Screenshots

image

image

image

image

Don't miss a new Warracker release

NewReleases is sending notifications on new releases.