<commit_before><div>
  <form role="search" class="pull-right form-horizontal" style="margin:-60px 0 20px 0;">
      <input id="searchbar" class="input-md form-control" placeholder="Search students, tutors..." type="search" ng-model="search" typeahead="text for text in unitService.unitTypeAheadData(unit) | filter:$viewValue | limitTo:8" typeahead-wait-ms="200" autofocus />
      <p class="help-block" ng-show="filteredStudents.length < allStudents.length && filteredStudents.length != 0">Showing {{filteredStudents.length}} of {{unit.students.length}} students enrolled.</p>
      <p class="help-block" ng-show="filteredStudents.length < allStudents.length && filteredStudents.length == 0">No students found.</p>
  </form>
  <div class="table-responsive">
      <table class="table table-condensed table-hover">
        <thead>
          <tr>
            <th><a href="" ng-click="sortOrder='student_id'; reverse=!reverse">Student ID</a></th>
            <th><a href="" ng-click="sortOrder='name'; reverse=!reverse">Name</a></th>
            <th><a href="" ng-click="sortOrder='target_grade'; reverse=!reverse">Grade</a></th>
            <th>Stats</th>
            <th><a href="" ng-click="sortOrder='progress_sort'; reverse=!reverse">Progress</a></th>
            <th><a href="" ng-click="sortOrder='portfolio_status'; reverse=!reverse">Portfolio</a></th>
            <th><a href="" ng-click="sortOrder='tutorial.abbreviation'; reverse=!reverse">Tutorial</a></th>
            <th>Actions</th>
          </tr>
        </thead>
        <tbody>
          <tr class="task-progress-row" ng-repeat="student in filteredStudents = (allStudents = (unit.students | showStudents:studentFilter:tutorName) | filter:search) | orderBy:sortOrder:reverse | startFrom:(currentPage - 1) * pageSize | limitTo: pageSize" >
            <td class="task-progress" ng-click="student.open = !student.open"><a href="#/projects/{{student.project_id}}?unitRole={{assessingUnitRole.id}}">{{student.student_id}}</a></td>
                <td ng-click="student.open = !student.open">{{student.name}}</td>
                <td ng-click="student.open = !student.open">{{grades[student.target_grade]}}</td>
            <td ng-click="student.open = !student.open" class="task-progress-bar">
              <accordion ng-if="accordionReady" class="task-progress-accordion" ng-click="student.open = !student.open">
                <accordion-group is-open="student.open">
                  <accordion-heading>
                    <progress class="task-progress" animate="false">
                      <bar ng-repeat="bar in student.task_stats | filter:barLargerZero track by $index" value="bar.value" type="{{bar.type}}">
                        <span ng-hide="bar.value < 10">{{bar.value}}%</span>
                      </bar>
                    </progress>
                  </accordion-heading>
                  <div ng-style="{ 'min-height': '{{accordionHeight}}px' }" >
                      <student-unit-tasks ng-if="student.open" student="student" student-project-id="student.project_id" unit="unit" assessing-unit-role="assessingUnitRole" project="student.project"></student-unit-tasks>
                    </div>
                </accordion-group>
            </accordion>
          </td>
          <td ng-click="student.open = !student.open">
            <progress class="progress-progress-bar" animate="false">
              <bar ng-repeat="bar in student.progress_stats | filter:barLargerZero track by $index" value="bar.value" type="{{bar.type}}">
              </bar>
            </progress>
          </td>
          <td><span style="margin-left: 10px" class="fa {{student.has_portfolio ? 'fa-circle' : student.compile_portfolio ? 'fa-dot-circle-o' : 'fa-circle-o'}} fa-2x"></span></td>
          <td>
            <span tooltip-html-unsafe="<strong>{{student.tutorial.meeting_day}} {{student.tutorial.meeting_time | date: 'shortTime'}}</strong><br/> {{student.tutorial.meeting_location}} - {{student.tutorial.tutor_name}}"> 
              <div class="btn-group" dropdown is-open="status.isopen">
                <button type="button" class="btn btn-default dropdown-toggle">
                  {{student.tutorial ? student.tutorial.abbreviation : 'None'}} <span class="caret"></span>
                </button>
                <ul class="dropdown-menu" role="menu">
                  <li><a ng-click="switchToLab(student, nil); status.isopen = false">None</a></li>
                  <li ng-repeat="tutorial in unit.tutorials | orderBy:'abbreviation'"><a ng-click="switchToLab(student, tutorial); status.isopen = false" ng-hide="tutorial == student.tutorial">{{tutorial.abbreviation}}</a></li>
                </ul>
              </div>
            </span>
          </td>
          <td><button type="button" class="btn btn-info" ng-click="transitionWeekEnd(student)"><span class="fa fa-comment"></span></button></td>
        </tr>
        </tbody>
    </table>
    <div class="pull-right">
      <button type="button" class="btn btn-success" ng-csv="getCSVData" lazy-load="true" csv-header="getCSVHeader()" filename="student-project-export.csv">Export</button>
      <button type="button" class="btn btn-success" ng-click="showEnrolModal()">Enrol Student</button>
    </div>
    <pagination total-items="filteredStudents.length" ng-model="currentPage" items-per-page="pageSize" max-size="maxSize" class="pagination-sm pull-left" boundary-links="true" rotate="false"></pagination>
  </div>
