settings_graders.html 7.35 KB
Newer Older
1
<%inherit file="base.html" />
Mark Hoeber committed
2
<%def name="online_help_token()"><% return "grading" %></%def>
David Baumgold committed
3
<%block name="title">${_("Grading Settings")}</%block>
4
<%block name="bodyclass">is-signedin course grading view-settings</%block>
5 6 7

<%namespace name='static' file='static_content.html'/>
<%!
8
  import json
9 10
  from contentstore import utils
  from django.utils.translation import ugettext as _
11
  from models.settings.encoder import CourseSettingsEncoder
12 13 14
  from openedx.core.djangolib.js_utils import (
      dump_js_escaped_json, js_escaped_string
  )
15 16
%>

17 18 19 20 21 22 23 24
<%block name="header_extras">
% for template_name in ["course_grade_policy"]:
  <script type="text/template" id="${template_name}-tpl">
    <%static:include path="js/${template_name}.underscore" />
  </script>
% endfor
</%block>

25 26
<%block name="jsextra">
  <link rel="stylesheet" type="text/css" href="${static.url('js/vendor/timepicker/jquery.timepicker.css')}" />
27 28 29
</%block>
<%block name="requirejs">
    require(["js/factories/settings_graders"], function(SettingsGradersFactory) {
30 31 32 33 34
        SettingsGradersFactory(
            _.extend(${dump_js_escaped_json(course_details, cls=CourseSettingsEncoder) | n},
                {is_credit_course: ${is_credit_course | n, dump_js_escaped_json}}),
            "${grading_url | n, js_escaped_string}"
        );
35 36 37 38
    });
</%block>

<%block name="content">
39
<div class="wrapper-mast wrapper">
40
  <header class="mast has-subtitle">
Brian Talbot committed
41
    <h1 class="page-header">
David Baumgold committed
42 43
      <small class="subtitle">${_("Settings")}</small>
      <span class="sr">&gt; </span>${_("Grading")}
Brian Talbot committed
44
    </h1>
45 46
  </header>
</div>
47 48 49 50

<div class="wrapper-content wrapper">
  <section class="content">
    <article class="content-primary" role="main">
51
      <form id="settings_details" class="settings-grading" method="post" action="">
52 53
        <section class="group-settings grade-range">
          <header>
David Baumgold committed
54 55
            <h2 class="title-2">${_("Overall Grade Range")}</h2>
            <span class="tip">${_("Your overall grading scale for student final grades")}</span>
56 57 58
          </header>

          <ol class="list-input">
59
            <li class="field" id="field-course-grading-range">
60
              <div class="grade-controls course-grading-range well">
61
                <a href="#" class="new-grade-button"><span class="icon fa fa-plus"></span></a>
62
                <div class="grade-slider" dir="ltr">
63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
                  <div class="grade-bar">
                    <ol class="increments">
                      <li class="increment-0">0</li>
                      <li class="increment-10">10</li>
                      <li class="increment-20">20</li>
                      <li class="increment-30">30</li>
                      <li class="increment-40">40</li>
                      <li class="increment-50">50</li>
                      <li class="increment-60">60</li>
                      <li class="increment-70">70</li>
                      <li class="increment-80">80</li>
                      <li class="increment-90">90</li>
                      <li class="increment-100">100</li>
                    </ol>
                    <ol class="grades">
                    </ol>
79 80 81
                  </div>
                </div>
              </div>
82 83 84 85 86
            </li>
          </ol>
        </section>
        <hr class="divide" />

87 88 89
        % if settings.FEATURES.get("ENABLE_CREDIT_ELIGIBILITY", False) and is_credit_course:
          <section class="group-settings grade-rules">
            <header>
90 91
              <h2 class="title-2">${_("Credit Eligibility")}</h2>
              <span class="tip">${_("Settings for course credit eligibility")}</span>
92 93 94 95
            </header>

            <ol class="list-input">
              <li class="field text" id="field-course-minimum_grade_credit">
