The minimum required LifterLMS core version in now 3.24.0 Please upgrade LifterLMS to the latest version to continue using LifterLMS Assignments
Grading
Assignment grades will now contribute to the grade of a lesson
If no quiz is present, the lesson grade will equal the grade of the lesson
If both a quiz and assignment are present on a lesson, the lesson grade will be determined by a combination of the quiz and assignment grades
The default weight of quizzes and assignments are 1:1, by defining custom weights for the quiz and assignment it is now possible to weight a quiz or assignment more heavily (or make one not count at all by defining a weight of 0)
The grade of the lesson is calculated by the following formula: ( quiz_grade x quiz_weight ) + ( assignment_grade x assignment_weigth ) / ( quiz_weight + assignment_weigth ). If the total weight is 0, the lesson grade will be null which results in the lesson not counting towards the overall grade of the course.
Existing course and lesson grades will automatically be updated after a database migration. Existing quizzes and assignments will all be set with a default weight of 1 point.
Notifications
Customizable email notifications are now available
Assignment Graded: an email sent to the student when their assignment has been manually graded by an instructor
Assignment Submitted: an email sent to the instructor when an assignment has been submitted by a student
Updates and Enhancements
Added assignment information on the “My Grades” area of the student dashboard
Added assignment information to the student course reporting table
Added submission review url getter method to submission model
Added Links between courses and assignments on reporting screens
Assignment submission data will now be included in personal data exports
Assignment submission data will now be deleted from the database during personal data erasure requests (only if “Remove Student LMS Data” is enabled in account settings)
Bug fixes
When a lesson is a deleted any associated lessons will also be deleted
When an assignment is graded the action llms_assignment_submitted is no longer called and llms_assignment_graded is now called instead. llms_assignment_submitted is reserved for student submission only.
Fixed issue with mimetype validation for upload assignments
Quiz Passed & Quiz Failed notifications have new names on the admin panel (“Quizzes: Quiz Passed” & “Quizzes: Quiz Failed”)
The default content for Quiz Passed and Quiz Failed notifications have been enhanced. If you’ve modified these you can delete your modified content to have your notifications “restored” to the improved defaults.
Change the page title of the Student Dashboard page installed via the Setup Wizard to be “Dashboard” instead of “My Courses.” Thanks @philwp!
In the course builder when a lesson is duplicated, the attached quiz will be duplicated as well
Minor increase to performance in the LLMS_Course->get_lessons() method
Added student_id as a parameter passed to the llms_student_get_progress filter
Updated all access plan templates added in 3.23.0 to ensure ABSPATH is defined to prevent direct template access
Remove use of deprecated LLMS_Lesson->get_children_lessons() in the LLMS_Course and LLMS_Lesson models as well as in the course/syllabus.php template
Refactored the LLMS_Section->get_percent_complete() method to utilize methods from the LLMS_Student model
Added the ability for admin table classes to define <tr> element CSS classes
Admin settings pages with no settings to save (like the Notifications list) no longer display a “Save” button
Added actions when creating, updating, and deleting records managed by LLMS_Abstract_Database_Store classes
Updated system report to include URLs to settings with URLs, adds a small speed boost to support request turn around time.
Please Rate & Review LifterLMS on WordPress.org
Added a WordPress.org review request link to the footer of LifterLMS admin pages.
Added a WordPress.org review request notice which displays a week after installation if the site has 50+ active students.
Bug fixes
Fixed issue causing HTML entity codes to display in email subject lines. Thanks @philwp!
Fixed issue causing post cleanup functions to run queries against unsupported post types.
Fixed typos in a handful of i18n functions so that the proper textdomain is now being used
Removed get_option() call to unused option lifterlms_logout_endpoint which ran on WordPress initialization unnecessarily.
Removed 3.21.0 fixes for iOS touch issues that are now causing iOS touch issues on quizzes.
When an order is deleted, all order transactions will also be deleted. This does not happen until the order is deleted (transactions will remain while the order is in the trash)
Fixed an issue causing duplicated quizzes to initially show images for question images & image choices (reorder pictures & picture choice) but the image data would not be properly saved so when returning to the builder or viewing a quiz on the frontend the images would be lost
Deprecated Functions & Methods
Deprecated LLMS_Section->get_children_lessons(), use LLMS_Section->get_lessons( 'posts' ) instead
A new student dashboard endpoint, “My Grades”, has been added
The main screen displays a paginated and sortable list of all courses a student is enrolled in and outputs their progress and grade in the courses
Students can drill into individual reporting screens for each course where specific details for each course are available for review
Grading Enhancements
Each lesson can now be assigned an individual “points” value
When a course is graded the points assigned to each lesson will be used to calculate the value of the lesson’s grade within the overall course grade
Lessons can also be assigned a value of “0” to allow a lesson to not count towards the overall grade of the course.
Updates and Enhancements
In the course builder when a lesson is duplicated, the attached quiz will be duplicated as well
Minor increase to performance in the LLMS_Course->get_lessons() method
Added the ability to send test emails for email notifications
Added student_id as a parameter passed to the llms_student_get_progress filter
Updated all access plan templates added in 3.23.0 to ensure ABSPATH is defined to prevent direct template access
Remove use of deprecated LLMS_Lesson->get_children_lessons() in the LLMS_Course and LLMS_Lesson models as well as in the course/syllabus.php template
Refactored the LLMS_Section->get_percent_complete() method to utilize methods from the LLMS_Student model
Added the ability for admin table classes to define <tr> element CSS classes
Admin settings pages with no settings to save (like the Notifications list) no longer display a “Save” button
Added actions when creating, updating, and deleting records managed by LLMS_Abstract_Database_Store classes
Bug fixes
Fixed issue causing post cleanup functions to run queries against unsupported post types.
Fixed typos in a handful of i18n functions so that the proper textdomain is now being used
Removed 3.21.0 fixes for iOS touch issues that are now causing iOS touch issues on quizzes.
When an order is deleted, all order transactions will also be deleted. This does not happen until the order is deleted (transactions will remain while the order is in the trash)
Fixed an issue causing duplicated quizzes to initially show images for question images & image choices (reorder pictures & picture choice) but the image data would not be properly saved so when returning to the builder or viewing a quiz on the frontend the images would be lost
Deprecated Functions & Methods
Deprecated LLMS_Section->get_children_lessons(), use LLMS_Section->get_lessons( 'posts' ) instead
Adds support for Formidale Forms Pro front-end editing settings. When a form attached to a lesson is edited it will mark the resulting lesson as complete when form submission is required.