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