<commit_before><div>
  <div class="panel panel-primary tutor-student-list" ng-class="{fullscreen: fullscreen}">
    <div class="panel-heading clearfix">
      <div class="pull-left">
        <h4 class="panel-title">Tasks Requring Feedback</h4>
        Tasks requring feedback from students in {{studentFilter == 'myStudents' ? 'my tutorials' : 'any tutorial'}}
      </div>
      <div class="col-sm-5 text-right"></div>
        <div class="pull-right">
          <button class="btn btn-default" style="margin-left: 1ex;" ng-model="fullscreen" btn-checkbox btn-checkbox-true="1" btn-checkbox-false="0">
            <i class="fa" ng-class="{'fa-expand' : !fullscreen, 'fa-compress': fullscreen}"></i>
          </button>
        </div>
        <div class="btn-group pull-right" style="margin-left: 1ex">
          <label class="btn btn-default" ng-model="studentFilter" btn-radio="'allTasks'">
            <i class="fa fa-university" tooltip-placement="{{ fullscreen ? 'bottom' : 'top' }}" tooltip="Show tasks for all students"></i>
          </label>
          <label class="btn btn-default" ng-model="studentFilter" btn-radio="'myStudents'">
            <i class="fa fa-pencil" tooltip-placement="{{ fullscreen ? 'bottom' : 'top' }}" tooltip="Only show tasks for my students"></i>
          </label>
        </div>
        <div class="btn-group pull-right" style="margin-left: 1ex">
          <label class="btn btn-default" ng-model="statusFilter" btn-radio="'ready_to_mark'">
            <i class="fa fa-thumbs-up" tooltip-placement="{{ fullscreen ? 'bottom' : 'top' }}" tooltip="Show tasks that are ready to mark."></i>
          </label>
          <label class="btn btn-default" ng-model="statusFilter" btn-radio="'need_help'">
            <i class="fa fa-question" tooltip-placement="{{ fullscreen ? 'bottom' : 'top' }}" tooltip="Show tasks that need help."></i>
          </label>
          <label class="btn btn-default" ng-model="statusFilter" btn-radio="'discuss'">
            <i class="fa fa-comment" tooltip-placement="{{ fullscreen ? 'bottom' : 'top' }}" tooltip="Show tasks to discuss with students."></i>
          </label>
        </div>
        <form role="search" class="col-sm-4 form-horizontal pull-right">
          <input id="searchbar" class="input-md form-control" placeholder="Search..." type="search" ng-model="search" autofocus />
          <p ng-show="filteredTasks.length < allTasks.length && filteredTasks.length != 0">Showing {{filteredTasks.length}} of {{allTasks.length}} tasks requiring feedback.</p>
      </form>
    </div>
    <div class="panel-body task-list">
      <div class="help-block text-center" style="margin: 5em 0;" ng-hide="refreshed">Refresh to view tasks.</div>
      <div class="help-block text-center" style="margin: 5em 0;" ng-show="filteredTasks.length == 0 && refreshed">No tasks found.</div>
        <table ng-hide="(!refreshed) || filteredTasks.length == 0" class="table table-condensed table-hover table-pointer ">
          <thead>
            <tr>
              <th class="task-abbr">
                <a ng-click="sortOrder='project.student_id'; reverse=!reverse">
                  Student ID <i ng-show="sortOrder=='project.student_id'" class="fa fa-caret-{{reverse ? 'down' : 'up'}}"></i>
                </a>
              </th>
              <th class="name">
                <a ng-click="sortOrder='project.name'; reverse=!reverse">
                  Name <i ng-show="sortOrder=='project.name'" class="fa fa-caret-{{reverse ? 'down' : 'up'}}"></i>
                </a>
              </th>
              <th class="task">
                <a ng-click="sortOrder='definition.abbreviation'; reverse=!reverse">
                  Task <i ng-show="sortOrder=='definition.abbreviation'" class="fa fa-caret-{{reverse ? 'down' : 'up'}}"></i>
                </a>
              </th>
              <th class="status">
                <a ng-click="sortOrder='status'; reverse=!reverse">
                  Status <i ng-show="sortOrder=='status'" class="fa fa-caret-{{reverse ? 'down' : 'up'}}"></i>
                </a>
              </th>
              <th class="times_assessed">
                <a ng-click="sortOrder='times_assessed'; reverse=!reverse">
                  Times Assessed <i ng-show="sortOrder=='times_assessed'" class="fa fa-caret-{{reverse ? 'down' : 'up'}}"></i>
                </a>
              </th>
              <th class="tutorial">
                <a ng-click="sortOrder='project.tutorial.abbreviation'; reverse=!reverse">
                  <i ng-show="sortOrder=='project.tutorial.abbreviation'" class="fa fa-caret-{{reverse ? 'down' : 'up'}}"></i> Tutorial
                </a>
              </th>
            </tr>
          </thead>
          <tbody>
            <tr class="task-progress-row" ng-repeat="task in filteredTasks = (allTasks = (tasksForFeedback | showTasks:studentFilter:tutorName | statusFilter:statusFilter) | filter:searchIncProject) | orderBy:sortOrder:reverse | startFrom:(taskCurrentPage - 1) * taskPageSize | limitTo: taskPageSize" ng-class="{'info': activeTask == task}" ng-click="viewTask(task)">
              <td>{{task.project().student_id}}</td>
              <td>{{task.project().name}}</td>
              <td><span tooltip="{{task.definition.name}}">{{task.definition.abbreviation}}</span></td>
              <td class="text-center task-status {{statusClass(task.status)}}"><span><i class="{{statusIcon(task.status)}}"></i> {{statusText(task.status)}}</span></td>
              <td>{{task.times_assessed}}</td>
              <td><span tooltip-html-unsafe="<strong>{{task.project().tutorial.meeting_day}} {{task.project().tutorial.meeting_time | date: 'shortTime'}}</strong><br/> {{task.project().tutorial.meeting_location}} - {{task.project().tutorial.tutor_name}}">{{task.project().tutorial.abbreviation}}</span></td>
          </tr>
          </tbody>
      </table>
    </div>
    <provide-task-feedback
        ng-if="fullscreen"
        class="root-view"
        scope="student-project-scope"
        task="activeTask"
        unit="unit"
        assessing-unit-role="assessingUnitRole"
        unit-role="assessingUnitRole.id"
        fullscreen="fullscreen"></provide-task-feedback>
    <div class="panel-footer clearfix">
      <div class="pull-right">
        <button type="button" class="btn btn-success btn-download" ng-csv="getCSVData" lazy-load="true" csv-header="getCSVHeader()" filename="student-project-export.csv" ng-hide="filteredTasks.length < allTasks.length && filteredTasks.length == 0" target="_blank">
          <i class="fa fa-file-excel-o"></i>
          <i class="fa fa-download"></i> Export
        </button>
        <button type="button" class="btn btn-success btn-download" ng-click="refreshTasksForFeedback()">
          <i class="fa fa-refresh"></i> Refresh Tasks
        </button>
      </div>
      <pagination total-items="filteredTasks.length" ng-model="taskCurrentPage" items-per-page="taskPageSize" max-size="taskMaxSize" class="pagination-sm pull-left" boundary-links="true" rotate="false"></pagination>
    </div>
  </div>
  <provide-task-feedback
    ng-if="!fullscreen"
    scope="student-project-scope"
    task="activeTask"
    unit="unit"
    assessing-unit-role="assessingUnitRole"
    unit-role="assessingUnitRole.id"
    fullscreen="fullscreen"
    on-status-update="onStatusUpdate"></provide-task-feedback>
