Releases: Aplia/apublish
2024 update
v1.3.5 Merge remote-tracking branch 'ezsystems/2019.03' into 2024-update
Fix null reference for call to `get_class`
design/admin/templates/content/browse_mode_list.tpl
$swap_node
can intentionally be NULL
. This causes get_class
to
return a E_WARNING
as per PHP 7.2.
Making the call to get_class
conditional on $swap_nodes
existence
fixes the issue.
New ezpEvent `content/pre_delete`
The new event content/pre_delete
fires right before eZContentObject->purge()
starts deleting data.
eZINI cache folder override, content controllers and fixes
- Added workaround for missing column
contentobject_id
when fetching nodes withisObject = false
- Test toolkit - Improved error/exception handling
- Removed deprecated/illegal function call in session handler
- Removed unused variables and code in
ezfiletransport.php
- Added event
node/trash
which fires when trashing an object. - Support for overriding ezini cache folder
- Support for limiting editing of attributes
Overriding eZINI cache folder
eZINI
now supports moving the cache folder by setting the environment variable EZP_INI_CACHE_PATH
, e.g. var/site/cache/ini
.
This is the same env variable that eZSys supports for its iniCachePath
static function.
Content controllers
Content controllers is a new feature for controlling which attributes can be edited by the current user.
Each content controller is called when fetching input for an attribute and may deny access to editing that attribute.
Add the following to content.ini
:
[EditSettings]
ContentControllers[]
ContentControllers[]=CustomContentController
Then implement a PHP class that has the canEditAttribute
method.
class CustomContentController
{
public function canEditAttribute($attribute)
{
// ...
// return true or false
}
}
Basket: Handle empty items on store
Minor fix to shop/basket. Handle if Store button is pressed when basket is empty.
Updated merge and extension documentation
Updated versions for extensions:
- aplia/ezformtoken - v1.1.1
- aplia/ezjscore - v1.3.3
- aplia/ezoe - v5.4.4
Howto update:
- composer require aplia/ezoe "5.4.4"
- composer require aplia/ezformtoken "1.1.1"
- composer require aplia/ezjscore "1.3.3"
1.2.1: Avoid throwing errors when clearing cache dirs fails
For high traffic sites the cache folder may be written to while the current process is busy removing cache files. This results
in the inability to remove the cache folder which was presumed to be empty.
We catch this case and simple ignore the error as the old cache files have already been successfully removed.
1.2: Added support for PSR loggers in eZDebug
By setting a global variable all internal logging in eZDebug
will be turned off and instead it will divert the messages to
the configured logger channels.
Set $GLOBALS['ezpDebug']['loggerFactory']
to a callable which
accepts a parameter for the level type and should return a the
logger channel instance, this can be a single instance for all
levels or one per level. eZDebug will then use this to log the
message using the PSR interface.
To disable a log level the callable should return null.
A simple example using Monolog that will log to a single file.
$GLOBALS['ezpDebug']['loggerFactory'] = function ($level) {
static $log;
if ($log === null) {
$log = new \Monolog\Logger('app');
$log->pushHandler(new \Monolog\Handler\StreamHandler('app.log'));
}
return $log;
};
1.1.4
Fix eZModules not being loaded when using REST API
1.1.3
- Update to eZ version 2019.03.4
- PHP 7 fixes