diff --git a/app/models/forum_post.rb b/app/models/forum_post.rb index e0a1e65df..4a334b600 100644 --- a/app/models/forum_post.rb +++ b/app/models/forum_post.rb @@ -55,7 +55,7 @@ class ForumPost < ActiveRecord::Base end def permitted - joins(:topic).where("min_level <= ?", CurrentUser.level) + joins(:topic).where("forum_topics.min_level <= ?", CurrentUser.level) end def search(params) @@ -63,11 +63,11 @@ class ForumPost < ActiveRecord::Base return q if params.blank? if params[:creator_id].present? - q = q.where("creator_id = ?", params[:creator_id].to_i) + q = q.where("forum_posts.creator_id = ?", params[:creator_id].to_i) end if params[:topic_id].present? - q = q.where("topic_id = ?", params[:topic_id].to_i) + q = q.where("forum_posts.topic_id = ?", params[:topic_id].to_i) end if params[:topic_title_matches].present? diff --git a/test/functional/forum_posts_controller_test.rb b/test/functional/forum_posts_controller_test.rb index 82c8416c8..5a22bdff8 100644 --- a/test/functional/forum_posts_controller_test.rb +++ b/test/functional/forum_posts_controller_test.rb @@ -35,6 +35,12 @@ class ForumPostsControllerTest < ActionController::TestCase assert_response :success assert_equal(0, assigns(:forum_posts).size) end + + should "list by creator id" do + get :index, {:search => {:creator_id => @user.id}} + assert_response :success + assert_equal(1, assigns(:forum_posts).size) + end end context "with private topics" do