This document describes changes to the code structure for developers and is not intended as a complete feature change log. The full change log is available in the GitHub releases.
2024-09-25
- Some restructuring of code, with a new PSR4 style class autoloader. As a result, any custom
prebuilt forms should implement the
IForm\prebuilt_forms\PrebuiltFormInterface
interface and the getPageType() method in order to define whether a data entry, reporting or utility page. This is not a breaking change - custom prebuilt forms that don't implement this interface will still work but will appear in the list of forms available when creating a container group using thegroup_edit
form even if not a report. - Prebuilt forms can remove the
isDataEntryForm()
as it is replaced by theIForm\prebuilt_forms\PrebuiltFormInterface::getPageType()
method. - There is a new autoloader - include the
autoload.php
file in the root folder to use it. This is currently only needed to load theIForm\IndiciaConversions
,IForm\prebuilt_forms\PageType
andIForm\prebuilt_forms\PrebuiltFormInterface
but further classes will use the autoloader in future. - The function
helper_base::ago
has been replaced byIForm\IndiciaConversions::timestampToTimeAgoString
. - The function
VerificationHelper::getStatusLabel
has been replaced byIForm\IndiciaConversions::statusToLabel
. - The function
VerificationHelper::getTranslatedStatusTerms
has been replaced byIForm\IndiciaConversions::getTranslatedStatusTerms
. - The function
VerificationHelper::getStatusIcons
has been replaced byIForm\IndiciaConversions::statusToIcons
. - The
/prebuilt_forms/includes/groups.php
form has some changes to use a GroupMembership enum, rather than a boolean for whether the user is a member. Function calls to this file should therefore review their parameters.