Class: Decidim::Conferences::Admin::ConferenceSpeakerForm
- Inherits:
-
Form
show all
- Includes:
- ApplicationHelper, TranslatableAttributes
- Defined in:
- decidim-conferences/app/forms/decidim/conferences/admin/conference_speaker_form.rb
Overview
A form object used to create conference members from the admin dashboard.
Constant Summary
AttributeObject::TypeMap::Boolean, AttributeObject::TypeMap::Decimal
Instance Attribute Summary
#context
Instance Method Summary
collapse
#default_locale?
ensure_hash, from_model, from_params, hash_from, infer_model_name, mimic, mimicked_model_name, model_name, #persisted?, #to_key, #to_model, #to_param, #valid?, #with_context
#[], #[]=, #attributes, #attributes_with_values, #initialize, #to_h
Instance Method Details
#conference_meetings ⇒ Object
61
62
63
64
65
66
|
# File 'decidim-conferences/app/forms/decidim/conferences/admin/conference_speaker_form.rb', line 61
def conference_meetings
meeting_components = current_participatory_space.components.where(manifest_name: "meetings")
return unless meeting_components || conference_meeting_ids.delete("").present?
@conference_meetings ||= Decidim::ConferenceMeeting.where(component: meeting_components).where(id: conference_meeting_ids)
end
|
#map_model(model) ⇒ Object
51
52
53
54
55
|
# File 'decidim-conferences/app/forms/decidim/conferences/admin/conference_speaker_form.rb', line 51
def map_model(model)
self.user_id = model.decidim_user_id
self.existing_user = user_id.present?
self.conference_meeting_ids = model.conference_meetings.pluck(:conference_meeting_id)
end
|
#meetings ⇒ Object
68
69
70
71
72
73
|
# File 'decidim-conferences/app/forms/decidim/conferences/admin/conference_speaker_form.rb', line 68
def meetings
meeting_components = current_participatory_space.components.where(manifest_name: "meetings")
@meetings ||= Decidim::ConferenceMeeting.where(component: meeting_components)
&.order(title: :asc)
&.map { |meeting| [present(meeting).title, meeting.id] }
end
|
#personal_url ⇒ Object
43
44
45
46
47
48
49
|
# File 'decidim-conferences/app/forms/decidim/conferences/admin/conference_speaker_form.rb', line 43
def personal_url
return if super.blank?
return "http://#{super}" unless super.match?(%r{\A(http|https)://}i)
super
end
|
#user ⇒ Object
57
58
59
|
# File 'decidim-conferences/app/forms/decidim/conferences/admin/conference_speaker_form.rb', line 57
def user
@user ||= current_organization.users.find_by(id: user_id)
end
|