<commit_before><% @renders = {}; hide_dropdowns ||= false %>
<table style="border-spacing: 0px; border-collapse: collapse; border: 0; margin: 0;" id="gradebook_full_content" class="hidden-readable" data-context_code="<%= @context.asset_string %>"><tr>
  <td><div id="topleft_content">
    <table cellspacing="0" class="gradebook_table" style="height: 100%; width: 100%;">
      <tr>
        <td style="vertical-align: bottom;" class="student_name"><div id="outer_topleft">
          <div style="float: right;"><a href="#" class="refresh_grades_link no-hover" style="font-size: 0.8em;" title="<%= t 'titles.refresh_scores', 'Refresh Scores' %>"><%= image_tag 'ajax-reload.gif', :class => 'static' %><%= image_tag "ajax-reload-animated.gif", :class => 'animated', :style => 'display: none;' %></a></div>
          <div id="outer_gradebook_options_holder" style="<%= hidden if hide_dropdowns %>">
            <a href="#" id="gradebook_options" class="no-underline"><%= t(:options, "Options") %></a>
          </div>
        </div></td>
      </tr>
    </table>
  </div></td>
  <td><div id="top_content">
    <table cellspacing="0" id="assignment_names" class="gradebook_table">
      <tr>
        <td style="display: none;"></td>
        <% for assignment in @assignments %>
          <td class="outer_assignment_name assignment_name <%= assignment.special_class %> <%= "unpublished" if should_be_published?(@students, assignment, @submissions) %> <%= "published" if (!assignment || assignment.published?) %> <%= 'attendance' if assignment.attendance? %>" style="cursor: pointer;">
            <div id="outer_assignment_<%= assignment.id %>" class="assignment_<%= assignment.id %> student_header">
              <%= @renders[assignment.asset_string] ||= render(:partial => 'assignment', :object => assignment, :locals => { :course => @context, :hide_dropdowns => hide_dropdowns }) %>
            </div>
          </td>
        <% end %>
        <!--td id="scrollbar-top" style="padding: 0px;"></td-->
      </tr>
    </table>
  </div></td>
</tr><tr>
  <td><div id="left_content">
    <table cellspacing="0" id="student_names" class="gradebook_table">
      <% for student in @students %>
      <tr>
        <td class="outer_student_name student_name" style="height: 21px;">
          <div id="outer_student_<%= student.id %>" class="student_<%= student.id %> assignment_header" style="min-height: 20px;">
            <%= @renders[student.asset_string] ||= render(:partial => 'student', :object => student, :locals => { :course => @context }) %>
          </div>
        </td>
      </tr>
      <% end %>
    </table>
  </div></td> 
  <td><div id="gradebook">
    <div style="width: 100%; position: relative;" id="gradebook_inner">
    <table cellspacing="0" id="gradebook_table" style="position: relative;" class="gradebook_table">
      <tr id="table_header">
        <td id="topleft_box" style="vertical-align: bottom;" class="student_name"><div id="topleft" style="width: 100%;">
            <div style="float: right;"><a href="#" class="refresh_grades_link" style="font-size: 0.8em; <%= hidden if hide_dropdowns %>" title="<%= t(:refresh_grades, "Refresh Grades") %>"><%= image_tag 'ajax-reload.gif', :class => 'static' %><%= image_tag "ajax-reload-animated.gif", :class => 'animated', :style => 'display: none;' %></a></div>
          <div id="gradebook_options_holder">
            <a href="#" id="gradebook_options" class="no-underline"><%= t(:options, "Options") %></a>
          </div>
          <div class="clear"></div>
        </div></td>
        <% for assignment in @assignments %>
          <td class="assignment_name <%= assignment.special_class %> <%= 'attendance' if assignment.attendance? %>">
            <div id="assignment_<%= assignment.id %>" class="assignment_header assignment_<%= assignment.id %> skip">
              <%= @renders[assignment.asset_string] ||= render(:partial => 'assignment', :object => assignment, :locals => { :course => @context, :hide_dropdowns => hide_dropdowns }) %>
            </div>
            <div style="display: none;">
              <%= render :partial => "grading_box", :object => assignment %>
            </div>
          </td>
        <% end %>
      </tr>
    <% jdx = 0 %>
    <% for student in @students %>
      <% jdx = jdx + 1 %>
      <tr>
        <td class="student_name" style="height: 21px;">
          <div id="student_<%= student.id %>" class="student_header">
            <%= @renders[student.asset_string] ||= render(:partial => 'student', :object => student, :locals => { :course => @context }) %>
          </div>
        </td>
        <% @assignments.each_with_index do |assignment, idx| 
        %>
          <td class="student_assignment  <%= assignment.special_class %>">
            -
          </td>
        <% end %>
      </tr>
    <% end %>
    </table>
    </div>
  </div></td>
  </tr>
