diff --git a/aleksis/apps/kort/locale/de_DE/LC_MESSAGES/django.po b/aleksis/apps/kort/locale/de_DE/LC_MESSAGES/django.po
index 292c2d955ffe5be8fdf323b3c24a525f369e02f3..803fe03ed891f01c8d997ce155a2cee9b26d2ddb 100644
--- a/aleksis/apps/kort/locale/de_DE/LC_MESSAGES/django.po
+++ b/aleksis/apps/kort/locale/de_DE/LC_MESSAGES/django.po
@@ -8,7 +8,7 @@ msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2023-09-16 17:04+0200\n"
-"PO-Revision-Date: 2022-08-12 22:00+0000\n"
+"PO-Revision-Date: 2023-09-16 15:16+0000\n"
 "Last-Translator: Jonathan Weth <teckids@jonathanweth.de>\n"
 "Language-Team: German <https://translate.edugit.org/projects/aleksis/aleksis-app-kort/de/>\n"
 "Language: de_DE\n"
@@ -161,7 +161,7 @@ msgstr "OAuth2-Anwendung"
 
 #: aleksis/apps/kort/models.py:89
 msgid "OAuth2 client secret"
-msgstr ""
+msgstr "OAuth2-Client-Secret"
 
 #: aleksis/apps/kort/models.py:95
 msgid "CUPS printer"
@@ -169,7 +169,7 @@ msgstr "CUPS-Drucker"
 
 #: aleksis/apps/kort/models.py:97
 msgid "Leave blank to deactivate CUPS printing"
-msgstr ""
+msgstr "Leer lassen, um CUPS-Drucken zu deaktivieren"
 
 #: aleksis/apps/kort/models.py:100
 msgid "Generate card number on server"
@@ -385,7 +385,7 @@ msgstr "Zurück"
 
 #: aleksis/apps/kort/templates/kort/card/detail.html:11
 msgid "Back"
-msgstr ""
+msgstr "Zurück"
 
 #: aleksis/apps/kort/templates/kort/card/detail_content.html:6
 msgid "Card details"
@@ -404,10 +404,8 @@ msgid "Generate card as PDF"
 msgstr "Karte als PDF generieren"
 
 #: aleksis/apps/kort/templates/kort/card/detail_content.html:68
-#, fuzzy
-#| msgid "Create card layout"
 msgid "Preview card layout"
-msgstr "Kartenlayout erstellen"
+msgstr "Kartenlayout anschauen"
 
 #: aleksis/apps/kort/templates/kort/card/edit.html:12
 #: aleksis/apps/kort/templates/kort/card/edit.html:13
@@ -681,16 +679,12 @@ msgid "Register new card printer"
 msgstr "Neuen Kartendrucker registrieren"
 
 #: aleksis/apps/kort/templates/kort/printer/print_job_delete.html:8
-#, fuzzy
-#| msgid "Delete Card Printer"
 msgid "Delete Card Print Job"
-msgstr "Kartendrucker löschen"
+msgstr "Kartendruckauftrag löschen"
 
 #: aleksis/apps/kort/templates/kort/printer/print_job_delete.html:12
-#, fuzzy
-#| msgid "Do you really want to delete the following card printer?"
 msgid "Do you really want to delete the following card print job?"
-msgstr "Möchten Sie wirklich den folgenden Kartendrucker löschen?"
+msgstr "Möchten Sie wirklich den folgenden Kartendruckauftrag löschen?"
 
 #: aleksis/apps/kort/views.py:69
 msgid "The cards have been created successfully."
@@ -745,10 +739,8 @@ msgid "The card printer has been deleted successfully."
 msgstr "Der Kartendrucker wurde erfolgreich gelöscht."
 
 #: aleksis/apps/kort/views.py:317
-#, fuzzy
-#| msgid "The card printer has been deleted successfully."
 msgid "The card print job has been deleted successfully."
-msgstr "Der Kartendrucker wurde erfolgreich gelöscht."
+msgstr "Der Kartendruckauftrag wurde erfolgreich gelöscht."
 
 #: aleksis/apps/kort/views.py:380
 msgid "The card layout has been created successfully."
diff --git a/aleksis/apps/kort/locale/ru/LC_MESSAGES/django.po b/aleksis/apps/kort/locale/ru/LC_MESSAGES/django.po
index 3fb7217ab01070117f47b92ebf93cf43b94f91e2..b85bd6e55d9046bfaca3588d17459afd209ec662 100644
--- a/aleksis/apps/kort/locale/ru/LC_MESSAGES/django.po
+++ b/aleksis/apps/kort/locale/ru/LC_MESSAGES/django.po
@@ -10,42 +10,45 @@ msgstr ""
 "POT-Creation-Date: 2023-09-16 17:04+0200\n"
 "PO-Revision-Date: 2023-05-26 04:37+0000\n"
 "Last-Translator: Serhii Horichenko <m@sgg.im>\n"
-"Language-Team: Russian <https://translate.edugit.org/projects/aleksis/aleksis-app-kort/ru/>\n"
+"Language-Team: Russian <https://translate.edugit.org/projects/aleksis/"
+"aleksis-app-kort/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"
+"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/kort/apps.py:31
 msgid "Access and manage printer status and print jobs"
-msgstr ""
+msgstr "Управление доступом к принтеру, его состоянием и заданиями печати"
 
 #: aleksis/apps/kort/forms.py:15
 msgid "Select person(s) or group(s)"
-msgstr ""
+msgstr "Выберите людей и группы"
 
 #: aleksis/apps/kort/forms.py:16
 msgid "Select validity"
-msgstr ""
+msgstr "Выберите срок действия"
 
 #: aleksis/apps/kort/forms.py:17
 msgid "Select layout"
-msgstr ""
+msgstr "Выберите шаблон"
 
 #: aleksis/apps/kort/forms.py:18
 msgid "Select printer (optional)"
-msgstr ""
+msgstr "Выберите принтер (необязательно)"
 
 #: aleksis/apps/kort/forms.py:22 aleksis/apps/kort/forms.py:111
 #: aleksis/apps/kort/templates/kort/printer/detail.html:8
 msgid "Card Printer"
-msgstr ""
+msgstr "Карточный принтер"
 
 #: aleksis/apps/kort/forms.py:23
 msgid "Select a printer to directly print the newly issued card."
-msgstr ""
+msgstr "Выберите принтер для непосредственной печати свежесозданных карт."
 
 #: aleksis/apps/kort/forms.py:28
 msgid "Persons"
@@ -55,85 +58,89 @@ msgstr "Люди"
 msgid "Groups"
 msgstr "Группы"
 
-#: aleksis/apps/kort/forms.py:51 aleksis/apps/kort/models.py:209
+#: aleksis/apps/kort/forms.py:51 aleksis/apps/kort/models.py:191
 msgid "Card layout"
-msgstr ""
+msgstr "Шаблон карты"
 
 #: aleksis/apps/kort/forms.py:53 aleksis/apps/kort/models.py:281
 #: aleksis/apps/kort/tables.py:23
 #: aleksis/apps/kort/templates/kort/card/detail_content.html:24
 #: aleksis/apps/kort/templates/kort/card/short.html:12
+#: aleksis/apps/kort/models.py:263 aleksis/apps/kort/tables.py:30
 msgid "Valid until"
 msgstr "Действует до"
 
 #: aleksis/apps/kort/forms.py:63
 msgid "You must select at least one person or group."
-msgstr ""
+msgstr "Вам необходимо выбрать хотя бы одного человека или группу."
 
 #: aleksis/apps/kort/forms.py:71
 msgid "The selected groups don't have any members."
-msgstr ""
+msgstr "Выбранные группы не содержат ни одного участника."
 
 #: aleksis/apps/kort/forms.py:91
 msgid "Generic attributes"
-msgstr ""
+msgstr "Основные атрибуты"
 
 #: aleksis/apps/kort/forms.py:93
 msgid "Printer settings"
-msgstr ""
+msgstr "Настройки принтера"
 
-#: aleksis/apps/kort/forms.py:138 aleksis/apps/kort/models.py:246
+#: aleksis/apps/kort/forms.py:138 aleksis/apps/kort/models.py:228
 msgid "Required data fields"
-msgstr ""
+msgstr "Необходимые поля данных"
 
-#: aleksis/apps/kort/models.py:25
+#: aleksis/apps/kort/models.py:24
 msgid "Online"
-msgstr ""
+msgstr "Онлайн"
 
-#: aleksis/apps/kort/models.py:26
+#: aleksis/apps/kort/models.py:25
 msgid "Offline"
-msgstr ""
+msgstr "Офлайн"
 
-#: aleksis/apps/kort/models.py:27
+#: aleksis/apps/kort/models.py:26
 msgid "With errors"
-msgstr ""
+msgstr "С ошибками"
 
