%div{class:"form-container wizard#{@skip_my_mlh_fields ? " wizard-skip-valid" : ""}"}
= simple_form_for @questionnaire, url: url_for(controller: "questionnaires", action: "update"), html: { "data-validate" => "form" } do |f|
- if f.error_notification.present?
= f.error_notification
.wizard-stage.wizard-current
- if Rails.configuration.hackathon['disclaimer']
#disclaimer
= markdown(Rails.configuration.hackathon['disclaimer'])
.form-inputs
= f.input :first_name, input_html: { "data-validate" => "presence" }, autofocus: true, wrapper_html: { class: 'input--half' }
= f.input :last_name, input_html: { "data-validate" => "presence" }, wrapper_html: { class: 'input--half' }
= f.input :phone, label: "Phone number", input_html: { "data-validate" => "presence" }
= f.input :date_of_birth, start_year: Date.today.year - 5, end_year: Date.today.year - 90, order: [:month, :day, :year], input_html: { "data-validate" => "presence" }
= f.input :school_id, as: :school_selection, input_html: { "data-validate" => "presence" }
= f.input :level_of_study, collection: collection_or_text(@questionnaire.level_of_study, Questionnaire::POSSIBLE_LEVELS_OF_STUDY), include_blank: "(select one...)", input_html: { "data-validate" => "presence" }, wrapper_html: { class: 'input--half' }
= f.input :major, input_html: { "data-validate" => "presence" }, wrapper_html: { class: 'input--half' }
= f.input :gender, collection: collection_or_text(@questionnaire.gender, Questionnaire::POSSIBLE_GENDERS), include_blank: "(select one...)", input_html: { "data-validate" => "presence" }, wrapper_html: { class: 'input--half' }
= f.input :shirt_size, as: :select, collection: Questionnaire::POSSIBLE_SHIRT_SIZES, include_blank: "(select one...)", input_html: { "data-validate" => "presence" }, wrapper_html: { class: 'input--half' }
= f.input :dietary_restrictions, as: :text, placeholder: "Allergies, medical assistance, etc.", label: "Health restrictions", wrapper_html: { class: 'input--half' }
= f.input :special_needs, as: :text, placeholder: "Any special needs or requests", label: "Special needs", wrapper_html: { class: 'input--half' }
.right
%button.button{ type: "button", "data-wizard" => "next" } Next
.wizard-stage
.form-inputs
- if HackathonManager.field_enabled?(:why_attend)
= f.input :why_attend, label: "Why #{Rails.configuration.hackathon['name']}?", placeholder: "In a sentence or two, why would you like to attend #{Rails.configuration.hackathon['name']}?", input_html: { rows: 3, maxlength: 280 }
= f.input :experience, as: :select, collection: Questionnaire::POSSIBLE_EXPERIENCES.invert, include_blank: "(select one...)", label: "Experience", input_html: { "data-validate" => "presence" }, wrapper_html: { class: 'input--half' }
= f.input :interest, as: :select, collection: Questionnaire::POSSIBLE_INTERESTS.invert, include_blank: "(select one...)", label: "Interest", input_html: { "data-validate" => "presence" }, wrapper_html: { class: 'input--half' }
= f.input :portfolio_url, label: "Portfolio link", placeholder: "http://mywebsite.com"
= f.input :vcs_url, label: "GitHub/Bitbucket link", placeholder: "https://github.com/coderit"
= f.input :resume, as: :deletable_attachment, hint: "Must be a PDF, under 2MB", input_html: { "data-validate" => "file-max-size file-content-type", "data-validate-file-max-size" => "2097152", "data-validate-file-content-type" => "application/pdf" }, label: "Resume"
= f.input :can_share_info, as: :radio_buttons, collection: { " Yes please!" => true, " No, thank you." => false }, label: "Share info with sponsors?", hint: "Our sponsors would receive info such as your name, email, resume, GitHub link, etc"
- travel_state = !@questionnaire.new_record? && @questionnaire.travel_not_from_school
= f.input :travel_not_from_school, as: :radio_buttons, collection: { " My school" => false, " Somewhere else" => true }, label: "I am traveling from..."
= f.input :travel_location, input_html: { "data-validate" => "presence", disabled: !travel_state }, wrapper_html: { style: travel_state ? "" : "display: none" }, label: "Where are you traveling from?", placeholder: "New York City"
%hr
.form-inputs
.supporting-text
Please read the
= link_to asset_url(Rails.configuration.hackathon['agreement_pdf_asset']), target: '_blank' do
#{Rails.configuration.hackathon['name']} Agreement
%span.fa.fa-external-link.icon-space-l-half
= f.input :agreement_accepted, as: :formatted_boolean, label: "I accept the #{Rails.configuration.hackathon['name']} agreement.", input_html: { "data-validate" => "presence" }
.supporting-text
Please read the
%a{ href:"http://static.mlh.io/docs/mlh-code-of-conduct.pdf", target: "_blank" }
MLH Code of Conduct
%span.fa.fa-external-link.icon-space-l-half
= f.input :code_of_conduct_accepted, as: :formatted_boolean, label: "I accept the MLH Code of Conduct.", input_html: { "data-validate" => "presence" }
.supporting-text
I agree to the terms of both the
MLH Contest Terms and Conditions and the
MLH Privacy Policy. Please note that you may receive pre and post-event informational e-mails and occasional messages about hackathons from MLH as per the MLH Privacy Policy.
= f.input :data_sharing_accepted, as: :formatted_boolean, label: "I accept the MLH policies.", input_html: { "data-validate" => "presence" }
.right
%button.button{ type: "button", "data-wizard" => "previous" } Previous
= f.button :submit, value: ( @questionnaire.new_record? ? 'Apply' : 'Save' )