Skip to content

Releases: Webpixelia/form-quizz-fqi3

Version 3.4.0

Choose a tag to compare

@Webpixelia Webpixelia released this 04 Nov 09:27

[3.4.0] - 2026-11-04

Summary

Major security hardening, data integrity fixes, performance improvements, and expanded automated testing.

Security

  • Added capability and nonce checks for exporting, adding, editing, and deleting questions.
  • Restricted API token revocation and test email functionality to administrators.
  • Ensured badges can only be awarded to the logged-in user and restricted access to quiz levels reserved for authenticated users.
  • Removed automatic modifications to wp-config.php. The GITHUB_PERSONAL_TOKEN constant must now be defined manually; existing definitions remain supported.
  • Secured backup and report storage with protected directories and unguessable file names. On Nginx, add a deny rule for fqi3_backups and fqi3_reports.
  • Stopped trusting forwarded IP headers by default for API rate limiting, API logging, and import logging. Use the fqi3_trusted_proxies filter to declare trusted reverse proxies or CDNs.
  • Encrypted new API tokens using AES-256-GCM with a key derived from WordPress salts. Existing tokens remain compatible. Changing the salts requires generating a new token.
  • Neutralized spreadsheet formulas in CSV exports, prevented question text from being interpreted as HTML in the incorrect answers table, and restricted browser-submitted quiz scores to 0–100 for existing levels only.

Fixed

  • Prevented failed imports from wiping all questions. Imports now back up existing data, validate the import file, and use DELETE instead of non-rollbackable TRUNCATE.
  • Fixed Premium Member role removal during plugin deactivation. The role is now removed on uninstall only when data deletion is enabled.
  • Fixed admin redirects for administrators who also have the Premium Member role.
  • Fixed monthly statistics scheduling and ensured cron events are removed on deactivation and uninstall.
  • Made the questions cache user-specific and fixed the number of questions per quiz to follow the configured setting instead of remaining fixed at 10.
  • Fixed REST API rate limiting to count exactly one request per call.
  • Fixed the free flag being dropped from the last imported level and eliminated related PHP warnings.
  • Fixed periodic statistics being incorrectly recorded for every user instead of the intended user.
  • Made statistics updates atomic to prevent lost updates when multiple quizzes finish simultaneously and ensure consistent values.
  • Fixed add-on installation to rename the downloaded folder through the WordPress upgrader instead of renaming unrelated folders with similar names.

Improvements

  • Moved the daily quiz limit enforcement server-side for logged-in users. Starting a quiz consumes one trial, and counters restart from zero.
  • Bundled Chart.js and canvas-confetti to eliminate third-party CDN requests on public pages.
  • Limited front-end asset loading to pages using the plugin and introduced the fqi3_load_frontend_assets filter to force loading when needed.
  • Removed the attempts table check from every request.
  • Improved internal redirects with wp_safe_redirect() and made CSV exports use stable pagination.
  • Expanded uninstall cleanup to remove all plugin options, transients, the attempts table, and export directories.
  • Updated the README to reflect the current codebase.

Development

  • Added PHPUnit unit tests, an integration smoke test, and a PHPCS configuration. See tests/README.md for details.

Version 3.3.0

Choose a tag to compare

@Webpixelia Webpixelia released this 23 Sep 11:17

[3.3.0] - 2025-09-23

Summary

Gutenberg blocks refactor, new hooks/utils, and bug fixes.

Refactor

  • Gutenberg blocks refactored with native options, custom attributes, and introduction of the new FQI3_Blocks class.
  • Adjusted FQI3_Frontend, FQI3_Statistics, and FQI3_PeriodicStatistics to pass additional arguments in methods and added instance initialization in the root file.

Added

  • Core plugin hooks (PHP) and shared JavaScript utils (window.fqi3Blocks.utils) for easier extension by add-ons.

Fixed

  • Too many arguments passed to validate_user_permissions method in FQI3_PeriodicStatistics class.
  • Removed reference to non-existent PerformanceTableManager.php.

Version 3.2.1

Choose a tag to compare

@Webpixelia Webpixelia released this 17 Sep 21:30

[3.2.1] - 2025-09-17

Fixed

  • Corrected undefined array key warnings in the plugin updater (GitHub API integration).
  • Replaced invalid cache key "participation" with "correct_answers" in badge settings to prevent API endpoint 500 error.

