diff --git a/data/CRMEntity.php b/data/CRMEntity.php
index 53acbfb2477e11e911a0dc087c765aae017e9ecd..bf89d28f05e8c5eb3af3b3f2402043660923ccb2 100644
--- a/data/CRMEntity.php
+++ b/data/CRMEntity.php
@@ -28,6 +28,7 @@ require_once('include/utils/UserInfoUtil.php');
 require_once("include/Zend/Json.php");
 require_once 'include/RelatedListView.php';
 
+#[\AllowDynamicProperties]
 class CRMEntity {
 
 	var $ownedby;
diff --git a/include/Webservices/Utils.php b/include/Webservices/Utils.php
index 06c4665079f7ddf05cfce3c688ba15b9dc361a85..2b0a1f529b2fb7a7817e063f01b78b40a159adbd 100644
--- a/include/Webservices/Utils.php
+++ b/include/Webservices/Utils.php
@@ -57,7 +57,7 @@ function vtws_generateRandomAccessKey($length=10){
 	$accesskey = "";
 	$maxIndex = strlen($source);
 	for($i=0;$i<$length;++$i){
-		$accesskey = $accesskey.substr($source,rand(null,$maxIndex),1);
+		$accesskey = $accesskey.substr($source,rand(0,$maxIndex),1);
 	}
 	return $accesskey;
 }
@@ -1316,4 +1316,4 @@ function vtws_getAttachmentRecordId($attachmentId) {
     }
     return $crmid;
 }
-?>
\ No newline at end of file
+?>
diff --git a/include/database/PearDatabase.php b/include/database/PearDatabase.php
index 06a705b891fbbba34c333c95bf7ba701084df4b3..1fae20c8b7910808a69ad3a1d3e5fc9793fb2f67 100644
--- a/include/database/PearDatabase.php
+++ b/include/database/PearDatabase.php
@@ -938,7 +938,7 @@ class PearDatabase{
 		$schema = new adoSchema( $db );
 		
 		//Debug Adodb XML Schema
-		$schema->XMLS_DEBUG = TRUE;
+		// $schema->XMLS_DEBUG = TRUE; // adoSchema does not support AllowDynamicProperties
 		//Debug Adodb
 		$schema->debug = true;
 		$sql = $schema->ParseSchema( $schemaFile );
diff --git a/libraries/adodb_vtigerfix/adodb-xmlschema.inc.php b/libraries/adodb_vtigerfix/adodb-xmlschema.inc.php
index 604fa45089544a9ba5b6e32b51bbd625906242cc..65b016360fd293310229024f41cbf8f00bb1e561 100644
--- a/libraries/adodb_vtigerfix/adodb-xmlschema.inc.php
+++ b/libraries/adodb_vtigerfix/adodb-xmlschema.inc.php
@@ -111,6 +111,7 @@ if( !defined( '_ADODB_LAYER' ) ) {
 * @package axmls
 * @access private
 */
+#[\AllowDynamicProperties]
 class dbObject {
 
 	/**
@@ -1665,7 +1666,7 @@ class adoSchema {
 	*
 	* @access private
 	*/
-	function _tag_open( &$parser, $tag, $attributes ) {
+	function _tag_open( $parser, $tag, $attributes ) {
 		switch( strtoupper( $tag ) ) {
 			case 'TABLE':
 				$this->obj = new dbTable( $this, $attributes );
@@ -1688,7 +1689,7 @@ class adoSchema {
 	*
 	* @access private
 	*/
-	function _tag_cdata( &$parser, $cdata ) {
+	function _tag_cdata( $parser, $cdata ) {
 	}
 
 	/**
@@ -1697,7 +1698,7 @@ class adoSchema {
 	* @access private
 	* @internal
 	*/
-	function _tag_close( &$parser, $tag ) {
+	function _tag_close( $parser, $tag ) {
 
 	}
 
diff --git a/libraries/adodb_vtigerfix/drivers/adodb-mysqli.inc.php b/libraries/adodb_vtigerfix/drivers/adodb-mysqli.inc.php
index 352810cc0c26260b5fa54f0ba50a96e9350e293f..c50e2230daae030e1bd64165f39a26dce7e7dfb8 100644
--- a/libraries/adodb_vtigerfix/drivers/adodb-mysqli.inc.php
+++ b/libraries/adodb_vtigerfix/drivers/adodb-mysqli.inc.php
@@ -39,6 +39,7 @@ if (!defined('MYSQLI_READ_DEFAULT_GROUP')) define('MYSQLI_READ_DEFAULT_GROUP',1)
 /**
  * Class ADODB_mysqli
  */
+#[\AllowDynamicProperties]
 class ADODB_mysqli extends ADOConnection {
 	var $databaseType = 'mysqli';
 	var $dataProvider = 'mysql';
@@ -1244,6 +1245,7 @@ class ADODB_mysqli extends ADOConnection {
 /**
  * Class ADORecordSet_mysqli
  */
+#[\AllowDynamicProperties]
 class ADORecordSet_mysqli extends ADORecordSet{
 
 	var $databaseType = "mysqli";
diff --git a/modules/Campaigns/Campaigns.php b/modules/Campaigns/Campaigns.php
index 50ad738b0ad7f8b66fdeb886d7dc106d97fe7311..78e23e675838a9fc856078dd7062fca8c635390e 100644
--- a/modules/Campaigns/Campaigns.php
+++ b/modules/Campaigns/Campaigns.php
@@ -531,7 +531,7 @@ class Campaigns extends CRMEntity {
 	 * @param - $status_column index of the status column in the list.
 	 * returns true on success
 	 */
-	function add_status_popup($related_list, $status_column = 7, $related_module)
+	function add_status_popup($related_list, $status_column = 7, $related_module = null)
 	{
 		global $adb;
 
diff --git a/vtlib/Vtiger/ModuleBasic.php b/vtlib/Vtiger/ModuleBasic.php
index 1db30f54b0effbda906b78e36ae08d69a940d54c..ecd3d5cab751701b7b10e91ac72f167e46db958e 100644
--- a/vtlib/Vtiger/ModuleBasic.php
+++ b/vtlib/Vtiger/ModuleBasic.php
@@ -23,6 +23,7 @@ require_once 'includes/runtime/Cache.php';
  * Provides API to work with vtiger CRM Module
  * @package vtlib
  */
+#[\AllowDynamicProperties]
 class Vtiger_ModuleBasic {
 	/** ID of this instance */
 	var $id = false;