-#: aleksis/apps/kort/models.py:28
+#: aleksis/apps/kort/models.py:27
 msgid "Not registered"
-msgstr ""
+msgstr "Не зарегистрировано"
 
-#: aleksis/apps/kort/models.py:57
+#: aleksis/apps/kort/models.py:56
 msgid "Registered"
-msgstr ""
+msgstr "Зарегистрировано"
 
-#: aleksis/apps/kort/models.py:58
+#: aleksis/apps/kort/models.py:57
 msgid "In progress"
-msgstr ""
+msgstr "В процессе"
 
-#: aleksis/apps/kort/models.py:59
+#: aleksis/apps/kort/models.py:58
 msgid "Finished"
-msgstr ""
+msgstr "Завершено"
 
-#: aleksis/apps/kort/models.py:60
+#: aleksis/apps/kort/models.py:59
 msgid "Failed"
-msgstr ""
+msgstr "Сбой"
 
 #: aleksis/apps/kort/models.py:65 aleksis/apps/kort/models.py:241
 #: aleksis/apps/kort/templates/kort/card_layout/detail_content.html:11
 #: aleksis/apps/kort/templates/kort/card_layout/short.html:4
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:11
 #: aleksis/apps/kort/templates/kort/printer/short.html:4
+#: aleksis/apps/kort/models.py:64 aleksis/apps/kort/models.py:223
 msgid "Name"
 msgstr "Полное имя"
 
 #: aleksis/apps/kort/models.py:66
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:24
+#: aleksis/apps/kort/models.py:65
 msgid "Description"
 msgstr "Описание"
 
 #: aleksis/apps/kort/models.py:67
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:17
 #: aleksis/apps/kort/templates/kort/printer/short.html:8
+#: aleksis/apps/kort/models.py:66
 msgid "Location"
 msgstr "Нас.пункт"
 
@@ -143,189 +150,194 @@ msgstr "Нас.пункт"
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:38
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:91
 #: aleksis/apps/kort/templates/kort/printer/short.html:12
+#: aleksis/apps/kort/models.py:70 aleksis/apps/kort/models.py:336
+#: aleksis/apps/kort/tables.py:95
+#: aleksis/apps/kort/templates/kort/printer/detail_content.html:90
 msgid "Status"
 msgstr "Состояние"
 
-#: aleksis/apps/kort/models.py:75 aleksis/apps/kort/models.py:358
+#: aleksis/apps/kort/models.py:74 aleksis/apps/kort/models.py:340
 msgid "Status text"
-msgstr ""
+msgstr "Описание состояния"
 
-#: aleksis/apps/kort/models.py:76 aleksis/apps/kort/tables.py:52
+#: aleksis/apps/kort/models.py:75 aleksis/apps/kort/tables.py:58
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:31
 msgid "Last seen at"
-msgstr ""
+msgstr "Последний раз на связи"
 
-#: aleksis/apps/kort/models.py:81
+#: aleksis/apps/kort/models.py:80
 msgid "OAuth2 application"
-msgstr ""
+msgstr "Программа для OAuth2"
 
 #: aleksis/apps/kort/models.py:89
 msgid "OAuth2 client secret"
 msgstr ""
 
-#: aleksis/apps/kort/models.py:95
+#: aleksis/apps/kort/models.py:87
 msgid "CUPS printer"
-msgstr ""
+msgstr "Принтер CUPS"
 
 #: aleksis/apps/kort/models.py:97
 msgid "Leave blank to deactivate CUPS printing"
 msgstr ""
 
-#: aleksis/apps/kort/models.py:100
+#: aleksis/apps/kort/models.py:89
 msgid "Generate card number on server"
-msgstr ""
+msgstr "Генерировать номер карты на сервере"
 
-#: aleksis/apps/kort/models.py:102
+#: aleksis/apps/kort/models.py:91
 msgid "Card detector"
-msgstr ""
+msgstr "Детектор карт"
 
-#: aleksis/apps/kort/models.py:199
+#: aleksis/apps/kort/models.py:181
 msgid "Card printer"
-msgstr ""
+msgstr "Карточный принтер"
 
-#: aleksis/apps/kort/models.py:200
+#: aleksis/apps/kort/models.py:182
 #: aleksis/apps/kort/templates/kort/printer/list.html:8
 #: aleksis/apps/kort/templates/kort/printer/list.html:9
 msgid "Card printers"
-msgstr ""
+msgstr "Карточные принтеры"
 
-#: aleksis/apps/kort/models.py:204
+#: aleksis/apps/kort/models.py:186
 msgid "Media file"
-msgstr ""
+msgstr "Медиафайл"
 
-#: aleksis/apps/kort/models.py:216
+#: aleksis/apps/kort/models.py:198
 msgid "Media file for a card layout"
-msgstr ""
+msgstr "Медиафайл для шаблона карт"
 
-#: aleksis/apps/kort/models.py:217
+#: aleksis/apps/kort/models.py:199
 msgid "Media files for card layouts"
-msgstr ""
+msgstr "Медифайлы для шаблонов карт"
 
-#: aleksis/apps/kort/models.py:242
+#: aleksis/apps/kort/models.py:224
 #: aleksis/apps/kort/templates/kort/card_layout/detail_content.html:43
 msgid "Template"
-msgstr ""
+msgstr "Шаблон"
 
-#: aleksis/apps/kort/models.py:243
+#: aleksis/apps/kort/models.py:225
 #: aleksis/apps/kort/templates/kort/card_layout/detail_content.html:49
 msgid "Custom CSS"
-msgstr ""
+msgstr "Настраиваемый CSS"
 
-#: aleksis/apps/kort/models.py:244
+#: aleksis/apps/kort/models.py:226
 msgid "Width"
-msgstr ""
+msgstr "Ширина"
 
-#: aleksis/apps/kort/models.py:244 aleksis/apps/kort/models.py:245
+#: aleksis/apps/kort/models.py:226 aleksis/apps/kort/models.py:227
 msgid "in mm"
-msgstr ""
+msgstr "в мм"
 
-#: aleksis/apps/kort/models.py:245
+#: aleksis/apps/kort/models.py:227
 msgid "Height"
-msgstr ""
+msgstr "Высота"
 
-#: aleksis/apps/kort/models.py:266
+#: aleksis/apps/kort/models.py:248
 msgid "Template is invalid: {}"
-msgstr ""
+msgstr "Шаблон неправильный: {}"
 
-#: aleksis/apps/kort/models.py:272 aleksis/apps/kort/models.py:285
+#: aleksis/apps/kort/models.py:254 aleksis/apps/kort/models.py:267
 #: aleksis/apps/kort/templates/kort/card/detail_content.html:31
 #: aleksis/apps/kort/templates/kort/card_layout/detail.html:8
 msgid "Card Layout"
-msgstr ""
+msgstr "Шаблон карты"
 
-#: aleksis/apps/kort/models.py:273
+#: aleksis/apps/kort/models.py:255
 msgid "Card Layouts"
-msgstr ""
+msgstr "Шаблоны карт"
 
 #: aleksis/apps/kort/models.py:278 aleksis/apps/kort/tables.py:20
 #: aleksis/apps/kort/templates/kort/card/detail_content.html:11
 #: aleksis/apps/kort/templates/kort/card/short.html:4
+#: aleksis/apps/kort/models.py:260
 msgid "Person"
 msgstr "Физлицо"
 
-#: aleksis/apps/kort/models.py:280
+#: aleksis/apps/kort/models.py:262
 msgid "Chip Number"
-msgstr ""
+msgstr "Номер чипа"
 
-#: aleksis/apps/kort/models.py:282 aleksis/apps/kort/tables.py:24
+#: aleksis/apps/kort/models.py:264 aleksis/apps/kort/tables.py:31
 msgid "Deactivated"
-msgstr ""
+msgstr "Деактивировано"
 
-#: aleksis/apps/kort/models.py:288
+#: aleksis/apps/kort/models.py:288 aleksis/apps/kort/models.py:270
 msgid "PDF file"
 msgstr "Файл PDF"
 
-#: aleksis/apps/kort/models.py:321
+#: aleksis/apps/kort/models.py:303
 msgid "There is no layout provided for the card."
-msgstr ""
+msgstr "Для карты не задан шаблон."
 
-#: aleksis/apps/kort/models.py:340 aleksis/apps/kort/models.py:349
+#: aleksis/apps/kort/models.py:322 aleksis/apps/kort/models.py:331
 #: aleksis/apps/kort/templates/kort/card/detail.html:8
-#: aleksis/apps/kort/templates/kort/printer/detail_content.html:85
+#: aleksis/apps/kort/templates/kort/printer/detail_content.html:84
 msgid "Card"
-msgstr ""
+msgstr "Карта"
 
