mirror of
https://github.com/Icinga/icingaweb2.git
synced 2025-07-28 16:24:04 +02:00
Repository: Fix broken conversion rules
The additional layers in $aliasTableMap and $aliasColumnMap required for DbRepository's join probabilities are now only established there.
This commit is contained in:
parent
8ee6e763a6
commit
46647444c4
@ -235,6 +235,29 @@ abstract class DbRepository extends Repository implements Extensible, Updatable,
|
||||
return $queryColumns;
|
||||
}
|
||||
|
||||
/**
|
||||
* Initialize table, column and alias maps
|
||||
*
|
||||
* @throws ProgrammingError In case $this->queryColumns does not provide any column information
|
||||
*/
|
||||
protected function initializeAliasMaps()
|
||||
{
|
||||
parent::initializeAliasMaps();
|
||||
|
||||
foreach ($this->aliasTableMap as $alias => $table) {
|
||||
if ($table !== null) {
|
||||
if (strpos($alias, '.') !== false) {
|
||||
$prefixedAlias = str_replace('.', '_', $alias);
|
||||
} else {
|
||||
$prefixedAlias = $table . '_' . $alias;
|
||||
}
|
||||
|
||||
$this->aliasTableMap[$prefixedAlias] = $table;
|
||||
$this->aliasColumnMap[$prefixedAlias] = $this->aliasColumnMap[$alias];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the given table with the datasource's prefix being prepended
|
||||
*
|
||||
|
@ -644,11 +644,6 @@ abstract class Repository implements Selectable
|
||||
}
|
||||
|
||||
foreach ($queryColumns as $table => $columns) {
|
||||
foreach ($columns as $alias => $column) {
|
||||
$alias = is_string($alias) ? $alias : $column;
|
||||
$columns[$table . '_' . $alias] = $column;
|
||||
}
|
||||
|
||||
foreach ($columns as $alias => $column) {
|
||||
if (! is_string($alias)) {
|
||||
$key = $column;
|
||||
|
Loading…
x
Reference in New Issue
Block a user