====== Make your plugin compatible to Admidio 5 ====== ===== Using Bootstrap 5 ===== Admidio 5 uses Bootstrap 5. So therefore you have to convert your Bootstrap customizations to Bootstrap 5. View [[https://getbootstrap.com/docs/5.3/migration/|Migration document]] of Bootstrap 5. ===== Changes to HtmlForm ===== The entry list of the parameter ''$options'' has changed. The entry ''helpTextIdInline'' is replaced by the existing entry ''helpTextId''. ===== Script parameters changed ===== Within the scripts ''groups-roles/lists_show.php'' and ''groups-roles/mylist.php'' the parameter''rol_ids'' was replaced by ''role_list''. With the name changed also the content of the parameter has changed. The old parameter expects a comma separated list of role IDs e.g. ''3,5,7'', the new parameter expects a comma separated list of role UUIDs e.g. ''006bd130-34d4-4b86-9e82-b1464ad60a0b,1525af50-1b2b-45ce-8a07-35b0b1eb5a5e,56920e00-761c-495a-b43d-082eda94a145'' ===== New icon set ===== Admidio 5 now use the icon set of bootstrap https://icons.getbootstrap.com/ . Therefore you need to change all icons in your plugin. Search in your html code for icons like ''fa fas-iconname'' and replace it with an icon from bootstrap like ''bi bi-iconname'' . ===== Introducing namespaces ===== Admidio 5 starts to use namespaces. Therefore some changes in your scripts are neccessary:\\ Instead of ''Language::translateIfTranslationStrId()'' use ''Admidio\Infrastructure\Language::translateIfTranslationStrId()''\\ Instead of ''Language::isTranslationStringId()'' use ''Admidio\Infrastructure\Language::isTranslationStringId()''\\ If you have used the class ''TableAccess'' then you must now use the ''Entity'' class which has the same methods but another name and uses namespaces. So your existing code like $myDatabaseObject = new TableAccess($gDb, 'adm_my_table', 'myt'); must now look like this: use Admidio\Infrastructure\Entity\Entity; $myDatabaseObject = new Entity($gDb, 'adm_my_table', 'myt'); If you have used several classes of Admidio like SecurityUtils you must now integrate the following line at the top of your file use Admidio\Infrastructure\Utils\StringUtils; ===== Method changes ===== The following methods have changed their names for better understanding about the functions of that method:\\ ''Users::manageRoles()'' changes to ''Users::isAdministratorRoles()''\\ ''Users::assignRoles()'' changes to ''Users::isAdministratorRoles()''\\ ''Users::editUsers()'' changes to ''Users::isAdministratorUsers()''