# Core Engine Release 3.8
Take a look at the new features and improvements of our 4App Core Engine, version 3.8 (December, 15th, 2020).
# Admin information
# New feature admin info banner
We want to provide you with helpful admin information directly in our system. So we added info
banner to each admin snap-in in the administration area. They give you a short description of a
feature, hints for usage, and links to our technical documentation platform for further
information.
Info banner are available for snap-ins of the 4Apps CoreEngine, DAM and Essentials so far.
Note: Our documentation platform is currently a beta version. You need credentials to read our docs - please contact your account manager if you need access.
# New Security admin snap-in
In our new admin snap-in Security (General system configurations/System settings
) you can now view
and edit the security settings for cookies, CORS and CSP. As for CORS, it is now easy to add URLs to
the allowed origins. Just add the complete URL including port and clear the configuration cache. A
restart of the server is not necessary anymore.
Note: Make sure to add the URL of the source system to CORS allowed origins when using our
feature system synchronization
.
# Main view tooltips added
We added some more tooltips to improve the usability of our system and to give users instant tips on basic functionalities. Look for them here:
- header (CoreEngine, DAM, Essentials)
- subheader (modules)
- left sidebar (including search, filter, folder structure)
- search control
- rich tile (DAM)
All tooltips have unique labels (e.g. "L-M-TASK-INFO") that must be translated (e.g. "Go to Tasks"). When upgrading to 3.8, translations come automatically for all modules of our Apps CoreEngine, DAM and Essentials.
Attention! Upgrading CoreEngine, DAM and Essentials to 3.8. will bring tooltips to all modules. So if you use other 4Apps (e.g. our PIM), older versions of a 4App or custom modules, only the label key will show in your tooltip. Please make sure to translate the keys manually in your module's properties files.
# New ClientTypes to configure ObjectRenderer and layouts
If you want to optimize your user interface for mobile devices, you can now configure ObjectRenderer
and layouts especially for smartphones and tablets. For this purpose you need to set a different
ClientType for mobile devices depending on the display size. Configure custom ObjectRenderer and
layouts with the new ClientTypes Phone
and Tablet
.
Users will then get all layouts and ObjectRenderer with ct_phone
if they access the 4ALLPORTAL
from a smartphone and all with ct_tablet
if they access the 4ALLPORTAL from a tablet.
Note: This is an option for a custom configuration and no pre-configuration in our standard product.
# Other changes
- Add expiry information to welcome- and password reset email
- Change some labels, icons and tooltips in the administration e.g. in the App management area
- Improve multiselect component: show selected items as bubbles that can be deselected separately without reopening the pop-up
- Set loglevel for startup file sync and comet polling to trace
- Enable multi selection for object versions (e.g. to delete multiple of them)
- ListOperationActor is now able to reload operations, triggered by RefreshActor
- Add field for user language selection to the user configuration
- Support including a varchar(max) field for a database index on SQL Server
- Support {$currentLanguage} as fieldRenderer default value to use the current user language as default value
- Optimize the request management
- Add confirmation for action "send_welcome_email" and "reset_password"
- Implemented hide tooltip with click
- Support using the "use_prevbase" option in the OIS configuration to allow or forbid the preview base file
- Check the data path for accessibility ("health" check)
- Improve Request Management performance, when looking for new jobs
- Change opacity of selected role in role administration
- Api: Change error result for request with a malformed body
- Allow use of template engine template in module configuration for
read
,delete
,edit
,assign
,menu_entry
andcreate
permission. Before was only possible formodule_access
permission. - Use feature permission
global.has_superadmin
to allow a user to change therole
of users - Performance improvement of the file indexer due a file ID is only read when it is needed
- Skip creating indexes on the modules that do not have database tables (create_table = false)
- Api: Allow specifying the dimensions for endpoint /modules/{module}/objects/{id}
- Prohibit the recursion in the tree structure
- Info how to create an api key
- Detect clientType
Phone
andTablet
on login
# Resolved bugs
- Fix translated-tooltip attribute did work correctly
- Fix issue with the deletion of additional permission entry and sql server
- Fix EditPopup behavior on legacy edge browser (saved searches)
- Fix creating a role via installation replicator
- Fix set video preview from ObjectImage service
- Fix writing list IPTC/XMP fields such as IPTC:Keywords
- Fix session cookie max age for api key login
- Fix the reset of a reference index
- Fix remove trailing spaces from user id in login method with SQL Server database
- Fix fallback image for missing index of a media type
- Fix stack-overflow, occurring with a special layout file constellation with changes
- Fix mail service contains previous recipients. Get own instance of service for every mail
with
modelLocator.getBean(IMailService.class)
. Please do not use spring autowired, because the service has @Scope("prototype"). - Fix Preview SVG files to not be smaller as it is.
- Fix login blocked because
failed_login_attempts
not reset after successful login. Also avoid further non-successful logins for blocked users - Fix possible wrong
ip
anduser_agent
written to modulelogin_attempt
- Fix PAP connector get all dimensions for fields of type CEIdList (relation type FIELD_LINK)
- Fix set default value in field renderer
- Fix use the conditions with the SQL statement that contains the ":" character(s)
- Fix get preview for "version" module for pageable file
- Fix issue setting the native timestamp to null
- Fix patching relation fields using the preview API
- Fix role selection in system synchronization (always select all parent roles)
- Fix wrong applications order after start up
- Fix unknown user in get audit with MSSQL database
- Fix restore scrolling position in object renderer
- Fix remove session when logout with bearer token
- Fix processing of the
exclude
attribute in object renderers - Fix value selection in field renderer from type "selection"
- Fix marking after scrolling in the list
- Fix get relation Beans without parent Bean
- Fix show subpanel without result
- Fix selection with shift in list component
- Fix incomplete list of media types returned by GET api/modules/
/objects/ /media - Fix "now_relative" validation in datetime renderer
- Fix add value option by Admin-SnapIn
- Api: Fix response code (404) if the requested module was not found
- Api: Fix issue when performing POST or PATCH on single or multiple objects
- Fix prevent to set password with wrong method
- Fix set
owner_user
andowner_role
in set_multiple for module user - Fix
username
not unique when write with set_multiple - Fix
ext_id
,connector
not unique for users created withconnector <> none
- Fix some security vulnerabilities
- Fix missing typeahead tokens of some metadata indexes
- Fix checking operation permission for subpanels when the objects requested via the multiple relationships
- Fix unexpected logout with api key null
- Api: fix setting the object type via PATCH or POST methods
- Fix ignore recipients without email address set
- Fix issue when trying to create a temporary file in the derivative service to perform some conversion operations on Windows Servers
- Fix use new libraries to fix security vulnerabilities
- Fix module search in administration
- Fix doesn't set same site and secure for cookies for request with origin file://
- Fix implement hashCode for CETypes
- Fixed create version with configured watermark
- Fix unordered values options
- Fixed create subfolder
- Fix problems with too many renderer loaded at once
- TypeAHead: support new values for fields with value options
- Definition of decimal places in Number Renderer has been corrected
- Fix concurrency perform the job request of the different type
- Fallback not existing theme icons to default theme
- Loading process on the list tile has been corrected
- Fix permission issue
# How to get this improvements
- Upgrade Core Engine 4App to version 3.8
- No licensing required
# Version 3.8.1
- Fix wrong background when the transparency of an image removed
- Fix endless loader for shopping cart tiles in safari
- Fix line wrap for MetricRenderer
- Error when maintaining scroll position in the list has been fixed
- Error when deleting items in the reference renderer has been fixed
# Version 3.8.2
- Fix legacy relation queries in the api
# Version 3.8.3
- Allow values that are shorter than three characters for list values in
MetadataWorkflowAction
- Fix deserialization in ActionUploadServlet
- API: Fix sort argument causing errors, when specifying desc or asc
- API: Fix
totalCount
for objects endpoint. It now supports a new boolean parameter to enable it?totalCount=true
. - API: Add support to read Metric and Metric list fields
- API: Always add "id" to field list and ensure group by id
- API: Add hook support for the new objects get api
# Version 3.8.4
- Fix 0 of 0 paging after browser back
- Fix broken dimension popup in mass change view
- Fix unstable copy of auto complete bubbles
- Fix a bug in the Selection renderer with the all selection button
- Fix missing deletion trigger when setting the field "deleted" to "true".
- Fix missing relation events when deleting a virtual relation
# Version 3.8.5
- Fix a bug in the Selection renderer not showing values in some cases
- Fix escaping for LIKE search
- Fix the addition of missing typeahead indexes on large amounts of data
- Fix NPE from opentracing for not existing pages
# Version 3.8.6
# Version 3.8.7
- Fix error after updating objects
- Fix broken date chooser appearance
- Fix output of the 4ALLPORTAL version
- Fix wrong language of the share session
- Fix legacy API call didn't return unauthorized HTTP code 401 when the session is invalid
- Fix UI cache providing outdated objects
- Fix restoration of scroll position in the list
- Fix privilege escalation vulnerability by adding a stricter access control option:
hidden
- Fix download issue when the MIME-type contains uppercase characters
- Improve performance for some searches
- Fix restoring from scrolling position in the list
- Fix autorotation when generating the preview of postscript files (EPS, PS, AI)
# Version 3.8.8
- Fix broken svg icons
# Version 3.8.9
- Keep the resolution tags when downloading the original file
- Fix throw a change event if the property
deleted
of an object set to true - Fix dimension handling in object renderer