-#: aleksis/apps/kort/models.py:341
+#: aleksis/apps/kort/models.py:323
 #: aleksis/apps/kort/templates/kort/card/list.html:8
 #: aleksis/apps/kort/templates/kort/card/list.html:9
 msgid "Cards"
-msgstr ""
+msgstr "Карты"
 
-#: aleksis/apps/kort/models.py:346
+#: aleksis/apps/kort/models.py:328
 msgid "Printer"
-msgstr ""
+msgstr "Принтер"
 
-#: aleksis/apps/kort/models.py:361
+#: aleksis/apps/kort/models.py:343
 msgid "Card print job"
-msgstr ""
+msgstr "Задание на печать карты"
 
-#: aleksis/apps/kort/models.py:362
+#: aleksis/apps/kort/models.py:344
 msgid "Card print jobs"
-msgstr ""
+msgstr "Задания на печать карт"
 
-#: aleksis/apps/kort/tables.py:21
+#: aleksis/apps/kort/tables.py:28
 #: aleksis/apps/kort/templates/kort/card/detail_content.html:17
 #: aleksis/apps/kort/templates/kort/card/short.html:8
 msgid "Chip number"
-msgstr ""
+msgstr "Номер чипа"
 
-#: aleksis/apps/kort/tables.py:22 aleksis/apps/kort/tables.py:51
+#: aleksis/apps/kort/tables.py:29 aleksis/apps/kort/tables.py:57
 msgid "Current status"
-msgstr ""
+msgstr "Текущее состояние"
 
 #: aleksis/apps/kort/tables.py:25 aleksis/apps/kort/tables.py:55
-#: aleksis/apps/kort/tables.py:81
+#: aleksis/apps/kort/tables.py:81 aleksis/apps/kort/tables.py:32
+#: aleksis/apps/kort/tables.py:61 aleksis/apps/kort/tables.py:85
 msgid "Actions"
 msgstr "Действия"
 
-#: aleksis/apps/kort/tables.py:48
+#: aleksis/apps/kort/tables.py:54
 msgid "Printer name"
-msgstr ""
+msgstr "Название принтера"
 
-#: aleksis/apps/kort/tables.py:49
+#: aleksis/apps/kort/tables.py:55
 msgid "Printer location"
-msgstr ""
+msgstr "Размещение принтера"
 
-#: aleksis/apps/kort/tables.py:53
+#: aleksis/apps/kort/tables.py:59
 msgid "Running jobs"
-msgstr ""
+msgstr "Текущие задания"
 
-#: aleksis/apps/kort/tables.py:77
+#: aleksis/apps/kort/tables.py:81
 msgid "Layout name"
-msgstr ""
+msgstr "Название шаблона"
 
 #: aleksis/apps/kort/templates/kort/card/actions.html:8
-#: aleksis/apps/kort/templates/kort/card/detail.html:13
+#: aleksis/apps/kort/templates/kort/card/detail.html:9
 #, python-format
 msgid "Card of %(person)s"
-msgstr ""
+msgstr "Карта для %(person)s"
 
 #: aleksis/apps/kort/templates/kort/card/actions.html:14
 #: aleksis/apps/kort/templates/kort/card/actions.html:31
 #: aleksis/apps/kort/templates/kort/card_layout/actions.html:11
 #: aleksis/apps/kort/templates/kort/printer/actions.html:11
 msgid "Close"
-msgstr ""
+msgstr "Закрыть"
 
 #: aleksis/apps/kort/templates/kort/card/actions.html:20
 #: aleksis/apps/kort/templates/kort/card_layout/actions.html:17
@@ -335,12 +347,12 @@ msgstr "Показать"
 
 #: aleksis/apps/kort/templates/kort/card/actions.html:25
 msgid "Do you really want to deactivate the following card?"
-msgstr ""
+msgstr "Вы действительно хотите деактивировать эту карту?"
 
 #: aleksis/apps/kort/templates/kort/card/actions.html:35
 #: aleksis/apps/kort/templates/kort/card/actions.html:41
 msgid "Deactivate"
-msgstr ""
+msgstr "Деактивировать"
 
 #: aleksis/apps/kort/templates/kort/card/actions.html:47
 #: aleksis/apps/kort/templates/kort/card/delete.html:30
@@ -356,20 +368,29 @@ msgstr "Удалить"
 
 #: aleksis/apps/kort/templates/kort/card/delete.html:8
 msgid "Delete Card"
-msgstr ""
+msgstr "Удалить карту"
 
 #: aleksis/apps/kort/templates/kort/card/delete.html:12
 msgid "Do you really want to delete the following card?"
-msgstr ""
+msgstr "Вы действительно хотите удалить эту карту?"
 
 #: aleksis/apps/kort/templates/kort/card/delete.html:16
 msgid ""
 "\n"
-"      Please pay attention that a deletion of a card is irreversible and should be only used to clean up misprints.\n"
-"      If you just want to make a card unusable because a student has lost his card or left the school,\n"
+"      Please pay attention that a deletion of a card is irreversible and "
+"should be only used to clean up misprints.\n"
+"      If you just want to make a card unusable because a student has lost "
+"his card or left the school,\n"
 "      please deactivate the card instead.\n"
 "    "
 msgstr ""
+"\n"
+"      Обратите, пожалуйста, своё внимание, что удаление карты необратимо и "
+"должно использоваться только удаления ошибок.\n"
+"      Если Вы хотите просто заблокировать карту для использования из-за "
+"того, что учащийся потерял свою карту или покинул школу,\n"
+"      лучше, пожалуйста, деактивируйте карту.\n"
+"    "
 
 #: aleksis/apps/kort/templates/kort/card/delete.html:26
 #: aleksis/apps/kort/templates/kort/card_layout/delete.html:25
@@ -384,19 +405,19 @@ msgstr ""
 
 #: aleksis/apps/kort/templates/kort/card/detail_content.html:6
 msgid "Card details"
-msgstr ""
+msgstr "Данные карты"
 
 #: aleksis/apps/kort/templates/kort/card/detail_content.html:19
 msgid "not set yet"
-msgstr ""
+msgstr "ещё не установлено"
 
 #: aleksis/apps/kort/templates/kort/card/detail_content.html:53
 msgid "Show card as PDF"
-msgstr ""
+msgstr "Показать карту как PDF"
 
 #: aleksis/apps/kort/templates/kort/card/detail_content.html:61
 msgid "Generate card as PDF"
-msgstr ""
+msgstr "Сгенерировать карту как PDF"
 
 #: aleksis/apps/kort/templates/kort/card/detail_content.html:68
 msgid "Preview card layout"
@@ -405,41 +426,56 @@ msgstr ""
 #: aleksis/apps/kort/templates/kort/card/edit.html:12
 #: aleksis/apps/kort/templates/kort/card/edit.html:13
 msgid "Edit card"
-msgstr ""
+msgstr "Редактировать карту"
 
 #: aleksis/apps/kort/templates/kort/card/issue.html:12
 #: aleksis/apps/kort/templates/kort/card/issue.html:13
 msgid "Issue card(s)"
-msgstr ""
+msgstr "Создать карту(ы)"
 
 #: aleksis/apps/kort/templates/kort/card/issue.html:23
 msgid ""
 "\n"
-"          Please select the persons and/or the groups to whom you want to issue new cards.\n"
-"          After clicking on 'Next', you will be able to check whether the data of the persons\n"
+"          Please select the persons and/or the groups to whom you want to "
+"issue new cards.\n"
+"          After clicking on 'Next', you will be able to check whether the "
+"data of the persons\n"
 "          are complete and include everything needed for the cards.\n"
 "        "
 msgstr ""
+"\n"
+"          Выберите, пожалуйста, людей и/или группы, для которых хотите "
+"создать новые карточки.\n"
+"          После нажатия на кнопку \"Далее\" Вы сможете проверить полноту и "
+"правильность\n"
+"          данных, необходимых для карточек.\n"
+"        "
 
 #: aleksis/apps/kort/templates/kort/card/issue.html:32
 msgid ""
 "\n"
-"          In the following table you can see all selected persons and the related data needed for the cards.\n"
+"          In the following table you can see all selected persons and the "
+"related data needed for the cards.\n"
 "          Please select the persons to whom you want to issue new cards.\n"
 "        "
 msgstr ""
+"\n"
+"          В следующей таблице Вы можете увидеть всех отобранных людей и "
+"данные, необходимые для карт.\n"
+"          Выберите, пожалуйста, для кого Вы хотите выпустить карты.\n"
+"        "
 
 #: aleksis/apps/kort/templates/kort/card/issue.html:65
 msgid "Previous step"
-msgstr ""
+msgstr "Предыдущий шаг"
 
 #: aleksis/apps/kort/templates/kort/card/issue.html:71
 msgid "Issue cards for selected persons"
