class FaqsController < ApplicationController
  before_action :user_is_editor?
  before_action :set_faq, only: [:show, :edit, :update, :destroy]
  layout "admin"

  def index
    @faqs = Faq.all
  end

  def show
  end

  def new
    @faq = Faq.new
    @categories = Faq.all.select(:category).map(&:category).uniq!
  end

  def edit
    @categories = Faq.all.select(:category).map(&:category).uniq!
  end

  def create
    @faq = Faq.new(faq_params)
    @categories = Faq.all.select(:category).map(&:category).uniq!
    if @faq.save
      redirect_to faqs_path
    else
      render :new
    end
  end

  def update
    if @faq.update(faq_params)
      redirect_to faqs_path
    else
      render :edit
    end
  end

  def destroy
    @faq.destroy
    redirect_to faqs_url
  end

  private
    def set_faq
      @faq = Faq.find(params[:id])
    end

    def faq_params
      params.require(:faq).permit(:question, :number, :answer, :category, :section)
    end
end
