osem-fcy/app/views/booths/_form.html.haml
2019-08-17 18:14:32 +05:30

54 lines
2.3 KiB
Text

.container
.row
.col-md-8
= semantic_form_for(@booth, url: @url, html: { multipart: true }) do |f|
= f.input :title, as: :string, input_html: { autofocus: true }, required: true
= f.input :description, input_html: { rows: 5, data: { provide: 'markdown-editable' } }, required: true,
hint: 'This field becomes public upon request acceptance'
= f.input :reasoning, input_html: { rows: 5, data: { provide: 'markdown-editable' } }, required: true,
label: 'How it fits the conference'
= f.input :submitter_relationship, input_html: { rows: 5, data: { provide: 'markdown-editable' } }, required: true,
label: 'Submitter\'s relation',
hint: 'e.g. employee, comunity manager, etc'
= f.input :booth_type_id, as: :select,
collection: conference.program.booth_types.map {|type| ["#{type.title}", type.id]},
include_blank: false, label: 'Type', input_html: { class: 'select-help-toggle' } if conference.program.booth_types.any?
- conference.program.booth_types.each do |booth_type|
%span{ class: 'help-block select-help-text booth_booth_type_id collapse', id: "#{booth_type.id}-help" }
= booth_type.description
= f.input :website_url
= responsibles_selector_input f
= f.input :invite_responsible,
hint: "This field is to invite unregistered users using their email to become #{(t'booth_responsible').pluralize}."
= image_tag f.object.picture.thumb.url if f.object.picture?
= f.input :picture
%p.text-right
- if @booth.new_record?
= f.submit "Create #{(t'booth').capitalize } Request", class: 'btn btn-success'
- else
= f.submit "Update #{(t'booth').capitalize } Request", class: 'btn btn-success'
:javascript
$(document).ready(function() {
$('#booth_responsible_ids').selectize({
plugins: ['remove_button'],
minItems: 2
} )
$('#booth_invite_responsible').selectize({
plugins: ['remove_button'],
delimiter: ',',
persist: false,
create: function(input) {
if (!/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(input)){
return {}
}
return {
value: input,
text: input
}
}
} )
});