What's new in EzyPlatform 1.4.5?
This release completes multi-Market support, ensuring that SSO, plugin purchases, and plugin installations use the correct source Market. EzyPlatform also introduces independent Platform Key management for each Market, expands Admin UI customization, and improves several APIs, SDK components, and administration features.
-
Completed multi-Market SSO supportThe SSO login flow now uses the correct Market that hosts the plugin. EzyPlatform remembers the Market throughout the redirect and callback process, then automatically returns users to the correct Market after login. This ensures a consistent SSO experience in environments configured with multiple Markets.
-
Synchronized plugin operations with the source MarketPlugin purchase, installation, review, author, and detail links now use the correct source Market. Plugin list pagination also preserves Market information, preventing links or images from incorrectly pointing to another Market.
-
Added independent Platform Key management for each MarketEach Market can now use its own Platform Key and dedicated key storage file. Platform Keys are cached by Market URL instead of sharing a single key across the entire system. Module installation, statistics reporting, and SSO authentication automatically use the appropriate Platform Key for the current Market.
-
Expanded Admin UI customizationThe Admin interface can now be further customized through configuration or settings. The EzyPlatform logo can be changed using
ezyplatform.logo_url, copyright content usingezyplatform.copyright, and the contact link usingezyplatform.contact_url. This makes it easier for EzyPlatform deployments to customize branding and displayed information for their own requirements. -
Added HMAC-SHA256 to the Common SDKThe Common SDK now provides
Hashes.hmacSha256(key, data)for generating HMAC-SHA256 signatures, supporting use cases that require data integrity verification or request signing between systems. -
Added TextValueResultIntroduced
TextValueResultfor queries that return a single text value, helping standardize result models and simplify the corresponding Repository queries. -
Improved fallback for EzyPlatform GuidesIf the configured Market does not respond when requesting EzyPlatform Guides, the platform automatically falls back to the default server to retrieve the content. This helps keep the Guides page available when a custom Market is temporarily unavailable.
-
Standardized the Market URL listWhen reading
market.urlandmarket.urls, the platform now automatically removes duplicate Market URLs, ensuring consistent Market handling and avoiding unnecessary requests. -
Improved Socket SSL password configurationThe Socket configuration page now displays the masked
******value for SSL certificate or keystore passwords only when the corresponding password file actually exists and contains data. This provides a more accurate representation of the current configuration and avoids indicating that a password has been configured when it has not. -
Improved the Admin UI experienceAdmin warning dialogs now have a maximum height and support scrolling when displaying long content. The Footer has also been updated to correctly handle cases where the configured copyright content is an empty string.
-
Extended Common Entity Fetchers
CommonAdminEntityFetcherandCommonUserEntityFetchernow support additional Entity Types corresponding toSocketUserType.ADMINandSocketUserType.USER, providing more consistent entity identification and retrieval across environments. -
Fixed multi-Market issuesFixed cases where the wrong Market could be used when purchasing or installing plugins. Plugin image, review, author, and detail links now consistently preserve the correct source Market during pagination. The default Market's Platform Key is also no longer incorrectly shared with custom Markets.
-
Improved Market SSO safetyPlugin names and callback parameters in the Market SSO flow are now safely encoded before being included in URLs, ensuring redirects work correctly with values containing special characters.