- Icons inside textboxes are overlapping text
- Allow polls to be trashed before permanent delete
- Fixed issue with cached entries showing in admin
- Add user_voted to results payload
- Random polls - filter private and publish window at SQL layer
- Gate on visibility before accepting
- Mod_communitypolls author mode, filter private/publish window
- Mod_cpcategories visibility filter
- Categories polls_count visibility filter
- Approve/reject - idempotent state check, POST required, GET shows confirmation page
- Replace literal control bytes in html.ts
- Public stats exclude hidden-poll activity
- Visibility checks on shortcode and module specific-poll paths
- Strip state fields on create (public + admin)
- Add access-level filter to public list helpers
- Preserve option IDs across site edits
- Send secret on private fetch and preserve option IDs
- Harden HTML sanitizer + add server-side defense
- Voting must enforce visibility
- Block admin routes from site context
- Fixed myPolls pagination offset
- API auth/CSRF status codes - use http_response_code()
- Enhanced validation in CSV file generation
- Fixed duplicate approval row and wrong task name in moderation URLs
- Tightend SVG uploads validations
- AI routes enforce poll edit rights
- Strip state/admin fields from non-privileged owner update
- Lock results & voters behind visibility rules
- Enforce visibility/access on public poll detail, results, voters
- Strip secret key from all public list/summary responses
- Complete admin rebuild as a React 19 single-page application.
- Unified admin shell — dashboard, polls list, results, audience view, settings, and email templates manager all share the same shell.
- New poll types: ranked-choice and grid (multi-question).
- AI helpers in the poll editor: suggest answer options, summarise live results, and cluster custom answers.
- Single Shondalai AI subscription unlocks the helpers across every Shondalai component on the site.
- Bulk publish, feature, and delete from the polls list with keyboard shortcuts.
- Per-poll daily activity charts and one-click CSV export of votes.
- Modern settings page split into Voting, Editor defaults, Display, AI services, URLs, and Developer sections.
- Approval workflow — front-end submissions land pending and admins action them through one-click email links with single-use tokens.
- Email templates moved from database rows to HTML files under media/com_communitypolls/emails/.
- Email templates manager — side-by-side HTML editor, variables panel, live preview at desktop and mobile widths, test send to any address.
- Reset-to-default for any customised email template.
- Email branding section in Settings (logo URL, header title, header subtitle, brand accent, body and page colours, footer text); every notification template inherits.
- Configurable column counts for the public polls and categories listings (Settings → Display).
- Three bundled modules rebuilt: Random Poll, Community Polls (Latest), Community Polls — Categories.
- Light, dark, and system-following theme modes.
- All five bundled plugins rewritten for the modern Joomla 5/6 namespace pattern with services/provider.php and SubscriberInterface.
- Content plugin: new {poll id=N mode=... layout=... link=...} shortcode with full attribute support.
- Editor button: searchable poll picker with status and category filters; double-click to quick-insert.
- Smart Search plugin: indexes polls with author, category, poll type, and featured-status taxonomies.
- Privacy plugin: covers per-user activity counters and abuse reports (including anonymous reports keyed by email).
- Privacy plugin: handles email-only privacy requests for unauthenticated reporters.
- Community Polls events plugin subscribes to onPollBeforeSave / onPollAfterSave / onPollAfterDelete / onPollChangeState / onPollAfterApprove / onVoteBeforeSave / onVoteAfterSave / onVoteAfterDelete.
- PollService, VoteService, and ApprovalService dispatch lifecycle events for plugin extensibility.
- Color and textarea field types added to the settings schema for the new branding controls.
- Modernised service layer with Joomla 5/6 dependency injection.
- Joomla 5 and Joomla 6 compatibility.
- PHP 8.1+ requirement.
- Public listings redesigned for clarity (cards, status chips, voted-count badges).
- Voter restriction logic now combines per-poll and component-level rules cleanly.
- Email layout designed with logo + sitename + subtitle on a clean header band with a hairline divider.
- Editor and preview dialogs use the full screen via React portal so Joomla chrome no longer overlaps them.
- Privacy plugin removal flow wipes resources, votes, options, reports, polls, and the user counter row in dependency order.
- Privacy plugin failures log to the com_privacy log channel instead of being silently swallowed.
- Indexed poll URLs include alias and category for cleaner SEF resolution.
- Polls Anywhere JavaScript embedding (use the {poll} shortcode, the editor button, or an iframe instead).
- Component options page slimmed down — most settings moved into the in-app Settings page.
- Legacy #__communitypolls_email_templates table dropped on upgrade; email templates live as files now.
- Legacy v6 plugin event names (onBeforeSavePoll, onAfterSavePoll, onAfterVote) replaced — see the Plugin events doc for the migration map.
- Joomla 4 support dropped (use Joomla 5 or later).
+ Joomla 6 Compatibility Update
^ Removed legacy references
^ Update copyright headers
+ Use window.location when anywhere is false
* Fixed issue with loading anywhere script
* Fixed issue with loading anywhere help page in a modal window
v6.0.2 (2023-11-02)
^ Added missing language string
* Community Polls editor button is not showing
* Error shown while removing votes from the poll
* Administrator buttons are not visible on the polls listing page
v6.0.1 (2023-09-26)
* Community Polls v6 should not allow installing on j3
v6.0.0 (2023-09-24)
+ Breaking Change: Added support for Joomla 5
^ Breaking Change: Removed legacy layer for Joomla 3
+ New feature - export responses of a poll to CSV file (admin only)
+ GDPR Compliance: Allow users to downloaded their voting history
+ GDPR Compliance: Allow users to delete their own polls using permission system
^ Changing Save button label to Submit on poll form page
* Selected poll customize options in form page are not visible on mobile phone browsers
* Cancel button on form page do not show correctly with bootstrap3 based templates