- Added ContactFormSubmission model to store contact form submissions.
- Created ContactForm for handling form submissions.
- Implemented admin interface for managing contact form submissions.
- Developed views and JavaScript for handling contact form submission via AJAX.
- Added SMTP settings model for email configuration.
- Created notification email templates for contact form submissions.
- Updated frontend to include contact form modal and associated styles.
- Added tests for contact form submission and validation.
- Implemented a floating action button (FAB) for newsletter subscription in the template.
- Added JavaScript to handle the toggle state of the FAB and close it on outside clicks or Escape key press.
- Created CSS styles for the FAB, including animations and responsive design.
- Added a Django template tag to return a random default cover image for the FAB.
- Integrated a form for email input and submission within the FAB.
- Added one-click unsubscribe functionality with token generation and verification.
- Introduced a new model for tracking one-click unsubscribe audits.
- Enhanced newsletter campaign management with the ability to send campaigns immediately.
- Implemented a scheduler for dispatching due newsletter campaigns.
- Updated views and templates to support one-click unsubscribe and campaign previews.
- Added management commands for running the newsletter scheduler.
- Removed obsolete SSL certificate file.
- Updated entrypoint script to handle different application roles.
fix(settings): Ensure SSL_CERT_FILE is set using certifi if not already defined
chore(requirements): Add certifi to requirements for SSL certificate handling
- Added models for NewsletterSystemSettings and NewsletterTemplateSettings to manage configuration.
- Created forms for subscribing and unsubscribing from the newsletter.
- Developed views for handling subscription, confirmation, and unsubscription processes.
- Integrated Member Center API for managing newsletter subscriptions.
- Implemented email sending functionality with SMTP settings.
- Added templates for displaying subscription status and unsubscription confirmation.
- Enhanced CSS for newsletter forms and status messages.
- Included tests for newsletter functionality and security measures for sensitive data.
- Updated home_banner.html to increase image width from 1200 to 1280 pixels for better resolution.
- Modified home.css to remove unnecessary styles and added a new rule for .home-banner img to ensure responsive images.
- Adjusted horizontal_list.css to increase gap between items from 24px to 30px and removed padding for a cleaner layout.
- Changed news_list.css to update grid layout for news articles, including new flex properties for content alignment and added a gradient overlay for better readability.
- Refined home_page.html to use a full-bleed class for the hero band and simplified the structure by removing unnecessary divs.
- Enhanced news_list.html to improve the structure of the first news article display, including better content organization and styling.
- Updated mysite.css to refine container styles and improve header and footer layouts, ensuring better responsiveness and visual consistency.
- Adjusted base.html to wrap content in a main tag for better semantic structure.
- Improved footer.html to streamline social media links and added a new section for footer navigation links.
- Enhanced header.html to ensure consistent styling and layout with the new site container.
- Added multiple PNG images for various sections of the site.
- Introduced JavaScript functionality for horizontal and block lists, allowing smooth scrolling and dynamic arrow visibility based on scroll position.
- Created a new template for displaying news articles, including a hero section for the latest article and a list for additional articles.
- Enhanced the news list with responsive design and fallback images for articles without cover images.
- Implement search fields in ArticlePage model for indexing.
- Update hashtag search view to include site root in context.
- Enhance header with a search form for articles.
- Modify search results template to improve user experience and display.
- Created ArticlePageTag model for tagging articles.
- Added ClusterTaggableManager to ArticlePage for tag management.
- Renamed 'recommended' field to 'trending' in ArticlePage.
- Updated migrations to reflect changes in models.
- Implemented methods to retrieve trending articles and related articles based on tags.
- Modified templates to display tags and related articles on article pages.
- Refactored category and homepage templates to accommodate new sections and layouts.
- Removed deprecated templates and added new includes for better modularity.
- Updated header to include links for latest and trending articles.
- Added environment variable support for configurable block and page sizes.
- Updated requirements to include python-dotenv for environment variable management.
- Introduced `banner_image` field to ArticlePage model.
- Updated article templates to display banner images.
- Added ValidatingEmbedBlock for improved URL validation.
- Refactored category block templates to use static template loading.
- Enhanced header navigation to include submenu support.
- Updated .gitignore to exclude media files.