diff --git a/aleksis/apps/alsijil/locale/ru/LC_MESSAGES/django.po b/aleksis/apps/alsijil/locale/ru/LC_MESSAGES/django.po
index cfdaa5cfb780278cb399496235d9af4140f18d64..786c71e66e11a32de98ffc865f693f751df284c0 100644
--- a/aleksis/apps/alsijil/locale/ru/LC_MESSAGES/django.po
+++ b/aleksis/apps/alsijil/locale/ru/LC_MESSAGES/django.po
@@ -3,113 +3,116 @@
 # This file is distributed under the same license as the PACKAGE package.
 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
 #
-#, fuzzy
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-04-23 12:35+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"Language: \n"
+"PO-Revision-Date: 2022-06-03 22:17+0000\n"
+"Last-Translator: Serhii Horichenko <m@sgg.im>\n"
+"Language-Team: Russian <https://translate.edugit.org/projects/aleksis/"
+"aleksis-app-alsijil/ru/>\n"
+"Language: ru\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
 "%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n"
 "%100>=11 && n%100<=14)? 2 : 3);\n"
+"X-Generator: Weblate 4.12.1\n"
+
 #: aleksis/apps/alsijil/actions.py:18
 msgid "Mark as excused"
-msgstr ""
+msgstr "Отметить как уважительный"
 
 #: aleksis/apps/alsijil/actions.py:25
 msgid "Mark as unexcused"
-msgstr ""
+msgstr "Отметить без уважительной причины"
 
 #: aleksis/apps/alsijil/actions.py:32
 #, python-brace-format
 msgid "Mark as {excuse_type.name}"
-msgstr ""
+msgstr "Отметить как {excuse_type.name}"
 
 #: aleksis/apps/alsijil/actions.py:48 aleksis/apps/alsijil/tables.py:29
 #: aleksis/apps/alsijil/tables.py:53 aleksis/apps/alsijil/tables.py:78
 #: aleksis/apps/alsijil/templates/alsijil/group_role/partials/assignment_options.html:29
 msgid "Delete"
-msgstr ""
+msgstr "Удалить"
 
 #: aleksis/apps/alsijil/actions.py:68
 msgid "{} asks you to check some class register entries."
-msgstr ""
+msgstr "{} просит Вас проверить некоторые записи классного журнала."
 
 #: aleksis/apps/alsijil/actions.py:86
 #, python-brace-format
 msgid "We have successfully sent notifications to {count_teachers} persons for {count_items} lessons."
 msgstr ""
+"Мы отправили уведомление для {count_teachers} чел. о {count_items} уроках."
 
 #: aleksis/apps/alsijil/actions.py:92
 msgid "Ask teacher to check data"
-msgstr ""
+msgstr "Попросить учителя проверить данные"
 
 #: aleksis/apps/alsijil/data_checks.py:12
 msgid "Delete object"
-msgstr ""
+msgstr "Удалить объект"
 
 #: aleksis/apps/alsijil/data_checks.py:22
 msgid "Set current groups"
-msgstr ""
+msgstr "Установить текущие группы"
 
 #: aleksis/apps/alsijil/data_checks.py:33
 msgid "Reset personal note to defaults"
-msgstr ""
+msgstr "Сбросить личные заметки на типовые"
 
 #: aleksis/apps/alsijil/data_checks.py:45
 msgid "Ensure that there are no personal notes in cancelled lessons"
-msgstr ""
+msgstr "Убедитесь, чтобы в отмененных уроках не было личных заметок"
 
 #: aleksis/apps/alsijil/data_checks.py:46
 msgid "The personal note is related to a cancelled lesson."
-msgstr ""
+msgstr "У отмененного урока есть связанные личные заметки."
 
 #: aleksis/apps/alsijil/data_checks.py:73
 msgid "Ensure that 'groups_of_person' is set for every personal note"
-msgstr ""
+msgstr "Убедитесь, что для каждой личной заметки установлены \"группы_лиц\""
 
 #: aleksis/apps/alsijil/data_checks.py:74
 msgid "The personal note has no group in 'groups_of_person'."
-msgstr ""
+msgstr "Эта личная заметка без группы в \"группах_лиц\"."
 
 #: aleksis/apps/alsijil/data_checks.py:99
 msgid "Ensure that there are no filled out lesson documentations on holidays"
-msgstr ""
+msgstr "Убедитесь, что на выходные нет заполненного учебного материала"
 
 #: aleksis/apps/alsijil/data_checks.py:100
 msgid "The lesson documentation is on holidays."
-msgstr ""
+msgstr "На выходные есть учебный материал."
 
 #: aleksis/apps/alsijil/data_checks.py:133
 msgid "Ensure that there are no filled out personal notes on holidays"
-msgstr ""
+msgstr "Убедитесь, что на выходные нет заполненных личных заметок"
 
 #: aleksis/apps/alsijil/data_checks.py:134
 msgid "The personal note is on holidays."
-msgstr ""
+msgstr "На выходные есть личные заметки."
 
 #: aleksis/apps/alsijil/data_checks.py:162
 msgid "Ensure that there are no excused personal notes without an absence"