-msgstr ""
+msgstr "Выпустить карты для отобранных лиц"
 
 #: aleksis/apps/kort/templates/kort/card/issue.html:77
 msgid "Next step"
-msgstr ""
+msgstr "Следующий шаг"
 
 #: aleksis/apps/kort/templates/kort/card/issue.html:83
 msgid "Cancel"
@@ -447,20 +483,20 @@ msgstr "Отменить"
 
 #: aleksis/apps/kort/templates/kort/card/list.html:17
 msgid "Issue new card(s)"
-msgstr ""
+msgstr "Выпустить новую карту (новые карты)"
 
 #: aleksis/apps/kort/templates/kort/card/print_form.html:8
 #: aleksis/apps/kort/templates/kort/card/print_form.html:16
 msgid "Print card"
-msgstr ""
+msgstr "Печать карты"
 
 #: aleksis/apps/kort/templates/kort/card/status.html:3
 msgid "Valid"
-msgstr ""
+msgstr "Действует"
 
 #: aleksis/apps/kort/templates/kort/card/status.html:5
 msgid "Not valid"
-msgstr ""
+msgstr "Не действует"
 
 #: aleksis/apps/kort/templates/kort/card_layout/actions.html:26
 #: aleksis/apps/kort/templates/kort/card_layout/detail.html:24
@@ -472,181 +508,213 @@ msgstr "Редактировать"
 #: aleksis/apps/kort/templates/kort/card_layout/create.html:12
 #: aleksis/apps/kort/templates/kort/card_layout/create.html:13
 msgid "Create card layout"
-msgstr ""
+msgstr "Создать шаблон карты"
 
 #: aleksis/apps/kort/templates/kort/card_layout/create.html:23
 #: aleksis/apps/kort/templates/kort/card_layout/edit.html:23
 msgid "Media Files"
-msgstr ""
+msgstr "Медиафайлы"
 
 #: aleksis/apps/kort/templates/kort/card_layout/delete.html:8
 msgid "Delete Card Layout"
-msgstr ""
+msgstr "Удалить шаблон карты"
 
 #: aleksis/apps/kort/templates/kort/card_layout/delete.html:12
 msgid "Do you really want to delete the following card layout?"
-msgstr ""
+msgstr "Вы действительно хотите удалить этот шаблон?"
 
 #: aleksis/apps/kort/templates/kort/card_layout/delete.html:16
 msgid ""
 "\n"
-"      Please pay attention that this also will prevent the successful finishing of all active print jobs\n"
+"      Please pay attention that this also will prevent the successful "
+"finishing of all active print jobs\n"
 "      which use these template.\n"
 "    "
 msgstr ""
+"\n"
+"      Обратите, пожалуйста, внимание, что это также помешает успешному "
+"выполнению всех активных заданий печати,\n"
+"      которые используют этот шаблон.\n"
+"    "
 
 #: aleksis/apps/kort/templates/kort/card_layout/detail.html:15
 msgid "Back to all layouts"
-msgstr ""
+msgstr "Назад ко всем шаблонам"
 
 #: aleksis/apps/kort/templates/kort/card_layout/detail_content.html:6
 msgid "Layout details"
-msgstr ""
+msgstr "Данные шаблона"
 
 #: aleksis/apps/kort/templates/kort/card_layout/detail_content.html:17
 msgid "Size (w × h)"
-msgstr ""
+msgstr "Размер (Ш х В)"
 
 #: aleksis/apps/kort/templates/kort/card_layout/detail_content.html:24
 msgid "Media files"
-msgstr ""
+msgstr "Медиафайлы"
 
 #: aleksis/apps/kort/templates/kort/card_layout/detail_content.html:31
 msgid "No media files uploaded."
-msgstr ""
+msgstr "Медиафайлы не загружены."
 
 #: aleksis/apps/kort/templates/kort/card_layout/edit.html:12
 #: aleksis/apps/kort/templates/kort/card_layout/edit.html:13
 msgid "Edit card layout"
-msgstr ""
+msgstr "Редактировать шаблон карты"
 
 #: aleksis/apps/kort/templates/kort/card_layout/instructions.html:4
 msgid "Instructions on templating the card"
-msgstr ""
+msgstr "Инструкции по созданию карты"
 
 #: aleksis/apps/kort/templates/kort/card_layout/instructions.html:5
 msgid ""
 "\n"
-"      You will be able to use the following data in your individual template. The template has to been written in the\n"
+"      You will be able to use the following data in your individual "
+"template. The template has to been written in the\n"
 "      Django template language.\n"
 "    "
 msgstr ""
+"\n"
+"      Вы сможете использовать следующие данные в своём собственном шаблоне. "
+"Шаблон должен быть написан\n"
+"      на языке шаблонов Django.\n"
+"    "
 
 #: aleksis/apps/kort/templates/kort/card_layout/instructions.html:11
 msgid "The chip number as string"
-msgstr ""
+msgstr "Номер чипа — строка"
 
 #: aleksis/apps/kort/templates/kort/card_layout/instructions.html:15
-msgid "This will give you access to any attributes of the person object like name, personal data or contact data."
+msgid ""
+"This will give you access to any attributes of the person object like name, "
+"personal data or contact data."
 msgstr ""
+"Это предоставит Вам доступ ко всем данным физлица, таким как имя, личные "
+"данные или контактные данные."
 
 #: aleksis/apps/kort/templates/kort/card_layout/instructions.html:19
 msgid "The date until when the card is valid"
-msgstr ""
+msgstr "Дата, до которой действует карта"
 
 #: aleksis/apps/kort/templates/kort/card_layout/instructions.html:24
-msgid "This will give you access to the uploaded media files. Replace 0 by the number of your media file (starting with 0)."
+msgid ""
+"This will give you access to the uploaded media files. Replace 0 by the "
+"number of your media file (starting with 0)."
 msgstr ""
+"Это предоставит Вам доступ к загруженным медиафайлам. Замените 0 на номер "
+"своего файла (начиная с 0)."
 
 #: aleksis/apps/kort/templates/kort/card_layout/list.html:8
 #: aleksis/apps/kort/templates/kort/card_layout/list.html:9
 msgid "Card layouts"
-msgstr ""
+msgstr "Шаблоны карт"
 
 #: aleksis/apps/kort/templates/kort/card_layout/list.html:17
 msgid "Create new card layout"
-msgstr ""
+msgstr "Создать новый шаблон для карт"
 
 #: aleksis/apps/kort/templates/kort/person_status.html:5
 #, python-format
 msgid "%(count)s missing data fields"
-msgstr ""
+msgstr "Отсутствуют поля данных: %(count)s"
 
 #: aleksis/apps/kort/templates/kort/person_status.html:10
 msgid "Data complete"
-msgstr ""
+msgstr "Данные заполнены"
 
 #: aleksis/apps/kort/templates/kort/picture.html:4
 msgid "Person picture"
-msgstr ""
+msgstr "Личное фото"
 
 #: aleksis/apps/kort/templates/kort/printer/create.html:12
 #: aleksis/apps/kort/templates/kort/printer/create.html:13
 msgid "Create card"
-msgstr ""
+msgstr "Создать карту"
 
 #: aleksis/apps/kort/templates/kort/printer/delete.html:8
 msgid "Delete Card Printer"
-msgstr ""
+msgstr "Удалить принтер для карт"
 
 #: aleksis/apps/kort/templates/kort/printer/delete.html:12
 msgid "Do you really want to delete the following card printer?"
-msgstr ""
+msgstr "Вы действительно хотите удалить этот принтер для карт?"
 
 #: aleksis/apps/kort/templates/kort/printer/delete.html:16
 msgid ""
 "\n"
-"      Please pay attention that this also will deactivate the access for the print client and you would have to\n"
+"      Please pay attention that this also will deactivate the access for the "
+"print client and you would have to\n"
 "      reconfigure the client if you want to use it further.\n"
 "    "
 msgstr ""
+"\n"
+"      Обратите, пожалуйста, внимание на то, что это также отключит доступ "
+"клиентов печати и если позже\n"
+"      захотите их использовать, их будет необходимо перенастроить заново.\n"
+"    "
 
 #: aleksis/apps/kort/templates/kort/printer/detail.html:15
 msgid "Back to all printers"
-msgstr ""
+msgstr "Назад ко всем принтерам"
 
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:6
 msgid "Printer details"
-msgstr ""
+msgstr "Подробные сведения о принтере"
 
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:33
 msgid "never seen yet"
-msgstr ""
+msgstr "ранее не встречалось"
 
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:60
 msgid "Setup printer client"
-msgstr ""
+msgstr "Настроить клиент печати"
 
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:62
 msgid ""
 "\n"
-"              To enable printing, you have to register the print client on the device\n"
+"              To enable printing, you have to register the print client on "
+"the device\n"
 "              which the printer is connected to.\n"
 "            "
 msgstr ""
