feat: improve user assignments via quick add magic #3348

Merged
konrad merged 18 commits from feature/better-user-search-assignees into main 2023-06-05 15:03:16 +00:00
2 changed files with 8 additions and 0 deletions
Showing only changes of commit 302ba2bec7 - Show all commits

View File

@ -77,7 +77,9 @@
"emailReminders": "Send me reminders for tasks via Email",
"overdueReminders": "Send me a summary of my undone overdue tasks every day",
"discoverableByName": "Let other users find me when they search for my name",
"stillDiscoverableByName": "Users can still find you by name if they want to assign you to a task on a project shared with you.",
"discoverableByEmail": "Let other users find me when they search for my full email",
"stillDiscoverableByEmail": "Users can still find you by email if they want to assign you to a task on a project shared with you.",
"playSoundWhenDone": "Play a sound when marking tasks as done",
"weekStart": "Week starts on",
"weekStartSunday": "Sunday",

View File

@ -48,12 +48,18 @@
<input type="checkbox" v-model="settings.discoverableByName"/>
{{ $t('user.settings.general.discoverableByName') }}
</label>
dpschen marked this conversation as resolved
Review

By discoverable you mean "able to invite"?
Because I can't assign someone if that person isn't part of the current project, correct?

In general I was now quite confused what this setting now actually does. Judging from this most users will probably not have a clue.

By `discoverable` you mean "able to invite"? Because I can't assign someone if that person isn't part of the current project, correct? In general I was now quite confused what this setting now actually does. Judging from this most users will probably not have a clue.
Review

That's correct! Before the recent changes about finding users in the api, this setting would apply to searching users with access to a project as well. Now it does not anymore and the little explanation I added below does not make this clearer. I've adjusted the message and removed the explanation below the setting.

That's correct! Before the recent changes about finding users in the api, this setting would apply to searching users with access to a project as well. Now it does not anymore and the little explanation I added below does not make this clearer. I've adjusted the message and removed the explanation below the setting.
Review
  • Do you mean 'mention' by 'add me', because I'm still confused what 'search' in that context means?
  • "Allow other users to invite me to teams or projects."
  • group under 'Privacy'? This would add some context to these two settings.
  • Is there ever a case where someone would like to enable / disable only one of those settings? If not: should we group them? If not on api side, maybe set both settings at once in frontend.
- Do you mean 'mention' by 'add me', because I'm still confused what 'search' in that context means? - "Allow other users to **invite** me to teams or projects." - group under 'Privacy'? This would add some context to these two settings. - Is there ever a case where someone would like to enable / disable only one of those settings? If not: should we group them? If not on api side, maybe set both settings at once in frontend.
Review

Do you mean 'mention' by 'add me', because I'm still confused what 'search' in that context means?

No, it's literally adding a user to a project or team. Mentioning is a topic for another day.

"Allow other users to invite me to teams or projects."

Inviting implies there's a form of "receiving an invitation and be able to reject it" which is not the case right now. There is an item on the roadmap to change that, but that's very much out of scope here (and it requires quite a few changes in the api).

group under 'Privacy'? This would add some context to these two settings.

We absolutely should group these settings more. Right now there's too much stuff and it does not look great. I'd prefer to move that to another PR since it would touch more than these two options and I feel like we should plan this properly first.

Is there ever a case where someone would like to enable / disable only one of those settings? If not: should we group them? If not on api side, maybe set both settings at once in frontend.

I guess that depends on how common your name is :) I think it makes sense to have them as distinct options, because an email address is unique, but a name might not be. Searching for a name also "feels" more personal than allowing someone else to find me by my email address.

> Do you mean 'mention' by 'add me', because I'm still confused what 'search' in that context means? No, it's literally adding a user to a project or team. Mentioning is a topic for another day. > "Allow other users to invite me to teams or projects." Inviting implies there's a form of "receiving an invitation and be able to reject it" which is not the case right now. There is an item on the roadmap to change that, but that's very much out of scope here (and it requires quite a few changes in the api). > group under 'Privacy'? This would add some context to these two settings. We absolutely should group these settings more. Right now there's too much stuff and it does not look great. I'd prefer to move that to another PR since it would touch more than these two options and I feel like we should plan this properly first. > Is there ever a case where someone would like to enable / disable only one of those settings? If not: should we group them? If not on api side, maybe set both settings at once in frontend. I guess that depends on how common your name is :) I think it makes sense to have them as distinct options, because an email address is unique, but a name might not be. Searching for a name also "feels" more personal than allowing someone else to find me by my email address.
Review

adding a user to a project

How about 'add member' then?

I'd prefer to move that to another PR

makes sense

keep splitting options

Makes sense as well

> adding a user to a project How about 'add member' then? > I'd prefer to move that to another PR makes sense *keep splitting options* Makes sense as well
Review

I've changed the string yet again

I've changed the string yet again
<p class="is-size-7" v-if="!settings.discoverableByName">
dpschen marked this conversation as resolved Outdated

Wrap test inside <p> with <small>.

Wrap test inside `<p>` with [`<small>`](https://html.spec.whatwg.org/multipage/text-level-semantics.html#the-small-element).
{{ $t('user.settings.general.stillDiscoverableByName') }}
</p>
</div>
<div class="field">
<label class="checkbox">
<input type="checkbox" v-model="settings.discoverableByEmail"/>
{{ $t('user.settings.general.discoverableByEmail') }}
</label>
<p class="is-size-7" v-if="!settings.discoverableByEmail">
dpschen marked this conversation as resolved Outdated

Wrap test inside <p> with <small>.

Wrap test inside `<p>` with [`<small>`](https://html.spec.whatwg.org/multipage/text-level-semantics.html#the-small-element).
{{ $t('user.settings.general.stillDiscoverableByEmail') }}
</p>
</div>
<div class="field">
<label class="checkbox">