CHANGELOG.md 16.4 KB
Newer Older
cyrille's avatar
cyrille committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434
LifterLMS Blocks Changelog
==========================

v2.3.1 - 2022-01-26
-------------------

##### Updates and Enhancements

+ Resolved PHP 8.1 deprecation warnings.


v2.3.0 - 2022-01-25
-------------------

##### New Features

+ Added the llms/php-template block, used by the Site Editor to load php templates.

##### Updates and Enhancements

+ Adds support for WordPress 5.9.
+ The minimum required WordPress version is now 5.5.


v2.2.1 - 2021-09-29
-------------------

+ Bugfix: Fixed deprecated filter warning encountered when using certain development versions of the WordPress core.


v2.2.0 - 2021-07-19
-------------------

##### Updates

+ **Increases minimum WordPress Core version requirement to version 5.4!**.
+ Tested and compatible with WordPress core 5.8
+ Don't load block editor assets on the "blockified" widgets screen.
+ Remove timeouts and subscription debouncing used by blocks watcher which handles the `llms/user-info-fields` redux store.
+ Stop debouncing the blocks watcher.

##### Bug fixes

+ Confirm group blocks now configure the block's id, name, and match attributes instead of being configured in the block render via the `blocks/form-fields/group-data` module.
+ Don't define the `match` attribute during creation of a user password block.


v2.1.1 - 2021-07-08
-------------------

+ Fixed issue causing visibility controls to display for blocks which have no visibility attributes defined.


v2.1.0 - 2021-06-28
-------------------

##### Updates