-msgstr ""
+msgstr "Убедитесь, что нет личных заметок с пояснениями без отсутствия"
 
 #: aleksis/apps/alsijil/data_checks.py:163
 msgid "The personal note is marked as excused, but not as absent."
-msgstr ""
+msgstr "Эта личная заметка отмечена как пояснительная, но нет отсутствия."
 
 #: aleksis/apps/alsijil/filters.py:12
 msgid "After"
-msgstr ""
+msgstr "После"
 
 #: aleksis/apps/alsijil/filters.py:13
 msgid "Before"
-msgstr ""
+msgstr "До"
 
 #: aleksis/apps/alsijil/filters.py:14 aleksis/apps/alsijil/forms.py:302
 #: aleksis/apps/alsijil/tables.py:116
@@ -118,25 +121,25 @@ msgstr ""
 #: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:189
 #: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:220
 msgid "Subject"
-msgstr ""
+msgstr "Предмет"
 
 #: aleksis/apps/alsijil/filters.py:30
 msgid "Tardiness is lower than"
-msgstr ""
+msgstr "Опоздание меньше, чем на"
 
 #: aleksis/apps/alsijil/filters.py:31
 msgid "Tardiness is bigger than"
-msgstr ""
+msgstr "Опоздание больше, чем на"
 
 #: aleksis/apps/alsijil/forms.py:47
 msgid "Homework for the next lesson"
-msgstr ""
+msgstr "Домашняя работа на следующий урок"
 
 #: aleksis/apps/alsijil/forms.py:73 aleksis/apps/alsijil/forms.py:214
 #: aleksis/apps/alsijil/forms.py:301
 #: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:219
 msgid "Group"
-msgstr ""
+msgstr "Группа"
 
 #: aleksis/apps/alsijil/forms.py:79
 #: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:190
@@ -152,13 +155,13 @@ msgstr ""
 #: aleksis/apps/alsijil/models.py:480
 #: aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html:64
 msgid "Start date"
-msgstr ""
+msgstr "Дата начала"
 
 #: aleksis/apps/alsijil/forms.py:151 aleksis/apps/alsijil/forms.py:304
 #: aleksis/apps/alsijil/models.py:484
 #: aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html:65
 msgid "End date"
-msgstr ""
+msgstr "Дата окончания"
 
 #: aleksis/apps/alsijil/forms.py:152
 msgid "Start period"
@@ -211,7 +214,7 @@ msgstr ""
 
 #: aleksis/apps/alsijil/forms.py:299
 msgid "School term"
-msgstr ""
+msgstr "Учебный год"
 
 #: aleksis/apps/alsijil/forms.py:300
 msgid "Has lesson documentation"
@@ -334,7 +337,7 @@ msgstr ""
 
 #: aleksis/apps/alsijil/models.py:50 aleksis/apps/alsijil/models.py:419
 msgid "Short name"
-msgstr ""
+msgstr "Короткое имя"
 
 #: aleksis/apps/alsijil/models.py:51 aleksis/apps/alsijil/models.py:420
 #: aleksis/apps/alsijil/models.py:444
@@ -342,7 +345,7 @@ msgstr ""
 #: aleksis/apps/alsijil/templates/alsijil/partials/persons_with_stats.html:12
 #: aleksis/apps/alsijil/templates/alsijil/partials/persons_with_stats.html:23
 msgid "Name"
-msgstr ""
+msgstr "Имя"
 
 #: aleksis/apps/alsijil/models.py:55 aleksis/apps/alsijil/tables.py:41
 msgid "Count as absent"
@@ -354,7 +357,7 @@ msgstr ""
 
 #: aleksis/apps/alsijil/models.py:225 aleksis/apps/alsijil/models.py:324
 msgid "Year"
-msgstr ""
+msgstr "Год"
 
 #: aleksis/apps/alsijil/models.py:284
 msgid "Personal note"
@@ -441,7 +444,7 @@ msgstr ""
 #: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:246
 #: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:326
 msgid "Groups"
-msgstr ""
+msgstr "Группы"
 
 #: aleksis/apps/alsijil/models.py:485
 msgid "Can be left empty if end date is not clear yet"
@@ -632,7 +635,7 @@ msgstr ""
 
 #: aleksis/apps/alsijil/templates/alsijil/absences/register_confirm.html:79
 msgid "Cancel"
-msgstr ""
+msgstr "Отменить"
 
 #: aleksis/apps/alsijil/templates/alsijil/class_register/groups.html:21
 msgid "Students"
@@ -1266,19 +1269,19 @@ msgstr ""
 
 #: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:133
 msgid "Last name"
-msgstr ""
+msgstr "Фамилия"
 
 #: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:134
 msgid "First name"
-msgstr ""
+msgstr "Имя"
 
 #: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:135
 msgid "Sex"
-msgstr ""
+msgstr "Пол"
 
 #: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:136
 msgid "Date of birth"
-msgstr ""
+msgstr "Дата рождения"
 
 #: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:147
 msgid "(b)"