</table>
<div id="discussion_entry_blank" style="display: none;">
  <div>
    <span class="name">&nbsp;</span>
    <span class="date">&nbsp;</span>
  </div>
  <div class="message"></div>
</div>
<div id="total_tooltip" style="display: none; z-index: 11;">
  <span class="text"></span>
  <div class="tooltip_tail"></div>
</div>
<script type="text/javascript">
  <% maps = {}; @students.each_with_index{|u, i| maps["row_#{i + 1}"] = u.id }; @assignments.each_with_index{|a, i| maps["column_#{i + 1}"] = a.id; maps["hard_coded_#{i + 1}"] = a.respond_to?(:hard_coded) && a.hard_coded } %>
  var id_maps = <%= raw maps.to_json %>;
  <% if (@submissions.length + @assignments.length + @students.length) > 100 %>
  var object_data = null;//
  <% else %>
  var object_data = {pre_initialized: true};
  <% @submissions.each do |submission| %>
    object_data['submission_<%= submission.user_id %>_<%= submission.assignment_id %>'] = (<%= raw submission.to_json(:include => [:attachments,:quiz_submission,:submission_comments]) %>);
  <% end %>
  <% @assignments.each do |assignment| %>
    object_data['assignment_<%= assignment.id %>'] = (<%= raw assignment.to_json %>);
  <% end %>
  <% @students.each do |student| %>
    object_data['student_<%= student.id %>'] = (<%= raw student.to_json %>);
  <% end %>
  <% end %>
</script>
<% js_block do %>
  <script type="text/javascript">
    require(['jquery', 'jqueryui/progressbar'], function($, _progressBar) {
      $("#gradebook_full_content").addClass('hidden-readable');
      $("#loading_gradebook_message").show();
      $("#loading_gradebook_progressbar").progressbar({value: 5});
    });
  </script>
<% end %><commit_msg>don't include unread_inbox_items_count in gb1 user json<commit_after><% @renders = {}; hide_dropdowns ||= false %>
<table style="border-spacing: 0px; border-collapse: collapse; border: 0; margin: 0;" id="gradebook_full_content" class="hidden-readable" data-context_code="<%= @context.asset_string %>"><tr>
  <td><div id="topleft_content">
    <table cellspacing="0" class="gradebook_table" style="height: 100%; width: 100%;">
      <tr>
        <td style="vertical-align: bottom;" class="student_name"><div id="outer_topleft">
          <div style="float: right;"><a href="#" class="refresh_grades_link no-hover" style="font-size: 0.8em;" title="<%= t 'titles.refresh_scores', 'Refresh Scores' %>"><%= image_tag 'ajax-reload.gif', :class => 'static' %><%= image_tag "ajax-reload-animated.gif", :class => 'animated', :style => 'display: none;' %></a></div>
          <div id="outer_gradebook_options_holder" style="<%= hidden if hide_dropdowns %>">
            <a href="#" id="gradebook_options" class="no-underline"><%= t(:options, "Options") %></a>
          </div>
        </div></td>
      </tr>
    </table>
  </div></td>
  <td><div id="top_content">
    <table cellspacing="0" id="assignment_names" class="gradebook_table">
      <tr>
        <td style="display: none;"></td>
        <% for assignment in @assignments %>
          <td class="outer_assignment_name assignment_name <%= assignment.special_class %> <%= "unpublished" if should_be_published?(@students, assignment, @submissions) %> <%= "published" if (!assignment || assignment.published?) %> <%= 'attendance' if assignment.attendance? %>" style="cursor: pointer;">
            <div id="outer_assignment_<%= assignment.id %>" class="assignment_<%= assignment.id %> student_header">
              <%= @renders[assignment.asset_string] ||= render(:partial => 'assignment', :object => assignment, :locals => { :course => @context, :hide_dropdowns => hide_dropdowns }) %>
            </div>
          </td>
        <% end %>
        <!--td id="scrollbar-top" style="padding: 0px;"></td-->
      </tr>
    </table>
  </div></td>
