Browse Source

Fixed regression introduced with [3912] : autocomplete not working (new User request with lots of existing user requests)

git-svn-id: http://svn.code.sf.net/p/itop/code/trunk@3954 a333f486-631f-4898-b8df-5754b55c2be0
romainq 9 years ago
parent
commit
0064a82cd2
3 changed files with 7 additions and 6 deletions
  1. 2 2
      core/dbobjectsearch.class.php
  2. 1 1
      core/dbsearch.class.php
  3. 4 3
      core/metamodel.class.php

+ 2 - 2
core/dbobjectsearch.class.php

@@ -1074,7 +1074,7 @@ class DBObjectSearch extends DBSearch
 		$oSQLQuery = $this->MakeSQLObjectQuery($oBuild, null, array());
 		$oSQLQuery->SetCondition($oBuild->m_oQBExpressions->GetCondition());
 		$oSQLQuery->SetSelect($oBuild->m_oQBExpressions->GetSelect());
-		$aScalarArgs = array_merge(MetaModel::PrepareQueryArguments($aArgs), $this->GetInternalParams());
+		$aScalarArgs = MetaModel::PrepareQueryArguments($aArgs, $this->GetInternalParams());
 		return $oSQLQuery->RenderDelete($aScalarArgs);
 	}
 
@@ -1086,7 +1086,7 @@ class DBObjectSearch extends DBSearch
 		$oSQLQuery = $this->MakeSQLObjectQuery($oBuild, null, $aValues);
 		$oSQLQuery->SetCondition($oBuild->m_oQBExpressions->GetCondition());
 		$oSQLQuery->SetSelect($oBuild->m_oQBExpressions->GetSelect());
-		$aScalarArgs = array_merge(MetaModel::PrepareQueryArguments($aArgs), $this->GetInternalParams());
+		$aScalarArgs = MetaModel::PrepareQueryArguments($aArgs, $this->GetInternalParams());
 		return $oSQLQuery->RenderUpdate($aScalarArgs);
 	}
 

+ 1 - 1
core/dbsearch.class.php

@@ -377,7 +377,7 @@ abstract class DBSearch
 		$aAttToLoad = array();
 		$oSQLQuery = $oQueryFilter->GetSQLQuery(array(), $aArgs, $aAttToLoad, null, 0, 0, false, $aGroupByExpr);
 
-		$aScalarArgs = array_merge(MetaModel::PrepareQueryArguments($aArgs), $this->GetInternalParams());
+		$aScalarArgs = MetaModel::PrepareQueryArguments($aArgs, $this->GetInternalParams());
 		try
 		{
 			$bBeautifulSQL = self::$m_bTraceQueries || self::$m_bDebugQuery || self::$m_bIndentQueries;

+ 4 - 3
core/metamodel.class.php

@@ -2456,12 +2456,13 @@ abstract class MetaModel
 	 * - current_user (DBObject)
 	 *
 	 * @param array $aArgs Context arguments (some can be persistent objects)
-	 * @param array $aScalarArgs Other query parameters (only scalars allowed here)
+	 * @param array $aMoreArgs Other query parameters
 	 * @return array
 	 */
-	public static function PrepareQueryArguments($aArgs, $aScalarArgs = array())
+	public static function PrepareQueryArguments($aArgs, $aMoreArgs = array())
 	{
-		foreach($aArgs as $sArgName => $value)
+		$aScalarArgs = array();
+		foreach(array_merge($aArgs, $aMoreArgs) as $sArgName => $value)
 		{
 			if (self::IsValidObject($value))
 			{