diff --git a/app/controllers/choices_controller.rb b/app/controllers/choices_controller.rb index 8a9b9eb..9c1a592 100644 --- a/app/controllers/choices_controller.rb +++ b/app/controllers/choices_controller.rb @@ -45,7 +45,7 @@ class ChoicesController < InheritedResources::Base visitor = current_user.default_visitor if visitor_identifier - visitor = current_user.visitors.find_or_create_by_identifier(visitor_identifier) + visitor = Visitor.find_or_create_by_identifier_and_site_id(visitor_identifier, current_user.id) end params[:choice].merge!(:creator => visitor) @@ -68,7 +68,7 @@ class ChoicesController < InheritedResources::Base end if visitor_identifier = params[:visitor_identifier] - visitor = current_user.visitors.find_or_create_by_identifier(visitor_identifier) + visitor = Visitor.find_or_create_by_identifier_and_site_id(visitor_identifier, current_user.id) flag_params.merge!({:visitor_id => visitor.id}) end respond_to do |format| diff --git a/app/models/question.rb b/app/models/question.rb index e9f8d13..17c6fb5 100644 --- a/app/models/question.rb +++ b/app/models/question.rb @@ -237,7 +237,7 @@ class Question < ActiveRecord::Base end if params[:with_visitor_stats] - visitor = current_user.visitors.find_or_create_by_identifier(visitor_identifier) + visitor = Visitor.find_or_create_by_identifier_and_site_id(visitor_identifier, current_user.id) result.merge!(:visitor_votes => Vote.find_without_default_scope(:all, :conditions => {:voter_id => visitor, :question_id => self.id}).length) result.merge!(:visitor_ideas => visitor.choices.count) end diff --git a/app/models/user.rb b/app/models/user.rb index 7b211a8..13817af 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -10,12 +10,12 @@ class User < ActiveRecord::Base def create_question(visitor_identifier, question_params) logger.info "the question_params are #{question_params.inspect}" - visitor = visitors.find_or_create_by_identifier(visitor_identifier) + visitor = Visitor.find_or_create_by_identifier_and_site_id(visitor_identifier, self.id) question = visitor.questions.create(question_params.merge(:site => self)) end def create_choice(visitor_identifier, question, choice_params = {}) - visitor = visitors.find_or_create_by_identifier(visitor_identifier) + visitor = Visitor.find_or_create_by_identifier_and_site_id(visitor_identifier, self.id) raise "Question not found" if question.nil? #TODO Does this serve a purpose? @@ -35,7 +35,7 @@ class User < ActiveRecord::Base if visitor_identifier.nil? visitor = default_visitor else - visitor = visitors.find_or_create_by_identifier(visitor_identifier) + visitor = Visitor.find_or_create_by_identifier_and_site_id(visitor_identifier, self.id) end visitor.vote_for!(options) end @@ -50,7 +50,7 @@ class User < ActiveRecord::Base if visitor_identifier.nil? visitor = default_visitor else - visitor = visitors.find_or_create_by_identifier(visitor_identifier) + visitor = Visitor.find_or_create_by_identifier_and_site_id(visitor_identifier, self.id) end visitor.skip!(options) end -- libgit2 0.21.2