Releases: PressPrimer/pressprimer-quiz
Releases · PressPrimer/pressprimer-quiz
2.3.1
Fixed
- enforce quiz ownership on all quiz items and quiz rules REST endpoints
Full Changelog: v2.3.0...v2.3.1
2.3.0
Added
- add pressprimer_quiz_results_score_html filter so themes can customize or replace the percent score on the results page
- add sticky Table of Contents card with Save Quiz button to Quiz Editor Settings tab
- add Upgrade page view template and styles
- register conditional Upgrade submenu for free-only users
- substitute placeholder text for images in results emails and AI prompts
- refcount-clean question images on permanent delete and duplicate
- add frontend image containment and click-to-zoom lightbox
- image upload polish — wire stem editor, center images, reorder toolbar
- add Insert image button and private drag-drop upload to question editor
- add REST image upload endpoint and count visible chars in answer limits
- add Maximum Answers per Question control to the Quiz Editor
- score quiz attempts against the shown subset of answer options
- generate per-attempt answer subsets when max_answers_per_question is set
- add max_answers_per_question schema column and model property
- reject unknown display_settings keys with HTTP 400 in REST endpoints
- add Display Options panel to the Quiz Editor
- add useQuizDefaults toggle to Quiz block for display-option inheritance
- resolve quiz display options at render time across all entry points
- add display_settings_json model property with three-tier resolver
- add display_settings_json schema column for per-quiz display defaults
- add per-quiz multiple-answer scoring mode override in Quiz Editor
- add site-wide default scoring mode setting under Settings → General
- add four multiple-answer scoring modes and unified score filter
- add ma_scoring_mode to quiz model with site-default resolver
- add database schema for multiple-answer scoring modes
Fixed
- align correct/incorrect indicator with the first line of answer text in the Attempt Details modal
- pin pre-2.3 quizzes to Right Minus Wrong during migration so the site default does not retroactively rescore historic quizzes
- summarize question stems in the Attempt Details modal list instead of showing raw HTML
- show image upload button immediately when creating a new question
- review only the answers the student actually saw on the results page when Maximum Answers Per Question is set
- include site-default scoring mode changes in the settings-updated hook payload so audit logs capture them
- add Enterprise constant fallback to Upgrade page hide check so the page stays hidden if addon registration is unavailable
- render images in Attempt Details modal and clamp images in admin Quiz Preview
- include scoring mode, display defaults, max answers, and show points when duplicating a quiz
- show all published quizzes in LMS integration meta-box dropdowns for admins
Changed
- tighten Upgrade page labels — Question analysis, Proctoring tools, Audit log
- standardize Quiz Editor Settings tab field widths, helper text spacing, tooltips, and font sizes
- switch Upgrade page footer card to light blue and deep-link pricing CTAs to the pricing grid anchor
- improve Upgrade page accessibility with WCAG AA contrast, semantic table headers, and reduced-motion support
- redesign Upgrade page with mascot illustrations, sticky purchase bar, and accurate plan details
- polish Maximum Answers Per Question field placement and copy
- fold quiz display defaults into Display & Presentation card
- simplify scoring mode UI in Quiz Editor and reorder settings tab
Full Changelog: v2.2.2...v2.3.0
2.2.2
Fixed
- open links inside quiz answers in a new tab to preserve quiz progress
- render full answer formatting (lists, paragraphs, headings) on the frontend
- prevent block-level HTML in answer text from breaking quiz layout
- persist rule order when reordering rules on the Rules tab
- make Ant Design modal close button clickable in WP admin
- show specific error message when validating a disabled OpenAI API key
- clear stale search filters when reopening Add Questions modal
Full Changelog: v2.2.1...v2.2.2
2.2.1
2.2.0
Added
- add filter hook for addon tables on the Status page
- add addon validator registry to quiz editor save flow
- add addon mount point and event in AttemptDetailModal
- add filter hooks for Enterprise branching logic integration
- add spaced repetition quiz setting, DB migration, and SR email templates
- add curved_score property and get_user_best_attempt() to Attempt model
- add reminder email template settings and test email support
- add extension points for addon AI distractor generation
- add lazy-load pagination for previous attempts on quiz landing page
- add show points per question setting with per-question point display
- add question pool feature (Phase 1)
- redesign Status tab with diagnostics copy button and column layout
Fixed
- correct answer icon display and timezone offset in reports
- style action buttons with distinct appearances and correct sizing
- show curved scores in My Quiz Attempts and remove inconsistent title
- resolve duplicate Ant Design radio buttons in WP admin and add branching tooltip
- enforce button text contrast on hover for primary and retake buttons
- scope Spin min-height to main editor to reduce sidebar whitespace
- show bank name instead of ID in rules Source Bank dropdown
- persist tutorial mode answer locks across page reloads
- raise pool pass-rate warning threshold from 10 to 100 questions
- show category and tag names instead of IDs in dynamic rules
- show quiz on LearnPress preview lessons after course completion
- show actual PHP memory limit instead of WordPress constant
- match Status tab attempt count with Reports page
- use modal confirmation for quiz and bank deletion
- clean up quiz preview page and fix PHP 8.1 deprecation
Changed
- move Spaced Repetition setting to Premium Settings tab
Full Changelog: v2.1.0...v2.2.0
2.1.0
Added
- add pressprimer_quiz_can_start filter for addon quiz blocking
- add per-quiz proctoring overrides and settings tab icons
- add pre/post test linking support for Educator addon
- add separate show_attempt_count and show_average display options
- add block/shortcode display option attributes
- add 100 attempts celebration notice
- add visual appearance spacing controls
Fixed
- refresh dashboard and reports stats immediately after quiz attempts
- remove unconditional error_log() from LearnPress integration
- use Complete button for LearnPress lesson completion instead of auto-complete
- resolve 3 LifterLMS integration bugs
- resolve 3 LearnDash integration issues
- show quiz on empty Tutor LMS lessons for logged-out users
- prevent new Tutor LMS lesson modal from showing previous quiz
- include shared bank questions in bank editor search for teachers
- improve cross-LMS integration consistency
- resolve LearnPress and LearnDash LMS integration bugs
- resolve 4 LifterLMS integration bugs matching TutorLMS fixes
- resolve 4 TutorLMS integration bugs reported by Tutor dev team
- prevent pre_test_id global bleeding between shortcodes on same page
- prevent infinite loop when clicking back button during quiz
- use POST endpoint for clearing API key
- include display_density in quiz API response
Changed
- use Tutor LMS slot/fill API for course builder quiz selector
Full Changelog: v2.0.0...v2.1.0
2.0.0
Added
- add assignment deadline support for Educator addon
- add hooks and methods for Enterprise addon integration
- add DeleteOutlined icon for Enterprise addon reports
- add filter hooks for Settings and Reports page mascots
- add white-label filter hooks for Enterprise addon
- add icons for Enterprise addon settings tabs
- add addon reports filter for Reports page
- add addon tab support to Settings page
- implement get_quizzes REST endpoint
- add hooks and filters for Educator 2.0 integration
- add toolbar action hook for banks page
- add row actions filter for banks list table
- add filter hook for addon settings integration
- add commit message conventions to CLAUDE.md
Fixed
- use full prefix for LearnPress AJAX action
- timer styling, checkbox display, and Playwright setup
- respect tab query parameter in Settings page URL
- use correct option name for global access mode setting
- correct bank visibility description for shared banks
- improve error messaging for AI generation timeouts (502/504)
- Reports page regression and add dashboard filter hooks
- Groups testing fixes for Educator 2.0 integration
- restrict bank access to owner-only in free plugin
- resolve ESLint errors in onboarding components
- resolve ESLint errors and merge artifacts
- use npm install instead of npm ci in CI workflow
Full Changelog: v1.0.0...v2.0.0
v1.0.0
Initial WordPress.org release of PressPrimer Quiz.
Features:
- Multiple choice, multiple answer, and true/false question types
- Question banks for organizing questions
- Quiz builder with randomization and rule-based question selection
- Tutorial mode with instant feedback
- Timed quizzes with configurable time limits
- Guest and logged-in user quiz attempts
- Results and statistics tracking
- Theme support (Default, Modern, Minimal)
- LMS integrations (LearnDash, LifterLMS, TutorLMS)
- AI-powered question generation
- Gutenberg blocks and shortcodes