OpenSparrow v3.5 is a usability release that adds a language selector to the login page, searchable foreign-key pickers, and notification timestamps, while unifying the notifications dropdown with the shared panel style. This update makes the app friendlier for international users, speeds up data entry on long foreign-key lists, and tidies a few small UI details. Below is a breakdown of what changed and why it matters.
Language selector on the login page
Users can now pick their locale before signing in. The login form gains a language <select> populated from the available locales, and the <html lang> attribute follows the active locale so screen readers and browsers render the page in the right language from the very first screen.
- Locale is chosen before authentication, so the whole session starts in the user's language
- The
<html lang>attribute now tracks the active locale instead of a hardcoded value - Selection is driven by
I18n::availableLanguageMeta(), so new locales appear automatically
Searchable foreign-key pickers
Edit and create forms replace the plain <select> on foreign-key fields with a searchable input backed by a <datalist>. Long FK lists are now filterable by typing instead of scrolling through a dropdown.
- New
public/assets/js/edit/fk-search.jswires up the search behaviour - Typing filters the datalist; the selected value is synced to a hidden field carrying the real FK id
- Blurring with an unmatched value restores the original label, so invalid selections can't slip through
Notification timestamps
Each item in the notifications dropdown now shows its created_at time, formatted with the browser's locale. You can tell at a glance how old a notification is.
GitHub link in the footer
A GitHub lockup badge now links to the project repository from the footer, so the source is one click away from anywhere in the app.
Changed
- The notifications dropdown was unified with the shared
bp-panelstyle (header, close button, overlay) instead of its own bespoke markup. - Notes UI strings are now translated into all 19 locales.
Fixed
- The
#debugbar no longer flashes before JS hides it on page load — it is now hidden inline.
Upgrade note
No database migration and no configuration keys are removed by this release. Upgrading is a drop-in replacement.
Following this series?
OpenSparrow v3.4 — Material Symbols Outlined and a Searchable Icon Picker
Top comments (0)