Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add an user setting that enables or disables notifications from accounts the user follows #20533

Open
PhilipHow opened this issue Jan 17, 2024 · 7 comments · May be fixed by #20545
Open

Add an user setting that enables or disables notifications from accounts the user follows #20533

PhilipHow opened this issue Jan 17, 2024 · 7 comments · May be fixed by #20545

Comments

@PhilipHow
Copy link
Contributor

PhilipHow commented Jan 17, 2024

Is this feature related to a problem? Please describe.

  • As a Forem user, I want to follow accounts I like (and have their content be higher up in my feed) without receiving notifications from them, so I can focus my attention on other notifications about my own content or community interaction.

Describe the solution you’d like

  • A new user setting within /settings/notifications which enables or disables any notifications being sent when an article is published from accounts the user follows.
  • This setting should be turned on my default for new and existing users to match the existing functionality.

Additional Context

#15328

Copy link
Contributor

Thanks for the issue, we will take it into consideration! Our team of engineers is busy working on many types of features, please give us time to get back to you.

To our amazing contributors: issues labeled bug are always up for grabs, but for feature requests, please wait until we add a ready for dev before starting to work on it.

If this is a feature request from an external contributor (not core team at Forem), please close the issue and re-post via GitHub Discussions.

To claim an issue to work on, please leave a comment. If you've claimed the issue and need help, please ping @forem-team. The OSS Community Manager or the engineers on OSS rotation will follow up.

For full info on how to contribute, please check out our contributors guide.

@PhilipHow PhilipHow changed the title Add an user option not to receive notifications from accounts I follow Add an user setting that enables or disables notifications from accounts the user follows Jan 17, 2024
@tonymet
Copy link

tonymet commented Jan 19, 2024

@PhilipHow if you are working on it, i'm happy to help. either dividing up the work, or helping with testing. I've been asking for this for a while.

@PhilipHow
Copy link
Contributor Author

@tonymet Are you free to take it on? If so, then I can assist. I won't be getting to this for a week or so.

@tonymet
Copy link

tonymet commented Jan 19, 2024

@tonymet Are you free to take it on? If so, then I can assist. I won't be getting to this for a week or so.

I'll review the code this weekend and try to scope out the effort .

Here's my guess not knowing much about the code

  1. UI & backend updates for settings
  2. query mods (read-side) to filter the notifcations
  3. possible write-side notification changes to reflect the updated settings.
  4. updated tests
  5. updated docs

Assuming dev env setup and the code points for the above are pretty clear, i'm happy to partner with you on it.

@tonymet
Copy link

tonymet commented Jan 20, 2024

@tonymet Are you free to take it on? If so, then I can assist. I won't be getting to this for a week or so.

I started marking up the codepoints needing changes here : https://github.com/forem/forem/compare/main...tonymet:forem:new-post-notification-setting?expand=1

Take a look and let me know if you're up to dividing the work. I'll continue at a slow pace over the next week or so

@tonymet
Copy link

tonymet commented Jan 20, 2024

@PhilipHow

I got a workign proof of concept on the branch above

You can test it out with

$ bin/rails db:migrate
$ bin/rails console
# set your user id
m= User.where(:id=>13).first
 m.notification_setting.new_post_notifications=false;
 m.notification_setting.save()

Then visit http://localhost:3000/notifications and notice the new-post notifs are gone.

What is Done

  • new user setting notification_setting.new_post_notifications
  • filter out new-post (article) notifications when new_post_notifications = false
  • db migration to add column for above setting

What is next

  • add UI crud for user setting
  • test edge cases for filtering notification types (don't break @mentions)

@tonymet
Copy link

tonymet commented Feb 4, 2024

@PhilipHow can you take a look at the PR and share your feedback? it's ~ 85% complete

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants