diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 57b1b01a..fb061331 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -126,12 +126,13 @@ module ApplicationHelper safe_join(event.speakers.map{ |speaker| link_to speaker.name, admin_user_path(speaker) }, ',') end - def speaker_selector_input(form) - users = User.active.pluck(:id, :username).map { |user| - [user[0], user[1]] - }.sort_by { |user| - user[1].downcase - } + def speaker_selector_input(form, conference) + users = conference.participants.pluck(:id, :username).map do |user| + [user[0], user[1]] + end + + users = users.sort_by { |user| user[1].downcase } + form.input :speakers, as: :select, collection: options_for_select(users.map {|user| [user[1], user[0]]}, @event.speakers.map(&:id)), include_blank: false, label: 'Speakers', input_html: { class: 'select-help-toggle', multiple: 'true' } diff --git a/app/views/proposals/_proposal_form.html.haml b/app/views/proposals/_proposal_form.html.haml index 1b642d94..b67d6aff 100644 --- a/app/views/proposals/_proposal_form.html.haml +++ b/app/views/proposals/_proposal_form.html.haml @@ -4,7 +4,7 @@ = f.input :subtitle, as: :string - = speaker_selector_input f + = speaker_selector_input f, @conference = track_selector_input f