What's new in EzyPlatform 1.1.7?
This release introduces media grouping, optimizes keyword-based media search,
improves access-token security, and expands URL utility functions.
- Added media grouping with groupNameIntroduced the
groupNamefield for media through thegroup_namecolumn in theezy_mediastable. Media listing APIs for admin, admin-me, and web now support filtering bygroupName,groupNamePrefix, andungrouped. Media list and detail responses now also return group information. The admin media update form includes a newGroup Namefield, while media lists and media-selection modals support searching by group-name prefix. - Optimized media search with keyword indexingAdded
AdminMediaIndexAppenderto automatically build keyword indexes for media. Keywords are extracted from fields such asoriginalName,groupName,title,caption, andalternativeText. Media keyword-prefix searching now usesDataIndexinstead of searching directly onoriginalName, resulting in better performance. - Enhanced access-token generation securityAdded the
SecureRandomHashGeneratorsutility for safer random hash generation.AccessTokens.generateAccessTokennow generates tokens usingSecureRandomcombined withSHA-256instead of the previousUUID + currentTimeMillisapproach. Additionally,AccessTokens.extractSourceIdwas improved to handle null or short tokens more safely. - Added new URL utilitiesIntroduced new URL helper methods:
Uris.isSameOriginOrRelative,Uris.toRelativeUrl,Uris.getPort, andUris.normalizeUrl. These utilities provide more flexible URL processing and normalization capabilities. - Performance improvements and system optimizations
displayOrderinDataMappingwas changed frominttolongto support larger values. New indexes were added to theezy_data_mappingstable to optimize queries in bothfrom → toandto → fromdirections. Additionally, a mapping issue forremainingQuantityinDefaultEntityToModelConverterwas fixed, where it previously usedquantityincorrectly. - Configuration updates and UI improvementsThe
isAdminAccessTokenHttpOnlysetting was moved intoSettingServiceso it can be shared instead of being limited toAdminSettingService. The default value ofallowSearchMediaByLikeOperatorwas changed fromtruetofalse, prioritizing keyword-index searching. Additionally,Numbers.toLongOrZeroFromObjectwas made public for reuse, and the scroll container height of.max-height-85vn-scrollwas increased from75vhto85vhfor a better user experience.