+"\n"
+"              Для активации печати, Вам необходимо зарегистрировать клиент "
+"печати\n"
+"              на устройстве, к которому подключен принтер.\n"
+"            "
 
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:67
 msgid "1. Download print client"
-msgstr ""
+msgstr "1. Скачать клиента печати"
 
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:68
 msgid "2. Download configuration file"
-msgstr ""
+msgstr "2. Скачать конфигурационный файл"
 
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:71
 msgid "Download configuration"
-msgstr ""
+msgstr "Скачать конфигурацию"
 
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:73
 msgid "3. Setup client"
-msgstr ""
+msgstr "3. Настроить клиента"
 
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:80
 msgid "Print jobs"
-msgstr ""
+msgstr "Задания печати"
 
-#: aleksis/apps/kort/templates/kort/printer/detail_content.html:88
+#: aleksis/apps/kort/templates/kort/printer/detail_content.html:87
 msgid "Created at"
-msgstr ""
+msgstr "Создано в"
 
 #: aleksis/apps/kort/templates/kort/printer/edit.html:12
 #: aleksis/apps/kort/templates/kort/printer/edit.html:13
 msgid "Edit card printer"
-msgstr ""
+msgstr "Редактировать принтер карт"
 
 #: aleksis/apps/kort/templates/kort/printer/list.html:17
 msgid "Register new card printer"
-msgstr ""
+msgstr "Зарегистрировать новый принтер для карт"
 
 #: aleksis/apps/kort/templates/kort/printer/print_job_delete.html:8
 msgid "Delete Card Print Job"
@@ -658,68 +726,74 @@ msgstr ""
 
 #: aleksis/apps/kort/views.py:69
 msgid "The cards have been created successfully."
-msgstr ""
+msgstr "Карты были успешно созданы."
 
 #: aleksis/apps/kort/views.py:137 aleksis/apps/kort/views.py:193
-msgid "The print job #{} for the card {} on the printer {} has been created successfully."
-msgstr ""
+msgid ""
+"The print job #{} for the card {} on the printer {} has been created "
+"successfully."
+msgstr "Задание печати #{} для карты {} на принтере {} успешно создано."
 
 #: aleksis/apps/kort/views.py:145 aleksis/apps/kort/views.py:200
 msgid "The print job couldn't be started because of the following error: {}"
-msgstr ""
+msgstr "Задание печати не запущено из-за ошибки: {}"
 
 #: aleksis/apps/kort/views.py:158
 msgid "The card has been deleted successfully."
-msgstr ""
+msgstr "Карта успешно удалена."
 
 #: aleksis/apps/kort/views.py:171
 msgid "The card has been deactivated successfully."
-msgstr ""
+msgstr "Карта успешно деактивирована."
 
-#: aleksis/apps/kort/views.py:238
+#: aleksis/apps/kort/views.py:232
 msgid "Progress: Generate card layout as PDF file"
-msgstr ""
+msgstr "Прогресс: Сохранение шаблона карты в файл PDF"
 
-#: aleksis/apps/kort/views.py:239
+#: aleksis/apps/kort/views.py:239 aleksis/apps/kort/views.py:233
 msgid "Generating PDF file …"
 msgstr "Создание файла PDF …"
 
-#: aleksis/apps/kort/views.py:240
+#: aleksis/apps/kort/views.py:234
 msgid "The PDF file with the card layout has been generated successfully."
-msgstr ""
+msgstr "Файл PDF c шаблоном карты успешно сохранен."
 
-#: aleksis/apps/kort/views.py:241
+#: aleksis/apps/kort/views.py:241 aleksis/apps/kort/views.py:235
 msgid "There was a problem while generating the PDF file."
 msgstr "Во время создания файла PDF возникла проблема."
 
-#: aleksis/apps/kort/views.py:243
+#: aleksis/apps/kort/views.py:237
 msgid "Show card"
-msgstr ""
+msgstr "Показать карту"
 
-#: aleksis/apps/kort/views.py:281
+#: aleksis/apps/kort/views.py:275
 msgid "The card printer has been created successfully."
-msgstr ""
+msgstr "Принтер для карт успешно создан."
 
-#: aleksis/apps/kort/views.py:294
+#: aleksis/apps/kort/views.py:288
 msgid "The card printer has been changed successfully."
-msgstr ""
+msgstr "Принтер для карт успешно изменён."
 
-#: aleksis/apps/kort/views.py:307
+#: aleksis/apps/kort/views.py:301
 msgid "The card printer has been deleted successfully."
-msgstr ""
+msgstr "Принтер для карт успешно удалён."
 
 #: aleksis/apps/kort/views.py:317
 msgid "The card print job has been deleted successfully."
 msgstr ""
 
-#: aleksis/apps/kort/views.py:380
+#: aleksis/apps/kort/views.py:364
 msgid "The card layout has been created successfully."
-msgstr ""
+msgstr "Шаблон карты успешно создан."
 
-#: aleksis/apps/kort/views.py:398
+#: aleksis/apps/kort/views.py:382
 msgid "The card layout has been changed successfully."
-msgstr ""
+msgstr "Шаблон карт успешно изменён."
 
-#: aleksis/apps/kort/views.py:411
+#: aleksis/apps/kort/views.py:395
 msgid "The card layout has been deleted successfully."
-msgstr ""
+msgstr "Шаблон карт успешно удалён."
+
+#: aleksis/apps/kort/views.py:220
+msgid "The chip number is missing."
+msgstr "Номер чипа отсутствует."
diff --git a/aleksis/apps/kort/locale/uk/LC_MESSAGES/django.po b/aleksis/apps/kort/locale/uk/LC_MESSAGES/django.po
index ed0477d790083643fc26e452ec4a4f0e29e85f56..c0646a347f6ffa9c818fb5817611b0438b222c64 100644
--- a/aleksis/apps/kort/locale/uk/LC_MESSAGES/django.po
+++ b/aleksis/apps/kort/locale/uk/LC_MESSAGES/django.po
@@ -10,17 +10,21 @@ msgstr ""
 "POT-Creation-Date: 2023-09-16 17:04+0200\n"
 "PO-Revision-Date: 2023-04-13 23:05+0000\n"
 "Last-Translator: Serhii Horichenko <m@sgg.im>\n"
-"Language-Team: Ukrainian <https://translate.edugit.org/projects/aleksis/aleksis-app-kort/uk/>\n"
+"Language-Team: Ukrainian <https://translate.edugit.org/projects/aleksis/"
+"aleksis-app-kort/uk/>\n"
 "Language: uk\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 % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"
+"Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != "
+"11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % "
+"100 > 14) ? 1 : n % 1 == 0 && (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/kort/apps.py:31
 msgid "Access and manage printer status and print jobs"
-msgstr "Керування станом та доступом до принтера та завданнями друку"
+msgstr "Керування станом принтера, доступом та завданнями друку"
 
 #: aleksis/apps/kort/forms.py:15
 msgid "Select person(s) or group(s)"
@@ -56,6 +60,7 @@ msgid "Groups"
 msgstr "Групи"
 
 #: aleksis/apps/kort/forms.py:51 aleksis/apps/kort/models.py:209
+#: aleksis/apps/kort/models.py:191
 msgid "Card layout"
 msgstr "Шаблон картки"
 
@@ -63,6 +68,7 @@ msgstr "Шаблон картки"
 #: aleksis/apps/kort/tables.py:23
 #: aleksis/apps/kort/templates/kort/card/detail_content.html:24
 #: aleksis/apps/kort/templates/kort/card/short.html:12
+#: aleksis/apps/kort/models.py:263 aleksis/apps/kort/tables.py:30
 msgid "Valid until"
 msgstr "Діє до"
 
@@ -83,38 +89,39 @@ msgid "Printer settings"
 msgstr "Налаштування принтера"
 
 #: aleksis/apps/kort/forms.py:138 aleksis/apps/kort/models.py:246
+#: aleksis/apps/kort/models.py:228
 msgid "Required data fields"
 msgstr "Необхідні поля даних"
 
-#: aleksis/apps/kort/models.py:25
+#: aleksis/apps/kort/models.py:25 aleksis/apps/kort/models.py:24
 msgid "Online"
 msgstr "Онлайн"
 
-#: aleksis/apps/kort/models.py:26
+#: aleksis/apps/kort/models.py:26 aleksis/apps/kort/models.py:25
 msgid "Offline"
 msgstr "Офлайн"
 
-#: aleksis/apps/kort/models.py:27
+#: aleksis/apps/kort/models.py:27 aleksis/apps/kort/models.py:26
 msgid "With errors"
 msgstr "З помилками"
 
-#: aleksis/apps/kort/models.py:28
+#: aleksis/apps/kort/models.py:28 aleksis/apps/kort/models.py:27
 msgid "Not registered"
 msgstr "Не зареєстровано"
 