</div>
<commit_msg>add max pct copy to tutor list<commit_after><div>
  <form role="search" class="pull-right form-horizontal" style="margin:-60px 0 20px 0;">
      <input id="searchbar" class="input-md form-control" placeholder="Search students, tutors..." type="search" ng-model="search" typeahead="text for text in unitService.unitTypeAheadData(unit) | filter:$viewValue | limitTo:8" typeahead-wait-ms="200" autofocus />
      <p class="help-block" ng-show="filteredStudents.length < allStudents.length && filteredStudents.length != 0">Showing {{filteredStudents.length}} of {{unit.students.length}} students enrolled.</p>
      <p class="help-block" ng-show="filteredStudents.length < allStudents.length && filteredStudents.length == 0">No students found.</p>
  </form>
  <div class="table-responsive">
      <table class="table table-condensed table-hover">
        <thead>
          <tr>
            <th><a href="" ng-click="sortOrder='student_id'; reverse=!reverse">Student ID</a></th>
            <th><a href="" ng-click="sortOrder='name'; reverse=!reverse">Name</a></th>
            <th><a href="" ng-click="sortOrder='target_grade'; reverse=!reverse">Grade</a></th>
            <th>Stats</th>
            <th><a href="" ng-click="sortOrder='progress_sort'; reverse=!reverse">Progress</a></th>
            <th><a href="" ng-click="sortOrder='portfolio_status'; reverse=!reverse">Portfolio</a></th>
            <th><a href="" ng-click="sortOrder='max_pct_copy'; reverse=!reverse">Plagiarism</a></th>
            <th><a href="" ng-click="sortOrder='tutorial.abbreviation'; reverse=!reverse">Tutorial</a></th>
            <th>Actions</th>
          </tr>
        </thead>
        <tbody>
          <tr class="task-progress-row" ng-repeat="student in filteredStudents = (allStudents = (unit.students | showStudents:studentFilter:tutorName) | filter:search) | orderBy:sortOrder:reverse | startFrom:(currentPage - 1) * pageSize | limitTo: pageSize" >
            <td class="task-progress" ng-click="student.open = !student.open"><a href="#/projects/{{student.project_id}}?unitRole={{assessingUnitRole.id}}">{{student.student_id}}</a></td>
                <td ng-click="student.open = !student.open">{{student.name}}</td>
                <td ng-click="student.open = !student.open">{{grades[student.target_grade]}}</td>
            <td ng-click="student.open = !student.open" class="task-progress-bar">
              <accordion ng-if="accordionReady" class="task-progress-accordion" ng-click="student.open = !student.open">
                <accordion-group is-open="student.open">
                  <accordion-heading>
                    <progress class="task-progress" animate="false">
                      <bar ng-repeat="bar in student.task_stats | filter:barLargerZero track by $index" value="bar.value" type="{{bar.type}}">
                        <span ng-hide="bar.value < 10">{{bar.value}}%</span>
                      </bar>
                    </progress>
                  </accordion-heading>
                  <div ng-style="{ 'min-height': '{{accordionHeight}}px' }" >
                      <student-unit-tasks ng-if="student.open" student="student" student-project-id="student.project_id" unit="unit" assessing-unit-role="assessingUnitRole" project="student.project"></student-unit-tasks>
                    </div>
                </accordion-group>
            </accordion>
          </td>
          <td ng-click="student.open = !student.open">
            <progress class="progress-progress-bar" animate="false">
              <bar ng-repeat="bar in student.progress_stats | filter:barLargerZero track by $index" value="bar.value" type="{{bar.type}}">
              </bar>
            </progress>
          </td>
          <td><span style="margin-left: 10px" class="fa {{student.has_portfolio ? 'fa-circle' : student.compile_portfolio ? 'fa-dot-circle-o' : 'fa-circle-o'}} fa-2x"></span></td>
          <td>{{student.max_pct_copy}}%</td>
          <td>
            <span tooltip-html-unsafe="<strong>{{student.tutorial.meeting_day}} {{student.tutorial.meeting_time | date: 'shortTime'}}</strong><br/> {{student.tutorial.meeting_location}} - {{student.tutorial.tutor_name}}"> 
              <div class="btn-group" dropdown is-open="status.isopen">
                <button type="button" class="btn btn-default dropdown-toggle">
                  {{student.tutorial ? student.tutorial.abbreviation : 'None'}} <span class="caret"></span>
                </button>
                <ul class="dropdown-menu" role="menu">
                  <li><a ng-click="switchToLab(student, nil); status.isopen = false">None</a></li>
                  <li ng-repeat="tutorial in unit.tutorials | orderBy:'abbreviation'"><a ng-click="switchToLab(student, tutorial); status.isopen = false" ng-hide="tutorial == student.tutorial">{{tutorial.abbreviation}}</a></li>
                </ul>
              </div>
            </span>
          </td>
          <td><button type="button" class="btn btn-info" ng-click="transitionWeekEnd(student)"><span class="fa fa-comment"></span></button></td>
        </tr>
        </tbody>
    </table>
    <div class="pull-right">
      <button type="button" class="btn btn-success" ng-csv="getCSVData" lazy-load="true" csv-header="getCSVHeader()" filename="student-project-export.csv">Export</button>
      <button type="button" class="btn btn-success" ng-click="showEnrolModal()">Enrol Student</button>
    </div>
    <pagination total-items="filteredStudents.length" ng-model="currentPage" items-per-page="pageSize" max-size="maxSize" class="pagination-sm pull-left" boundary-links="true" rotate="false"></pagination>
  </div>
</div>

{'fraction_non_alphanumeric': 0.17982574328572712, 'fraction_numerical': 0.0032336297493936943, 'mean_word_length': 2.980693600286021, 'pattern_counts': {'":': 0, '<': 259, '<?xml version=': 0, '>': 253, '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': '3107287', 'n_tokens_mistral': 3480, 'n_tokens_neox': 3255, 'n_words': 551}