Forums Feature Requests Thread

[Enhancement] mobieusMarket / BBS: Marketplace index has no sort control — results are frozen at newest-first

Patrick Bass · Jun 6 · 20 · 1 Locked
[High Priority] [Feature Enhancement] [Deployed to Production]
🚀 OP Jun 6, 2026 5:40pm

Area: mobieusMarket / BBS (audit p3) · Surface: /market (Listing::paginate) · Dimension: existing-feature-improvement · Severity: major

Every shopping surface our competitors ship — eBay, Facebook Marketplace, plus the storefronts inside Thinkific/LearnWorlds — lets the buyer sort by Price: low→high, Price: high→low, and (for relevance) best match. A buyer with a budget literally cannot say 'show me the cheapest first'; they must page through newest-first and eyeball prices. This is a one-line UX miss that makes the catalog feel broken for price-sensitive browsing, which is most of marketplace traffic.

Evidence

Listing::paginate hardcodes `ORDER BY l.created_at DESC` (platform/src/Models/Listing.php:240) and reads no sort parameter — `grep -n 'sort|\$_GET' Listing.php` shows only the paginate signature, no $_GET['sort']. The filter rail in templates/marketplace/index.php:102-168 has selects for category/type/platform/condition/availability/date and price-min/max inputs but no `name="sort"` select anywhere.

Suggested fix. Add a whitelisted `sort` param to Listing::paginate ('newest'|'price_asc'|'price_desc'|'ending_soon' using expires_at) and a sort <select> in the index filter rail that submits with the existing AJAX filter-swap. Keep created_at DESC as the default.

Filed by the automated tenant-app audit and adversarially evidence-verified. Status: verified. Open — not yet actioned.


Patrick Bass
@mobieus

🚀 Jun 7, 2026 11:31am

Shipped and deployed to production. Commit f8522e23a2.

Marketplace sort controls: Newest / Oldest / Price low-to-high / Price high-to-low pill tabs via ?sort= query param. The ORDER BY is allow-listed before interpolation.

Closed as: deployed.


Patrick Bass
@mobieus

Log in or register to reply to this thread.