agenda-libre-ruby/app/views/events/_form.html.haml

95 lines
3.0 KiB
Plaintext

= form_for @event,
url: { action: @event.new_record? ? :create : :update } do |f|
- if @event.persisted?
= f.hidden_field :lock_version
- unless @moderation
= hidden_field_tag :secret, params[:secret]
- if @event.errors.any?
#flash-messages
- @event.errors.full_messages.each do |msg|
%p.flash.alert= msg
.field.title.required
= f.label :title
= f.text_field :title, required: true, placeholder: t('.title_helper')
.field.start_time.required
= f.label :start_time
= f.datetime_select :start_time, default: 1.day.from_now
.field.end_time.required
= f.label :end_time
= f.datetime_select :end_time, default: 1.day.from_now
.field.place_name
= f.label :place_name
= f.text_field :place_name
.helper
:markdown
#{raw t '.address_helper'}
.field.address
= f.label :address
= f.text_field :address, list: :addresses
%datalist#addresses
- Event.where('address is not null').group(:address).order('count(address) desc').pluck(:address).each do |address|
%option= address
.field.city.required
= f.label :city
= f.text_field :city, required: true, list: :cities
%datalist#cities
- Event.group(:city).order('count(city) desc').pluck(:city).each do |city|
%option= city
.field.region.required
= f.label :region
= render partial: '/regions/selector', locals: { f: f }
.field.locality
= f.label :locality
%span.radios
= f.radio_button :locality, 0
= f.label 'locality_0' do
%em.fa.fa-shield
= t 'attributes.locality_0'
= f.radio_button :locality, 1
= f.label 'locality_1' do
%em.fa.fa-globe
= t 'attributes.locality_1'
.field.description.required{ title: t('.description_helper') }
= f.label :description
/= f.text_area :description, rows: 25, class: :description
= f.text_field :description, class: :description
.field.url{ title: t('.url_helper') }
= f.label :url
= f.url_field :url, placeholder: 'Ex: https://april.org'
.field.contact.required{ title: t('.contact_helper') }
= f.label :contact
= f.email_field :contact, required: true
.field.submitter{ title: t('.submitter_helper') }
= f.label :submitter
= f.email_field :submitter
.field.tags{ title: t('.tags_helper') }
= f.label :tags, for: 'event_tag_list_tag'
= f.text_field :tag_list, value: f.object.tag_list.to_s
- unless @event.moderated?
.field.repeat{ title: t('.rule_helper') }
= f.label :repeat
= f.number_field :repeat, in: 0..40
.field.rule.required
= f.label :rule
%span.radios
- Event::RULES.each do |rule|
= f.radio_button :rule, rule
= f.label "rule_#{rule}",
t(rule, scope: 'activerecord.attributes.event.rule_values')
.actions
= f.button formaction: url_for(action: @event.new_record? ? :preview_create : :preview) do
%em.fa.fa-eye
= t '.visualise'
= f.button do
%em.fa.fa-check
= t '.save'