-#: aleksis/apps/kort/models.py:57
+#: aleksis/apps/kort/models.py:57 aleksis/apps/kort/models.py:56
 msgid "Registered"
 msgstr "Зареєстровано"
 
-#: aleksis/apps/kort/models.py:58
+#: aleksis/apps/kort/models.py:58 aleksis/apps/kort/models.py:57
 msgid "In progress"
 msgstr "Обробляється"
 
-#: aleksis/apps/kort/models.py:59
+#: aleksis/apps/kort/models.py:59 aleksis/apps/kort/models.py:58
 msgid "Finished"
 msgstr "Завершено"
 
-#: aleksis/apps/kort/models.py:60
+#: aleksis/apps/kort/models.py:60 aleksis/apps/kort/models.py:59
 msgid "Failed"
 msgstr "Збій"
 
@@ -123,17 +130,20 @@ msgstr "Збій"
 #: aleksis/apps/kort/templates/kort/card_layout/short.html:4
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:11
 #: aleksis/apps/kort/templates/kort/printer/short.html:4
+#: aleksis/apps/kort/models.py:64 aleksis/apps/kort/models.py:223
 msgid "Name"
 msgstr "Повне ім'я"
 
 #: aleksis/apps/kort/models.py:66
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:24
+#: aleksis/apps/kort/models.py:65
 msgid "Description"
 msgstr "Опис"
 
 #: aleksis/apps/kort/models.py:67
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:17
 #: aleksis/apps/kort/templates/kort/printer/short.html:8
+#: aleksis/apps/kort/models.py:66
 msgid "Location"
 msgstr "Нас.пункт"
 
@@ -143,19 +153,24 @@ msgstr "Нас.пункт"
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:38
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:91
 #: aleksis/apps/kort/templates/kort/printer/short.html:12
+#: aleksis/apps/kort/models.py:70 aleksis/apps/kort/models.py:336
+#: aleksis/apps/kort/tables.py:95
+#: aleksis/apps/kort/templates/kort/printer/detail_content.html:90
 msgid "Status"
 msgstr "Стан"
 
 #: aleksis/apps/kort/models.py:75 aleksis/apps/kort/models.py:358
+#: aleksis/apps/kort/models.py:74 aleksis/apps/kort/models.py:340
 msgid "Status text"
 msgstr "Опис стану"
 
 #: aleksis/apps/kort/models.py:76 aleksis/apps/kort/tables.py:52
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:31
+#: aleksis/apps/kort/models.py:75 aleksis/apps/kort/tables.py:58
 msgid "Last seen at"
 msgstr "Востаннє на зв'язку о"
 
-#: aleksis/apps/kort/models.py:81
+#: aleksis/apps/kort/models.py:81 aleksis/apps/kort/models.py:80
 msgid "OAuth2 application"
 msgstr "Програма для OAuth2"
 
@@ -163,7 +178,7 @@ msgstr "Програма для OAuth2"
 msgid "OAuth2 client secret"
 msgstr ""
 
-#: aleksis/apps/kort/models.py:95
+#: aleksis/apps/kort/models.py:95 aleksis/apps/kort/models.py:87
 msgid "CUPS printer"
 msgstr "Принтер CUPS"
 
@@ -171,151 +186,165 @@ msgstr "Принтер CUPS"
 msgid "Leave blank to deactivate CUPS printing"
 msgstr ""
 
-#: aleksis/apps/kort/models.py:100
+#: aleksis/apps/kort/models.py:100 aleksis/apps/kort/models.py:89
 msgid "Generate card number on server"
 msgstr "Генерувати номер картки на сервері"
 
-#: aleksis/apps/kort/models.py:102
+#: aleksis/apps/kort/models.py:102 aleksis/apps/kort/models.py:91
 msgid "Card detector"
 msgstr "Детектор карток"
 
-#: aleksis/apps/kort/models.py:199
+#: aleksis/apps/kort/models.py:199 aleksis/apps/kort/models.py:181
 msgid "Card printer"
 msgstr "Принтер для карток"
 
 #: aleksis/apps/kort/models.py:200
 #: aleksis/apps/kort/templates/kort/printer/list.html:8
 #: aleksis/apps/kort/templates/kort/printer/list.html:9
+#: aleksis/apps/kort/models.py:182
 msgid "Card printers"
 msgstr "Принтери для карток"
 
-#: aleksis/apps/kort/models.py:204
+#: aleksis/apps/kort/models.py:204 aleksis/apps/kort/models.py:186
 msgid "Media file"
 msgstr "Медіафайл"
 
-#: aleksis/apps/kort/models.py:216
+#: aleksis/apps/kort/models.py:216 aleksis/apps/kort/models.py:198
 msgid "Media file for a card layout"
 msgstr "Медіафайл для шаблона карток"
 
-#: aleksis/apps/kort/models.py:217
+#: aleksis/apps/kort/models.py:217 aleksis/apps/kort/models.py:199
 msgid "Media files for card layouts"
 msgstr "Медіафайли для шаблонів карток"
 
 #: aleksis/apps/kort/models.py:242
 #: aleksis/apps/kort/templates/kort/card_layout/detail_content.html:43
+#: aleksis/apps/kort/models.py:224
 msgid "Template"
 msgstr "Шаблон"
 
 #: aleksis/apps/kort/models.py:243
 #: aleksis/apps/kort/templates/kort/card_layout/detail_content.html:49
+#: aleksis/apps/kort/models.py:225
 msgid "Custom CSS"
 msgstr "Власний CSS"
 
-#: aleksis/apps/kort/models.py:244
+#: aleksis/apps/kort/models.py:244 aleksis/apps/kort/models.py:226
 msgid "Width"
 msgstr "Ширина"
 
 #: aleksis/apps/kort/models.py:244 aleksis/apps/kort/models.py:245
+#: aleksis/apps/kort/models.py:226 aleksis/apps/kort/models.py:227
 msgid "in mm"
 msgstr "в мм"
 
-#: aleksis/apps/kort/models.py:245
+#: aleksis/apps/kort/models.py:245 aleksis/apps/kort/models.py:227
 msgid "Height"
 msgstr "Висота"
 
-#: aleksis/apps/kort/models.py:266
+#: aleksis/apps/kort/models.py:266 aleksis/apps/kort/models.py:248
 msgid "Template is invalid: {}"
 msgstr "Шаблон неправильний: {}"
 
 #: aleksis/apps/kort/models.py:272 aleksis/apps/kort/models.py:285
 #: aleksis/apps/kort/templates/kort/card/detail_content.html:31
 #: aleksis/apps/kort/templates/kort/card_layout/detail.html:8
+#: aleksis/apps/kort/models.py:254 aleksis/apps/kort/models.py:267
 msgid "Card Layout"
 msgstr "Шаблон картки"
 
-#: aleksis/apps/kort/models.py:273
+#: aleksis/apps/kort/models.py:273 aleksis/apps/kort/models.py:255
 msgid "Card Layouts"
 msgstr "Шаблони карток"
 
 #: aleksis/apps/kort/models.py:278 aleksis/apps/kort/tables.py:20
 #: aleksis/apps/kort/templates/kort/card/detail_content.html:11
 #: aleksis/apps/kort/templates/kort/card/short.html:4
+#: aleksis/apps/kort/models.py:260
 msgid "Person"
 msgstr "Особа"
 
-#: aleksis/apps/kort/models.py:280
+#: aleksis/apps/kort/models.py:280 aleksis/apps/kort/models.py:262
 msgid "Chip Number"
 msgstr "Номер чипа"
 
 #: aleksis/apps/kort/models.py:282 aleksis/apps/kort/tables.py:24
+#: aleksis/apps/kort/models.py:264 aleksis/apps/kort/tables.py:31
 msgid "Deactivated"
 msgstr "Деактивовано"
 
-#: aleksis/apps/kort/models.py:288
+#: aleksis/apps/kort/models.py:288 aleksis/apps/kort/models.py:270
 msgid "PDF file"
 msgstr "Файл PDF"
 
-#: aleksis/apps/kort/models.py:321
+#: aleksis/apps/kort/models.py:321 aleksis/apps/kort/models.py:303
 msgid "There is no layout provided for the card."
 msgstr "Для картки не задано шаблон."
 
 #: aleksis/apps/kort/models.py:340 aleksis/apps/kort/models.py:349
 #: aleksis/apps/kort/templates/kort/card/detail.html:8
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:85
+#: aleksis/apps/kort/models.py:322 aleksis/apps/kort/models.py:331
+#: aleksis/apps/kort/templates/kort/printer/detail_content.html:84
 msgid "Card"
 msgstr "Картка"
 
 #: aleksis/apps/kort/models.py:341
 #: aleksis/apps/kort/templates/kort/card/list.html:8
 #: aleksis/apps/kort/templates/kort/card/list.html:9
