Login Session Persistence

For a while now as a semi-frequent GR listener, I’ve noticed that my login session isn’t carrying between subdomains on the site. I login on the homepage (gensokyoradio.net), then click on “Playing” to tune in. After redirection (to /playing), I’m no longer logged in. Logging back in on that page works visually (i.e. I appear logged in), but it still acts as though I’m not logged in. I figured it was a minor bug that would be worked out in an update but it appears to still be unresolved (it took me a few tries to get to the forum while logged in to post this) Is this a quick fix or is this something that’s happened as a result of working on the PWA?

Thanks for reporting this. This had also been posted as a thread on Discord here: feedback - not counting as logged in despite being logged in. This issue is a result of server migration in June.

tl;dr The player page has been updated and should behave as expected. You may need to clear cache to update the JavaScript file when logging in through the player page. More details below.

Technical summary
During migration, along with moving the website, DB, etc. over to a new machine, we also updated various server software packages. As a result, some code/functions which serve various parts of the website became deprecated or reached end-of-life, and what used to show up as benign warnings became fatal errors instead which all needed to be addressed.

We spent several days running through post-migration testing and patching things up, but login was particularly difficult to deal with. Sessions as we had used them before were effectively broken, and we needed to build a new system to handle logins. At the same time, we introduced login persistence as a highly requested feature among website users over the past several years.

The last piece of this effort was the player page which is separate from every other webpage on GensokyoRadio.net; the header file looks different visually (no navigation), but also behaves differently. On top of this, we have AJAX (JavaScript-driven) login sessions which we ended up bundling with browser tokens as part of the work on persistent logins.

With all that said, I pushed an update this evening to the player page so that login sessions should persist between it and the rest of the website.

  • If logging in through the modal window on the player page, you may need to clear cache for your browser to grab the latest .js file which handles login persistence.
  • If you login from any other webpage on the site and then navigate to the player, you should now remain logged in, no cache clearing necessary.

On the topic of forum login
The forums use an SSO (Single Sign-On) login scheme which depends on a user being logged in to the website before navigating to the forums. If a user navigates to the forums from the website but is not logged in, they will be sent to the login screen on the website. After logging in, navigating to the forums should automatically login the user to the forums, and the login persistence is handled independently of the website.

The part that’s probably confusing in this path is that the login screen will always send a newly logged-in user to the website’s home page instead of the forums if the context makes sense. I can probably add in a value which redirects the user back to the forums when it makes sense, but the current experience can make it feel more detached than it should.

On the topic of PWA login
Like the forums, PWA login is independent of the website (sessions don’t carry over), but once logged in, persistence is seamlessly built-in to the application, so there’s no switching between one and the other. The only time you would need to visit the website when trying to login is to create a new account or recover an account.

~

Let me know if you’re still running into issues with the player page or login in general and I can take another look. Thanks!

Looks like the login sessions are persisting again. Thank you very much for the quick fix! Love GR and how many great remixes and arrangements I’ve discovered through it.