diff --git a/.changelogs/access-plan-popup.yml b/.changelogs/access-plan-popup.yml deleted file mode 100644 index a0d59003fc..0000000000 --- a/.changelogs/access-plan-popup.yml +++ /dev/null @@ -1,4 +0,0 @@ -significance: minor -type: added -entry: New popup when adding an Access Plan with templates to help set options - quickly. diff --git a/.changelogs/access-plans-ui-update-2.yml b/.changelogs/access-plans-ui-update-2.yml deleted file mode 100644 index 9cc306b7a1..0000000000 --- a/.changelogs/access-plans-ui-update-2.yml +++ /dev/null @@ -1,4 +0,0 @@ -significance: major -type: changed -entry: Improved accessibility of various front-end and back-end UIs including the Access Plans metaboxes to use proper labels - and screen reader text where needed. diff --git a/.changelogs/allow-lesson-access-based-on--enrollment-drip-setting.yml b/.changelogs/allow-lesson-access-based-on--enrollment-drip-setting.yml deleted file mode 100644 index c820955a95..0000000000 --- a/.changelogs/allow-lesson-access-based-on--enrollment-drip-setting.yml +++ /dev/null @@ -1,6 +0,0 @@ -significance: patch -type: changed -links: - - "#2843" -entry: Allow lesson access based on enrollment drip setting with Course Start - Date set. diff --git a/.changelogs/allow-more-html-in-quiz-question.yml b/.changelogs/allow-more-html-in-quiz-question.yml deleted file mode 100644 index 17dfad6d12..0000000000 --- a/.changelogs/allow-more-html-in-quiz-question.yml +++ /dev/null @@ -1,4 +0,0 @@ -significance: patch -type: fixed -entry: Allow additional shortcodes like [audio] within the description (content) - of a quiz question. diff --git a/.changelogs/beaver-builder.yml b/.changelogs/beaver-builder.yml deleted file mode 100644 index 743e345adf..0000000000 --- a/.changelogs/beaver-builder.yml +++ /dev/null @@ -1,5 +0,0 @@ -significance: patch -type: added -links: - - "#2761" -entry: Adds support for Beaver Builder for Courses, Memberships and Lessons. diff --git a/.changelogs/fix-confirmation-toggle-and-course-info-heading-default-1.yml b/.changelogs/fix-confirmation-toggle-and-course-info-heading-default-1.yml deleted file mode 100644 index acac08557f..0000000000 --- a/.changelogs/fix-confirmation-toggle-and-course-info-heading-default-1.yml +++ /dev/null @@ -1,4 +0,0 @@ -significance: patch -type: changed -entry: Course Information header is now h2 instead of h3 by default, for - accessibility in heading order. diff --git a/.changelogs/fix-confirmation-toggle-and-course-info-heading-default.yml b/.changelogs/fix-confirmation-toggle-and-course-info-heading-default.yml deleted file mode 100644 index 35956694b8..0000000000 --- a/.changelogs/fix-confirmation-toggle-and-course-info-heading-default.yml +++ /dev/null @@ -1,6 +0,0 @@ -significance: patch -type: fixed -links: - - "#2646" -entry: Can now deactivate the Confirmation field for blocks like E-mail address - and Password in forms. diff --git a/.changelogs/fix_add-purchase-link-to-access-plan.yml b/.changelogs/fix_add-purchase-link-to-access-plan.yml deleted file mode 100644 index b811e67200..0000000000 --- a/.changelogs/fix_add-purchase-link-to-access-plan.yml +++ /dev/null @@ -1,5 +0,0 @@ -significance: patch -type: changed -links: - - "#2793" -entry: Adding purchase checkout link to the access plan header as an icon. diff --git a/.changelogs/fix_llms-posts-select2-improvements.yml b/.changelogs/fix_llms-posts-select2-improvements.yml deleted file mode 100644 index 5b763f4551..0000000000 --- a/.changelogs/fix_llms-posts-select2-improvements.yml +++ /dev/null @@ -1,6 +0,0 @@ -significance: patch -type: dev -links: - - "#2805" -entry: Improved llmsPostsSelect2 method when called on multiple elements at - once, each with different options. diff --git a/.changelogs/fix_mailhawk-errors.yml b/.changelogs/fix_mailhawk-errors.yml deleted file mode 100644 index b0ca17aab1..0000000000 --- a/.changelogs/fix_mailhawk-errors.yml +++ /dev/null @@ -1,5 +0,0 @@ -significance: patch -type: fixed -links: - - "#2792" -entry: Fix SendWP connect button. diff --git a/.changelogs/fix_translation-unloading.yml b/.changelogs/fix_translation-unloading.yml deleted file mode 100644 index 568719b3aa..0000000000 --- a/.changelogs/fix_translation-unloading.yml +++ /dev/null @@ -1,6 +0,0 @@ -significance: patch -type: fixed -links: - - "#2807" -entry: Avoid unloading the textdomain for core translations in case the - lifterlms textdomain is used before init (WP 6.7). diff --git a/.changelogs/fix_wrapping-buttons.yml b/.changelogs/fix_wrapping-buttons.yml deleted file mode 100644 index 846cd8c384..0000000000 --- a/.changelogs/fix_wrapping-buttons.yml +++ /dev/null @@ -1,5 +0,0 @@ -significance: patch -type: fixed -links: - - "#2820" -entry: Avoid wrapping of the text of buttons. diff --git a/.changelogs/lesson-preview-favorite-accessibility.yml b/.changelogs/lesson-preview-favorite-accessibility.yml deleted file mode 100644 index 9320c6db06..0000000000 --- a/.changelogs/lesson-preview-favorite-accessibility.yml +++ /dev/null @@ -1,5 +0,0 @@ -significance: major -type: changed -links: - - "#2852" -entry: Accessibility updates for lesson favorite and write a review forms. diff --git a/.changelogs/password-toggle.yml b/.changelogs/password-toggle.yml deleted file mode 100644 index 28c907bd81..0000000000 --- a/.changelogs/password-toggle.yml +++ /dev/null @@ -1,3 +0,0 @@ -significance: patch -type: added -entry: Ability to show typed password for verification on the Student Dashboard login form. diff --git a/.changelogs/pricing-on-catalogs.yml b/.changelogs/pricing-on-catalogs.yml deleted file mode 100644 index cc5f39f84d..0000000000 --- a/.changelogs/pricing-on-catalogs.yml +++ /dev/null @@ -1,3 +0,0 @@ -significance: minor -type: added -entry: Adds new "Featured Pricing Information" setting for Courses and Memberships. diff --git a/.changelogs/syllabus-lesson-has-quiz-assignment.yml b/.changelogs/syllabus-lesson-has-quiz-assignment.yml deleted file mode 100644 index faa1c324cf..0000000000 --- a/.changelogs/syllabus-lesson-has-quiz-assignment.yml +++ /dev/null @@ -1,3 +0,0 @@ -significance: minor -type: added -entry: Showing 'Has Quiz' or 'Has Assignment' in the Course Syllabus. diff --git a/CHANGELOG.md b/CHANGELOG.md index 7a584730e0..6b641e349d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,52 @@ LifterLMS Changelog =================== +v8.0.0 - 2025-01-20 +------------------- + +##### New Features + ++ New popup when adding an Access Plan with templates to help set options quickly. ++ Adds support for Beaver Builder for Courses, Memberships and Lessons. [#2761](https://github.com/gocodebox/lifterlms/issues/2761) ++ Ability to show typed password for verification on the Student Dashboard login form. ++ Adds new "Featured Pricing Information" setting for Courses and Memberships. ++ Showing 'Has Quiz' or 'Has Assignment' in the Course Syllabus. + +##### Updates and Enhancements + ++ Improved accessibility of various front-end and back-end UIs including the Access Plans metaboxes to use proper labels and screen reader text where needed. ++ Allow lesson access based on enrollment drip setting with Course Start Date set. [#2843](https://github.com/gocodebox/lifterlms/issues/2843) ++ Course Information header is now h2 instead of h3 by default, for accessibility in heading order. ++ Adding purchase checkout link to the access plan header as an icon. [#2793](https://github.com/gocodebox/lifterlms/issues/2793) ++ Accessibility updates for lesson favorite and write a review forms. [#2852](https://github.com/gocodebox/lifterlms/issues/2852) + +##### Bug Fixes + ++ Allow additional shortcodes like [audio] within the description (content) of a quiz question. ++ Can now deactivate the Confirmation field for blocks like E-mail address and Password in forms. [#2646](https://github.com/gocodebox/lifterlms/issues/2646) ++ Fix SendWP connect button. [#2792](https://github.com/gocodebox/lifterlms/issues/2792) ++ Avoid unloading the textdomain for core translations in case the lifterlms textdomain is used before init (WP 6.7). [#2807](https://github.com/gocodebox/lifterlms/issues/2807) ++ Avoid wrapping of the text of buttons. [#2820](https://github.com/gocodebox/lifterlms/issues/2820) + +##### Developer Notes + ++ Improved llmsPostsSelect2 method when called on multiple elements at once, each with different options. [#2805](https://github.com/gocodebox/lifterlms/issues/2805) + +##### Updated Templates + ++ [templates/course/favorite.php](https://github.com/gocodebox/lifterlms/blob/8.0.0/templates/course/favorite.php) ++ [templates/course/lesson-preview.php](https://github.com/gocodebox/lifterlms/blob/8.0.0/templates/course/lesson-preview.php) ++ [templates/global/form-login.php](https://github.com/gocodebox/lifterlms/blob/8.0.0/templates/global/form-login.php) ++ [templates/global/form-registration.php](https://github.com/gocodebox/lifterlms/blob/8.0.0/templates/global/form-registration.php) ++ [templates/loop/featured-pricing.php](https://github.com/gocodebox/lifterlms/blob/8.0.0/templates/loop/featured-pricing.php) ++ [templates/myaccount/form-edit-account.php](https://github.com/gocodebox/lifterlms/blob/8.0.0/templates/myaccount/form-edit-account.php) ++ [templates/myaccount/form-redeem-voucher.php](https://github.com/gocodebox/lifterlms/blob/8.0.0/templates/myaccount/form-redeem-voucher.php) ++ [templates/notifications/basic.php](https://github.com/gocodebox/lifterlms/blob/8.0.0/templates/notifications/basic.php) ++ [templates/product/access-plan-button.php](https://github.com/gocodebox/lifterlms/blob/8.0.0/templates/product/access-plan-button.php) ++ [templates/product/free-enroll-form.php](https://github.com/gocodebox/lifterlms/blob/8.0.0/templates/product/free-enroll-form.php) ++ [templates/quiz/questions/description.php](https://github.com/gocodebox/lifterlms/blob/8.0.0/templates/quiz/questions/description.php) + + v7.8.7 - 2024-12-17 ------------------- diff --git a/assets/js/llms-metabox-options.js b/assets/js/llms-metabox-options.js index ac3321ac14..c2fc58a6ec 100644 --- a/assets/js/llms-metabox-options.js +++ b/assets/js/llms-metabox-options.js @@ -1,7 +1,7 @@ /** * JS for the Course and Membership metabox options * - * @since [version] + * @since 8.0.0 */ ( function( $ ){ diff --git a/class-lifterlms.php b/class-lifterlms.php index 017ba135fb..fc50dea656 100644 --- a/class-lifterlms.php +++ b/class-lifterlms.php @@ -34,7 +34,7 @@ final class LifterLMS { * * @var string */ - public $version = '7.8.7'; + public $version = '8.0.0'; /** * LLMS_Assets instance diff --git a/includes/abstracts/llms-abstract-email-provider.php b/includes/abstracts/llms-abstract-email-provider.php index 22514a6970..54ff8aa66c 100644 --- a/includes/abstracts/llms-abstract-email-provider.php +++ b/includes/abstracts/llms-abstract-email-provider.php @@ -232,7 +232,7 @@ public function ajax_callback_remote_install() { /** * Ajax callback called after doing the initial install, so the plugin is loaded and available. * - * @since [version] + * @since 8.0.0 * * @return void */ diff --git a/includes/admin/class.llms.admin.assets.php b/includes/admin/class.llms.admin.assets.php index dcac04b6b4..5a15471047 100644 --- a/includes/admin/class.llms.admin.assets.php +++ b/includes/admin/class.llms.admin.assets.php @@ -527,7 +527,7 @@ public static function register_quill( $modules = array() ) { /** * Register the accessible dialog JS * - * @since [version] + * @since 8.0.0 * * @return void */ diff --git a/includes/admin/post-types/meta-boxes/fields/llms.class.meta.box.basic.editor.php b/includes/admin/post-types/meta-boxes/fields/llms.class.meta.box.basic.editor.php index 779b10a7d5..c5bd2820ba 100644 --- a/includes/admin/post-types/meta-boxes/fields/llms.class.meta.box.basic.editor.php +++ b/includes/admin/post-types/meta-boxes/fields/llms.class.meta.box.basic.editor.php @@ -4,7 +4,7 @@ * * @package LifterLMS/Admin/PostTypes/MetaBoxes/Fields/Classes * - * @since [version] + * @since 8.0.0 */ defined( 'ABSPATH' ) || exit; diff --git a/includes/admin/views/access-plans/access-plan-dialog.php b/includes/admin/views/access-plans/access-plan-dialog.php index dca01b0357..e72a50cdaf 100644 --- a/includes/admin/views/access-plans/access-plan-dialog.php +++ b/includes/admin/views/access-plans/access-plan-dialog.php @@ -58,7 +58,7 @@ class="llms-dialog-container" /** * Action hook fired after access plan's dialog box pre-sale option. * - * @since [version] + * @since 8.0.0 */ do_action( 'llms_access_plan_dialog_after_pre_sale' ); ?> diff --git a/includes/beaver-builder/modules/course-instructors/class.llms.lab.course.instructors.module.php b/includes/beaver-builder/modules/course-instructors/class.llms.lab.course.instructors.module.php index a4dda94c1f..04d6fc8f73 100644 --- a/includes/beaver-builder/modules/course-instructors/class.llms.lab.course.instructors.module.php +++ b/includes/beaver-builder/modules/course-instructors/class.llms.lab.course.instructors.module.php @@ -4,7 +4,7 @@ * * @package LifterLMS_Labs/Labs/BeaverBuilder/Modules/CourseContinueButton/Classes * - * @since [version] + * @since 8.0.0 */ defined( 'ABSPATH' ) || exit; diff --git a/includes/beaver-builder/modules/membership-instructors/class.llms.lab.membership.instructors.module.php b/includes/beaver-builder/modules/membership-instructors/class.llms.lab.membership.instructors.module.php index 019cd3952f..ba8dedcaca 100644 --- a/includes/beaver-builder/modules/membership-instructors/class.llms.lab.membership.instructors.module.php +++ b/includes/beaver-builder/modules/membership-instructors/class.llms.lab.membership.instructors.module.php @@ -4,7 +4,7 @@ * * @package LifterLMS_Labs/Labs/BeaverBuilder/Modules/MembershipInstructors/Classes * - * @since [version] + * @since 8.0.0 */ defined( 'ABSPATH' ) || exit; diff --git a/includes/beaver-builder/modules/membership-instructors/includes/frontend.php b/includes/beaver-builder/modules/membership-instructors/includes/frontend.php index 922fba7e33..d284168d6f 100644 --- a/includes/beaver-builder/modules/membership-instructors/includes/frontend.php +++ b/includes/beaver-builder/modules/membership-instructors/includes/frontend.php @@ -4,7 +4,7 @@ * * @package LifterLMS_Labs/Labs/BeaverBuilder/Modules/MembershipInstructors/Templates * - * @since [version] + * @since 8.0.0 * * @param $settings obj Beaver Builder module settings instance. */ diff --git a/includes/class-llms-beaver-builder-migrate.php b/includes/class-llms-beaver-builder-migrate.php index fac807e397..7b343dcc89 100644 --- a/includes/class-llms-beaver-builder-migrate.php +++ b/includes/class-llms-beaver-builder-migrate.php @@ -4,7 +4,7 @@ * * @package LifterLMS/Classes * - * @since [version] + * @since 8.0.0 */ defined( 'ABSPATH' ) || exit; @@ -21,7 +21,7 @@ public function __construct() { /** * Migrate posts created prior to the elementor updates to have default LifterLMS widgets. * - * @since [version] + * @since 8.0.0 * * @return void */ @@ -88,7 +88,7 @@ public function add_template_to_post() { /** * Removes core template action hooks from posts which have been migrated to beaver builder widgets. * - * @since [version] + * @since 8.0.0 * * @return void */ @@ -123,7 +123,7 @@ public function remove_template_hooks() { /** * Remove membership template hooks. * - * @since [version] + * @since 8.0.0 */ public function remove_membership_template_hooks() { remove_action( 'lifterlms_single_membership_after_summary', 'lifterlms_template_pricing_table', 10 ); @@ -132,7 +132,7 @@ public function remove_membership_template_hooks() { /** * Remove lesson template hooks. * - * @since [version] + * @since 8.0.0 */ public function remove_lesson_template_hooks() { remove_action( 'lifterlms_single_lesson_after_summary', 'lifterlms_template_complete_lesson_link', 10 ); @@ -141,7 +141,7 @@ public function remove_lesson_template_hooks() { /** * Remove course template hooks. * - * @since [version] + * @since 8.0.0 * * @return void */ @@ -163,7 +163,7 @@ public function remove_course_template_hooks() { /** * Determine if a post should be migrated. * - * @since [version] + * @since 8.0.0 * * @param int $post_id WP_Post ID. * @return bool @@ -175,7 +175,7 @@ public function should_migrate_post( $post_id ) { /** * Filters whether or not a post should be migrated * - * @since [version] + * @since 8.0.0 * * @param bool $migrate Whether or not a post should be migrated. * @param int $post_id WP_Post ID. @@ -186,7 +186,7 @@ public function should_migrate_post( $post_id ) { /** * Update post meta data to signal status of the editor migration. * - * @since [version] + * @since 8.0.0 * * @param int $post_id WP_Post ID. * @param bool $publish Whether or not the post is being published. diff --git a/includes/class-llms-beaver-builder.php b/includes/class-llms-beaver-builder.php index f55cec034a..62bb1b3936 100644 --- a/includes/class-llms-beaver-builder.php +++ b/includes/class-llms-beaver-builder.php @@ -6,7 +6,7 @@ * * @package LifterLMS/Classes * - * @since [version] + * @since 8.0.0 */ defined( 'ABSPATH' ) || exit; @@ -78,7 +78,7 @@ public function enable_post_types_by_default( $types ) { * * Stub function called during install. * - * @since [version] + * @since 8.0.0 * * @return void */ diff --git a/includes/llms.template.functions.php b/includes/llms.template.functions.php index 6a83c96d0d..411dbc2025 100644 --- a/includes/llms.template.functions.php +++ b/includes/llms.template.functions.php @@ -1188,7 +1188,7 @@ function llms_is_elementor_post( $post_id = false ) { /** * Function to check if a post is built with Beaver Builder * - * @since [version] + * @since 8.0.0 */ if ( ! function_exists( 'llms_is_beaver_builder_post' ) ) { function llms_is_beaver_builder_post( $post_id = false ) { diff --git a/includes/models/model.llms.access.plan.php b/includes/models/model.llms.access.plan.php index a52b6ee69a..b5a1701fe4 100644 --- a/includes/models/model.llms.access.plan.php +++ b/includes/models/model.llms.access.plan.php @@ -547,8 +547,8 @@ public function get_product_type() { * @param boolean $verbose If true, the text will be verbose and include the plan name for accessibility. * @return string * @since 3.0.0 - * @since [version] Added $verbose parameter. - * @version [version] + * @since 8.0.0 Added $verbose parameter. + * @version 8.0.0 */ public function get_enroll_text( $verbose = false ) { diff --git a/includes/shortcodes/class.llms.shortcode.membership.instructors.php b/includes/shortcodes/class.llms.shortcode.membership.instructors.php index 6b3ce70e56..a79476d785 100644 --- a/includes/shortcodes/class.llms.shortcode.membership.instructors.php +++ b/includes/shortcodes/class.llms.shortcode.membership.instructors.php @@ -8,7 +8,7 @@ * * @package LifterLMS/Shortcodes/Classes * - * @since [version] + * @since 8.0.0 */ defined( 'ABSPATH' ) || exit; @@ -35,7 +35,7 @@ class LLMS_Shortcode_Membership_Instructors extends LLMS_Shortcode { * output is filtered so the return of get_output() doesn't need its own filter * * @return string - * @since [version] + * @since 8.0.0 */ protected function get_output() { if ( 'llms_membership' !== get_post_type( get_the_ID() ) ) { @@ -54,7 +54,7 @@ protected function get_output() { * with the user submitted attributes and passed to $this->get_output() * * @return array - * @since [version] + * @since 8.0.0 */ protected function get_default_attributes() { return array(); diff --git a/lifterlms.php b/lifterlms.php index d889b28513..d4593fc240 100644 --- a/lifterlms.php +++ b/lifterlms.php @@ -10,7 +10,7 @@ * Plugin Name: LifterLMS * Plugin URI: https://lifterlms.com/ * Description: Complete e-learning platform to sell online courses, protect lessons, offer memberships, and quiz students. WP Learning Management System. - * Version: 7.8.7 + * Version: 8.0.0 * Author: LifterLMS * Author URI: https://lifterlms.com/ * Text Domain: lifterlms diff --git a/package-lock.json b/package-lock.json index 4e2a3a87aa..471c3e0f9f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "lifterlms", - "version": "7.8.7", + "version": "8.0.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "lifterlms", - "version": "7.8.7", + "version": "8.0.0", "license": "GPL-3.0", "dependencies": { "@babel/core": "^7.16.5", diff --git a/package.json b/package.json index a0f916c9c4..746bfea575 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "lifterlms", - "version": "7.8.7", + "version": "8.0.0", "description": "LifterLMS by codeBOX", "repository": { "type": "git",