Skip to content

Commit

Permalink
Harden against possible wrong usage and SQL injections
Browse files Browse the repository at this point in the history
  • Loading branch information
Toflar committed Jun 22, 2023
1 parent 79c40e3 commit 1c1a1d7
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 0 deletions.
2 changes: 2 additions & 0 deletions src/ContentElement/NodesContentElement.php
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,8 @@ public static function generateBackendWildcard(array $data, array $ids): string
{
$nodes = [];

$ids = array_map('intval', $ids);

$nodeModels = NodeModel::findBy(
['id IN ('.implode(',', $ids).')', 'type=?'],
[NodeModel::TYPE_CONTENT, implode(',', $ids)],
Expand Down
1 change: 1 addition & 0 deletions src/EventListener/ContentListener.php
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,7 @@ public function onLoadCallback(DataContainer $dc): void
public function onNodesSaveCallback(?string $value, DataContainer $dc): string
{
$ids = (array) StringUtil::deserialize($value, true);
$ids = array_map('intval', $ids);

if (\count($ids) > 0) {
$folders = $this->db->fetchAllAssociative('SELECT name FROM tl_node WHERE id IN ('.implode(', ', $ids).') AND type=?', [NodeModel::TYPE_FOLDER]);
Expand Down
2 changes: 2 additions & 0 deletions src/NodeManager.php
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,8 @@ public function generateMultiple(array $ids): array
return [];
}

$ids = array_map('intval', $ids);

$nodeModels = NodeModel::findBy(
['id IN ('.implode(',', $ids).')', 'type=?'],
[NodeModel::TYPE_CONTENT, implode(',', $ids)],
Expand Down

0 comments on commit 1c1a1d7

Please sign in to comment.