<commit_before><% # Column names for the grades table
%>

<tr>
  <% if @current_user.admin?%>
    <% # Extra column heading for release/unrelease checkbox
    %>
    <th></th>
  <% end %>
  <% # Display headings for: student ID, last name,first name, section
  %>
  <% #only sorting functionality for admins %>
  <th 
      <% if @current_user.admin? || @current_user.ta?%>
          class="<%="ap_sorting_by" if (sort_by == 'user_name')%>
                    <%="ap_sorting_by_desc" if (sort_by == 'user_name' && !desc.blank?)%>">
          <%= link_to I18n.t("user.user_name"), 
                  :desc => (sort_by == 'user_name' && desc.blank?),
                  :sort_by => 'user_name', 
                  :per_page => per_page,
                  :filter =>filter,
                  :controller =>controller,
                  :action => action%>
      <% else %>
          ><%= t('user.user_name') %>
      <% end %>
  </th>
  <th 
      <% if @current_user.admin? || @current_user.ta?%>
          class="<%="ap_sorting_by" if (sort_by == 'last_name')%>
                    <%="ap_sorting_by_desc" if (sort_by == 'last_name' && !desc.blank?)%>">
          <%= link_to I18n.t("user.last_name"), 
                    :desc => (sort_by == 'last_name' && desc.blank?),
                    :sort_by => 'last_name', 
                    :per_page => per_page,
                    :filter =>filter, 
                    :controller =>controller,
                    :action => action%>
       <% else %>
          ><%= t('user.last_name') %>
       <% end %>
  </th>
  <th 
      <% if @current_user.admin? || @current_user.ta?%>
          class="<%="ap_sorting_by" if (sort_by == 'first_name')%>
                    <%="ap_sorting_by_desc" if (sort_by == 'first_name' && !desc.blank?)%>">
          <%= link_to I18n.t("user.first_name"),
                  :desc => (sort_by == 'first_name' && desc.blank?),
                  :sort_by => 'first_name', 
                  :per_page => per_page,
                  :filter =>filter, 
                  :controller =>controller,
                  :action => action%>
      <% else %>
         ><%= t('user.first_name') %>
      <% end %>
  </th>
  <th 
      <% if @current_user.admin? || @current_user.ta?%>
          class="<%="ap_sorting_by" if (sort_by == 'section')%>
                      <%="ap_sorting_by_desc" if (sort_by == 'section' && !desc.blank?)%>">
          <%= link_to I18n.t("user.section"),
                  :desc => (sort_by == 'section' && desc.blank?),
                  :sort_by => 'section', 
                  :per_page => per_page,
                  :filter =>filter, 
                  :controller =>controller,
                  :action => action%>
      <% else %>
          ><%= t('user.section') %>
      <% end %>
  </th>

  <% # Display the question names and totals
  %><commit_msg>only display section for tas and admins<commit_after><% # Column names for the grades table
%>

<tr>
  <% if @current_user.admin?%>
    <% # Extra column heading for release/unrelease checkbox
    %>
    <th></th>
  <% end %>
  <% # Display headings for: student ID, last name,first name, section
  %>
  <% #only sorting functionality for admins %>
  <th 
      <% if @current_user.admin? || @current_user.ta?%>
          class="<%="ap_sorting_by" if (sort_by == 'user_name')%>
                    <%="ap_sorting_by_desc" if (sort_by == 'user_name' && !desc.blank?)%>">
          <%= link_to I18n.t("user.user_name"), 
                  :desc => (sort_by == 'user_name' && desc.blank?),
                  :sort_by => 'user_name', 
                  :per_page => per_page,
                  :filter =>filter,
                  :controller =>controller,
                  :action => action%>
      <% else %>
          ><%= t('user.user_name') %>
      <% end %>
  </th>
  <th 
      <% if @current_user.admin? || @current_user.ta?%>
          class="<%="ap_sorting_by" if (sort_by == 'last_name')%>
                    <%="ap_sorting_by_desc" if (sort_by == 'last_name' && !desc.blank?)%>">
          <%= link_to I18n.t("user.last_name"), 
                    :desc => (sort_by == 'last_name' && desc.blank?),
                    :sort_by => 'last_name', 
                    :per_page => per_page,
                    :filter =>filter, 
                    :controller =>controller,
                    :action => action%>
       <% else %>
          ><%= t('user.last_name') %>
       <% end %>
  </th>
  <th 
      <% if @current_user.admin? || @current_user.ta?%>
          class="<%="ap_sorting_by" if (sort_by == 'first_name')%>
                    <%="ap_sorting_by_desc" if (sort_by == 'first_name' && !desc.blank?)%>">
          <%= link_to I18n.t("user.first_name"),
                  :desc => (sort_by == 'first_name' && desc.blank?),
                  :sort_by => 'first_name', 
                  :per_page => per_page,
                  :filter =>filter, 
                  :controller =>controller,
                  :action => action%>
      <% else %>
         ><%= t('user.first_name') %>
      <% end %>
  </th>
  <% if @current_user.admin? || @current_user.ta?%>
  <th class="<%="ap_sorting_by" if (sort_by == 'section')%>
                      <%="ap_sorting_by_desc" if (sort_by == 'section' && !desc.blank?)%>">
          <%= link_to I18n.t("user.section"),
                  :desc => (sort_by == 'section' && desc.blank?),
                  :sort_by => 'section', 
                  :per_page => per_page,
                  :filter =>filter, 
                  :controller =>controller,
                  :action => action%>
  </th>
  <% end %>

  <% # Display the question names and totals
  %>
{'fraction_non_alphanumeric': 0.1801056338028169, 'fraction_numerical': 0.0028169014084507044, 'mean_word_length': 1.703950499762018, 'pattern_counts': {'":': 0, '<': 93, '<?xml version=': 0, '>': 148, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5011315', 'n_tokens_mistral': 1966, 'n_tokens_neox': 1771, 'n_words': 344}