Add comprehensive test coverage for core site features (content,
navigation, language, FAQ, news, petition, newsletter) using Pest
browser tests and unit tests for custom plugins. Includes test
infrastructure (Containerfile.test, compose.test.yaml), test
documentation, and test files covering petition form logic, CSV
handling, translation, date formatting, rate limiting, and map data
building.
Add detailed survey findings and link to full press release
Include comparison with European countries and implications
Highlight key statistics and actionable insights
Add CSS for fullscreen mode with CTA button
Implement first name only display for map markers
Add fullscreen toggle button with proper icons
Update template to support fullpage mode
Add new page with fullscreen map view
Update petition map counter to show animated count of signatures
with matching timing to dot animation and improved text formatting
Remove redundant header styles from CSS
Move counter styling to dedicated CSS section
Update counter text to be more concise and present tense
Add anonymous SVG icon for anonymous signers
Add Norway fylker GeoJSON for map boundaries
Add CSS styles for petition map
Add JavaScript for interactive petition map
Add .htaccess to block direct access to data files
Add petition-map plugin to process and display map data
Add documentation for the petition-map plugin
Add mock petition data generator tool
Improve session cookie security with HttpOnly and SameSite attributes
Add security headers via .htaccess
Block direct access to sensitive files
Restrict allowed HTTP methods
Document cPanel-specific security configuration
Add container hardening for ServerTokens and ServerSignature
The plugin displays latest news items from /nyheter/ section with three
size options:
- small: horizontal scrolling cards
- medium: responsive grid
- large: responsive grid with summaries
Usage: Add to metadata.ini and call with <?= news_preview() ?> or <?=
news_preview(5, 'large') ?>
Add support for specifying Listmonk list UUIDs per form instance
Update petition form to use metadata-defined UUIDs
Add success confirmation message to newsletter forms
Update documentation with new functionality
Add success confirmation message to newsletter plugin
Update translation files with confirmation text
Improve form handling to show confirmation message
Add styling for confirmation message display
Ensure name field is properly included in form
Improve the resend confirmation flow by:
- Consolidating multiple status messages into a single generic response
- Adding HTML support for the result message
- Moving the instruction text after the message display
- Simplifying the PHP logic by removing redundant checks
- Making the messaging more privacy-conscious by not revealing email
existence
- Adding a link to sign again in the result message
The changes follow the project's minimal PHP philosophy while improving
user experience and security.
Add link to resend confirmation page from main form
Add new resend confirmation page with form
Implement backend logic to handle resend requests
Add translations for new functionality
Update thank you page with resend confirmation link
Introduce new modifyPetitionFile helper function for atomic CSV
operations
Refactor manual confirmation to use the new helper function
Add new manuallyDeleteSignatures function with confirmation flow
Update menu to include deletion option and adjust numbering
Add new menu option to manually confirm signatures by email address
Search through all petition files to find matching emails
Update status from pending to confirmed when found
Display results with confirmation status and petition IDs
Handle multiple emails via comma-separated input
Maintain proper file locking to prevent race conditions
Simplify validation to check DNS records instead of MX records
Remove redundant port 80 checks that fail for mail-only subdomains
Maintain compatibility with services like Mailgun and SendGrid