</tr><tr>
  <td><div id="left_content">
    <table cellspacing="0" id="student_names" class="gradebook_table">
      <% for student in @students %>
      <tr>
        <td class="outer_student_name student_name" style="height: 21px;">
          <div id="outer_student_<%= student.id %>" class="student_<%= student.id %> assignment_header" style="min-height: 20px;">
            <%= @renders[student.asset_string] ||= render(:partial => 'student', :object => student, :locals => { :course => @context }) %>
          </div>
        </td>
      </tr>
      <% end %>
    </table>
  </div></td> 
  <td><div id="gradebook">
    <div style="width: 100%; position: relative;" id="gradebook_inner">
    <table cellspacing="0" id="gradebook_table" style="position: relative;" class="gradebook_table">
      <tr id="table_header">
        <td id="topleft_box" style="vertical-align: bottom;" class="student_name"><div id="topleft" style="width: 100%;">
            <div style="float: right;"><a href="#" class="refresh_grades_link" style="font-size: 0.8em; <%= hidden if hide_dropdowns %>" title="<%= t(:refresh_grades, "Refresh Grades") %>"><%= image_tag 'ajax-reload.gif', :class => 'static' %><%= image_tag "ajax-reload-animated.gif", :class => 'animated', :style => 'display: none;' %></a></div>
          <div id="gradebook_options_holder">
            <a href="#" id="gradebook_options" class="no-underline"><%= t(:options, "Options") %></a>
          </div>
          <div class="clear"></div>
        </div></td>
        <% for assignment in @assignments %>
          <td class="assignment_name <%= assignment.special_class %> <%= 'attendance' if assignment.attendance? %>">
            <div id="assignment_<%= assignment.id %>" class="assignment_header assignment_<%= assignment.id %> skip">
              <%= @renders[assignment.asset_string] ||= render(:partial => 'assignment', :object => assignment, :locals => { :course => @context, :hide_dropdowns => hide_dropdowns }) %>
            </div>
            <div style="display: none;">
              <%= render :partial => "grading_box", :object => assignment %>
            </div>
          </td>
        <% end %>
      </tr>
    <% jdx = 0 %>
    <% for student in @students %>
      <% jdx = jdx + 1 %>
      <tr>
        <td class="student_name" style="height: 21px;">
          <div id="student_<%= student.id %>" class="student_header">
            <%= @renders[student.asset_string] ||= render(:partial => 'student', :object => student, :locals => { :course => @context }) %>
          </div>
        </td>
        <% @assignments.each_with_index do |assignment, idx| 
        %>
          <td class="student_assignment  <%= assignment.special_class %>">
            -
          </td>
        <% end %>
      </tr>
    <% end %>
    </table>
    </div>
  </div></td>
  </tr>
</table>
<div id="discussion_entry_blank" style="display: none;">
  <div>
    <span class="name">&nbsp;</span>
    <span class="date">&nbsp;</span>
  </div>
  <div class="message"></div>
</div>
<div id="total_tooltip" style="display: none; z-index: 11;">
  <span class="text"></span>
  <div class="tooltip_tail"></div>
</div>
<script type="text/javascript">
  <% maps = {}; @students.each_with_index{|u, i| maps["row_#{i + 1}"] = u.id }; @assignments.each_with_index{|a, i| maps["column_#{i + 1}"] = a.id; maps["hard_coded_#{i + 1}"] = a.respond_to?(:hard_coded) && a.hard_coded } %>
  var id_maps = <%= raw maps.to_json %>;
  <% if (@submissions.length + @assignments.length + @students.length) > 100 %>
  var object_data = null;//
  <% else %>
  var object_data = {pre_initialized: true};
  <% @submissions.each do |submission| %>
    object_data['submission_<%= submission.user_id %>_<%= submission.assignment_id %>'] = (<%= raw submission.to_json(:include => [:attachments,:quiz_submission,:submission_comments]) %>);
  <% end %>
  <% @assignments.each do |assignment| %>
    object_data['assignment_<%= assignment.id %>'] = (<%= raw assignment.to_json %>);
  <% end %>
  <% @students.each do |student| %>
    object_data['student_<%= student.id %>'] = (<%= raw student.to_json(:except => [:unread_inbox_items_count]) %>);
  <% end %>
  <% end %>
</script>
<% js_block do %>
  <script type="text/javascript">
    require(['jquery', 'jqueryui/progressbar'], function($, _progressBar) {
      $("#gradebook_full_content").addClass('hidden-readable');
      $("#loading_gradebook_message").show();
      $("#loading_gradebook_progressbar").progressbar({value: 5});
    });
  </script>
<% end %>
{'fraction_non_alphanumeric': 0.20907432740538076, 'fraction_numerical': 0.006307949536403709, 'mean_word_length': 3.5485655029381267, 'pattern_counts': {'":': 0, '<': 353, '<?xml version=': 0, '>': 410, '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': '2355039', 'n_tokens_mistral': 4541, 'n_tokens_neox': 4190, 'n_words': 847}