From 5bfcc7782c088c1270c9093e0efdd20a975761ea Mon Sep 17 00:00:00 2001 From: Bradley Priest Date: Wed, 3 Jul 2024 14:01:42 -0700 Subject: [PATCH] Look up invited_by_class_name on the current model rather than the global config, this allows multiple invitable models with different configs. --- lib/devise_invitable/models.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/devise_invitable/models.rb b/lib/devise_invitable/models.rb index 4be378de..cea0ff79 100644 --- a/lib/devise_invitable/models.rb +++ b/lib/devise_invitable/models.rb @@ -30,8 +30,8 @@ module Invitable included do include ::DeviseInvitable::Inviter - belongs_to_options = if Devise.invited_by_class_name - { class_name: Devise.invited_by_class_name } + belongs_to_options = if invited_by_class_name + { class_name: invited_by_class_name } else { polymorphic: true } end @@ -78,7 +78,7 @@ def self.required_fields(klass) fields = [:invitation_token, :invitation_created_at, :invitation_sent_at, :invitation_accepted_at, :invitation_limit, Devise.invited_by_foreign_key || :invited_by_id, :invited_by_type] fields << :invitations_count if defined?(ActiveRecord) && self < ActiveRecord::Base - fields -= [:invited_by_type] if Devise.invited_by_class_name + fields -= [:invited_by_type] if invited_by_class_name fields end