lizerk ed636081dc refactor: complete notifications v2 system with frontend translation
- Remove hard-coded Russian translations from backend API
- Backend now returns raw verb values (language-agnostic)
- Implement frontend translation functions for notification titles and categories
- Add category badge system with filters on notifications page
- Create translation utilities in frontend (verbTranslations.ts)
- Add notification settings page structure
- Update API endpoints to return simplified notification data
- Refactor notification signals across all apps
- Remove deprecated code and tests
- Add comprehensive documentation for v2 migration

Backend changes:
- notifications/api/views.py: Remove translation logic, simplify responses
- All notification_signals.py: Update to use consistent patterns
- Remove deprecated Telegram bot command
- Update Celery tasks for new notification structure

Frontend changes:
- app/notifications/page.tsx: Add translation functions and category badges
- hooks/useNotificationWebSocket.ts: New WebSocket hook for real-time updates
- lib/verbTranslations.ts: Centralized translation mappings
- components/NotificationCenter.tsx: Update to use new API format

This makes the notifications module fully reusable and project-independent.
2026-03-09 21:35:36 +03:00
..

Backend Scripts

Вспомогательные скрипты для разработки, тестирования и диагностики.

📁 Структура

manual_tests/

22 скрипта - Ручные тесты для быстрой проверки функционала

Запуск из корня backend:

.venv/Scripts/python scripts/manual_tests/test_ldap_simple.py

diagnostic/

8 скриптов - Диагностика и проверка состояния системы

.venv/Scripts/python scripts/diagnostic/check_ldap_user.py
.venv/Scripts/python scripts/diagnostic/check_chat_access.py

utils/

6 утилит - Генерация тестовых данных и анализ

.venv/Scripts/python scripts/utils/create_test_data.py
.venv/Scripts/python scripts/utils/generate_notification.py

ldap/

Shell скрипты - Тестирование LDAP сервера

bash scripts/ldap/ldap-test.sh

🎯 Использование

Важно!

Всегда используйте виртуальное окружение при запуске скриптов:

# Полный путь к Python
.venv/Scripts/python scripts/manual_tests/test_*.py

# Или активируйте venv
source .venv/Scripts/activate  # Linux/Mac
.venv\Scripts\activate         # Windows
python scripts/manual_tests/test_*.py

Django management команды

Для доступа к Django ORM в скриптах используйте:

import os
import django

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'eusrr_backend.settings')
django.setup()

📝 Рекомендации

  1. Именование: Используйте понятные префиксы

    • test_* - тестовые скрипты
    • check_* - проверки
    • create_* - генераторы
    • analyze_* - анализ
  2. Документация: Добавляйте docstring в начало каждого скрипта

  3. Аргументы: Используйте argparse для параметров

  4. Очистка: Удаляйте устаревшие скрипты после интеграции в тесты

🔗 См. также