Package: release.debian.org Severity: normal Tags: bookworm User: release.debian....@packages.debian.org Usertags: pu X-Debbugs-Cc: g...@packages.debian.org Control: affects -1 + src:gosa
GOsa²'s PHP 8.2 support was rather poor at the release time of Debian 12. This update will amend various issues found while testing GOsa² with Debian Edu. [ Reason ] Various issues could be resolved: * deprecation warnings * missing smarty template file * broken debug support [ Impact ] Only GOsa² users will be affected by this upload. [ Tests ] Manual tests on Debian Edu TJENER system. [ Risks ] Introduction of regressions in GOsa² in Debian 12. [ Checklist ] [x] *all* changes are documented in the d/changelog [x] I reviewed all changes and I approve them [x] attach debdiff against the package in (old)stable [x] the issue is verified as fixed in unstable [ Changes ] + [ Mike Gabriel ] + * debian/patches: + + Add 1003_php-deprecations.patch. Silence various PHP 8.2 deprecation + warnings. (Closes: #1038682). + + [ Daniel Teichmann ] + * debian/patches: + + Add 1004_missing_templates.patch. (Closes: #1039697) + + Update 1002_php82-allow-dynamic-properties.patch: Tolerate dyn. prop. for + ALL PHP classes. (Closes: #1039894) + + Add 1005_preg_replace_deprecation.patch. + + Add 1006_fix-overflow-debug-print_a-func.patch. (Closes: #1040839) [ Other info ] This might not be the last pu of GOsa² to bookworm. But various noises should be reduced after this update has landed. We also work with upstream on amending the patched issues there.
diff -Nru gosa-2.8~git20230203.10abe45+dfsg/debian/changelog gosa-2.8~git20230203.10abe45+dfsg/debian/changelog --- gosa-2.8~git20230203.10abe45+dfsg/debian/changelog 2023-02-06 20:43:44.000000000 +0100 +++ gosa-2.8~git20230203.10abe45+dfsg/debian/changelog 2023-07-12 23:12:05.000000000 +0200 @@ -1,3 +1,20 @@ +gosa (2.8~git20230203.10abe45+dfsg-1+deb12u1) bookworm; urgency=medium + + [ Mike Gabriel ] + * debian/patches: + + Add 1003_php-deprecations.patch. Silence various PHP 8.2 deprecation + warnings. (Closes: #1038682). + + [ Daniel Teichmann ] + * debian/patches: + + Add 1004_missing_templates.patch. (Closes: #1039697) + + Update 1002_php82-allow-dynamic-properties.patch: Tolerate dyn. prop. for + ALL PHP classes. (Closes: #1039894) + + Add 1005_preg_replace_deprecation.patch. + + Add 1006_fix-overflow-debug-print_a-func.patch. (Closes: #1040839) + + -- Mike Gabriel <sunwea...@debian.org> Wed, 12 Jul 2023 23:12:05 +0200 + gosa (2.8~git20230203.10abe45+dfsg-1) unstable; urgency=medium * New upstream Git snapshot. diff -Nru gosa-2.8~git20230203.10abe45+dfsg/debian/patches/1002_php82-allow-dynamic-properties.patch gosa-2.8~git20230203.10abe45+dfsg/debian/patches/1002_php82-allow-dynamic-properties.patch --- gosa-2.8~git20230203.10abe45+dfsg/debian/patches/1002_php82-allow-dynamic-properties.patch 2023-01-21 20:42:25.000000000 +0100 +++ gosa-2.8~git20230203.10abe45+dfsg/debian/patches/1002_php82-allow-dynamic-properties.patch 2023-07-12 23:10:08.000000000 +0200 @@ -1,6 +1,200 @@ -Description: Tolerate dynamic properties in managepws class, deprecated in PHP 8.2 -Author: Mike Gabriel <mike.gabr...@das-netzwerkteam.de> - +Description: Tolerate dynamic properties in all classes, deprecated in PHP 8.2 +Author: Daniel Teichmann <daniel.teichm...@das-netzwerkteam.de> + +--- a/include/class_CopyPasteHandler.inc ++++ b/include/class_CopyPasteHandler.inc +@@ -22,6 +22,7 @@ + + define("LDAP_DUMP_PATH","/var/cache/gosa/tmp"); + ++#[\AllowDynamicProperties] + class CopyPasteHandler { + + var $config; +--- a/include/class_GOsaRegistration.inc ++++ b/include/class_GOsaRegistration.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class GOsaRegistration + { + +--- a/include/class_ItemSelector.inc ++++ b/include/class_ItemSelector.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class ItemSelector { + + public $base; +--- a/include/class_SnapShotDialog.inc ++++ b/include/class_SnapShotDialog.inc +@@ -21,6 +21,7 @@ + */ + + /* Snap shot dialog class */ ++#[\AllowDynamicProperties] + class SnapShotDialog extends plugin + { + var $config; +--- a/include/class_SnapshotHandler.inc ++++ b/include/class_SnapshotHandler.inc +@@ -21,6 +21,7 @@ + */ + + ++#[\AllowDynamicProperties] + class SnapshotHandler { + + var $config; +--- a/include/class_acl.inc ++++ b/include/class_acl.inc +@@ -21,6 +21,8 @@ + */ + + /*! \brief ACL management plugin */ ++ ++#[\AllowDynamicProperties] + class acl extends plugin + { + /* Definitions */ +--- a/include/class_baseSelector.inc ++++ b/include/class_baseSelector.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class baseSelector + { + private $base; +--- a/include/class_certificate.inc ++++ b/include/class_certificate.inc +@@ -26,6 +26,7 @@ + define("PEM","pem"); + define("DER","der"); + ++#[\AllowDynamicProperties] + class certificate + { + /* vars */ +--- a/include/class_config.inc ++++ b/include/class_config.inc +@@ -27,6 +27,7 @@ + * gosa configuration file. + */ + ++#[\AllowDynamicProperties] + class config { + + /* XML parser */ +--- a/include/class_configRegistry.inc ++++ b/include/class_configRegistry.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class configRegistry{ + + public $config = NULL; +@@ -573,7 +574,7 @@ + } + } + +- ++#[\AllowDynamicProperties] + class gosaProperty + { + protected $name = ""; +--- a/include/class_core.inc ++++ b/include/class_core.inc +@@ -106,6 +106,7 @@ + */ + + ++#[\AllowDynamicProperties] + class all extends plugin { + static function plInfo() + { +@@ -122,6 +123,7 @@ + } + } + ++#[\AllowDynamicProperties] + class core extends plugin { + + static function getPropertyValues($class,$name,$value,$type) +--- a/include/class_departmentSortIterator.inc ++++ b/include/class_departmentSortIterator.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class departmentSortIterator implements Iterator { + private $data; + +--- a/include/class_filter.inc ++++ b/include/class_filter.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class filter + { + public $searches = []; +--- a/include/class_filterLDAP.inc ++++ b/include/class_filterLDAP.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class filterLDAP { + + static function query($base, $scope, $filter, $attributes, $category, $objectStorage= array("")) +--- a/include/class_filterNOACL.inc ++++ b/include/class_filterNOACL.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class filterNOACL extends filterLDAPBlacklist{ + + static function query($base, $scope, $filter, $attributes, $category, $objectStorage= array("")) +--- a/include/class_jsonRPC.inc ++++ b/include/class_jsonRPC.inc +@@ -1,6 +1,7 @@ + <?php + + ++#[\AllowDynamicProperties] + class jsonRPC { + + private $curlHandler = NULL; +--- a/include/class_ldap.inc ++++ b/include/class_ldap.inc +@@ -28,6 +28,7 @@ + define("INSERT_OK",10000); + define("SPECIALS_OVERRIDE", TRUE); + ++#[\AllowDynamicProperties] + class LDAP + { + public static $characterMap = NULL; +--- a/include/class_ldapMultiplexer.inc ++++ b/include/class_ldapMultiplexer.inc +@@ -21,6 +21,7 @@ + */ + + ++#[\AllowDynamicProperties] + class ldapMultiplexer { + + /* Internal stuff */ --- a/include/class_listing.inc +++ b/include/class_listing.inc @@ -20,6 +20,7 @@ @@ -11,6 +205,16 @@ class listing { public $xmlData; +--- a/include/class_listingSortIterator.inc ++++ b/include/class_listingSortIterator.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class listingSortIterator implements Iterator { + private $data; + --- a/include/class_management.inc +++ b/include/class_management.inc @@ -20,6 +20,7 @@ @@ -21,6 +225,75 @@ class management { // Public +--- a/include/class_msg_dialog.inc ++++ b/include/class_msg_dialog.inc +@@ -27,6 +27,7 @@ + define("OK_CANCEL_DIALOG" , 10005); + define("FATAL_ERROR_DIALOG" , 10006); + ++#[\AllowDynamicProperties] + class msg_dialog + { + private $s_Title = "Undefined"; +--- a/include/class_multi_plug.inc ++++ b/include/class_multi_plug.inc +@@ -121,6 +121,7 @@ + 2. All given objects specified by '$dn' will be initialized and the collected + data from the dummy object will be populated to them. + */ ++#[\AllowDynamicProperties] + class multi_plug + { + /* Tab handler for each given dn entry */ +--- a/include/class_pathNavigator.inc ++++ b/include/class_pathNavigator.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class pathNavigator + { + public static function registerPlugin($class, $title = '') +--- a/include/class_plugin.inc ++++ b/include/class_plugin.inc +@@ -30,6 +30,7 @@ + within this class. Extend your plugins from this class. + */ + ++#[\AllowDynamicProperties] + class plugin + { + /*! \brief The title shown in path menu while this plugin is visible. +--- a/include/class_pluglist.inc ++++ b/include/class_pluglist.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class pluglist + { + // The id of the last registered plugin id +--- a/include/class_releaseSelector.inc ++++ b/include/class_releaseSelector.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class releaseSelector { + + public $base; +--- a/include/class_remoteObject.inc ++++ b/include/class_remoteObject.inc +@@ -6,6 +6,7 @@ + * on the server using RPC calls. + * Properties will bestored directly (directStorage=TRUE) or when commit() is called. + */ ++#[\AllowDynamicProperties] + class remoteObject + { + private $rpcHandle; --- a/include/class_session.inc +++ b/include/class_session.inc @@ -20,6 +20,7 @@ @@ -31,3 +304,1060 @@ class session { public static function get_session_size() +--- a/include/class_socketClient.inc ++++ b/include/class_socketClient.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class Socket_Client + { + private $host = ""; +--- a/include/class_sortableListing.inc ++++ b/include/class_sortableListing.inc +@@ -24,6 +24,7 @@ + define('LIST_MARKED', 1); + define('LIST_DISABLED', 2); + ++#[\AllowDynamicProperties] + class sortableListing + { + private $header= null; +--- a/include/class_stats.inc ++++ b/include/class_stats.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class stats + { + +--- a/include/class_tabs.inc ++++ b/include/class_tabs.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class tabs + { + var $dn; +--- a/include/class_userFilter.inc ++++ b/include/class_userFilter.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class userFilter extends plugin + { + public $pathTitle= "Filter"; +--- a/include/class_userFilterEditor.inc ++++ b/include/class_userFilterEditor.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class userFilterEditor extends plugin + { + public $pathTitle= "Edit"; +--- a/include/class_userinfo.inc ++++ b/include/class_userinfo.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class userinfo + { + var $dn; +--- a/include/exporter/class_csvExporter.inc ++++ b/include/exporter/class_csvExporter.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class csvExporter + { + var $result; +--- a/include/exporter/class_pdfExporter.inc ++++ b/include/exporter/class_pdfExporter.inc +@@ -10,6 +10,7 @@ + include('class_PDF.inc'); + } + ++#[\AllowDynamicProperties] + class pdfExporter + { + var $result; +--- a/include/functions_debug.inc ++++ b/include/functions_debug.inc +@@ -65,6 +65,7 @@ + ** Stephan Pirson (Saibot) + ************************************************/ + ++#[\AllowDynamicProperties] + class Print_a_class { + + # this can be changed to FALSE if you don't like the fancy string formatting +--- a/include/functions_helpviewer.inc ++++ b/include/functions_helpviewer.inc +@@ -21,6 +21,7 @@ + */ + + /* Simple class to parse the xml help file */ ++#[\AllowDynamicProperties] + class parseXml + { + var $parser; +--- a/include/password-methods/class_password-methods-clear.inc ++++ b/include/password-methods/class_password-methods-clear.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class passwordMethodClear extends passwordMethod + { + var $lockable = FALSE; +--- a/include/password-methods/class_password-methods-crypt.inc ++++ b/include/password-methods/class_password-methods-crypt.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class passwordMethodCrypt extends passwordMethod + { + function __construct($config) +--- a/include/password-methods/class_password-methods-md5.inc ++++ b/include/password-methods/class_password-methods-md5.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class passwordMethodMd5 extends passwordMethod + { + function __construct($config) +--- a/include/password-methods/class_password-methods-remote.inc ++++ b/include/password-methods/class_password-methods-remote.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class passwordMethodRemote extends passwordMethod + { + var $dn = ""; +--- a/include/password-methods/class_password-methods-sasl.inc ++++ b/include/password-methods/class_password-methods-sasl.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class passwordMethodsasl extends passwordMethod + { + var $dn = ""; +--- a/include/password-methods/class_password-methods-sha.inc ++++ b/include/password-methods/class_password-methods-sha.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class passwordMethodsha extends passwordMethod + { + function __construct($config) +--- a/include/password-methods/class_password-methods-smd5.inc ++++ b/include/password-methods/class_password-methods-smd5.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class passwordMethodsmd5 extends passwordMethod + { + function __construct($config) +--- a/include/password-methods/class_password-methods-ssha.inc ++++ b/include/password-methods/class_password-methods-ssha.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class passwordMethodssha extends passwordMethod + { + function __construct($config) +--- a/include/password-methods/class_password-methods.inc ++++ b/include/password-methods/class_password-methods.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class passwordMethod + { + var $config = false; +--- a/include/utils/class_msgPool.inc ++++ b/include/utils/class_msgPool.inc +@@ -7,6 +7,7 @@ + define ("LDAP_AUTH", 6); + + /*! \brief Some common needed messages */ ++#[\AllowDynamicProperties] + class msgPool + { + +--- a/include/utils/class_tests.inc ++++ b/include/utils/class_tests.inc +@@ -31,6 +31,7 @@ + * The functions need to be handled with care, because they are not as strict + * as one might expect. + */ ++#[\AllowDynamicProperties] + class tests { + + /*! \brief Test if the given string is a phone number */ +--- a/include/utils/class_timezone.inc ++++ b/include/utils/class_timezone.inc +@@ -18,6 +18,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class timezone { + + /* This function returns the offset for the default timezone. +--- a/include/utils/class_xml.inc ++++ b/include/utils/class_xml.inc +@@ -19,6 +19,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class xml { + + static function validate($file, $schema) { +--- a/include/utils/excel/class.writeexcel_biffwriter.inc.php ++++ b/include/utils/excel/class.writeexcel_biffwriter.inc.php +@@ -24,6 +24,7 @@ + * Spreadsheet::WriteExcel was written by John McNamara, jmcnam...@cpan.org + */ + ++#[\AllowDynamicProperties] + class writeexcel_biffwriter { + var $byte_order; + var $BIFF_version; +--- a/include/utils/excel/class.writeexcel_format.inc.php ++++ b/include/utils/excel/class.writeexcel_format.inc.php +@@ -24,6 +24,7 @@ + * Spreadsheet::WriteExcel was written by John McNamara, jmcnam...@cpan.org + */ + ++#[\AllowDynamicProperties] + class writeexcel_format { + + var $_xf_index; +--- a/include/utils/excel/class.writeexcel_formula.inc.php ++++ b/include/utils/excel/class.writeexcel_formula.inc.php +@@ -66,6 +66,7 @@ + // @const SPREADSHEET_EXCEL_WRITER_NE token identifier for character "<>" + + ++#[\AllowDynamicProperties] + class writeexcel_formula { + + ############################################################################### +--- a/include/utils/excel/class.writeexcel_olewriter.inc.php ++++ b/include/utils/excel/class.writeexcel_olewriter.inc.php +@@ -24,6 +24,7 @@ + * Spreadsheet::WriteExcel was written by John McNamara, jmcnam...@cpan.org + */ + ++#[\AllowDynamicProperties] + class writeexcel_olewriter { + var $_OLEfilename; + var $_OLEtmpfilename; /* ABR */ +--- a/include/utils/excel/class.writeexcel_workbook.inc.php ++++ b/include/utils/excel/class.writeexcel_workbook.inc.php +@@ -29,6 +29,7 @@ + require_once "class.writeexcel_formula.inc.php"; + require_once "class.writeexcel_olewriter.inc.php"; + ++#[\AllowDynamicProperties] + class writeexcel_workbook extends writeexcel_biffwriter { + + var $_filename; +--- a/include/utils/excel/class.writeexcel_worksheet.inc.php ++++ b/include/utils/excel/class.writeexcel_worksheet.inc.php +@@ -26,6 +26,7 @@ + + require_once "class.writeexcel_biffwriter.inc.php"; + ++#[\AllowDynamicProperties] + class writeexcel_worksheet extends writeexcel_biffwriter { + + var $_name; +--- a/plugins/addons/dyngroup/class_DynamicLdapGroup.inc ++++ b/plugins/addons/dyngroup/class_DynamicLdapGroup.inc +@@ -25,6 +25,7 @@ + * @author Thomas Chemineau - thomas.chemineau<at>gmail.com + * @version 0.01 + */ ++#[\AllowDynamicProperties] + class DynamicLdapGroup extends plugin + { + +--- a/plugins/addons/propertyEditor/class_commandVerifier.inc ++++ b/plugins/addons/propertyEditor/class_commandVerifier.inc +@@ -1,4 +1,5 @@ + <?php ++#[\AllowDynamicProperties] + class commandVerifier + { + private $property = NULL; +--- a/plugins/addons/propertyEditor/class_filterProperties.inc ++++ b/plugins/addons/propertyEditor/class_filterProperties.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class filterCONFIGPROPERTIES { + + static function query($base, $scope, $filter, $attributes, $category, $objectStorage= "") +--- a/plugins/addons/propertyEditor/class_propertyEditor.inc ++++ b/plugins/addons/propertyEditor/class_propertyEditor.inc +@@ -1,6 +1,7 @@ + <?php + + ++#[\AllowDynamicProperties] + class propertyEditor extends management + { + var $plHeadline = "Preferences"; +--- a/plugins/addons/propertyEditor/migration/class_migrateRDN.inc ++++ b/plugins/addons/propertyEditor/migration/class_migrateRDN.inc +@@ -2,6 +2,7 @@ + + + ++#[\AllowDynamicProperties] + class migrateRDN implements propertyMigration + { + protected $property = NULL; +--- a/plugins/admin/acl/class_aclManagement.inc ++++ b/plugins/admin/acl/class_aclManagement.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class aclManagement extends management + { + var $plHeadline = "Access control"; +--- a/plugins/admin/acl/class_aclRole.inc ++++ b/plugins/admin/acl/class_aclRole.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class aclrole extends acl + { + /* Definitions */ +--- a/plugins/admin/acl/class_filterACL.inc ++++ b/plugins/admin/acl/class_filterACL.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class filterACL { + + static function query($base, $scope, $filter, $attributes, $category, $objectStorage= "") +--- a/plugins/admin/acl/migration/class_migrate_aclRoleRDN.inc ++++ b/plugins/admin/acl/migration/class_migrate_aclRoleRDN.inc +@@ -1,4 +1,5 @@ + <?php ++#[\AllowDynamicProperties] + class migrate_aclRoleRDN extends migrateRDN implements propertyMigration + { + protected $filter = "(&(objectClass=gosaRole)%s)"; +--- a/plugins/admin/acl/tabs_acl.inc ++++ b/plugins/admin/acl/tabs_acl.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class acltab extends tabs + { + +--- a/plugins/admin/acl/tabs_acl_role.inc ++++ b/plugins/admin/acl/tabs_acl_role.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class aclroletab extends tabs + { + +--- a/plugins/admin/departments/class_countryGeneric.inc ++++ b/plugins/admin/departments/class_countryGeneric.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class country extends department + { + /* attribute list for save action */ +--- a/plugins/admin/departments/class_dcObject.inc ++++ b/plugins/admin/departments/class_dcObject.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class dcObject extends department + { + /* attribute list for save action */ +--- a/plugins/admin/departments/class_department.inc ++++ b/plugins/admin/departments/class_department.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class department extends plugin + { + /* department attributes */ +--- a/plugins/admin/departments/class_departmentManagement.inc ++++ b/plugins/admin/departments/class_departmentManagement.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class departmentManagement extends management + { + var $plHeadline = "Directory structure"; +--- a/plugins/admin/departments/class_domain.inc ++++ b/plugins/admin/departments/class_domain.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class domain extends department + { + /* attribute list for save action */ +--- a/plugins/admin/departments/class_filterDEPARTMENT.inc ++++ b/plugins/admin/departments/class_filterDEPARTMENT.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class filterDEPARTMENT { + + static function query($base, $scope, $filter, $attributes, $category, $objectStorage= array("")) +--- a/plugins/admin/departments/class_localityGeneric.inc ++++ b/plugins/admin/departments/class_localityGeneric.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class locality extends department + { + /* attribute list for save action */ +--- a/plugins/admin/departments/class_organizationGeneric.inc ++++ b/plugins/admin/departments/class_organizationGeneric.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class organization extends department + { + /* attribute list for save action */ +--- a/plugins/admin/departments/tabs_department.inc ++++ b/plugins/admin/departments/tabs_department.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class deptabs extends tabs + { + var $base= ""; +--- a/plugins/admin/groups/class_filterGroupLDAP.inc ++++ b/plugins/admin/groups/class_filterGroupLDAP.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class filterGroupLDAP { + + static function query($base, $scope, $filter, $attributes, $category, $objectStorage= "") +--- a/plugins/admin/groups/class_group.inc ++++ b/plugins/admin/groups/class_group.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class group extends plugin + { + // Group attributes +--- a/plugins/admin/groups/class_groupManagement.inc ++++ b/plugins/admin/groups/class_groupManagement.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class groupManagement extends management + { + public $plHeadline = "Groups"; +--- a/plugins/admin/groups/migration/class_migrate_groupRDN.inc ++++ b/plugins/admin/groups/migration/class_migrate_groupRDN.inc +@@ -1,4 +1,5 @@ + <?php ++#[\AllowDynamicProperties] + class migrate_groupRDN extends migrateRDN implements propertyMigration + { + protected $filter = "(&(objectClass=posixGroup)%s)"; +--- a/plugins/admin/groups/singleUserSelect/class_singleUserSelect.inc ++++ b/plugins/admin/groups/singleUserSelect/class_singleUserSelect.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class singleUserSelect extends management + { + +--- a/plugins/admin/groups/tabs_group.inc ++++ b/plugins/admin/groups/tabs_group.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class grouptabs extends tabs + { + +--- a/plugins/admin/groups/userGroupSelect/class_userGroupSelect.inc ++++ b/plugins/admin/groups/userGroupSelect/class_userGroupSelect.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class userGroupSelect extends management + { + // Tab definition +--- a/plugins/admin/groups/userSelect/class_userSelect.inc ++++ b/plugins/admin/groups/userSelect/class_userSelect.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class userSelect extends management + { + public $plHeadline = "User selection"; +--- a/plugins/admin/ogroups/class_ogroup.inc ++++ b/plugins/admin/ogroups/class_ogroup.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class ogroup extends plugin + { + public $typeToClass = array( +--- a/plugins/admin/ogroups/class_ogroupManagement.inc ++++ b/plugins/admin/ogroups/class_ogroupManagement.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class ogroupManagement extends management + { + var $plHeadline = "Object groups"; +--- a/plugins/admin/ogroups/migration/class_migrate_ogroupRDN.inc ++++ b/plugins/admin/ogroups/migration/class_migrate_ogroupRDN.inc +@@ -1,4 +1,5 @@ + <?php ++#[\AllowDynamicProperties] + class migrate_ogroupRDN extends migrateRDN implements propertyMigration + { + protected $filter = "(&(objectClass=gosaGroupOfNames)%s)"; +--- a/plugins/admin/ogroups/objectSelect/class_filterLDAPDepartmentBlacklist.inc ++++ b/plugins/admin/ogroups/objectSelect/class_filterLDAPDepartmentBlacklist.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class filterLDAPDepartmentBlacklist extends filterLDAPBlacklist{ + + static function query($base, $scope, $filter, $attributes, $category, $objectStorage= "") +--- a/plugins/admin/ogroups/objectSelect/class_objectSelect.inc ++++ b/plugins/admin/ogroups/objectSelect/class_objectSelect.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class objectSelect extends management + { + // Tab definition +--- a/plugins/admin/ogroups/tabs_ogroups.inc ++++ b/plugins/admin/ogroups/tabs_ogroups.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class ogrouptabs extends tabs + { + var $base= ""; +--- a/plugins/admin/users/class_userManagement.inc ++++ b/plugins/admin/users/class_userManagement.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class userManagement extends management + { + var $plHeadline = "Users"; +--- a/plugins/admin/users/migration/class_migrate_userRDN.inc ++++ b/plugins/admin/users/migration/class_migrate_userRDN.inc +@@ -1,4 +1,5 @@ + <?php ++#[\AllowDynamicProperties] + class migrate_userRDN extends migrateRDN implements propertyMigration + { + protected $filter = '(&(objectClass=gosaAccount)(!(&(objectClass=sambaSamAccount)(uid=*$)))%s)'; +--- a/plugins/admin/users/tabs_user.inc ++++ b/plugins/admin/users/tabs_user.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class usertabs extends tabs + { + var $base; +--- a/plugins/generic/dashBoard/Register/class_RegistrationDialog.inc ++++ b/plugins/generic/dashBoard/Register/class_RegistrationDialog.inc +@@ -6,6 +6,7 @@ + * + */ + ++#[\AllowDynamicProperties] + class RegistrationDialog extends plugin + { + protected $selectedRegistrationType = "registrate"; +--- a/plugins/generic/dashBoard/class_dashBoard.inc ++++ b/plugins/generic/dashBoard/class_dashBoard.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class dashBoard extends plugin + { + var $plHeadline = 'Dash board'; +--- a/plugins/generic/dashBoard/class_rssReader.inc ++++ b/plugins/generic/dashBoard/class_rssReader.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class rssReader{ + + public static $attributes = array( +--- a/plugins/generic/dashBoard/dbChannelStatus/class_dbChannelStatus.inc ++++ b/plugins/generic/dashBoard/dbChannelStatus/class_dbChannelStatus.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class dbChannelStatus extends plugin + { + function __construct($config) +--- a/plugins/generic/dashBoard/dbInformation/class_dbInformation.inc ++++ b/plugins/generic/dashBoard/dbInformation/class_dbInformation.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class dbInformation extends plugin + { + function __construct($config) +--- a/plugins/generic/dashBoard/dbNotifications/class_dbNotifications.inc ++++ b/plugins/generic/dashBoard/dbNotifications/class_dbNotifications.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class dbNotifications extends plugin + { + function __construct($config) +--- a/plugins/generic/dashBoard/dbPluginStatus/class_dbPluginStatus.inc ++++ b/plugins/generic/dashBoard/dbPluginStatus/class_dbPluginStatus.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class dbPluginStatus extends plugin + { + +--- a/plugins/generic/infoPage/class_infoPage.inc ++++ b/plugins/generic/infoPage/class_infoPage.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class infoPage extends plugin + { + private $ui; +--- a/plugins/generic/references/class_aclResolver.inc ++++ b/plugins/generic/references/class_aclResolver.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class aclResolver + { + private $classMapping = array(); +--- a/plugins/generic/references/class_ldifViewer.inc ++++ b/plugins/generic/references/class_ldifViewer.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class ldifViewer extends plugin + { + private $ldif; +--- a/plugins/generic/references/class_reference.inc ++++ b/plugins/generic/references/class_reference.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class reference extends plugin + { + var $attributes= array('uid','modifyTimestamp'); +--- a/plugins/generic/statistics/chartClasses/class_actionSelectChart.inc ++++ b/plugins/generic/statistics/chartClasses/class_actionSelectChart.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class actionSelectChart extends statChart + { + protected $title = 'Action count per plugin'; +--- a/plugins/generic/statistics/chartClasses/class_categoryActionOverTime.inc ++++ b/plugins/generic/statistics/chartClasses/class_categoryActionOverTime.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class categoryActionsOverTime extends statChart + { + protected $title = 'Plugin usage over time'; +--- a/plugins/generic/statistics/chartClasses/class_cpuLoadChart.inc ++++ b/plugins/generic/statistics/chartClasses/class_cpuLoadChart.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class cpuLoadChart extends memoryUsageChart + { + protected $title = 'CPU load'; +--- a/plugins/generic/statistics/chartClasses/class_durationTimeChart.inc ++++ b/plugins/generic/statistics/chartClasses/class_durationTimeChart.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class durationTimeChart extends memoryUsageChart + { + protected $title = 'Plugin duration'; +--- a/plugins/generic/statistics/chartClasses/class_memoryUsageChart.inc ++++ b/plugins/generic/statistics/chartClasses/class_memoryUsageChart.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class memoryUsageChart extends statChart + { + protected $title = 'Memory usage'; +--- a/plugins/generic/statistics/chartClasses/class_objectCountChart.inc ++++ b/plugins/generic/statistics/chartClasses/class_objectCountChart.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class objectCountChart extends statChart + { + protected $title = 'Object count'; +--- a/plugins/generic/statistics/chartClasses/class_passwordChangeChart.inc ++++ b/plugins/generic/statistics/chartClasses/class_passwordChangeChart.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class passwordChangeChart extends statChart + { + protected $title = 'Password changes'; +--- a/plugins/generic/statistics/chartClasses/class_pieChart1.inc ++++ b/plugins/generic/statistics/chartClasses/class_pieChart1.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class pieChart1 extends statChart + { + protected $title = 'Plugin usage'; +--- a/plugins/generic/statistics/chartClasses/class_pieChart2.inc ++++ b/plugins/generic/statistics/chartClasses/class_pieChart2.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class pieChart2 extends pieChart1 + { + protected $title = 'Action usage'; +--- a/plugins/generic/statistics/chartClasses/class_renderTimeChart.inc ++++ b/plugins/generic/statistics/chartClasses/class_renderTimeChart.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class renderTimeChart extends memoryUsageChart + { + protected $title = 'Render time'; +--- a/plugins/generic/statistics/chartClasses/class_statChart.inc ++++ b/plugins/generic/statistics/chartClasses/class_statChart.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class statChart{ + + // Graph data +--- a/plugins/generic/statistics/class_statistics.inc ++++ b/plugins/generic/statistics/class_statistics.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class statistics extends plugin + { + var $plHeadline = 'Statistics'; +--- a/plugins/generic/welcome/class_welcome.inc ++++ b/plugins/generic/welcome/class_welcome.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class welcome extends plugin + { + var $plHeadline = "Back to main menu"; +--- a/plugins/personal/generic/class_user.inc ++++ b/plugins/personal/generic/class_user.inc +@@ -31,6 +31,7 @@ + from/to the LDAP. It does syntax checking and displays the formulars required. + */ + ++#[\AllowDynamicProperties] + class user extends plugin + { + /* Definitions */ +--- a/plugins/personal/myaccount/MyAccountTabs.inc ++++ b/plugins/personal/myaccount/MyAccountTabs.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class MyAccountTabs extends tabs + { + var $password_change_needed = FALSE; +--- a/plugins/personal/myaccount/class_MyAccount.inc ++++ b/plugins/personal/myaccount/class_MyAccount.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class MyAccount extends plugin + { + var $plHeadline= "My account"; +--- a/plugins/personal/password/class_password.inc ++++ b/plugins/personal/password/class_password.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class password extends plugin + { + /* Definitions */ +--- a/plugins/personal/posix/class_posixAccount.inc ++++ b/plugins/personal/posix/class_posixAccount.inc +@@ -31,6 +31,7 @@ + does syntax checking and displays the formulars required. + */ + ++#[\AllowDynamicProperties] + class posixAccount extends plugin + { + /* Definitions */ +--- a/plugins/personal/posix/groupSelect/class_filterLDAPBlacklist.inc ++++ b/plugins/personal/posix/groupSelect/class_filterLDAPBlacklist.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class filterLDAPBlacklist { + + static function query($base, $scope, $filter, $attributes, $category, $objectStorage= "") +--- a/plugins/personal/posix/groupSelect/class_groupSelect.inc ++++ b/plugins/personal/posix/groupSelect/class_groupSelect.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class groupSelect extends management + { + +--- a/plugins/personal/posix/trustModeDialog/class_trustModeDialog.inc ++++ b/plugins/personal/posix/trustModeDialog/class_trustModeDialog.inc +@@ -1,5 +1,6 @@ + <?php + ++#[\AllowDynamicProperties] + class trustModeDialog extends plugin + { + public $attributes = array("accessTo","trustModel"); +--- a/plugins/personal/posix/trustSelect/class_trustSelect.inc ++++ b/plugins/personal/posix/trustSelect/class_trustSelect.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class trustSelect extends management + { + +--- a/setup/class_setup.inc ++++ b/setup/class_setup.inc +@@ -23,6 +23,7 @@ + require_once("class_setupStep.inc"); + + ++#[\AllowDynamicProperties] + class setup + { + var $i_steps = 9; // Number of setup steps +--- a/setup/class_setupStep.inc ++++ b/setup/class_setupStep.inc +@@ -20,6 +20,7 @@ + */ + + ++#[\AllowDynamicProperties] + class setup_step extends plugin + { + var $s_title = "Still undefined"; +--- a/setup/class_setupStep_Checks.inc ++++ b/setup/class_setupStep_Checks.inc +@@ -20,6 +20,7 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#[\AllowDynamicProperties] + class Step_Checks extends setup_step + { + var $basic_checks = array(); +--- a/setup/class_setupStep_Finish.inc ++++ b/setup/class_setupStep_Finish.inc +@@ -20,6 +20,7 @@ + */ + + ++#[\AllowDynamicProperties] + class Step_Finish extends setup_step + { + var $gosa_conf_contrib = "/gosa.conf"; +--- a/setup/class_setupStep_Language.inc ++++ b/setup/class_setupStep_Language.inc +@@ -20,6 +20,7 @@ + */ + + ++#[\AllowDynamicProperties] + class Step_Language extends setup_step + { + var $lang_selected = ""; /* Language selected from select box */ +--- a/setup/class_setupStep_Ldap.inc ++++ b/setup/class_setupStep_Ldap.inc +@@ -20,6 +20,7 @@ + */ + + ++#[\AllowDynamicProperties] + class Step_Ldap extends setup_step + { + var $connection = "ldap://localhost:389"; +--- a/setup/class_setupStep_License.inc ++++ b/setup/class_setupStep_License.inc +@@ -20,6 +20,7 @@ + */ + + ++#[\AllowDynamicProperties] + class Step_License extends setup_step + { + var $license_found = false; +--- a/setup/class_setupStep_Migrate.inc ++++ b/setup/class_setupStep_Migrate.inc +@@ -22,6 +22,7 @@ + + + ++#[\AllowDynamicProperties] + class Step_Migrate extends setup_step + { + var $header_image = "images/setup/migrate.png"; +--- a/setup/class_setupStep_Schema.inc ++++ b/setup/class_setupStep_Schema.inc +@@ -20,6 +20,7 @@ + */ + + ++#[\AllowDynamicProperties] + class Step_Schema extends setup_step + { + var $checked = array(); +--- a/setup/class_setupStep_Welcome.inc ++++ b/setup/class_setupStep_Welcome.inc +@@ -19,7 +19,7 @@ + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +- ++#[\AllowDynamicProperties] + class Step_Welcome extends setup_step + { + var $languages = array(); diff -Nru gosa-2.8~git20230203.10abe45+dfsg/debian/patches/1003_php-deprecations.patch gosa-2.8~git20230203.10abe45+dfsg/debian/patches/1003_php-deprecations.patch --- gosa-2.8~git20230203.10abe45+dfsg/debian/patches/1003_php-deprecations.patch 1970-01-01 01:00:00.000000000 +0100 +++ gosa-2.8~git20230203.10abe45+dfsg/debian/patches/1003_php-deprecations.patch 2023-07-12 23:10:08.000000000 +0200 @@ -0,0 +1,60 @@ +Description: Silence various PHP 8.2 deprecation warnings. +Author: Mike Gabriel <mike.gabr...@das-netzwerkteam.de> + +--- a/include/class_acl.inc ++++ b/include/class_acl.inc +@@ -1213,7 +1213,7 @@ + + switch ($this->theme) { + case 'classic': +- $display .= " <td style='border-top:1px solid #A0A0A0;${rb}width:".(int)(100/$cols)."%'> ++ $display .= " <td style='border-top:1px solid #A0A0A0;{$rb}width:".(int)(100/$cols)."%'> + <b>$dsc</b> ($attr)<br>".$this->mkrwbx($key."_".$attr, $state)." + </td>$end"; + break; +@@ -1314,20 +1314,20 @@ + if($this->acl_is_writeable("")){ + switch ($this->theme) { + case 'classic': +- return "<input id='acl_".$tname."_r' type='checkbox' name='acl_${name}_r' $rstate> ++ return "<input id='acl_".$tname."_r' type='checkbox' name='acl_{$name}_r' $rstate> + <label for='acl_".$tname."_r'>"._("read")."</label> +- <input id='acl_".$tname."_w' type='checkbox' name='acl_${name}_w' $wstate> ++ <input id='acl_".$tname."_w' type='checkbox' name='acl_{$name}_w' $wstate> + <label for='acl_".$tname."_w'>"._("write")."</label>"; + default: + return "<label> + <p> +- <input type='checkbox' id='acl_".$tname."_r' name='acl_${name}_r' $rstate> ++ <input type='checkbox' id='acl_".$tname."_r' name='acl_{$name}_r' $rstate> + <span>"._("read")."</span> + </p> + </label> + <label> + <p> +- <input type='checkbox' id='acl_".$tname."_w' name='acl_${name}_w' $wstate> ++ <input type='checkbox' id='acl_".$tname."_w' name='acl_{$name}_w' $wstate> + <span>"._("write")."</span> + </p> + </label>" ; +--- a/include/class_config.inc ++++ b/include/class_config.inc +@@ -31,7 +31,7 @@ + class config { + + /* XML parser */ +- static $parser; ++ static $parser = NULL; + var $config_found= FALSE; + var $tags= array(); + var $level= 0; +--- a/include/class_sortableListing.inc ++++ b/include/class_sortableListing.inc +@@ -322,6 +322,7 @@ + foreach ($this->displayData[$row] as $column) { + + // Do NOT use the onClick statement for columns that contain links or buttons. ++ $column = is_null($column) ? "" : $column; + if (preg_match("<.*type=.submit..*>", $column) || preg_match("<a.*href=.*>", $column)) { + $result.= " <td$first>".$column."</td>\n"; + } else { diff -Nru gosa-2.8~git20230203.10abe45+dfsg/debian/patches/1004_missing_templates.patch gosa-2.8~git20230203.10abe45+dfsg/debian/patches/1004_missing_templates.patch --- gosa-2.8~git20230203.10abe45+dfsg/debian/patches/1004_missing_templates.patch 1970-01-01 01:00:00.000000000 +0100 +++ gosa-2.8~git20230203.10abe45+dfsg/debian/patches/1004_missing_templates.patch 2023-07-12 23:10:13.000000000 +0200 @@ -0,0 +1,156 @@ +Description: Add missing template files to user plugin. (Just copied from classic theme.) +Author: Daniel Teichmann <daniel.teichm...@das-netzwerkteam.de> + +Index: gosa-core/plugins/admin/users/default/template.tpl +=================================================================== +--- /dev/null ++++ gosa-core/plugins/admin/users/default/template.tpl +@@ -0,0 +1,71 @@ ++<div style="font-size:18px;"> ++ {t}Creating a new user using templates{/t} ++</div> ++ ++<p> ++ {t}Creating a new user can be assisted by using templates. Many database records will be filled automatically. Choose 'none' to skip the usage of templates.{/t} ++</p> ++ ++<hr> ++ ++<br> ++ ++<table summary="{t}User template selection dialog{/t}" cellpadding=4 border=0> ++ <tr> ++ <td><b><LABEL for="template">{t}Template{/t}</LABEL></b></td> ++ <td> ++ <select size="1" name="template" id="template"> ++ {html_options options=$templates selected=$template} ++ </select> ++ </td> ++ </tr> ++ <tr> ++ <td><b><LABEL for="sn">{t}Last name{/t}</LABEL></b></td> ++ <td><input type='text' name="sn" id="sn" size="30" maxlength="40" value="{$sn}"></td> ++ </tr> ++ <tr> ++ <td><b><LABEL for="givenName">{t}First name{/t}</LABEL></b></td> ++ <td><input type='text' name="givenName" id="givenName" size="30" maxlength="40" value="{$givenName}"></td> ++ </tr> ++ {if $got_uid eq "true"} ++ <tr> ++ <td><b>{t}Login{/t}</b></td> ++ <td> ++ {if $edit_uid eq "false"} ++ {if $allowUidProposalModification == "true"} ++ <select size="1" name="uidSelect" id='uidSelect' onChange=" ++ document.getElementById('uid').value = document.getElementById('uidSelect').value;"> ++ {html_options output=$uids values=$uids selected=$uid} ++ </select> ++ <input type='text' id="uid" name="uid" size="30" maxlength="40" value="{$uid}" ++ style="display: none;"> ++ <img src="images/lists/edit.png" onClick="$('uid').toggle();" ++ title="{t}Modify the uid proposal{/t}"> ++ {else} ++ <select size="1" name="uid"> ++ {html_options output=$uids values=$uids selected=$uid} ++ </select> ++ {/if} ++ {else} ++ <input type='text' id="uid" name="uid" size="30" maxlength="40" value="{$uid}"> ++ {/if} ++ </td> ++ </tr> ++ {/if} ++</table> ++ ++ ++<hr> ++<div class="plugin-actions"> ++ <button type='submit' name='template_continue'>{t}Continue{/t}</button> ++ <button type='submit' name='edit_cancel'>{msgPool type=cancelButton}</button> ++</div> ++ ++ ++ ++<!-- Place cursor --> ++<script language="JavaScript" type="text/javascript"> ++ <!-- // First input field on page ++ focus_field('sn'); ++ --> ++</script> +Index: gosa-core/plugins/admin/users/default/templatize.tpl +=================================================================== +--- /dev/null ++++ gosa-core/plugins/admin/users/default/templatize.tpl +@@ -0,0 +1,42 @@ ++<div class="template-wrapper"> ++ <h2>{t}Applying a template{/t}</h2> ++ ++ <p> ++ {t}Applying a template to several users will replace all user attributes defined in the template.{/t} ++ </p> ++ ++ {if $templates} ++ <div class="row"> ++ <div class="col s6"> ++ <div class="input-field"> ++ <select size="1" name="template" id="template"> ++ {html_options options=$templates} ++ </select> ++ <label for="template">{t}Template{/t}</label> ++ </div> ++ </div> ++ </div> ++ ++ <div class="plugin-actions card-action"> ++ <button class="btn-small primary" type='submit' name='templatize_continue'>{msgPool type=applyButton}</button> ++ <button class="btn-small primary" type='submit' name='edit_cancel'>{msgPool type=cancelButton}</button> ++ </div> ++ {else} ++ <p class="no-templates"> ++ {t}No templates available!{/t} ++ </p> ++ ++ <div class="plugin-actions card-action"> ++ <button class="btn-small primary" type='submit' name='edit_cancel'>{msgPool type=cancelButton}</button> ++ </div> ++ ++ {/if} ++ ++ ++ <!-- Place cursor --> ++ <script language="JavaScript" type="text/javascript"> ++ <!-- // First input field on page ++ focus_field('template'); ++ --> ++ </script> ++</div> +Index: gosa-core/plugins/admin/users/default/user-list.tpl +=================================================================== +--- /dev/null ++++ gosa-core/plugins/admin/users/default/user-list.tpl +@@ -0,0 +1,25 @@ ++<div id="mainlist"> ++ ++ <div class="mainlist-header"> ++ <p>{$HEADLINE} {$SIZELIMIT}</p> ++ <div class="mainlist-nav"> ++ <table summary="{$HEADLINE}"> ++ <tr> ++ <td>{$ROOT}</td> ++ <td>{$BACK}</td> ++ <td>{$HOME}</td> ++ <td>{$RELOAD}</td> ++ <td class="left-border">{t}Base{/t} {$BASE}</td> ++ <td class="left-border">{$ACTIONS}</td> ++ <td class="left-border">{$FILTER}</td> ++ </tr> ++ </table> ++ </div> ++ </div> ++ ++ {$LIST} ++</div> ++ ++<div class="clear"></div> ++ ++<input type="hidden" name="ignore"> diff -Nru gosa-2.8~git20230203.10abe45+dfsg/debian/patches/1005_preg_replace_deprecation.patch gosa-2.8~git20230203.10abe45+dfsg/debian/patches/1005_preg_replace_deprecation.patch --- gosa-2.8~git20230203.10abe45+dfsg/debian/patches/1005_preg_replace_deprecation.patch 1970-01-01 01:00:00.000000000 +0100 +++ gosa-2.8~git20230203.10abe45+dfsg/debian/patches/1005_preg_replace_deprecation.patch 2023-07-12 23:11:12.000000000 +0200 @@ -0,0 +1,17 @@ +Description: Fix deprecation warning for calling preg_replace with NULL at argument #3. +Author: Daniel Teichmann <daniel.teichm...@das-netzwerkteam.de> + +--- a/html/main.php ++++ b/html/main.php +@@ -340,6 +340,11 @@ + set_object_info(); + } + ++/* Avoid calling preg_replace with NULL */ ++if (!isset($lang)) { ++ $lang = ""; ++} ++ + /* show web frontend */ + $smarty->assign ("title","GOsa"); + $smarty->assign ("logo", get_template_path("images/logo.png")); diff -Nru gosa-2.8~git20230203.10abe45+dfsg/debian/patches/1006_fix-overflow-debug-print_a-func.patch gosa-2.8~git20230203.10abe45+dfsg/debian/patches/1006_fix-overflow-debug-print_a-func.patch --- gosa-2.8~git20230203.10abe45+dfsg/debian/patches/1006_fix-overflow-debug-print_a-func.patch 1970-01-01 01:00:00.000000000 +0100 +++ gosa-2.8~git20230203.10abe45+dfsg/debian/patches/1006_fix-overflow-debug-print_a-func.patch 2023-07-12 23:11:18.000000000 +0200 @@ -0,0 +1,25 @@ +Description: Make table of print_a() scrollable and allow overflow on body. This makes debugLevel > 0 usable again. +Author: Daniel Teichmann <daniel.teichm...@das-netzwerkteam.de> + +--- a/include/functions_debug.inc ++++ b/include/functions_debug.inc +@@ -226,7 +226,7 @@ + if($return_mode) { + return $output; + } else { +- print $output; ++ print "<div style='overflow: scroll; width: auto; max-height: 500px;'>" . $output . "</div>"; + return TRUE; + } + } +--- a/html/themes/default/css/main.css ++++ b/html/themes/default/css/main.css +@@ -9,7 +9,7 @@ + margin: 0; + font-family: "LiberationSans", Arial, Verdana, sans-serif; + font-size: 12px; +- overflow-y: hidden; ++ /* overflow-y: hidden; */ + } + + h1 { diff -Nru gosa-2.8~git20230203.10abe45+dfsg/debian/patches/series gosa-2.8~git20230203.10abe45+dfsg/debian/patches/series --- gosa-2.8~git20230203.10abe45+dfsg/debian/patches/series 2023-02-06 20:43:26.000000000 +0100 +++ gosa-2.8~git20230203.10abe45+dfsg/debian/patches/series 2023-07-12 23:11:29.000000000 +0200 @@ -1,3 +1,4 @@ +1004_missing_templates.patch 2001_fix-smarty-location.patch 2002_fix-template-location.patch 2003_fix-class-mapping.patch @@ -7,3 +8,6 @@ 2007_no-pChart.patch 2008_set-version-file-path.patch 1002_php82-allow-dynamic-properties.patch +1003_php-deprecations.patch +1005_preg_replace_deprecation.patch +1006_fix-overflow-debug-print_a-func.patch