crowdAI/crowdai

View on GitHub
app/views/challenges/form/_challenge_round_fields.html.erb

Summary

Maintainability
Test Coverage
<div class="section-container nested-fields">

  <div class="twin-container">
    <div class="twin-field">
      <div class="switch-container">
        <%= f.check_box :active,
              { class: 'switch active-switch' },
              "true", "false"  %>
        <%= f.label :active,
              'Current Round',
              data: { on: 'true', off: 'false' } %>
      </div>
    </div>
    <div class="twin-field"></div>
  </div>

  <div class="twin-container">
    <div class="twin-field">
      <label>Round</label>
      <%= f.text_field :challenge_round %>
    </div>
    <div class="twin-field"></div>
  </div>

  <div class="twin-container">
    <div class="twin-field">
      <label>Prior Round Min Score</label>
      <%= f.text_field :minimum_score, placeholder: 'No limitations' %>
    </div>
    <div class="twin-field">
      <% unless @challenge.secondary_sort_order == :not_used %>
        <label>Prior Round Min Sec Score</label>
        <%= f.text_field :minimum_score_secondary, placeholder: 'No limitations' %>
      <% end %>
    </div>
  </div>

  <div class="twin-container">
    <div class="twin-field">
      <label>Submission Limit</label>
      <%= f.text_field :submission_limit, placeholder: 'Enter maximum submissions' %>
    </div>
    <div class="twin-field">
      <label>Period</label>
      <%= f.select :submission_limit_period, enum_option_pairs(ChallengeRound, :submission_limit_period), include_blank: true %>
    </div>
  </div>

  <div class="twin-container">
    <div class="twin-field">
      <label>Failed submissions allowed</label>
      <%= f.text_field :failed_submissions %>
    </div>
    <div class="twin-field">
      <label>Parallel Submissions</label>
      <%= f.text_field :parallel_submissions %>
    </div>
  </div>

  <div class="twin-container">
    <div class="twin-field">
      <label>Highlighted Rankings</label>
      <%= f.text_field :ranking_highlight %>
    </div>
    <div class="twin-field">
      <label>Ranking window (hours)</label>
      <%= f.text_field :ranking_window %>
    </div>
  </div>

  <div class="twin-container">
    <div class="twin-field">
      <label>Score Precision</label>
      <%= f.text_field :score_precision %>
    </div>
    <div class="twin-field">
      <label>Secondary Score Precision</label>
      <%= f.text_field :score_secondary_precision %>
    </div>
  </div>

  <div class="twin-container">
    <div class="twin-field">
      <%= f.label :start_dttm, 'Round Start (UTC)' %>
      <%= f.text_field :start_dttm,
            data: { controller: 'flatpickr' } %>
    </div>
    <div class="twin-field">
      <%= f.label :end_dttm, 'Round End (UTC)' %>
      <%= f.text_field :end_dttm,
            data: { controller: 'flatpickr' } %>
    </div>

    <fieldset>
      <label>Leaderboard Message</label>
      <%= markdown_editor do |m| %>
        <%= f.text_area :leaderboard_note_markdown, class: "txt-med" %>
      <% end %>
    </fieldset>
  </div>

  <% if current_participant.admin? && f.object.persisted?%>
    round_id: <%= f.object.id %>
  <% end %>
  <% if f.object.persisted? && @challenge.submissions.where(challenge_round_id: f.object.id).present? %>
    <span class='pull-right'>
      <%= pluralize(@challenge.submissions.count,'submission') %>
    </span>
  <% else %>
    <%= link_to_remove_association "remove", f, class: 'pull-right' %>
  <% end %>

</div>