96
                <label for="course-minimum_grade_credit">${_("Minimum Credit-Eligible Grade:")}</label>
97 98
                <input type="text" class="short time input-minimum-grade" id="course-minimum_grade_credit" value="0" placeholder="80" autocomplete="off" aria-describedby="minimum_grade_description"/>
                <span class="minimum-grade-percentage-sign">%</span>
99
                <span class="tip tip-inline" id="minimum_grade_description">${_("Must be greater than or equal to the course passing grade")}</span>
100 101 102 103 104 105
              </li>
            </ol>
          </section>
          <hr class="divide" />
        % endif

106
        <section class="group-settings grade-rules">
107
          <header>
David Baumgold committed
108 109
            <h2 class="title-2">${_("Grading Rules &amp; Policies")}</h2>
            <span class="tip">${_("Deadlines, requirements, and logistics around grading student work")}</span>
110 111 112
          </header>

          <ol class="list-input">
113
            <li class="field text" id="field-course-grading-graceperiod">
David Baumgold committed
114
              <label for="course-grading-graceperiod">${_("Grace Period on Deadline:")}</label>
115
              <input type="text" class="short time" id="course-grading-graceperiod" value="00:00" placeholder="HH:MM" autocomplete="off" />
David Baumgold committed
116
              <span class="tip tip-inline">${_("Leeway on due dates")}</span>
117 118 119 120 121
            </li>
          </ol>
        </section>
        <hr class="divide" />

122
        <section class="group-settings assignment-types">
123
          <header>
David Baumgold committed
124 125
            <h2 class="title-2">${_("Assignment Types")}</h2>
            <span class="tip">${_("Categories and labels for any exercises that are gradable")}</span>
126 127
          </header>

128
          <ol class="list-input course-grading-assignment-list enum">
129 130

          </ol>
131 132 133

          <div class="actions">
            <a href="#" class="new-button new-course-grading-item add-grading-data">
134
              <i class="icon fa fa-plus"></i> ${_("New Assignment Type")}
135
            </a>
136
          </div>
137 138 139 140
        </section>
      </form>
    </article>

141
    <aside class="content-supplementary" role="complementary">
142
      <div class="bit">
143 144 145 146 147
        <h3 class="title-3">${_("What can I do on this page?")}</h3>
        <p>${_("You can use the slider under Overall Grade Range to specify whether your course is pass/fail or graded by letter, and to establish the thresholds for each grade.")}</p>

        <p>${_("You can specify whether your course offers students a grace period for late assignments.")}</p>
      	<p>${_("You can also create assignment types, such as homework, labs, quizzes, and exams, and specify how much of a student's grade each assignment type is worth.")}</p>
148

149 150 151
      </div>

      <div class="bit">
152
      % if context_course:
153
        <%
154 155 156
          detailed_settings_url = utils.reverse_course_url('settings_handler', context_course.id)
          course_team_url = utils.reverse_course_url('course_team_handler', context_course.id)
          advanced_settings_url = utils.reverse_course_url('advanced_settings_handler', context_course.id)
157
        %>
David Baumgold committed
158
        <h3 class="title-3">${_("Other Course Settings")}</h3>
159
        <nav class="nav-related" aria-label="${_('Other Course Settings')}">
160
          <ul>
161
            <li class="nav-item"><a href="${detailed_settings_url}">${_("Details &amp; Schedule")}</a></li>
162
            <li class="nav-item"><a href="${course_team_url}">${_("Course Team")}</a></li>
163
            <li class="nav-item"><a href="${utils.reverse_course_url('group_configurations_list_handler', context_course.id)}">${_("Group Configurations")}</a></li>
164
            <li class="nav-item"><a href="${advanced_settings_url}">${_("Advanced Settings")}</a></li>
165 166
          </ul>
        </nav>
167
      % endif
168 169 170 171
      </div>
    </aside>
  </section>
</div>
172
</%block>