core: кастомные страницы ошибок 404/403/500/503 + режим техработ
Единый стиль портала (логотип, тема, кнопки) через error_base.html: - 404 — страница не найдена - 403 — доступ запрещён (+ ссылка на IT-поддержку) - 500 — внутренняя ошибка (автономна: без request/context-процессоров) - 503 — технические работы MaintenanceModeMiddleware: при MAINTENANCE_MODE=True отдаёт 503 всем, кроме суперпользователей и путей входа/админки/статики (чтобы админ мог войти и выключить режим). По умолчанию выключен — поведение не меняется. - tests: рендер всех шаблонов, кастомный 404, режим техработ вкл/выкл/супер Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -32,6 +32,7 @@ CARTO_BASEMAPS_API_KEY = env('CARTO_BASEMAPS_API_KEY', default='')
|
||||
# ACORE → PNMS identity sync (portal_connector)
|
||||
PNMS_BASE_URL = env('PNMS_BASE_URL', default='')
|
||||
PNMS_ACORE_TOKEN = env('PNMS_ACORE_TOKEN', default='')
|
||||
MAINTENANCE_MODE = env.bool('MAINTENANCE_MODE', default=False) # режим техработ: всем 503, кроме суперпользователей
|
||||
PNMS_SYNC_ENABLED = env.bool('PNMS_SYNC_ENABLED', default=False)
|
||||
|
||||
# ACORE → MSORTER: только сотрудники в группе «Почта» (админы UI — «Администратор почты»).
|
||||
@@ -121,6 +122,7 @@ MIDDLEWARE = [
|
||||
'django.middleware.common.CommonMiddleware',
|
||||
'django.middleware.csrf.CsrfViewMiddleware',
|
||||
'django.contrib.auth.middleware.AuthenticationMiddleware',
|
||||
'core.middleware.MaintenanceModeMiddleware', # режим техработ (503), после Auth
|
||||
'apps.employees.middleware.TwoFactorMiddleware', # обязательная 2FA для staff (после Auth)
|
||||
'core.middleware.DevAccessPreviewMiddleware',
|
||||
'core.middleware.PortalSectionAccessMiddleware', # барьер разделов (после preview)
|
||||
|
||||
Reference in New Issue
Block a user