Under all supported formats, users can select the origin and destination site of the data so it is possible to export and import object entries between any site.
Release Notes
With this improvement, the Data Migration Center allows users to export and import Object Entries using CSV files. Not all field types are supported but many of the most used ones are:
Supported field types: dateandtime, date, decimal, integer, longint, longtext, precissiondecimal, richtext, text and picklist.
In order to help users, only supported fields are available for exporting at the UI. As new types are allowed, they will appear available in the UI.
Pages served by Liferay might make use of third party cookies. In order to inform Liferay to manage them as part of the user cookie consent, now Portal developers and Content creators have a way to indicate the portal about them.
In order to make Liferay aware of them, the content creator or portal developer will need to update the markup to the following:
First, indicate the type of cookie following this format:
Second, change the markup depending on the element affected:
For example, embedding a video from a video provider, will see the markup changed in the following way:
- Before: <iframe src="..." />
- After: <iframe data-src="..." `data-third-party-cookie="CONSENT_TYPE_FUNCTIONAL" />
We have introduced a configuration feature within the Asset Library, enabling users to decide whether a Vocabulary created there is solely required at the Asset Library level or if it extends to the connected Sites as well.
Use the platform's configurable purchasing rules to dictate which product options need to be purchased together when setting up products with options. You can set which product options must be purchased together and/or which product options cannot be combined together to create a valid product bundle. You can also limit the number of products from a particular group of products that can be purchased together.
Two new permissions were added to View and Edit the channel default tab in the Account Management Pages. Users are now able to activate/inactivate the tab.
Users can add read-only fields to object definitions that automatically increment for each new entry.
Key Features:
Customize Starting values - Users can set a starting value. This flexibility allows for better alignment with specific business needs and workflows
Customize labels - Users can set prefixes and suffixes to provide alphanumeric keys appended to the incrementing values
When adding validations in Objects, many times it is necessary to validate dates against the current date.
Key Features:
Dynamic Date Comparison - Users can compare a selected date with the current system date. This empowers you to create rules that trigger based on the relationship between a date field and the present date.
Versatile Date Range Checks - Validate whether a date falls within a specified date range relative to the present date.
Users can add validations to verify field values that, when used in combination, are unique.
Limitation: numeric fields such as Integer, Long Integer, Decimal, Precision Decimal will be stored as null.
Validate relationships to prevent duplicate names in child objects.
Users are now able to properly search in the portal using the Search widget (in applications that have data restricted by account).
This development introduces the ability for the user to set the file size at asset library’s level. This settings will override the already existing one at System level when the latter is bigger. As a general rule, when both are set the lowest applies.
To reduce the maintenance costs of providing a full document’s preview, the following changes are being introduced:
“No preview available” state when the file size exceeds the preview size limit.
Merge “File Entries” and “PDF Preview” settings under “File Preview Limits”
Rename "File Size Limits" to "File Upload Limits" with a reviewed and more understandable Description copy
The user is being informed that the generated preview may not correspond to the entire document
Now user are able to:
Configuration of document size for copying in D&M
Bulk copying of documents and folders
Currently the copy action for documents and folders is able to be performed in Portal without fully respecting the site-asset library relationship. The expected behavior is:
An asset library must be connected to a site in order to copy a document over to the site
A document cannot be copied from a site to an asset library (only the other way around)
We can enforce a stricter check when performing the copy action between asset libraries and sites. Instead of the end user receiving a success message when copying a document to a disconnected site, an error message should appear telling the user to set the connection first.
Document Types contained in a document are being copied in Documents and Media so that they can be easily reused.
Categories and Tags in Documents and Media are being automatically copied so they can be easily reused on a new site.
With this development, the publication of Knowledge Base articles will be schedulable, in particular, the feature is so designed:
The primary Publish button will have an arrow down with the “Publish” option, that will immediately publish the article, and the “Schedule” one.
Clicking the Schedule option, will make a modal appear so the user can set a date and time for the article to be published.
The Scheduled article will have the SCHEDULED status that will change to APPROVED on the scheduled date
A tooltip with the scheduled date information will appear when hovering the
question-circle-fullicon placed next to the SCHEDULED state.
Editing a scheduled article will provide the user the ability, by clicking the primary button that has turned into “Scheduled”, to:
Cancel the operation
Publish Now
Schedule: this option will save the article, date & time changes and the user will return to the previous screen before entering edit mode
Additional feature: A Knowledge Base article deletion action will move it to the Recycle Bin so that it can be restored.
This feature allows you to leverage the functions of Liferay’s caching framework. Our current measurements indicate about 10%/30% performance increase in database writing operations, also 10 times faster reading performance!
We refactored the way Liferay scripts were managed, so admins can define stricter policies like:
script-src '[$NONCE$]'; script-src-attr 'unsafe-inline';
Limitations: If a policy like the one above is configured, the parts of the product that uses a rich-text editor will not work correctly. Analyze your scenario to identify how strict your policy can be in order to make the solution work.
Now users can configure the values for the following properties from settings (system, instance or site settings):
session.timeout.auto.extendsession.timeout.auto.extend.offset
New Account Type of Supplier. A Supplier can be linked to a catalog and to a channel to allow the supplier manage their own products, price lists, promotions, catalogs, discounts, inventory and channel in order to be able to fulfill orders for their own products.
A new set of tooling is being provided, to centralize all the different tooling into a single solution, therefore, stand-alone tooling like the Fragments Toolkit does not make sense anymore as a stand-alone tool. In addition to that, the fragment toolkit needed upgrades to prevent some vulnerabilities that could happen. Therefore, we recommend adopting other solutions for now. The Fragment Toolkit will remain available for a minimum of one year.
The Category Facet uses assetVocabularyCategoryIds field for aggregation. The required mapping and indexer changes have been available since 7.4 GA46/U46 (LPS-156503: Display, Scope and Filter Categories by Vocabulary in the Category Facet).
Note: Reindex is required after all upgrades.
Our new Bulk Permission Management empowers administrators to modify access rights for multiple pages effortlessly. This new feature offers a multitude of benefits:
- Effortless Management: Save valuable time by managing permissions for multiple pages simultaneously.
- Enhanced Security: Gain complete visibility into page access, ensuring all intended audiences can access the content they need.
- Optimized Accessibility: Quickly identify pages not accessible to Guests and make adjustments for optimal user experience.
Override default settings and tailor colors, fonts, and other design elements directly through the ThemeCSS Client Extension. This update ensures a visually consistent and brand-aligned experience for your website visitors. Simplify website customization and elevate your brand presence!
With a JavaScript (JS) client extension, you can run your own JavaScript on any page in Liferay without worrying about dependencies on Liferay code or developing a theme. This translates to noticeably faster loading times for your Liferay applications, keeping users engaged and happy. Give your applications a performance uplift with smarter script loading.
Map individual specifications, choose the order, and create clear, informative product pages that drive sales and enhance the customer experience. Simplify product page creation and empower your business with this new feature.
This allows you to benefit from the latest Java innovations, including performance enhancements, robust security features, and compatibility with cutting-edge technologies. Upgrade your Java environment and experience a faster, more secure Liferay platform!
While managing data set views, define actions to be used in the data set fragment. Now you can define a broader range of actions, including opening links, triggering headless actions, launching pop-ups, and even opening dedicated side panels. This empowers richer data interactions and streamlined workflows for your users. Transform your data sets into powerful information hubs.
Aiming to provide a better way to manage Object entries, now Display Pages allow the creation of Object Edit experiences, using Forms Container and Fragments.
When using a Form Container in a Display Page, submitting it will now update the object entry being displayed.
This, combined with the possibility to use multiple display pages at the same time, and the new “Save as Draft” option for objects, enable a whole new set of possibilities for customers, such as creating multi-step processes out of the box.
Now, if an asset type (for example, an Object definition) has several related Display Page Templates, and one of them is marked as Default, we allow to map links to any of the existing Display Page Templates for that Asset Type, in addition to the Default one.
This new possibility allows some interesting use cases for customers, such as:
- Differentiated View Display Page and Edit Display Page for Object entries.
- Multi-step processes (that need different step URLs) can be now created by using one Display Page per step.
Sometimes the changes added to a publication needs to be reviewed by someone who is not a member of the site. The goal here was to make unauthenticated users able to review changes within a publication. For this we implemented a mechanism to generate a code, which can be used to access the Review Changes screen of a certain publication. Also this link could be easily invalidated/generated anytime by authenticated Publication Reviewers.
The goal here is to make the users able to move changes between publications. This is needed because sometimes users do not want to publish an entire publication, but also do not want to revert the changes which will not be published actually. With this feature users can move changes from one publication to another, creating subsets of changes, and publish them separately. For readers with technical knowledge: this is similar to cherry-pick-ing a commit in git from one branch to another.
Now, users are able to visually understand the structure of their objects and how they connect with each other to result in the platform model.
A common problem we have heard from our customers revolves around the time required to complete an AB Test. If a customer’s page receives limited traffic, the time to completion could be many weeks if not months. Amidst the rapid changes in today's business landscape, this delay potentially negates the usefulness of test results. On top of this, if a user were to terminate the test prematurely, the insights they gathered from the test and the variant they created were lost.
In order to remedy this issue, we are now providing test results and the ability to publish a variant when an AB Test is terminated. Although these results cannot determine a winning variant with 100% confidence, they will give marketers a sense of how their variant was performing. Using this information, Marketers can now make educated decisions according to their specific time constraints.
It is important to remark that this feature is DXP-only, as it belongs to Analytics Cloud.
Sell and manage SKUs by adding different Units of Measure to the SKU. Configure the Unit of Measure to optionally allow for sales in decimal quantities. Units of Measure have their own pricing and inventory. Once configured, they add to the shopping experience of the buyer who can now purchase SKUs in different Units of measure.
Integrated Logging in Cloud Console for both Client Extension and DXP. Capabilities:
- Unified Logging View: Enables users to simultaneously view both Client Extension and DXP logs.
- Log Interactivity: Allows users to filter and sort logs based on parameters like timestamp and severity.
Benefits:
- Comprehensive Insight: Eliminates the need to toggle between separate log sources, offering a holistic log view.
- Efficient Troubleshooting: Enhanced filtering and sorting make it easier to pinpoint and address issues.
Capabilities:
- PSC Connection Support: Allows direct integration of specific Kubernetes services or namespaces via Private Service Connect.
- Tunneling Solutions: Provides a dedicated channel for GCP services or different GCP VPCs to connect securely within Liferay Cloud.
- API-Driven Provisioning: Enables users to automate and configure PSC connections programmatically.
- Combined Utility with Cloud Interconnect: Offers a mechanism to securely link on-premises data/systems with GKE or Google Cloud Storage.
Benefits:
- Enhanced Security: Bypassing the public internet ensures data protection during transmission.
- Reduced Latency: Direct connections speed up data transfer and interactions.
- Predictable Performance: Stable and consistent network performance between on-premises and Liferay Cloud.
- Flexibility & Automation: API-driven provisioning provides users with a more flexible setup and deployment process.
Reducing downtime, improving operational and resource utilization efficiency with the new Concurrent and Sync reindex execution modes providing high-availability in search capabilities while the operation is running.
We have created a new application that helps developers to build APIs based on custom Objects in a Low Code/No Code UI. This new feature allows users to define the whole structure of the API, from the endpoint’s name to the data model of the request and response schemas.
And, because the persistence layer of the API Builder is Objects, all capabilities are available at the API layer and every object has its own CRUD API application created by default.
So, from the UI or from the API, now users can create custom API Applications from scratch.
The scope of this beta feature only covers the creation of GET methods to retrieve a collection of elements with the possibility of creating pre filters and sorts.
Now admins can define the default sorting for a dataset view. You can select the field to sort by when users access the page with the data set view as well as the direction (ascending or descending). It is possible to add more than one field. In this case, results will be sorted following the order of the fields, so it will start sorting based on the first field, for elements with the same value for that field, it will continue sorting based on the second field and so on.
Admins now can define views and select fields that are localized, so users will access the corresponding translation when visiting the page. Additionally, the names of the columns and filters are also localizable.
In order to use this feature it is needed to enable “Translation Support for Object Entries” in the Feature Flags menu before enabling “Data Set Manager” in the beta section of the Feature Flags menu.