</div><commit_msg>FIX: remove export from task list in tutor marking view<commit_after><div>
  <div class="panel panel-primary tutor-student-list" ng-class="{fullscreen: fullscreen}">
    <div class="panel-heading clearfix">
      <div class="pull-left">
        <h4 class="panel-title">Tasks Requring Feedback</h4>
        Tasks requring feedback from students in {{studentFilter == 'myStudents' ? 'my tutorials' : 'any tutorial'}}
      </div>
      <div class="col-sm-5 text-right"></div>
        <div class="pull-right">
          <button class="btn btn-default" style="margin-left: 1ex;" ng-model="fullscreen" btn-checkbox btn-checkbox-true="1" btn-checkbox-false="0">
            <i class="fa" ng-class="{'fa-expand' : !fullscreen, 'fa-compress': fullscreen}"></i>
          </button>
        </div>
        <div class="btn-group pull-right" style="margin-left: 1ex">
          <label class="btn btn-default" ng-model="studentFilter" btn-radio="'allTasks'">
            <i class="fa fa-university" tooltip-placement="{{ fullscreen ? 'bottom' : 'top' }}" tooltip="Show tasks for all students"></i>
          </label>
          <label class="btn btn-default" ng-model="studentFilter" btn-radio="'myStudents'">
            <i class="fa fa-pencil" tooltip-placement="{{ fullscreen ? 'bottom' : 'top' }}" tooltip="Only show tasks for my students"></i>
          </label>
        </div>
        <div class="btn-group pull-right" style="margin-left: 1ex">
          <label class="btn btn-default" ng-model="statusFilter" btn-radio="'ready_to_mark'">
            <i class="fa fa-thumbs-up" tooltip-placement="{{ fullscreen ? 'bottom' : 'top' }}" tooltip="Show tasks that are ready to mark."></i>
          </label>
          <label class="btn btn-default" ng-model="statusFilter" btn-radio="'need_help'">
            <i class="fa fa-question" tooltip-placement="{{ fullscreen ? 'bottom' : 'top' }}" tooltip="Show tasks that need help."></i>
          </label>
          <label class="btn btn-default" ng-model="statusFilter" btn-radio="'discuss'">
            <i class="fa fa-comment" tooltip-placement="{{ fullscreen ? 'bottom' : 'top' }}" tooltip="Show tasks to discuss with students."></i>
          </label>
        </div>
        <form role="search" class="col-sm-4 form-horizontal pull-right">
          <input id="searchbar" class="input-md form-control" placeholder="Search..." type="search" ng-model="search" autofocus />
          <p ng-show="filteredTasks.length < allTasks.length && filteredTasks.length != 0">Showing {{filteredTasks.length}} of {{allTasks.length}} tasks requiring feedback.</p>
      </form>
    </div>
    <div class="panel-body task-list">
      <div class="help-block text-center" style="margin: 5em 0;" ng-hide="refreshed">Refresh to view tasks.</div>
      <div class="help-block text-center" style="margin: 5em 0;" ng-show="filteredTasks.length == 0 && refreshed">No tasks found.</div>
        <table ng-hide="(!refreshed) || filteredTasks.length == 0" class="table table-condensed table-hover table-pointer ">
          <thead>
            <tr>
              <th class="task-abbr">
                <a ng-click="sortOrder='project.student_id'; reverse=!reverse">
                  Student ID <i ng-show="sortOrder=='project.student_id'" class="fa fa-caret-{{reverse ? 'down' : 'up'}}"></i>
                </a>
              </th>
              <th class="name">
                <a ng-click="sortOrder='project.name'; reverse=!reverse">
                  Name <i ng-show="sortOrder=='project.name'" class="fa fa-caret-{{reverse ? 'down' : 'up'}}"></i>
                </a>
              </th>
              <th class="task">
                <a ng-click="sortOrder='definition.abbreviation'; reverse=!reverse">
                  Task <i ng-show="sortOrder=='definition.abbreviation'" class="fa fa-caret-{{reverse ? 'down' : 'up'}}"></i>
                </a>
              </th>
              <th class="status">
                <a ng-click="sortOrder='status'; reverse=!reverse">
                  Status <i ng-show="sortOrder=='status'" class="fa fa-caret-{{reverse ? 'down' : 'up'}}"></i>
                </a>
              </th>
              <th class="times_assessed">
                <a ng-click="sortOrder='times_assessed'; reverse=!reverse">
                  Times Assessed <i ng-show="sortOrder=='times_assessed'" class="fa fa-caret-{{reverse ? 'down' : 'up'}}"></i>
                </a>
              </th>
              <th class="tutorial">
                <a ng-click="sortOrder='project.tutorial.abbreviation'; reverse=!reverse">
                  <i ng-show="sortOrder=='project.tutorial.abbreviation'" class="fa fa-caret-{{reverse ? 'down' : 'up'}}"></i> Tutorial
                </a>
              </th>
            </tr>
          </thead>
          <tbody>
            <tr class="task-progress-row" ng-repeat="task in filteredTasks = (allTasks = (tasksForFeedback | showTasks:studentFilter:tutorName | statusFilter:statusFilter) | filter:searchIncProject) | orderBy:sortOrder:reverse | startFrom:(taskCurrentPage - 1) * taskPageSize | limitTo: taskPageSize" ng-class="{'info': activeTask == task}" ng-click="viewTask(task)">
              <td>{{task.project().student_id}}</td>
              <td>{{task.project().name}}</td>
              <td><span tooltip="{{task.definition.name}}">{{task.definition.abbreviation}}</span></td>
              <td class="text-center task-status {{statusClass(task.status)}}"><span><i class="{{statusIcon(task.status)}}"></i> {{statusText(task.status)}}</span></td>
              <td>{{task.times_assessed}}</td>
              <td><span tooltip-html-unsafe="<strong>{{task.project().tutorial.meeting_day}} {{task.project().tutorial.meeting_time | date: 'shortTime'}}</strong><br/> {{task.project().tutorial.meeting_location}} - {{task.project().tutorial.tutor_name}}">{{task.project().tutorial.abbreviation}}</span></td>
          </tr>
          </tbody>
      </table>
    </div>
    <provide-task-feedback
        ng-if="fullscreen"
        class="root-view"
        scope="student-project-scope"
        task="activeTask"
        unit="unit"
        assessing-unit-role="assessingUnitRole"
        unit-role="assessingUnitRole.id"
        fullscreen="fullscreen"></provide-task-feedback>
    <div class="panel-footer clearfix">
      <div class="pull-right">
        <button type="button" class="btn btn-success btn-download" ng-click="refreshTasksForFeedback()">
          <i class="fa fa-refresh"></i> Refresh Tasks
        </button>
      </div>
      <pagination total-items="filteredTasks.length" ng-model="taskCurrentPage" items-per-page="taskPageSize" max-size="taskMaxSize" class="pagination-sm pull-left" boundary-links="true" rotate="false"></pagination>
    </div>
  </div>
  <provide-task-feedback
    ng-if="!fullscreen"
    scope="student-project-scope"
    task="activeTask"
    unit="unit"
    assessing-unit-role="assessingUnitRole"
    unit-role="assessingUnitRole.id"
    fullscreen="fullscreen"
    on-status-update="onStatusUpdate"></provide-task-feedback>
</div>
{'fraction_non_alphanumeric': 0.1813209637219607, 'fraction_numerical': 0.002423151481584049, 'mean_word_length': 2.779434850863422, 'pattern_counts': {'":': 0, '<': 284, '<?xml version=': 0, '>': 281, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5712002', 'n_tokens_mistral': 4475, 'n_tokens_neox': 4259, 'n_words': 822}