Rentiva v4.58.2 — Transfer City Filter + UI Polish
· 2 min read
TransferSearchEngine had no location filter — a search for an İstanbul route returned vehicles parked in Ankara and Antalya. This release adds city-based vehicle matching (route origin's city), reusing the rental module's 3-layer hybrid filter (vehicle → vendor inheritance → global default) via a new expand_to_city mode. Plus a batch of UI/content polish: KPI spacing on list-table pages, dashboard card heights, About page hardening, and Vehicles calendar parity with the Bookings page.
What's New
Critical Fix
- Transfer search filters by route origin city. A vehicle parked in Ankara no longer appears for an İstanbul route. Same 3-layer hybrid filter as rental (vehicle direct meta → vendor inheritance → global default), expanded to all locations sharing the origin's city.
Feature
QueryHelper::get_location_subquery()gains an optional$expand_to_cityparameter. Backward-compatible: rental's strict matching is unchanged.
Fixes
- About page developer contact info hardcoded — defensive against a DB option leaking the WordPress
admin_email(e.g.admin@localhost.comon dev/clean installs). - About
Tests & Verificationcard updated to the current baseline (1,237 PHPUnit tests, 3,736 assertions) andTested with: WP 7.0. Plugin header andreadme.txtTested up toaligned to 7.0.
Style
- KPI stats grid top spacing on admin list-table pages (Vehicles, Bookings, Add-ons, Transfer) — cards no longer sit flush against the page edge.
- Dashboard Pending Payments + Revenue cards no longer stretch to a tall empty height.
RevenueChartis bound to a 250px max height; Row 4 cards size to their own content. - Vehicles calendar spacing parity with the Bookings calendar — wrapper top margin + card-pattern inner padding.
Tests
6 new PHPUnit tests cover the transfer location filter (city expansion + vendor inheritance) — total 1,237 tests / 3,736 assertions, 7 documented saas_block env-quota baseline failures, 15 skipped. No regression.
