diff --git a/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml index 7248a34..345888d 100644 --- a/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml +++ b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml @@ -1,6 +1,6 @@ - - - - + + + + \ No newline at end of file diff --git a/public/privacy.css b/public/privacy.css new file mode 100644 index 0000000..7d1efd2 --- /dev/null +++ b/public/privacy.css @@ -0,0 +1,128 @@ +@font-face { + font-family: "Manrope"; + font-weight: 400; + font-display: swap; + src: url("fonts/manrope-400.ttf") format("truetype"); +} + +@font-face { + font-family: "Manrope"; + font-weight: 700; + font-display: swap; + src: url("fonts/manrope-700.ttf") format("truetype"); +} + +:root { + color-scheme: light; + --primary: #6750a4; + --surface: #fef7ff; + --on-surface: #1d1b20; + --on-surface-variant: #49454f; + --container: #f3edf7; + --outline-variant: #cac4d0; +} + +@media (prefers-color-scheme: dark) { + :root { + color-scheme: dark; + --primary: #d0bcff; + --surface: #141218; + --on-surface: #e6e0e9; + --on-surface-variant: #cac4d0; + --container: #211f26; + --outline-variant: #49454f; + } +} + +* { + box-sizing: border-box; +} + +body { + margin: 0; + background: var(--surface); + color: var(--on-surface); + font: 400 1rem/1.6 "Manrope", system-ui, sans-serif; +} + +main { + max-width: 44rem; + margin: 0 auto; + padding: 2.5rem 1rem 4rem; +} + +header { + display: flex; + gap: 1rem; + align-items: center; + margin-bottom: 1.5rem; +} + +header img { + flex: none; + border-radius: 14px; +} + +h1 { + margin: 0; + font-size: clamp(1.5rem, 5vw, 2rem); + line-height: 1.2; +} + +h2 { + margin: 0 0 0.5rem; + font-size: 1.15rem; +} + +.meta { + margin: 0.25rem 0 0; + color: var(--on-surface-variant); + font-size: 0.9rem; +} + +.lead { + font-size: 1.075rem; +} + +section { + margin-top: 1rem; + padding: 1.25rem; + border-radius: 20px; + background: var(--container); +} + +section p:last-child, +section ul:last-child { + margin-bottom: 0; +} + +p, +ul { + margin: 0 0 0.75rem; +} + +ul { + padding-left: 1.25rem; +} + +dl { + margin: 0; +} + +dt { + font-weight: 700; +} + +dd { + margin: 0 0 0.75rem; + color: var(--on-surface-variant); +} + +dd:last-child { + margin-bottom: 0; +} + +a { + color: var(--primary); + overflow-wrap: anywhere; +} diff --git a/public/privacy.html b/public/privacy.html new file mode 100644 index 0000000..4af4e43 --- /dev/null +++ b/public/privacy.html @@ -0,0 +1,88 @@ + + + + + + Политика конфиденциальности — Расписание ПГУ + + + + + +
+
+ +
+

Политика конфиденциальности

+

Приложение «Расписание ПГУ» · редакция от 20 октября 2026 г.

+
+
+ +

«Расписание ПГУ» показывает расписание занятий Полоцкого государственного университета. Приложение не требует регистрации и не собирает персональные данные. Здесь описано, какие данные всё же обрабатываются и зачем.

+ +
+

Кто отвечает за приложение

+

Разработчик — Захар Тимошенко, частное лицо. Приложение не является официальным приложением университета. По любым вопросам о данных пишите на vp1984tanki@gmail.com.

+
+ +
+

Что хранится на вашем устройстве

+

Эти данные остаются только на устройстве и не передаются разработчику:

+
    +
  • выбранная группа, подгруппа, скрытые занятия и недавние группы;
  • +
  • копии расписаний для работы без интернета;
  • +
  • настройки приложения: тема, напоминания, виджеты;
  • +
  • в веб-версии — Word-файлы, которые вы импортировали сами.
  • +
+

Чтобы удалить эти данные, очистите данные приложения в настройках Android или удалите приложение. В веб-версии очистите данные сайта в браузере. Если в Android включено резервное копирование, система может сохранять настройки приложения в вашем аккаунте Google по правилам Google.

+
+ +
+

Что передаётся на сервер

+

Приложение загружает расписание с сервера разработчика. Сервер получает документы из публичного каталога университета. В запросах передаются только параметры расписания: документ, группа, дата, а при поиске — имя преподавателя или номер аудитории.

+

Как и любой веб-сервер, он видит IP-адрес устройства. Адрес используется только для ограничения числа запросов и защиты от перегрузки. Он хранится в оперативной памяти несколько минут и не записывается в журналы.

+

Word-файлы, которые вы импортируете в веб-версии, обрабатываются в памяти сервера. Временные файлы удаляются сразу после разбора.

+
+ +
+

Чего в приложении нет

+
    +
  • учётных записей и входа;
  • +
  • аналитики, рекламы и рекламных идентификаторов;
  • +
  • сторонних SDK для отслеживания и отчётов о сбоях;
  • +
  • доступа к контактам, местоположению, камере, микрофону и файлам устройства.
  • +
+

Данные не продаются и не передаются третьим лицам.

+
+ +
+

Разрешения Android

+
+
Интернет
+
Загрузка и обновление расписания.
+
Уведомления
+
Напоминания о парах и сообщения об изменениях в расписании. Их можно отключить в любой момент.
+
Запуск при загрузке устройства
+
Восстановление напоминаний после перезагрузки.
+
Точные будильники
+
Необязательно. Напоминания приходят точно ко времени, если вы разрешите это в настройках системы.
+
+
+ +
+

Безопасность

+

Обмен данными с сервером идёт по HTTPS. Ссылки «Поделиться расписанием» содержат только документ и группу. Подгруппа и скрытые занятия по ссылке не передаются.

+
+ +
+

Дети

+

Приложение рассчитано на студентов и не предназначено для детей младше 13 лет. Персональные данные детей не собираются.

+
+ +
+

Изменения политики

+

Если обработка данных изменится, эта страница будет обновлена, а дата редакции вверху изменится.

+
+
+ +