= [4.10.1] = * Fix - Stripe Conflict with multiple plugins. * Fix - Incompatibility with other plugins using psr/container. = [4.10.0] = * Feature - Add an option to import demo content in the onboarding wizard. * Fix - Quiz AI existing quiz steps resetting on new quiz creation. * Fix - Course outline AI resetting existing course section headings. * Fix - Fatal error on WooCommerce Subscriptions order pages. * Tweak - Some Telemetry data was mapped incorrectly. * Tweak - Fixed Stripe related PHP 8.2 deprecation notices. * Tweak - Updated functions: `learndash_course_add_child_to_parent`. = [4.9.1] = * Fix - Deprecation notice on the course page in PHP 8.1. * Fix - Support a custom label in the latest transactions course widget. * Fix - Can’t re-arrange/drag and drop Answers in Quiz Builder. * Fix - Quizzes inside topic can't be re-ordered. * Fix - Can’t correctly remove answers via Quiz Builder. * Tweak - Format a discount properly in the purchase invoice PDF. * Tweak - Improve a button label and a warning message on the quiz statistics page. * Tweak - Use WP defined date/time format in course dashboard widgets. = [4.9.0.1] = * Fix - Parameters compatibility for the get_edit_post_link filter. = [4.9.0] = * Feature - Add new course dashboard with course performance metrics and data. * Fix - Course 'Mark Complete' button validations. * Fix - Sidebar hiding does not work in tabs. * Tweak - Added Course-Presell support for the Student and Visitor shortcodes. * Tweak - Set default course access mode to Free. * Tweak - Support non /wp-admin URLs in the course video playlist. * Tweak - Added actions: `learndash_dashboard_widget_before_loading`, `learndash_dashboard_widget_after_loading`, `learndash_template_before_include`, `learndash_template_before_include:{template_name}`, `learndash_template_after_include`, `learndash_template_after_include:{template_name}`, `learndash_template_entry_point:{template_name}`, `learndash_template_entry_point:{template_name}:{entry_point_name}`. * Tweak - Added filters: `learndash_template_after_include_html:{$template_name}`, `learndash_template_after_include_html`, `learndash_template_args:{$template_name}`, `learndash_template_args`, `learndash_template_filepath`, `learndash_template_before_include_html:{$template_name}`, `learndash_template_before_include_html`, `learndash_template_entry_point_html:{template_name}:{entry_point_name}`, `learndash_template_entry_point_html:{template_name}`, `learndash_template_entry_point_is_enabled`, `learndash_template_html:{template_name}`, `learndash_template_html`, `learndash_template_include_html:{template_name}`, `learndash_template_include_html`, `learndash_template_pre_html:{$template_name}`, `learndash_template_pre_html`, `learndash_template_skip_rendering`, `learndash_template_admin_template_paths`, `learndash_dashboard_tab_is_default`, `learndash_dashboard_widget_course_lifetime_sales_transactions_chunk_size`, `learndash_dashboard_widget_course_latest_enrollees_users_limit`, `learndash_dashboard_widget_course_latest_transactions_limit`, `learndash_dashboard_is_enabled`, `learndash_dashboard_post_is_enabled`, `learndash_dashboard_section_hint_supported_html_tags`, `learndash_dashboard_sections`, `learndash_dashboard_sections_course`, `learndash_dashboard_widget_view_path`. * Tweak - Updated constants: LEARNDASH_DEFAULT_COURSE_PRICE_TYPE. * Tweak - Updated filters: `learndash_template_filename`. * Tweak - Updated functions: `learndash_mark_complete_process`. = [4.8.0.1] = * Fix - Error on Settings Support page when no .po file is available. * Fix - Incompatibility of binary selectors (group courses and course groups) with the classic editor. = [4.8.0] = * Feature - Add a password reset success page setting. * Feature - Add Bunny.net video progress support. * Feature - Create quizzes using AI. * Feature - Extend access to a course (single or in a group) on an individual user basis. * Feature - Group pre-selling. * Feature - Group start and end dates. * Feature - Group student limit. * Fix - Course could not be created from a video playlist if a license email contained a plus sign. * Fix - Incorrect from email address when sending admin and user quiz completion emails. * Fix - Remove "0 Days Trial" item for Stripe subscriptions with no trial. * Performance - `sfwd_lms_has_access_fn` function is optimized. * Tweak - Added actions: `learndash_metabox_initialized`. * Tweak - Added confirm dialog to start of Design Wizard. * Tweak - Added filters: `learndash_group_access_from`, `learndash_model_product_user_enrollment_date`, `learndash_course_get_extended_access_timestamp`. * Tweak - Added functions: `learndash_group_access_from`, `learndash_get_reset_password_success_page_id`, `learndash_is_learndash_hub_installed`, `learndash_activate_learndash_hub`, `learndash_course_extend_user_access`, `learndash_course_get_extended_access_timestamp`. * Tweak - Improved the LearnDash Licensing & Management plugin activation process. * Tweak - Updated functions: `ld_update_group_access`, `learndash_user_group_enrolled_to_course`, `ld_update_course_access`, `learndash_hub_deactivated_notice`, `learndash_video_complete_for_step`, `learndash_video_delete_cookie_for_step`, `learndash_delete_user_data`, `ld_course_access_expires_on`, `sfwd_lms_has_access_fn`. = [4.7.0.2] = * Fix - Add compatibility with the User Role Editor plugin when updating user roles via profile page. * Fix - Removed Astra templates from Design Wizard. * Tweak - Added 12 additional Kadence templates into the Design Wizard. * Tweak - Added filters: `learndash_stripe_webhook_event_processable`. = [4.7.0.1] = * Fix - Content editor was sometimes shown above the correct page content on LD post editing pages with tabs. * Fix - Respect gateway return url on successful payment redirect. * Fix - Stop exporting all courses when a user has no courses attached on GDPR export. * Tweak - Added actions: `learndash_quiz_resume_metadata_updated`. * Tweak - Added filters: `learndash_privacy_export_exporters`, `learndash_privacy_export_course_progress_data`, `learndash_privacy_export_lesson_progress_data`, `learndash_privacy_export_topic_progress_data` * Tweak - Deprecated functions: `learndash_get_course_enrollment_url`, `learndash_get_group_enrollment_url`. = [4.7.0] = * Feature - Course pre-selling. * Feature - Course start and end dates. * Feature - Course student limit. * Fix - Add left padding to content area in Focus Mode when using right sidebar on mobile screens. * Fix - Prevent group_leader role being removed from users on profile update. * Fix - Undefined array key warning in `ld_profile` shortcode when displaying a quiz with no title. * Tweak - Added actions: `learndash_metabox_updated_field`. * Tweak - Added filters: `learndash_payment_button_disabled`, `learndash_model_product_can_be_purchased`, `learndash_model_product_has_started`, `learndash_model_product_has_ended`, `learndash_model_product_start_date`, `learndash_model_product_end_date`, `learndash_model_product_pre_ordered`, `learndash_model_product_seats_limit`, `learndash_model_product_seats_used`, `learndash_model_product_seats_available`. * Tweak - Updated functions: `sfwd_lms_has_access_fn`, `ld_update_course_access`. = [4.6.0.1] = * Fix - Duplicate status bubbles when using the `learndash_status_bubble` function. * Security - Tightened security around the reset password shortcode. = [4.6.0] = * Feature - Course Outline AI module. * Fix - Display free trial in course/group infobar if trial price set to 0 or empty. * Fix - learndash_process_user_course_progress_update function was not processing the progress correctly in some cases. * Fix - Prevent duplicate password reset email after password reset. * Fix - Set product name as description for Stripe Connect buy now products. * Fix - Undefined FS_CHMOD_FILE error. * Fix - Updated method to required files in helpers.php file. * Tweak - Added actions: `learndash_files_included`. * Tweak - Added filters: `learndash_payment_button_classes`, `learndash_model_product_display_price`, `learndash_model_product_display_trial_price`, `learndash_service_chatgpt_send_command_data`. * Tweak - Added functions: `learndash_register_provider`, `learndash_extra_autoloading`. * Tweak - AI Integrations settings page under advanced settings tab. * Tweak - Deprecated functions: `learndash_the_breadcrumbs`. * Tweak - Deprecated models classes (replaced with LearnDash\Core\Models): `Learndash_Model`, `Learndash_Product_Model`, `Learndash_Transaction_Model`. = [4.5.3.2] = * Fix - learndash_reports_get_activity function did not return correct results in some cases (which has been affected by a fix in 4.5.3.1). = [4.5.3.1] = * Security - Tightened security around the courseinfo shortcode. = [4.5.3] = * Fix - The default color is not displayed in the theme settings color picker. * Update - RazorPay library to 2.8.5. = [4.5.2.1] = * Fix - Location of /lang directory in TCPDF library. = [4.5.2] = * Fix - 'Click here to visit' translatable text on checkout form. * Fix - Display correct pricing interval values in purchase invoice. * Fix - Incorrect decimal pricing on Stripe & Razorpay checkout. * Fix - learndash_reports_get_activity() returns results outside of date range if activity status combination is set. * Tweak - Show deprecation notice if using Stripe addon plugin. * Update - Change documentation in LearnDash LMS > Setup page. * Update - TCPDF to version 6.6.2. = [4.5.1.2] = * Fix - Course access validation error message. * Fix - Passed quizzes not showing continue button. = [4.5.1.1] = * Fix - Telemetry modal loading on incorrect admin pages. = [4.5.1] = * Fix - Add ; to Content-Type email header. * Fix - Display Telemetry modal on LD admin pages. * Fix - Hide continue button on failed quiz shortcode unless filtered * Fix - Issues with pagination, minimum global pagination value is 1 now. * Fix - Keep the old slugs for imported posts where possible. * Fix - learndash_user_get_course_completed_date function did not calculate the correct date in some cases. * Fix - Posts and authors were not connected on import when users were being imported. * Fix - Process shortcode placeholders in purchase invoice email message. * Tweak - Add better validation messages on import. * Tweak - Add validation error to the course access period field, when the value is less than 1. * Tweak - Confirm dialog when setting up template in Design Wizard. = [4.5.0.3] = * Fix - Increase timeout period for Action Scheduler * Fix - Prices containing commas were not being passed to payment gateways correctly. * Fix - Stripe Connect does not allow purchase for a logged-out user if Registration page not set. * Tweak - Removed a non-circulating currency CLF. = [4.5.0.2] = * Fix - PayPal ignored the 'Use PayPal Sandbox' setting. = [4.5.0.1] = * Fix - Compatibility with PHP 7.2, 7.3. * Fix - Conflict with a list of plugins. * Fix - Mobile sidebar menu and materials tab not opening. * Fix - Move scalar constants out of the `plugins_loaded` hook. = [4.5.0] = * Fix - Allow user to bypass topic progression when lesson is using video progression and admin bypass is enabled. * Fix - By default a group leader should not have an ability to edit the groups list they lead or other group leaders lead. * Fix - Check for mobile resolution when opening Focus Mode sidebar. * Fix - Ensure that all assignments for step are approved before considering as complete. * Fix - Fatal error on questions CPT when using 'j \d\e F \d\e Y' date format. * Fix - Fill in the blank answer formatting on quiz statistics. * Fix - Format price properly on course/group pages. * Fix - Highlight current topic in focus mode sidebar navigation. * Fix - License validation cache was not being cleared when a license was updated. * Fix - PayPal subscriptions used a usual price instead of a trial price. Now all options are mapped correctly. * Fix - Quiz pagination when using Overview table feature. * Fix - Quiz resume setting not saving in Quiz Template feature. * Fix - Razorpay subscriptions from guest users were ignored, now they are processed correctly. * Fix - Setup wizard not showing in some cases. * Fix - Shorten screen height on Setup Wizard Payment page. * Fix - Stripe Connect could not process a webhook, when a guest user tried to buy a product using the existing WP user email. * Fix - Text on the course wizard page was not using custom labels. * Fix - When the Group Leader user role was removed through the user’s profile, it was not deleted from group leaders assigned to groups. * Performance - learndash_active_coupons_exist function is optimized. * Tweak - Added actions: `learndash_payment_button_added`, `learndash_payment_gateway_event_processed`, `learndash_payment_gateway_user_created` * Tweak - Added Data Sharing tab to the advanced settings. * Tweak - Added filters: `learndash_admin_settings_advanced_sections_with_hidden_metaboxes` * Tweak - Added filters: `learndash_group_leader_can_edit_group_leaders`, `learndash_admin_settings_advanced_sections_with_hidden_metaboxes` * Tweak - Added filters: `learndash_purchase_invoice_logo_params`, `learndash_user_statistics`, `learndash_lesson_row_class`, `learndash_quiz_essay_upload_link`, `learndash_account_error_messages`, `learndash_account_menu`, `learndash_label_to_slug`, `learndash_payment_gateway_event_ignore`, `learndash_payment_gateways`, `learndash_loggers`, `learndash_logger_max_file_size`, `learndash_model_is_parent`, `learndash_model_allowed_post_types`, `learndash_model_product_pricing_type`, `learndash_model_product_type_label`, `learndash_model_product_pricing`, `learndash_model_product_user_has_access`, `learndash_model_product_user_enrolled`, `learndash_model_product_user_unenrolled`, `learndash_model_transaction_user`, `learndash_model_transaction_gateway_name`, `learndash_model_transaction_gateway_label`, `learndash_model_transaction_gateway`, `learndash_model_transaction_is_subscription`, `learndash_model_transaction_is_free`, `learndash_model_transaction_is_parent`, `learndash_model_transaction_has_trial`, `learndash_model_transaction_has_coupon`, `learndash_model_transaction_gateway_transaction_id`, `learndash_model_transaction_product`, `learndash_model_transaction_product_name`, `learndash_model_transaction_product_type_label`, `learndash_model_transaction_pricing`, `learndash_model_transaction_coupon_data`, `learndash_payment_option_image_url`, `learndash_payment_option_url_fail`, `learndash_payment_option_url_success`, `learndash_payment_button_label`, `learndash_payment_buttons`, `learndash_payment_button_open`, `learndash_payment_button_closed`, `learndash_payment_button_free`, `learndash_payment_button_dropdown`, `learndash_payment_button_dropdown_trigger`, `learndash_payment_button_markup`, `learndash_transaction_post_title` * Tweak - Added functions: `learndash_registration_errors`, `learndash_get_account_menu`, `learndash_coupons_init`, `learndash_registration_page_get_id`, `learndash_generate_purchase_invoice` * Tweak - Allow child class of LearnDash_Gutenberg_Block to set $block_dir property so it can register Gutenberg block using block.json. * Tweak - Deprecated actions: `learndash_user_created_with_razorpay`, `learndash_stripe_after_create_user` * Tweak - Deprecated classes: `LearnDash_Payment_Gateway_Integration`, `LearnDash_PayPal_IPN`, `LearnDash_Stripe_Connect_Checkout_Integration`, `LearnDash_Razorpay_Integration` * Tweak - Deprecated filters: `learndash-get-user-stats`, `learndash-lesson-row-class`, `learndash-quiz-essay-upload-link`, `learndash-registration-errors`, `learndash_payment_closed_button`, `learndash_dropdown_payment_button`, `label_to_slug`, `learndash_stripe_create_short_username`, `learndash_button_label_razorpay`, `learndash_stripe_purchase_button_text`, `learndash_process_webhook_razorpay`, `learndash_stripe_process_webhook` * Tweak - Deprecated functions: `learndash_footer_payment_buttons`, `learndash_get_footer`, `learndash_get_payment_button_label`, `learndash_paypal_init_user_purchase_hash`, `learndash_paypal_get_purchase_success_redirect_url`, `learndash_paypal_get_purchase_cancel_redirect_url`, `learndash_send_purchase_invoice_email`, `learndash_transaction_add_learndash_version`, `learndash_transaction_get_payment_meta`, `learndash_transaction_get_razorpay_meta`, `learndash_transaction_get_paypal_meta`, `learndash_transaction_get_final_price`, `learndash_transaction_get_stripe_meta`, `learndash_transaction_get_coupon_meta`