- Implemented JavaScript-based price slider for catalog filtering
- Updated catalog views to handle min/max price inputs and compute slider bounds
- Enhanced templates (`index.html`, `side-bar.html`) with filtering form and updated URLs
- Added CSS for price slider styling and form layout
- Introduced utility functions for URL building and price parsing
- Expanded tests for price filtering, sliders, and sidebar active states
- Updated context processor and header for dynamic navigation with price filters
- Implemented `Favorite` model with unique user-item constraint and timestamped records
- Added `favorites:index` and `favorites:toggle` views with AJAX support for toggling favorites
- Built templates and front-end assets for the favorites page and integration with item grids
- Extended header with favorites link and dynamic counter
- Added tests covering models, views, and templates for the favorites functionality
- Updated admin to enable management of favorites via Django admin interface
- Added `ItemImage` model with migration for image handling and metadata
- Implemented product gallery in `detail.html` with thumbnails for additional images
- Updated `Item` model to include `primary_image` property for gallery logic
- Enhanced `catalog/index.html` to support item thumbnails
- Updated `catalog.css` for responsive gallery and item list styling
- Extended catalog views to prefetch images for efficient queries
- Added comprehensive tests for catalog and detail views
- Configured Django to serve media files in development
- Updated admin with inline support for managing `ItemImage` entities
- Implemented `EmailOrUsernameBackend` to allow authentication via email or username
- Updated settings to include the new authentication backend
- Modified tests to cover email-based login scenarios
- Fixed user lookup logic in forms to handle case-insensitive email matching
- Implemented a `favicon` view to serve a custom SVG favicon
- Added `favicon.ico` route to `urls.py`
- Updated `base.html` to include favicon link tag
- Suppressed specific Django ASGI warnings in DEBUG mode
- Added unit tests to verify favicon behavior and response
- Created `navigation` context processor to manage `active` context
- Integrated the processor into Django settings
- Simplified `header.html` by removing `{% with %}` for `active` management
- Created `FaqQuestionForm` in `forms.py` with custom field validations
- Added FAQ form to the FAQ section with CSRF protection and error handling
- Integrated email notifications to administrator upon FAQ submission
- Updated styles and scripts for form inputs, validation messages, and messages UI
- Adjusted FAQ section layout in `faq.html` and related CSS for responsiveness
- Implemented tests for FAQ form submission and email notifications
- Added email templates for activation and password reset (`activation_email.html`, `password_reset_email.html`, etc.)
- Created forms for registration (`RegisterForm`) and login (`LoginForm`) with custom validation
- Developed new pages for account activation (`activation_success.html`, `activation_invalid.html`), password reset workflow, and profile
- Configured email backend and environment file handling in settings
- Updated header template to conditionally display profile or login links based on authentication status
- Enhanced CSS styles for authentication-related pages and forms
- Created `side-bar.html` and `item-list.html` fragments for catalog page layout
- Updated `catalog/index.html` to include sidebar and item list templates
- Added styles for catalog layout in `catalog.css`
- Enabled `DEBUG=True` in settings for local development
- Adjusted CSS in shipping and services for consistent spacing
- Создан шаблон `catalog/index.html` с поддержкой хлебных крошек и активного раздела
- Добавлены модели `Category` и `Item` с настройкой админ-панели
- Реализован обработчик URL для отображения категорий и страницы каталога
- Добавлены стили `catalog.css` и `error.css` для новых элементов
- Переведён проект в production режим (DEBUG=False)
- Добавлен Whitenoise для управления статическими файлами
- Настроены STATICFILES_DIRS, STATIC_ROOT и STORAGES
- Добавлен middleware Whitenoise
- Обновлён Dockerfile: добавлена команда collectstatic
- Включён preview host в ALLOWED_HOSTS
- Добавлены необходимые зависимости в requirements.txt
- Добавлены views, URL и страницы для входа, регистрации, профиля
- Обновлён основной маршрут users/urls.py
- Перенаправлен маршрут catalog вместо items
- Обновлена структура header с добавлением ссылки на главную
- Создан Dockerfile и workflow для сборки и доставки образов
- Добавлены страницы "Услуги", "Доставка", "Гарантия", "Контакты" с view и URL
- Вынесены hero, advantages, и о нас в отдельные фрагменты
- Обновлены header и footer для активных ссылок и адаптивности
- Добавлен normalize.css для унификации стилей