class PollsController < ApplicationController include CommentableActions include PollsHelper load_and_authorize_resource has_filters %w{current expired incoming} has_orders %w{most_voted newest oldest}, only: :show ::Poll::Answer # trigger autoload def index @polls = @polls.send(@current_filter).includes(:geozones).sort_for_list.page(params[:page]) end def show @questions = @poll.questions.for_render.sort_for_list @token = poll_voter_token(@poll, current_user) @answers_by_question_id = {} poll_answers = ::Poll::Answer.by_question(@poll.question_ids).by_author(current_user.try(:id)) poll_answers.each do |answer| @answers_by_question_id[answer.question_id] = answer.answer end @commentable = @poll @comment_tree = CommentTree.new(@commentable, params[:page], @current_order) end end