class Admin::ContactFormsController < Admin::ApplicationController
  before_action :set_contact_form, only: %i[show edit update destroy]

  # GET /admin/contact_forms
  def index
    @active_menu = "contact_forms_manage"
    @pagy, @contact_forms = pagy(ContactForm.order("id DESC"))
  end

  # GET /admin/contact_forms/1
  def show
  end

  # GET /admin/contact_forms/1/edit
  def edit
  end

  # PATCH/PUT /contact_forms/1 or /contact_forms/1.json
  def update
    respond_to do |format|
      if @contact_form.update(contact_form_params)
        format.html { redirect_to admin_contact_form_path(@contact_form), notice: "Contact form was successfully updated." }
        format.json { render :show, status: :ok, location: @contact_form }
      else
        format.html { render :edit, status: :unprocessable_entity }
        format.json { render json: @contact_form.errors, status: :unprocessable_entity }
      end
    end
  end

  # DELETE /contact_forms/1 or /contact_forms/1.json
  def destroy
    @contact_form.destroy

    respond_to do |format|
      format.html { redirect_to admin_contact_forms_path, notice: "Contact form was successfully destroyed." }
      format.json { head :no_content }
    end
  end

  private

  # Use callbacks to share common setup or constraints between actions.
  def set_contact_form
    @contact_form = ContactForm.find(params[:id])
  end

  # Only allow a list of trusted parameters through.
  def contact_form_params
    params.require(:contact_form).permit(:name, :email, :message)
  end
end
