Use $request
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
This commit is contained in:
parent
39785d65bc
commit
4697f32892
@ -25,6 +25,7 @@ use PhpMyAdmin\Url;
|
||||
use PhpMyAdmin\Util;
|
||||
|
||||
use function __;
|
||||
use function array_search;
|
||||
use function in_array;
|
||||
use function is_array;
|
||||
use function is_string;
|
||||
@ -107,7 +108,11 @@ final class GisVisualizationController implements InvocableController
|
||||
}
|
||||
|
||||
// Get settings if any posted
|
||||
$visualizationSettings = $this->getVisualizationSettings($spatialCandidates, $labelCandidates);
|
||||
$visualizationSettings = $this->getVisualizationSettings(
|
||||
$spatialCandidates,
|
||||
$labelCandidates,
|
||||
$request->getParam('visualizationSettings'),
|
||||
);
|
||||
|
||||
$rows = $this->getRows();
|
||||
$pos = $this->getPos();
|
||||
@ -203,15 +208,10 @@ final class GisVisualizationController implements InvocableController
|
||||
private function getVisualizationSettings(
|
||||
array $spatialCandidates,
|
||||
array $labelCandidates,
|
||||
mixed $settingsIn,
|
||||
): GisVisualizationSettings {
|
||||
$settingsIn = [];
|
||||
// Download as PNG/SVG/PDF use _GET and the normal form uses _POST
|
||||
if (is_array($_POST['visualizationSettings'] ?? null)) {
|
||||
/** @var mixed[] $settingsIn */
|
||||
$settingsIn = $_POST['visualizationSettings'];
|
||||
} elseif (is_array($_GET['visualizationSettings'] ?? null)) {
|
||||
/** @var mixed[] $settingsIn */
|
||||
$settingsIn = $_GET['visualizationSettings'];
|
||||
if (! is_array($settingsIn)) {
|
||||
return new GisVisualizationSettings(600, 450, $spatialCandidates[0]);
|
||||
}
|
||||
|
||||
$labelColumn = null;
|
||||
@ -223,14 +223,11 @@ final class GisVisualizationController implements InvocableController
|
||||
}
|
||||
|
||||
// If spatial column is not set, use first geometric column as spatial column
|
||||
if (
|
||||
isset($settingsIn['spatialColumn']) &&
|
||||
in_array($settingsIn['spatialColumn'], $spatialCandidates, true)
|
||||
) {
|
||||
$spatialColumn = $settingsIn['spatialColumn'];
|
||||
} else {
|
||||
$spatialColumn = $spatialCandidates[0];
|
||||
}
|
||||
$spatialColumn = $spatialCandidates[array_search(
|
||||
$settingsIn['spatialColumn'] ?? null,
|
||||
$spatialCandidates,
|
||||
true,
|
||||
)];
|
||||
|
||||
return new GisVisualizationSettings(600, 450, $spatialColumn, $labelColumn);
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user