+#: aleksis/apps/kort/models.py:323
 msgid "Cards"
 msgstr "Картки"
 
-#: aleksis/apps/kort/models.py:346
+#: aleksis/apps/kort/models.py:346 aleksis/apps/kort/models.py:328
 msgid "Printer"
 msgstr "Принтер"
 
-#: aleksis/apps/kort/models.py:361
+#: aleksis/apps/kort/models.py:361 aleksis/apps/kort/models.py:343
 msgid "Card print job"
-msgstr "Завдання друку карток"
+msgstr "Завдання на друк картки"
 
-#: aleksis/apps/kort/models.py:362
+#: aleksis/apps/kort/models.py:362 aleksis/apps/kort/models.py:344
 msgid "Card print jobs"
-msgstr "Завдання друку карток"
+msgstr "Завдання на друк карток"
 
 #: aleksis/apps/kort/tables.py:21
 #: aleksis/apps/kort/templates/kort/card/detail_content.html:17
 #: aleksis/apps/kort/templates/kort/card/short.html:8
+#: aleksis/apps/kort/tables.py:28
 msgid "Chip number"
 msgstr "Номер чипа"
 
 #: aleksis/apps/kort/tables.py:22 aleksis/apps/kort/tables.py:51
+#: aleksis/apps/kort/tables.py:29 aleksis/apps/kort/tables.py:57
 msgid "Current status"
 msgstr "Поточний стан"
 
 #: aleksis/apps/kort/tables.py:25 aleksis/apps/kort/tables.py:55
-#: aleksis/apps/kort/tables.py:81
+#: aleksis/apps/kort/tables.py:81 aleksis/apps/kort/tables.py:32
+#: aleksis/apps/kort/tables.py:61 aleksis/apps/kort/tables.py:85
 msgid "Actions"
 msgstr "Дії"
 
-#: aleksis/apps/kort/tables.py:48
+#: aleksis/apps/kort/tables.py:48 aleksis/apps/kort/tables.py:54
 msgid "Printer name"
 msgstr "Назва принтера"
 
-#: aleksis/apps/kort/tables.py:49
+#: aleksis/apps/kort/tables.py:49 aleksis/apps/kort/tables.py:55
 msgid "Printer location"
 msgstr "Розташування принтера"
 
-#: aleksis/apps/kort/tables.py:53
+#: aleksis/apps/kort/tables.py:53 aleksis/apps/kort/tables.py:59
 msgid "Running jobs"
 msgstr "Поточні завдання"
 
-#: aleksis/apps/kort/tables.py:77
+#: aleksis/apps/kort/tables.py:77 aleksis/apps/kort/tables.py:81
 msgid "Layout name"
 msgstr "Назва шаблону"
 
 #: aleksis/apps/kort/templates/kort/card/actions.html:8
 #: aleksis/apps/kort/templates/kort/card/detail.html:13
+#: aleksis/apps/kort/templates/kort/card/detail.html:9
 #, python-format
 msgid "Card of %(person)s"
 msgstr "Картка для %(person)s"
@@ -365,14 +394,18 @@ msgstr "Ви дійсно хочете видалити цю картку?"
 #: aleksis/apps/kort/templates/kort/card/delete.html:16
 msgid ""
 "\n"
-"      Please pay attention that a deletion of a card is irreversible and should be only used to clean up misprints.\n"
-"      If you just want to make a card unusable because a student has lost his card or left the school,\n"
+"      Please pay attention that a deletion of a card is irreversible and "
+"should be only used to clean up misprints.\n"
+"      If you just want to make a card unusable because a student has lost "
+"his card or left the school,\n"
 "      please deactivate the card instead.\n"
 "    "
 msgstr ""
 "\n"
-"      Будь ласка, зверніть увагу, що скасувати видалення картки неможливо і повинно використовуватися лише для виправлення помилок.\n"
-"      Якщо Ви просто хочете зробити картку непридатною для використання через те, що учень загубив свою картку або покинув школу,\n"
+"      Будь ласка, зверніть увагу, що скасувати видалення картки неможливо і "
+"повинно використовуватися лише для виправлення помилок.\n"
+"      Якщо Ви просто хочете зробити картку непридатною для використання "
+"через те, що учень загубив свою картку або покинув школу,\n"
 "      то, будь ласка, краще деактивуйте картку.\n"
 "    "
 
@@ -405,7 +438,6 @@ msgstr "Створити картку як PDF"
 
 #: aleksis/apps/kort/templates/kort/card/detail_content.html:68
 #, fuzzy
-#| msgid "Create card layout"
 msgid "Preview card layout"
 msgstr "Створити шаблон картки"
 
@@ -422,26 +454,32 @@ msgstr "Створити картку(и)"
 #: aleksis/apps/kort/templates/kort/card/issue.html:23
 msgid ""
 "\n"
-"          Please select the persons and/or the groups to whom you want to issue new cards.\n"
-"          After clicking on 'Next', you will be able to check whether the data of the persons\n"
+"          Please select the persons and/or the groups to whom you want to "
+"issue new cards.\n"
+"          After clicking on 'Next', you will be able to check whether the "
+"data of the persons\n"
 "          are complete and include everything needed for the cards.\n"
 "        "
 msgstr ""
 "\n"
-"          Будь ласка, оберіть осіб та/або групи, для яких Ви хочете створити нові картки.\n"
-"          Після натискання кнопки \"Далі\" Ви зможете перевірити, чи дані осіб\n"
+"          Будь ласка, оберіть осіб та/або групи, для яких Ви хочете створити "
+"нові картки.\n"
+"          Після натискання кнопки \"Далі\" Ви зможете перевірити, чи дані "
+"осіб\n"
 "          є повними і включають все необхідне для карток.\n"
 "        "
 
 #: aleksis/apps/kort/templates/kort/card/issue.html:32
 msgid ""
 "\n"
-"          In the following table you can see all selected persons and the related data needed for the cards.\n"
+"          In the following table you can see all selected persons and the "
+"related data needed for the cards.\n"
 "          Please select the persons to whom you want to issue new cards.\n"
 "        "
 msgstr ""
 "\n"
-"          У наступній таблиці Ви можете побачити усіх обраних осіб та пов'язані дані, необхідні для карток.\n"
+"          У наступній таблиці Ви можете побачити усіх обраних осіб та "
+"пов'язані дані, необхідні для карток.\n"
 "          Будь ласка, оберіть осіб, для яких Ви хочете зробити нові картки.\n"
 "        "
 
@@ -463,12 +501,12 @@ msgstr "Скасувати"
 
 #: aleksis/apps/kort/templates/kort/card/list.html:17
 msgid "Issue new card(s)"
-msgstr "Створити нову(і) картку(и)"
+msgstr "Створити нову картку (нові картки)"
 
 #: aleksis/apps/kort/templates/kort/card/print_form.html:8
 #: aleksis/apps/kort/templates/kort/card/print_form.html:16
 msgid "Print card"
-msgstr "Друкувати картку"
+msgstr "Друк картки"
 
 #: aleksis/apps/kort/templates/kort/card/status.html:3
 msgid "Valid"
@@ -506,12 +544,14 @@ msgstr "Ви дійсно хочете видалити цей шаблон?"
 #: aleksis/apps/kort/templates/kort/card_layout/delete.html:16
 msgid ""
 "\n"
-"      Please pay attention that this also will prevent the successful finishing of all active print jobs\n"
+"      Please pay attention that this also will prevent the successful "
+"finishing of all active print jobs\n"
 "      which use these template.\n"
 "    "
 msgstr ""
 "\n"
-"      Зверніть увагу, що це також перешкоджатиме успішному завершенню всіх активних завдань друку,\n"
+"      Зверніть увагу, що це також перешкоджатиме успішному завершенню всіх "
+"активних завдань друку,\n"
 "      які використовують цей шаблон.\n"
 "    "
 
@@ -547,12 +587,14 @@ msgstr "Настанови щодо створення шаблонів карт
 #: aleksis/apps/kort/templates/kort/card_layout/instructions.html:5
 msgid ""
 "\n"
-"      You will be able to use the following data in your individual template. The template has to been written in the\n"
+"      You will be able to use the following data in your individual "
+"template. The template has to been written in the\n"
 "      Django template language.\n"
 "    "
 msgstr ""
 "\n"
-"      Ви зможете використовувати наведені нижче дані у своєму власному шаблоні. Шаблон повинен бути написаний\n"
+"      Ви зможете використовувати наведені нижче дані у своєму власному "
+"шаблоні. Шаблон повинен бути написаний\n"
 "      мовою шаблонів Django.\n"
 "    "
 
@@ -561,16 +603,24 @@ msgid "The chip number as string"
 msgstr "Номер чипа — рядок"
 
 #: aleksis/apps/kort/templates/kort/card_layout/instructions.html:15
