Newsletter preferences not updating

Issue Summary
I am trying to launch a second newsletter, but have found a case in which an existing user (who is only subscribed to the first) clicking on the signup link instead of the “login” link does NOT get signed up for the newsletter, despite being shown the email preferences screen with the toggle for the newsletter being selected.

I believe this to only be an issue with the sign up flow. If a user signs in, then goes to “manage emails” and toggles the newsletter, they are added.

Is this intended behaviour? If so, it seems like broken UX.

If an existing user instead clicks on a sign up link, they are taken to a page that looks nearly identical to the sign in page (ergo, many users will make this mistake). This page does NOT reject the existing user or send them to sign in instead, it simply presents them with a list of newsletters, which in this case are all toggled to “subscribe” state. which makes it doubly likely that they will not realize they are not in the sign in flow. It appears that when a user toggles "

  1. Create 2 newsletters, and set both to subscribe new members on signup.
  2. New user signs up via the regular signup portal flow. Both newsletters are auto-toggled to “on”
  3. They sign up, and are subscribed to both newsletters. Great!
  4. A pre-existing member who is only subscribed to one newsletter uses the same link. They go through the “sign up” flow (this seems to just sign the existing user in). They input their email, then are shown the newsletter subscription management page. As with the new member, both newsletters are auto-toggled on.
  5. they continue sign in, but their subscription preferences are NOT updated (ie, I/they would expect to be subscribed to both letters).

Setup information

Ghost Version
5.28.0

Node.js Version
v16.19.0

How did you install Ghost?
self-hosting

Provide details of your host & operating system
OS: Ubuntu, v22.04.1 LTS
Node Version: v16.19.0
Ghost Version: 5.28.0
Ghost-CLI Version: 1.24.0

(note: I am working on updating to the LTS of ghost and it’s supported version of node currently)

Anything else you need? I can post screenshots, but as this isn’t front-end this probably wouldn’t help

Hi @sashagoldst, please can you upgrade first and let us know if you can still reproduce? If so then we can look at it, but there’s a good chance it’s already solved.

On it! I thought this might be the case :)

will report back

@Hannah

Unfortunately, this did not fix the issue :frowning:

Any other ideas?

Hey @sashagoldst - thanks for flagging this. I’ve added this bug report with our team that looks after Portal. We have a project we’ll be picking up in the near future that will tackle a few Portal improvements so likely this will be included within that :slight_smile: