Newer
Older
{% extends 'base' %}
{% block media %} {# head -> css, js #}
{{ HTML.style('static/css/student/subject.css')|raw }}
{% macro event(event_name, event_date, event_ball, event_max_ball) %}
<tr class="table_content">
<td>{{ event_name }}</td>
<td>{{ event_date }}</td>
<td>{{ event_ball }} / {{ event_max_ball }}</td>
</tr>
{% endmacro %}
{% block title %}{{ Discipline.SubjectName|default('УКД') }}{% endblock %}
{% block main_top_title %}Учебная карта дисциплины{% endblock %}
{% block main_content_classes %}sidePadding{% endblock %}
<div class="content">{{ Rus[Discipline.Type] |default('—') }}</div>
</div>
<div class="clearFix">
<div class="label">Семестр:</div>
<div class="content">
{{ Semester.Season == 'autumn' ? 'Осенний' : 'Весенний' }} семестр
{{ Semester.Year }}/{{ Semester.Year + 1 }} учебного года
<div class="label">Преподаватели:</div>
<div class="content">
{% for Teacher in Teachers %}
<div>{{ Teacher.Name }}</div>
{% else %}
—
</div>
<div class="clearFix">
<div class="label">Учебная нагрузка:</div>
<div class="content">
{% set FirstConjuction = ',' %}
{% set SecondConjuction = ' и' %}
{% elseif (Discipline.Practice) or (Discipline.Labs) %}
{% if Discipline.Lectures %}
{% set SecondConjuction = ' и' %}
{% endif %}
{% endif %}
{% set Hours = [
{ Type: 'Lectures', Text: 'теории' ~ FirstConjuction },
{ Type: 'Practice', Text: 'практики' ~ SecondConjuction },
{ Type: 'Labs', Text: 'лабораторных занятий' }
] %}
{% for Hour in Hours if Discipline[Hour.Type] %}
{{ Discipline[Hour.Type] }}
{{ Rus.NumEnding(Discipline[Hour.Type], ['час', 'часа', 'часов']) }}
{{ Hour.Text }}
{% endfor %}
{% set SemesterRate = 0 %}
{% set SemesterMaxRate = 0 %}
<div class="blockMargin">
{% for Module in DisciplineMap.Modules %}
{% set ModuleRate = 0 %}
{% set ModuleMaxRate = 0 %}
{{ Module.Title|default('Модуль ' ~ loop.index) }}
{% for SubmoduleID in Module.Submodules %}
{% set Submodule = Submodules[SubmoduleID] %}
<div class="submoduleTitle">
{{ Submodule.Title|default('Мероприятие ' ~ loop.index) }}
</div>
{{ +Submodule.Rate }} / {{ +Submodule.MaxRate }}
{% set ModuleRate = ModuleRate + Submodule.Rate %}
{{ Submodule.MaxRate ? (Submodule.Rate * 100) // Submodule.MaxRate ~ ' %' : '—' }}
{% set ModuleMaxRate = ModuleMaxRate + Submodule.MaxRate %}
{{ Submodule.Date ? Submodule.Date|date('d.m.Y') : '—' }}
Итого за модуль: {{ ModuleRate }} / {{ ModuleMaxRate }}
{% set SemesterRate = SemesterRate + ModuleRate %}
{% set SemesterMaxRate = SemesterMaxRate + ModuleMaxRate %}
</div>
{% endif %}
{% endfor %}
{% endfor %}
</div>
<h3 class="blockTitle">Допуск к экзамену</h3>
<div class="blockMargin">
{% set Admission = 38 - (SemesterRate + DisciplineMap.Extra.Rate) %}
Для допуска к экзамену Вам необходимо получить еще {{ Admission }} {{ Rus.NumEnding(Admission, ['балл', 'балла', 'баллов']) }}.
{% else %}
Поздравляем, заработанных Вами баллов достаточно для получения допуска к экзамену!
{% endif %}
{% if ExtraRate %}
<div class="blockMargin">
<div class="submoduleBlock topBorder">
<div class="submoduleTitle">Добор баллов</div>
<div class="submoduleRate">{{ DisciplineMap.Extra.Rate }}</div>
<div class="submodulePercent"> </div>
Промежуточный итог: {{ SemesterRate + DisciplineMap.ExtraRate }} / {{ SemesterMaxRate }}
<h3 class="blockTitle">Экзамен</h3>
<div class="blockMargin">
<div class="tableTitle Extra">
Экзамен по курсу «{{ Discipline.SubjectName|default('—') }}»
{% if Bonus is not empty %}
<div class="submoduleBlock">
<div class="submoduleTitle">Бонусные баллы</div>
<div class="submoduleRate">
{% if Bonus.MaxRate == 0 %} 0 {% else %} {{ (Bonus.Rate * 100) // Bonus.MaxRate }} %
{% endif %}
</div>
<div class="submoduleDate">
{% if Bonus.Date != 0 %}
{{ Bonus.Date|date('d.m.Y') }}
{% if DisciplineMap.Exam is not empty %}
<div class="submoduleTitle">Экзамен по курсу «{{ Discipline.SubjectName|default('—') }}»</div>
<div class="submoduleRate">{{ DisciplineMap.Exam.Rate }} / {{ DisciplineMap.Exam.MaxRate }}</div>
<div class="submodulePercent">
{% if DisciplineMap.Exam.MaxRate == 0 %} 0 {% else %} {{ (DisciplineMap.Exam.Rate * 100) // DisciplineMap.Exam.MaxRate }} % {% endif %}
{% if DisciplineMap.Exam.Date != 0 %}
{{ DisciplineMap.Exam.Date|date('d.m.Y') }}
{% endif %}
</div>
</div>
{% endif %}
{% set Rating = SemesterRate + DisciplineMap.Extra.Rate + Bonus.Rate + DisciplineMap.Exam.Rate %}
<h3 class="blockTitle">Зачет</h3>
<div class="blockMargin">
{% set Admission = 60 - (SemesterRate + DisciplineMap.Extra.Rate) %}
{% if Admission > 0 %}
Для получения зачета необходимо набрать ещё {{ Admission }} {{ Rus.NumEnding(Admission, ['балл', 'балла', 'баллов']) }}.
{% else %}
Поздравляем, Вы получили зачет по курсу «{{ Discipline.SubjectName|default('—') }}»!
<div class="tableTitle Extra">
Зачет по курсу «{{ Discipline.SubjectName|default('—') }}»
</div>
{% if ExtraRate or not Admission %}
<div class="blockMargin">
<div class="submoduleBlock topBorder">
<div class="submoduleTitle">Добор баллов</div>
<div class="submoduleRate">{{ DisciplineMap.Extra.Rate }}</div>
<div class="submodulePercent"> </div>
</div>
</div>
{% endif %}
<div class="submoduleBlock">
<div class="submoduleTitle">Бонусные баллы</div>
<div class="submoduleRate">
</div>
<div class="submodulePercent">
{% if Bonus.MaxRate == 0 %} 0 {% else %} {{ (Bonus.Rate * 100) // Bonus.MaxRate }} %
{% endif %}
</div>
<div class="submoduleDate">
{% if Bonus.Date != 0 %}
{{ Bonus.Date|date('d.m.Y') }}
{% endif %}
</div>
</div>
{% endif %}
{% endif %}
</div>
{% set Rating = SemesterRate + DisciplineMap.Extra.Rate + Bonus.Rate %}