+ Adjusted priority of block editor JS assets to load at priority `5` instead of `999`. Resolves plugin conflicts encountered when using block-level visibility on blocks registered after visibility filters are applied.
+ Removed usage of [react-sortable-hoc](https://github.com/clauderic/react-sortable-hoc) and replaced with [dndkit](https://github.com/clauderic/dnd-kit) for drag and drop UX within the editor.
+ Refactored the instructors sidebar (on courses and memberships) as well as the option shorting (for fields with options) to utilize `dndkit`.

##### Bugfixes

+ Fixed an issue encountered on password confirmation fields when adjusting the minimum password length option on the user password block.


v2.0.1 - 2021-06-21
-------------------

+ Use non-unique error notice IDs for reusable multiple error notice.


v2.0.0 - 2021-06-21
-------------------

##### Updates

+ Adds LifterLMS User Information form building via the block editor.
+ Initially compatibility for WordPress 5.8 (full site editing). Ensures core functionality but doesn't add any exciting features.
+ Improve the visual feedback inside the editor for a block with visibility restrictions.
+ Added reusable block support for form fields.
+ Adds a user information (`[llms-user]`) shortcode inserter to rich text block toolbars.
+ Use rich text `allowedFormats` in favor of deprecated `formattingControls`
+ Improved localization of Javascript files.

##### Bug Fixes

+ Fixed issue encountered when using lesson progression blocks outside of a lesson, thanks [@reedhewitt](https://github.com/reedhewitt)!
+ Fixed fatal errors encountered if LifterLMS core isn't active when this plugin is activated.
+ Currently selected instructors are excluded from queries for instructor users.
+ Fixed issue encountered on courses and memberships when attempting to edit instructor information.

##### Backwards Incompatible Changes

+ Major refactor of all field-related blocks.
+ The names of many field blocks have changed.
+ Use `getDisallowedBlocks()` in favor of removed `getBlacklist()` in `block-visibility/check`.
+ Blocks restricted to specific posts have had the post object stored on the block attribute reduced to include only the minimum required properties.
+ The `Search`, `SearchPost`, and `SearchUser` components have had major changes to make them more extendable.
+ Don't render InspectorControls since the block doesn't have any actual settings.


v2.0.0-rc.2 - 2021-06-18
------------------------

+ Only load the plugin if LifterLMS is loaded
+ Update version checking method.
+ Fixed typo causing errors on WP 5.6 and earlier.
+ Fix WP 5.7 compatibility issues
+ Fixed issue encountered when using lesson progression blocks outside of a lesson, thanks [@reedhewitt](https://github.com/reedhewitt)!


v2.0.0-rc.1 - 2021-06-15
------------------------

+ Fixes issue encountered when adding a confirm group
+ Stop using merge codes in the password block
+ Improve block duplication handlers
+ Prevent confirm fields from being manually pasted outside of a confirm group
+ Adds the `llms/user-information-fields` redux store to allow for better field validation and handling
+ Improves and adds field attribute validation
+ Use rich text `allowedFormats` in favor of deprecated `formattingControls`
+ Remove the now unnecessary `uuid` field block attribute.
+ Adds WP core 5.8 compatibility on the widget and customizer screens.
+ Exclude LifterLMS field block reusables from the widgets reusable blocks screen.
+ Adds backwards compatibility for WordPress < 5.6


v2.0.0-beta.6 - 2021-06-01
--------------------------

+ (Re-)introduces user information shortcode through a block editor rich text area format button.
+ Prevent usage the "User Login" block on account edit forms (usersnames cannot be edited in WordPress).
+ Only prevent form posts from being made "draft" status on the "core" forms.
+ Modifies field localization data strategy for field validation and others.


v2.0.0-beta.5 - 2021-05-18
--------------------------

+ Add WP core 5.8 compatibility for deprecated filter `block_categories`.
+ Fixed issue encountered on courses and memberships when attempting to edit instructor information.
+ Added validation to ensure all fields have unique HTML name attributes.
+ Simplified field data storage interface to enable saving only to the usermeta table.


v2.0.0-beta.4 - 2021-05-07
--------------------------

+ Fixed error encountered when opening the block editor options menu on an `llms_form` post type.
+ Added UUID generation to all form field blocks.
+ Fixed visual issues encountered with form field blocks on wide screens in the block editor.
+ Fixed issue preventing column widths from being set after switching from a stacked layout to a columns layout for a field group.
+ Added CSS classes to various option elements in the block editor
+ Moved most inline css in the editor into a static file
+ Fixed issue encountered when reverting a form to it's default
+ Fixed dynamic block rendering errors encountered when the block is restricted to specific courses/memberships.
+ Added CSS to make input placeholder text look like a placeholder


v2.0.0-beta.3 - 2021-04-26
--------------------------

+ All form field blocks refactored and many were removed or renamed.
+ Added column support to form field blocks.
+ Added reusable block support to form field blocks.
+ Removed support for block visibility on required field blocks (email and password).
+ Added reusable block filtering to only show "supported" reusable blocks when editing a form.
+ Added utility function support for reusable blocks.
+ Fixed issues related to visual rendering of checkboxes / radio elements on custom fields.


v2.0.0-beta.2 - 2021-03-22
--------------------------

+ Fixed block editor visual issues encountered on certain blocks when block-level visibility restrictions are enabled.


v2.0.0-beta.1 - 2021-03-22
--------------------------

+ Improved Javascript localization.
+ Updated JS source files to follow (slightly modified) eslint standards as defined by `@wordpress/eslint-plugin/recommended`.
+ Disabled import of incomplete module `./formats/merge-codes`.
+ Improved the information displayed for a restricted block.
+ Don't render `InspectorControls` for the Course Syllabus block since it doesn't have any actual settings to inspect.
+ Improved the Search, SearchPost, and SearchUser components and made backwards incompatible changes to their usage.


v1.12.0 - 2021-01-07
--------------------

+ Various form and field updates in preparation for LifterLMS 5.0.0.


v1.11.1 - 2021-01-05
--------------------

+ Update the hook used for the Instructors block when displayed on membership post types.


v1.11.0 - 2020-12-29
--------------------

+ Allow the "Instructors" block to be used for memberships, thanks [@alaa-alshamy](https://github.com/alaa-alshamy)!


v1.10.0 - 2020-11-24
--------------------

+ Use the `LLMS_Assets` class to define, register, and enqueue plugin assets.
+ Added Javascript localization for block editor scripts.


v1.9.1 - 2020-04-29
-------------------

+ Fix course progress block template used when migrating a course to the block editor.


v1.9.0 - 2020-04-29
-------------------

+ Converted the course progress block into a dynamic block. Fixes an issue allowing the progress block to be visible to non-enrolled students.
+ Added a filter on the output of the Pricing Table block: `llms_blocks_render_pricing_table_block`.


v1.8.0 - 2020-04-28
-------------------

##### Updates

+ Improved script dependencies definitions.
+ Updated asset paths for consistency with other LifterLMS projects.
+ Updated various WP Core references that have been deprecated (maintains backwards compatibility).
+ The Lesson Progression block is no longer rendered server-side in the block editor (minor performance improvement).

##### Changes to the Classic Editor Block

+ The classic editor block will no longer show block visibility settings because it is impossible to use those settings to filter the block on the frontend.
+ In order to apply visibility settings to the classic editor block, place the Classic Editor within a "Group" block and apply visibility settings to the Group.

##### Bug fixes

+ Fixed an issue encountered when using the WP Core "Table" block.
+ Fixed a few areas where `class` was being used instead of `className` to define CSS classes on elements in the block editor.
+ Fixed a user-experience issues encountered on the Course Information block when all possible information is disabled.
+ Fixed an issue causing visibility attributes to render on blocks that don't support them.
+ Fixed an issue preventing 3rd party blocks from modifying default block visibility settings.
+ Fixed a spelling error visible inside the block editor.
+ Fixed an issue causing the "Course Progress" block to be shown to non-enrolled students and visitors.
+ Removed redundant CSS from frontend.
+ Stop outputting editor CSS on the frontend.
+ Dynamic blocks with no content to render will now only output their empty render messages inside the block editor, not on the frontend.


v1.7.3 - 2019-12-19
-------------------

+ Move form ready event from domReady to block registration to ensure blocks are exposed before blocks are parsed.


v1.7.2 - 2019-12-09
-------------------

+ Bug fix: fix issue causing the block editor to encounter a fatal error when using custom post types that don't support custom fields.


v1.7.1 - 2019-12-05
-------------------

+ Bug fix: Fixed a WordPress 5.3 issues with JSON data affecting the ability to save course/membership instructors.
+ Update: Added filter, `llms_block_supports_visibility` to allow modification of the return of the check.
+ Update: Disabled block visibility on registration & account forms to prevent a potentially confusing form creation experience.
+ Update: Added block editor rendering for password type fields.


v1.7.0 - 2019-11-08
-------------------

##### Updates

+ Membership post types can now use the LifterLMS Pricing Table block.
+ Membership post types are automatically migrated to the block editor (use the pricing table block instead of the pricing table action).
+ Added a block editor template for the Membership post type.
+ The block 'llms/form-field-redeem-voucher' is now only available on registration forms.

##### Bug Fixes

+ Backwards compatibility fixes for WP Core 5.2 and earlier.
+ Perform post migrations on `current_screen` instead of `admin_enqueue_scripts`.
+ Fix an issue causing "No HTML Returned" to be displayed in place of the Lesson Progression block on free lessons when viewed by a logged-out user.
+ Import `InspectorControls` from `wp.blockEditor` and fallback to `wp.editor` to maintain backwards compatibility.
+ Fall back to `wp.editor` for `RichText` import when `wp.blockEditor` is not found.
+ Import from `wp.editor` when `wp.blockEditor` is not available.
+ Return early during renders on WP Core 5.2 and earlier where the `PluginDocumentSettingPanel` doesn't exist.


v1.6.0 - 2019-10-24
-------------------

+ Feature: Added form field blocks for use on the Forms manager.
+ Feature: Add logic for `logged_in` and `logged_out` block visibility options.
+ Update: Added isDisabled property to Search component.
+ Update: Adjusted priority of `render_block` filter to 20.
+ Bug fix: Import `InspectorControls` from `wp.blockEditor` in favor of deprecated `wp.editor`
+ Bug fix: Automatically store course/membership instructor with `post_author` data when the post is created.
+ Bug fix: Pass style rules as camelCase.


v1.5.2 - 2019-08-14
-------------------

+ Only enable REST for authenticated users with the `lifterlms_instructor` capability.


v1.5.1 - 2019-05-17
-------------------

+ Only register block visibility settings on static blocks. Fixes an issue causing core (or 3rd party) dynamic blocks from being managed within the block editor.


v1.5.0 - 2019-05-16
-------------------

+ All blocks are now registered only for post types where they can actually be used.


v1.4.1 - 2019-05-13
-------------------

+ Fixed double slashes in asset path of CSS and JS files, thanks [@pondermatic](https://github.com/pondermatic)!


v1.4.0 - 2019-04-26
-------------------

+ Added an "unmigration" utility to LifterLMS -> Status -> Tools & Utilities which can be used to remove LifterLMS blocks from courses and lessons which were migrated to the block editor structure. This tool is only available when the Classic Editor plugin is installed and enabled and it will remove blocks from ALL courses and lessons regardless of whether or not the block editor is being utilized on that post.


v1.3.8 - 2019-03-19
-------------------

+ Explicitly import jQuery when used within blocks.


v1.3.7 - 2019-02-27
-------------------

+ Fixed an issue preventing "Pricing Table" blocks from displaying on the admin panel when the current user was enrolled in the course or no payment gateways were enabled on the site.


v1.3.6 - 2019-02-22
-------------------

+ Updated the editor icons to use the new LifterLMS Icon
+ Change method for Pricing Table block re-rendering to prevent an issue resulting it always appearing that the post has unsaved data.


v1.3.5 - 2019-02-21
-------------------

+ Automatically re-renders Pricing Table blocks when access plans are saved or deleted via the course / membership access plan metabox.


v1.3.4 - 2019-01-30
-------------------

+ Add support for the Divi Builder's "Classic Editor" mode
+ Skip post migration when "Classic" mode is enabled


v1.3.3 - 2019-01-23
-------------------

+ Add conditions to check for Classic Editor settings configured to enforce classic/block for all posts.


v1.3.2 - 2019-01-16
-------------------

+ Fix issue preventing template actions from being removed from migrated courses & lessons.


v1.3.1 - 2019-01-15
-------------------

+ Move post migration checks to a callable function `llms_blocks_is_post_migrated()`


v1.3.0 - 2019-01-09
-------------------

+ Add course and membership catalog visibility settings into the block editor.
+ Fixed issue preventing the course instructors metabox from displaying when using the classic editor plugin.

v1.2.0 - 2018-12-27
-------------------

+ Add conditional support for page builders: Beaver Builder, Divi Builder, and Elementor.
+ Fixed issue causing LifterLMS core sales pages from outputting automatic content (like pricing tables) on migrated posts.


v1.1.2 - 2018-12-17
-------------------

+ Add a filter to the migration check on lessons & courses.


v1.1.1 - 2018-12-14
-------------------

+ Fix issue causing LifterLMS Core Actions to be removed when using the Classic Editor plugin.


v1.1.0 - 2018-12-12
-------------------

+ Editor blocks now display a lock icon when hovering/selecting a block which corresponds to the enrollment visibility settings of the block.
+ Removal of core actions is now handled by a general migrator function instead of by individual blocks.
+ Fix issue causing block visibility options to not be properly set when enrollment visibility is first enabled for a block.


v1.0.1 - 2018-12-05
-------------------

+ Made plugin url relative


v1.0.0 - 2018-12-05
-------------------

+ Initial public release