-msgid "This will give you access to any attributes of the person object like name, personal data or contact data."
-msgstr "Це надасть Вам доступ до особистих атрибутів на кшталт імені, особистих або контактних даних."
+msgid ""
+"This will give you access to any attributes of the person object like name, "
+"personal data or contact data."
+msgstr ""
+"Це надасть Вам доступ до усіх особистих атрибутів на кшталт імені, особистих "
+"або контактних даних."
 
 #: aleksis/apps/kort/templates/kort/card_layout/instructions.html:19
 msgid "The date until when the card is valid"
 msgstr "Дата, до якої діє картка"
 
 #: aleksis/apps/kort/templates/kort/card_layout/instructions.html:24
-msgid "This will give you access to the uploaded media files. Replace 0 by the number of your media file (starting with 0)."
-msgstr "Це надасть Вам доступ до завантажених медіафайлів. Замініть 0 на номер Вашого файлу (починаючи з 0)."
+msgid ""
+"This will give you access to the uploaded media files. Replace 0 by the "
+"number of your media file (starting with 0)."
+msgstr ""
+"Це надасть Вам доступ до завантажених медіафайлів. Замініть 0 на номер "
+"Вашого файлу (починаючи з 0)."
 
 #: aleksis/apps/kort/templates/kort/card_layout/list.html:8
 #: aleksis/apps/kort/templates/kort/card_layout/list.html:9
@@ -579,12 +629,12 @@ msgstr "Шаблони карток"
 
 #: aleksis/apps/kort/templates/kort/card_layout/list.html:17
 msgid "Create new card layout"
-msgstr "Створіть новий шаблон для карток"
+msgstr "Створити новий шаблон для карток"
 
 #: aleksis/apps/kort/templates/kort/person_status.html:5
 #, python-format
 msgid "%(count)s missing data fields"
-msgstr "Відсутні %(count)s поля даних"
+msgstr "Відсутні поля даних: %(count)s"
 
 #: aleksis/apps/kort/templates/kort/person_status.html:10
 msgid "Data complete"
@@ -610,13 +660,16 @@ msgstr "Ви дійсно хочете видалити цей принтер д
 #: aleksis/apps/kort/templates/kort/printer/delete.html:16
 msgid ""
 "\n"
-"      Please pay attention that this also will deactivate the access for the print client and you would have to\n"
+"      Please pay attention that this also will deactivate the access for the "
+"print client and you would have to\n"
 "      reconfigure the client if you want to use it further.\n"
 "    "
 msgstr ""
 "\n"
-"      Зверніть увагу на те, що це також деактивує доступ клієнтів до друку, і Вам доведеться\n"
-"      переналаштовувати клієнтське ПЗ, якщо Ви пізніше захочете його використовувати.\n"
+"      Зверніть увагу на те, що це також деактивує доступ клієнтів до друку, "
+"і Вам доведеться\n"
+"      переналаштовувати клієнтське ПЗ, якщо Ви пізніше захочете його "
+"використовувати.\n"
 "    "
 
 #: aleksis/apps/kort/templates/kort/printer/detail.html:15
@@ -638,12 +691,14 @@ msgstr "Налаштувати клієнт друку"
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:62
 msgid ""
 "\n"
-"              To enable printing, you have to register the print client on the device\n"
+"              To enable printing, you have to register the print client on "
+"the device\n"
 "              which the printer is connected to.\n"
 "            "
 msgstr ""
 "\n"
-"              Для увімкнення друку, потрібно зареєструвати клієнт друку на пристрої,\n"
+"              Для увімкнення друку, потрібно зареєструвати клієнт друку на "
+"пристрої,\n"
 "              до якого під'єднаний принтер.\n"
 "            "
 
@@ -668,6 +723,7 @@ msgid "Print jobs"
 msgstr "Завдання друку"
 
 #: aleksis/apps/kort/templates/kort/printer/detail_content.html:88
+#: aleksis/apps/kort/templates/kort/printer/detail_content.html:87
 msgid "Created at"
 msgstr "Створено о"
 
@@ -682,13 +738,11 @@ msgstr "Зареєструвати новий принтер для карток
 
 #: aleksis/apps/kort/templates/kort/printer/print_job_delete.html:8
 #, fuzzy
-#| msgid "Delete Card Printer"
 msgid "Delete Card Print Job"
 msgstr "Видалити принтер для карток"
 
 #: aleksis/apps/kort/templates/kort/printer/print_job_delete.html:12
 #, fuzzy
-#| msgid "Do you really want to delete the following card printer?"
 msgid "Do you really want to delete the following card print job?"
 msgstr "Ви дійсно хочете видалити цей принтер для карток?"
 
@@ -697,12 +751,14 @@ msgid "The cards have been created successfully."
 msgstr "Картки були успішно створені."
 
 #: aleksis/apps/kort/views.py:137 aleksis/apps/kort/views.py:193
-msgid "The print job #{} for the card {} on the printer {} has been created successfully."
+msgid ""
+"The print job #{} for the card {} on the printer {} has been created "
+"successfully."
 msgstr "Завдання друку #{} для картки {} на принтер {} було успішно створене."
 
 #: aleksis/apps/kort/views.py:145 aleksis/apps/kort/views.py:200
 msgid "The print job couldn't be started because of the following error: {}"
-msgstr "Завдання друку не розпочало виконання через помилку: {}"
+msgstr "Завдання друку не розпочалося через помилку: {}"
 
 #: aleksis/apps/kort/views.py:158
 msgid "The card has been deleted successfully."
@@ -712,55 +768,55 @@ msgstr "Картка успішно видалена."
 msgid "The card has been deactivated successfully."
 msgstr "Картка була успішно деактивована."
 
-#: aleksis/apps/kort/views.py:238
+#: aleksis/apps/kort/views.py:238 aleksis/apps/kort/views.py:232
 msgid "Progress: Generate card layout as PDF file"
 msgstr "Прогрес: Збереження шаблону картки у файл PDF"
 
-#: aleksis/apps/kort/views.py:239
+#: aleksis/apps/kort/views.py:239 aleksis/apps/kort/views.py:233
 msgid "Generating PDF file …"
 msgstr "Створення файлу PDF …"
 
-#: aleksis/apps/kort/views.py:240
+#: aleksis/apps/kort/views.py:240 aleksis/apps/kort/views.py:234
 msgid "The PDF file with the card layout has been generated successfully."
 msgstr "Файл PDF з шаблоном картки успішно збережений."
 
-#: aleksis/apps/kort/views.py:241
+#: aleksis/apps/kort/views.py:241 aleksis/apps/kort/views.py:235
 msgid "There was a problem while generating the PDF file."
 msgstr "Під час створення файлу PDF виникла проблема."
 
-#: aleksis/apps/kort/views.py:243
+#: aleksis/apps/kort/views.py:243 aleksis/apps/kort/views.py:237
 msgid "Show card"
 msgstr "Показати картку"
 
-#: aleksis/apps/kort/views.py:281
+#: aleksis/apps/kort/views.py:281 aleksis/apps/kort/views.py:275
 msgid "The card printer has been created successfully."
 msgstr "Принтер для карток успішно створений."
 
-#: aleksis/apps/kort/views.py:294
+#: aleksis/apps/kort/views.py:294 aleksis/apps/kort/views.py:288
 msgid "The card printer has been changed successfully."
 msgstr "Принтер для карток успішно змінений."
 
-#: aleksis/apps/kort/views.py:307
+#: aleksis/apps/kort/views.py:307 aleksis/apps/kort/views.py:301
 msgid "The card printer has been deleted successfully."
 msgstr "Принтер для карток успішно видалений."
 
 #: aleksis/apps/kort/views.py:317
 #, fuzzy
-#| msgid "The card printer has been deleted successfully."
 msgid "The card print job has been deleted successfully."
 msgstr "Принтер для карток успішно видалений."
 
-#: aleksis/apps/kort/views.py:380
+#: aleksis/apps/kort/views.py:380 aleksis/apps/kort/views.py:364
 msgid "The card layout has been created successfully."
 msgstr "Шаблон картки успішно створений."
 
-#: aleksis/apps/kort/views.py:398
+#: aleksis/apps/kort/views.py:398 aleksis/apps/kort/views.py:382
 msgid "The card layout has been changed successfully."
 msgstr "Шаблон картки успішно змінений."
 
-#: aleksis/apps/kort/views.py:411
+#: aleksis/apps/kort/views.py:411 aleksis/apps/kort/views.py:395
 msgid "The card layout has been deleted successfully."
 msgstr "Шаблон картки успішно видалений."
 
-#~ msgid "The chip number is missing."
-#~ msgstr "Номер чипа відсутній."
+#: aleksis/apps/kort/views.py:220
+msgid "The chip number is missing."
+msgstr "Номер чипа відсутній."