From bbe74966a163e2d95c72ac17c5d6c6811acd0758 Mon Sep 17 00:00:00 2001 From: "Stanko K.R." Date: Thu, 6 Nov 2025 14:29:18 +0100 Subject: [PATCH] Extract saas helpers into a concern --- app/controllers/application_controller.rb | 1 + app/controllers/concerns/saas.rb | 11 +++++++++++ app/controllers/sessions_controller.rb | 2 +- app/views/sessions/menus/show.html.erb | 2 +- 4 files changed, 14 insertions(+), 2 deletions(-) create mode 100644 app/controllers/concerns/saas.rb diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index dc70236ef..235b9c2a0 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -4,6 +4,7 @@ class ApplicationController < ActionController::Base include Authorization include CurrentRequest, CurrentTimezone, SetPlatform include TurboFlash, ViewTransitions + include Saas stale_when_importmap_changes allow_browser versions: :modern diff --git a/app/controllers/concerns/saas.rb b/app/controllers/concerns/saas.rb new file mode 100644 index 000000000..fd4ca8491 --- /dev/null +++ b/app/controllers/concerns/saas.rb @@ -0,0 +1,11 @@ +module Saas + extend ActiveSupport::Concern + + included do + helper_method :signups_allowed? + end + + def signups_allowed? + defined?(Signup) && defined?(saas) + end +end diff --git a/app/controllers/sessions_controller.rb b/app/controllers/sessions_controller.rb index 9c3a66731..6ed69afa4 100644 --- a/app/controllers/sessions_controller.rb +++ b/app/controllers/sessions_controller.rb @@ -18,7 +18,7 @@ class SessionsController < ApplicationController magic_link = identity.send_magic_link flash[:magic_link_code] = magic_link&.code if Rails.env.development? redirect_to session_magic_link_path - elsif defined?(Signup) && defined?(saas) + elsif signups_allowed? Signup.new(email_address: email_address).create_identity session[:return_to_after_authenticating] = saas.new_signup_membership_path redirect_to session_magic_link_path diff --git a/app/views/sessions/menus/show.html.erb b/app/views/sessions/menus/show.html.erb index 096ea7d5b..19f190eb3 100644 --- a/app/views/sessions/menus/show.html.erb +++ b/app/views/sessions/menus/show.html.erb @@ -24,7 +24,7 @@

You don’t have any Fizzy accounts.

<% end %> - <% if defined?(saas) %> + <% if signups_allowed? %>
<%= link_to saas.new_signup_membership_path, class: "btn btn--plain txt-link center txt-small", data: { turbo_prefetch: false } do %> Sign up for a new Fizzy account