{% extends 'base' %} {% block media %} {# head -> css, js #} {{ HTML.style('media/less/student/subject.css')|raw }} {% endblock %} {% 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 %} {% import _self as map %} {% block title %}{{ Discipline.subjectName|default('УКД') }}{% endblock %} {% block main_top_title %}Учебная карта дисциплины{% endblock %} {% block main_content_classes %}sidePadding{% endblock %} {% block main_content %} <div class="pageTitle"> <h2>{{ Discipline.subjectName|default('---') }}</h2> </div> <div class="disciplineInfo first"> <div class="clearFix"> <div class="label">Рабочий план дисциплины:</div> {% if Discipline.DWPLink %} <div class="content">{{ Discipline.DWPLink|default('-- ссылка на рабочий план дисциплины --') }}</div> {% endif %} </div> <div class="clearFix"> <div class="label">Форма аттестации:</div> <div class="content">{{ Discipline.control|default('---') }}</div> </div> <div class="clearFix"> <div class="label">Семестр:</div> <div class="content"> {{ Discipline.semesterNum }} семестр {{ Discipline.semesterYear }}/{{ Discipline.semesterYear + 1 }} учебного года </div> </div> </div> <div class="disciplineInfo last"> {% if Discipline.depName %} <div class="clearFix"> <div class="label">Кафедра:</div> <div class="content">{{ Discipline.depName }}</div> </div> {% endif %} <div class="clearFix"> <div class="label">Преподаватели:</div> <div class="content"> {% for teacher in Discipline.teachers %} {{ teacher }}{% if not loop.last %},{% endif %} {% endfor %} </div> </div> <div class="clearFix"> <div class="label">Учебная нагрузка:</div> <div class="content"> {% if (Discipline.practice) and (Discipline.labs) %} {% set FirstConjuction = ',' %} {% set SecondConjuction = ' и' %} {% elseif (Discipline.practice) or (Discipline.labs) %} {% if Discipline.lectures %} {% set FirstConjuction = ' и' %} {% elseif Discipline.labs %} {% set SecondConjuction = ' и' %} {% endif %} {% endif %} {% if Discipline.lectures %} {{ Discipline.lectures }} {{ Rus.NumEnding(Discipline.lectures, ['час', 'часа', 'часов']) }} теории{{ FirstConjuction }} {% endif %} {% if Discipline.practice %} {{ Discipline.practice }} {{ Rus.NumEnding(Discipline.practice, ['час', 'часа', 'часов']) }} практики{{ SecondConjuction }} {% endif %} {% if Discipline.labs %} {{ Discipline.labs }} {{ Rus.NumEnding(Discipline.labs, ['час', 'часа', 'часов']) }} лабораторных занятий {% endif %} </div> </div> </div> <h3 class="blockTitle">Баллы за семестр</h3> <div class="blockMargin"> {% for Module in DisciplineMap.Modules %} <div class="tableTitle Module"> {{ Module.Title|default('Модуль ' ~ loop.index) }} </div> {% for Submodule in Module.Submodules %} <div class="submoduleBlock"> <div class="submoduleTitle">{{ Submodule.Title|default('Мероприятие ' ~ loop.index) }}</div> <div class="submoduleRate"> {{ Submodule.Rate }} / {{ Submodule.MaxRate }} </div> <div class="submodulePercent"> {% if Submodule.MaxRate <= 0 %} --- {% else %} {{ (Submodule.Rate * 100) // Submodule.MaxRate }} % {% endif %} </div> <div class="submoduleDate"> {% if Submodule.Date != 0 %} {{ Submodule.Date|date('d.m.Y') }} {% else %} --- {% endif %} </div> </div> {% if loop.last %} <div class="moduleResult"> Итого за модуль: {{ Module.Rate }} / {{ Module.MaxRate }} </div> {% endif %} {% endfor %} {% endfor %} </div> {% if Discipline.type == 'exam' %} <h3 class="blockTitle">Допуск к экзамену</h3> <div class="blockMargin"> {% set Admission = 38 - (DisciplineMap.SemesterRate + DisciplineMap.Extra.Rate) %} {% if Admission > 0 %} Для допуска к экзамену Вам необходимо получить еще {{ 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> <div class="submoduleDate">---</div> </div> </div> {% endif %} </div> <div class="totalRate"> Промежуточный итог: {{ DisciplineMap.SemesterRate + DisciplineMap.ExtraRate }} / {{ DisciplineMap.SemesterMaxRate }} </div> <h3 class="blockTitle">Экзамен</h3> <div class="blockMargin"> <div class="tableTitle Extra"> Экзамен по курсу «{{ Discipline.subjectName|default('---') }}» </div> {% if DisciplineMap.Bonus is not empty %} <div class="submoduleBlock"> <div class="submoduleTitle">Бонусные баллы</div> <div class="submoduleRate"> {{ DisciplineMap.Bonus.Rate }} / {{ DisciplineMap.Bonus.MaxRate }} </div> <div class="submodulePercent"> {% if DisciplineMap.Bonus.MaxRate == 0 %} 0 {% else %} {{ (DisciplineMap.Bonus.Rate * 100) // DisciplineMap.Bonus.MaxRate }} % {% endif %} </div> <div class="submoduleDate"> {% if DisciplineMap.Bonus.Date != 0 %} {{ DisciplineMap.Bonus.Date|date('d.m.Y') }} {% else %} --- {% endif %} </div> </div> {% endif %} {% if DisciplineMap.Exam is not empty %} <div class="submoduleBlock"> <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 %} </div> <div class="submoduleDate"> {% if DisciplineMap.Exam.Date != 0 %} {{ DisciplineMap.Exam.Date|date('d.m.Y') }} {% else %} --- {% endif %} </div> </div> {% endif %} </div> <div class="totalRate"> {% set Rating = DisciplineMap.SemesterRate + DisciplineMap.Extra.Rate + DisciplineMap.Bonus.Rate + DisciplineMap.Exam.Rate %} {% if Rating > 100 %} {% set Rating = 100 %} {% endif %} Итоговый рейтинг: {{ Rating }} / 100 </div> {% elseif Discipline.type == 'credit' %} <h3 class="blockTitle">Зачет</h3> <div class="blockMargin"> {% set Admission = 60 - (DisciplineMap.SemesterRate + DisciplineMap.Extra.Rate) %} {% if Admission > 0 %} Для получения зачета необходимо набрать ещё {{ Admission }} {{ Rus.NumEnding(Admission, ['балл', 'балла', 'баллов']) }}. {% else %} Поздравляем, Вы получили зачет по курсу «{{ Discipline.subjectName|default('---') }}»! {% endif %} {% if ExtraRate or not Admission or DisciplineMap.Bonus is not empty %} <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 class="submoduleDate">---</div> </div> </div> {% endif %} {% if DisciplineMap.Bonus is not empty %} <div class="submoduleBlock"> <div class="submoduleTitle">Бонусные баллы</div> <div class="submoduleRate"> {{ DisciplineMap.Bonus.Rate }} / {{ DisciplineMap.Bonus.MaxRate }} </div> <div class="submodulePercent"> {% if DisciplineMap.Bonus.MaxRate == 0 %} 0 {% else %} {{ (DisciplineMap.Bonus.Rate * 100) // DisciplineMap.Bonus.MaxRate }} % {% endif %} </div> <div class="submoduleDate"> {% if DisciplineMap.Bonus.Date != 0 %} {{ DisciplineMap.Bonus.Date|date('d.m.Y') }} {% else %} --- {% endif %} </div> </div> {% endif %} {% endif %} </div> <div class="totalRate"> {% set Rating = DisciplineMap.SemesterRate + DisciplineMap.Extra.Rate + DisciplineMap.Bonus.Rate %} {% if Rating > 100 %} {% set Rating = 100 %} {% endif %} Итоговый рейтинг: {{ Rating }} / 100 </div> {% endif %} {% endblock %}