From: "Shannon Sterz" <s.sterz@proxmox.com>
To: "Christian Ebner" <c.ebner@proxmox.com>, <pdm-devel@lists.proxmox.com>
Subject: Re: [PATCH datacenter-manager] ui: auto-installer: filter by country name and code
Date: Tue, 26 May 2026 15:26:52 +0200 [thread overview]
Message-ID: <DISN5P2V4LZK.3835UMU6HA6Z3@proxmox.com> (raw)
In-Reply-To: <7f9fcb2f-261b-44c3-a230-b185bbda150d@proxmox.com>
On Tue May 26, 2026 at 3:17 PM CEST, Christian Ebner wrote:
> On 5/26/26 3:09 PM, Shannon Sterz wrote:
>> On Tue May 26, 2026 at 3:06 PM CEST, Christian Ebner wrote:
>>> The country filed for answer files expects a 2 character country
>>> code as input, while showing the full country name for items. The
>>> filter therefore currently applies to country codes only, not
>>> matching on country (common) names.
>>>
>>> Filter based on both, matching name or country code instead.
>>>
>>> Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
>>> ---
>>> Note:
>>> Developt on top of [0] to reduce conflicts when applying.
>>>
>>> [0] https://lore.proxmox.com/pdm-devel/20260526113310.289789-1-s.sterz@proxmox.com/T/
>>>
>>> .../auto_installer/prepared_answer_form.rs | 16 ++++++++++++++++
>>> 1 file changed, 16 insertions(+)
>>>
>>> diff --git a/ui/src/remotes/auto_installer/prepared_answer_form.rs b/ui/src/remotes/auto_installer/prepared_answer_form.rs
>>> index c1d2bab..793f41c 100644
>>> --- a/ui/src/remotes/auto_installer/prepared_answer_form.rs
>>> +++ b/ui/src/remotes/auto_installer/prepared_answer_form.rs
>>> @@ -171,6 +171,22 @@ pub fn render_global_options_form(
>>> }
>>> })
>>> .value(config.country.clone())
>>> + .filter(|item: &AttrValue, query: &str| {
>>> + let query = query.to_string().to_lowercase();
>>> + let item = item.to_string();
>>> +
>>> + // match by country code
>>> + if item.starts_with(&query) {
>>> + return true;
>>> + }
>>> +
>>> + // match by country (common) name
>>> + if let Some(name) = COUNTRY_INFO.deref().get(&item) {
>>> + return name.to_lowercase().starts_with(&query);
>>> + }
>>
>> Maybe `contains` would be more appropriate here? Since these are mostly
>> one word names, it's natural to start with the beginning, but we do
>> usually use `contains` when it comes to searching & filtering.
>
> That could however lead to seemingly unrelated matches, as this filters
> by country name and country code? Not sure if that would improve UX in
> this particular case.
This will highly depend on the context. If I look for "Arab" with
`start_with` the "United Arab Emirates" won't match. IMO it's probably
better not to break with how filtering/searching usually works in the
UI. Also it's not like there are typically so many matches that
returning a bigger set is really detrimental to UX here.
next prev parent reply other threads:[~2026-05-26 13:27 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-26 13:06 [PATCH datacenter-manager] ui: auto-installer: filter by country name and code Christian Ebner
2026-05-26 13:09 ` Shannon Sterz
2026-05-26 13:17 ` Christian Ebner
2026-05-26 13:26 ` Shannon Sterz [this message]
2026-05-26 13:33 ` Christian Ebner
2026-05-26 14:02 ` superseded: " Christian Ebner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=DISN5P2V4LZK.3835UMU6HA6Z3@proxmox.com \
--to=s.sterz@proxmox.com \
--cc=c.ebner@proxmox.com \
--cc=pdm-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox