app/controllers/decidim/conferences/admin/conference_speakers_controller.rb in decidim-conferences-0.26.10 vs app/controllers/decidim/conferences/admin/conference_speakers_controller.rb in decidim-conferences-0.27.0.rc1

- old
+ new

@@ -4,15 +4,14 @@ module Conferences module Admin # Controller that allows managing conference speakers. # class ConferenceSpeakersController < Decidim::Conferences::Admin::ApplicationController + helper Decidim::Conferences::Admin::ConferenceSpeakersHelper include Concerns::ConferenceAdmin include Decidim::Paginable - helper_method :conference_speaker, :meetings_selected - def index enforce_permission_to :index, :conference_speaker @query = params[:q] @@ -40,19 +39,21 @@ end end end def edit - enforce_permission_to :update, :conference_speaker, speaker: conference_speaker - @form = form(ConferenceSpeakerForm).from_model(conference_speaker) + @item = collection.find(params[:id]) + enforce_permission_to :update, :conference_speaker, speaker: @item + @form = form(ConferenceSpeakerForm).from_model(@item) end def update - enforce_permission_to :update, :conference_speaker, speaker: conference_speaker + @conference_speaker = collection.find(params[:id]) + enforce_permission_to :update, :conference_speaker, speaker: @conference_speaker @form = form(ConferenceSpeakerForm).from_params(params) - UpdateConferenceSpeaker.call(@form, conference_speaker) do + UpdateConferenceSpeaker.call(@form, @conference_speaker) do on(:ok) do flash[:notice] = I18n.t("conference_speakers.update.success", scope: "decidim.admin") redirect_to conference_speakers_path(current_conference) end @@ -62,31 +63,24 @@ end end end def destroy - enforce_permission_to :destroy, :conference_speaker, speaker: conference_speaker + @conference_speaker = collection.find(params[:id]) + enforce_permission_to :destroy, :conference_speaker, speaker: @conference_speaker - DestroyConferenceSpeaker.call(conference_speaker, current_user) do + DestroyConferenceSpeaker.call(@conference_speaker, current_user) do on(:ok) do flash[:notice] = I18n.t("conference_speakers.destroy.success", scope: "decidim.admin") redirect_to conference_speakers_path(current_conference) end end end private - def meetings_selected - @meetings_selected ||= @conference_speaker.conference_meetings.pluck(:id) if @conference_speaker.present? - end - - def conference_speaker - @conference_speaker ||= collection.find(params[:id]) - end - def collection - @collection ||= current_conference.speakers + @collection ||= Decidim::ConferenceSpeaker.where(conference: current_conference) end end end end end