Skip to content

Tutor LMS v4.2.0 - #3135

Merged
shewa12 merged 274 commits into
masterfrom
dev
Oct 28, 2026
Merged

shewa12 merged 274 commits into
masterfrom
dev

Conversation

@shewa12

@shewa12 shewa12 commented Oct 28, 2026

Copy link
Copy Markdown
Collaborator

ClickUp ticket link:

Description

Testing

  • Tested
  • Not tested

Use of AI Tool

Used: Yes / No

Used for:

harunollyo and others added 30 commits September 30, 2026 15:36
…methods

- Eliminated the SSL requirement checks from the `rest_login`, `rest_refresh`, and `rest_logout` methods in the RestAuth class to simplify the authentication flow.
- Removed the private method `require_ssl_for_auth`, streamlining the code and enhancing maintainability.
- This change focuses on improving the clarity of the authentication process while ensuring that the core functionality remains intact.
…r leakage

- Remove pre-shipped encoded correct answer IDs and explanations from HTML templates and window context
- Add secure `wp_ajax_tutor_quiz_check_answer` endpoint to verify answers per-question on demand
- Integrate verification into modern Learning Area and decouple layout, submission, and explanation modules
- Prevent in-flight double-click race conditions with verification state guards on navigation and submit buttons
- Fix `quiz_answer_display_time` resolution from `window.TutorCore.config`
- Lock question inputs upon reveal in legacy mode and re-enable before submission to preserve attempt grading
…ntrol

- Replaced existing permission callbacks in the RestAPI class with more specific methods to improve access control for various API endpoints.
- Introduced new permission methods such as `permission_public_catalog`, `permission_course_detail`, and `permission_authenticated_course_content` to streamline permission handling.
- Enhanced the REST_Author class to retrieve published instructor course IDs, ensuring public profile parity.
- Updated the REST_Course class to conditionally reveal course content based on user authentication status, improving the user experience for guests and enrolled users.
- Added new utility methods in RestAuth for better permission management and user access checks.
shewa12 and others added 29 commits October 19, 2026 18:10
Skip required validation for revealed answers
get_json() issue in `HttpHelper`
…lity

- Updated `RestAPI` to allow access to non-published posts based on enrollment status.
- Improved `REST_Rating` to reflect UI access rules for course ratings, including handling guest users and their ratings.
- Added a new method `can_read_course_rating` to encapsulate logic for determining if a user can read course ratings based on course status and user authentication.
- Enhanced `RestAuth` to clarify access permissions for course content, ensuring that enrollment alone does not grant access to non-published content.
- Revised the description to specify that the endpoint retrieves ratings for a course, not just published courses.
- Clarified authentication requirements for public and private courses, including access conditions for enrolled users.
- Enhanced the response structure to include the user's own rating details when available, improving the API's usability.
- Improved the `has_qna_access` method in `Q_And_A` class to enforce course content rules, ensuring students can only access Q&A for published or private courses.
- Updated `RestAPI` to change permission callbacks from `__return_true` to `permission_optional_access_token`, enhancing security and access control for course-related endpoints.
- Revised API documentation to reflect the new permission handling and clarify authentication requirements for public and private courses.
- Introduced `showCopyFeedback` function to provide user feedback via toast notifications or tooltips when copying and pasting text.
- Updated clipboard copy and paste logic to utilize the new feedback mechanism, improving user experience.
- Enhanced error handling for clipboard operations, ensuring users receive appropriate messages for success or failure scenarios.
- Removed redundant checks and streamlined the logic to determine user access to Q&A based on course visibility.
- Simplified the method by eliminating unnecessary variable assignments and conditions, enhancing code readability and maintainability.
- Updated comments to reflect the current functionality and clarify access rules for Q&A based on course status.
Find the earliest unanswered question when resuming an attempt instead of advancing past the last answered question. Apply the same behavior in the learning area and single-quiz view.
Resume quizzes at the first unanswered question
Updated coupon table & prevented race condition issue
Fix: REST API access control for course ratings, q&a and content visibility
@shewa12
shewa12 merged commit 69cc95a into master Oct 28, 2026
11 of 14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants