All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning. In order to read more about upgrading and BC breaks have a look at the UPGRADE Document.
- #420 The block helper method for images won't try to resize (apply filter) for an image which does not have any width/height values, which indicates this is for example a svg image.
- #415 Fixed navItem relation for inactive page versions.
- #412 Fixed website relation for nav container (when accessing
navContainer->website
). - #410 Disabled sorting functionality for the "group" extra field in the block CRUD interface due to an exception being thrown. This issue occurred because the field is declared as an
extraAttribute
. - #409 Implemented a new validation check to prevent slug duplication within the same language and navigation hierarchy when creating a new page. This enhancement ensures unique page identification and avoids conflicts in site structure.
This release contains a very small change when using the block
getEnvOption('pageObject')
. Check the UPGRADE document to read more about.
- #408 Resolved an issue where the CMS
pageObject
returned an ActiveQuery instead of the expectedNavItemPage
object. For more details, refer to the UPGRADE document. - #404 Cmsadmin padding fix for blockholder collapsed
- #406 Fixed website and theme status ActiveButtons (PHP 8)
- #400 Improved translations (bg, cn, es, fr, hu, id, kr, nl, pl) and updated link to new guide.
- #401 Fixed issue with missing env options.
This release contains new migrations and requires to run the migrate command after updating. Check the UPGRADE document to read more about breaking changes.
- Support for PHP 7.x versions has been deprecated and dropped. Users are encouraged to upgrade to PHP 8.0 or higher for optimal performance and security.
- A new feature includes the addition of an anchor option for CMS page redirects. Now, redirects can be specified with anchors to navigate to specific sections within the destination page.
- Introducing a CMS injector option that facilitates the setting of
parentNavId
. This functionality enables more precise navigation structuring within the CMS. - The zaaCmsPage component now supports a clearable option, providing users with the capability to clear content when necessary.
- #399 PHP 8.1 compatibility issues.
- #396 Fixed bug where it was not possible to select a website when creating or updating a nav container.
- #392 Indexes break if there are disabled users
- #398 Ensure cms log message can not exceed 250 chars.
- 387 Decode possible not or wrong configured json values silently instead of throw an exception
- Fixed PHP 7.4 as minimum version in composer.json, this was previously done by the luyadev/luya-module-admin dependency. Therefore using rector to align functionality with PHP 7.4.
- #385 Fixed a bug where deep page copy does not copy the languages.
- #386 Added rector testing.
- #382 Added option for
luya\cms\helpers\Url
to create absolute URLs instead just relativ paths. - #381 Add check whether the activeLanguageItem exists in PageTag parser.
- #378 Dropped PHP 7.0 and 7.1 in order to have PHP 8.1 compatibility.
- #380 Fixed problem with caching of menu (added missing hostname to cache key in menu).
- #375 Fixed Website delete event
- #377 Fixed XSS on error page
- #322 Added
save
andsave&close
buttons to blocks. - #365 Changed misleading icon for page properties in page settings overlay.
- #362 Fixed misleading use of the note_add icon. Changed icon for cms menu item Pages in the admin menu.
- #361 Fixed an issue where link directive does not load menu data in crud context (without an inital load of the cms view).
- #360 Changed misleading icon for page properties in dropdown menu.
- #354 Added property
$enableWebsiteHostRedirect
to cms module to enable or disable theWebsiteBehaviorUrlRule
. - #359 Fix issue with logging cms nav item when deleted.
This release contains new migrations and requires to run the migrate command after updating. Check the UPGRADE document to read more about breaking changes.
- #246 The
$module
property in blocks is now by defaultnull
. This means block view files are looked up in aviews
folder which is located in the same location as the block. See UPGRADE document - #350 New migrations for page update timestamp and changed nav item alias max length to 180 chars.
- #349 Fix default/initial website permissions on first setup for users and groups.
- #345 Added Website user and group permission support
- #344 Added website collapse to page permission.
- #274 Multiple website support.
- #341 All deprecated methods has been removed
Url::toMenuItem
,Block::objectId
,NavItemPage::getBlock
. - #320 Replace cms menu item
publish_from
andpublish_till
with sheduler. - #329 Ensure its not possible to drag a placeholder block into itself (this can create circular references)
- #336 New event which is triggered when the cms page is composed and ready to render.
- #325 Added target value into the NavTree widget.
- #327 Fix LinkConverter class when using CMS as headless API.
- #323 Add LUYA Test Suite 2.0 with PHP 8 Support.
- #321 Added scheduler for block item visibility.
- #331 When caching is enabled, the NavTree content will be cached by default.
- #325 Updates for compatibility with PostgreSQL
- #332 Added option to match wildcards in catch path for cms redirects, this allows you to use
/de/*.html
which could be redirect to/de/*
. - #339 Fixed a bug in CMS page permission system, unable to access to subpage without enabling parent page permissions.
- #343 Removed deprecated
luya\behaviors\Timestamp
behavior, replaced withyii\behaviors\TimestampBehavior
.
- #319 Disabled Block injector rows limit.
- #314 Do not serve the blocks from the cache when an adminuser is logged in.
- #309 Added new help information for page properties as tooltip.
- #310 Fixed a bug where full page cache could cache the content including the LUYA Toolbar.
- #317 Add the option to use the defined wildcard value in redirects for the target. From path
foo/*
to destinationluya.io?path=*
. The given example would redirectfoo/hello-world
toluya.io?path=hello-word
.
This release contains a very small and unlikely used signature change. Check the UPGRADE document to read more about.
- #288 Introduced a new
setup()
method inluya\cms\base\BlockInterface
. This method is called when the block object is instantiated in frontend context. - #300 Hide navigation informations when creating a translation from an existing page (inline translating).
- #290 Add
titleContent
callable function forluya\cms\widgets\NavTree
widget in order to customize the link content. - #292 Improve the CMS Block-Editor styles.
- #297 Fixed a bug where menu queries with hidden informations won't retrieve correct data and count (hidden information was not passed correctly to the ArrayIterator from inside an luya\menu\Item).
- #138 Added missing translations for all CMS tags.
- #302 Added new "Language Mirroring" block for the developer group, in order to mirror content from a language placeholder into another.
- #304 Add new default value for full page cache duration (2 hours instead of 1 minute).
- #306 New option for block variable and configuration setup allows to make attributes required using
'required' => true
in block config.
- #285 Fix error in translation key
nav_item_model_error_modulenameexists
.
- #284 Fixed a bug where controller action params are already decoded from json to array.
- #283 Fix issue where creating a page copy as template throw an unknown error.
- #282 Fix issue with angularjs version 1.8.0 compatibility.
- #280 Since latest AngularJs updates in Admin Module there are DOM problems with
ng-include
. The "translate now" dialog where not showing anymore.
- #276 Fixed a bug with wrong nested ng-show conditions who made form inputs disappearing.
- #275 Fixed a bug where cms page fields disappear due to missing id informations. Replaced by Angular Helper input field generator.
- #273 Fixed a bug with
Unknown Model Error
when copy a CMS Page. - #272 Remove canonical URL from meta informations for CMS Pages
- #270 Fixed a bug where CMS redirects does not work due to full page cache throws a not found exception.
- #266 Fixed a bug where page copy should throw an error but does not.
- #267 Fixed bug where dashboard log object try to display a title which does not exist.
- #259 Improve the logging of data when working with cms blocks. Added new CMS log listing view to see all logs.
- #258(#7b87d62) Detected a rare case where cms\menu\Item might be already resolved. Thefore ensure if menu item is already an object or not.
- #258 Added ArrayAccess for MenuIterator in order to prevent upgrade issues from 3.0 to 3.1.
- #256 Fix issue when creating url for
cms/default/index
route (which is the cms catch all rule). - #257 Fix issue with nav properties API action when translation item is not yet available.
- #254 Fixed #254 utf8mb4 charset max key length is 767 bytes.
This release contains an API change regarding menu builder, see UPGRADE document to read more about changes.
- #251 New menu\Item getDescendants() and QueryIteratorFilter::column() functions.
- #250 Improve cms menu admin performance when more then 300 menu items are available.
- #248 Fixed a bug where cmslayout files where unable to render with absolute paths.
- #245 Block can have empty $module property to lookup view file paths in the block location (like Widgets).
- #242 Improve stability of {{luya\cms\menu\Query}} where condition builder.
- Removed unnecessary call of deprecated function.
- Fixed a bug with new deprecation warning when using luya\cms\helpers\Url::toModuleRoute
This release contains new migrations and requires to run the migrate command after updating. Check the UPGRADE document to read more about breaking changes.
- #222 Full page chache is enabled in module settings by default and a new
enable caching
flag for pages can be set to enable the caching of the page. - #239 Added negative margin to cancel out default admin padding. Fixed a small overflow issue in Safari (admin/#461).
- #238 Show vertical scrollbars.
- #211 Add the theme loading and management to the cms module based on core theme luya/issues/1916
- #235 Fixed cms toolbar bug in ajax context.
- #214 Fixed bug when switch from module page to content page.
- #223 CMS Pages (Nav) can have tags and can also be filtered in menu query by tags. (luya\cms\menu\Query::tags()).
- #233 Fix problem with cms nav item model validation rules.
- #166 New LanguageSwitcher method
setUrlRuleParam()
to make url rules translatable. - #224 Add
getBlock()
method in PhpBlockView to access block context.
- #218 Ensure log system works properly when a page is deleted.
- #106 Prevent infinite recursion when storing wrong block data.
- #213 If a 404 is thrown in admin context, the cms error page should not render, otherwise this could lead into a 500er server error which will then log out the user.
- #210 Added new Active Query Select Injector class.
- #208 New $fullPageCache option for the cms frontend module, this can speed uf the page dramatically but can lead into problems with dynamic values inside blocks (like ActiveRecords).
- #209 Fixed phpdoc in view file generator of blocks.
This release contains new migrations and requires to run the migrate command after updating. Check the UPGRADE document to read more about breaking changes.
- #81 Added new migrations for module pages in order to allow controller and action definitions.
- #182 Moved to SemVer. Use ^2.0 instead ~2.0.0 constraint in your project!
- #51 Enable strict url parsing as long as the previous page is a module or strict parsing is disabled.
- #82 Option to define target (new window or not) for redirect pages.
- #159 Added new og:image and twitter:image meta informations. Its possible now to upload an image for a page.
- #203 Show error page when NotFound exception is thrown.
- #201 Fix issued where language switcher widget does not prefix host info (defined by hostInfoMapping).
- #193 Prefix certain application env folders when running block importer in order to make sure windows system paths work.
- #194 Updated CSS to unify spaces between page languages and treenav
- #71 If a not found page is defined a 404 is returned instead of redirect to the error page.
- #20 Refactor parent page selection and menu-dropdown directive (added search, change styles).
- #189 Block preview path with backward compatibility for PHP 5.6.
- #139 Stop hiding the block toolbar on drag because that caused issues in certain browsers.
- #177 Use dynamic file paths for cmslayouts import command.
- #170 Next and prev sibling functions in menu item not sorted correctly.
- #181 Fixed a bug with menu when using limit and order methods together.
- #180 Add option for block placeholder iteration rendering.
- #173 LangSwitcher widget auto register hreflang link meta informations.
- #169 Add down() method to iterate trough parent items until a certain item condition.
- #156 Fix bug with resolve the correct block path without set the
$module
property. - #158 Fix bug with redirect table and not language prefix paths.
- #154 Fix bug where disabled blocks are visible in the block list of the CMS.
- #159 Added twitter card and canonical url informations with override options by keys.
- #86 Add option to set a variation as default value
asDefault()
. - #83 Show block preview on hover menu.
- #42 Added styles to change the cursor from pointer to move after .5s of hover on the treeview item.
- #111 Updated CMS Cards and style for blocks. Spacing is now better if you have no placeholder title.
- #15 Store latest working cms page version in service in order to restore afterwards.
- #21 Fix issue when using templates with block placeholders.
- #147 Enable auto encoding for menu component, this disallow the usage of html code for page titles, descriptions and seo titles.
- #145 Fixed issue where preloading of models wont have any effect for page properties.
- #144 Fixed problem with using of exiting object, this broke cms pages where the same block is used multiple times.
- #143 Added block_class and block_class_name to block response in order to use as identifier for registering headless blocks instead of ID.
- #103 Switched page visibility indicator and logo position
- #107 Add all table fields into the rules defintion.
- #132 Added Polish translations.
- #84 Added index for FK fields.
- #107 Extend rules for nav item model.
- #109 Added cms admin module $cmsLayouts propertie to import cms layouts (if no frontend module is available, example headless usage).
- #110 Option to defined a folder with cms layouts (for headless usage).
- #6 Create page template from existing pages.
- #121 Blocks with configuration variables only where not editable.
- #14 Hide block toolbar on drag.
- #97 Fixed bug where not existing redirect page throws an exception.
- #88 Fix regression with block caching if cache is not available.
- #76 Fix strict di bug when creating a new cms page container.
- #13 Register assets of blocks and register them to app view (also with enabled cache).
- #80 Add luya\cms\LinkConverter in order to convert type and value informations to a luya\web\LinkInterface object.
- #79 Add new
TelephoneLink
class to support html anchor with "tel:". - #77 Add new after resolve current event for menu item injection.
- #74 New active window in block view to see on which page a block is implemented.
- #75 Nav model create* functions does now return the id of the given nav or nav item model.
- #72 New
cms/page/cleanup
command to remove/cleanup all navigation items which are deleted. - #70 New migrate and cleanup commands blocks as outdated blocks wont be deleted by the importer anymore.
- #68 Provide blocks by configure new
$blocks
property of the cms admin module. The path can either be a folder or a file. Multiple folders or files can be added by providing an array. - #67 New
cms/block/find
command in order to search for blocks and display how many times its used in the content.
- #52 Replaced
btn-toolbar
withbtn-outline-config
- #64 Uglify javascript code.
- #61 Deprecated method
toNavItem()
in classluya\cms\helpers\Url
in favor oftoMenuNavItem()
and also added new methodtoMenuNav()
.
- #73 Wrong link definition for internal links directive.
- #49 Editing a block, will clear the cache of first parent now.
- #50 Added new APIs for headless usage.
- #46 Fixed caption issue with BlockHelper imageArrayUpload
- #45 Fixed PHP 7.2 compatibility bug.
- #44 Removed layouts add button.
- #40 Renamed main.min.js to main.js and updated the assets file
- #37 Updated toolbar color and added new LUYA Logo as SVG
- #39 Disallow trailing slashes in url parsing in order to prevent DC.
- #38 Fixed wrong namespace reference in BlockController.
- #1768 Use static render path for toolbar due to controller override for module context.
- #31 Fixed missing error handling for create page translation from existing version.
- #35 Do not render layout when RAW response format is given.
- #34 Add option to configure the preview url.
- #17 Create new page version if changing from other page types to "page" and no version is available.
- #12 Add new orderBy() method for sorting the query data.
- #25 Hide deleted pages in dashboard object "last page updates".
- #3 Bootstrap apply only when module exists in modules list.
- #24 Fixed SCSS dependency issues with external luya-module-admin project links and missing bootstrap style functions
- #22 Fixed memory issue when creating new version from existing page with large amount of blocks.
- #19 Add Chinese Translations
- #18 When page is default version and online, the original site path will be used to preview the page.
- First stable release.