Improved

  • Added version number display next to "Installed" status in add-ons list for better version management.

Version 3.2.0

Choose a tag to compare

@Webpixelia Webpixelia released this 16 Sep 21:15

🚀 Version 3.2.0

Cette version apporte une refonte majeure de l’intégration GitHub et plusieurs nouveautés côté badges et gestion des quiz.

✨ Nouveautés

  • Nouvelle page des licences : configurez facilement votre token GitHub personnel.
  • Notifications d’update intégrées : recevez directement les mises à jour des add-ons dans l’admin WordPress.
  • Nouveau type de badge : Correct Answers Badges (Total Correct Answers).
  • Option supplémentaire : activez les badges multi-niveaux pour les réponses correctes.
  • API étendue : l’endpoint REST : GET /wp-json/fqi3/v1/badges/settings/{type} supporte désormais participation-badge.

🔧 Améliorations

  • Support du dossier vendor/ dans les dépôts GitHub.
  • Refonte de l’installation/activation des add-ons depuis GitHub (téléchargement et installation automatiques).
  • Le menu admin n’affiche la page Add-ons que si un token GitHub valide est configuré.
  • Possibilité de purger manuellement les tentatives de quiz (indépendamment de la rétention automatique).

🐛 Corrections

  • Ajout des entrées github_repo manquantes pour certains add-ons → installation automatique désormais possible.

Version 3.1.0

Choose a tag to compare

@Webpixelia Webpixelia released this 28 Aug 18:56

API & Statistics Improvements, Badge Fixes, and Translations

Version 3.0.0

Choose a tag to compare

@Webpixelia Webpixelia released this 28 Aug 11:19

Full Changelog: v2.2.0...v3.0.0

Version 2.2.0

Choose a tag to compare

@Webpixelia Webpixelia released this 05 Dec 09:35

[2.2.0] - 2024-12-05

New Features

  • New: Added a dashboard page for a quick overview of key information.
  • Added: New option to include administrators in premium role features for testing purposes.
  • Added: Users can now download the "Incorrect Answers" table as a CSV file.

Changes

  • Modified: Changed the structure of the fqi3_access_roles database option.

Improvements

  • Improved: UI/UX with customizable, responsive modals for a smoother question deletion confirmation.

Bug Fixes

  • Fixed: Display bug in the badge legend table.

Version 2.1.0

Choose a tag to compare

@Webpixelia Webpixelia released this 01 Dec 16:42

Changelog

[2.1.0] - 2024-12-01

Added

  • Option: Set the number of answer choices for questions, with a range between 4 and 10.

Enhanced

  • Improved: RTL support for forms.

Changed

  • Default Options: Management now uses the global fqi3_default_options() function instead of class-specific methods.

Fixed

  • SQL Queries: Adjusted to comply with WordPress database query best practices.
  • Uninstallation: Resolved a call to undefined functions.
  • Fatal Error: Fixed private method used as a callback during activation.
  • Quiz Levels: Ensured a default empty array is returned when the quiz levels option is not initialized.
  • Access Control: Addressed fatal error in settings.
  • Plugin Options: Properly initialized during uninstallation.

Updated

  • Documentation: Updated the readme.txt file.

Version 2.0.1

Choose a tag to compare

@Webpixelia Webpixelia released this 28 Nov 17:45

Changelog

[2.0.1] - 2024-11-28

Added

  • New: Updates are now managed through GitHub releases, ensuring seamless updates directly from the repository.

Version 2.0.0

Choose a tag to compare

@Webpixelia Webpixelia released this 28 Nov 17:37

Changelog

[2.0.0] - 2024-11-28

Added

  • New Feature: Added a [fqi3_periodic_stats] shortcode to display advanced periodic statistics for the current user on posts, pages, or widgets.
  • Displayed incorrectly answered questions at the end of the quiz, along with the user's answers and the correct answers.
  • Two new data exports: 'Performance' and 'Advanced Stats'.

Improved

  • Reviewed administration UI with Bootstrap for enhanced consistency and user experience.
  • Refactored FQI3 plugin classes and page classes for better performance, readability, and maintainability.

Fixed

  • Resolved index issue during the saving of levels and badges.
  • Resolved issues with the add and remove buttons not functioning correctly.
  • Resolved issue with Level ID value sanitization.
  • Missing "Access" column in the exported quizzes CSV file.

Compatibility

  • Support for WordPress 6.7.