diff --git a/app/controllers/list_controller.rb b/app/controllers/list_controller.rb index f0b6323fb7f..9dfada7b43e 100644 --- a/app/controllers/list_controller.rb +++ b/app/controllers/list_controller.rb @@ -8,10 +8,7 @@ class ListController < ApplicationController [:latest, :hot, :favorited, :read, :posted, :unread, :new].each do |filter| define_method(filter) do list_opts = build_topic_list_options - user = current_user - if params[:user_id] && guardian.is_staff? - user = User.find(params[:user_id].to_i) - end + user = list_target_user list = TopicQuery.new(user, list_opts).public_send("list_#{filter}") list.more_topics_url = url_for(self.public_send "#{filter}_path".to_sym, list_opts.merge(format: 'json', page: next_page)) @@ -149,4 +146,12 @@ class ListController < ApplicationController exclude_category: (params[:exclude_category] || menu_item.try(:filter)) } end + + def list_target_user + if params[:user_id] && guardian.is_staff? + User.find(params[:user_id].to_i) + else + current_user + end + end end