* fix(teams): no hover bg change for noninteractive checkboxes
* feat(teams): send notification to managers on task claim
Also fix client unit test broken by prev commit
* feat(groups): don't penalize for tasks assigned since last activity
* fix(tests): actually fix client unit
* fix(teams): improve task styles
* fix(teams): let people other than leader see relevant approvals
Also more style fixes
* fix(approvals): better filtering and task headings for approval data
* fix(test): correct test expectations for new GET /approvals behavior
* fix(groups): style tweaks
* different border for group and normal tasks
* fix(teams): remove extra click for claiming
* fix(teams): leaders & managers can check off approval-required tasks
* fix(teams): don't notify user of own claim
* fix group task margin and z-index on hover
* fix(menu): sporadic error in top bar
* fix(teams): more approval header and footer adjustments
* fix(tests): adjust expectations for self-approval
* fix(teams): address PR comments
* refactor(timestamps): date user activity on authenticated requests
* refactor(timestamps): update local user instead of direct db update
* Changed the suggested guild string to a translatable string and made changes so that the string only shows within 60 days of user profile creation.
* Removed whitespace.
* wip: better group plan cancellation
* add cancelation confirm modal
* abstract confirm modal for subs
* abstract canceled modal for subs
* working code
* add missing files
* fix text and margins
* fix(cancel modal): share css and add close icon
* WIP(groups): quickish wins
* WIP(groups): two quick wins
1. Don't show task creation button if user is not leader or manager
2. Don't require JS confirm() for approving tasks
* fix(group-plans): allow delete from options button
* fix(group-plans): update tasksOrder when task deleted
* fix(group-tasks): dismiss notification when user takes action
* refactor(tasks): DRY out create button styling
* fix(group-tasks): sync after claiming/unclaiming
* fix(claiming): better sync and notif handling
* fix(tasks): force sync instead of explicitly clearing notif
* fix(tasks): reposition task creation button
* fix(group-tasks): default to single completion
* fix(group-tasks): move completion condition field above approval switch
* fix(group-tasks): todo validation error and approval notif dismissal
* fix(group-tasks): default single completion on client
* fix(group-tasks): move completion condition up more
* fix(group-tasks): maintain client-side user assignment list
* fix(group-tasks): remove approval notifications when task deleted
* fix(group-tasks): send assigned task to top of task list
* fix(group-tasks): remove useless tag filter dropdown
* feat(group-tasks): notify user of assigned task
* fix(group-tasks): don't allow approval of tasks w/ no approval request
* fix(tests): adjust expectations
* fix(group-tasks): more sensible action on assignment notif click
* WIP(groups): quickish wins
* WIP(groups): two quick wins
1. Don't show task creation button if user is not leader or manager
2. Don't require JS confirm() for approving tasks
* fix(group-plans): allow delete from options button
* fix(group-plans): update tasksOrder when task deleted
* fix(group-tasks): dismiss notification when user takes action
* refactor(tasks): DRY out create button styling
* fix(group-tasks): sync after claiming/unclaiming
* Display message on My Guilds page when filters dont' match anything
* Display message on Discover Guilds page when filters dont' match anything
* Display message on My Challenges page when filters dont' match anything
* Display message on Discover Challenges page when filters dont' match anything
* Don't show Load More button when there is nothing to load
* Fix Guild search
Previously was not possible to clear after searching
* fix(groups): more intelligent member actions
* fix(groups): further member action improvements
* fix(groups): don't show "Remove Manager" if user doesn't have authority
* fix(lint): bad if syntax
* fix(groups): unnecessary if on icon
* WIP(groups): add shared completion prop
Also fix an issue where the Needs Approval toggle would not read/save
correctly.
* fix(groups): save group options on task create
Also, correct count of assigned members when viewing user is among
assignments
* fix(groups): display correct messages in two places
* fix(tasks): eliminate console error related to filtering
Also localize a group plans string
* WIP(groups): implement single completion for approval workflow
* WIP(groups): Add shared completion handling to no-approval-needed flow
* WIP(groups): cover approval flow case for all-assigned
Also save new field on initial task creation
* fix(tasks): use default sharedCompletion value when creating tasks
* WIP(tests): non-working draft test
* Added completed todo to group query
* WIP(group-tasks): fix bugs, add tests
* refactor(group-tasks): deleteMany op, add more tests
* refactor(group-tasks): move shared completion handling to lib
* WIP(group-tasks): broken refactor
* WIP(group-tasks): await all the things
* Turned complete master task to save
* WIP(group-tasks): show completed
* fix(filtering): don't try to filter if no list is passed
* refactor(group-tasks): load completed to-dos on demand, not at start
* fix(group-tasks): don't double up on repeat visits
* fix(group-tasks): include brief explanation in dropdown
* fix(group-tasks): improve wording some more
So far if a task contained Markdown, a system message like this would
have been posted to the group chat:
foo has claimed "Some [link](http://example.org/)"
Also, if the Markdown contained backticked code fragments, the whole
text would be displayed in red except the code part.
The reason for this is because the system message is already in Markdown
and a backticked task text would result in the following Markdown:
`foo has claimed "Foo `bar`"`
Here there are two code blocks, one with `foo has claimed "Foo ` and
another which only has `"`.
This is fixed by simply changing the userIsClamingTask translation
string to not wrap the task text inside a code block, as per @Alys
suggestion.
Signed-off-by: aszlig <aszlig@nix.build>
* remove removePunctuationFromString function from test code
It's not needed now that the test banned words don't contain underscores.
* prevent tests accidentally throwing messageGroupChatSpam
This commit makes the user for most tests have contributor tiers so
that the user can't trigger the messageGroupChatSpam error message
(for posting messages too quickly).
This is useful when some of the tests fail due to broken code
because that makes more messages be posted than expected. If the user
doesn't have tiers, the messageGroupChatSpam error message would be
triggered, which gives misleading information about the test failure.
* add tests for banned swear and slur words posted in mixed case
* allow banned word error message to show bad words in the same case the user typed them
* stop using randomly-chosen real banned words in tests
The test modified in this commit had been using real banned words,
which meant that those words were being displayed to the contributors
when the test failed.
NB the 'check all banned words are matched' test also uses the real
banned words but the test failure messages don't show the words.
* improve translatability of bannedWordUsed error message