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

<%namespace name='static' file='static_content.html'/>
<%!
7 8
  from contentstore import utils
  from django.utils.translation import ugettext as _
cahrens committed
9
  from xmodule.modulestore.django import loc_mapper
10 11
%>

12 13 14 15 16 17 18 19
<%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>

20 21 22
<%block name="jsextra">
  <link rel="stylesheet" type="text/css" href="${static.url('js/vendor/timepicker/jquery.timepicker.css')}" />
  <script type="text/javascript">
23 24 25 26 27 28
require(["domReady!", "jquery", "js/views/settings/grading", "js/models/settings/course_grading_policy"], function(doc, $, GradingView, CourseGradingPolicyModel) {
    $("form :input").focus(function() {
      $("label[for='" + this.id + "']").addClass("is-focused");
    }).blur(function() {
      $("label").removeClass("is-focused");
    });
29

Don Mitchell committed
30 31
    var model = new CourseGradingPolicyModel(${course_details|n},{parse:true});
    model.urlRoot = '${grading_url}';
32 33
    var editor = new GradingView({
        el: $('.settings-grading'),
Don Mitchell committed
34
        model : model
35
    });
36

37 38
    editor.render();
});
39 40 41 42
  </script>
</%block>

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

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

          <ol class="list-input">
63
            <li class="field" id="field-course-grading-range">
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82
              <div class="grade-controls course-grading-range well">
                <a href="#" class="new-grade-button"><span class="plus-icon"></span></a>
                <div class="grade-slider">
                  <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>
83 84 85
                  </div>
                </div>
              </div>
86 87 88 89 90 91
            </li>
          </ol>
        </section>

        <hr class="divide" />

92
        <section class="group-settings grade-rules">
93
          <header>
David Baumgold committed
94 95
            <h2 class="title-2">${_("Grading Rules &amp; Policies")}</h2>
            <span class="tip">${_("Deadlines, requirements, and logistics around grading student work")}</span>
96 97 98
          </header>

          <ol class="list-input">
99
            <li class="field text" id="field-course-grading-graceperiod">
David Baumgold committed
100
              <label for="course-grading-graceperiod">${_("Grace Period on Deadline:")}</label>
101
              <input type="text" class="short time" id="course-grading-graceperiod" value="00:00" placeholder="HH:MM" autocomplete="off" />
David Baumgold committed
102
              <span class="tip tip-inline">${_("Leeway on due dates")}</span>
103 104 105 106 107 108
            </li>
          </ol>
        </section>

        <hr class="divide" />

109
        <section class="group-settings assignment-types">
110
          <header>
David Baumgold committed
111 112
            <h2 class="title-2">${_("Assignment Types")}</h2>
            <span class="tip">${_("Categories and labels for any exercises that are gradable")}</span>
113 114
          </header>

115
          <ol class="list-input course-grading-assignment-list enum">
116 117

          </ol>
118 119 120

          <div class="actions">
            <a href="#" class="new-button new-course-grading-item add-grading-data">
121
              <i class="icon-plus"></i> ${_("New Assignment Type")}
122
            </a>
123
          </div>
124 125 126 127 128 129
        </section>
      </form>
    </article>

    <aside class="content-supplementary" role="complimentary">
      <div class="bit">
130 131 132 133 134
        <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>
135

136 137 138
      </div>

      <div class="bit">
139
      % if context_course:
140
        <%
Don Mitchell committed
141
          course_team_url = course_locator.url_reverse('course_team/')
142 143
          advanced_settings_url = course_locator.url_reverse('settings/advanced/')
          detailed_settings_url = course_locator.url_reverse('settings/details/')
144
        %>
David Baumgold committed
145
        <h3 class="title-3">${_("Other Course Settings")}</h3>
146 147
        <nav class="nav-related">
          <ul>
148
            <li class="nav-item"><a href="${detailed_settings_url}">${_("Details &amp; Schedule")}</a></li>
149
            <li class="nav-item"><a href="${course_team_url}">${_("Course Team")}</a></li>
150
            <li class="nav-item"><a href="${advanced_settings_url}">${_("Advanced Settings")}</a></li>
151 152
          </ul>
        </nav>
153
      % endif
154 155 156 157
      </div>
    </aside>
  </section>
</div>
158
</%block>